1 – Introduction
Either the following automated system:
The trolley shuttles between point A and point B. We want to control it using two buttons: On and Off. This means that the trolley begins to cycle once the Start button has been pressed and it will stop once its cycle is complete if the Stop button has been pressed.
Grafcet proposal :
This solution has one drawback: to stop the trolley, you have to press Stop when the trolley arrives at A. This is not satisfactory. The idea is to have a grafcet that reads the buttons and controls the other. It will be a supervising grafcet:
In more general and more complex cases, the master grafcet (supervisor) takes care of the starting, the sequence, the synchronization and the stopping of various tasks. Each task is described by a grafcet commanded by the task management supervisor or grafcet, this is referred to as the Notion of hierarchical structures
2. Hierarchical structure of a grafcet:
2.1. Structure of a Sub-grafcet:
In sequential automatisms, it is common to encounter repetitive sequences in the same cycle. A repeating sequence can be represented by a sub-grafcet or grafcet sub-program. This notion of is borrowed from computer language.
A subroutine grafcet is written as an independent grafcet, connected to the main grafcet.
A sub-program grafcet can itself contain a macro-representation for launching a sub-program grafcet (nested structure).
There is another method of returning the hand to the master grafcet, which is the most used. It uses an output step with a time delay to keep the variable X25 at 1 for 1 s in order to give control back to the master. This method is called “Asynchronous coordination”
2.2. Structure of a task grafcet:
The purpose of the spots is to simplify and facilitate the description of complex systems by lightening the graphics of a grafcet and by separately detailing certain parts. (to be compared with IT programming procedures)
2.3. Structure of the macro-step expansion:
A macro step is a single representation of a set of steps and transitions called the expansion of the macro step.
Note: No action must be associated with a macro-step.
The structure of the expansion obeys certain construction rules, namely:
expansion always has an entry step (E) and an exit step (S);
the entry step is active as soon as the upstream transition of the macro-step is crossed;
the activation of the expansion exit step triggers the crossing of the downstream transition of the macro-step;
- a macro-step expansion can include convergences in AND or in OR, divergences in OR and in AND;
- a macro-step expansion can contain macro-steps.
2.4. Structure of encapsulation expansion:
An encapsulating step contains a set of steps encapsulated in one or more encapsulated partial graphs. An encapsulated graph can itself contain an encapsulating step.
An encapsulating step can be initial
The deactivation of an encapsulating step causes the deactivation of all the steps of its encapsulated graphs
2.3 – Forcing and freezing of situations:
When we want to take security into account, we risk having a significant increase in the complexity of a Grafcet. Instead, one can imagine that one grafcet can have a global influence on another grafcet through the use of special actions called macro-actions.
Macro-actions can only be issued by a step of a hierarchically superior grafcet to modify the situation of a hierarchically inferior grafcet.
Example of a commonly adopted simple hierarchy.
2.3.1 – Forcing:
Forcing is a continuous action, noted in a double frame, which acts on the graph Gi, hierarchically inferior “or” slave “by configuring this grafcet, from any situation, in a given state.
Activating step 10 of grafcet G1 forces grafcet G2. Step 21 is activated (forced to 1), the other steps of grafcet G2 are disabled (forced to 0).
You can also force a grafcet:
- in initial situation
- in an empty or deactivated situation (All the forced grafcet steps are deactivated including the initial steps)
The rules of evolution by forcing are:
- a grafcet can only be forced by a hierarchically superior grafcet;
- a lower grafcet can only be forced in one situation at a time from one or more higher grafcets;
- the forcing order has priority over the other conditions ensuring the evolution of the forced grafcet;
- in the case of a forcing of a non-empty situation, the forcing order simultaneously causes the activation of the steps corresponding to the imposed situation and the deactivation of the other steps of the forced grafcet;
- in the case of an empty situation forcing, issuing the forcing order simultaneously disables all the steps of the designated Grafcet.
2.3.2 – Figeages :
This is a special case of forcing. It is a question of maintaining the forcing in the current situation, ie blocking the evolution of grafcet. The order of freezing can also be towards a situation chosen in advance or predetermined, that is to say that the forced grafcet continues to evolve until the chosen situation where it will freeze.