It is recommended to watch the ACE1000 Codesys IEC61131 Development Tool Introduction webinar that presents the programming foundations of an ACE1000 RTU.
In this webinar you will be introduced with an overview of the ACE1000 API library. This includes database access, communication services utilization, and sensor protocol (DNP and Modbus) APIs. Furthermore, learn how to utilize these APIs in your IEC61131 applications with examples.
For more information about Motorola Solutions and our Industrial Internet of Things (IIoT) portfolio visit http://www.motorolasolutions.com/indu...
00:05
Hello, my name is Dorit Kliger and I am a senior software engineer in the Industrial IOT development group in MSIL.
It is highly recommended to watch the ACE1000 CODESYS IEC61131 DEVELOPMENT TOOL INTRODUCTION precursory webinar that presents the programming foundations of an ACE1000 RTU by an experienced Linux and IEC61131 language programmer to create a customized unit that addresses his needs.
00:40
A typical CODESYS IEC61131-3 automation application for the ACE1000 RTU consists of one or more IEC61131-3 languages, functions offered by CODESYS API libraries and functions offered by the ACE1000 ‘IEC’ API library.
The ACE1000 API library file is included in the ACE1000_CODESYS_ADD_ONS archive ISO file provided by Motorola and should be installed to the CODESYS development system.
The library provides an extensive set of APIs such as read from and write to the RTU’s database tables, physical I/O values read and writes, Motorola propriety MDLC communication between MOSCAD and ACE RTUs in the overall communication network, communication with other intelligent or simple devices and other system operations.
This webinar introduces to the viewer the following:
1. The diverse ACE1000 ‘IEC’ APIs by categories
2. ACE1000 ‘IEC’ mini and detailed application examples using the IEC61131 structured text (ST) language integrated with ACE1000 ‘IEC’ APIs.
02:00
The ACE1000 API library and the full set of APIs included are listed under the CODESYS IDE library manager (in this slide, indicated by the surrounding purple circles).
Each ACE1000 IEC API name starts with the ‘IEC_’ prefix, for example iec_bitstatus() as surrounded by green circle in this slide.
The ACE1000Lib version that includes the full collection of ACE1000 CODESYS APIs is 3.5.6.0.
Viewers that are familiar with the ACE1000 C Toolkit APIs are able to recognize that the ACE1000 IEC APIs names greatly resemble the C Toolkit APIs names.
Also, most of the ACE1000 C Toolkit APIs available for usage in an ACE1000 C application are available in the form of ACE1000 IEC APIs for usage within an ACE1000 IEC61131 automation application.
The APIs in ACE1000Lib library are documented in the ACE1000 Easy Configurator User Guide manual under ‘APPENDIX E: CODESYS IEC61131-3 PROGRAMMER APPLICATIONS’
Later, in this webinar we’ll introduce the library’s major APIs.
03:25
The ACE1000 RTU has a tabular database that has a fixed set of tables detailed in this slide, some of which are read-only for the user.
These tables are the basis for process programming, I/O link definition, automatic central database definition, real-time monitoring of the RTU’s operation, etc.
The database values can be discretely accessed or manipulated using the appropriate ACE1000 ‘IEC’ APIs.
When configuring the RTU with a MODBUS or DNP port in favor of communicating with 3rd party equipment or control center, this set will be expanded with more tables that are indexed as 50 and above and are dedicated to MODBUS or DNP values.
04:19
The ACE1000 I/O boards are listed under the ACE1000 device tree after there were added by the user to this tree in the initial configuration stage.
The I/O logical variable names were assigned to each physical I/O element using the ‘Edit I/O Mapping’ in the initial configuration stage as well.
These names can be changed at any point of time by repeating the ‘Edit I/O Mapping’ activity.
However, they will not be changed automatically within your application IEC61131-3 code
To update your application code with the new I/O logical variable names, use the right click Input Assistant Categories-IOConfig_Globals_Mapping and select the appropriate new name.
To read selected physical I/O values or to write values to selected physical I/Os within your ACE1000 application code, use the I/O logical variable names you have assigned them to access any of these values (see the blue text in this slide as an example for IEC61131-3 structured text usage).
05:36
Another option to discrete read or write any of the ACE1000 RTU’s I/O value is by using the APIs detailed in this slide, throughout your IEC61131-3 application.
These APIs enable the IEC61131-3 application to figure out how many I/O modules are configured in the ACE1000 RTU and how many digital or analog inputs or outputs are there in a certain configured I/O module. ...