BoLo Inserito: 7 ottobre 2004 Segnala Share Inserito: 7 ottobre 2004 Espongo il mio problema.Io ho 16 allarmi e ognuno attiva il suo bit.Nel Pannello Operatore (OP77B) per la visualizzazione di ogni allarme leggo ogni singolo bit della word che contiene i 16 allarmi.Il problema è che non so come si fa nel programma (S7-300) a trasferire lo stato di ogni singolo bit (allarme) nella word che utilizzo per il Pannello operatore.Parliamo di linguaggio KOP.Potete aiutarmi? Grazie. Link al commento Condividi su altri siti More sharing options...
gramma Inserita: 7 ottobre 2004 Segnala Share Inserita: 7 ottobre 2004 Ciao.Sinceramente non capisco il tuo problema.Supponiamo che stai usando la MW10. Per modificare un bit di questa word, devi semplicemente scrivere:// Logica di comando dell'allarme//..............................//.............................. = M10.0 // Così alzi (o abbassi) il bit 0 della word 10Se vuoi che rimanga alto anche quando l'allarme scompare (consigliato), avrai:// Logica di comando dell'allarme//..............................//.............................. S M10.0 // Così alzi il bit 0 della word 10// quando l'Operatore preme il tasto Reset, abbasserai tutti i bit di allarme: U "Reset" // questo è l'ingresso sul quale è collegato il pulsante di Reset SPBN M001 L 0 T MW10M0001:NOP 0Se invece stai usando una Word di un DB (supponiamo DB10.DBW5), l'identificazione del bit (p.e.) 0 è: U DB10.DBX5.0 // Identifica il bit 0 della Word 5 del DB10Attenzione: nei pannelli Operatore Siemens (ma non solo), gli allarmi sono letti a bytes scambiati cioè: per far comparire il primo allarme di un elenco associato alla MW10, dovrai alzare il bit M11.0, per far comparire l'ottavo allarme dell'elenco, dovrai alzare il bit M10.0Spero di esserti stato di aiuto.Fammi sapereCiao. Link al commento Condividi su altri siti More sharing options...
Betù Inserita: 7 ottobre 2004 Segnala Share Inserita: 7 ottobre 2004 Ciao, supponiamo che un bit di allarme sia M1.0e lo devi appoggiare alla word MW100usi il contatto Normalmente aperto di M1.0 e lo usi per eccitare la bobina di M100.0 M1.0 M100.0-------| |--------------------------( )------------- M1.1 M100.1-------| |--------------------------( )-------------e così per tutti i 16 bitpoi segui gli altri consigli di GrammaSpero di essere stato d'aiuto ciaoSe hai bisogno di altre info rispondimiSalutiBetù Link al commento Condividi su altri siti More sharing options...
BoLo Inserita: 7 ottobre 2004 Autore Segnala Share Inserita: 7 ottobre 2004 Ok ragazzi, fin qui tutto bene.Ma essendo una word composta da 16 bit, quando monitorizzo la mia word nella tabella variabili succede qualcosa di strano:MW4 - BIN - 2#0000 0000 0000 0000 (Questa è la mia word rappresentata in binario nella tabella variabili)0(M4.7) 0(M4.6) 0(M4.5) 0(M4.4) - 0(M4.3) 0(M4.2) 0(M4.1) 0(M4.0) - 0(?) 0(?) 0(?) 0(?) - 0(?) 0(?) 0(?) 0(?)Perchè parte dal centro la rappresentazione della word?Come si chiamano gli altri 8 bit che si trovano a destra?Scusatemi ma stiamo passando da GE a Siemens ed è un mondo tutto nuovo per noi. Link al commento Condividi su altri siti More sharing options...
gramma Inserita: 7 ottobre 2004 Segnala Share Inserita: 7 ottobre 2004 CiaoSiemens usa dei processori derivati dall'architettura Motorola, che lavora su bytes (insomma la spiegazione corretta non è esattamente questa, ma....). Quando carichi la Word p.e. 10, coiè MW10, essa viene letta come Byte 10 e byte 11, e caricata in ACCU1 come Byte 11 a Sx e Byte 10 a Dx. Quello che vedi (mi sembra nella tabella delle variabili) è appunto questo, cioè il Byte 11 a Sx e il Byte 10 a Dx.La notazione è a Byte, quindi la MW10 è composta dal Byte 10 e dal Byte 11. Se tu indirizzassi la MW11, prenderesti il Byte 11 e il Byte 12, cioè la parte bassa (bassa come significato, ma alta-cioè sinistra- dell'ACCU1) della MW10.Spero di essermi spiegato, Ciao. Link al commento Condividi su altri siti More sharing options...
gramma Inserita: 7 ottobre 2004 Segnala Share Inserita: 7 ottobre 2004 Errore...Quello che vedi (mi sembra nella tabella delle variabili) è appunto questo, cioè il Byte 11 a Sx e il Byte 10 a Dx.correzione:Quello che vedi (mi sembra nella tabella delle variabili) è appunto questo, cioè il Byte 11 a Dx e il Byte 10 a Sx.Sorry...Ciao. Link al commento Condividi su altri siti More sharing options...
dago_ Inserita: 7 ottobre 2004 Segnala Share Inserita: 7 ottobre 2004 Esempio, se la word di allarme e' MW10, il pannello operatore assegna gli allarmi in questo ordine:Allarme1=M11.0Allarme2=M11.1Allarme3=M11.2Allarme4=M11.3Allarme5=M11.4Allarme6=M11.5Allarme7=M11.6Allarme8=M11.7Allarme9=M10.0Allarme10=M10.1Allarme11=M10.2Allarme12=M10.3Allarme13=M10.4Allarme14=M10.5Allarme15=M10.6Allarme16=M10.7In ogni caso, quando "scrivi" un allarme in Protool se guardi in basso a destra ti dovrebbe comparire il bit relativo all'allarme che stai editando. Link al commento Condividi su altri siti More sharing options...
BoLo Inserita: 7 ottobre 2004 Autore Segnala Share Inserita: 7 ottobre 2004 Perfetto, ho capito e funziona.Grazie Ragazzi.Però..... così la Siemens ci manda al manicomio!!! 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