DesmoGiec Inserito: 7 settembre 2016 Segnala Share Inserito: 7 settembre 2016 Ciao ragazzi.. Sicuramente la domanda è banale, ma io non ho MAI lavorato con i 200 (ho 27 anni ed anche a scuola usavamo i 300 (si lo so, son fortunato :D)) Vengo al dunque, mi trovo nella condizione di fare un revamping, togliendo il 200 (di cui non abbiamo il microwin) e mettendo un 300. Ho i sorgenti stampati su carta e sto partendo da quelli per riscrivere il programma (che non è complesso di per sè, non ci sono assi ne controlli vari, è solamente lungo) Ho visto che, in alcune sequenze di reset (ma anche set), il programma usa R byte.bit, x_bit. Presumo che x_bit sia per quanti bit il plc vada a fare il reset. Nel programma ho (v100 è l'esempio): R v100.0, 16, che mi resetterà la word.. R v100.0, 8 mi resetterà il byte intero.. R v100.0, 1 mi resetterà la sola v100.0 Ci son parecchi punti in cui viene scritto R v100.0, 0 ... Quindi? Quando trovo ", 0" come si comporta il programma? Oppure ho interpretato male io le operazioni? Ciao! Link al commento Condividi su altri siti More sharing options...
drugo66 Inserita: 8 settembre 2016 Segnala Share Inserita: 8 settembre 2016 Ciao, hai interpretato bene, quindi R V100.0, 0 non dovrebbe avere senso; l'unica è fare una prova; se me ne dai il tempo, eseguo la prova poi ti aggiorno. Link al commento Condividi su altri siti More sharing options...
DesmoGiec Inserita: 8 settembre 2016 Autore Segnala Share Inserita: 8 settembre 2016 Grazie mille! Fai con comodo, fortunatamente non è una cosa troppo urgente! Ciao! Link al commento Condividi su altri siti More sharing options...
amed Inserita: 8 settembre 2016 Segnala Share Inserita: 8 settembre 2016 Alcuni esempi di indirizzi assoluti VBO bite0 delle memorie tipo V (memorie dati cioè quelle usate dagli hmi) VB1 bite1 VB2 bite2 VWO word0 comprende VB0 e VB1 VW2 word2 comprende VB2 e VB3 VD0 doppia word0 comprende VB 0 VB1 VB2 VB3 VD4 doppia word4, comprende WB4 VB5 VB6 VB7. V0.1 b1 del bite V4.7 bite 7 del bite 4. Ciao Link al commento Condividi su altri siti More sharing options...
amed Inserita: 8 settembre 2016 Segnala Share Inserita: 8 settembre 2016 Dimenticavo Dovrai scrivere: R V1.0 R V4.7 Link al commento Condividi su altri siti More sharing options...
DesmoGiec Inserita: 8 settembre 2016 Autore Segnala Share Inserita: 8 settembre 2016 amed, io non ho capito cosa significa resettare il bit "0" di un dato byte.bit già esplicitato. So cosa sono bit byte word dword. Online (e come del resto ho scritto nel primo post), ho trovato che un istruzione tipo "R V100.2, 6" resetta 6 bit a partire dal secondo bit (quindi 2 3 4 5 6 7) A livello logico mi viene da pensare che un istruzione "R v100.0, 0" vada a resettare v100.0, ma quel ", 0", sempre a interpretazione, sembra voler dire che quell'azione di reset non ha valenza, poichè, per resettare, posso usare R byte.bit oppure R byte.bit, n_bit (da 1 a 255). Di fatto nel programma vengono usati reset a 8 n_bit, che mi azzerano il byte, oppure 16 che azzerano la word, oppure 1 che azzerano il bit. Ma lo 0 non l'ho capito, e non potendo simulare (non ho microwin), non ho capito se l'operazione ha valenza ed il bit viene resettato, oppure no. Ciao! Link al commento Condividi su altri siti More sharing options...
amed Inserita: 8 settembre 2016 Segnala Share Inserita: 8 settembre 2016 Immagina che tutti i bit interni ai plc siano dei microscopici condensatori realizzati elettronicamente. Un condestatore caricato a 5 volt è nello stato logico 1, scaricato a 0 volt è nello stato logico 0. I bit possono essere comandati a 0 o a 1 con la tecnica della retroazione (autoritenuta) o con la tecnica del set/reset. Come ho detto prima i condensatorini ( i bit) sono in realtà dei circuiti elettronici (flip-flop) che hanno un ingresso di set e un ingresso di reset. Mandando un breve impulso di 5V sull'ingresso di set il bit viene caricato a 5volt, mandando innvece un breve impulso sull, ingresso di reset il condensatorino viene scaricato a 0 volt, cioè messo nello stato logico 0. Ciao Link al commento Condividi su altri siti More sharing options...
DesmoGiec Inserita: 8 settembre 2016 Autore Segnala Share Inserita: 8 settembre 2016 Scusa ma non capisco cosa c'entri con la mia domanda. Ho già le competenze in fatto di programmazione, è solo questa specifica istruzione del 200 (è il 200 che non conosco, non la programmazione in sè!) che non conosco. Cerco di spiegarmi meglio.. Metti di avere 2 comandi che resettano un bit, ad esempio V100.0 R V100.0, 1 <- Questo sicuramente resetta unicamente il bit 0. R V100.0, 0 <- Questo non ho idea di cosa faccia, poichè la "ripetitività" di n_bits è specificata a 0. Per il singolo bit invece deve essere 1. Potrei benissimo scrivere S V100.0 e R V100.0 per set e reset, ma dato che ho un sorgente in cui viene usato spesso quel reset ad n_bit 0, volevo prima capire se effettivamente quel bit viene resettato oppure no. Link al commento Condividi su altri siti More sharing options...
amed Inserita: 8 settembre 2016 Segnala Share Inserita: 8 settembre 2016 Ora ricordo vagente. S V10.0 ,8 significa che setti 8 bit partendo da V10.0 R V10.1,3 significa che resetti 3 bit a partire da V10.1. Scusa non avevo capito la domanda e non ricoradavo questa caratteriztica del 200. Ciao Link al commento Condividi su altri siti More sharing options...
zanellatofabio Inserita: 8 settembre 2016 Segnala Share Inserita: 8 settembre 2016 Quote R V100.0, 0 <- Questo non ho idea di cosa faccia Secondo me non ha senso questo modo di usare il reset. Sei fortunato perchè ho fatto la prova pratica ( però si apre un nuovo quesito ) ..... Comunque avevo in un cassetto un vecchio s7-200 e un pc datato con microwin e ho scritto 3 righe il risultato è che il codice il compilatore lo accetta. e sono andato online , il plc lo elabora, ma se metti a on l'istruzione prima del reset in modo da far eseguire al plc R V100.0, 0 allora APPARE ROSSO come ad indicare un errore e l'istuzione non ha effetto. Ti allegherei uno screenshot ma il forum mi restituisce errore ... Dopo se riesco te lo metto su un link. Comunque ora la nuova domanda è : chi resetta V100.0 visto che R V100.0, 0 non ha effetto ? Ciao, comunque dai, hai metà dei miei anni .... quindi ce la puoi fare ! Link al commento Condividi su altri siti More sharing options...
zanellatofabio Inserita: 8 settembre 2016 Segnala Share Inserita: 8 settembre 2016 Quote R V100.0, 0 <- Questo non ho idea di cosa faccia Secondo me non ha senso questo modo di usare il reset. Sei fortunato perchè ho fatto la prova pratica ( però si apre un nuovo quesito ) ..... Comunque avevo in un cassetto un vecchio s7-200 e un pc datato con microwin e ho scritto 3 righe il risultato è che il codice il compilatore lo accetta. e sono andato online , il plc lo elabora, ma se metti a on l'istruzione prima del reset in modo da far eseguire al plc R V100.0, 0 allora APPARE ROSSO come ad indicare un errore e l'istuzione non ha effetto. Ti allegherei uno screenshot ma il forum mi restituisce errore ... Dopo se riesco te lo metto su un link. Comunque ora la nuova domanda è : chi resetta V100.0 visto che R V100.0, 0 non ha effetto ? Ciao, comunque dai, hai metà dei miei anni .... quindi ce la puoi fare ! Link al commento Condividi su altri siti More sharing options...
zanellatofabio Inserita: 8 settembre 2016 Segnala Share Inserita: 8 settembre 2016 ecco l'immagine : s7-200 online si poteva fare di meglio ma sono di fretta. Ciao Link al commento Condividi su altri siti More sharing options...
amed Inserita: 8 settembre 2016 Segnala Share Inserita: 8 settembre 2016 Se aggiungi 0 non resetti o setti nessun bit. La cosa vista così, come dici tu, non ha senso. In pratica è molto comoda perchè con due semplici istruzioni puoi settare o resettare ggruppi dibit. Poi se metti ad esempio MB50 il numero scritto on MB50 indica la quantità di bit settati o resettati in mpdo indiretto e dinamico durante l'esecuzione del programma. S7-200 è di derivazione Texas. Nessun altro plc ha questa istruzione, neppure il sustituto che s7-1200 Link al commento Condividi su altri siti More sharing options...
zanellatofabio Inserita: 8 settembre 2016 Segnala Share Inserita: 8 settembre 2016 Conosco la storia texas --> s7-200 , conosco anche il sostituto. Concordo che era un modo "veloce" per settare / resettare gruppi di bit, ma c'è da chiedersi cosa volesse fare il programmatore scrivendo R V100.0, 0. Ma non mi meraviglio di niente... a volte ho visto listati lunghissimi in AWL nel 300 scritti alla mò di blocknotes a quadretti ( quello di una volta dove si scarabocchiava ) tanto per prendere appunti.... con N righe senza senso.... Ciao Link al commento Condividi su altri siti More sharing options...
amed Inserita: 8 settembre 2016 Segnala Share Inserita: 8 settembre 2016 Niente. Non serve. Capita di trovare iatruzioni che il programmatore si è dimenticato di cancellare. Link al commento Condividi su altri siti More sharing options...
drugo66 Inserita: 8 settembre 2016 Segnala Share Inserita: 8 settembre 2016 Ho provato anch'io con una 226 con firmware 1.11, l'unica che mi "gira" in officina: sia R V100.0, 0 che S V100.0, 0 non cambiano lo stato del bit. Link al commento Condividi su altri siti More sharing options...
DesmoGiec Inserita: 9 settembre 2016 Autore Segnala Share Inserita: 9 settembre 2016 Ok, grazie mille a tutti! Gentilissimi Link al commento Condividi su altri siti More sharing options...
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora