Journal of Manufacturing Systems 40 (2016) 119–136
Contents lists available at ScienceDirect
Journal of Manufacturing Systems journal homepage: www.elsevier.com/locate/jmansys
Technical Paper
Holonic control approach for the “green”-tyre manufacturing system using IEC 61499 standard Marko Jovanovic´ ∗ , Samo Zupan, Ivan Prebil University of Ljubljana, Faculty of Mechanical Engineering, Chair of Modelling in Engineering Sciences and Medicine, Slovenia
a r t i c l e
i n f o
Article history: Received 21 August 2015 Received in revised form 26 April 2016 Accepted 12 June 2016 Keywords: Tyre manufacturing Distributed holonic control Distributed holonic manufacturing system IEC 61499 standard Virtual manufacturing
a b s t r a c t Traditional tyre-manufacturing systems are characterised by a slow response during optimisation of the manufacturing process and insufficient adaptability to system disturbances. The objective of our research is to develop a distributed and adaptive control approach based on the concept of holonic control and IEC 61499 function blocks. A brief description of the manufacturing modules within the “green”-tyre manufacturing system is given. The architecture of distributed holonic control and implementation environment using IEC 61499 function blocks are then proposed and elaborated. Comprehensive discussion is given thereafter, including an evaluation of the distributed holonic control approach within the virtual manufacturing environment based on simulation tests for various scenarios, whereby system operation in unstable conditions is taken into account. The real-life implementation of this technology in the future is expected to increase productivity, resource utilisation and robustness in a tyre-manufacturing environment. © 2016 The Society of Manufacturing Engineers. Published by Elsevier Ltd. All rights reserved.
1. Introduction and problem statement Tyre-manufacturing systems are faced with an increasing number of various tyre types and sizes, while the tyre market circumstances are variable and uncertain, which increases the complexity of manufacturing processes and manufacturing systems. Consequently, there is a growing need for agile and adaptive solutions in the field of designing manufacturing systems. New solutions would reflect a dynamic response to changes and disturbances within the manufacturing environment. An ideal manufacturing system would achieve optimal performance in real time in a stable as well as unstable environment. In an unstable manufacturing environment, traditional control approaches are inflexible, time consuming and prone to faults when directly implemented into a dynamic manufacturing environment. Control architecture of most tyre-manufacturing systems are centralised and based on conventional industrial control devices – programmable logic controllers which control the lower levels in a control structure including control of actuators based on sensor data. The software environment within the centralised control structures is designed as a group of pre-defined software units.
∗ Corresponding author. Tel.: +386 14771190; fax: +386 14771178. ´ E-mail address: marko.jovanovic@fs.uni-lj.si (M. Jovanovic).
Development of a software environment within programmable logic controllers requires development of monolithic software procedures. These are difficult to change and expand due to the use in new applications or connection to software environments which are designed on various platforms. The adaptability of centralised control systems to unpredictable changes in the system is insufficient due to the monolithic nature of the software procedures within programmable logic controllers. A suitable solution which will enable an appropriate response to such changes is development of a distributed and adaptive control system which will be organised as a group of cooperative units and will not include a master controller in the control structure. This control system will enable the manufacturing system to achieve optimal performance in a dynamically changeable manufacturing environment. Our approach will be based on IEC 61499 function blocks and the concept of a holonic control structure. The IEC 61499 standard of function blocks is an upcoming framework for the design of distributed control applications of industrial manufacturing systems [1]. The original concept of function blocks is presented in the IEC 61131-3 standard, which defines the standard language for programming programmable logic controllers. Applications developed in accordance with the IEC 61131-3 standard cannot be distributed to several different resources, which presents a restriction for the development of distributed control applications. In complex control systems, however, it is very difficult to determine the order of control functions performed.
http://dx.doi.org/10.1016/j.jmsy.2016.06.008 0278-6125/© 2016 The Society of Manufacturing Engineers. Published by Elsevier Ltd. All rights reserved.
120
M. Jovanovi´c et al. / Journal of Manufacturing Systems 40 (2016) 119–136
The IEC 61499 standard defines the reference architecture of distributed control systems and methodology of describing function blocks in a form which is independent of the implementation method. The standard also defines the type of communication function blocks which are used for data exchange between the resources found on various devices. Furthermore, the standard determines the design of service interface function blocks (SIFB) which maintain a connection to smart field devices (e.g. autonomous mechatronic components with embedded microcontrollers). As a general standard, the IEC 61499 standard does not define specific features of particular industrial applications and communication protocols [2]. Implementation of an event-driven model of function blocks, communication protocols and appropriate smart field devices will make this system more autonomous and agile in the phase of adapting to changes in the manufacturing environment. The control structure will be defined by interconnections of function blocks and software agents. The objective of this study is to develop an environment for implementation of distributed holonic control approach within the tyre-manufacturing system by means of function blocks. Since function blocks enable detection of changes in the manufacturing environment, the use of function blocks within the distributed holonic manufacturing system (DHMS) is expected to enable the dynamic response in the case of new optimisation demands and decrease the impact of disturbances and faults on production productivity. A significant step towards practical implementation of control applications which are based on holonic control structures is the development and verification of lower levels in the control structure. Lower control levels are dealing with the connection to real or virtual machines in the manufacturing environment. Our approach will contribute to this objective. After the initial analysis of the actual problem (Chapter 1) and an overview of the current situation in this field of interest (Chapter 2), the paper will continue with a presentation of the properties of the tyre-manufacturing system (Chapter 3) followed by a description of the distributed holonic control architecture by means of function blocks at the lowest architecture level (Chapter 4). Development of function blocks within the presented architecture and environment for their implementation in a real or virtual manufacturing system will be presented in Chapter 5. Chapter 6 will include evaluation of the presented control approach within a virtual manufacturing environment.
2. Background – literature review In the field of automation of industrial production systems, the holonic control approach has attracted a lot of attention due to its distributed nature and ability to adapt to disturbances in production systems. A few studies in this field [3–6] discuss implementation of general agents within which agent behaviours are executed only in the simulation environment. As evident from studies on real-life implementation [7–10], in most cases multilevel control architectures are used. Different agent behaviours at higher levels of multi-agent architecture are performed on separate computers, while lower levels are still implemented within programmable logic controllers. To facilitate integration of the holonic control system with the physical system, the logic structure of the physical system must be mapped into the logic structure of the control application. With the purpose to implement the distributed control approach into industrial systems, development of event-driven function blocks within the IEC 61499 standard has been made. IEC 61499 function blocks present an extended version of function blocks based on standard IEC 61131-3. Among commercial tools used for development of control applications in accordance
with the IEC 61499 standard, the following tools are considered most important for the industrial environment: Functional Block Development Kit (FDBK) [11], which originates from the HMS project [12], ISaGraph [13], ntxControl [14] and 4DIAC [15]. To make the IEC 61499 standard applicable on various hardware devices, the manufacturers of such devices must develop support for the standard. The possibilities of implementation on industrial devices are currently limited since there are only few platforms for direct execution of function blocks within the industrial devices, including the ElsistNetmaster II platform [16] and the Tait Control Systems Intelligence platform [17]. Furthermore, researchers must develop new software approaches and architectures which will enable implementation of the DHMS into the industrial environment. Even though researchers have in the last period developed many control applications based on the IEC 61499 standard, they were mostly limited to a lower control level and were not able to resolve reliability issues resulted from system disturbances. In our control structure, this deficiency is being addressed at higher control levels by means of the holonic control concept. Olsen et al. [18] presented implementation of a distributed control approach by means of a Java-based platform. The control application consists of IEC 61499 function blocks with the purpose of researching the system in the case of reconfiguration changes in the system. Hussain and Frey [19] presented modelling of a flexible and reconfigurable application based on the IEC 61499 standard. The control application was implemented as part of the NETMASTER network controller. The IEC 61499 standard proposes approach of hardware independent modelling of control applications which is similar to the concept of the model-driven architecture (MDA). The MDA concept [20] proposes separating the logic control domain from the hardware domain. The concept describes the system by means of various models. Models defined by the MDA concept are: Platform Independent Model (PIM), which defines the logical functionality of the control application and as such does not include any specific platform technology; Platform Description Model (PDM), which describes the platform or hardware that the control application will be used on; Platform Specific Model (PSM), which describes the use of the platform technology and services provided by this platform. In the field of control structure development, several studies have been performed by means of the MDA concept [21–24]. In our study, we will use an approach which is based on hardware abstraction (Hardware Abstraction for IEC 61499 [21]) and presents an upgrade of the MDA concept. This approach will help decrease the complexity of the process of distributed control structure development and enable its implementation on various machines with minimal redesign activities. The connection between the holonic approach and function blocks was first presented by Fletcher [25]. His studies have shown that the technology presented in the IEC 61499 standard is suitable for decentralised control application under the holonic approach. Within the framework of the HMS project, Christensen [26] presented the use of function blocks which are integrated with the holonic control approach already in the initial phase of the control application design. The control architecture was divided into two domains: low-level control and high-level control. The purpose of the low-level control is to perform control and automation functions by means of function blocks implemented in accordance with the IEC 61499 standard. High-level control, however, includes coordination and cooperation functions regulated by FIPA standards. For this purpose, holons or multi-agent structures were used. Wang et al. [27] described the control architecture, which enables distributed and intelligent control in real time and combines the IEC 61499 standard of distributed control with the holonic control paradigm. They also presented the generic control system, which will control the lowest level of control architecture. Vrba [3] presented the architecture for simulation of production systems which
M. Jovanovi´c et al. / Journal of Manufacturing Systems 40 (2016) 119–136
includes low-level function blocks for integration with hardware and control in real time, while at higher levels software agents are used for cooperation and coordination tasks. In their study, Black in Vyatkin [28] presented the results of developing the distributed control architecture in accordance with the IEC 61499 standard, whereby architecture was implemented into the airport baggage handling system. Functional blocks representing individual conveyor parts within the baggage handling system were developed in accordance with the approach of automation objects which describe the physical subassemblies of the automated transportation system. Architecture implementation within the framework of the test system demonstrated the ability of the controller to perform control functions within the system without centralised guidelines. The presented implementation scheme can be fully executed on the currently embedded controllers supported by the Java IEC 61499 runtime. Wang et al. [29] developed methodologies for distributed, adaptive and dynamic process planning as well as machine monitoring and control for machining and assembly operations, using eventdriven function blocks. Function blocks are introduced as a core
121
enabling technology to bridge the gap between computer systems and CNC systems. A novel energy demand modelling approach based on function blocks was proposed by Peng et al. [30]. The developed energy demand model enhances the process of energy modelling and their practical implementation. 3. Description of the manufacturing modules within the “green”-tyre manufacturing system The tyre-manufacturing process typically consists of five stages: compounding and mixing of raw materials for the manufacture of tyre components, preparation of components, “green”-tyre manufacture, vulcanisation and final control. The flow of the manufacturing process within the tyre-manufacturing system is presented in Fig. 1. This paper relates to the “green”-tyre manufacturing operation. The “green”-tyre manufacturing system consists of three machining groups: first-stage machining group, second-stage machining group and the main machining group. Each of these groups consists of manufacture modules which enable letting off,
Fig. 1. The flow of the entire tyre-manufacturing process.
122
M. Jovanovi´c et al. / Journal of Manufacturing Systems 40 (2016) 119–136
Fig. 2. Plan view of the “green”-tyre manufacturing system.
transport, cutting, laying, winding and shaping of particular components within the “green”-tyre manufacturing process. For the “green”-tyre manufacture, 11 components i.e. breakers are used. Within the first-stage machining group, a part of the “green” tyre is made which consists of the following components: Inner Liner, Sidewall, Chipper and Ply. Within the second-stage machining group, a part of the “green” tyre is made which consists of the following components: Shoulder Wedge, Breaker Wedge, Breaker 1, Breaker 2, Breaker 3, Breaker 4 and Tread. The plan view of the “green”-tyre manufacturing system is shown in Fig. 2. Behavioural analysis of the existing “green”-tyre manufacturing system with a conventional control system which includes a programmable logic controller as the central control unit is for the operation stage Breaker 2 winding presented as a state chart in Fig. 3. The sequence of operation stages and flow-time structure in the “green”-tyre manufacture process are presented in more detail in paper [31]. The operation stage Breaker 2 winding (Fig. 4), which consists of several operation phases, is performed within two manufacturing modules: Breaker Server 2 and Second-stage drum. The basic activities of individual machines within the Breaker Server 2 module are presented in Table 1. The operation stage Breaker 2 winding starts with unwinding the prepared material from the cassette which is located in the right part of the Let-off 2/3. The Let-off 2/3 is of double-type, which means that at the same time there are two cassettes on the Let-off which is used in the Breaker Sever 2 module as well as in the Breaker Server 3 module. On the cassette in the right part of the Let-off, Breaker 2 material is being prepared, while on the cassette in the left part of the Let-off, Breaker 3 material is being prepared. The second operation phase is Moving Breaker 2 into the cutting position by means of the Serving conveyor 2. The next operation phase is Cutting Breaker 2 to a defined length by using Cutter 2. This phase is then followed by the operation phase Moving Breaker 2 to the winding position by means of the Feed-motion conveyor 2. The operation stage is concluded with the operation phase Winding Breaker 2 on the second-stage drum.
4. Architecture and ontology of distributed holonic control of the “green”-tyre manufacturing system The central part of the control architecture (Fig. 5) is a distributed control application which at higher architecture levels includes adaptive holonic control application, while at lower levels IEC 61499 function blocks are implemented. Function blocks at lower control levels are re-usable in various types of tyremanufacturing systems, which results in standardisation, higher flexibility and easier implementation of the control system. The control structure development process will be verified within the virtual environment before its implementation in a real-life manufacturing environment. In case of any changes in the control structure or the manufacturing environment, the interface to the real-life environment can be at any given moment replaced by the interface to the simulation environment if verification of changed control functions by means of simulation is necessary. A direct connection between the distributed control application and machines and sensors in both real-life and virtual manufacturing environment will enable continuous monitoring as well as comparison and analysis of manufacturing operation parameters. Dynamic control of the “green”-tyre manufacturing system will be achieved by monitoring execution of the IEC 61499 function blocks in real time. This means that manufacturing operation parameters will be used in real time within the adaptive decision-making process in the distributed manufacturing environment, which enables machine operation under optimal conditions. The generic sequence of operation stages which is defined on the level of the Main Control Holon is divided into operation phases on the level of the Control Holon of the Module. It is evident that operational plans for a machine in the system are not defined in advance, but are rather defined based on concurrent and contingent interaction. On the level of the Operational Holon, verification of operational parameters is performed for each operation phase within the virtual manufacturing environment. The architecture of the distributed
M. Jovanovi´c et al. / Journal of Manufacturing Systems 40 (2016) 119–136
Fig. 3. State chart within the existing centralised programmable logic controller.
holonic control structure of the “green”-tyre manufacturing system is presented in Fig. 5. Design of the operational holon architecture is in accordance with the CIM (Control-Interface-Machine) pattern, whose development was inspired by the MVC (Model-View-Control) design pattern [32,33]. The MVC pattern has been widely used in designing web applications mainly to separate the presentation from the business logic. Within the CIM design pattern, we assigned software objects one of three roles: control, interface or machine. The collection of software objects within the operational holon is referred to as a layer – Control Layer, Interface Layer and Machine Layer. The pattern defines not only the roles objects play in a control application it defines the way objects communicate with each other. This pattern helps developers of the distributed holonic control structure determine software objects needed to build the operation holon. The Control Layer encapsulates software agent and function blocks. The Interface Layer contains Virtual Simulation Interface and Logical Adapter Interface software objects, while the Machine Layer encapsulates a real machine and virtual model of the real machine. Developed software objects are reusable, which simplifies the design process of control applications. Applications which are following the CIM design pattern in a design process are also
123
more easily extensible. Even though the MVC design pattern can enable immediate simulation within function blocks, presentation of the production system and design of the dynamic nature of the simulation environment by means of Functional Block Development Kit (FBDK) are very restricted. To eliminate these restrictions, our approach is based on simulation within the virtual environment. These simulations for a complex mechanical system such as the “green”-tyre manufacturing system enables more reliable simulation results and consequently more accurate prediction of the control functions in the system. Function blocks implemented within the operational holon (IEC 61499 Control Layer) obtain control parameters from the software agent (Agent Control Layer), which are resided at higher control levels. The connection between the Control Layer and Machine Layer is enabled by means of the Interface Layer. To enable the connection between software agents and function blocks and the connection between function blocks and the Virtual Simulation Interface (Interface Layer), the SIFB was used. For this purpose, standard CLIENT/SERVER function blocks of the bi-directional data transaction, which are based on UDP communication protocol, were implemented. To enable the connection between the Control Layer and real-life manufacturing environment (Machine Layer), the Logical Adapter Interface will be implemented which will be described in more detail in Chapter 5. The Disturbance Identification Layer within the Control Layer is connected to the closed loop with the Machine Layer, so it can receive sensor data from a real-life system and the virtual manufacturing environment (encoder, limit switch and photoelectric reflex sensor). This data is used by disturbance identifiers to determine the status of system components which is reported to the software agent. The software agent then in communication with other holons in the structure initiates execution of recovery actions in the case of a system disturbance. This will enable synchronisation of the real-life manufacturing environment with the simulation environment, which will result in more reliable operation of the “green”-tyre manufacturing system. Function block models which will be implemented into the distributed holonic control structure of the “green”-tyre manufacturing system will be presented in Chapter 5. Integration of the virtual simulation environment into the distributed holonic control structure is in accordance with the predictive control principle. The predictive control principle has until now only been applied within control algorithms by means of mathematical models for the forecast of the behaviour of production systems [34–36]. In a virtual environment, forecast of the DHMS behaviour for various simulation scenarios is more reliable than with mathematical models. In case of such scenarios, control mechanisms, control functions, recovery actions and manufacturing operation parameters are available for use in a reallife manufacturing system. Simulations in a virtual manufacturing environment enable more precise coordination of control parameters even during the control system design phase. Simulation can also be performed in real time when control of a real-life manufacturing system is performed. In case of any changes in the control structure or the manufacturing environment, only the virtual simulation interface will be active and it will enable verification of altered control functions. Verified control functions can then be used in the real-life manufacturing environment. The structure of the software agent within the operational holon is presented in Fig. 6. The basic functions of the software agent are holon cooperation and coordination. The software agents among high-level holons in the control structure have the same structure but are without the interface to low-control levels. Development of the adaptive holonic control application includes development of each particular holon based on the object-oriented programming approach. For this purpose, the JADE platform (Java Agent Development Environment) was used [37],
124
M. Jovanovi´c et al. / Journal of Manufacturing Systems 40 (2016) 119–136
Fig. 4. Flow of operation stage Breaker 2 winding and use of sensors within the manufacturing modules Breaker Server 2.
Table 1 Basic activities of machines within the module Breaker Server 2. Machine
Operation phase
Command within the state chart
Command description
Conditions for command performance
Type of sensor in the machine
Sensor function
Let-off 2/3
Unwinding Breaker 2
unwind LO
START button is pushed
Photoelectric reflex sensor (Fig. 4)
Checking for material presence on the exit of the Let-off (empty)
Serving conveyor 2
Moving Breaker 2 into the cutting position Cutting Breaker 2 to defined length
move SC
Unwinding Breaker 2 from the cassette in the right part of the let off Moving Breaker 2 along the conveyor Moving the knife into the final position
initpos (Operator), not empty (Sensor – Let off) knife right (Sensor – Cutter), cut pos (Encoder – Serving conveyor)
Encoder
Defines the cutting position
Limit switch
Defines the final positions of moving the knife (knife left, knife right) Checking for material presence on the Feed-motion conveyor (fmc ok) /
Cutter 2
frw KNIFE, bkwd KNIFE
Feed-motion conveyor 2
Moving Breaker 2 to the winding position
move FMC
Moving Breaker 2 along the conveyor
Second-stage drum
Winding Breaker 2 on the second-stage drum
wind DRUM
Winding Breaker 2 on the drum
which is an open-source agent platform. In the presented distributed holonic control structure, communication and cooperation among autonomous units are based on ontology developed in accordance with the FIPA Ontology Service Specification [38]. Ontology can be defined as explicit specification of conceptualisation [39]. Ontology covers the vocabulary describing the terminology of concepts and relations among them. The actual meaning of the content of messages is within the ontology. Ontology within the control architecture of the “green”-tyre manufacturing system is developed in accordance with the ADACOR ontology [40], with which it has nothing but coarse correlation. Ontology was developed by extending the existing Ontology class within JADE with a description of concepts, agent actions and predicates. Concepts are expressions which define the entities used
cut ok (Sensor – Serving conveyor), knife right (Sensor – Cutter) fmc ok (Sensor – Feed-motion conveyor)
Photoelectric reflex sensor (Fig. 4) /
by agents in their area of communication. Predicates are expressions which define the entity status. Agent actions are concepts which define the actions performed by agents. An overview of the ontology concepts is presented in Fig. 7. In JADE, messages among agents are in accordance with the ACL (Agent Communication Language) standard. INFORM messages transmit only information, REQUEST messages transmit requests for performing agent actions in the system, QUERY messages transmit questions, while PROPOSE messages transmit proposals for performing production tasks. Message content formatting in JADE is supported by the FIPA SL (Semantic Language) language. JADE enables three methods of implementing communication among agents within multi-agent systems. The basic difference among them is the message content type. The first method uses strings to present the message
M. Jovanovi´c et al. / Journal of Manufacturing Systems 40 (2016) 119–136
125
Fig. 5. Distributed holonic control structure of the “green”-tyre manufacturing system.
content. In study [31], the authors used this method to develop a holonic communication system in which the message content was application-dependent. The messages included only basic (atomic) data and no objects. The second method is based on JAVA objects as the message content, whereas in the third method ontology objects are used. For appropriate agent communication, agents have to share the same language, vocabulary and protocols. This means that the agent system needs to have its own developed ontology which will enable agent communication and integration with multiagent systems developed on other platforms. Application-specific
ontology defines the elements which can be used as agent message content. In studies conducted so far [41–43], application-specific ontology is seldom used within industrial multi-agent and holonic control structures. Therefore, message information processing in such control structures is encoded based on agent behaviour. Behaviour of each holon in the distributed holonic control structure depends on agent rules or messages which the holon receives and understands based on integrated ontology. On the base of received messages, the holon initiates performance of appropriate
126
M. Jovanovi´c et al. / Journal of Manufacturing Systems 40 (2016) 119–136
Fig. 6. Structure of the software agent within the operational holon.
Fig. 7. Overview of the ontology concepts within the control architecture of the “green”-tyre manufacturing system.
agent actions within the holon and communication actions with other holons in the system. Our architecture is based on agents the behaviour of which is subject to rules currently encoded in the JADE environment. The objective of our future work is development of agent rules which are based on the knowledge base. Agent rules within operational holon in a stable manufacturing environment are demonstrated in Table 2. Agent actions and its relations with other holons determine the coordination mechanism within the manufacturing control process. The holonic control system within the “green”-tyre manufacturing system does not have an explicitly defined control structure instead temporary control structures are defined based on the established coordination mechanism. For modelling of coordination mechanisms which define structural and behaviouristic specifications of the distributed holonic
control system, an ontological UML sequence diagram is used. Along with the already standardised interactions among holons in sequence order, the ontological UML sequence diagram also presents ontological interfaces to which each particular interaction belongs. The purpose of using UML sequence diagrams is to gain a comprehensive insight and simplify the understanding of the distributed holonic control system functionality. The model of the control coordination mechanism in stable condition of the “green”-tyre manufacturing system is demonstrated by means of the ontological UML sequence diagram in Fig. 8. The presented distributed holonic control architecture includes an adaptive decision-making mechanism. The adaptive decisionmaking model in the control system of the “green”-tyre manufacturing system is presented in Fig. 9. The rule-based
M. Jovanovi´c et al. / Journal of Manufacturing Systems 40 (2016) 119–136
127
Table 2 Agent rules within the operational holon in a stable manufacturing environment. Order number
1
2 3 4
5 6
Entry
Exit
Message received
Sender
Requested agent action
Agent action
Message to be sent
Receiver
PROPOSE (Sequence of operation phases; Initial time of operation phases)
Control Holon of the Module
/
Calculating operational parameters
AGREE/REFUSE (depend on level of autonomy of operational holons) REQUEST (Calculating drive-unit parameters) /
Control Holon of the Module
REQUEST (Requesting simulation) REQUEST (Calculating simulated drive-unit parameters)
Virtual Visualisation Model Conveyor Belt Function Block
PROPOSE (Reference drive-unit verification) REPLY (Drive-unit is applicable; Simulated time of operation phase) REQUEST (execution ⇒ M FRW) REPLY (Drive-unit is not applicable)
Encoder/Motor Function Block Control Holon of the Module
REPLY (Drive-unit parameters) QUERY (Applicability of a drive-unit) REPLY (Simulated operational parameters; Simulated time of an operational phase) REPLY (Simulated drive-unit parameters) AGREE
or REFUSE
Conveyor Belt Function Block Control Holon of the Module Virtual Visualisation Model
Conveyor Belt Functional Block Encoder/Motor Function Block
/
/
/
/
/
/
/
Selecting reference drive-unit parameters /
/
/
Encoder/Motor Function Block
/
Conveyor Belt Function Block /
Encoder/Motor Function Block Control Holon of the Module
Table 3 Rules within the decision-making mechanism. Currently active coordination mechanism
Current level of operational holons autonomy
Recovery time coefficient
Detection (monitoring in real time)
New coordination mechanism
New level of operational holon autonomy
Basic coordination mechanism (hierarchical control structure)
Low
/
Optimisation coordination mechanism (hierarchical control structure)
Low
Optimisation coordination mechanism (hierarchical control structure)
Low
/
Optimisation coordination mechanism (heterarchical control structure)
High
Optimisation coordination mechanism (hierarchical or heterarchical control structure) Basic coordination mechanism (hierarchical control structure) Recovery coordination mechanism (heterarchical control structure) Recovery coordination mechanism (heterarchical control structure) Recovery coordination mechanism (heterarchical control structure)
Low/High
/
Optimisation request for system productivity increase Next iteration cycles would not improve the optimisation level based on the requested criterion Optimisation criterion is met
Basic coordination mechanism (hierarchical control structure)
Low
Low
/
Disturbance
High
High
r<1
Disturbance
High
r>1
Disturbance
High
r>1
No disturbances present
Recovery coordination mechanism (heterarchical control structure) Recovery coordination mechanism (heterarchical control structure) Recovery coordination mechanism (heterarchical structure) Basic coordination mechanism (hierarchical control structure)
decision mechanism is resided in the Planning Holon. Rules are currently encoded in JADE environment. Entries to the rule-based decision mechanism are data on real-time monitoring of the manufacturing system, data on the currently active cooperation mechanism within the control structure, the recovery time factor and level of autonomy of operational holons. The recovery time factor is defined as the relation between elapsed time from the moment when the failure has occurred in the system and time which is necessary for the elimination of the failure impact on productivity within the order. The recovery time factor and level
High
High
Low
of autonomy of operational holons dynamically vary in order to enable adaptation of the DHMS to manufacturing environment restrictions. The decision-making mechanism determines entrybased activation of a new control mechanism as presented in Table 3. Within the basic coordination mechanism, operational holons have a low level of autonomy, which enables them to follow the instructions from higher levels in the structure. When an optimisation request for an increase in productivity occurs in the control structure of the DHMS, the coordination mechanism of
128
M. Jovanovi´c et al. / Journal of Manufacturing Systems 40 (2016) 119–136
Fig. 8. Ontological UML sequence diagram of inter-holon cooperation within the coordination mechanism of control in stable condition.
the manufacturing control process changes from the basic to optimisation coordination mechanism and the optimisation process begins. When a disturbance in the form of a machine breakdown is detected in tyre-manufacturing system, the control system changes its structure from hierarchical to heterarchical, whereby a recovery coordination mechanism is established. The purpose of the recovery coordination mechanism is to eliminate the impact of
the fault on system productivity. When in the event of system break-down the process of finding an alternative resource is finished, normal operation of the DHMS is initiated after some time. Primary resources will be replaced by alternative resources. The operational holon which assumes the performance of the brokendown machine operation must change its sequence of operation phases.
M. Jovanovi´c et al. / Journal of Manufacturing Systems 40 (2016) 119–136
129
Fig. 9. Adaptive decision-making model in the control system of the “green”-tyre manufacturing system.
5. Implementation of the holonic control structure using IEC 61499 function blocks The approach to designing the IEC 61499 Control Layer can be based on the paradigm of object-oriented programming. According to the paradigm of object-oriented programming, the function block type would be defined within the control structure as class, while a particular function block is the instance of that class [44]. The second paradigm which can be used in the phase of designing the control software application is a component-based paradigm [24]. Both paradigms are restricted in the case of system disturbance occurrence and reuse since in both cases modification of hardware-specific interfaces is required. A solution to these problems would be an approach which would be independent of the hardware or would have a certain level of hardware abstraction in the phase of designing the interface to real-life machines. Implementation of function blocks used in our study within the Control Layer and Interface Layer (Fig. 5) will enable distributed performance of the “green”-tyre manufacturing process. With the purpose to implement the distributed holonic control approach, for the development of function blocks the FBDK
environment will be used. Software components on the Control Layer are developed as function blocks and present machines within the “green”-tyre manufacturing system. These are composite function blocks which include basic function blocks. Basic function blocks present models of particular mechanical assemblies within machines (conveyor belt) as well as actuators and sensors. Within our approach, basic function blocks can be developed as generic function blocks which can also be used in the phase of building other composite function blocks within the distributed holonic control structure. The behaviour of basic function blocks is monitored by means of an execution control chart and internal algorithms. Function blocks of particular mechanical assemblies perform the decision-making process within internal algorithms based on sensor data and data obtained from software agents on higher control levels. Technical characteristics of particular mechanical components within mechanical assemblies and machines as well as technical characteristics of actuators and sensors are implemented into basic function blocks as data – custom data type. An example of implementation of composite function blocks within manufacturing module Breaker Server 2 is shown in Fig. 10.
Fig. 10. Implementation of composite functional blocks within the manufacturing module Breaker Server 2.
130
M. Jovanovi´c et al. / Journal of Manufacturing Systems 40 (2016) 119–136
Fig. 11. Basic function blocks within the composite function block Server conveyor 2.
Composite function block SC2 FB, which controls machine Serving Conveyor 2 consists of three basic function blocks: SENSOR FB, ENCODER/MOTOR FB, CONVEYOR FB (Fig. 11). Behaviour of basic function blocks within the composite function block SC2 FB is presented in execution control charts (Fig. 12). Checking for material
presence on the exit of the Let-off device is performed by SENSOR FB (the photoelectric sensor). The objective of the CONVEYOR FB is to define the possibility of moving the conveyor belt based on SENSOR FB data in order to move the Breaker 2 belt from the initial position. The purpose of the ENC/MOTOR FB is to start and stop the
Fig. 12. Execution control charts of basic function blocks.
M. Jovanovi´c et al. / Journal of Manufacturing Systems 40 (2016) 119–136
motor. If there is the possibility of moving the conveyor belt, the motor will be started using the verified drive-unit parameters. The cutting position of the Breaker 2 belt is determined based on encoder data. When the Breaker 2 belt reaches the cutting position the motor stops. Generic basic function blocks SENSOR FB, CONVEYOR FB and ENC/MOTOR FB can be used within eight different composite function blocks for machine control within four manufacturing modules which belong to a second-stage of the “green”-tyre manufacturing system. This shows the possibility of encapsulation of internal algorithms within execution control charts and reuse of function blocks within the control structure. Particular composite blocks which monitor a certain operation phase are also responsible for control decisions in their own control domain. Internal algorithms of basic function blocks are shown in Table 4. The IEC 61499 standard proposes a hardware-independent approach to control application modelling. However, the real situation is similar to the approach developed within the IEC 61131-3 [21] standard. The access to real-life machines based on the IEC 61499 standard is enabled by SIFBs, but standard gives no definitions or notes on how to implement them. SIFBs are linked via event and data connections with control application, making the entire control application hardware-dependent. System disturbances causing use of alternative resources will also initiate additional activities in regard to the SIFB change which will enable connection to a new alternative resource. This will cause additional deadlock in the manufacturing process and consequently new costs. With the purpose to solve this problem, Wenger et al. [21] propose a solution in the form of the hardware abstraction approach according to which SIFB does not present a specific hardware access but logical service which the control application provides for the machine and vice versa. Within our research, a Logical Adapter Interface (Fig. 13) was developed on the Interface Layer which includes logical services required for execution of control functions. Design of the Logical Adapter Interface follows Design By Contract principle with the purpose of creating a contract which defines conditions (obligations and guarantees) which control application and the so-called Hardware-Specific Implementation Function Blocks must fulfil. Hardware-Specific Implementation Function Blocks include rules for data transformation from the hardware-specific format to the Logical Adapter Interface compliant format (logical services), hardware access algorithms and hardware-specific parameters. These function blocks must be provided by vendors of the specific distributed control devices. This completely eliminates the need to define parameters depending on the hardware within the control application. Implementation of the hardware abstraction approach also enables use of the same control application in both virtual and real-life manufacturing environment. Realisation of the hardware abstraction approach is shown by the example of implementation of composite function block Cutter – CUT FB (Fig. 14). Note that the composite function block Cutter shown in Fig. 14 is simplified for demonstration purpose.
6. Evaluation of the distributed holonic control approach within the virtual manufacturing environment With the use of the distributed holonic control approach, control functions of the “green”-tyre manufacturing system are enabled through holon cooperation and coordination without the use of a centralised control unit. This will enable adaptive control of the system in both stable and unstable environment. By means of adaptive control, the manufacturing process can be dynamically redirected from a defective machine to alternative resources, which further enables continuous tyre-manufacturing process. The described control approach will be verified by means of qualitative
131
and quantitative analyses for various simulation scenarios in the virtual manufacturing environment. Simulation tests in the virtual manufacturing environment will be used to analyse complex scenarios which are not feasible in the real-life manufacturing system. The purpose of verification in the virtual manufacturing environment is to test feasibility and suitability of the developed DHMS. In the simulation test, initial manufacturing process properties are defined based on the measurements performed on the real-life manufacturing system. Qualitative analysis will include analysis of the manufacturing system robustness, whereas quantitative analysis for various scenarios will enable the study of quantitative properties – the resource utilisation index and productivity. Productivity is an indicator of the production system performance and is defined as the number of produced units of a product within a given time unit. Resource utilisation is defined as a percentage of the resource processing time during a given time interval [45]. The resource utilisation index is defined as the relation between the current resource utilisation and the utilisation achieved by the resource within the existing control approach applied in a stable production environment. Robustness is a qualitative feature of the production system and is defined as the ability of the production system to maintain functional stability in the event of production system disturbances. Robustness evaluates the ability of the control system to dynamically adapt to disturbances which have a negative impact on the process stability. Evaluation of the system robustness is performed based on the comparison of the functional stability of a conventional and distributed holonic control approach within a virtual manufacturing system under different conditions which may occur in the manufacturing process. Qualitative analysis results are presented in Table 5. Qualitative analysis results show that the distributed holonic control approach within the virtual manufacturing environment meets all five conditions which occur in the manufacturing process and is more adaptive when disturbances occur than the existing conventional control approach. Within the distributed holonic control approach, functionality of the manufacturing system remains optimal when configuration of the manufacturing system is changed. As evident from the analysis results, with the distributed holonic control approach the entire manufacturing system remains stable even when there is a fault on the main control holon or machine. However, with the existing control approach a machine fault, a dysfunctional central control unit leads to interruption of the manufacturing process until component functionality is re-established. In the quantitative analysis, simulation of an unstable manufacturing environment will be performed in a virtual manufacturing environment, i.e. system disturbances will be caused. Such simulation tests are fundamental for evaluation of further development steps within the DHMS. Quantitative characteristics – the resource utilisation index and productivity – which are achieved in the distributed holonic control approach will be compared to those from the existing conventional control approach. Simulation is performed for the order which includes daily production of tyres and extends to 150 product units. In a stable manufacturing environment, production requirements which are met at system level are fully comparable to those from the existing centralised production system [31]. Simulation of the manufacturing process in an unstable manufacturing environment is performed in accordance with the following scenarios. 6.1. Scenario 1 (Fig. 15) In the manufacturing system, a brake-down of a photoelectric reflex sensor of the Feed-motion Conveyor 2 is simulated. In the case of break-down of a photoelectric reflex sensor, the sensor
132
M. Jovanovi´c et al. / Journal of Manufacturing Systems 40 (2016) 119–136
Table 4 Internal algorithms of basic function blocks. Function block
Operation
Name of algorithm
Form of internal algorithm
Data
Meaning
SENSOR FB
Checking for material presence on the exit of the let-off device
ALG PRM
If VALUE = 0 ⇒ NOT EMPTY = false else NOT EMPTY = true
VALUE
Value obtained by FB from the sensor
NOT EMPTY
Boolean variable which defines material presence
M RQS
Requested motor speed
M RQA M RQD CV CA CD LO NEMPTY
Requested motor acceleration Requested motor deceleration Conveyor velocity Conveyor acceleration Conveyor deceleration Boolean variable which defines material presence on the exit of the let-off device
B INITPOS
Boolean variable which defines Breaker 2 presence in the initial position Boolean variable which defines the possibility of moving the conveyor in order to move the Breaker 2 from the initial position to the cutting position
CONVEYOR FB
Calculation of drive-unit parameters
Defining the possibility of moving the conveyor in order to move the Breaker 2 from initial position.
ALG CDUP
ALG MOVE
(M RQS, M RQA, M RQD) = f(C V, C A, C D)
If LO NEMPTY = true and B INIT POS = true ⇒ C MOVE = true else C MOVE = false
C MOVE
ENCODER/MOTOR FB
Verification of drive-unit parameters (start the motor)
Checking for material presence in the cutting position (stop the motor)
ALG DUPV
ALG CCP
If (C MOVE = true and (M RQS, M RQA, M RQD) < (M RTS, M RTA, M RTD)) ⇒ M FRW = true and (M OS = M RQS, M OA = M RQA, M OD = M RQD) else M FRW = false
E CNT = EE FRQ · 60; PPR B POS = E CNT · TIMER · BP DMT · ; if (B POS B CTPOS) ⇒ M STOP = true and TIMER = 0 (timer reset) else M STOP = false
M RTS
Motor rated speed
M RTA M RTD M FRW
Motor rated acceleration Motor rated deceleration Boolean variable which defines motor ability to move forward Motor output speed Motor output acceleration Motor output deceleration Conveyor belt pulley diameter
M OS M OA M OD BP DMT
B CTPOS E CNT (internal variable) E FRQ E PPR B POS (internal variable) TIMER M STOP
disturbance identifier (Fig. 5) will use signals from a simulated sensor. Simulated signals of the sensor are kept in a database and include data from previously performed manufacturing cycles. Operation stage Breaker 2 winding is not interrupted due to the break-down and will continue within the primary manufacturing module (Breaker Server 2), unless an operator based on visual inspection determines the fault and manually interrupts the operation stage.
Breaker cutting position Motor rotations per minute Incremental encoder output frequency – pulses per second Pulses per rotation of the incremental encoder Current Breaker 2 position Timer measures time from the moment the motor has started Boolean variable which defines motor ability to stop
6.2. Scenario 2 (Fig. 16) In the manufacturing system, a gearbox failure (gearbox vibrations) is simulated in machine Serving Conveyor 2. Machines within module Breaker Server 3 which enable performance of the operation stage Breaker 3 winding are symmetrically positioned in regard to the machines within module Breaker Server 2. This structural feature helps maintain a certain level of flexibility of the DHMS.
M. Jovanovi´c et al. / Journal of Manufacturing Systems 40 (2016) 119–136
133
Fig. 13. Implementation of the hardware abstraction approach by means of the Logical Adapter Interface.
Table 5 Qualitative analysis of the robustness of the “green”-tyre manufacturing system within a virtual manufacturing environment. Manufacturing system state
“Green”-tyre manufacturing process is performed without disturbances A new tyre type is introduced into the manufacturing process Break-down of main control component in the control system structure Machine break-down Change of configuration of the “green”-tyre manufacturing system (one machine type is replaced by another one with similar function) Control approach success (%)
When a fault occurs in module Breaker Server 2 performance of the operation stage is undertaken by module Breaker Server 3 and vice versa. Consequently, the operation stage Breaker 2 winding on the primary manufacturing module (Breaker Server 2) will continue on an alternative manufacturing module (Breaker Server 3). In case of transferring operation stage from the manufacturing module in which a machine break-down has occurred to the alternative module, the setup time of the operation stage Breaker 2 winding is very long since the cassettes within the let-off device are changed
Functional stability of the manufacturing system Conventional (existing) control approach
Distributed holonic control approach
+ − − − −
+ + + + +
20%
100%
manually. In order to increase the flexibility of the DHMS, the existing let-off was reconstructed to enable unwinding of both breakers within module Breaker Server 2 as well as within module Breaker Server 3. Within the conventional control approach, transition from the primary to alternative resource is not possible without any significant changes to the control programme in the central control unit. Time needed for the replacement of damaged gearbox exceeds the flow time of the order and as a result the operation stage will be performed on an alternative machine until the end of the order.
134
M. Jovanovi´c et al. / Journal of Manufacturing Systems 40 (2016) 119–136
Fig. 14. Implementation of composite function block Cutter based on the hardware abstraction approach.
Fig. 15. Time flow of the manufacturing process in an unstable manufacturing environment based on Scenario 1. Note: p – a number of “green” tyres to be manufactured within the order. p1 – a number of “green” tyres manufactured until the occurrence of failure. te – processing time of a “green”-tyre unit. Tz – time necessary for replacement of damaged machine components. Tn – flow time of the order. ph – a number of “green” tyres manufactured using distributed holonic control approach. pc – a number of “green” tyres manufactured using conventional control approach. palt – a number of “green” tyres manufactured with alternative module. – time necessary for elimination of failure impact on productivity.
Fig. 16. Time flow of the manufacturing process in an unstable manufacturing environment based on Scenario 2. Note: p – a number of “green” tyres to be manufactured within the order. p1 – a number of “green” tyres manufactured until the occurrence of failure. te – processing time of a “green”-tyre unit. Tz – time necessary for replacement of damaged machine components. Tn – flow time of the order. pc – a number of “green” tyres manufactured using conventional control approach. palt – a number of “green” tyres manufactured with alternative module. te1 – optimised processing time of a “green”-tyre unit manufactured with alternative module using existing let-off device. te2 – optimised processing time of a “green”-tyre unit manufactured with alternative module using reconstructed let-off device. Tp1 – setup time of the operation stage on alternative module using existing let-off device. Tp2 – setup time of the operation stage on alternative module using reconstructed let-off device. – time necessary for elimination of failure impact on productivity.
M. Jovanovi´c et al. / Journal of Manufacturing Systems 40 (2016) 119–136
135
Fig. 17. Time flow of the manufacturing process in an unstable manufacturing environment based on Scenario 3. Note: p – a number of “green” tyres to be manufactured within the order. p1 – a number of “green” tyres manufactured until the occurrence of failure. te – processing time of a “green”-tyre unit. Tz – time necessary for replacement of damaged machine components. Tn – flow time of the order. pc – a number of “green” tyres manufactured using conventional control approach. ph1 – a number of “green” tyres manufactured with primary module using existing let-off device. ph2 – a number of “green” tyres manufactured with primary module using reconstructed let-off device. palt – a number of “green” tyres manufactured with alternative module. te1 – optimised processing time of a “green”-tyre unit manufactured with primary or alternative module using existing let-off device. te2 – optimised processing time of a “green”-tyre unit manufactured with primary or alternative module using reconstructed let-off device. Tp1 – setup time of the operation stage on alternative module using existing let-off device. Tp2 – setup time of the operation stage on alternative module using reconstructed let-off device. – time necessary for elimination of failure impact on productivity.
6.3. Scenario 3 (Fig. 17) In the manufacturing system, a mechanical component failure is simulated in machine Feed-motion conveyor 2. Operation stage Breaker 2 winding, which is interrupted in the primary manufacturing module (Breaker Server 2), will be continued on an alternative
manufacturing module (Breaker Server 3) as presented in Scenario 2. Time needed for the replacement of damaged mechanical component does not exceed the flow time of the order. Consequently, after eliminating the failure the operation stage will be returned to the primary machine. 6.4. Results and discussion Within the distributed holonic control approach, quantitative characteristics are studied in two examples: the existing structure of the let-off and the mechanically optimised structure of the letoff. Quantitative analysis results are presented in Fig. 18. As evident from the quantitative analysis results, the distributed holonic control approach offers a better stability and possibility of eliminating the failure impact on system productivity in real time. The optimisation process in the conventional control approach will require interruption of the manufacturing process and reprogramming of the central control unit. When a failure occurs, the distributed holonic control approach enables a three-fold increase in productivity compared to the conventional control approach according to the presented simulation scenarios in a virtual manufacturing environment. In case of critical failures, utilisation of alternative manufacturing modules within the distributed holonic control approach is improved by up to five times. If more than one failure occurs, implementation of the distributed holonic control approach becomes critically significant. 7. Conclusions and future research
Fig. 18. Quantitative analysis results.
The presented distributed holonic control approach for the “green”-tyre manufacturing system is developed based on the multi-agent concept which at the lowest architecture level is connected to a virtual or real-life manufacturing environment by means of function blocks developed in accordance with the IEC 61499 standard. Critical requirements for a manufacturing system are reliability in a stable manufacturing environment and adaptation to changes and failures in an unstable manufacturing environment. Application of the same control structure in a virtual and real-life manufacturing environment enables simple verification of control algorithms in simulation tests for various scenarios even before they are applied in a real-life environment. This ensures predictive behaviour of the manufacturing system. Simulation test results point to the appropriateness of using the distributed holonic control approach in an unstable manufacturing environment and
136
M. Jovanovi´c et al. / Journal of Manufacturing Systems 40 (2016) 119–136
prove the adaptability of the approach in a changeable manufacturing process. The analyses show that such optimisation results cannot be achieved with modern manufacturing systems based on programmable logic controllers. In order to validate similar scenarios in the real-life manufacturing environment, it is necessary that the mechanical part of the manufacturing system is upgraded in near future to improve flexibility. Lack of Hardware-Specific Implementation Function Blocks developed by distributed control device manufacturers constitutes a restriction in full implementation into a real-life environment. Development of the Logical Adapter Interface within the Machine Layer is a significant step towards standardisation of the distributed DHMS in the tyre-manufacture industry. This will also enable developers of distributed control components to develop appropriate hardware-specific implementation function blocks intended for the tyre-manufacture industry. The aim of our future work is to conduct an extended case study with the purpose to verify application of the presented control architecture in real time by implementing the holonic control application into distributed control devices. Our final aim is to perform verification of the distributed holonic control approach within a real-life “green”-tyre manufacturing system, in which the existing PLC-based control approach will be replaced with the presented distributed holonic control approach. Acknowledgements The authors wish to express the appreciation to the managers and staff of the company SMM PRODUCTION SYSTEMS Ltd. for their technical support. References [1] Black G, Vyatkin V. On Practical Implementation of Holonic Control Principles in Baggage Handling Systems Using IEC 61499. In: Maˇrík V, Vyatkin V, Colombo A, editors. Holonic, multi-agent systems for manufacturing. Springer Berlin Heidelberg; 2007. p. 314–25. [2] Andren F, Strasser T, Zoitl A, Hegny I. A reconfigurable communication gateway for distributed embedded control systems. In: IECON 2012 – 38th annual conference on IEEE industrial electronics society. 2012. p. 3720–6. [3] Vrba P. MAST: manufacturing agent simulation tool. In: Proceedings of the IEEE conference on emerging technologies and factory automation, ETFA’03, vol. 281. 2003. p. 282–7. [4] Marik V, Vrba P, Hall KH, Maturana FP. Rockwell automation agents for manufacturing. In: Proceedings of the fourth international joint conference on autonomous agents and multiagent systems. The Netherlands: ACM; 2005. p. 107–13. [5] Monostori L. AI and machine learning techniques for managing complexity, changes and uncertainties in manufacturing. Eng Appl Artif Intell 2003;16:277–91. [6] Cardin O, Castagna P. Using online simulation in holonic manufacturing systems. Eng Appl Artif Intell 2009;22:1025–33. [7] Bussmann S, Sieverding J. Holonic control of an engine assembly plant: an industrial evaluation. In: 2001 IEEE international conference on systems, man, and cybernetics, vol. 161. 2001. p. 169–74. [8] Jarvis DH, Jarvis JH. Holonic Diagnosis for an Automotive Assembly Line. In: Deen SM, editor. Agent-based manufacturing. Springer Berlin Heidelberg; 2003. p. 193–206. [9] Gayed N, Jarvis DH, Jarvis JH. A strategy for the migration of existing manufacturing systems to holonic systems. In: IEEE international conference on systems, man, and cybernetics, vol. 311. 1998. p. 319–24. [10] Jin-Lung C, McFarlane DC. A holonic component-based approach to reconfigurable manufacturing control architecture. In: Proceedings of the 11th international workshop on database and expert systems applications. 2000. p. 219–23.
[11] http://www.holobloc.com/fbdk2/index.htm. [12] http://www.ims.org/2011/11/hms-%E2%80%93-phase-i-and-ii-holonicmanufacturing-systems/. [13] http://www.isagraf.com/index.htm. [14] http://www.nxtcontrol.com/en/. [15] http://www.fordiac.org/. [16] http://www.elsist.it/WebSite/Html/English/Products/Hardware/Obsoletes/ Netsyst/EnNetmasterII.php. [17] http://www.taitcontrols.co.nz/. [18] Olsen S, Wang J, Ramirez-Serrano A, Brennan RW. Contingencies-based reconfiguration of distributed factory automation. Robot Comput Integr Manuf 2005;21:379–90. [19] Hussain T, Frey G. Developing IEC 61499 compliant distributed systems with network enabled controllers. In: IEEE conference on robotics, automation and mechatronics, vol. 501. 2004. p. 507–12. [20] http://www.omg.org/mda/. [21] Wenger M, Melik-Merkumians M, Hegny I, Hametner R, Zoitl A. Utilizing IEC 61499 in an MDA control application development approach. In: IEEE conference on automation science and engineering (CASE). 2011. p. 495–500. [22] Thramboulidis K. Model integrated mechatronics: an architecture for the model driven development of manufacturing systems. In: Proceedings of the IEEE international conference on mechatronics, ICM’04. 2004. p. 497–502. ˜ JM, Navarro E, Fernández-Caballero A. Model-driven engineering [23] Gascuena techniques for the development of multi-agent systems. Eng Appl Artif Intell 2012;25:159–73. [24] Shaw GD. Reliable model-driven engineering using IEC 61499. Auckland: Department of Electrical and Computer Engineering, The University of Auckland; 2013. [25] Fletcher M. Building holonic control systems with function blocks. In: Proceedings of the 5th international symposium on autonomous decentralized systems. 2001. p. 247–50. [26] Christensen J. HMS/FB Architecture and its Implementation. In: Deen SM, editor. Agent-based manufacturing. Springer Berlin Heidelberg; 2003. p. 53–87. [27] Wang L, Brennan RW, Balasubramanian S, Norrie DH. Realizing holonic control with function blocks. Integr Comput Aided Eng 2001;8:81–93. [28] Black G, Vyatkin V. Intelligent component-based automation of baggage handling systems with IEC 61499. IEEE Trans Autom Sci Eng 2010;7:337–51. [29] Wang L, Adamson G, Holm M, Moore P. A review of function blocks for process planning and control of manufacturing equipment. J Manuf Syst 2012;31:269–79. [30] Peng T, Xu X, Wang L. A novel energy demand modelling approach for CNC machining based on function blocks. J Manuf Syst 2014;33:196–208. [31] Jovanovic´ M, Zupan S, Starbek M, Prebil I. Virtual approach to holonic control of the tyre-manufacturing system. J Manuf Syst 2014;33:116–28. [32] http://www.holobloc.com/doc/despats/mvc/index.htm. [33] Mahmoud QH, Maamar Z. Applying the MVC design pattern to multi-agent systems. In: Canadian conference on electrical and computer engineering, CCECE’06. 2006. p. 2420–3. [34] vanden Boom CBJJ. Model predictive control. Delft: Delft University of Technology; 2005. [35] Cataldo A, Perizzato A, Scattolini R. Production scheduling of parallel machines with model predictive control. Control Eng Pract 2015;42:28–40. [36] Wang W, Rivera DE, Kempf KG. Model predictive control strategies for supply chain management in semiconductor manufacturing. Int J Prod Econ 2007;107:56–77. [37] jade.tilab.com. [38] http://www.fipa.org/specs/fipa00086/XC00086C.html. [39] Gruber TR. A translation approach to portable ontology specifications. Knowl Acquis 1993;5:199–220. [40] Leitão P, Restivo F. ADACOR: a holonic architecture for agile and adaptive manufacturing control. Comput Ind 2006;57:121–30. [41] Alsafi Y, Vyatkin V. Ontology-based reconfiguration agent for intelligent mechatronic systems in flexible manufacturing. Robot Comput Integr Manuf 2010;26:381–91. [42] Merdan M, Koppensteiner G, Zoitl A, Favre-Bulle B. Distributed agents architecture applied in assembly domain; 2007. [43] Obitko M, Marik V. Ontologies for multi-agent systems in manufacturing domain. In: Proceedings of the 13th international workshop on database and expert systems applications. 2002. p. 597–602. [44] Wang L, Song Y, Gao Q. Designing function blocks for distributed process planning and adaptive control. Eng Appl Artif Intell 2009;22:1127–38. [45] Bal M, Hashemipour M. Virtual factory approach for implementation of holonic control in industrial applications: a case study in die-casting industry. Robot Comput Integr Manuf 2009;25:570–81.