Ecole Supérieure Polytechnique
Institut Supérieur des Métiers de l’Energie(ISME)
Filière : Génie Electrique et Energie Renouvelable
Cours: Automatismes Industriels
Objectifs d’apprentissage :
Apprendre, en termes de contrôle-commande les systèmes industriels automatisés.
Connaitre la technologie des principaux constituants des systèmes automatisés de
production
Analyser le fonctionnement du cahier de charge du système afin de réaliser la
conception demandée
Être capable de mettre en œuvre des applications d’automatisation conçue autour
d’automates programmables industriels
Éléments du programme :
1. Introduction à l’Automatismes Industriels
2. Structure de Système Automatisé de Production(SAP).
3. GRAFCET
4. Programmation des API
Réalisé par :
Dr. Abdy BOUHAMADI
Dr. Abdy BOUHAMADI Page 1
Introduction à l’Automatismes Industriels
Définition
Un automatisme est un système qui, par le moyen de dispositifs mécaniques, pneumatiques,
hydrauliques ou électriques, est capable de remplacer l'être humain pour certaines tâches.
Donc l’Automatisation, C’est l’exécution automatique de tâches sans interventions humaines.
Buts de l’automatisation
Élimination de tâches répétitives ou sans intérêt
- Machine de fabrication
Simplifier le travail de l’humain
- Toute une séquence d’opérations remplacée par l’appui sur un poussoir
Augmenter la sécurité
- Éviter les erreurs (aboutissant parfois à des catastrophes) inévitables dans un
travail répétitif.
Proposer aux hommes des tâches valorisantes
- Au lieu de chargement / déchargement de pièces sur une machine, offrir la
possibilité de la contrôler voire programmer
.Accroître la productivité
- Cadence de production soutenue
- Pas de fatigue
Économiser les matières premières et l’énergie
- Production plus efficace
Superviser les installations et les machines
- Vérifier l’état de fonctionnement de la machine et prévenir si une maintenance est
nécessaire.
- Augmentation de la disponibilité.
1 Structure des systèmes automatisés de production (SAP) :
Tout système automatisé comporte :
Dr. Abdy BOUHAMADI Page 2
Figure 1 : Structure d’un système automatisé
Une partie opérative (P.O) procédant au traitement des matières d’œuvre afin
d'élaborer la valeur ajoutée ; c’est la partie mécanique du système qui effectue les
opérations. Elle est constituée d’actionneurs tels que vérins, moteurs… utilisant de
l’énergie électrique, pneumatique, hydraulique...
Une partie interface (P.I) : est la partie se trouvant entre les deux faces PO et PC
Traduisant les ordres et les informations.
Une partie commande (P.C.) coordonnant la succession des actions sur la Partie
Opérative avec la finalité d'obtenir cette valeur ajoutée.
Les échanges d’information entre la PC et la PO sont de deux types :
La PC envoie les ordres vers les actionneurs et les pré-actionneurs de la PO afin
d’obtenir les effets souhaités ;
La PO envoie les comptes rendus vers la PC à travers les capteurs ;
2 LE GRAFCET
GRAFCET (GRAphe Fonctionnel de Commande Etape/Transition). C’est un outil graphique
de description des comportements d’un système logique. Il a été développé 1977 par l'AFCET
(Association Française pour la Cybernétique Economique et Technique). En 1982, il devient
une norme française (NF C 03-190 UTE) proposée par ADEPA (Agence Nationale pour le
Développement de la Production automatisée) et plus tard, une norme internationale (IEC-
60848). De plus, cela a été la base du développement d’une nouvelle norme IEC 61131-3 qui
permet de valider cinq langages de programmation d'API. Il est fréquemment utilisé pour
la mise en œuvre des automates programmables industriels (API).
2.1 Conventions et règles
Le modèle est défini par un ensemble constitué :
D’éléments graphiques de base comprenant : les étapes, les transitions, les liaisons
orientées.
Dr. Abdy BOUHAMADI Page 3
D’une interprétation traduisant le comportement de la partie commande vis-à-vis de
ses entrées et de ses sorties(E/S), et caractérisée par les réceptivités associées aux
transitions et les actions associées aux étapes.
De 5 règles d’évolution définissant formellement le comportement dynamique de la
partie commande.
D’hypothèses sur les durées relatives aux évolutions.
L’alternance étape-transition et transition-étape doit toujours être respectée quelle que
soit la séquence parcourue
2.1.1 Éléments graphiques de base
Étape : une étape représente une situation stable de la PC. Une étape est soit active soit
inactive. On peut associer à chaque étape i une variable Xi image de son activité.
- Étape 2 active → X2 = 1
- Étape 2 inactive → X2 = 0
Étape initiale est une étape active au début du fonctionnement. Elle se représente par
un double carré.
Liaisons orientées : Elles relient les étapes aux transitions et les transitions aux
étapes. Le sens général d’évolution est du haut vers le bas. Dans le cas contraire, des
flèches doivent être employées.
Transition : une transition indique une possibilité d'évolution d’activité entre deux ou
plusieurs étapes. Cette évolution s'accomplit par le franchissement de la transition.
Réceptivité : La réceptivité associée à une transition est une fonction logique :
- des entrées (capteurs, commande opérateur)
- des activités des étapes (Ex : X1 pour étape 1 active.
- des variables auxiliaires (Ex : [C1=10] pour un test sur compteur C1).
Action : L'action indique, dans un rectangle, comment agir sur la variable de sortie,
soit par assignation (action continue), soit par affectation (action mémorisée).
2.1.2 Les différents Grafcet
Il y a deux types de représentation :
Dr. Abdy BOUHAMADI Page 4
La représentation fonctionnelle ou de niveau 1 donne une interprétation de la
solution retenue pour un problème posé, en précisant la coordination des tâches
opératives. Elle permet une compréhension globale du système.
La représentation technologique ou de niveau 2 donne une interprétation en tenant
compte des choix technologique relatifs à la partie de commande de l’automatisme ; le
type et la désignation des appareillages (S1, KM, Ka…)
On précise pour chaque étape, à l'intérieur d'un rectangle, les actions à
effectuer lorsque l'étape est active
Le GRAFCET de 1er niveau permet une description qui présume ni des choix technologiques
de la partie opérative (capteur, pré-actionneurs, actionneurs), ni de la partie commande. C’est
un outil de dialogue entre l’utilisateur et le concepteur.
2.1.3 Les règles d’évolution
Définit cinq règles d’évolution
Règle 1 : (Situation initiale)
La situation initiale caractérise le comportement initial de la partie commande vis-à- vis de la
partie opérative et correspond aux étapes actives au début du fonctionnement.
Règle 2 : (Franchissement d’une transition)
Une transition est validée lorsque toutes les étapes immédiatement précédentes sont actives.
Le franchissement ne peut produire :
Dr. Abdy BOUHAMADI Page 5
- Que lorsque cette transition est validée
- Et que la réceptivité associée est vraie
Règle 3 : (Evolution des étapes actives)
Le franchissement d’une transition provoque simultanément :
- L’activation de toutes les étapes immédiatement suivantes reliées à cette transition.
- La désactivation de toutes les étapes immédiatement précédentes reliées à cette
transition.
Règle 4 : (Evolution simultanées)
Plusieurs transitions simultanément franchissables sont simultanément franchies. Cette règle
de franchissement permet notamment de décomposer un GRAFCET en plusieurs diagrammes
indépendants tout en assurant de façon rigoureuse leur interconnexion.
Règle 5 : (Activation et désactivation simultanées)
Dr. Abdy BOUHAMADI Page 6
Si au cours du fonctionnement de l’automatisme une même étape doit être simultanément
activée et désactivée, elle reste active.
2.1.4 Les différents types de réceptivités
2.1.4.1 Les réceptivités logiques associées aux transitions
Une proposition logique, appelée réceptivité, qui peut être vraie ou fausse est associée à
chaque transition.
2.1.4.2 Réceptivité toujours vraie
La notation 1 (1 souligné) indique que la réceptivité est toujours vraie.
Dans ce cas, l’évolution est dite toujours fugace, le franchissement de la transition n’est
conditionné que par l’activité de l’étape amont.
2.1.4.3 Front montant et descendant d’une variable logique
- Front montant : La notation ↑ indique que la réceptivité n’est vraie que lorsque la
variable passe de la valeur 0 à la valeur 1.
- Front descendant : La notation ↓indique que la réceptivité n’est vraie que lorsque la
variable passe de la valeur 1 à la valeur 0.
La réceptivité n’est vraie que lorsque le produit logique « a.b » passe l’état 1 à l’état 0.
Dr. Abdy BOUHAMADI Page 7
2.1.4.4 Réceptivité dépendante du temps
La notation est de la forme « T1/variable/T2 ». Dans l’exemple ci-contre, la réceptivité n'est
vraie que 3 s après que « a » passe de l’état 0 à l’état 1, elle ne redevient fausse que 7 s après
que « a » passe de l’état 1 à l’état 0.
2.1.4.5 Valeur booléenne d’un prédicat
Un prédicat est une expression contenant une ou plusieurs variables et qui est susceptible de
devenir une proposition vraie ou fausse.
Pour l’exemple 1, la réceptivité est vraie lorsque la valeur courante du compteur est égale à 5.
Pour l’exemple 2, le langage littéral peut être utilisé.
Pour l’exemple 3, la réceptivité est vraie lorsque la température est supérieure à20°C et le
niveau haut h est atteint.
2.1.5 Les actions associées
Une ou plusieurs actions élémentaires ou complexes peuvent être associées à une étape. Les
actions traduisent ce qui doit être fait chaque fois que l’étape à laquelle elles sont associées est
active.
Les types d’actions
Les actions peuvent être classées selon plusieurs types. Action Continue : L’action continue
est un ordre qui dure tant que l’étape à laquelle elle est associée reste active. La figure ci-
dessous montre la représentation de l’action sur le GRAFCET (à gauche) et le chronogramme
(à droite). Donc on peut conclure qu’au niveau logique A = X2 (en supposant que l’action A
ne se produit pas à d’autres étapes).
Dr. Abdy BOUHAMADI Page 8
2.1.5.1 Les actions continues
Une action est dite continue lorsque la durée de cette action correspond à la durée d’activation
de l’étape. Plusieurs actions continues peuvent être associées à une même étape.
2.1.5.2 Les actions conditionnelles
L’exécution de l’action est soumise à une condition logique notée à coté
d’un trait vertical au-dessus de l’action.
2.1.5.3 Les actions mémorisées
Lorsqu’une action doit être maintenue pendant plusieurs étapes, il suffit d’utiliser les
symboles S (Set) et R (Reset) ou de la répéter dans toutes les étapes concernées.
2.1.5.4 Durée d’activité d’étape
Pour maintenir une étape active et ses actions associées pendant un certain
temps (t= 15S), il suffit d’utiliser le signal binaire de sortie de l’opérateur à retard
comme réceptivité.
Dr. Abdy BOUHAMADI Page 9
2.1.5.5 Les actions retardées ou limitées
L’action peut être retardée, c’est à dire que la condition d’assignation n’est vraie qu’après une
durée D depuis l’activation de l’étape. Comme elle peut être limitée dans le temps, C’est à
dire que la condition d’assignation n’est vraie que pendant une durée L depuis l’activation de
l’étape. L’action VERIN A est retardée de 5 secondes et l’action REMPLISSAGE est limitée
à 8 secondes à partir de l’activation de l’étape 12.
2.2 Les structures de base
Un automatisme est représenté par un Grafcet à sélection d‘une séquence (aiguillage) lorsque
cet automatisme possède plusieurs cycles de fonctionnement. Ces cycles sont sélectionnés par
des informations fournies, soit par l‘opérateur (commutateur, claviers…), soit par la machine
elle-même (capteurs de position, détecteur…).
Quelle que soit la complexité, le système séquentiel peut être modélisé comme une
combinaison des structures de base qui sont les suivants:
Séquence linéaire
Sélection de séquence
Séquences simultanées
2.2.1 Séquence linéaire
Une séquence linéaire est composée d’une suite d’étapes qui peuvent être activées les unes
après les autres.
Dr. Abdy BOUHAMADI Page 10
Exemple :
On se propose de d écrire un GRAFCET d’une machine de poinçonnage des tôles à commande
automatisé par un API Comme le montre la figure suivante :
Cette machine permet uniquement de poinçonner des tôles de forme circulaire le chargement
et le déchargement s’effectue manuellement. Le démarrage de la machine se fait par un
bouton poussoir DCY.
Le vérin rotation plateau VR est de type simple effet permet de tourner le plateau d’un quart
de rotation par la sortie de son tige. Le recule de la tige n’à aucun effet de rotation. Le vérin
poinçon VP permet de poinçonner la pièce se trouvant à l’emplacement ‘ P ‘ par la sortie de
son tige.
Cahier de charge de la machine :
Le système se trouvant en position initiale, l’appui sur le bouton de « départ cycle » ordonne la
rotation du plateau
Une fois la rotation achevée, descente du poinçon.
Une fois le poinçon en position basse, remontée du poinçon
Dr. Abdy BOUHAMADI Page 11
Une fois le poinçon revenu en position haute, attente d’un nouveau « départ
cycle ».
Les GRAFCET respectivement de niveau 1 et niveau 2 conformément au cahier de charge sont
représentés à la figure suivante
2.2.2 Sélection de séquences :
Une sélection de séquence est un choix d’évolution entre une ou plusieurs séquences possibles
à partir d’une ou plusieurs étapes.
Il est impérative de ne sélectionner qu’une seule évolution et ceci en utilisant des conditions
logiques exclusives.
Cette exclusivité peut être
Soit d’ordre physique (incompatibilité mécanique ou temporelle)
Soit d’ordre logique dans l’écriture des réceptivités.
Dr. Abdy BOUHAMADI Page 12
2.2.2.1 Début de sélection (divergence en OU):
2.2.2.2 Fin de sélection (convergence en OU):
2.2.2.3 Saut d’étape et reprise de séquence
Un saut d’étape permet de sauter une ou plusieurs étapes lorsque les actions associées à ces
étapes deviennent inutiles (ex: perçage avec ou sans débourrage).
Un renvoi de séquence permet d’effectuer plusieurs fois une même séquence tant qu’une
condition n’est pas réalisée (ex : remplissage d’un produit).
L’exemple suivant résume les principes de saut d’étapes et de renvoi de séquence.
Dr. Abdy BOUHAMADI Page 13
2.2.3 Séquences simultanées
Les séquences simultanées permettent à partir d’une ou plusieurs étapes
d’évoluer vers plusieurs séquences simultanément.
2.2.3.1 Divergence en ET :
Dr. Abdy BOUHAMADI Page 14
2.2.3.2 Convergence en ET :
2.2.4 Extension des représentations (Macro-étapes) :
Une macro-étape est une représentation unique d’un ensemble d’étapes et de transitions.
Le concept de macro-étape permet :
Lors de l’analyse, de ne pas surcharger la représentation de délais (représentation
structurée)
Lors de l’exploitation, une meilleure compréhension du fonctionnement.
L’expansion de la macro-étape commence par une seule étape d’entrée et finit par une seule
étape de sortie. Le franchissement de la transition amont (1) de la macro-étape active l’étape
d’entrée (30). L’étape de sortie (30) valide la transition aval de la macro-étape (2) et
désactivée lorsque cette transition est franchie.
Exemple :
On considère une machine de production des pièces pliées et poinçonnées
décrite ci-dessous avec chargement et déchargement automatique :
Dr. Abdy BOUHAMADI Page 15
Le système est commandé par deux boutons poussoirs respectivement le départ cycle (DCY)
et arrêt (RAZ) composé par deux postes:
Poste de pliage par descente et monté de la tige vérin 1
Poste de poinçonnage par descente et monté de la tige vérin 2
Poste d’évacuation puis remplissage de pièces assurées par deux vérins (vérin 3
et vérin 4).
Cahier de charge de la machine :
Le système se trouvant en position initiale, l’appui sur le bouton de « départ cycle »
ordonne simultanément l’évacuation puis remplissage ; le pliage et le poinçonnage des
pièces se trouvant sur le plateau.
Une fois les trois actions terminées. Le système ordonne la rotation du plateau et le
système recommence le même cycle jusqu’à l’arrêt.
Une fois le poinçon revenu en position haute, attente d’un nouveau « départ
cycle ».
Les GRAFCET globale et des macros étapes de niveau 1 conformément au cahier de charge
sont représentés aux figures suivantes.
GRAFCET globale de fonctionnement :
Dr. Abdy BOUHAMADI Page 16
Dr. Abdy BOUHAMADI Page 17
3 LA PROGRAMMATION DES API
3.1 Mise en équations des GRAFCET:
Malheureusement, ce ne sont pas tous les automates qui se programment en GRAFCET
directement. Mais, généralement ils peuvent être programmés en « diagramme échelle » (ou
LADDER).
Il faut donc pouvoir transformer le GRAFCET qui est la meilleure approche qui existe pour
traiter les systèmes séquentiels en « diagramme échelle » qui est le langage le plus utilisé par
les automates.
3.1.1 Mémoire d’étape:
Afin de respecter les règles d’évolution du GRAFCET, chaque étape peut être matérialisée
par une mémoire du type marche prioritaire possédant une structure de la forme :
Dr. Abdy BOUHAMADI Page 18
Les termes d’enclenchement et de remise à zéro sont définis de la manière suivante :
Dr. Abdy BOUHAMADI Page 19
3.1.2 Initialisation de la séquence :
Nous remarquons sur le schéma précédent qu’à la mise sous tension, toutes les mémoires se
trouvant ici à l’état repos, aucune évolution n’est possible.
Il est donc impératif d’initialiser la séquence en venant enclencher la mémoire X1
matérialisant l’étape initiale de notre GRAFCET. Ceci est obtenu :
Soit en utilisant un contact d’initialisation ou un contact de passage commandé lors de la
mise sous tension de l’automatisme, comme le montre le schéma suivant :
Soit en testant l’état repos de toutes les mémoires d’étape suivantes, pour venir alors
systématiquement enclencher la mémoire X1 , comme le montre le schéma suivant :
3.2 Langages de programmation des API:
Les langages de programmation des API sont de natures diverses étant donné la diversité, des
utilisateurs pouvant les utiliser.
3.2.1 Le langage LADER (LD) :
Le langage des API d’origine américaine utilise le symbolisme classique des schémas à relais
accompagné de blocs graphiques préprogrammés pour réaliser des fonctions d’automatisme
(calculs, temporisation, compteur,…..).
C'est une suite de réseaux qui seront parcourus séquentiellement. Les entrées sont
représentées par des interrupteurs -| |- ou -|/|- si entrée inversée, les sorties par des bobines -( )-
ou des bascules -(S)- -(R)-.Il y a également d’autre opérations :
l'inverseur -|NOT|-,
l'attente d'un front montant -(P)- ou descendant -(N)-.
Les sorties sont obligatoirement à droite du réseau On doit évidemment identifier nos E/S, soit
directement par leur code (Ia.b / Qa.b), ou avec leur libellé en clair défini dans la table des
mnémoniques.
Dr. Abdy BOUHAMADI Page 20
On relie les éléments en série pour la fonction ET, en parallèle pour le OU. On peut utiliser
des bits internes (peuvent servir en bobines et interrupteurs), comme on utilise dans une
calculatrice une mémoire pour stocker un résultat intermédiaire (Ma.b). On peut aussi
introduire des éléments plus complexes, en particulier les opérations sur bits comme par
exemple une bascule SR (priorité déclenchement), RS (priorité enclenchement), POS et NEG
pour la détection de fronts... on trouvera d'autres fonctions utiles, les compteurs, les
temporisateurs et le registre à décalage.
On peut également utiliser des fonctions plus complexes (calculs sur mots par exemple)
3.2.2 Adressage des entrées/sorties
La déclaration d'une entrée ou sortie donnée à l'intérieur d'un programme s'appelle
l'adressage. Les entrées et sorties des API sont la plupart du temps regroupées en groupes de
huit sur des modules d'entrées ou de sorties numériques. Cette unité de huit est appelée octet.
Chaque groupe reçoit un numéro que l'on appelle l'adresse d'octet.
Afin de permettre l'adressage d'une entrée ou sortie à l'intérieur d'un octet, chaque octet est
divisé en huit bits. Ces derniers sont numérotés de 0 à 7. On obtient ainsi l'adresse du
bit..L'API représenté ici a les octets d'entrée 0 et 1 ainsi que les octets de sortie 0 et 1.
Par exemple, pour adresser la 5ème entrée du DCY en partant de la gauche, on définit
l’adresse suivante :
I0.4 I indique une adresse de type entrée, 0, l’adresse d’octet et 4, l’adresse de bit. Les
adresses d’octet et de bit sont toujours séparées par un point.
Pour adresser la 3ème sortie, par exemple, on définit l’adresse suivante :
Q0.2 Q indique une adresse de type Sortie, 0, l’adresse d’octet et 2, l’adresse e bit. Les
adresses d’octet et de bit sont toujours séparées par un point.
Remarque : L’adresse du bit de la dixième sortie est un 1 car la numérotation commence à
zéro.
Exemple:
Dans l’exemple précédent et suivant la table mnémonique d’affectation le programme en
LADER de la première étape est :
Dr. Abdy BOUHAMADI Page 21
Dr. Abdy BOUHAMADI Page 22
Pour la programmation des sorties
R0 : est actionné uniquement à l’étape 2
DE : est actionné uniquement à l’étape 3
MO : est actionné uniquement à l’étape 4
Le programme peut être simplifié si en utilisant les bobines Set/ Reset ou les bascules SR
ou RS et en tenant compte des cinq règles du GRAFCET.
Dr. Abdy BOUHAMADI Page 23
Dr. Abdy BOUHAMADI Page 24