1. Introduction
The Guide d’etude des modes de marche et d’arrêt (GEMMA) guide paradigm was born in order to develop a tool that facilitated the automation of production systems. It was developed in 1984 by the Agence Nationale pour le Developpement de la Production Automatisée (ADEPA) in France [
1]. The GEMMA is presented as a block diagram that is typified by different states and the possible conditions of the evolution between them. An important problem when dealing with the automation of a process is to correctly define what the different working modes will be and what each of them will do. The GEMMA paradigm allows for the reviewing different operating modes that may or may not be developed, and it is very useful for analyzing the stages. Since it provides a pattern that includes all the possible modes of operation, it is possible to choose the modes that meet the needs as part of the functional specifications [
2]. The use of the GEMMA guide paradigm combines the communication between the operator and the system, and it avoids the misunderstandings that can appear between them. In other words, it helps avoid the delay and failure of a project that may occur due to bad communication [
3].
Nowadays, mathematical models are very important in the real world and, especially for science and engineering, there are many mathematical models that are applied to program the knowledge of experts (e.g., neural networks, semantic networks, machine learning, and Petri nets). These different models provide intelligence support systems for decision-making [
4].
Fuzzy logic-based control was developed in order to help the human operator or replace him. Proportional logic is used in fuzzy logic, and it is a very effective method for real-time decision-making and for control applications. This method requires an additional structure in order to conjunct or disjunct the rule of the condition. Normally, these methods work rapidly and automatically without human intervention. For this reason, they are able to serve as a very good solution for real-time control systems. The Petri net mathematical model is very expressive and may be adapted to a more intelligent model by combining it with the fuzzy reasoning model and its propositional logic [
4].
Fuzzy Petri nets are graphical models with a truth degree and parallel structure that were proven to be very effective and have a significant ability to represent and reason the decision-making of systems. Fuzzy Petri nets are able to transform the vectors of a fuzzy truth state with fuzzy rules to the Petri net model. This provides a new model that is reminiscent of neural networks. The changes that have been made to traditional Petri nets allow the Petri nets to work with fuzzy logic rules and make logical reasoning for the system [
5].
1.1. Contribution
In this article, a new fuzzy Petri net algorithm for the GEMMA guide paradigm is presented. The development of each algorithm was based on fuzzy Petri net rules and the conditions of the different states of the GEMMA paradigm. The main contribution of this article validates the developed algorithms for GEMMA transitioning between its different modes. It is expected that these algorithms would have a very significant impact on the control systems of industrial processes in the near future.
1.2. Outline
In order to clarify the article, it was decided to divide it into four additional sections, besides this introductory section. The second section describes the GEMMA guide paradigm and its structure. The third section presents the fuzzy Petri net approach, including its mathematical rules and an example that illustrates and verifies the approach. The fourth section describes the fuzzy Petri net algorithms for the GEMMA guide and reports the empirical validation. Finally, the last section presents the conclusion of the obtained results and future work.
4. Fuzzy Petri Net Algorithms for the GEMMA Guide
4.1. Stop Procedure to Operation Procedure
The transition between the stop procedure A1 mode to the different operation modes (F1, F2, F4 and F5) is a critical issue for having appropriate control of the machine. While the machine is in the initial stop state (A1), it has the possibility to pass to three different modes, and due to certain requirements, this is decided by the operator. In a situation that the operator desires to place the machine in the normal production mode in order to start the production, the machine can be placed in two different modes: normal production (F1) or the start-up process (F2). The decision of the correct mode will be done automatically by the control; that is to say, while the necessary initial sensors are on, the control will place the machine in its normal production mode. However, in a case where not all of the initial sensors of the machine are on or the machine is not ready to start production due to different issues, such as machine cleaning being required, the control will place the machine in a start-up process mode in order to let the machine prepare itself for production. Moreover, when the operator desires to place the machine in either verification mode 1 (F4) or verification mode 2 (F5), he is able to do so with the control directly from the initial state (A1).
The fuzzy Petri net algorithm provides an intelligence and safe way to control the transitions of the machine. By this algorithm, the operator is able to place the machine in the mode that he desires in order to either start production or make some verifications of the machine. In
Figure 5, it is possible to see the fuzzy Petri net algorithm of the transition between the initial state and the different operation modes of the GEMMA.
From
Figure 5, it can be seen that this fuzzy Petri net algorithm allows the operator to choose what he desires to do next, such as placing the machine in one of the verification modes by selecting the appropriate verification mode button (1 or 2). Additionally, the operator can start production by pushing the activation mode button. In this case, the algorithm will automatically place the machine in the appropriate mode (F1 or F2) in order to start production correctly.
By applying fuzzy Petri net mathematical calculations and the rules that have been shown, the following results are obtained.
For the transition from A1 to F1 or F2, while the activation button is on, M0(p4) = 1, and when the initial sensors are off, M0(p3) = 0. As a consequence, the F2 state of the GEMMA guide is on, and the machine will be placed in the start-up process mode. Alternatively, while the activation button is on, M0(p4) = 1, and when the initial sensors are on, M0(p3) = 1. In this case, the F1 state of the GEMMA guide is on, and the machine will be placed in the normal production mode. In this case, both transition 3 and transition 4 can fire due to the fuzzy Petri net firing rule minM(tj) ≥ λpj. However, when there is a case where minM(tj) = λpj in one transition and minM(tj) > λpj in the other transition, the bigger value will be preferable, and in this case, only transition 3 will fire, and the F1 state of the GEMMA guide will be on.
For the transition from A1 to F4 or F5, while the verification mode 1 button is on, M0(p11) = 1, the F4 state of the GEMMA guide is on, and the machine will be placed in verification mode 1. Alternatively, while the verification mode 2 button is on, M0(p12) = 1, the F5 state of the GEMMA guide is on, and the machine will be placed in verification mode 2.
4.2. Operation Procedure
There are several significant transitions in the operation procedures, and these different transitions are decided by the operator, according to certain situations and requirements. In case the operator desires to make some verification of the machine at a certain point in production, he is able to make it by selecting the appropriate mode according to his needs. In other words, he can place the machine either in different verification modes (F4 or F5) or in the test mode (F6) during production. While he finishes verifying the machine, he is able to either return to production (from F5 or F6) or restart the machine to its initial state (from F4 or F5), depending on his needs.
The fuzzy Petri net algorithm for the operation procedure makes these transitions for the operator’s needs safe and prevents problems that may occur during transitions. By this algorithm, the operator is able to choose which mode to place the machine in and whether to come back to a certain point of production or restart the machine to the initial state.
Figure 6 describes the fuzzy Petri net algorithm of the operation procedure, including the fuzzy Petri net places and transitions and their values.
From the figure, it is possible to notice that the operator is able to choose in which mode to place the machine in regard to his needs. For example, while the machine is placed in the normal production mode and verification button 1 or 2 is pressed, the machine will be placed in either verification mode 1 or 2, respectively. In the same way, the machine can be placed in its test mode by the test button.
Applying the fuzzy Petri net mathematical calculations and rules that have been shown yields the following results.
For the transition from F1 to F4, while the verification mode 1 button is pressed, M0(p2) = 1, the F4 state of the GEMMA is on, and the machine will be placed in verification mode 1.
For the transition from F1 to F5, while the verification mode 2 button is pressed, M0(p3) = 1, the F5 state of the GEMMA is on, and the machine will be placed in verification mode 2.
For the transition from F1 to F6, while the test button is pressed, M0(p4) = 1, the F6 state of the GEMMA is on, and the machine will be placed in test mode.
4.3. Operation Procedure to Stop Procedure
The operation procedure to stop procedure transitions are very important for the control system of the machine and to the machine’s processes. For example, this can reduce the production cost in a case where there is some error in production and some details need to be modified in order to correct production instead of throwing it away and starting over. Moreover, in a case where the operator desires to shut the machine down, he is able to do it with these transitions, and the control will place the machine in the appropriate mode automatically; that is to say, if the machine finished production correctly, the machine will be placed in the requested stop at the end of the cycle (A2). Additionally, in a case where the shutdown button is pressed and production did not finish correctly, the machine will be placed in the shutdown process (F3) in order to prepare the machine for the initial stop state.
The fuzzy Petri net algorithm for the transitions between the operation procedure to stop procedure provides intelligent and safe control. Moreover, by this algorithm, the machine will be placed in the correct mode in regard to the operator’s needs. This will allow him to stop the production and, when it is necessary, return to the same production point in order to continue or shut down the machine, either for starting over or turning off the machine. The figure below shows the fuzzy Petri net algorithm for these different transitions, including the fuzzy Petri net places and transitions and their values.
From the
Figure 7, it is possible to see the different transitions of the operation procedure to the stop procedure and when they will occur. For example, when the operator desires to stop the machine, it will be placed either in the requested stop at the end of the cycle (A2) or in the requested stop (non-initial state) mode (A3) automatically, depending on the machine’s situation. In a similar way, the machine will shut down when the operator requires it. The fuzzy Petri net results for this algorithm are presented below.
For the transition from F1 to A2 or A3, while the stop button is pressed, M0(p1) = 1, the initial sensors are off, M0(p5) = 0, the A3 state of the GEMMA is on, and the machine will be placed in the requested stop (non-initial state) mode in order to allow the operator to continue production when it is needed. On the contrary, while the stop button is pressed, M0(p1) = 1, the initial sensors are on as well, M0(p5) = 1, the A2 state of GEMMA is on, and the machine will be placed in the requested stop mode at the end of the cycle in order to set the machine in the initial stop state. In this case, both transition 4 and transition 5 can fire due to the fuzzy Petri net firing rule minM(tj) ≥ λpj. However, when there is a case where minM(ti) = λpi in one transition and minM(ti) > λpj in the other transition, the bigger value will be preferable, and in this case, only transition 5 will fire, and the A2 state of the GEMMA guide will be on.
For the transition from F1 to F3 or A2, while the shutdown button is pressed, M0(p13) = 1, the initial sensors are off, M0(p5) = 0, the F3 state of the GEMMA will be on, and the machine will be placed in the shutdown process mode in order to prepare the machine for the initial stop state. On the contrary, while the shutdown button is pressed, M0(p1) = 1, the initial sensors are on as well, M0(p5) = 1, the A2 state of the GEMMA is on, and the machine will be placed in the requested stop mode at the end of the cycle in order to set the machine to the initial stop state.
4.4. Operation Procedure to Failure Procedure
The fuzzy Petri net algorithm for moving from the operation procedure to the failure procedure ensures different failures are handled in an intelligent and safe way in order to prevent damage to the machine and danger to human life. This algorithm is divided into two important branches: the emergency button that is controlled by the operator and the different types of failures that are controlled automatically by the algorithm. The fuzzy Petri net algorithm is described in the
Figure 8 below.
The algorithm divides the critical failures into three parts in order to place the machine in the appropriate failure mode (D1, D2 or D3). The critical failure value ranges from zero to one. As long as its value equals zero, the machine is working properly. While the failure is not very critical, the machine can continue production while the failure exists. If its value is greater than 0 and less than or equal to 0.2 (0 < failure ≤ 0.2), the algorithm will stop the machine automatically and place it in production, despite the failure mode (D3). When the machine is placed in this mode, the operator can decide whether to continue production or restart the machine. The next level of failure is when its value range is greater than 0.2 and smaller than 0.6 (0.2 < failure < 0.6). This case means that the failure is more critical, and the machine cannot continue production. In this case, the machine will be placed in diagnosis or treatment of the failure mode (D2) in order to detect where the failure occurred and repair it. Once the failure is fixed, the operator is able to restart the machine to the initial stop state. The last and most critical level is when the critical failure value is greater than 0.5 and less than or equal to 1 (0.5 < failure ≤ 1). When this level of failure occurs, the algorithm stops the machine immediately and places it in the emergency stop mode (D1) in order to detect the failure and repair it. These different failure levels are set specially for each machine in the control programming stage, and they depend on its conditions. The results of this algorithm clarify the different levels of failure and the algorithm reaction for each one.
For the transition from F1 to D1, while either the emergency button is pressed (M0(p3) = 1) or the failure value is bigger than 0.5 (M0(p5) > 0.5), the D1 state of the GEMMA is on, and the machine will be placed in the emergency stop mode in order to detect and repair the failure. Then the machine will be restarted.
While the failure value is between 0 and 0.3 (0 < M0(p5) < 0.3), the D3 state of the GEMMA is on, and the machine will be placed in production despite the failure mode in order to allow the continuation of production. On the contrary, while the failure value is greater than 0.2 and less than or equal to 0.5 (0.2 < M0(p5) ≤ 0.5), the D2 state of the GEMMA is on, and the machine will be placed in diagnosis and/or treatment of the failure mode in order to detect and repair the failure. Then, the machine will be restarted.
4.5. Failure Procedure to Stop Procedure
The different transitions between the failure procedure and the stop procedure allow the operator to make his decision depending on the situation. In this way, the operator is able to choose whether to continue production after the failure is repaired or restart the machine. Moreover, in a non-critical failure, production in spite of the failure is possible. The fuzzy Petri net algorithm for the transitions between the failure procedure and the stop procedure make the control both smarter and safer, and it allows for making the best decision automatically without the operator’s decision. The algorithm is presented below in
Figure 9.
From the algorithm, it is possible to realize that when the machine has some medium critical failure level and is placed in the production despite the failure mode (D3), the control will place the machine automatically in the appropriate mode. In other words, the machine will be placed either in the requested stop at the end of the cycle mode (A2) or in the requested stop (non-initial state) mode (A3), depending on the situation of the machine. If the machine finishes production correctly and then the failure occurs, the machine is ready for the initial stop state. However, if the failure occurs at a certain point in production, the control allows the machine to return to the normal production mode in order to continue production. The results below clarify the transition conditions in the different situations.
While the initial sensors are off, M0(p3) = 0, the A3 state of GEMMA is on, and the machine will be placed in the requested stop (non-initial state) mode in order to allow the continuation of production. On the contrary, while the initial sensors are on, M0(p3) = 1, the A2 state of the GEMMA is on, and the machine will be placed in the requested stop mode at the end of the cycle. In this case, both transition 3 and transition 4 being able to fire due to the fuzzy Petri net firing rule minM(tj) ≥ λpj. However, when there is a case where minM(tj) = λpj in one transition and minM(tj) > λpi in the other transition, the bigger value will be preferable, and in this case, only transition 3 will fire, and the A2 state of the GEMMA guide will be on.
5. Conclusions and Future Works
The implementation of the fuzzy Petri net approach on the GEMMA guide paradigm has been proven successfully, and it provides an intelligent and safe control system. The approach for the control system looks promising with regard to production process control and solving problems that may occur during production.
The results of the stop procedure to the operation procedure show that when the activation button is on, the control system places the machine automatically in the appropriate mode in regard to the machine’s conditions. That is to say, if the machine is ready to start production, it will be placed in the normal production mode (F1). On the contrary, in a case where the machine iss not ready to start, it will be placed in the start-up process mode in order to prepare the machine for production. Moreover, while the machine is placed in the initial stop state and the operator desires to start one of the verification modes (F4 or F5), the control system will place the machine in the required mode. Along the same lines, while the machine is placed in its normal production mode (F1) and the transitions to either one of the verification modes or the test mode are needed, the operation procedure algorithm allows the operator to place the machine in the required mode.
Additionally, the results of the algorithm going from the operation procedure to the stop procedure are divided into two main actions. The first one shows that while stopping the machine is needed, the control system will place the machine in the required mode, depending on the machine’s conditions. In other words, while the stop button is on, the machine will be placed automatically in either the requested stop at the end of the cycle mode (A2) or the requested stop (non-initial state) mode (A3). The best decision will be taken by the control system to either restart the machine automatically or allow the operator to return to production. The second action of this algorithm provides the ability to shut the machine down properly. While a shutdown is needed, the control system will place the machine automatically in the requested stop at the end of the cycle mode (A2) when the machine is ready for the initial stop state. On the contrary, when the shutdown process is needed, in order to prepare the machine for the initial stop state, it will be placed in the shutdown process mode (F3).
The algorithm going from the operation procedure to the failure procedure provided significant results. This algorithm is the most important in the control system due to its purpose being safety for the human and the machine. This algorithm provides two actions: stopping the machine by pressing the emergency button and stopping the machine automatically when a failure occurs. The results of this algorithm show that the control system places the machine in the appropriate mode in regard to the failure level. For instance, when a critical failure occurs in the machine, it will be placed in the emergency stop mode (D1) in order to stop the machine immediately. It works for the different failure levels in a similar fashion; the machine will be placed in the correct mode in order to deal with the failure in the best way.
The last results that were presented in this article were the results of the failure procedure to the stop procedure. It is possible to see that while the machine is placed in the production despite the failure mode (D3), once the failure has been fixed, the control system will place the machine automatically in either the requested stop at the end of the cycle mode (A2) or the requested stop (non-initial state) mode (A3), depending on the machine’s conditions. This allows the operator to either restart the machine or return to production properly after the failure has been fixed.
The intelligent fuzzy Petri net algorithm provides valid automated function for decision-making systems and the control of many machines, such as cranes installed on a quay wall to handle electric cables and provide an onshore power supply to ships at berth (OPS). Green transport has become a critical issue recently, and OPS is the only available solution to reduce the environmental impact in the port and make a difference in the quality of life of populations settled in the vicinity of ports. The Spanish National Ports Agency took this a step further and started a project for reducing pollution and noise in Spanish ports, which will lead to environmental improvement and healthier living. This project is called the OPS MASTERPLAN for the Spanish ports, and it is funded by the European Union. The OPS MASTERPLAN project includes the identification of barriers and implementation of administrative measures to facilitate OPS technology. In addition, it analyzes some pilots in various Spanish ports and includes a specific R&I (research and innovation) innovative activity, that being the design of a fully remote automated crane for OPS. Indeed, this project aims to achieve the supplying of electrical energy to ships at berth in Spanish ports, which needs electrical cables to be handled from shore to ship by means of appropriate cranes, due to the intrinsic nature of the weight of the cables and the distances involved in reaching the ship hatches.
The control of this specific kind of crane is very special, as they handle overboard connectors at the edge of the quay wall. In addition, relevant safety issues associated with high voltage currents, galvanic protection, 50 or 60 Hz frequency conversion and ship earthing affect crane operation in practice.
That said, highly required operational conditions motivated this paper’s authors to challenge a intelligent fuzzy Petri net algorithm to govern the OPS crane. Such algorithms responded successfully. Other testing environments for the use of a fuzzy Petri net algorithm, such as underwater and in swarm robotics, produced positive results. Indeed, this algorithm proved to provide good control over underwater robots while facing different decisions that it had to make during sophisticated tasks. Additionally, in the case of swarm robotics, the algorithm is able to provide good communication between robots in order to make the best decisions while working together. In conclusion, intelligent fuzzy Peri net algorithms provide very good control and a good decision support system for a wide range of robots in different fields.