LES AUTOMATES PROGRAMMABLES
INDUSTRIELS
I – INTRODUCTION
1. DEFINITION ET HISTORIQUE
Un Automate Programmable Industriel est une machine électronique, programmable
par un personnel non informaticien et destinée à piloter en ambiance industrielle et
en temps réel des procédés automatiques.
Les automates programmables industriels ou A.P.I. comme on les appelle le plus
souvent ou encore Programmable Logic Controller (PLC en anglais), sont apparus
aux Etats-Unis vers 1969 où ils répondaient aux besoins des industries de
l’automobile de développer des chaînes de fabrication automatisées qui pourraient
suivre l’évolution des technologies et des modèles fabriqués.
L’A.P.I. s’est ainsi substitué aux armoires à relais en raison de sa souplesse, mais
aussi parce que dans les automatismes de commande complexe, les coûts de
câblage et de mise au point devenaient trop élevés. Les premiers constructeurs
américains étaient les entreprises Modicon et Allen-Bradley.
2. AVANTAGES DES API:
Les A.P.I. offrent de nombreux avantages par rapport aux dispositifs de commande
câblés, comme :
▪La fiabilité.
▪La simplicité de mise en œuvre (pas de langage de programmation complexe) .
▪La souplesse d’adaptation (système évolutif et modulaire) .
▪La maintenance et le dépannage possible par des techniciens de formation
électromécanique.
▪L’Intégration dans un système de production (implantation aisée). Les A.P.I. ont subit
des améliorations tous les 4 à 7 ans au fur et à mesure de l’apparition des
composants électroniques tels que les microprocesseurs et les microcontrôleur
3. Domaines d'emploi des automates :
On utilise les API dans tous les secteurs industriels pour
la commande des machines (convoyage, emballage...)
ou des chaînes de production (automobile,
agroalimentaire ...) ou il peut également assurer des
fonctions de régulation de processus (métallurgie, chimie
...).
Il est de plus en plus utilisé dans le domaine du bâtiment
(tertiaire et industriel) pour le contrôle du chauffage, de
l'éclairage, de la sécurité ou des alarmes.
4. Nature des informations traitées par l'automate :
Les informations traitées par un API peuvent être de type :
➢ Tout ou rien (T.O.R.) ou logique : l'information ne peut prendre que deux
états (0 ou 1 …). C'est le type d'information délivrée par un détecteur, un
bouton poussoir …
➢ Analogique : l'information est continue et peut prendre une valeur comprise
dans une plage bien déterminée. C'est le type d'information délivrée par un
capteur (pression, température …)
➢ Numérique : l'information est contenue dans des mots codés sous forme
binaire. C'est le type d'information délivrée par un ordinateur ou un module
intelligent.
II. ARCHTECTURE DES API
II. ARCHTECTURE DES API
ASPECT EXTERIEUR :
Les automates peuvent être de type compact ou
modulaire.
Les automates type compact ou micro
automates intègrent le processeur, l'alimentation,
les interfaces d’entrées / sorties. Selon les modèles et
les fabricants, ils peuvent réaliser certaines fonctions
supplémentaires (comptage rapide, E/S analogiques
...) et recevoir des extensions en nombre limité.
Exemples : LOGO de Siemens, ZELIO de Schneider,
S7-200 de Siemens... Ces automates sont de
fonctionnement simple et sont généralement destinés à
la commande de petits automatismes.
Pour les automates type modulaire, le
processeur, l'alimentation et les interfaces d'entrées /
sorties résident dans des unités séparées (modules) et
sont fixées sur un ou plusieurs racks contenant le "fond
de panier" (bus plus connecteurs).
• STRUCTURE D’UN SYSTÈME COMPLET
La figure 4 représente un A.P.I. avec divers périphériques et auxiliaires
qui représentent son environnement.
• STRUCTURE INTERNE DE L’AUTOMATE
L’A.P.I est constitué principalement de
trois parties :
➢Une unité centrale qui est le cerveau
qui se trouve derrière toute prise de
décision logique
➢Des coupleurs d’entrées/sorties qui
assurent la liaison entre l’unité centrale
et le monde extérieur (capteurs, pré
actionneurs, etc…)
➢Des coupleurs de périphériques. Ces
éléments communiquent par un bus
appelé Bus d’entrées/sorties.
1. L’unité centrale ou UC
L’UC est caractérisé par son processeur et sa mémoire centrale .Le rôle de l’UC est
d’exécuter les programmes qui se trouvent dans la mémoire.
a- Le processeur : Il gère le fonctionnement de l’automate programmable et exécute les
instructions du programme au rythme de son horloge. Il réalise toutes les fonctions logiques,
arithmétiques et de traitement numérique (transfert, comptage, temporisation ...). Les
processeurs sont actuellement réalisés par des microprocesseurs. Au début de l’apparition
des API, les processeurs étaient des processeurs câblés (réalisés par des circuits logiques
séparés) ou des processeurs microprogrammés (qui utilisait la logique programmable).
b- la mémoire centrale La mémoire d’un automate comporte une zone programme (ou
mémoire programmes ou utilisateurs), une zone données (ou mémoire données) et une zone
réservée au moniteur ou système d’exploitation qui est le logiciel de gestion de l’A.P.I .
la mémoire programme contient les programmes utilisateurs (à exécuter). Elle est en
technologie RAM sauvegardée par pile ou batterie ou en EPROM ou actuellement en
EEPROM.
2. Les coupleurs d’entrées/sorties
Les coupleurs d’entrées/sorties, appelés aussi interfaces d’entrées/sorties,
sont des cartes électroniques qui assurent la liaison entre l’UC de l’automate
programmable et la Partie Opérative (le processus via les capteurs et les pré-
actionneurs).
Les coupleurs d’entrées reçoivent les signaux des capteurs et des commandes
de l’opérateur (via le pupitre de commande) qu’ils traitent pour les rendre
compatibles avec les caractéristiques internes de l’A.P.I.
Les coupleurs de sorties reçoivent les signaux de l’UC. Ils les amplifient et les
rendent compatibles avec les pré-actionneurs commandés et les contrôles du
pupitre de commande. Pour la plupart des A.P.I.,
les coupleurs sont groupés avec l’UC, mais sont modulaires par carte ou par
rack. Le coupleur accède d’une part au bus d’E/S, d’autre part au bornier qui
se trouve le plus souvent sur la face avant de l’automate. Certains constructeurs
proposent des E/S décentralisées (cartes d'entrées / sorties déportées).
3. Les périphériques et leurs coupleurs
Ils sont divers. Les principaux sont les suivants :
❑ Mémoire de masse
❑ Imprimantes
Ces périphériques sont en général reliés sur la console de programmation et
rarement directement sur l’automate. Leurs interfaces sont classiques en
informatique, ils gèrent une transmission soit série soit parallèle de type : •
RS 232C • USB
❑Autres automates (superviseurs) Leurs liaisons sont de deux types :
• Soit par des ports d’E/S de l’automate.
• Soit par une interface spécialisée appelée module ou cartes de communication
(Ethernet ...) assurant une transmission normalisée à travers des bus de terrain.
4. câblage des entrées / sorties d'un automate:
a. Branchement des Entrées TOR: L'alimentation électrique pour les capteurs
/détecteurs peut être fournie par l'automate (en général 24V continu) ou par
une source extérieure. L’automate dispose généralement d’un commun à toutes
les entrées. Il est possible de câbler à l'automate, des contacts classiques, mais
aussi des capteurs électroniques deux ou trois fils
b. Branchement des sorties
Le principe de raccordement consiste à envoyer un signal électrique vers le pré-
actionneur connecté à la sortie choisie de l'automate dés que l'ordre est émis).
L'alimentation électrique est fournie par une source extérieure à l'automate
programmable. Les sorties comportent généralement un commun pour 3 ou 4
sorties. Cela permet d’alimenter des pré actionneurs de tensions différentes, sans
pour autant effectuer un relayage. Les sorties de l’automate peuvent être à Triac,
à Transistor ou à relais.
5. la console de programmation
La console de programmation est l’outil privilégié de la communication ‘ Homme–Machine’ pour
le développement, la mise au point et, éventuellement, l’exploitation des applications. Le
premier rôle de la console est de transformer le langage de programmation en instructions
exécutables par l’automate. Elle permet lors de la mise au point du programme :
• La simulation pas à pas.
• La détection d’erreur de syntaxe.
• L’introduction, la correction et la modification des programmes (Editeur de textes).
Elle permet sur beaucoup de systèmes la programmation définitive sur EPROM. Pour assurer ces
différentes tâches, la console de programmation peut être connectée à l’A.P.I. (fonctionnement
en ligne) ou non (fonctionnement autonome). La console possède son propre processeur et sa
propre mémoire, c’est l’équivalent d’un micro-ordinateur. La plupart des consoles actuelles sont
d’ailleurs des micro-ordinateurs de commerce (PC équipés du logiciel constructeur spécifique).
III – PRINCIPE DE FONCTIONNEMENT D’UN A.P.I
Lorsque l’on a affaire à un ordinateur l’exécution du programme se fait en général
ligne par ligne et d’une façon asynchrone. Une des caractéristiques de l’automate est
de fonctionner différemment c.à.d de façon cyclique. En effet avant d’exécuter quoi
que ce soit, l’automate lit entièrement son programme ; et une fois l’exécution terminée
recommence les mêmes opérations. On définit alors la notion de cycle et de temps de
cycle (entre 1ms et 30ms environ). Il existe plusieurs types de cycle mais le plus
répondu est le celui représenté ci-contre. Ce cycle comprend 5 phases :
• Phase 1 : Lecture ou Acquisition des entrées: Prise en compte des informations des
modules d’entrées et écriture de leur valeur dans RAM (zone DONNEE).
• Phase 2 : Exécution de le programme ou Traitement des données : Lecture du
programme (située dans la RAM programme) par l’unité de traitement, lecture des
variables (RAM données), traitement et écriture des variables (internes, sorties … )
dans la RAM données.
• Phase 3 : Traitement de toute demande de communication
• Phase 4 : Exécution du test d’auto--diagnostic (Gestion du système Autocontrôle de
l’automate)
• Phase 5 : Ecriture des sorties : Lecture des variables de sorties dans la RAM données
et transfert vers le module de sorties.
IV. LES LANGAGES DE PROGRAMMATION D’UN API:
Un API est programmé à l'aide de langages spécialisés, fournis par son constructeur et utilisables au
travers d'une interface (un logiciel sur PC, un pupitre...).
Ces langages peuvent être classés en 5 grandes familles Norme IEC 61131-3 Les quatres langages
sont :
SFC (« Sequential Function Chart ») : issu du langage GRAFCET, ce langage, de haut niveau, permet
la programmation aisée de tous les procédés séquentiels ;
FBD (« Function Block Diagram », ou schéma par blocs) : ce langage permet de programmer
GRAPHIQUEMENT à l’aide de blocs, représentant des variables, des opérateurs ou des fonctions. Il
permet de manipuler tous les types de variables ;
LD (« Ladder Diagram », ou schéma à relais) : ce langage graphique est essentiellement dédié à la
programmation d’équations booléennes (true/false) ;
ST (« Structured Text » ou texte structuré) : ce langage est un langage textuel de haut niveau. Il
permet la programmation de tout type d’algorithme plus ou moins complexe ; IL (« Instruction List »,
ou liste d’instructions) : ce langage textuel de bas niveau est un langage à une instruction par ligne. Il
peut être comparé au langage assembleur.
1. variables traitées par un automate :
Les APIs traitent plusieurs types de variables et utilisent des adresses spécifiques ou références pour
chacune d’elles :
❑ variables bit ou (T.O.R.) sous forme d’entrées, sorties ou bit internes appelé mémento par certain APIs.
❑variables analogique : sous forme d’entrées, sorties ou internes
❑ variables Numérique: sous forme d’octet, de mots, double mots ou mots flottants.
Exemples d’adressage: • 24 entrées TOR référencées de • 8 entrées analogiques
I1 à I24 référencées de AI1 à AI8
Références de l’automate LOGO! :
LOGO met à la disposition du programmeur • 16 sorties TOR référencées de • 2 sorties analogiques
Q1 à Q16 référencées de AQ1 à AQ2
(version maxi):
• 24 mémentos numériques • 6 mémentos analogiques
référencés de M1 à M24 avec le référencés de AM1 à AM6
M8 est le mémento de démarrage
• 8 bits de registre à décalage
référencés de S1 à S8
l’adressage des entrées/sorties se conformes à la syntaxe suivante :
Entrées : % Ix.y.z
Sorties : % Ox.y.z
Exemple :
% I0.0.5 : % I0.5
% O0.3.4 : %O3.4
1. langage LD ou schema a contacts
➢Le (Ladder Diagram) est une représentation graphique d’équations booléennes combinant des
contacts (en entrée) et des relais (en sortie).
➢Il permet la manipulation de données booléennes, à l’aide de symboles graphiques organisés
dans un diagramme comme les éléments d’un schéma électrique à contacts.
➢Les diagrammes LD sont limités à gauche et à droite par des barres d’alimentation
1. Exemple de programmation LADDER
2- Le langage Booléen (FBD : Function Bloc Diagram)
Ce langage utilise les symboles du logigramme. Il peut être facilement traduit
en langage machine. les symboles les plus utilises sont:
.
2- exemple de programmation (FBD):
3- Le langage GRAFCET (SFC : Sequential Function Chart)
C’est un langage graphique qui permet de tracer directement le schéma
Grafcet de l’automatisme considéré. Dans ce cas, pour plus de facilité, on
construit un Grafcet niveau 3 qui est le même que le niveau 2, mais les
variables d’E/S du niveau 2 sont remplacés par les adresses de l'automate
(appelés références).
3- exemple de programmation de grafcet sur l’API TWIDO de
SCHNEIDER:
4- Le langage mnémonique(IL : Instruction list)
C’est un langage littéral qui utilise le langage d’assemblage, largement utilisé
dans le domaine informatique. Très peu utilisé par les automaticiens.
5- Blocs fonction-Blocs opération
En complément aux possibilités de représentation, les langages de programmation
permettent l’utilisation de blocs fonctions et de blocs opérations. Ces blocs sont des
fonctions préprogrammées, paramétrables, utilisables directement par le
programmeur. Exemple de blocs fonctions : Temporisateur, Compteur