toni_unitn Inserito: 25 luglio 2019 Segnala Share Inserito: 25 luglio 2019 (modificato) Buongiorno Avrei la necessità di comandare un gran numero di uscite digitali tramite altrettanti bit che mi arrivano tramite uno scambio dati da un altro impianto. Devo inoltre appoggiare lo stato di numerosi input digitali nella stressa struttura dati che viene scambiata col medesimo impianto. La struttura dati, ad ogni commessa, è sempre la stessa (si tratta di un DB condiviso dai 2 PLC), però quello che cambiano ogni volta sono gli indirizzi I/O Finora ho usato step7 e ho sempre scritto tutta una serie di segmenti di codice per fare ciò: per esempio U <dato della struttura> = A0.0 U E0.0 = <dato della struttura> Inoltre, non è detto che tutti i dati della struttura in scambio vadano appoggiati alla mia periferia: alcuni potrebbero essere appoggiati a aree di memoria, quindi potrebbe anche essere: U <dato della struttura> = db100.dbx0.0 U db101.dbx0.0 = <dato della struttura> Quindi tutti i bit della struttura in scambio possono essere legati alla periferia o a bit di DB. La struttura è composta solo da booleani. Ora sono passato a TIA15 e mi chiedevo se, magari tramite tabella delle variabili, ci sia un modo per fare questa cosa utilizzando una tabella,senza scrivere codice, in quanto credo che mi aiuterebbe non poco a evitare errori. Devo rinunciare? Modificato: 25 luglio 2019 da toni_unitn Link al commento Condividi su altri siti More sharing options...
batta Inserita: 25 luglio 2019 Segnala Share Inserita: 25 luglio 2019 Se c'è sempre un trasferimento completo di tutta l'area che ti arriva dall'altro impianto (e viceversa), potresti crearti un Tipo di dati da usare sia nella struttura del DB, sia nella tabella delle variabili, per la dichiarazione di ingressi e uscite. Poi, con un semplice MOVE, copi l'intera area dal DB alle uscite, o dagli ingressi al DB. La faccenda però si complica se, come dici, devi valutare uno per uno i singoli bit, che una volta fanno riferimento a un ingresso o una uscita, ed un'altra invece vanno a finire in un DB. Link al commento Condividi su altri siti More sharing options...
Cesare Nicola Inserita: 19 settembre 2019 Segnala Share Inserita: 19 settembre 2019 MI trovo più o meno nella stessa situazione ed ho optato per il "vecchio" sistema anch'io, non ho trovato nulla che possa aiutare. L'unica differenza, pur avendo un 1500 che supporta AWL, l'assegnazione "U <dato della struttura> = A0.0" l'ho fatta in un blocco SCL che graficamente occupa meno spazio ed è più facilmente manipolabile con copia/incolla, ecc. 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