Page 1 of 1

Accesso variabili risorsa ModBus

Posted: 30/06/2022, 21:09
by Marco
Salve,

in un'applicazione in LogicLab (su pannello TD810) usando una risorsa ModBusRtu, quando il dispositivo per qualche motivo si sconnette (ad esempio in caso di avaria), le variabili che contengono i dati letti dai registri mantengono il valore dell'ultima lettura prima che si interrompesse la comunicazione. Tramite l'array di sistema sysMbMRtuNodeStatus rilevo la mancanza del dispositivo e provo a cancellare le variabili assegnate alla risorsa ma quando compilo il programma ottengo il seguente errore "Invalid access to variable". Immagino succeda perchè è dedicata al dispostivo RTU ed in qualche modo è protetta. C'è un metodo per aggirare questo inconveniente o l'unico sistema è creare delle copie delle variabili e agire su quelle?

Grazie.

Re: Accesso variabili risorsa ModBus

Posted: 01/07/2022, 8:50
by Pixsys tecnico 1
Salve,
l'unico modo è lavorare su variabili di appoggio con una logica molto semplice tipo:

if sysMbMRtuNodeStatus[1].pres then
VarInterna := VarModbus;
AvariaNodo1 := false;
else
VarInterna := 0;
AvariaNodo1 := true;
end_if;

Re: Accesso variabili risorsa ModBus

Posted: 02/07/2022, 16:16
by Marco
Ottimo, grazie!!