REPORT. IEC. TR Second edition. Programmable controllers –. Part 4: User guidelines. Reference number. IEC/TR (E). IEC is an IEC standard for programmable controllers. It was known as IEC before the change in numbering system by IEC. The parts of the IEC. IEC/TR , Ed. (). Programmable controllers. Part 4: User guidelines. AS IEC 4. This is a free 7 page sample.
|Published (Last):||15 April 2006|
|PDF File Size:||6.98 Mb|
|ePub File Size:||18.4 Mb|
|Price:||Free* [*Free Regsitration Required]|
To receive news and publication updates for Journal of Engineering, enter your email address in the box 61131-4. This is an open access article distributed under the Creative Commons Attribution Licensewhich permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. The industrial and research activities around the IEC architecture for distributed automation systems are discussed by Vyatkin, Research results related to the design of this kind of systems as well as to the execution of IEC on embedded devices are reviewed.
It is claimed that IEC has been developed to enable intelligent automation through the distribution of software components and that the industry will benefit through its adoption from the promise of the intelligence automation research results.
In this paper, several observations are presented on the 611131-4 that are used to prove that IEC is a solid technology for industrial automation systems development. Portability, interoperability, code modularity, reusability, and reconfigurability as well as determinism and the event-driven execution of IEC are discussed. In [ 1 ], the industrial and research activities around the IEC architecture for distributed automation systems are discussed, and IEC is promoted as an enabler of distributed and intelligent automation.
It is claimed that the function block FB model, that this standard introduces, provides a framework for the distribution of intelligence automation in software components that can be freely distributed across networked devices.
But, it is well known that FBDK is isc on the model of synchronous method call. In this paper, a number of observations are presented on the arguments that are used in [ 1 ] to prove that IEC is a solid technology for industrial automation systems development. The remainder of this paper is organized as follows.
In Section 3observations on the example of application used in [ 1 ], and the commercial tools used for its development are presented. In Section 4the key features of IEC as defined in [ 1 ] are discussed. In Section 5observations on determinism and the event-driven paradigm are presented. Section 6 presents a few other observations, and the paper is concluded in the last section.
Software for controlling industrial processes or machines is commonly executed on Programmable Logic Controllers PLCswhich are digital computers specifically designed for the use in industrial environments, that is, environments with extended temperature ranges and high electrical noise and vibrations. PLCs provide advanced functions, among which analog monitoring, control, and high speed motion control and communication over networks. Moreover, PLCs satisfy requirements imposed by hard real-time applications in this domain.
Two of them, that is, Ie instruction list and ST structured textare textual languages, and the other two, that is, LD ladder diagram and FBD function block diagramare graphical. Moreover, a higher level programming language, the sequential function chart SFCis defined for structuring the internal organization of programmable controller programs and function blocks.
The FBD language is the one that better matches with the object-oriented and the model-driven development paradigms in software development and is widely used in industry.
The IEC standard has been adopted by the industry and is widely used by control engineers in specifying the software part of systems in the industrial automation domain. It was recognized worldwide as the standard for programming and configuring industrial control devices. As claimed in [ 6 ]: At the same time, to overcome these restrictions, several research groups, 661131-4 example, [ 9 — 11 ], have proposed approaches that exploit best practices from the desktop application domain.
Object orientation, component-based development, and model-driven engineering are among these widely accepted best practices. Standardization of is also moving to this direction [ 12 ]. The IEC working group has proposed for voting a new version of the standard with the object-oriented OO extension being the main feature of this new version. Key points of this extension are as follows: Authors in [ 13 ] claim that the FBD language of the Iev has already introduced in the industrial automation domain, at irc at the specification level, the basic concepts of the OO paradigm.
It is also claimed that any attempt not only to use the IEC in model-driven engineering, but also to extend it to provide full support for OO should be based on the OO view of the existing standard. The key construct of the FBD language is the function block. Functions may also be used as behavioral units in FBDs. Behavioral units, that is, Functions Blocks and functions are interconnected in function block diagrams FBDs to specify the behavior of the controlling software.
Interconnections are based on one type of connection which does not specify the type of information that flows from one end to the other, that is, there is no distinction between data flows and event flows. The direction of the flow is defined from the convention that outputs are shown on kec right side of the FB, while inputs are on the left side.
Figure 1 presents the interface of the up-counter FB in graphical notation, while Figure 2 presents its body in textual format, both as defined in IEC [ 4 ].
In this case, instances of behavioral units are interconnected to form function block diagrams to graphically specify the behavior captured by the body. The software model of IEC defines two types of elements. The first type consists of elements which are programmed using the languages defined by the standard; programs and function block types are among these elements. Ic second type consists of configuration elements among which configurations, resources, tasks, global variables, access paths, and instance-specific initializations.
The controlling software is organized as a composition of program organization units POUs. The construct of POU is used isc refer to the constructs of program, function block FBor function and is defined as an aggregation of a declaration part and a code part, as shown in Figure 3which depicts the key elements of program organization. The same figure also captures the allowed calls between POUs.
Programmable Logic Controllers: A Practical Approach to IEC 61131-3 using CoDeSys
IEC extends the function block model of IEC to exploit best practices from the desktop application domain. More specifically, it adopts basic concepts of object orientation, and it describes an architectural model for the distributed applications in automation in a very generic way.
A control application is defined as an aggregation of interconnected Function Block 6113-14. The FB, which is the main building block of the IEC FB isc, is defined as a design level construct to encapsulate industrial algorithms and the data that these algorithms operate on. It consists of a head and a body; the head of the FB type is used to capture the dynamics, and the body is used to capture the functionality, as shown in Figure 4.
The head is connected to the event flows and the body to the data flows. The functionality of the function block is provided by means of algorithms, which process inputs and internal data and generate output data. The sequencing of algorithm invocations is defined in the FB type specification using a variant of statecharts called execution control chart ECC.
An EC state may have zero or more associated EC actions, except from the initial state that may have no associated EC actions. An EC action may have an associated algorithm and an event that will be issued after the execution of the algorithm. EC transitions are directed links that represent the transition of the FB instance from a state to another. An EC transition is fired when the associated Boolean expression becomes true. The FB enters the target state, executes the associated algorithms, and issues the corresponding events.
Several research groups, for example, [ 15 — 18 ], have proposed approaches to extend IEC and overcome identified shortcoming of the standard.
More specifically, code modularity, reusability, and reconfigurability of the resulting system are the features that are advertised as practical benefits of applying IEC in this case study and in general in the industrial automation domain.
The paper uses the function block diagram shown in Figure 6 [ 1Figure 2] to present code modularity in terms of function block instances and the ability of the designer to define the application as an aggregation hierarchy and to define the lowest level FBs by using execution control chart ECC and traditional PLC languages.
Presence or absence of events does not influence the invocation. Regarding reusability, no arguments are given in [ 1 ] to prove that ISaGRAF through its FB implementation improves reusability compared to the implementation.
Moreover, as argued in [ 11 ], instead of what is widely believed, IEC has already introduced in irc industrial automation domain, at least at the specification level, the basic concepts of the OO paradigm. The FB may be considered as a special kind of class not only with several restrictions, but also with extensions.
Staðli bætt í körfu
In a similar way to the class, it has a name; it defines the state of its instances using a set of local variables, declared either textually or graphically, and it defines the behavior of its instances through its body. It is quite interesting to see how an IEC run-time environment may be used to support run-time reconfigurability for IEC applications in a better way than for the IEC ones. It is claimed in [ 1 ] that one of the main features of IEC is the duality of the FB language construct.
This is based on the argument that its main design artifact, that is, the Function Block, has been extended from the subroutine-like structure of FB to the process-like abstraction. However, in this way, the FB, that is a design-time artifact, is compared with implementation constructs such as subroutines and processes.
It is well known that a design-time artifact such as the FB, can be implemented as a process, and this is also valid for the IEC Moreover, the event interface of the FB is presented as a successful mean of modeling interprocess message-based communications. However, the objective of design-time artefacts is not to represent implementation time mechanisms at the design specification.
It is common for mechanisms of lower levels of abstraction, such as the implementation ones, to implement the higher level constructs such as the event interface of FBs or the messages in UML sequence diagram that match their semantics.
Observations on the event interface of IEC are presented in the next section.
Staðlabúðin – IEC/TR
Another main feature, according to [ 1 ], is its duality of the application design, that is, being both model and implementation. But this is valid for every design specification for which an execution engine can be developed. The prerequisite for this is the existence of very well defined execution semantics, such as the ones of Harel Statecharts [ 21 ]. It should be mentioned that the tool, which is used by the author as proof of the success of IECtransforms the design specification to an IEC executable model that is executed on the IEC run-time environment.
Moreover, since SIFBs should be implemented on top of a middleware to ensure interoperability, portability is not hindered. Portability is a feature that can be considered before and after deployment. Both activation mechanisms are supported by IEC through the use of the task, which is one of its execution control elements. The task may trigger behavior by calling POUs, either on a periodic basis or upon the occurrence of the rising edge of a specified Boolean variable [ 4 ].
The implementation of the event connections between FB instances using the event-driven paradigm is discussed in the next section. Moreover, in a similar way with the first feature, that is, processes, the author relates a design-time construct such as the event connection between FB instances, with implementation mechanisms such as the event handling mechanism of Java, the use of monitors or semaphores, or the interprocess communication mechanisms of operating systems.
We start the discussion on this observation with some basic definitions. Deterministic is a computation situation in which the execution time of an action sequence is known precisely [ 23 ]. It was realized that the traditional approach to achieve determinism, the one based on cyclic executives, that is, static scheduling, such as the scan-based model, is inflexible and difficult to maintain.
This was the motivation for the scheduling theory in the domain of real-time systems [ 24 ].
The activation of the FBN of an application or subapplication can be either time triggered or event triggered.
Both models are supported by the IEC through the periodic and triggered execution of tasks correspondingly. The use of periodic tasks for the execution of POUs that capture the behavior of the application to an event or a set of events is also known as scan-based execution model.
Unfortunately, the IEC standard does not define the semantics of the event connection between FBs. For example, it is not defined if the event connection represents a persistent or transient communication, an asynchronous or synchronous communication, not even if it is of type signal or invocation. This means that the following two models can be used, resulting in different behaviors for the same design specification. In the case of synchronous communication, the execution order is well defined during compile time.
This is the model adopted by IEC This results in an execution model that is more difficult to prove its determinism, compared to the one based on the synchronous method call. This is the reason, according to [ 1 ], for the appearance of several proposals for the execution of IEC based applications.