INCOM'2006: 12th IFAC/IFIP/IFORS/IEEE/IMS Symposium Information Control Problems in Manufacturing May 17-19 2006, Saint-Etienne, France
MODELS OF KNOWLEDGE ON MANUFACTURING SYSTEMS FOR CONTROL LAW SYNTHESIS Eric DESCHAMPS, Sébastien HENRY, Eric ZAMAI Laboratoire d'Automatique de Grenoble (LAG) Domaine Universitaire, BP 46, 38402 Saint Martin d'Hères Cedex, France Tel: (33)4 76 82 64 05, E-mail: deschamps, henrys, zamai (@lag.ensieg.inpg.fr)
Abstract: In an industrial context, the design of discrete control laws to drive a manufacturing system is usually assumed off line by several experts. This is mainly due to the lack of a generic method to accumulate the controlled system abilities from which a control law can be synthesized. This paper proposes a solution by first providing a methodological approach to model a controlled system. Second, a generic algorithm to use the model from a synthesis point of view is presented. Copyright © 2006 IFAC Keywords: Discrete-Event Systems, Logic Controllers, Control Law Synthesis.
1. INTRODUCTION
In an industrial context, the AMS is subject to uncertainty (failures) on its operating part but also on the customer requests (quantities, product specification). With regard to the increasing requirements of consumers, industry’s only choice is to decrease the control law design time and increase the reactivity of the AMS in order to guarantee the delivery lead time. In contrast, today, control laws using the IEC61131-3 standard are manually synthesized by a team of automation engineers. This supposes that they have in mind a true picture of the controlled system abilities. From the production objectives, they determine the corresponding control law (see Fig. 2). Consequently, the control law design time is very expensive and indeterminate; the optimality of the solution is not ensured; a verification/validation step is required; and, if the automation engineer leaves the company, all the knowledge about the controlled system is lost. Thus it is essential to provide a method to accumulate the
This paper deals with the control of Automated Manufacturing Systems (AMS). The main function of the AMS is to transform a product flow to achieve production objectives: provide products corresponding to customers’ specifications (surface roughness, color, geometry, etc.) in a given time while minimizing productivity and quality. As shown in Figure 1, an AMS is constituted by two parts, a controlled system that is driven by a control system. The controlled system breaks up into an operative part including a set of resources (cylinders, conveyors, etc.) acting on the product to give the added value. It is also constituted by a sensor/actuator interface to ensure the broadcasting between the operative part and the second part of the AMS, the control system. The control system contains a software part and a hardware part. Depending on the control system inputs, a control law, generally today specified by the software part, defines the control system outputs to impose a behavior on the controlled system. To apprehend the complexity of a manufacturing system, the architecture of the control system is decomposed into five levels called the CIM architecture (CIM, 1989) and integrates supervision, monitoring, and control functions (Combacau et al., 2000). Each level has different knowledge granularity and abilities to assume its particular function.
Fig. 1. Schema of an AMS
331
knowledge of the controlled system abilities and a technique to synthesize a control law respecting criteria such as productivity and quality to perform design step and failure recovery.
lead time will be known more precisely. This will improve the commercial performance for calculating the call for tenders. But for that, the lowest level must be autonomous and able to synthesize the corresponding control law. Then, when the company receives the purchase order, the corresponding control law has been previously synthesized, and the reactivity of the AMS is improved.
This paper is organized as follows. In section 1, the improvement of a company’s performance is presented as the problematic. Section 2 gives a short review of the main works participating in this improvement via both the capitalization of the required knowledge and the automation of the control law synthesis. In section 3, the approach is situated in the context of the CIM architecture, and the requirements in terms of knowledge to be modeled are submitted. Section 4 formalizes the proposed approach of control law synthesis. The paper then concludes and suggests several directions for further research.
For a company, an important performance indicator is the performance of its AMS in the operational phase, its speed (production time cycle) but also its availability. The production cycle depends on the techniques used in the design of the controlled systems but also on the performance of the applied control laws. The control law performance depends only on the expertise level of the team of automation engineers. A formal method for synthesizing a control law makes it possible to guarantee or quantify this performance. Next, to increase the AMS performance, its availability must be improved. Indeed, in the industrial context, the controlled system is subject to many failures. In this case, the control law is often blocked because it does not include a failure processing but only the normal and critical operation. Indeed, there are too many possible failures, and it is very long and difficult to envisage all of them. A failure often requires a maintenance intervention that must have knowledge of the controlled system and the control system. It thus decreases the availability of the AMS. A solution consists in trying to synthesize a new control law adapted to the remaining abilities of the controlled system. This also required to provide to the synthesis processing a knowledge model of the controlled system.
2. TOWARD IMPROVED COMPANY PERFORMANCE With regard to the competitive market, all companies have a global objective: to increase their performance. But what are company performances, and in this field of research, how can performance be improved? To answer these questions, this section considers three points for which the automation of control law synthesis improves company performance. In recent years, in several fields of activity, like microelectronics for example, the life cycle of the product and the AMS has considerably decreased. For a company, the performance in the design (time and cost) of the AMS is essential. A time-consuming step in this process is the design of the set of control laws for Programmable Logic Controllers (PLC) by a team of automation engineers who do not have a formal synthesis method (Zaytoon, 2002). This step ends by a long verification and validation of the control law which requires completion of the part corresponding to the controlled systems. Then, the automation of the control law synthesis makes it possible to decrease the time and the cost of the design of control laws. Moreover, the capitalization on the knowledge on the controlled system abilities in a model avoids the loss of this knowledge when the automation engineer leaves the company.
3. STATE OF THE ART In this paper, we focus on the capitalization of controlled system abilities and on its exploitation for the control law synthesis (see Fig.2). To propose a solution to this problem, the main control law synthesis approaches are presented. Since this paper is not a review, and for reason of concision, only analytical conclusions on these approaches are given. They can be classified into two kinds of approaches according to the CIM level to which they can be applied.
An increasingly competitive market means that companies must submit bids more and more quickly. Moreover, their answer must be more and more precise on the delivery lead time. For a specific product, all the operations are known after the design of the corresponding control law (particularly for handling operations). However, the call for tenders is diffused only to the two highest levels of the CIM architecture, which gives only a global feasibility of the product. If the call for tenders is diffused to the lowest level, the production cost and the delivery
The first two approaches (Gouyon et al., 2004) and (Toguyeni et al., 2003) take place in the scheduling context. Indeed, their models represent accessibility
Fig. 2. Principle of control law synthesis
332
and preceding relationships between operations that have effects on the product. However, constraints between operations and the controlled system state are not taken into account. Consequently, only highlevel operations from the product point of view are modeled and not offered operations by an operative element like a cylinder for instance. These approaches allow the generation of operations sequences, but they are not directly adapted to allow the control of the operating part. The capitalization of knowledge on the possible transformations of the product is essential at this level to guarantee the reactivity of the AMS. Indeed, in the case of failure and the loss of abilities of the controlled system (machine breakdown), on line, the control system can generate a new operation sequence which is dispatched to modules of the lower level. The approaches presented in (Holloway et al., 2000), (Charbonnier et al., 1999) take place at the lowest level of the CIM architecture. The models are based on the set of the controlled resources with their own control laws. Then, to coordinate all these resources, the proposed synthesis method allows the generation of a control code which limits the system behavior to the most permissive. It must be noted that the control code is synthesized from the control specifications (corresponding to physical constraints) but not from product specifications. At the lowest level, directly capitalizing adapted control laws is powerful and sufficient. In fact, they control only one simple functional chain (see Fig. 3), and in this simple context, all operating modes can be envisaged offline. But to coordinate all these functional chains, the approaches presented do not capitalize the associated knowledge but capitalize directly the control code (representing all the possible control laws) that ensues from it. This involves a loss of knowledge on the characteristics of the process.
Fig. 3. Proposed architecture modules (see Fig. 3). This level of control must model several kinds of knowledge, and we will analyze the required knowledge modeling from two points of view. First, because of its goal (coordination of functional chains) not only must the relationships between the controlled functional chains be modeled but also their direct physical environment. We use the simple example of two orthogonal cylinders which must not be extended simultaneously to avoid a collision. Whether these two cylinders are controlled by the same coordination module or not, to extend one cylinder the second one must be retracted. This constraint on the other controlled functional chain state or on the environment state must be modeled. For that, the state variables characterizing the operating part and the direct environment must also be modeled. Next, to act on these state variables, the offered operation by functional chains (command quantities) must be modeled, as must the relationships with the evolutions of the operating part states variable.
The approaches presented above place in a prominent position the requirement of a knowledge base of the controlled systems at their applied level and the necessity to automate the control law design for better safety, time cycle optimization, and reactivity of the AMS. Almost all approaches take place either in a high level or in the lowest level of the CIM architecture. The missing link is between these two levels, and corresponds to the coordination level. To synthesize a control law adapted to this level, the controlled system must be modeled from this double point of view.
Second, the goal of the level of coordination is certainly the coordination of the functional chain but with the aim of acting on the product flow. Indeed the local control acts on the actuator without knowing the final goal. The coordination level sends orders to the local control of the functional chain to act on the product flow. So the states variable characterizing the product must also be modeled as must the relationship between the operation and the evolution of these states variable. Indeed, the carrying out of an operation leads to an evolution of the operating part which can lead to an evolution of the state of the product. In the same way as an operation can be constrained by the state of the
4. REQUIREMENT Considering classical CIM architecture, our approach takes place at the coordination level of the structure in the monitoring, supervision and control context (Zamai et al., 1998). The specificity of this level is to link orders sent by the scheduling level and the local control level split into several functional chain
333
operating part and the environment, it can also be constrained by the state of the product flow. To conclude, all the knowledge presented above must be modeled at the coordination level. However, it should be noted that the model must not contain all the possible control laws, but only functional chain abilities and the link with the possible effects on the product flow. Indeed, start dates, sequences, cycles, etc. are not present in the model. The section below focuses on the coordination level of the control system. It presents the modeling method essential for integration in industry and an algorithm to synthesize a control law adapted to the level being considered. 5. THE PROPOSED APPROACH
field (Ghallab et al., 2004), proposes to consider first only the cylinder 1 (C1) without the possible product evolutions. The start of the operation, resulting from a request of the control system, modifies the C1 state from the retracted position to the intermediate position, and the end of the operation, indicated by the reception of the lowest level report, modifies the C1 state to the extended position. But to authorize the control system to request this operation and to carry out this evolution, constraints must be satisfied. Indeed, to extend C1, cylinder 2 must be retracted before (pre-constraint) and during (constraint) the operation to avoid a collision. And for product flow constraints, there should not be a product between A and B and between A and D for the same reason. All these constraints must be satisfied before and during the operation. This first part defines the basic behavior. To carry out an operation, at least this basic behavior must be carried out. For that, the condition on the initial state of the resource must be true.
5.1. An application example: This section presents an application example based on the loading system (see Fig. 4) of the research platform Saphir at the Laboratoire d’Automatique de Grenoble, France. This platform is designed for the assembly of camshafts. A four-place rotating storage area is used to receive up to six different kinds of products. These products are identified by a weight identification system. Once a product has been identified, a central conveyor drives it to a sorting device. A worker is in charge of filling the rotating storage and emptying the assembly station. The next section presents the method to model the controlled system, based on the principle described in section 3.
Then, the operation modeling considers the possible evolutions of the product flow. Indeed, if there is a product in front of the cylinder (in A), the operation has an effect on the product. Similarly to the resource evolution, to describe the product evolution, the initial, intermediate and final states of the product are defined. Next, constraints must also be defined. For resource constraints, the rotating storage must be stopped and positioned. For the product flow constraints, the product that is transferred should not strike another product.
5.2. Specification method of the controlled system
The paragraph above defined the first extra behavior (see Fig. 5). But the initial state of the product could be a product between A and W, after a failure for example. So, a second extra behavior must be defined for this operation. To carry out an extra behavior, the condition on the initial product state of this extra behavior must be true, and thus the associate constraints must be verified. The initial
To synthesize the control law, the model must contain all the information presented in section 3. The designer must be provided with a method to help him in the capitalization step. In the first step, the designer must determine all the abilities operations offered by the functional chains that compose the controlled systems. These operations correspond to the possible action of each elementary resource (extract/retract a cylinder, rotate a motor, etc.). To explain the modeling steps, we take the example presented above, especially considering the “extend cylinder 1” (EC1) operation. The methodology, based on an extension of the operation concept used in the Automated Planning
Fig. 4. Loading system of SAPHIR
Fig. 5. Model of the EC1 operation
334
product state is called the condition of the extra behavior. Finally, to optimize the control law, the quantifiable criteria are required, e.g. the time cycle, the cost, etc. To assess these criteria, the operation modeling must give the operation features such as the operation cost and duration. For reasons of concision, only the operation duration is taken into account in this paper. The complete description of the operation “extend C1” is presented in Figure 5.
products in C and they do not inform the control system about their actions. Then, the presence of a product in C is unknown. The product presence (or absence) in the tray is only known when the product arrives in A. Next, the initial state can be defined. For the state variables of the product flow not belonging to the product specifications, denoted SVP∉S, the values are: no product in A, W, F and between all the points; unknown in B, C and D; nonidentified for a product in B, C and D. For the state variables of the resources, denoted SVR, the values are: C1 in the retracted position, C2 in the retracted position, the tray in the indexed position with a null speed. From this initial state, the objective is to put, as soon as possible, an identified product on the central conveyor (in F). The final state of this objective defines only the values of some SVP∉S: product in F, identified for the product in F. The optimized criterion is the time cycle.
For the product flow state, we can distinguish two kinds of product-flow state variables. Some state variables result from the product specifications like geometric forms. Other state variables of the product flow, like their position, result from the controlled system. According to the state variables modified by an operation, three kinds of operations must be distinguished (see Fig. 6).
5.5. Knowledge used for control law synthesis The control law synthesis consists in building the acceptable control laws from the initial PF&R state and the objectives. Next we have to seek the optimal control law according to the criteria, but the set of acceptable control laws can be too large to be built according to the level of controlled system flexibility. Thus, we propose an automated control law synthesis (see Fig. 7) step by step with local optimizations.
Fig. 6. Three kinds of operations 5.3. Information on the environment
The first synthesis stage (generate a precedence graph) is split into two algorithm steps: generate a graph for one product and generate a graph for several products (cyclic graph). To reduce the complexity of the first algorithm step, the first sequence with only operations 1 is defined to modify only SVP∈S from the initial state to the final state. As operations 2 cannot modify SVP∈S (see Fig. 6), they can be added at the first sequence to respect the conditions and the (pre-)constraints on SVP∉S to run operations 1 without modifying SVP∈S. And finally, as operations 3 cannot modify SVP∈S and SVP∉S (see Fig. 6), they can be added at the second sequence to respect the conditions and the (pre)constraints on SVR to run operations 1 and 2 without modifying SVP∈S and SVP∉S. For reasons of concision, only the building sequences of operations 2 are presented.
When a product is located in F on the central conveyor, no operation offered by the loading system can evacuate this product. Nevertheless, the “No product in F” state is a pre-constraint and a constraint of the “extend C2” operation with an effect on the product. So an operation sequence to reach this state does not exist. To avoid searching for such a sequence, information on this specific state must be represented in the controlled system model. This state resulting from an environment evolution due to other control systems or human operators. So the level of the control system under consideration must have access to this information. 5.4. Production objectives After having described the controlled system model, the production objectives which are the second synthesis algorithm input (see Fig. 2) are defined. To specify the production objective, the designer must see the controlled systems with the coordination point of view as for the above example. Before defining the initial state and the objectives, two details must be clarified. Firstly, the loading system does not have any operation 1, which transforms the products. So in the example presented, there is not any State Variable of the Product flow belonging to the product Specifications, called in this paper SVP∈S. Secondly, operators can add or remove the
Before building the sequences of operations 2, we must know where to integrate them in the first sequence. To run the i operation, the conditions and the (pre-)constraints on SVP∉S must be respected. If
Fig. 7. Algorithm steps of the first synthesis stage
335
the SVP∉S values after the i-1 operation respect them, then no operation 2 must be added. Otherwise, a sequence of operations 2 is added between the i-1 operation and the i operation. To find the sequence of operations 2, an automata is built, and the best way from initial state to marked state is sought according to the optimized criterion. An automata state is characterized by the values of all SVP∉S. The event associated with the arcs is an operation 2. The SVP∉S value after i-1 operation defines the initial automata state. From this state, all the operations 2 able to run are sought. Then, the state after each operation 2 is calculated from the operation model. The same technique is applied at each new state, except if the new state is a marked state which respects the conditions and the (pre-)constraints on SVP∉S of the i operation. For the loading system, there are not any operations 1. To find the only operation 2 sequence, the automaton built has fifteen states, twenty-five arcs and two marked states. From this automaton, the TTC, EC1, IP and EC2 sequence is found (see Fig. 8). The insertion of the sequences of operations 3 in the previous sequence is based on the same method as the addition of the sequences of operations 2 in the first sequence. To minimize the time cycle, we look for the earliest time when each operation 3 can be run. A precedence constraint is added before operation 3, as in the RC1 operation 3 in Figure 8. At the end of the first algorithm step, the precedence graph for one product is built, like the grey area in Figure 8.
Fig. 8. The precedence graphs the model of the controlled system. From such a model, not only is a Petri net translation proposed to allow verification and validation of the resulting structure, but also the automation of the control law synthesis process. This process, based on three successive local optimization steps, allows the generation of control laws specified in one of the IEC61131-3 languages. Future works will focus first on the way to develop a graphical interface to help designer to capitalize the required knowledge using a functional chain point of view. Secondly, this approach will be completed by adding in the graphical interface a library of operations associated with each considered functional chain. In this way, an automated processing to deduce (pre-)constraints depending on the assembly of several functional chains will be proposed. REFERENCES
To build the graph for several products, the second algorithm step considers the possibility of applying again the previously defined precedence graph for a second product. To run at the earliest, the operations for the second product, operations 3 and the precedence constraints are added between the operations of the first and the second graphs. To end the second algorithm step, the two graphs are merged. For example, the TTC operations for the first and the second products are merged and so on (see Fig.8). For space reasons, the second synthesis stage cannot be submitted in this paper.
CIM Reference Model Committee. A reference model for computer integrated manufacturing from the viewpoint of industrial automation. IJCIM 1989; Vol. 2, (2), p. 114-127. Charbonnier F, Alla H, and David R. The supervised control of discrete-event dynamic systems. IEEE Trans. CST; 1999, Vol. 7, (2), p. 175-187. Combacau M, Berruet P, Zamaï E, Charbonnaud P, Khatab A. Supervision and monitoring of production systems. IFAC MCPL 2000. Ghallab M, Nau D, Traverso P. Automated planning, Theory and Practice. Elsevier; 2004. Gouyon D, Simão JM, Alkassem K, Morel G. Product-driven automation issues for B2Mcontrol systems integration, IFAC INCOM 2004. Holloway LE, Guan X, et al. Automated Synthesis and Composition of Taskbloks for Control of Manufacturing Systems. IEEE Trans. SMC Part B, 2000, Vol. 30, (5), p. 696-712. Toguyeni AKA, Berruet P, and Craye E. Models and Algorithms for failure diagnosis and recovery in FMSs. IJFMS 2003; Vol. 15, p. 57-85. Zamaï E, Chaillet-Subias A, Combacau M. An architecture for control and monitoring of discrete event systems. Computers in Industry 1998; Vol. 36, p. 95–100. Zaytoon, J. On the recent advances in Grafcet. Production Planning & Control 2002; Vol. 13, p. 86-100.
6. CONCLUSION AND FUTURE WORKS In this paper, knowledge capitalization approach of the controlled system abilities is proposed, and a technique to synthesize a control law from the proposed knowledge database is provided. As in the scheduling research field, each resource is described by all the offered operations. To model the constraints of the lowest level, an extended operation model is proposed. The operation model structure is generic. This model is made up of the basic behavior and of none or several extra behaviors. Behavior is defined by a condition, an effect on a resource or on the product flow, and the associated constraints. All the operations with expected external events define
336