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.
Accesso variabili risorsa ModBus
-
- Moderatore
- Posts: 1678
- Joined: 29/10/2010, 10:09
- Contact:
Re: Accesso variabili risorsa ModBus
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;
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;