In part one of this two-part article, we discussed the types of Allen-Bradley PLCs that are supported by the AutomationDirect C-more HMI and covered in detail which protocol should be selected for your application. We also covered the various Data Types for Tags that are supported.
The latest group of C-more drivers (seen below) supports the A-B family of PLCs; the new Ethernet drivers allow simple connectivity of multiple C-more panels and/or multiple A-B PLCs (Figure 1).
C-more also has ControlLogix Ethernet/IP Tag Messaging support. This feature increases productivity by reducing the time required to map your PLC tag database into the HMI. You can import the RSLogix 5000 L5K file directly, or with just a few clicks of the mouse you can directly enter your ControlLogix or CompactLogix tags from the PLC into a C-more database. No mapping or translation is required. For the complete discussion (covering Parts One and Two, go to https://support.automationdirect.com and select the link to Technical and Application notes. Select the C-more link and download document AN-EA-004 (Using C-more HMI with A-B PLCs).
The C-more programming software supports the import of tag database files that are stored in a tabular format, also known as a “.csv” file type. For a detailed example, we will discuss importing from an existing L5K file which is created with the RSLogix 5000 programming software.
Porting Logix Tags Into C-more Programming Software
The RSLogix 5000 software allows users to create an export file that contains the Tag database information. Within RSLogix 5000 and with your project file open, Select File > Save As (Figure 2).
Then change the “Save as type” to L5K (Figure 3). Remember which folder you selected when saving the file since you will need to find it later with the C-more programming software.
Now that you have the L5K File saved, open the C-more Programming Software and select Import > Tag Name Database (Figure 4).
This will open a window that will display options for importing the tag database files. (Figure 5)
Importing Predefined Data Types
There are many pre-defined data types in the A-B ControlLogix and CompactLogix PLCs. A pre-defined data type is one that is already created in the RS Logix 5000 software when starting a new project. Some common pre-defined data types are TIMER and COUNTER. The complication in importing pre-defined data types is that there are many of these data types in the RSLogix 5000 software and within many of those, there are multiple data type members. Many members of these pre-defined data types, while useful in the PLC application, will not be needed in the C-more project. So, the issue is to decide which pre-defined data types should be imported and which members of those types should or shouldn’t be imported.
Optimizing Communications Between C-more and A-B PLCs
In most situations, specific actions to optimize the communications between C-more and the PLC are not necessary. In a large application where performance is crucial, it may require more careful planning when designing the system. The following guidelines can be used to optimize communications with most types of HMI brands connected to a PLC. However, when using a C-more HMI connected to a PLC, some detailed knowledge of how and when communications are initiated is necessary.
Writing Data to the PLC
C-more writes data to the PLC infrequently in most applications.
Screen objects only write to the PLC when triggered by the user, such as when a Pushbutton object is pressed or released, the Enter key is pressed in a Numeric Entry object, the Slider object is moved, etc.
The second way that C-more will issue a Write action to the PLC is through the Event Manager’s “Tag Copy” function. This can be triggered by a tag changing values, a screen change or time schedule. (See the Event Manager functions for more details.)
The third way that C-more will write to the PLC is through the Panel to PLC tags. These typically only occur on a value change and happen infrequently most of the time.
Writes occur rarely enough in most cases and typically do not need to be considered when trying to optimize communications.
Reading Data From The PLC
There are several functions which cause C-more to issue read requests to the PLC.
The most common are the objects on the current screen that is being displayed. The only objects that will issue read requests, regardless of the screen being displayed, are the trend objects. Most of the time, optimizing the PLC addresses assigned to objects on the same screen will have the most impact on performance.
Additional HMI functions that will issue Read requests are alarm events and tag events. Any event created with a tag object addressed to the PLC will constantly read from the PLC no matter which screen is being displayed. Careful planning of the addresses used in events will greatly increase communications performance as well.
The PLC to Panel tags will also be read constantly regardless of which screen is being displayed. Logical PLC addressing of these tags should also be considered.
Optimization for Non-Tag Based PLCs (SLC and MicroLogix)
The SLC and MicroLogix PLCs are fixed addressed PLCs. Grouping consecutive addresses of the same data type in the same file without significant gaps between the addresses is the only way to optimize communications for these PLCs. Grouping tags of consecutive addresses on the same screen, in the event manager or in the PLC to Panel screen will reduce the number of requested packets and will therefore increase the frequency of updates to the visible objects.
Optimization for Tag Based PLCs (Control/Compact/FlexLogix PLCs)
The Control/Compact and FlexLogix PLCs are tag based PLCs. The method of communications (both serial and Ethernet) involves including the actual symbolic tag name in the request sent over the wire. This means the tag names themselves affect the speed of communications by creating larger and/or multiple requests to the PLC. Program space tag names are not efficient; each tag name needs the PROGRAM: header as well as the name of the program in front of the tag name. This scheme makes the size of the request much larger, requiring more requests to get multiple tags.
Controller scope tags are globally accessible and do not require the header information, thus making the size of the request much smaller and more efficient. Controller Scope tags should be used as much as possible when performance optimization is an issue.
Another method to reduce the size of the tag name requested without necessarily compromising the descriptive nature of the name is to use an Alias name in the C-more software. The alias name could be much shorter than the original tag name in the PLC.
The most effective method to reduce the number of requests from C-more to the PLC is to use arrays in the PLC and then assign the C-more tags to consecutive elements in the PLC array. C-more can then request multiple PLC tags with one request. This method will, by far, have the most impact in enhanced communication performance between C-more and the PLC.
This concludes the two-part series on using C-more with the A-B drivers. For the complete discussion (covering Parts One and Two), go to https://support.automationdirect.com and select the link to Technical and Application notes. Select the C-more link and download document AN-EA-004 (Using C-more HMI with A-B PLCs).
View products from AutomationDirect that relate to this article: C-more HMI Panels
By Greg Philbrook
HMI and Communications Product Manager