|
Allen Bradley ControlLogix Ethernet OPC Server Gets Major Performance Upgrade
The ControlLogix
driver has been redesigned to use a completely new
acquisition method to gather data from ControlLogix processors resulting
in phenomenal performance improvements.
About The Controller
The Allen Bradley ControlLogix processor family is an extremely
flexible PLC architecture that allows control systems developers to
design their control systems around the application while not being
constrained by the narrow arrangements of structure and memory found
in classical PLC systems. The nature of the ControlLogix processor allows
the developer to create data within the controller that is structured
to suit the needs of the application. Unlike classical PLCs, where the
user has access to a fixed set of either registers or bits, the ControlLogix
processor treats memory much more dynamically. Its versatility allows
the user to choose their own names, data types, complex structures,
and even arrays - much like how PC programmers might expect to treat
memory.
The Old Approach
There is a price to be paid, however, for this versatility.
That price is ease of communications. In the classical PLC, where data
was arranged conveniently in a list of consecutive registers or bits,
gathering large amounts of data was simply a matter of specifying a
starting point in memory and a length to read. This format allowed communications
packages like KEPServerEX to read data very quickly from the classical
PLC. The ControlLogix processor, with its user definable memory structure,
didn't have that luxury of simply stating a starting point and length
to read. To address this issue, the first generation of the KEPServerEX
ControlLogix driver would request data from the ControlLogix processor
by sending a list of complete Tag names to the processor. These lists
of ControlLogix Tag names allowed the first generation driver to acquire
data at reasonable rates, but due the potential size of each Tag name,
each read request might have contained only a few actual read items.
The larger the Tag names, the less data could be acquired in a single
request. Additionally, passing a list of Tag names to the ControlLogix
processor also forced the PLC to devote a considerable amount of time
to finding these tag references and then returning the data. Knowing
that this was not the ideal way to gather data from the ControlLogix,
Allen Bradley provided a much better way to access the controller, a
way that would allow communications drivers such as KEPServerEX to access
the PLC memory more like that of the classical PLC.
A New Approach
The new method of accessing the ControlLogix processor
allows direct access to the memory of the PLC. Instead of using long
and possibly complex Tag names, data can be accessed using the actual
memory location within the controller. This new method of direct access
allow this next generation ControlLogix driver to gather much larger
amounts of data from the ControlLogix processor, while at the same time
dramatically reducing the amount of burden on the PLC. Instead of long
Tag names, the new KEPServerEX ControlLogix driver can send a highly
optimized list of memory addresses to the controller. As the memory
address is both considerably shorter than most tag names, a much larger
number of tags can be read in a single request. If it were simply a
matter of using this new direct memory access to gather more data, the
next generation ControlLogix driver would be faster but not fast enough.
To really make the new access method shine, the ControlLogix driver has
been given a new level of intelligence about the data that it needs to
acquire. Normally, the ControlLogix driver would gather each tag by placing
either the Tag name or its direct memory access address into a read request.
As mentioned before, this made the driver faster but not fast enough.
What was needed was a more detailed understanding of the structure of
the data within the ControlLogix processor. With a better understanding
of the memory structure, the next generation driver could make intelligent
decisions about how best to acquire the data. For instance, if a user
needed to read many items in a structure, instead of reading the individual
items of that a structure, it would be better to read the whole structure
as one piece of memory and parse out the tag data internally.
To make this new level of intelligence possible, a new feature of the
next generation driver also had to be developed. In the past, the ControlLogix
driver would allow a tag database to be generated from the L5K files of
a ControlLogix project. While this allowed the user to access virtually
all of the data within the controller, it still lacked some detail and
it required access to the L5K project file of the processor. The next
generation ControlLogix driver can now upload the tag database directly
from the ControlLogix processor, a far superior method than requiring
the user to select an L5K file. But more importantly is the benefit of
directly importing the tag database from the controller for the driver
to gain a detailed understanding of the users Tag's and structures within
the PLC.
Using this improved understanding of the ControlLogix memory architecture;
the next generation ControlLogix driver can make highly intelligent decisions
about how to acquire data. Using this knowledge the driver now accesses
controller memory in large, highly optimized reads that allow the driver
to achieve read rates that will make any classic PLC user happy. With
all of the work that has gone into to what is essentially nothing short
of a completely new ControlLogix driver, one might think to ask what is
the cost of all these enhancements. That, Perhaps, is the easiest question
to answer, FREE. As always, if you are an existing KEPServerEX ControlLogix
driver user, simply download the latest server pack and select "Upgrade" from
the installation options.
Download
the latest KEPServerEX
|