Vai al contenuto
PLC Forum


1200 E Modbus Rt


Frank681

Messaggi consigliati

Salve

Sto sviluppando un progetto dove ho dei moduli di acquisizione analogica e di uscte analogiche , il mio dubbio riguarda il modulo mb_master e il suo db , mi spiego sto usando ora solo un db per ogni instanza del modulo poiche ho provato usando db diversi non riesco a farlo comunicare , comunica solo i l primo poi gli altri mi danno id dispositivo non esiste se non ricordo male errore 8180.

In teoria dovrei usare un db di istanza per ogni chiamata al mb_master , cosa mi sfugge ?

Premetto che usando un solo db funziona..

Grazie

Link al commento
Condividi su altri siti


devi usare sempre lo stesso DB di istanza, quello definito in "MB_COMM_LOAD", per ogni chiamata agli slave.

Siccome il Modbus RTU è un protocollo seriale dovresti fare le chiamate agli slave una alla volta con un tempo massimo di timeout.

Link al commento
Condividi su altri siti

OK

Ti ringrazio moltissimo , infatti visto che così funziona lo immaginavo usando una seriale non poteva essere altrimenti , per il metodo per fare le chiamate una alla volta ho creato un indice che viene incrementato dal done del modulo di comunicazione fino al numero massimo di sispositivi per poi ricomciare , così però se un modulo ha problemi i si blocca tutto su quel modulo hai idea di come risolvere , potrei usare in OR con il done anche error ? così in caso di errore mi passerebbe avanti ?

Grazie mille

Link al commento
Condividi su altri siti

puoi mettere un timer di attesa di pochi secondi sull'arrivo del "done". Se la risposta non arriva entro pochi secondi non arriverà più, quindi si puà procedere.

Link al commento
Condividi su altri siti

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 account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...