1. |
- Cengic, Goran, 1978, et al.
(author)
-
A Framework for Component Based Distributed Control Software Development Using IEC 61499
- 2006
-
In: Proceedings of the 2006 IEEE International Conference on Emerging Technology and Factory Automation, Sep 2006, Prague, Czech Republic.
-
Journal article (peer-reviewed)abstract
- A framework for component based distributed control software is proposed. The primary application for the framework is in distributed control systems. The framework proposes new software components, called automation components that can be hierarchically embedded to produce new components. Automation components are also combined to produce hierarchical component based applications. The framework is independent of the execution platform, however it is shown how an application that is developed using the framework can be executed using IEC 61499 platform. The validity of the framework is evaluated using an industrial example of a reconfigurable manufacturing cell.
|
|
2. |
- Cengic, Goran, 1978, et al.
(author)
-
Formal Modeling of Function Block Applications Running in IEC 61499 Execution Runtime
- 2006
-
In: 2006 IEEE Conference on Emerging Technologies and Factory Automation, ETFA; Hamburg; Germany; 20 September 2006 through 22 September 2006. - 9781424406814 ; , s. 1269-1276
-
Conference paper (peer-reviewed)abstract
- The execution model in a new standard for distributed control systems, IEC 61499, is analyzed. It is shown how the same standard compliant application running in two different standard compliant runtime environments may result in completely different behaviors. Thus, to achieve true portability of applications between multiple standard compliant runtime environments a more detailed execution model is necessary. In this paper a new runtime environment, Fuber, is presented along with a formal execution model. In this case the execution model is given as a set of interacting state machines which makes it straightforward to analyze the behavior of the application and runtime together using existing tools for formal verification.
|
|
3. |
- Cengic, Goran, 1978, et al.
(author)
-
A Control Software Development Method Using IEC 61499 Function Blocks, Simulation and Formal Verification
- 2008
-
In: Proceedings of the 17th IFAC World Congress. ; , s. 22-27
-
Journal article (peer-reviewed)abstract
- A new control software development method is presented. It uses IEC 61499 function blocks for control software programming and provides tools for simulation, execution, automatic model generation and formal verification of the control code during the development. Simulation and execution are supported by the same tool, the Fuber runtime environment. Formal modeling is done using extended finite automata (EFA) and an automatic model generation tool. Formal verification shows the behavior of the closed-loop system. i.e. when control code is executed against the model of the process. The model can use a non-deterministic execution control chart (ECC) in the process model block. The control code and the process model are expressed using the IEC 61499 language in order to avoid maintenance of the process model and control code in different languages, thus making it easier to use the formal verification in the control software development.
|
|
4. |
- Cengic, Goran, 1978, et al.
(author)
-
Definition of the Execution Model Used in the Fuber IEC 61499 Runtime Environment
- 2008
-
In: Proceedings of the 6th IEEE International Conference on Industrial Informatics. - 1935-4576. ; , s. 301-306
-
Journal article (peer-reviewed)abstract
- The buffered sequential execution model (BSEM) for IEC 61499 function block applications is presented. Before the execution of the application the composite function blocks are flattened. The resulting application containing the basic and service interface function blocks is executed. The basic function blocks are put in the ready queue in the same order that they receive the input events, hence the word ldquosequentialrdquo in the name. Each basic function block keeps a queue of incoming events with their associated data, hence the word ldquobufferedrdquo in the name. Scheduling policy of the blocks is in the scheduling function while the execution policy of the received events is in the function block instance. The extended finite automata models suitable for formal verification of the proposed execution modelpsilas behavior are presented. The model may be analyzed using a discrete event systems tool called Supremica. The presented execution model is implemented in the Fuber runtime environment.
|
|
5. |
|
|
6. |
- Cengic, Goran, 1978, et al.
(author)
-
On Formal Analysis of IEC 61499 Applications, Part A: Modeling
- 2010
-
In: IEEE Transactions on Industrial Informatics. - 1941-0050 .- 1551-3203. ; 6:2, s. 136-144
-
Journal article (peer-reviewed)abstract
- IEC 61499 is a standard architecture, based on function blocks, for developing distributed control and measurement applications. However, the standard has no formal semantics and different interpretations of the standard have emerged. As a consequence, it is harder to transfer applications between different standard compliant platforms. This paper presents a formal framework for mathematical modeling and comparison of different execution semantics. The framework provides definitions that allow modeling of applications and execution semantics separately. Together, the models can be used to analyze and compare how an application would behave when executed using different execution semantics. In addition, a mathematical model made possible by the framework has been used as a basis for implementation of a runtime environment that can execute applications and a software tool that generates formal models suitable for formal verification, both assuming different execution semantics.
|
|
7. |
- Cengic, Goran, 1978, et al.
(author)
-
On Formal Analysis of IEC 61499 Applications, Part B: Execution Semantics
- 2010
-
In: IEEE Transactions on Industrial Informatics. - 1941-0050 .- 1551-3203. ; 6:2, s. 145-154
-
Journal article (peer-reviewed)abstract
- IEC 61499 is a standard architecture, based on function blocks, for developing distributed control and measurement applications. However, the standard has no formal semantics and different interpretations of the standard have emerged. As a consequence, the execution behavior of applications running on different platforms may exhibit different behavior, thus making it harder to transfer applications between the platforms. This paper shows how three different execution semantics, buffered sequential execution model (BSEM), nonpreempted multithreaded (NPMTR), and cyclic buffered execution model (CBEM) can be mathematically defined. The mathematical definitions can be used to analyze an application's behavior when executed using those execution semantics. The mathematical definitions have been used as a basis for implementation of a runtime environment and a software tool that generates formal models suitable for formal verification. Formal verification can be used to help discover execution errors before the application is executed on the factory floor.
|
|
8. |
- Cengic, Goran, 1978
(author)
-
On Formal Methods in Development of Control Logic Using IEC 61499
- 2009
-
Doctoral thesis (other academic/artistic)abstract
- In the present global economy the manufacturing industry is faced with the challenges that need to be overcome in order to remain competitive and avoid outsourcing. One of the challenges is the efficient development of the control logicfor the distributed control systems that are often used to control the manufacturing equipment in the industry. Formal methods are mathematical frameworks that might be useful for overcoming that challenge. The control logic is often developed using the IEC 61131 standard that is focused on programming languages for non-distributed control systems. However, the new IEC 61499 standard provides the communication support as well as the programming units, i.e. function blocks, that are aimed at the control logic development for the distributed control systems.In the thesis, it is shown that the unclear specification of the function block scheduling order in the IEC 61499 might result in the control logic not being portable across IEC 61499 implementations. Therefore, the block schedulingorder has to be considered during the control logic development. As a consequence, the developers might lose the focus on the high-level control logic that may result in the time-consuming development.The thesis presents contributions that may help the automatic formal model generation of the IEC 61499 control logic, assuming different block scheduling orders. The generated formal models may be used for verification of the control logic behavior using the algorithms of the framework called supervisory control theory (SCT). A synthesis algorithm from the SCT is used in the thesis forcalculation of all deadlock free block scheduling orders from the automatically generated formal models.The contributions may help developers to concentrate on the high-level control logic since they may be able to use the formal methods to reduce the possible impact that the block scheduling orders, used in different IEC 61499 implementations, might have on the correctness of their control logic. Therefore, the developers may receive some benefits of the formal methods for the efficient development of the IEC 61499 control logic for the distributed control systems.
|
|
9. |
- Cengic, Goran, 1978
(author)
-
On Industrial Automation Software Development; Modeling, Analysis and Execution Using Automation Components and IEC 61499
- 2006
-
Licentiate thesis (other academic/artistic)abstract
- Ever increasing need for new personalized products drives the development of flexible manufacturing system. Due to their complexity they are controlled using distributed control systems that use many cooperating computers for the control task. The computers execute the control software application that orchestrates the equipment of the manufacturing process towards the common goal of product making.The development process of the software application may be divided in two major steps. Generation of the control function and transformation of that function into executable control code. For the generation of the control function the development model presented in the thesis uses discrete event models and the synthesis algorithms provided by the formal framework of supervisory control theory. For the executable code the new IEC 61499 standard is used since it provides communication primitives necessary for software applications in distributed control systems.The first contribution presents a method for automatic transformation of synchronously executed discrete event models into IEC 61499 function block applications. On the other hand, the second contribution presents a method for generation of the discrete event models from already existing IEC 61499 function block applications. The second method makes the us- age of supervisory control theory possible for the verification of correctness of the modeled application. The third contribution presents a framework for component based soft- ware development for distributed control systems. It is based on software units called automation components and their composition using a novel approach of utilization hierarchy along side usual implementation hiding and grouping using aggregation hierarchy. The utilization hierarchy provides the capability needed for abstraction of functionality in control applications that makes dynamic zooming during the application simulation feasible.
|
|