Here is the link to C# version of this project, as converted and modified by me:
https://www.dropbox.com/s/c9fxskihty8415f/AHMI%20Modbus%20Example%20-%20Alarm%20Logging.7z?dl=0Rebuild the project once you open it in Visual Studio. Set the AdvancedHMIcs as startup project if necessary.
It does have a few small features added/enabled:
** splash screen shows animated progress bar
** the app allows a change of the Modbus 4xxxxx alarm address by the admin on the Alarm tab inside the App Settings screen.
This is currently valid for the 400001 - 465535 addresses. Do observe the addresses that might already be used for something
else, like the address 400020 which defines the Alarm_Quantity, which is also the number of alarms that show in All Alarms view.
The Alarm_Quantity defines how many consecutive Modbus addresses will be used. So, for the quantity of 45 alarms there should
be 4 consecutive Modbus addresses to trigger them (14 bits of each of the first 3 addresses and 3 bits of the last address, which
will equal (14 x 3) + (3) = 45. The mentioned 14 bits of each address actually indicate that each address can activate 14 alarms.
Even though the registers are 16 bit, this app doesn't observe bits 0 and 15). Make sure to select the address that has sufficient number of
consecutive addresses available to trigger all your alarms.
Because the bit 0 is not observed, multiple integer values could trigger the same alarm. The example would be integer values 8 and 9 will both
trigger Alarm #3 only. This alarm will also be triggered by any other value whose bit 4 is set to "1" but will have other alarms triggered along.
If using the ModRSSim2 simulator to perform test, use 0 to 32767 values in 4xxxxx register.
** there is also a Refresh button added to the Alarm History screen.
The problem with the Alarm #0 pop-up appears to be resolved.