I have a project using 2 Eurotherm E+PLC controllers. They are configured using Codesys V3.5 SP17 Patch 2. For visualization I am using Codesys HMI SL V3.5.18.0. System runs great, however I found that if the E+PLC400 communications fail HMI SL does not react to it. The variables on the screen just freeze and the operator does not know it. Is there a parameter inside Codesys HMI SL I can use or create to monitor the communications between my PLC's and HMI SL so that I can create a warning message and alarm tag to notify the operator. I have attached a copy of the HMI Project.
Any help would be greatly appreciated.
Thanks
for each datasource, "implicit" variables are available. See below how you could use this. PS, this information is from several years ago. Maybe better solutions are available, but this should work:
//Variable declaration
VAR
state: Datasources.DataSourceMonitoringState;
error: Datasources.DataSourceError;
END_VAR
// get datasource communication state (e.g. of DataSource1)
state := g_Datasources.Datasource1State;
error := g_Datasources.Datasource1Error;
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I have a project using 2 Eurotherm E+PLC controllers. They are configured using Codesys V3.5 SP17 Patch 2. For visualization I am using Codesys HMI SL V3.5.18.0. System runs great, however I found that if the E+PLC400 communications fail HMI SL does not react to it. The variables on the screen just freeze and the operator does not know it. Is there a parameter inside Codesys HMI SL I can use or create to monitor the communications between my PLC's and HMI SL so that I can create a warning message and alarm tag to notify the operator. I have attached a copy of the HMI Project.
Any help would be greatly appreciated.
Thanks
for each datasource, "implicit" variables are available. See below how you could use this. PS, this information is from several years ago. Maybe better solutions are available, but this should work:
//Variable declaration
VAR
state: Datasources.DataSourceMonitoringState;
error: Datasources.DataSourceError;
END_VAR
// get datasource communication state (e.g. of DataSource1)
state := g_Datasources.Datasource1State;
error := g_Datasources.Datasource1Error;