Vous êtes sur la page 1sur 14

GRAFCET ET AUTOMATES PROGRAMMABLES INDUSTRIELS

I) INTRODUCTION :

• La création d'une machine automatisée nécessite un dialogue entre le client qui définit le cahier des charges
(qui contient les besoins et les conditions de fonctionnement de la machine) et le constructeur qui propose
des solutions.
• Ce dialogue n'est pas toujours facile : le client ne possède peut-être pas la technique lui permettant de
définir correctement son problème.
• D'autre part, le langage courant ne permet pas de lever toutes les ambiguïtés dues au fonctionnement de la
machine (surtout si des actions doivent se dérouler simultanément).
• C'est pourquoi l'ADEPA (Agence pour le Développement de la Productique Appliquée à l'industrie) a créé le
GRAFCET.
II) DÉFINITION GRAFCET

Le GRAFCET (GRAphe Fonctionnel de Commande des Etapes et Transitions) est l'outil de représentation graphique
de tout système automatisé dont les évolutions peuvent s'exprimer séquentiellement. Il a été conçu par l'ADEPA
(Agence pour le Développement de la Productique Appliquée à l'industrie) .

C'est un langage clair, strict, permettant de traduire un fonctionnement sans ambiguïté.

Le GRAFCET est devenu à l'heure actuelle plus qu'un outil de description, c'est un langage de programmation
graphique

III) Eléments graphiques de base :

1- Etape  :
L'étape symbolise un état ou une partie de l'état du système. Elle caractérise un comportement invariant du système
considéré.
On symbolise l'étape par un rectangle (en général un carré), identifié par un repère (en général un nombre). L'étape
possède deux états distincts : active (en général se représente par un jeton dans l'étape) et inactive. Une variable
d'étape est associée à chaque étape (en général repéré par X*, ou * est l'identificateur de l'étape).
2) Transition  :
- Une transition indique la possibilité d'évolution entre deux étapes successives. A chaque transition est associée une
condition logique appelée réceptivité
3) liaisons orientées  :
Une liaison est un arc orienté (ne peut être parcouru que dans un sens). A une extrémité d'une liaison il y a une (et
une seule) étape, à l'autre une transition. On la représente par un trait plein rectiligne, vertical ou horizontal. Une
verticale est parcourue de haut en bas, sinon il faut le préciser par une flèche. Une horizontale est parcourue de
gauche à droite, sinon le il faut le préciser par une flèche.
IV)- Règles d'évolution
La modification de l'état d’un automatisme est appelée évolution, et est régie par différentes règles:
Règle 1 : Les étapes initiales sont celles qui sont actives au début du fonctionnement, on les précise par un
double carré.
Règle 2 : Une transition est soit validée, soit non validée.
o Elle est validée lorsque toutes les étapes immédiatement précédentes sont actives.
o Elle ne peut être franchie que lorsqu'elle est validée et que sa réceptivité est vraie. Elle est alors
obligatoirement franchie.
Règle 3 : Le franchissement d'une transition entraîne :
1
o L'activation de toutes les étapes immédiatement suivantes
o La désactivation de toutes les étapes immédiatement précédentes.
Exemple 

V)- Structures de base


1)- Divergence et Convergence en OU

2)- Divergence et Convergence en ET

2
3
4
Exemple avec branchement ET (fonctionnement parallèle)  :
Cahier des charges :
Après appui sur départ cycle « dcy », les chariots partent pour un aller-retour. Un nouveau départ cycle ne peut se
faire que si les deux chariots sont à gauche.

 CH1, CH2 : chariot 1, 2 CH1


 g : capteur « position gauche »

 d : capteur « position droite » g1 G1 D1


 G : action « aller à gauche »

 D : action « aller à droite » CH2


g2 G2 D2
Solution:

1
dcy . g1. g2

2 D1 5 D2
d1 d2
3 G1 6 G2
g1 g2
4 7

1
5
CHAPITRE 2: INTRODUCTION AUX AUTOMATE PROGRAMMABLES

a. Introduction
a.1. Historique :
A la fin des années 60, un premier automate programmable muni d’un microprocesseur fait son apparition
aux Etats-Unis d’Amérique, dans l’industrie automobile.
En effet, il a apparu en 1969 et il avait pour vocation de remplacer les armoires d’automatisation à base de
relais électromagnétiques dans l’industrie automobile par des systèmes programmables.
Les API en anglais « PLC : Programmable Logic Controller» avec leur solution programmée réduisent de
beaucoup l’espace requis pour l’installation, simplifient le filage et éliminent complètement le bruis.
a.2. Définition (norme AFNOR) :
C’est une machine électronique, programmable par un personnel non informaticien et capable de travailler
en ambiance industrielle sévère.
Un API est un appareil électronique qui comporte une mémoire programmable par un automaticien à l’aide
d’un langage adapté.
a.3. API et micro-ordinateur :
La différence entre un API et un micro-ordinateur est clairement énoncée dans le cahier des charges pour
l’objectif industriel.
Les points qui caractérisent un API par rapport à un microordinateur sont :
 Son adaptation au milieu industriel  : La structure à base d’API peut atteindre plusieurs milliers
d’Entrées / Sorties, grâce au développement d’interfaçage avec les capteurs et actionneurs
industriels (modulaires).
 Son adaptation à l’utilisateur  : il suffit de savoir modéliser le cahier de charge de
l’automatisme, et le passage à la programmation est grandement facilité par les outils proposés
(langage de programmation évolués permettant de transposer sur les API facilement :
 les schémas électriques, les équations logiques
 le GRAFCET, Organigramme…).
 Sa fiabilité concernant son intégration dans le milieu industriel  : (moins encombrant, moins
cher, accepte les signaux d’un autre automate)
a.4. Caractéristiques d’un API :
L’API a une vocation unique :
C’est de commander un système auquel il est physiquement lié : c’est une machine programmable avec
modification aisée, en opposition à une structure câblée. Une fois le programme établi, chargé, l’outil de
programmation devient inutile en opposition à un microordinateur.
Fonctionnement en temps réel :
Disponibilité permanente de l’API vis-à-vis du procédé qu’il commande (lié physiquement au système automatisé :
SA).
Utilisé par un personnel non informaticien : Langages évolués (puissant, simple d’emploi, orienté
application et non pas système).
S’adapte au milieu industriel sévère : en opposition à un microordinateur :
 Supporte un environnement physique et mécanique très dur (peut être embarqué sur
chariot….)
 Résiste à l’humidité et à la température (proximité des fours)
 Grande immunité aux parasites industrielles qui sont fréquents (signaux bruités, champs
magnétiques….) grâce à l’isolation totale des E/S de l’API du monde extérieure (environnement
mécanique et électrique), plus particulièrement l’isolation galvanique de courant réalisé en
général par des coupleurs optoélectroniques :

Optocoupleur
Séparation
galvanique
Fig.  : 1:
Entrée

Sortie

Protection de l’automate LED

Contre des surtensions

Phototransistor
6
 Les entrées / sorties assurent également une mise en forme du signal (exemple redressement).

Diode

Entrée CA

redressée
Sortie
Fig.  : 2:
Redresseur

 L’immunité aux parasites est assurée par des filtres dont la constante de temps est de l’ordre de
20 ms (ceci impose à l’information d’être présente au moins 20 ms,
Exemple l’immunité aux parasites industriels et l’élimination des effets de rebondissement

VE
1

0
t
Fig  : 3: Filtres retardateurs VS
Retard
1

0
t
Structure programmable et programmation structurée :
 Ne sachant exécuter qu’une instruction à la fois, il ne peut traiter des événements simultanés, il
les traite les uns après les autres, avec une rapidité tel que le phénomène n’est pas décelé.
Moins de câblage :
Les connexions se réduisent au raccordement des capteurs aux entrées et des pré-actionneurs aux sorties (se
substitue à un grand nombre de relais, il s’en suit un gain en volume et en encombrement.)
Plus de confort :
Le programme qui se substitue au câblage est une suite d’instructions que l’on peut écrire et modifier
facilement grâce au terminal de programmation et de réglage, ce programme peut être dupliqué pour les machines
répétitives.
b. Organisation fonctionnelle d’un API :
b.1. Fonctions essentielles d’un API :
L’API reçoit les informations relatives à l’état du système et commande les pré-actionneurs suivant un ordre de
séquencement défini dans une liste d’instructions, qui lui sera communiquée :
 Recevoir des informations : nécessité des modules d’entrées.
 Commander : nécessité des modules de sorties.
 Suivre un ordre de séquencement : nécessité d’un microprocesseur.
 Liste d’instructions : nécessite de programmation et de stockage en mémoire (RAM).
 Communiquer cette liste : nécessité d’un outil de programmation (Terminal).
b.2. Composantes fonctionnelles d’un API :
L’API se compose d’un ensemble de cartes électroniques mettant en œuvre des composants électroniques
intégrés.
Un API se compose essentiellement de :
 L’unité de traitement (processeur)
 La zone ou l’espace mémoire (RAM)
 Systèmes modulaires d’E/S.
 Bus interne et externe.
 Alimentation.
 Modules de fonctions spécifiques.

7
b.2.1. Présentation organisationnelle :

L’API se présente comme ensemble de blocs fonctionnels (voir figure ci-dessous) s’articulant autour d’un
canal de communication : le bus interne. Généralement, chaque bloc est physiquement réalisé par un module
spécifique.

Fig  : 4 Organisation modulaire


de l’API

Les différents modules de l’API se montent dans une baie contenant le  « fond du panier » (Bus +
Connecteurs). Chaque module possède un bornier de raccordement équipé d’un ensemble de visualisation de l’état
logique de chaque voie (diode électroluminescente).
On distingue de type de raccordement vers l’extérieur :
 Fil à fil.
 « Séries » ou « parallèles ».
b.2.1.1. Processeur :
Dans la pratique, évidemment, le processeur humain est remplacé par un (ou plusieurs) composants
électroniques appelé « microprocesseur ».
Dans un système de traitement le processeur est l’unité fonctionnelle capable d’interpréter et d’exécuter les
instructions du programme.
Dans un API le processeur gère l’ensemble des échanges informationnels tout en assurant :
 La lecture des informations d’entrées.
 L’écriture ou la lecture dans la mémoire de données.
 L’exécution des instructions du programme mis en mémoire.
 La commande
ou l’écriture
des sorties.

Fig  5 : Communication interne de


l’API

b.2.1.2. Mémoire
centrale :
La mémoire centrale est aussi désignée : espace mémoire, c’est l’élément fonctionnel qui peut recevoir,
conserver et restituer des données.
b.2.1.3. Unité centrale :
L’unité centrale est le groupement du processeur et de la mémoire centrale, elle commande l’interprétation
et l’exécution des instructions du programme.

8
b.2.1.4. Interface d’entrées / module
d’entrées :

Transforme les signaux électriques


provenant des capteurs, des boutons poussoirs et
interrupteurs en signaux compréhensibles par
l’API.

Fig  6 : Raccordement des


Entrées de l’API

b.2.1.5. Interface de sorties / module de


sorties :

Transmet aux préactionneurs et aux


organes de dialogue (voyant, alarmes,…) les
ordres de commande et de signalisation
résultant de l’exécution du programme.

Fig  7 : Raccordement des


Sorties de l’API

b.2.1.6. Bus interne et externe :


Le bus interne et externe est le canal de communication entre l’unité centrale et les autres modules de l’API,
permet aussi de communiquer avec d’autre API, imprimantes, calculateurs, consoles de vérification et de
programmation.
b.2.1.7. Module d’alimentation :
Le module d’alimentation génère l’ensemble des tensions nécessaires au bon fonctionnement de
l’automatisme. Il permet l’alimentation des modules de l’API.

+24 V CC

Fig  8 : alimentation des modules de l’API 110 V CA


/ 220 V CA Alimentation +/- 12 V CC

+5 V CC

b.2.1.8. Modules d’extension :


Certains API offre une grande flexibilité et une grande adaptation aux différents SA grâce à leur modularité et
aux modules d’extensions spécialisés.

Fig  9 : API à configuration modulaire

LOGICIEL DE PROGRAMMATION
 Langage liste d’instructions : Un programme liste
d’instructions est constitué d'une série
d’expressions logiques, rédigées sous la forme d’une
séquence d’instructions booléennes.
 Langage schéma à contacts : Un schéma à contacts est une représentation graphique d’une expression
logique.
 Langage Grafcet : Le langage grafcet est constitué d'une succession d'étapes et de transitions.
9
1. Description des langages de programmation
a. Langage schéma à contacts
Les schémas à contacts utilisent la même représentation graphique que celle des circuits de relais en logique
programmée, à ceci près que, dans un schéma à contacts :
 Toutes les entrées sont représentées par des symboles de contacts ( ).
 Toutes les sorties sont représentées par des symboles de bobines ( ).
 Les opérations numériques sont comprises dans le jeu d'instructions graphiques du schéma à contacts.
L'illustration suivante présente un schéma simplifié de câblage de relais en logique programmée, et son équivalent
en langage schéma à contacts.

Un programme en langage schéma à contacts est composé de "réseaux", représentant des ensembles d'instructions
graphiques et apparaissant entre deux barres verticales. Les réseaux sont exécutés de manière séquentielle par
l'automate.

L'ensemble des instructions graphiques représente les fonctions suivantes :


 Entrées/sorties de l'automate (boutons de commande, capteurs, relais, voyants, etc.)
 Fonctions de l'automate (temporisateurs, compteurs, ...)
 Opérations mathématiques et logiques (addition, division, AND, XOR, etc.)
 Opérateurs de comparaison et autres opérations numériques (A<B, A=B, décalage, rotation, etc.)
 Variables internes de l'automate (bits, mots, etc.)
Ces instructions sont disposées graphiquement selon des connexions verticales et horizontales, débouchant
éventuellement sur une ou plusieurs sorties et/ou actions.
Un réseau ne peut pas contenir plus d'un groupe d'instructions liées.
Exemple de réseaux schéma à contacts

Eléments graphiques du langage schéma à contacts

Contacts : Les éléments graphiques des contacts sont programmés dans la zone de test et occupent une cellule (une
ligne sur une colonne).
Bobines Les éléments graphiques des bobines sont programmés dans la zone d'action et occupent une cellule (une
ligne sur une colonne).
Blocs fonction Les éléments graphiques des blocs fonction sont programmés dans la zone de test et occupent quatre
lignes sur deux colonnes (excepté les compteurs rapides (VFC), qui requièrent cinq lignes sur deux colonnes).
Blocs opérations et comparaisons : Les blocs comparaisons sont programmés dans la zone de test et les blocs
opérations, dans la zone d'action.
c. Langage Grafcet

Instructions Grafcet
Le tableau suivant répertorie toutes les instructions et les objets requis pour la programmation d'un graphe Grafcet.

10
Exemples Grafcet :Séquence linéaire

Séquence de divergences :

Séquences simultanées :

11
d. Description de la structure d'un programme Grafcet
Introduction Un programme TwidoSoft Grafcet se déroule en trois phases :
 Pré-traitement
 Traitement séquentiel
 Traitement postérieur
Pré-traitement Le pré-traitement gère les éléments suivants :
 les reprises de l'alimentation ;
 les défauts ;
 les changements du mode de fonctionnement ;
 le pré-positionnement des étapes Grafcet ;
 Logique d'entrée
Le front montant de l’entrée %I0.6 met à 1 le bit %S21. Cela a pour effet de désactiver les étapes actives et d’activer
les étapes initiales.

Le pré-traitement commence à la première ligne du programme et se termine à la première occurrence d'une


instruction "= * =" ou "- * -".
Trois bits système sont dédiés au contrôle du Grafcet : %S21, %S22 et %S23.Chaque bit système est mis à 1 (si
nécessaire) par l'application, lors du prétraitement généralement. La fonction associée est exécutée par le système à
la fin du pré-traitement et le bit système est remis à 0 par le système
Traitement Séquentiel
Le traitement séquentiel est exécuté dans le graphe (instructions représentant le graphe) :
 étapes
 actions associées aux étapes
 transitions
 conditions de transition
Exemple

12
Le traitement séquentiel se termine par l'exécution de l'instruction "= * = POST" ou par la fin du programme.
Traitement postérieur
Le traitement postérieur gère les éléments suivants :
 les commandes du traitement séquentiel pour la régulation des sorties ;
 le verrouillage de sécurité spécifique aux sorties.
Exemple :

Actions associées aux étapes Grafcet


Un programme Grafcet TwidoSoft offre deux modes de programmation des actions associées aux étapes :
 dans la section de traitement postérieur ;
 dans les listes d’instructions ou les réseaux schéma à contacts des étapes mêmes.
Association des actions dans le traitement postérieur
Si des contraintes de sécurité ou de mode d'exécution sont appliquées, il est préférable de programmer les actions
dans la section de traitement postérieur d'une application Grafcet. Vous pouvez utiliser les instructions en langage
liste d’instructions SET et RESET ou activer les bobines d'un programme schéma à contacts pour lancer les étapes
Grafcet (%Xi).
Exemple :

Association d'actions à partir d'une application


Vous pouvez programmer les actions associées aux étapes sous forme de listes d'instructions ou de réseaux schéma
à contacts. Dans ce cas, la liste d’instructions ou le réseau schéma à contacts n'est pas scruté(e), tant que l'étape
n'est pas active.
Ce mode d'utilisation du langage Grafcet est le plus efficace, le plus lisible et le plus facile à gérer.
Exemple :

13
14

Vous aimerez peut-être aussi