Convert from string containing HEX values to the corresponding chars (E.G. '414141' to 'AAA')
CODESYS Forge
talk
(Thread)
Convert from string containing HEX values to the corresponding chars (E.G. '414141' to 'AAA')
Last updated: 2023-07-19
Need to know about the possibility of sending reset signal to codesys over Ethernet
CODESYS Forge
talk
(Thread)
Need to know about the possibility of sending reset signal to codesys over Ethernet
Last updated: 2020-06-29
How to functionally copy a BUTTON from one page to another
CODESYS Forge
talk
(Thread)
How to functionally copy a BUTTON from one page to another
Last updated: 2023-07-10
How to initialize arrays of function blocks that need FB_Init to work
CODESYS Forge
talk
(Thread)
How to initialize arrays of function blocks that need FB_Init to work
Last updated: 2020-08-21
Impossible to enter en FB from a CFC to debug it: "nProjectHandle: 'xxx' is invalid." error
CODESYS Forge
talk
(Thread)
Impossible to enter en FB from a CFC to debug it: "nProjectHandle: 'xxx' is invalid." error
Last updated: 2023-02-23
How to create an alias or other parallel definition to a structure
CODESYS Forge
talk
(Thread)
How to create an alias or other parallel definition to a structure
Last updated: 2022-10-27
How to use __VARINFO within a function block to obtain the origin variable name?
CODESYS Forge
talk
(Thread)
How to use __VARINFO within a function block to obtain the origin variable name?
Last updated: 2022-03-15
How to Map Arrary of Bool to fixed IEC Address?
CODESYS Forge
talk
(Thread)
How to Map Arrary of Bool to fixed IEC Address?
Last updated: 2023-06-30
How to modify the time zone information to set with Adelaide, AU in DTutil library?
CODESYS Forge
talk
(Thread)
How to modify the time zone information to set with Adelaide, AU in DTutil library?
Last updated: 2017-11-04
Post by ph0010421 on How to transfer data from DINT to Union(16 Bools) which I need to use in Few FBs
CODESYS Forge
talk
(Post)
In the Struct, change the 'BOOL' to 'BIT'
Last updated: 2023-12-14
Open dialog from ST , how to set parameters (vars) to dialog
CODESYS Forge
talk
(Thread)
Open dialog from ST , how to set parameters (vars) to dialog
Last updated: 2024-06-05
Any ways to prevent Infinite scroll when moving an object to the left or top edge?
CODESYS Forge
talk
(Thread)
Any ways to prevent Infinite scroll when moving an object to the left or top edge?
Last updated: 2025-10-24
Which Lib to use, connect to a socket with URL instead of IP address
CODESYS Forge
talk
(Thread)
Which Lib to use, connect to a socket with URL instead of IP address
Last updated: 2025-11-12
Two licenses have to be installed forgot to enable one license
CODESYS Forge
talk
(Thread)
Two licenses have to be installed forgot to enable one license
Last updated: 2026-02-03
Post by timvh on Get Alarm status in Codesys
CODESYS Forge
talk
(Post)
You are right, that you can use the GetState method, but it is not that simple. You first have to get a list of (filtered) alarms from the AlarmManager. You can find an example in Forge how to do this. See https://forge.codesys.com/prj/codesys-example/alarm-manager/home/Home/ Then you can go through this list to get the state of all the (filtered) alarms. See below the code which you could use. This is all based on the example from forge. Create a program: // This example shows how to access alarms via structured text. PROGRAM PLC_PRG VAR xInit : BOOL := TRUE; udiResult : UDINT; fbAlarmFilterCriteriaAll : FB_AlarmFilterCriteriaAll; fbAlarmManagerClient : FB_AlarmManagerClient; itfAlarmManagerClient : IAlarmManagerClient := fbAlarmManagerClient; xAlarm1 : BOOL; xAlarm2 : BOOL; xWarning : BOOL; iNrOfAlarmsInAlarmList : INT; iNrOfActiveAlarmsInAlarmList : INT; paitfAlarm: POINTER TO ARRAY [0..0] OF AlarmManager.IAlarm; iAlarmIndex : INT; eAlarmState: AlarmManager.AlarmState; END_VAR IF xInit THEN xInit := FALSE; fbAlarmManagerClient.itfAlarmFilterCriteria := fbAlarmFilterCriteriaAll; // register alarm client to get updated about alarm status / changes udiResult := AlarmManager.g_AlarmHandler.RegisterClient(itfAlarmManagerClient, 0, 0); END_IF // Polling the number of alarms udiResult := AlarmManager.g_AlarmHandler.GetActiveAlarms(itfAlarmManagerClient, parritfActiveAlarms => paitfAlarm, iCountActiveAlarms => iNrOfAlarmsInAlarmList); iAlarmIndex := 0; iNrOfActiveAlarmsInAlarmList := 0; WHILE iAlarmIndex < iNrOfAlarmsInAlarmList DO eAlarmState := paitfAlarm^[iAlarmIndex].GetState(); IF eAlarmState = AlarmManager.AlarmState.Active OR eAlarmState = AlarmManager.AlarmState.ActiveAcknowledged THEN iNrOfActiveAlarmsInAlarmList := iNrOfActiveAlarmsInAlarmList + 1; END_IF iAlarmIndex := iAlarmIndex + 1; END_WHILE See below some details about the function blocks: One function block should implement the IAlarmFilterCriteria interface. This can be empty except a few methods. FUNCTION_BLOCK FB_AlarmFilterCriteriaAll IMPLEMENTS AlarmManager.IAlarmFilterCriteria Method implementation (others related to interface are empty) METHOD AreAllAlarmClassesSelected : BOOL AreAllAlarmClassesSelected := TRUE; METHOD AreAllAlarmGroupsSelected : BOOL AreAllAlarmGroupsSelected := TRUE; METHOD GetPriorityFrom : USINT GetPriorityFrom := 0; METHOD GetPriorityTo : USINT GetPriorityTo := 255; The other function block should implement IAlarmManagerClient and get a reference to the FB which implements the IAlarmFilterCriteria FUNCTION_BLOCK FB_AlarmManagerClient IMPLEMENTS AlarmManager.IAlarmManagerClient VAR_INPUT itfAlarmFilterCriteria: AlarmManager.IAlarmFilterCriteria; END_VAR Method implementation (others related to the interface are empty) METHOD GetFilterCriteria : AlarmManager.IAlarmFilterCriteria // see VAR_INPUT for filter GetFilterCriteria := itfAlarmFilterCriteria; Off course you have to add the AlarmManager to your application and add some alarms to it.
Last updated: 2025-09-02
Import RsLogix 5000 project to Codesys
CODESYS Forge
talk
(Thread)
Import RsLogix 5000 project to Codesys
Last updated: 2023-09-07
IMAGE DISPLAY ACCORDING TO INPUT VARIABLE
CODESYS Forge
talk
(Thread)
IMAGE DISPLAY ACCORDING TO INPUT VARIABLE
Last updated: 2023-09-12
Retain memory change to ZERO
CODESYS Forge
talk
(Thread)
Retain memory change to ZERO
Last updated: 2023-09-19
Fail to download missing libraries
CODESYS Forge
talk
(Thread)
Fail to download missing libraries
Last updated: 2021-11-12
Moved To: Control double acting valve
CODESYS Forge
talk
(Thread)
Moved To: Control double acting valve
Last updated: 2016-10-18
How to configure OPC-UA server
CODESYS Forge
talk
(Thread)
How to configure OPC-UA server
Last updated: 2018-12-03
SoftMotion interface to analog axes
CODESYS Forge
talk
(Thread)
SoftMotion interface to analog axes
Last updated: 2016-12-08
Lock usb port to a device
CODESYS Forge
talk
(Thread)
Lock usb port to a device
Last updated: 2017-06-07
Device descriptor: how to create...
CODESYS Forge
talk
(Thread)
Device descriptor: how to create...
Last updated: 2018-09-12
RFC2217 Serial to Ethernet devices
CODESYS Forge
talk
(Thread)
RFC2217 Serial to Ethernet devices
Last updated: 2017-08-03
To search for an exact phrase, put it in quotes. Example: "getting started docs"
To exclude a word or phrase, put a dash in front of it. Example: docs -help
To search on specific fields, use these field names instead of a general text search. You can group with AND or OR.