Buonasera, sto utilizzando un TD710 con scheda ETD e 2 MCM, il sistema è collegato al cluod e da qui si può interagire con Pixsys avendo a disposizione la lettura delle variabili in Modbus.
Ora ho la necessità di leggere lo stato di alcune uscite digitali per attivare una notifica che viene messa a disposizione dal portale
La domanda è:
- E' possibile andare a leggere in modbus, il singolo bool del registro delle uscite digitali da 00 a 15 che dovrebbe 1100 ?
- Se sì, qual'è l'indirizzo corretto a cui puntare ?
- Nello Status Variables di Risorse, si deve inserire il registro 11100, oppure si può indicare l'indirizzo del singolo bool ?
- Esiste una documentazione specifica che tratta questi argomenti ?
Grazie.
Comunicazione in Modbus
-
- Moderatore
- Posts: 1702
- Joined: 29/10/2010, 10:09
- Contact:
Re: Comunicazione in Modbus
Salve,
la soluzione più semplice è "pubblicare" in un indirizzo modbus qualsiasi delle status variables la variabile BOOL che poi è la stessa che va a comandare lo stato delle uscite della scheda. Le status variables sono tutte holding register quindi pubblicando un singolo BOOL, comunque andrà ad utilizzare un registro completo (questo non causa nessun problema). L'alternativa, è "unire" tutti i bool delle uscite in una unica WORD e pubblicare questa nelle status variables. Per fare ciò, nella libreria Pixsys\Bit Word funtions\ c'è il Function Block Bit_To_Word che ha in ingresso i singoli bit (cioè le singole uscite) e le da in uscita una unica word.
la soluzione più semplice è "pubblicare" in un indirizzo modbus qualsiasi delle status variables la variabile BOOL che poi è la stessa che va a comandare lo stato delle uscite della scheda. Le status variables sono tutte holding register quindi pubblicando un singolo BOOL, comunque andrà ad utilizzare un registro completo (questo non causa nessun problema). L'alternativa, è "unire" tutti i bool delle uscite in una unica WORD e pubblicare questa nelle status variables. Per fare ciò, nella libreria Pixsys\Bit Word funtions\ c'è il Function Block Bit_To_Word che ha in ingresso i singoli bit (cioè le singole uscite) e le da in uscita una unica word.
-
- Posts: 54
- Joined: 21/01/2014, 8:23
Re: Comunicazione in Modbus
Buongiorno
Quando vado ad assegnare nella "Status Variables" al primo indirizzo proposto la variabile che mi interessa pubblicare, mi si presenta il warning allegato.
Cosa significa ?
Quando vado ad assegnare nella "Status Variables" al primo indirizzo proposto la variabile che mi interessa pubblicare, mi si presenta il warning allegato.
Cosa significa ?
You do not have the required permissions to view the files attached to this post.
-
- Moderatore
- Posts: 1702
- Joined: 29/10/2010, 10:09
- Contact:
Re: Comunicazione in Modbus
La sta avvisando che tale variabile è già stata mappata su un datablock di memoria specifico in quanto usata nel ModbusRTU, le ila sta usando anche per un altra risorsa (il ModbusTCP) quindi la sta avvisando che potrebbero esserci conflitti.
Nel suo caso non c'è problema.
Nel suo caso non c'è problema.
-
- Posts: 54
- Joined: 21/01/2014, 8:23
Re: Comunicazione in Modbus
In precedenza mi aveva scritto di pubblicare la variabile bool (nel mio caso DO_4)in un indirizzo qualsiasi, nell'esempio ho lasciato il primo indirizzo proposto 10000; così però dal portale mi dice che fallisce la lettura per accesso illegale all'indirizzo 11100, che corrisponde all'indirizzo Modbus delle uscite digitali da 00 a 15.
Mentre se pubblico sull'indirizzo 11100 non va in errore, ma non riesce a leggere lo stato true/false.
Mentre se pubblico sull'indirizzo 11100 non va in errore, ma non riesce a leggere lo stato true/false.
-
- Moderatore
- Posts: 1702
- Joined: 29/10/2010, 10:09
- Contact:
Re: Comunicazione in Modbus
Mi scusi, se il registro modbus nelle status variables è 10000, dal master esterno deve "puntare" quel indirizzo, non centra nulla l'indirizzo del modbusRTU.