The Object Oriented Alarming (OOA) Library of ControlSphere Engineering enhances the CODESYS Alarm Manager to allow objects (Function Blocks) to create and activate their own alarms.
This library provides access to the best features of the Alarm Manager (such as Alarm Classes, Actions, Acknowledgment, Archiving, and Visualization integration) while eliminating the need for the PLC programmer to manually create and maintain alarm lists separate from the control code.
Object-based programming has become the standard in worldwide IT software programming and is rapidly being adopted into PLC programming. To see the benefits of object-based programming and examples of how this looks in the world of industrial controls programming, please view these videos and articles:
The CODESYS IDE includes a full-featured Alarm Manager that has a tight integration into the CODESYS Visualization. Unfortunately, the CODESYS Alarm Manager does not provide a way for objects to create and activate their own alarms, and hence does not work well in an object-based design environment.
The ControlSphere Object Oriented Alarm (OOA) Library addresses this issue while maintaining the ability to use the best features of the CODESYS Alarm Classifications, including Class Actions, Class Acknowledgment options, Alarm Archiving, Alarm Banners, and Alarm Tables. The OOA library may also be used in conjunction with traditional Alarm Management alarms. The OOA library provides programming objects (Function Blocks) the ability to register their alarms during global initiation, and then activate and deactivate those alarms during runtime. The alarms may have fixed messages that are specified during registration, or dynamic messages that are formatted during runtime.
When an OOA alarm is activated, it triggers all the same functionality as would a traditional alarm from the CODESYS Alarm Manager. Actions, Acknowledgments, and Archiving set up in the Alarm Class are executed and recognized, and the alarm is displayed in the visualization Alarm Banner and Alarm Table.
The OOA also provides the ability to perform Alarm Rollup where alarms are assigned to one or more groups during global initiation, and then those groups can be queried during runtime to see if any alarms in that group is active. Once the OOA library features are applied to a Function Block, all the alarms for that FB are automatically created for each instance of that Function Block. There is no need to manually add each alarm to a separate alarm table. This tedious and error prone process is eliminated. The resulting growth in complexity that limits the size of traditional PLC programs is also eliminated.
The ControlSphere Object Oriented Alarming library provides the best of both worlds – the best of the CODESYS built-in Alarm Manager along with the ability to use the Alarm Manager in an object-based PLC design. See this video for more details: www.controlsphere.pro/video/OOA.
Requirements
Programming System
CODESYS Development System V3.5.17.0
Target System
CODESYS Control V3.5.17.0
Supported Platforms / Devices
No restriction
Additional Requirements
None
Licensing
License valid for unlimited number of products developed by a single development team originating from a single site.
Restrictions
OOA library source code must be compiled before being released outside the development team