Andrea.V Inserito: 11 dicembre 2013 Segnala Inserito: 11 dicembre 2013 Ciao a tutti Ho una domanda da farvi : come posso impostare un bit all'interno di una word non avendo l'indirizzo della DB e quindi di Word e Bit come succedeva in nei vari STEP 7? Sostanzialmente devo impostare in una word dei bit di allarme...la word con valore maggiore di 1 mi va ad attivare la conformazione di un tasto per ripristino allarmi ( premuto me li resetta ). Solo che nei vecchi STEP 7 bastava che scrivessi ( considero da DB10.DBX0.0 a DB10.DBX0.7 i vari bit di allarme che si vanno ad attivare e DB10.DBW2 la word degli allarmi): U DB10.DBX0.0 = DB10.DBX2.0 U DB10.DBX0.1 = DB10.DBX2.1 . . . e così via. Su TIA PORTAL V12 invece come dovrei scrivere se al posto dell'indirizzo io ho il nome del dato della DB ( ad esempio Word_Allarmi in Int e Allarme_1, Allarme_2..... in Bool ) ? U Allarme_1 = Word_Allarmi ( Bit1) --> Non è corretto ovviamente ma è per rendere l'idea Spero di essere chiaro anche se magari posso averla spiegata male la cosa...e si che è una stupidata Grazie in anticipo
Frank681 Inserita: 2 gennaio 2014 Segnala Inserita: 2 gennaio 2014 Ciao Non hai detto di che plc parliamo , poiche per la serie 300 400 1500 dove presente awl il tutto funziona ancora unico accorgimento e non settare l'ottimizzazione db che se non erro dovrebbe essere disabilitata , per la serie 1200 purtroppo ho aggirato il problema facendomi un fc in scl che mi converta la word in bool elaboro i bit e poi riconverto i bit in word. Spero di avere compreso la tua necessità
batta Inserita: 2 gennaio 2014 Segnala Inserita: 2 gennaio 2014 Se al DB si toglie l'attributo "Accesso ottimizzato al blocco", anche con S7-1200 e S7-1500 si può accedere al singolo bit scrivendo l'indirizzo. Nel 1200 e nel 1500 poi, anche con accesso ottimizzato al blocco, si può usare la sintassi: "NomeDB".NomeVar.xn dove "n", nel caso di una variabile INT, può assumere valore da 0 a 15. Esempio: per accedere al primo bit della variabile di tipo INT "NomeDB".NomeVar si scrive: "NomeDB".NomeVar.x0 Alla stessa maniera è possibile accedere al byte a destra scrivendo "NomeDB".NomeVar.b0, e a quello a sinistra scrivendo "NomeDB".NomeVar.b1 Nelle variabili di interfaccia di OB, FC e FB (sempre senza accesso ottimizzato) è possibile sfruttare anche la sovrapposizione delle variabili con AT. Per capire di cosa si tratta, basta cercare AT nella guida in linea di TIA Portal.
Gibbo Inserita: 10 aprile 2014 Segnala Inserita: 10 aprile 2014 Mi intrometto per dire semplicemente.... GRAZIE ! ! Volendo oltre a scivere variabile.%x1 è possibile sostituire %x1 con una costante ?
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