Professional Documents
Culture Documents
Research Article
From IEC 61131 to IEC 61499 for
Distributed Systems: A Case Study
A new concept for distributed control systems based on the new IEC 61499 standard is tested in this work in cooperation with LAE
Engineering GmbH, a medium-sized company. Based on a catalogue of requirements, a customer-related testbed is developed. In
the following this testbed is used as a reference to realise an IEC 61499 compliant-distributed control system based on PC technics.
By doing this, rules are defined to convert user-owned IEC 61131 function blocks to IEC 61499 compliant function blocks. Con-
cluding, some trends for IEC 61499-based distributed control systems will be summarised.
Copyright © 2008 Christian Gerber et al. This is an open access article distributed under the Creative Commons Attribution
License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly
cited.
61499. The differences between both are the new system layer the testbed. From B&R we used a combined visualisation and
at the top, the changed function block interface, and the in- control unit (PowerPanel 200), a PLC (System2003, CP476-
troduced execution control chart (ECC) at the root of the DP), and a modular remote I/O (X20) with 6 digital in- and
software model [4]. outputs and 2 analog inputs. From the Phoenix products a
The new system layer potentiates the development of the PLC (ILC350-PN), one compact and one modular remote
whole control system with all controllers, I/Os, visualisation, I/O (ILB PN 24, FL IL 24 BK-PN-PAC), an interbus proxy
and data logging devices in one project, which will make it (FL PN/IBS) combined with I/Os, and two modular and
easier to realise changes in the equipment and communica- manageable switches (FL SWITCH MM HS) were chosen.
tion. Another effort in cases of trouble is to simply get the
system overview and to backup all project files. 3.3. Control functionality
Furthermore, the execution control is changed from
The control functionality described in the following is de-
cyclic to an event-driven one [5]. This allows to reduce the
veloped together with LAE Engineering. Main business seg-
computing power and the communication bandwidth to a
ments of this company are calendering techniques, power
necessary minimum if only algorithm with changed input
generation, and building automation. That is why only main
data is executed and only data packages with changed data
control operations from all of these segments are realised and
values are transmitted.
not one complete control system of a calender or a block-type
Concerning the self-reconfiguration of a control system
thermal power station.
in cases of disturbance or any other change in the produc-
From the segment calendering techniques, a function
tion environment, the IMS Research and Development Pro-
block to control an engine with one rotation direction and
gram has accomplished the research projects PABADIS [6]
a watchdog timing to detect any disturbance is used. In an-
und HMS [7]. To match the different partial results of these
other function block, a start up sequence of a calender ac-
and other global, European, and national projects, the R&D
cording to DIN EN 12301 is implemented. The different steps
initiative OOONeida was founded. The aim is the creation
of these sequences are horn active, retention time, andrelease
of a technological infrastructure for a new open knowledge
of start.
economy for automation components and automated indus-
To record the alarms, an alarm management consisting
trial products [8].
of two or more function blocks is implemented at every con-
To protect the own intellectual property at this new open
trol unit. All alarm activations are registered in groups of 8
knowledge economy, the guideline of encapsulation and hid-
by function blocks of the type AlarmDetection. These func-
ing was adopted from the IEC 61131 to the IEC 61499. To
tion blocks communicate with the function block of the type
guarantee the reusability and portability of the once devel-
NewAlarm, which is used to register the occurrence of one or
oped components between the different Engineering Sup-
more new alarms, quit all active alarms or only to turn off the
port Systems, the second part of the IEC 61499 defines the
horn.
requirements for the Engineering Support System.
The most commonly used function blocks from the de-
3. CUSTOMER-RELATED TESTBED partment of power generation have the functionality to cal-
culate the average value of a data point and to register the
For the further work, a state-of-the-art testbed related to daily and monthwise power consumption. To test a function
the customers requirements was established in cooperation block with a wide-spread functionality and huge memory
with LAE Engineering. It is supposed to show what is cur- consumption, the function block of the type PZN Archiv was
rently done concerning communication, manufacturer inde- also taken from the power generation department. With this
pendency, and programming of control systems. block, it is possible to register the power production per 15
minutes of the last 24 hours and to send the last value to the
3.1. Communication: industrial ethernet visualisation, which sends a rising edge to a boolean input to
In most manufacturing plants, field buses like AS-Interface, get the next value.
CAN, and Profibus are the currently used communication For communication purpose between the control units,
platform, but there is a widely accepted trend to use Indus- a bidirectional Ethernet-based client server architecture is
trial Ethernet in future. The manufacturers of automation used and the TCP/IP packets are sent every 500 milliseconds,
technology as well as the customers support this trend, be- whether the included data points have changed or not. Thus,
cause Ethernet in combination with new transport protocols the consumed communication bandwidth is every time the
like Powerlink, Ethercat, Profinet, and so forth offers more same.
opportunities by the same rate of actualisation. So it will be Because of getting a faster communication between the
possible to use the different communication media copper, control unit and the remote I/Os, the Ethernet-based proto-
optic and wireless fiber with data transfer rates up to 1 giga- cols Profinet I/O and Powerlink are used. Thus, it is possible
bit per second. to get the current state of each remote I/O every 10 millisec-
onds to the appropriate control unit.
3.2. Used hardware
4. CONVERTING THE TESTBED TO IEC 61499
Based on the results of a market research, the systems from
Bernecker + Rainer Industrie-Elektronik GmbH (B&R) and At the second part of the work it should be demonstrated that
Phoenix Contact GmbH&Co.KG (Phoenix) were used for the control functionality of the testbed can also be realised
Christian Gerber et al. 3
CP476DP
RMT FRAME
Powerlink: Ethernet
[200, 0, 200, 500] BOUNDS
GRID Visu Start
RMT FRAME
“141.48.159.197:61495” MGR ID
[0, 0, 200, 500] BOUNDS
GRID
X20
“141.48.159.198:61492” MGR ID
RMT FRAME CAN: LocalBus
[400, 500, 310, 200] BOUNDS
GRID
“141.48.159.200:61493” MGR ID
PP 200 ILC 350 PN
RMT FRAME
RMT FRAME
[400, 0, 200, 500] BOUNDS
[500, 0, 200, 500] BOUNDS
GRID
GRID
“141.48.159.201:61494” MGR ID
“141.48.159.199:61496” MGR ID
ILB PN 24 FL BK 24 IBS
RMT FRAME RMT FRAME RMT FRAME
[800, 0, 310, 200] BOUNDS [800, 200, 310, 200] BOUNDS [800, 400, 310, 200] BOUNDS
GRID GRID GRID
“141.48.159.195:61499” MGR ID “141.48.159.196:61498” MGR ID “141.48.159.194:61497” MGR ID
FB Engine
Ack Ack CNF CNF
Start Start Timer start stop
Flag Set R TRIG Flag
Stop Stop
REQ EI EO EI EO
Timer REQ REQ
Start EO Timer expired
FB XOR E R TRIG
Stop
In1 Out QI
FB Engine body
AckOn In2
E Delay AckOn AckOn EngineOn EngineOn
F TRIG Flag
Delay DT AckFailure AckFailure VisuOn VisuOn
EI EO
GroupSignalFail GroupSignalFail
DelayFailure DelayFailure
E F TRIG
QI
FB StartUpChain
Start Horn FB StartUpChain
INIT INIT INITO inputs and outputs. The copied interface has to be extended
by a management interface consisting of the event pairs
1 INIT INIT-INITO and REQ-CNF as shown in Section 4.2.1.
REQ AckAlarm
Start AlarmAcknowledgement AlarmAck Ack
Rule 2
REQ REQ CNF
AckHorn
1 Every boolean input or defined bit within a byte or word
1
structured data input will become an event input if there is
1 HornAcknowledgement HornAck CNF an edge detection performed at the original function block
Figure 8: ECC of alarm control function block. (Figure 10).
(a) Every boolean input or defined bit within a byte or
word structured data input will become two event in-
4.2.6. FB—NewAlarm puts if there is a positive and negative edge detection
The activation of the horn by the occurrence of any new performed at the original function block.
alarm and the acknowledgment of the horn as well as all ac- (b) If there are two or more IEC 61131 function blocks
tive alarms can be done with the function block NewAlarm. within one POE connected through a local boolean
As shown in Figure 8 the ECtransition to the successor variable or through a defined bit of a local byte or
of the ECstate reached by AckAlarm has no condition and word structured variable, the translated function
is therefore always true. This is done because this successor blocks will be connected through events as described
is reached from the ECinitialstate by the event AckHorn and in Section 4.2.6.
resets the data output HornOn, which is also a part of the
AckAlarm functionality. Before this, the output event Ack has Rule 3
to be published. This event output is linked with the input Every code fragment triggered through an edge detection of a
event Ack of all function blocks, which register the alarms, by boolean variable has to be implemented as an own algorithm
using the event splitter E SPLIT, defined in annex A of the in the new IEC 61499 function block and associated within
IEC 61499-1. an ECAction to an ECState reachable through the event of
the converted boolean value from the ECinitialstate.
4.2.7. FB—PZN Archive
For the implementation of a ring buffer for 24 hours and 4 Rule 4
measured values per hour, the function block in Figure 9 is Each IF-Condition should be divided in one Then and one
used. Furthermore, the oldest and not taken over data pair ELSE algorithm as shown in Figure 11. The switching condi-
consisting of the station number, a time stamp, and the con- tion of the transition from the successor ECstate to the EC-
sumed or produced power is presented at the data outputs. state associated with the THEN algorithm is the IF clause it-
The consumed or produced power is calculated by the num- self. The complement of the IF clause is used as switching
ber of positive edges at the boolean input Input and the val- condition of the transition to the ECstate associated with the
ues of TransformerConst and TransmitterConst. ELSE algorithm.
By reseting the boolean in- and output Flag of the IEC
61131 function block, a take over of the data and a request for Rule 5
new data is signaled. If there is new data available, the func-
tion block will set the boolean input and output Flag again. To reduce the necessary computing power for sampling of the
By converting to IEC 61499, this boolean input and output is data inputs and updating of the data outputs, each in- and
transformed to an event input and an event output. output event should only be connected with a minimal set of
It should be noticed that it is possible to copy and paste required data inputs or changed data outputs (Figure 4(b)).
the source code of the original function block into one algo-
rithm, but it is better to separate the source code according to Rule 6
rule 3.1 in different algorithms. By doing this, the algorithms To set, to reset, to read, and to write bits within a data point
are shorter, easier to validate, and better to understand, but of the type byte or word, defined masks have to be combined
the ECC for controlling the algorithms will get more com- with the original data point (boolean algebra) (see Table 1).
plex.
5. CONCLUSION
4.3. Translation rules
As a result we can draw the conclusion that the transforma-
Due to the earlier explanations in this section, we define the tion of an IEC 61131-based control system to an IEC 61499-
following general rules for the translation of IEC 61131 func- based one is possible. This is done by transforming all the
tion blocks to IEC 61499 ones. used basic and composite function blocks first. After this,
the control functionality of the whole system can be im-
Rule 1
plemented by connecting the translated function blocks by
The same data interface should be used for the IEC 61499 means of data and event arcs at the application view of the
function blocks and the ones of IEC 61131 except the boolean system. At this step the aspects of communication and I/O
Christian Gerber et al. 7
DayChange DayCounter
MonthChange DayCounterYesterday FB Counter
Real PulseRatio Counter Real
PulseRatio MonthCounter
Real SetCounterValue DayCounter Real
SetCounterValue MonthCounterLMonth
UN DayChange; Real CounterMAX DayCounterYesterday Real
CounterMAX
SetCounter SetCounter
FP DayChange; MonthCounter Real
MonthCounterLMonth Real
SPBN M003;
(a) IEC 61131 (b) Source code (c) IEC 61499
Figure 10: Converting the Boolean input DayChange.
Table 1
(a) Writing a bit (b) Reading a bit
UN Alarm7; UN L 6.7;
IEC 61131: IEC 61131:
= L 0.6; = X;
M0: = 0;
IF Alarm7=False then
IEC 61499: M0:=M0 or 64; IEC 61499: X:= M6 and 128;
End IF;
declaration are not yet taken into account. If the applica- because the communication and I/O mapping are separated
tion is ready, the single components represented by function from the development of the control functionality. This will
blocks are mapped to the resources of the used devices. Fi- make it possible especially for medium-sized companies to
nally the communication between the devices and the I/O delegate the development of function blocks encapsulating
declaration has to be implemented by using special Service the control, the visualisation, and the data logging to other
Interface function blocks for each device. companies. Afterwards, the main contractor of a project only
Using this way of system engineering eases the creation maps the function blocks to devices and establishes the com-
of customized automation solutions as a distributed system munication between them.
8 EURASIP Journal on Embedded Systems
REFERENCES
[1] S. Panjaitan, T. Hussain, and G. Frey, “Development of re-
configurable distributed controllers in 61499 based on task
schedules described by UML diagrams or gantt charts,” in Pro-
ceedings of the 3rd IEEE International Conference on Industrial
Informatics (INDIN ’05), pp. 44–49, Perth, Australia, August
2005.
[2] M. Fletcher and D. H. Norrie, “Realtime reconfiguration using
an IEC 61499 operating system,” in Proceedings of the 15th In-
ternational Parallel & Distributed Processing Symposium (IPDPS
’01), pp. 985–991, San Francisco, Calif, USA, April 2001.
[3] V. Vyatkin, “Intelligent mechatronic components: control sys-
tem engineering using an open distributed architecture,” in Pro-
ceedings of IEEE Conference on Emerging Technologies in Fac-
tory Automation (ETFA ’03), pp. 277–284, Lisbon, Portugal,
September 2003.
[4] IEC 61499, “Function blocks for industrial-process measure-
ment and control systems—part 1: architecture,” Tech. Rep.,
International Electrotechnical Commission, Geneva, Schweiz,
2003.
[5] R. Lewis, Modelling Control Systems Using IEC 61499, The Insti-
tution of Electical Engineers, London, UK, 2001.
[6] A. Bratoukhine, T. Sauter, J. Peschke, A. Lüder, and A. Kloster-
meyer, “Distributed automation: pabadis vs. hms,” in Proceed-
ings of the 1st IEEE Conference on Industrial Informatics, pp.
294–300, Banff, Canada, September 2003.
[7] S. M. Deen, Agent Based Manufacturing—Advances in the
Holonic Approach, Advanced Information Processing, Springer,
Berlin, Germany, 2003.
[8] V. V. Vyatkin, J. H. Christensen, and J. L. M. Lastra, “Oooneida:
an open, object-oriented knowledge economy for intelligent in-
dustrial automation,” IEEE Transactions on Industrial Informat-
ics, vol. 1, no. 1, pp. 4–17, 2005.
[9] C. Gerber, “SPS/IPC/Drives 2006,” http://aut.informatik.uni-
halle.de/forschung/sps-ipc-drives, November 2006.
EURASIP Journal on Wireless Communications and Networking
Special Issue on
Enabling Wireless Technologies for Green
Pervasive Computing
Special Issue on
Image and Video Processing for Cultural Heritage