Frank681 Inserito: 10 agosto 2013 Segnala Inserito: 10 agosto 2013 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
rguaresc Inserita: 10 agosto 2013 Segnala Inserita: 10 agosto 2013 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.
Frank681 Inserita: 11 agosto 2013 Autore Segnala Inserita: 11 agosto 2013 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
rguaresc Inserita: 11 agosto 2013 Segnala Inserita: 11 agosto 2013 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.
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