Les Automates
Programmables industriels
[Link]
MSC BEKHSIS– UFR TMI - IAP Février 2016
Les automates programmables industriels
MSC BEKHSIS– UFR TMI - IAP Février 2016 2
Introduction générale
L’automate programmable industriel « API » ou Programmable
Logic Controller « PLC » est aujourd’hui le constituant le plus
répandu des automatismes.
On le trouve non seulement dans tous les secteurs de l’industrie,
mais aussi dans les services (gestion de parkings et d’accès à des
bâtiments) et dans l’agriculture (composition et délivrance de
rations alimentaires dans les élevages).
Il répond aux besoins d’adaptation et de flexibilité des activités
économiques actuelles.
MSC BEKHSIS– UFR TMI - IAP Février 2016 3
Introduction générale
Cette place majeure soulève bien sûr un certain nombre de
questions. C’est à ces questions que nous allons essayer de
répondre dans ce cours, en mettant en évidence:
Son rôle dans l’industrie ;
ses caractéristiques propres, matérielles et logicielles ;
sa capacité à s’intégrer dans un ensemble plus large, et donc à
répondre aux besoins d’un système automatisé de production.
MSC BEKHSIS– UFR TMI - IAP Février 2016 4
historique
Avant : utilisation de relais électromagnétiques et de systèmes
pneumatiques pour la réalisation des parties commandes ⇒logique câblée
Inconvénients : cher, pas de flexibilité, pas de communication possible.
Solution : utilisation de systèmes à base de microprocesseurs permettant
une modification facile et pratique des systèmes automatisés ⇒logique
programmée.
Pour ces raisons, Richard E. Morley (Bedford association) a inventé le
premier automate comme un projet de consultation pour General Electric
en 1968. Bedford est actuellement nommé Modicon et est un fournisseur
d'automates.
MSC BEKHSIS– UFR TMI - IAP Février 2016 5
Evolution
Dans les années 80 les automates deviennent de plus en plus gros:
De plus en plus d’entrées/sorties
Un automate commande plusieurs machines.
→ Architecture centralisée
Dans les années 90, on utilise des automates plus petits reliés entre
eux par des réseaux.
→Architecture décentralisée
De nos jour, les entrées /sorties sont aussi décentralisées
L’automate possède de plus en plus de ports de communication et
de moins en moins d’entrées sorties en local.
MSC BEKHSIS– UFR TMI - IAP Février 2016 6
Les Systèmes Automatisés
Un système automatisé gère de manière autonome un ou des cycles
de travail préétabli qui se décomposent en cycles ou séquences.
Il permet de remplacer l'intervention de l'homme pour certaines
tâches pénibles, répétitives ou dangereuses, dans plusieurs
domaines.
Les automates programmables conviennent parfaitement pour tout
autre type d'activité exigeant du réflexe plutôt que de la réflexion.
MSC BEKHSIS– UFR TMI - IAP Février 2016 7
Les Systèmes Automatisés
Un système automatisé est un ensemble d’éléments en interaction, et
organisés dans un but précis : agir sur une matière d’œuvre afin de
lui donner une valeur ajoutée. CONTRAINTES
Matière
d’œuvre
SYSTEME +
Matière
AUTOMATISE Valeur
d’œuvre
ajoutée
Influences externes: poussières, température, humidité, vibrations,
parasites électromagnétiques;
Personnel: mise en œuvre du matériel, le dépannage , possibilité de
modifier le système en cours de fonctionnement;
Autres: financières, normes de sécurité, matériel évolutif, etc.
MSC BEKHSIS– UFR TMI - IAP Février 2016 8
Structure d’un système automatisé
Autres parties ENERGIE
commandes
Sorties
Preactionneurs Actionneurs
COMMUNICATION Ordres
Chaine d’action
Traitement
des
Informations
Chaine d’acquisition
PUPITRE DE Partie
Entrées
COMMANDE ET Capteurs Mécanique
DE Détecteurs (Exécution
Comptes rendus
SIGNALISATIO du travail)
N
PARTIE RELATION PARTIE COMMANDE PARTIE OPERATIVE
MSC BEKHSIS– UFR TMI - IAP Février 2016 9
Structure d’un système automatisé
Partie opérative: elle agit sur la matière d’œuvre afin de lui
donner sa valeur ajoutée.
Les actionneurs (moteurs, vérins, vannes) agissent sur la partie
mécanique du système qui agit à son tour sur la matière d’œuvre.
Convertissent l’énergie qu’ils reçoivent des pré-actionneurs en une
autre énergie utilisée par les effecteurs.
Les préactionneurs permettent de commander les actionneurs à
partir des ordres émis par la partie commande. Ils assurent le
transfert d’énergie entre la source de puissance (réseau électrique,
pneumatique …) et les actionneurs. Exemple : contacteur,
distributeur, variateur …
Les capteurs / détecteurs informent la partie commande de
l’exécution du travail (l’état de la partie opérative. Exemple :
détecteur
MSC de TMI
BEKHSIS– UFR position,
- IAP de température, de pression,
Février 2016de débit, etc. 10
Structure d’un système automatisé
Partie commande
Elle donne les ordres de fonctionnement à la partie opérative. Celle-ci
est représentée par le bloc de traitement des informations.
1. Elle reçoit les consignes du pupitre de commande (opérateur) et les
informations de la partie opérative transmises par les capteurs /
détecteurs.
2. En fonction de ces consignes et de son programme de gestion des
tâches, implanté dans un automate programmable elle va
commander les préactionneurs.
3. renvoyer des informations au pupitre de signalisation ou à d'autres
systèmes de commande et/ou de supervision en utilisant un réseau
et un protocole de communication.
MSC BEKHSIS– UFR TMI - IAP Février 2016 11
Structure d’un système automatisé
Partie relation
Composé des pupitres de commande et de signalisation, il permet à
l’opérateur de commander le système (marche/arrêt, départ cycle..)
Il permet également de visualiser les différents états du système à
l’aide de voyants, de terminal de dialogue ou d’interface homme-
machine (IHM).
MSC BEKHSIS– UFR TMI - IAP Février 2016 12
Objectifs de l’automatisation
La recherche de coûts plus bas;
Augmenter la sécurité et améliorer les conditions de travail;
La réalisation d’opérations impossibles à contrôler manuellement;
Proposer aux travailleurs des tâches valorisantes;
Superviser les installations et les machines;
la simplicité car avec un même matériel de commande, il devient
possible de traiter une variété d'applications qui, autrement,
auraient chaque fois requis des matériels différents;
la flexibilité.
MSC BEKHSIS– UFR TMI - IAP Février 2016 13
Domaines d’application
Commande de machines: machines outil à commande numérique,
convoyage, stockage, emballage, machines de chantier, engin de
levage;
Automatisme du bâtiment: chauffage, climatisation, sanitaire,
distribution électrique, éclairage, sécurité, alarmes techniques;
Régulation de processus: chimie, pétrochimie, pharmaceutique;
Traitement des eaux: thermique, fours, métallurgie;
Contrôle de systèmes: production et distribution d’énergie
(électricité, pétrole, gaz), transports (chemin de fer, routier,
marine).
MSC BEKHSIS– UFR TMI - IAP Février 2016 14
Définition de l’automate
un appareil électronique de traitement de l’information, il est
construit autour d’un processeur numérique, spécifique ou non, et
doté de possibilités d’échanges avec d’autres processeurs ;
Il fonctionne grâce à une protection adaptée dans des conditions
industrielles et peut être relié à des nombreux signaux physiques ;
Effectue des fonctions d’automatisme programmées telles que:
logique combinatoire, séquentiel, temporisation, comptage, calculs
numériques, asservissement, régulation.
Commande, mesure et contrôle au moyen de signaux d’entrées et
de sorties toutes machines et processus, en environnement industriel.
MSC BEKHSIS– UFR TMI - IAP Février 2016 15
Les fonctions de l’automate
L’automate doit remplir:
un rôle de commande: où il est un composant d’automatisme,
élaborant des actions, suivant un algorithmique approprié, à partir
des informations que lui fournissent des détecteurs (Tout ou Rien)
ou des capteurs (analogiques ou numériques) ;
un rôle de communication:
avec des opérateurs humains : c’est le dialogue d’exploitation,
avec d’autres processeurs, hiérarchiquement supérieurs (calculateur
de gestion de production), égaux (autres automates intervenant
dans la même chaîne) ou inférieurs (instruments intelligents).
MSC BEKHSIS– UFR TMI - IAP Février 2016 16
Caractéristiques techniques
La structure externe : compacte ou modulaire;
La tension d’alimentation : 220, 240….en courant alternatif;
La taille de sa mémoire : 20koctet, 128koctet……;
Temps de scrutation;
Sauvegarde (EPROM, EEPROM, pile, …);
Nombre d’entrées / sorties;
Modules complémentaires (analogique, communication,..);
Langages de programmation.
MSC BEKHSIS– UFR TMI - IAP Février 2016 17
Nature des informations traitées par
l'automate
Les informations peuvent être de type :
Tout ou rien (T.O.R.) : l'information ne peut prendre que deux états
(vrai/faux, 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 ou bien hexadécimale. C'est le type d'information
délivrée par un ordinateur ou un module intelligent
MSC BEKHSIS– UFR TMI - IAP Février 2016 18
Marques des automates
Siemens ( S7-200,S7-300,S7-400,S7-1200,LOGO…)
Schneider électrique (TSX 17/37/57, TSX micro ,premium…)
Rockwell Automation (micrologix1200/1400,SLC-500,SLC5000..)
ABB (AC500,AC800C,S500…)
Omron (ZEN ,CPM 1A/2A/2C,CS1,CJ1…)
Mitsubishi (MELSEC FX1S/FX1N ,série L ,système Q…)
Yokugawa (FCN,FCN-RTU,FCJ…)
MSC BEKHSIS– UFR TMI - IAP Février 2016 19
Marques des automates
MSC BEKHSIS– UFR TMI - IAP Février 2016 20
Critères de choix d’un automate
Le nombre et la nature des E/S ;
La nature du traitement (temporisation, comptage, ...) ;
Les moyens de dialogue et le langage de programmation ;
La communication avec les autres systèmes ;
La facilité de l’exploitation et de la maintenance ;
Les moyens de sauvegarde du programme ;
La fiabilité, robustesse, immunité aux parasites ;
La documentation, le service après vente, durée de la
garantie, la formation ;
Les capacités de traitement du processeur (vitesse, données,
opérations, temps réel...).
MSC BEKHSIS– UFR TMI - IAP Février 2016 21
Conditions d’emploi d‘un API
en température, 5 à 40 °C pour un équipement fermé, même
ventilé, 5 à 55 °C pour un équipement ouvert ;
en humidité, 50 à 95 % d’humidité relative, sans condensation ;
en alimentation électrique
des tensions variant au plus de –15 à +20 % en amplitude pour les
alimentations continues, de –10 à +15 % pour les alternatives, de
–5 à +5 % en fréquence, toujours par rapport aux valeurs
nominales,
les coupures d’alimentation ne doivent pas dépasser 10 ms (à 50
Hz) avec au moins 1 s entre 2 coupures.
MSC BEKHSIS– UFR TMI - IAP Février 2016 22
Structure des automates
- structure matérielle
1. Aspect extérieur : les automates peuvent être de type :
Compact (boitier unique), come:
• LOGO de Siemens;
• ZELIO de Schneider;
• MELSEC FX3U de Mitsubishi;
• MILLENIUM de Crouzet, etc.
Modulaire/rack, come:
• S7-300 de Siemens;
• PLC-5 de Allen-Bradley;
• TSX 37 de Schnieder, etc.
MSC BEKHSIS– UFR TMI - IAP Février 2016 23
Structure des automates
-structure matérielle
2. Aspect intérieur
Périphérique de
programmation
Mémoire du
programme et Interface de
des données communication
Interfaces Interfaces
Processeur
d’entrée de sortie
Alimentation
MSC BEKHSIS– UFR TMI - IAP Février 2016 24
Structure des automates
-structure matérielle
3. L’architecture interne
L’unité centrale de traitement (CPU: Central Processing
Unit) ou le processeur joue le rôle de « cerveau » de l’automate,
il gère les relations entre la zone mémoire et les interfaces, il
contient: TSX P57
2634M
• L’unité arithmétique et logique, responsable de la manipulation Télémécanique
des données et l’exécution des opérations arithmétiques et
logiques,
• Unité de commande, gère le minutage des opérations.
CPU 412-1 MPI/DP
siemens
MSC BEKHSIS– UFR TMI - IAP Février 2016 25
Structure des automates
- structure matérielle
3. L’architecture interne
Module d'alimentation: Le module d’alimentation
transforme l’énergie externe (tension alternative)
provenant du réseau en la mettant en forme afin de
fournir aux différents modules de l’API les niveaux de
tension nécessaires à leur bon fonctionnement.
+24 Vcc
110/220/240 Vac Module +/-12 Vcc
d’alimentation
+5 Vcc
MSC BEKHSIS– UFR TMI - IAP Février 2016 26
Structure des automates
- structure matérielle
3. L’architecture interne
Mémoires: elles se composent de:
La mémoire morte (ROM ou PROM) représente un espace de
stockage permanent pour le système d'exploitation et les données
figées utilisées par le CPU;
La mémoire reprogrammable (EPROM ou EEPROM) est
utilisée pour stocker de manière permanente le programme
d’utilisateur;
La mémoire vive(RAM) est utilisée pour stocker les données et
les programmes lors du fonctionnement.
Cette dernière est généralement secourue par pile ou batterie.
On peut, en règle générale, augmenter la capacité mémoire de l’API
par adjonction de barrettes de mémoires.
MSC BEKHSIS– UFR TMI - IAP Février 2016 27
Structure des automates
- structure matérielle
3. L’architecture interne
Interfaces d'entrées
Permet de recevoir les informations du processus ou du pupitre
et de mettre en forme (filtrage, ...) ce signal, tout en l'isolant
électriquement (optocouplage).
Il existe sur le marché des modèles de cartes d’entrée à 4, 8,
16, 32 ou 64 voies.
Les modules d’entrés peuvent être :
Logique (tout ou rien) adapté à des interrupteurs de fin de
course, des capteurs de proximité…
Analogique adaptées à des capteurs de température, de
pression, débit, vitesse ou autres variables continues.
MSC BEKHSIS– UFR TMI - IAP Février 2016 28
Structure des automates
- structure matérielle
3. L’architecture interne
Interfaces de sorties
Permet de commander les divers préactionneurs et éléments de
signalisation du processus. Elles traduisent les commandes du
processeur aux signaux industriels tout en assurant l'isolement
électrique.
Les interfaces de sorties peuvent être :
Logiques (tout ou rien) adaptées aux lampes, aux contacteurs,
voyants, aux systèmes de verrouillage de porte,etc.
Analogiques adaptées aux moteurs (AC et DC), aux vannes
continues, etc.
MSC BEKHSIS– UFR TMI - IAP Février 2016 29
Structure des automates
- structure matérielle
3. L’architecture interne
Les bus
Le bus (interne) est un ensemble de pistes conductrices (pistes en
cuivre) par lequel s’acheminent une information binaire (suite de 0
ou 1) sur chaque fil, on distingue :
Le bus de données transporte les données utilisées dans les
traitements effectués par le CPU.
Le bus d'adresses transporte les adresses des emplacements
mémoire que le CPU utilise pour accéder aux données enregistrées
dans ces emplacements.
Le bus de commandes transporte les signaux utilisés par le CPU
pour le contrôle.
MSC BEKHSIS– UFR TMI - IAP Février 2016 30
Structure des automates
- structure matérielle
3. L’architecture interne
Autres composants spécifiques
Cartes de comptage rapide;
Cartes de communication;
Les boîtiers de test;
Cartes de régulation PID;
Cartes d‘E/S déportées;
Cartes d’E/S spécialisées…
MSC BEKHSIS– UFR TMI - IAP Février 2016 31
PRINCIPES D'ORGANISATION
L'accès à l'automate d'un signal de mesure ou de commande met
en jeu une cascade de trois éléments :
Le bornier qui assure un découplage mécanique entre le câblage
venant du processus et l'automate;
Les circuits de conditionnement de signaux qui réalisent les
adaptations, isolations, filtrages, conversions requis pour arriver
finalement à des signaux compatibles avec l'électronique de
l'automate;
L'interface entre ces signaux et le BUS de l'automate.
MSC BEKHSIS– UFR TMI - IAP Février 2016 32
PRINCIPES D'ORGANISATION
Les types d’organisation
1. Solution intégrée (câblage fil à fil)
Les trois éléments sont regroupés sur une même carte de circuit
imprimé, directement greffée sur le BUS de l'automate.
Il s'agit d'une solution que l'on rencontre plutôt dans les petits
systèmes.
Elle présente l'inconvénient d'amener les signaux bruts du processus
au voisinage du BUS et de nécessiter un câblage point-à-point entre
l'automate et les capteurs/actuateurs.
MSC BEKHSIS– UFR TMI - IAP Février 2016 33
PRINCIPES D'ORGANISATION
Les types d’organisation
1. Solution intégrée (câblage fil à fil)
MSC BEKHSIS– UFR TMI - IAP Février 2016 34
PRINCIPES D'ORGANISATION
Les types d’organisation
2. Périphéries déportées
L'utilisation de réseaux de terrain permet de décentraliser les cartes
d'entrées/sorties dans des modules comportant leur propre BUS et
leur propre alimentation.
On peut placer ces modules au voisinage des processus ou parties de
processus contrôlés, ce qui conduit à une réduction substantielle du
câblage.
MSC BEKHSIS– UFR TMI - IAP Février 2016 35
PRINCIPES D'ORGANISATION
Les types d’organisation
2. Périphéries déportées
MSC BEKHSIS– UFR TMI - IAP Février 2016 36
PRINCIPES D'ORGANISATION
Les types d’organisation
3. Réseaux de capteurs et actuateurs
Les capteurs et actuateurs sont directement greffés sur un réseau de
capteurs/actuateurs relié à l'automate. Le conditionnement des
signaux se fait au sein même des capteurs et actuateurs.
La réduction du câblage est évidemment maximale dans ce cas. On
ne peut cependant utiliser que des capteurs et actuateurs
spécialement conçus pour le réseau considéré ce qui rend la solution
moins universelle que les précédentes cas.
MSC BEKHSIS– UFR TMI - IAP Février 2016 37
PRINCIPES D'ORGANISATION
Les types d’organisation
3. Réseaux de capteurs et actuateurs
MSC BEKHSIS– UFR TMI - IAP Février 2016 38
PRINCIPES D'ORGANISATION
Câblage des entrées/sorties
Le principe de raccordement consiste à envoyer un signal électrique
vers l'entrée choisie sur l'automate dés que l'information est
présente.
L'alimentation électrique peut être fourni par l'automate (en général
24V continu) ou par une source extérieure. Un automate
programmable peut être à logique positive ou négative.
Logique positive: le commun interne des entrées est relié au 0V.
Logique négative: le commun interne des entrées est relié au 24V
MSC BEKHSIS– UFR TMI - IAP Février 2016 39
PRINCIPES D'ORGANISATION
Câblage des entrées/sorties
MSC BEKHSIS– UFR TMI - IAP Février 2016 40
Structure des automates
- structure fonctionnelle
Comme tout système à microprocesseur, les automates
fonctionnent sur la base d’un programme qui lui définit les taches à
exécuter.
La structure logicielle qui assure le fonctionnement d’un automate
se compose de deux parties :
Système d’exploitation
Programme utilisateur
MSC BEKHSIS– UFR TMI - IAP Février 2016 41
Structure des automates
- structure fonctionnelle
Système d’exploitation :continu dans chaque CPU, organise toutes les
fonctions et procédures dans la CPU qui ne sont pas liées à une tache
d’automatisation spécifique, ses tâches sont :
Le déroulement du démarrage et de redémarrage;
L’actualisation de la mémoire image des entrées et des sorties;
L’appel au programme utilisateur;
L’enregistrement des alarmes et l’appel de programme de gestion des alarmes;
La détection et le traitement d’erreurs;
La gestion des zones de mémoire;
La communication avec les consoles (ou PC) de programmation et d’autres
partenaires de communication. Février 2016
MSC BEKHSIS– UFR TMI - IAP 42
Structure des automates
- structure fonctionnelle
Programme utilisateur: le programme utilisateur, développé par
l’automaticien, assure la gestion de l’installation industrielle (partie
opérative) pour la quelle il est destiné.
Le développement de tels programmes nécessite des logiciels spéciaux
qui assurent le codage des instructions. Chaque fabriquant fournit des
logiciels (outil de développement) adaptés à ses propres produits. Ces
logiciels implantés sur PC (ou console de programmation) sont utilisés
par l’automaticien comme outil pour développer des programmes
spécifiques selon l’application souhaité. Une fois mis au point ce
programme est alors transféré vers l’API par liaison RS-232.
MSC BEKHSIS– UFR TMI - IAP Février 2016 43
Structure des automates
- structure fonctionnelle
Quelques exemples de logiciels de développement par fabricant
Fabricants Logiciels de développement
Fanuc Automation -Versa Max
-Cimplicity
Groupe schneider-electric : -PL7 Pro
Telemacanique, Modicon, Square D -PL7 Juniors
Siemens Step-7
Triconex Tristation
Hallen Bradley RSLogix 5000
Ces logiciels dont le rôle ne se limite pas seulement à la programmation
mais aussi à la supervision, réglages et maintenance du procès une fois
en marche.
MSC BEKHSIS– UFR TMI - IAP Février 2016 44
Fonctionnement de l’automate
Le cycle de fonctionnement de l’API est composé de 4 étapes:
Traitement interne : effectue des opérations de contrôle et met à jour
certains paramètres systèmes (détection des passages en RUN / STOP)
Lecture des entrées : lit les entrées et les recopie dans la mémoire
image des entrées.
Exécution du programme : exécute le programme instruction par
instruction et écrit les sorties dans la mémoire image des sorties.
Ecriture des sorties : bascule les différentes sorties aux positions
définies dans la mémoire image des sorties.
MSC BEKHSIS– UFR TMI - IAP Février 2016 45
Fonctionnement de l’automate
auto test
module d’entrées
Lire les cartes intelligentes
Lire et memoriser les
entrées
Execution du program :
Zone Image Entrée
Instruction1
Instruction2 Memoire & UC
.
instruction n Zone Image sortie
module de sorties
M
écrire (metre à jour) les
V
sorties
dialogue console ou PC
MSC BEKHSIS– UFR TMI - IAP Février 2016 46
Fonctionnement de l’automate
En général un automate exécute son programme de manière cyclique :
Lecture des entrées
Traitement du programme
Écriture des sorties
La durée du cycle dépend de l’automate et de la complexité du programme (sa
longueur et les traitements demandés). Cette durée va de quelques
millisecondes à quelques dizaines de millisecondes. Elle est cependant limitée
par une sécurité (le « chien de garde » ou « watch dog ») qui interrompt le
cycle et déclenche une procédure d’alerte lorsque le temps de traitement est
jugé trop long.
MSC BEKHSIS– UFR TMI - IAP Février 2016 47
Fonctionnement de l’automate
Un programme d’automate est un ensemble de taches qui peuvent être:
Tache cyclique
Les cycles s’enchaînent les uns après les autres, une fois terminée
l’ensemble des instructions, il recommence immédiatement à partir
du début
MSC BEKHSIS– UFR TMI - IAP Février 2016 48
Fonctionnement de l’automate
Un programme d’automate est un ensemble de taches qui peuvent être:
Tâche périodique
Dans ce type les tâches doivent s’effectuer avec une périodicité précise,
par exemple chaque 0.1 seconde.
Tâche événementielle
Ce sont des taches qui se déclenchent par un événement précis.
Le traitement de programme cyclique peut être interrompu par des
événements déclencheurs, comme les alarmes. En présence d’un tel
événement, le bloc en cours d’exécution est interrompu à la fin de
l’instruction et le bloc d’organisation associé à l’événement déclencheur
est traité. Le traitement du programme cyclique reprend ensuite au
point d’interruption.
MSC BEKHSIS– UFR TMI - IAP Février 2016 49
Fonctionnement de l’automate
Tâche événementielle
MSC BEKHSIS– UFR TMI - IAP Février 2016 50
Fonctionnement de l’automate
La tâche rapide est alors périodique pour laisser le temps à la tâche «
maître » de s'exécuter (la moins prioritaire). La tâche événementielle
est prioritaire sur les autres tâches.
MSC BEKHSIS– UFR TMI - IAP Février 2016 51
Fonctionnement de l’automate
Le programme utilisateur peut s’écrire en entier en une seule liste (programmation
linéaire) où les instructions s’exécutent les unes après les autres jusqu’à la fin.
Comme peut être subdivisé en plusieurs sous programmes (programmation
structuré) où chacun de ces sous programmes est développé pour exécuter une
tache ou fonction spécifique. Ces sous programmes sont géré par le programme
principale (tache maitre) et d’en faire appel autant de fois qu’il est nécessaire.
MSC BEKHSIS– UFR TMI - IAP Février 2016 52
Fonctionnement de l’automate
un automate est en permanence en activité dès sa mise sous tension.
en mode « stop », l ’automate programmable reste actif, seule l ’exécution des
tâches (logique, grafcet) est suspendue. les fonctions réseau restent actives
(échange avec les autres automates, surveillances des E/S ...)
le traitement est exécuté selon les instructions définies par le programmeur
L’organisation du cycle devient plus complexe lorsque l’on se trouve en présence
d’instructions de sauts particulières.
Si le cycle n’est pas effectué dans une période définie par l’automate, exemple d’un
programme ou l’on engendre une boucle infinie involontaire, une alarme est
déclenchée par l’intermédiaire du « chien de garde » qui est une temporisation
exécutée au début de chaque cycle.
Le temps effectué par le processeur pour exécuter un programme de 1Kmots
(=1024 mots), est appelé période d’un automate programmable. Ce temps varie
d’un modèle à un autre et ne se différencie qu’à la milliseconde.
MSC BEKHSIS– UFR TMI - IAP Février 2016 53
Programmation des APIs
MSC BEKHSIS– UFR TMI - IAP Février 2016 54
La norme CEI 61131
La norme CEI 61131 est une norme industrielle de la Commission
électrotechnique internationale (CEI), elle applique aux automates
programmables.
L’objectif de cette norme est de répondre à la complexité croissante
des systèmes de contrôle commande et à la diversité des automates
incompatibles entre eux.
MSC BEKHSIS– UFR TMI - IAP Février 2016 55
La norme CEI 61131
Les cinq parties de la CEI 61131:
1ère partie (CEI 61131-1): Informations générales (octobre 1992).
2ème partie (CEI 61131-2):Spécifications et essais des équipements
(1992).
3ème partie (CEI 61131-3): Langages de programmation (mars 1993).
4ème partie (CEI 61131-4): Guide pour l’utilisateur (mars 1995).
5ème partie (CEI 61131-5): Communications (août 1999).
MSC BEKHSIS– UFR TMI - IAP Février 2016 56
La norme CEI 61131-3
La norme CEI 61131-3 répond à une attente des utilisateurs concernant
les langages de programmation des APIs :
harmonisation des vocabulaires utilisés,
Définition les notions et concepts de base s’appuyant sur une norme,
syntaxe et sémantique des langages les plus indépendants possibles
d’un constructeur d’API donné,
faciliter la mise en œuvre de principes tels que structuration et
modularité des programmes,
Possibilité de définir ses propres blocs fonctionnels.
MSC BEKHSIS– UFR TMI - IAP Février 2016 57
La norme CEI 61131-3
Pour assurer ses objectifs, la norme est comporte :
Les objectifs
Les principes de structuration
Les éléments communs
Les fonctions
Les blocs de fonction
Le programme
Les langages de programmation
MSC BEKHSIS– UFR TMI - IAP Février 2016 58
La norme CEI 61131-3
Les éléments communs aux différents langages:
Les identificateurs : arret, retour,
Les mots clés : function, end_function_block,
Les commentaires : (*production normale*),
Les libellés :+234, 16#E0, TIME#2.7s,
Les types de données,
Les variables.
MSC BEKHSIS– UFR TMI - IAP Février 2016 59
La norme CEI 61131-3
Exemples de types de données
BOOL Booléen 1 bit
BYTE Chaîne de bits de longueur 8 bits
WORD Mot 16 bits
DWORD Mot double 32 bits
LWORD Mot long 64 bits
INT Entier 16 bits
UINT Entier non signé 16 bits
UDINT Entier double non signé 32 bits
MSC BEKHSIS– UFR TMI - IAP Février 2016 60
La norme CEI 61131-3
Les variables
PREFIXE SIGNIFICATION
I Emplacement d'entrée
Q Emplacement de sortie
M Emplacement de mémoire
K Emplacement de constantes
S Emplacement de système
X Taille d'un seul bit
Aucun Taille d'un seul bit
B Taille d'un octet (8 bits)
W Taille d'un mot (16 bits)
D Taille d'un double mot (32 bits)
L Taille d'un mot long (64 bits)
MSC BEKHSIS– UFR TMI - IAP Février 2016 61
La norme CEI 61131-3
Présentation des variables:
La représentation directe d'une variable à un seul élément est assurée
par l’enchaînement du signe "%",d'un préfixe d'emplacement, d'un
préfixe de taille et d'un ou plusieurs entiers non signés séparés par le
symbole "."
Exemples : %IX2.0, %Q3.2, %MD2.
MSC BEKHSIS– UFR TMI - IAP Février 2016 62
La norme CEI 61131-3
Adressage des objets de modules d’entrées/sorties
% I ou Q X, W ou D x . i
symbole Type d’objet Format : Position N° voie
I : entrée X=booléen X=numéro de I=0 à
Q : sortie W=mot position dans le bac 127
D=double mot
Exemples :
%I1.6 : Bit de la voie d’entrée n°6 du module d’entrées TOR placé en position 1
dans le bac.
%IW3.5 : Mot de la voie d’entrée n° 5 du module d’entrées analogiques placé en
position 3.
%Q2.8 : Bit de la voie de sortie n° 8 du module de sortie TOR placé en position 2.
%QW4.3 : Mot de la voie de sortie n° 3 du module de sortie analogique placé en
position 4.
MSC BEKHSIS– UFR TMI - IAP Février 2016 63
La norme CEI 61131-3
Adressage des objets et des mots
% M, K ou S B, W, D ou F i
symbole Type d’objet Format : Numéro
M : interne B=octet
K : constant W=mot
S : système D=double mot
F= flottant
Examples
%MB5 : Mot interne variable de 8 bits, numéro 5.
%KW12 : Mot constant de 16 bits, numéro 12.
%M8 : Bit interne, numéro 8.
%S6 : Bit système, son état change toutes les secondes.
%SW49 à %SW53 : Mots systèmes contenant la date et l’heure courante en
BCD.
MSC BEKHSIS– UFR TMI - IAP Février 2016 64
La norme CEI 61131-3
Adressage d’un bit dans mot ou double mot
mot :x j
Position
J=0 à15
Rang du bit dans le mot/double mot
Exemples :
%MW10:X4 : Bit n° 4 du mot interne %MW10 de 16 bits.
%QW5.1:X10 : Bit n° 10 du mot de la voie 1 du module de
sortie analogique placé en position 5.
%SW60:X13 : Bit du mot système diagnostic automate. A l’état
1 indique le mode Run de l'automate.
MSC BEKHSIS– UFR TMI - IAP Février 2016 65
La norme CEI 61131-3
Adressage de tableaux (objet du type tableau) Tableaux de bits
Les tableaux de bits sont des suites d’objets bits adjacents de même
type et de longueur définie :L
Exemple : %M10 :6 %M10 %M11 %M12 %M13 %M14 %M15
Tableaux de mots
Les tableaux de mots sont des suites d’objets mots adjacents de même
type et de longueur définie :L %KW10 (16 bits)
%KW11 (16 bits)
Exemple : %KW10 :6
%KW12 (16 bits)
%KW13 (16 bits)
%KW14 (16 bits)
MSC BEKHSIS– UFR TMI - IAP %KW15 (16Février
bits) 2016 66
La norme CEI 61131-3
Objets spéciaux :
Il existe d’autre type d’objet utilisé par le programme comme :
• %Xi : représente une tape dans un grafcet.
• %Li : Etiquette (ou label) qui permet de repérer un réseau ou rang
dans un programme.
• %TMi.V : mot représentant la valeur courante d’une temporisation
• %TMi.Q : bit indiquant la fin d’une temporisation.
• %Ci.P : mot représentant la valeur de présélection du bloc fonction
compteur-décompteur.
• %Ci.F : bit de sortie indiquant un débordement du bloc fonction
compteur-décompteur.
MSC BEKHSIS– UFR TMI - IAP Février 2016 67
La norme CEI 61131-3
Les langages normalisées
IEC 61131-3 langages
de programmation
Textuel Graphiques
Sequential Function
Instruction Structured Ladder -
function block
-set text diagram
chart diagram
MSC BEKHSIS– UFR TMI - IAP Février 2016 68
Langages de programmation
MSC BEKHSIS– UFR TMI - IAP Février 2016 69
Liste d'instructions (IL)
Langage textuel de même nature que l’assembleur (programmation des
microcontrôleurs).Très peu utilisé par les automaticiens.
Example: a ∧ (b ∨ (c ∧ ¯d)) = e LD A
AND (B
OR (C
ANDN (D
)
)
)
ST E
MSC BEKHSIS– UFR TMI - IAP Février 2016 70
Langage à contacts (LD)
Langage graphique développé pour les électriciens. Il utilise les symboles
tels que :contacts, relais et blocs fonctionnels et s'organise en réseaux
(labels).C'est le plus utilisé.
Example: a ∧ (b ∨ (c ∧ ¯d)) = e
I/0 I/1 O/0
a = I/0
|| || () b = I/1
…
I/2 I/3
|| |/|
MSC BEKHSIS– UFR TMI - IAP Février 2016 71
Blocs Fonctionnels (FBD)
Langage graphique où des fonctions sont représentées par des rectangles
avec les entrées à gauche et les sorties à droites. Les blocs sont
programmés (bibliothèque) ou programmables. Utilisé par les
automaticiens.
Example: a ∧ (b ∨ (c ∧ ¯d)) = e
c
¯d AND
b OR
e
a AND
MSC BEKHSIS– UFR TMI - IAP Février 2016 72
Texte structuré (ST)
Langage littéral proche au langages de haut niveau comme C, Pascal
Example: a ∧ (b ∨ (c ∧ ¯d)) = e.
e := a AND (b OR (C ANDN d));
MSC BEKHSIS– UFR TMI - IAP Février 2016 73
GRAFCET (SFC)
Le GRAFCET, langage de spécification, est utilisé par certains
constructeurs d'automate (Schneider, Siemens). Il permet une
programmation aisée des systèmes séquentiels tout en facilitant la
mise au point des programmes ainsi que le dépannage des systèmes.
On peut également traduire un grafcet en langage en contacts et
l'implanter sur tout type d'automate.
MSC BEKHSIS– UFR TMI - IAP Février 2016 74
Graphe Fonctionnel de
Commande Etape-Transition
(Grafcet)
MSC BEKHSIS– UFR TMI - IAP Février 2016 75
Définition
Le GRAFCET (GRAphe Fonctionnel de Commande par Etapes
et Transitions) ou SFC (Sequential Fonction Chart) représente de
façon symbolique et graphique le fonctionnement d’un automatisme.
Cela permet une meilleure compréhension de l’automatisme par tous
les intervenants.
Le GRAFCET utilise pour décrire les états successifs pris par le système
en fonction du temps trois symboles graphiques fondamentaux :
les étapes,
les liaisons orientées,
Les transitions.
MSC BEKHSIS– UFR TMI - IAP Février 2016 76
Les éléments du GRAFCET
1. Les étapes: L’étape symbolise un état ou une partie de l’état du
système. L’étape possède deux états possibles : active représentée
par un jeton dans l’étape ou inactive.
Etape initiale: elle représente le système à l’état de repos initial. Elle
est activée au début du cycle.
Etape : A chaque étape est associée une action ou plusieurs, c’est à
dire un ordre vers la partie opérative ou vers d’autres grafcets.
1 2 3
Étape initiale étape inactive étape active
MSC BEKHSIS– UFR TMI - IAP Février 2016 77
Les éléments du GRAFCET
Remarque : selon sa puissance (capacité mémoire et rapidité
d’exécution), chaque type d’automate supporte un SFC avec un
nombre maximum d’étapes :
Par exemple :
Le TSX 37-10 de télémécanique supporte au maximum 96 étapes.
Le TSX 57 peut supporter jusqu'à 250 étapes.
2. Les actions : description des tâches à effectuer lorsqu’une étape est
active.
Example: 2 Moteur marche
MSC BEKHSIS– UFR TMI - IAP Février 2016 78
Les éléments du GRAFCET
3. Transition: traduit le passage d’une étape à une autre
4. Les liaisons: relient les étapes entre elles. Toujours de haut en bas,
sinon mettre une flèche.
5. La réceptivité : est la condition qui autorise une transition. elle est
symbolisée par une barre horizontale sur un trait de liaison verticale
portant un numéro (facultatif) à droite
Etape précédente
11
Liaison
N° a. (b+c) Réceptivité
Transition
12
Etape suivante
MSC BEKHSIS– UFR TMI - IAP Février 2016 79
Les éléments du GRAFCET
Exemple1 : soit un système, simple, constitué d’un moteur avec un
bouton de mise en marche et un bouton de mise à l’arrêt.
Le moteur peut avoir deux états : état d’arrêt ou état de marche
Le passage d’un état à un autre est enclenché par une opération de mise
en marche et de mise à l’arrêt.
1 Mise en marche
2
Arrêt Marche
Mise à l’arrêt
MSC BEKHSIS– UFR TMI - IAP Février 2016 80
Les éléments du GRAFCET
Exemple1
Du point de vue SFC :
Les deux états 1 & 2 sont appelés étapes.
Les opérations de mise en marche et mise à l’arrêt sont appelés
transitions. Attente/arrêt
1
1 Mise en marche
2 Moteur marche
2 Mise à l’arrêt
MSC BEKHSIS– UFR TMI - IAP Février 2016 81
Règles d’évolution d’un SFC
Règle 1 : (initialisation)
Il existe toujours au moins une étape active lors du lancement de
l’automatisme. Ces étapes activées lors du lancement sont nommées
“ÉTAPES INITIALES”.
Règle 2: (validation)
Une transition est valide lorsque toutes les étapes immédiatement
précédentes sont actives.
Elle ne pourra être franchie que lorsque qu’elle est validée et que la
réceptivité associée est vraie.
MSC BEKHSIS– UFR TMI - IAP Février 2016 82
Règles d’évolution d’un SFC
Règle 3 : (franchissement)
Le franchissement d'une transition entraîne l'activation de TOUTES les
étapes immédiatement suivante et la désactivation de TOUTES les
étapes immédiatement précédentes (TOUTES se limitant à 1 s'il n'y a
pas de double barre).
MSC BEKHSIS– UFR TMI - IAP Février 2016 83
Règles d’évolution d’un SFC
Règle 4 : (évolutions simultanées)
Plusieurs transitions simultanément franchissables sont simultanément
franchies
MSC BEKHSIS– UFR TMI - IAP Février 2016 84
Règles d’évolution d’un SFC
Règle 5 : (La cohérence)
Si, au cours du fonctionnement, une même étape doit être désactivée ou
activée simultanément, elle reste active.
MSC BEKHSIS– UFR TMI - IAP Février 2016 85
Règles d’évolution d’un SFC
Exemple2 :
Supposons un chariot pouvant avancer (A) ou reculer (R) sur un rail limité
par deux capteurs G et D. Quand on appuie sur le bouton DEPART, on
avance jusqu’en D puis on revient.
On désire que le système fonctionne comme suit :
« Attendre jusqu'à l'appui de DEPART, avancer jusqu'en D, reculer
jusqu'en G, attendre à nouveau DEPART et recommencer. On suppose
le chariot initialement en G (sinon faire un cycle l'amenant en G). »
MSC BEKHSIS– UFR TMI - IAP Février 2016 86
Règles d’évolution d’un SFC
Exemple 3 :
Soit un chariot pouvant se déplace vers la droite D ou vers la gauche G.
Le parcourt est limité par deux capteurs de positions (G du côté
gauche et D du coté droit). On dispose d’un bouton M pour la mise en
marche. On désire que le système fonctionne comme suit :
Initialement le chariot est à l’arrêt
On appuie sur le bouton de marche le chariot se déplace vers la droite
Change de sens quand il atteint le capteur D
S’arrête et attend un nouveau départ pour recommencer
MSC BEKHSIS– UFR TMI - IAP Février 2016 87
Règles d’évolution d’un SFC
Exemple 4:
Après l’ordre de départ cycle le chariot part jusque b, revient en c,
repart en b puis rentre en a.
[Link]
a c b
MSC BEKHSIS– UFR TMI - IAP Février 2016 88
Configurations courantes
Divergence OU
Si 1 active et si a seul, alors
désactivation de 1 et activation de 1
2, 3 inchangé.
a b
Si a et b puis 1 active alors 2 3
désactivation 1, activation 2 et 3
quel que soit leur état précédent.
MSC BEKHSIS– UFR TMI - IAP Février 2016 89
Configurations courantes
Divergence ET
si 1 active et si a, alors 1
désactivation de1 et activation de a
2 et 3.
2 3
MSC BEKHSIS– UFR TMI - IAP Février 2016 90
Configurations courantes
Convergence OU
Si 1 active et a sans b, alors 2 1
activation de 3 et désactivation de
b a
1, 2 reste inchangé
Si 1 et 2 et a et b alors 3 seule
3
active
MSC BEKHSIS– UFR TMI - IAP Février 2016 91
Configurations courantes
Convergence ET
Si 1 active seule et a alors aucun
2 1
changement.
Si 1 et 2 et a, alors activation de 3 a
et désactivation de 1 et 2. 3
MSC BEKHSIS– UFR TMI - IAP Février 2016 92
Configurations courantes
Saut d’étapes:
1
Permet de sauter plusieurs étapes a a
2
en fonction des conditions
d’évolution. 3
4
Reprise d’étapes:
2
Permet de recommencer plusieurs
fois une même séquence 2
3
b
b
4
MSC BEKHSIS– UFR TMI - IAP Février 2016 93
Configurations courantes
Exercise:
Soit deux chariots C1 et C2, après un appui sur départ cycle ([Link]) les
deux chariots partent pour un aller-retour. Un nouveau départ cycle
ne peut se faire que si les 2 chariots sont à gauche.
g : capteur « position gauche » d : capteur « position droite »
G : action « aller à gauche » D : action « aller à droite »
[Link]
C1 G1 D1
g1
d1
C2
G2 D2
g2 d2
MSC BEKHSIS– UFR TMI - IAP Février 2016 94
Configurations courantes
Solution1
MSC BEKHSIS– UFR TMI - IAP Février 2016 95
Configurations courantes
Solution2
MSC BEKHSIS– UFR TMI - IAP Février 2016 96
Configurations courantes
Exercise:
On consider le system qui fonctionne comme suit: une 1er impulsion sur
le bouton B1 fait monter la charge qui une fois en haut se dirige vers la
droite, arrivée à droite tout s’arrête pour laisser un opérateur décharger
la [Link] fois la palette déchargée, l’opérateur appuie sur bouton
B2 et refais partir la palette vers la gauche. Une fois à gauche, la
palette redescend et s’immobilise en bas pour être de nouveau chargée
et le cycle recommence
Gauche Droite
Haut B2
B1
Bas
MSC BEKHSIS– UFR TMI - IAP Février 2016 97
Configurations courantes
Exercise:
Un dispositif automatique destiné
À trier des caisses de 2 tailles différentes
se compose d’un tapis amenant les caisses,
de 3 pousoirs et de 2 tapis d’évacuation.
Le systeme fonctionne comme suit:
Le pousoir 1 pousse les petits caisses devant
le pousoir 2 qui à son tour, les transfer sur le tapis 2, alors que les
grandes caisses sont poussées devant le pousoir 3, ce dernier les
évacuant sur le tapis 3, pour effectuer la selection des caisses, un
dispositif de detection placé devant le pousoir 1 permet de
reconnaitre sans ambiguité le type de caisses qui se presente.
MSC BEKHSIS– UFR TMI - IAP Février 2016 98
Configurations courantes
MSC BEKHSIS– UFR TMI - IAP Février 2016 99
Langage A Contact (LADDER)
MSC BEKHSIS– UFR TMI - IAP Février 2016 10
Définition
Le langage à contact est adapté à la programmation de traitements
logiques, il utilise le schéma développé, où la fonction ET est
représenté par des contacts en série et la fonction OU par des
contacts en parallèle.
L’avantage de ce langage graphique réside dans le fait qu’il utilise
des symboles très proches de ceux utilisés dans les schémas
électriques à contact (schéma à relais).
En milieu industriel, ce type de langage permet une adoption facile
d’un automate programmable par des utilisateurs de tout niveau,
en particulier par des techniciens d’entretient comme il facilite les
opérations
MSC deTMI
BEKHSIS– UFR maintenance.
- IAP Février 2016 10
Structure d’un programme LADDER
(modèle schneider)
Dessiné entre deux barres de potentiel, un ensemble de lignes
(réseaux). Un réseau est un ensemble d'éléments graphiques reliés
entre eux par des connexions horizontales et verticales, ces
éléments représentent:
Les entrées/sorties de l'automate (boutons-poussoirs, détecteurs,
relais…).
Des fonctions d'automatismes (temporisateurs, compteurs...).
Des opérations arithmétiques et logiques et des opérations de
transfert.
Les variables internes de l'automate.
MSC BEKHSIS– UFR TMI - IAP Février 2016 10
Structure d’un programme LADDER
(modèle schneider)
Ces réseaux sont organisés en sections et chaque section doit
contenir au maximum 7 lignes et 11 colonnes.
Zone de test Zone d’action
Le sens de circulation du courant s'établit de la barre de potentiel
gauche vers la barre de potentiel droite.
END
MSC BEKHSIS– UFR TMI - IAP Février 2016 10
Représentation des éléments principaux
(modèle schneider)
MSC BEKHSIS– UFR TMI - IAP Février 2016 10
Structures de base
ET OU NON
Exemple: Z=(A.B+C).D
MSC BEKHSIS– UFR TMI - IAP Février 2016 10
Structures de base
Mémorisation (RS)
Front montant
Front descendent
MSC BEKHSIS– UFR TMI - IAP Février 2016 10
Structures de base
Temporisations
TON
TOF
TP
MSC BEKHSIS– UFR TMI - IAP Février 2016 10
Structure d’un programme LADDER
(modèle schneider)
Exemple:
MSC BEKHSIS– UFR TMI - IAP Février 2016 10
Exercise
There are 3 groups participating in the quiz
game: pupils, high school students and
Professors. If they want to get the chance of
Answering the question from the host, they
must press the answer button on their table first. Other groups’ pressing will be
invalid if any group gets the chance successfully
There are 2 answer buttons for the pupil group and professor group and 1
answer button for the high school student group. In order to give preferential
treatment to the pupil group, Y0 will be ON if any one of X0 or X1 is pressed.
However, in order to limit the professor group,
Y2 will be ON when X3 and X4 are pressed at the same time. For the high
school student group, Y1 will be ON when X2 is pressed.
If the host presses X5 (Reset button), Y0, Y1 and Y2 will be OFF.
MSC BEKHSIS– UFR TMI - IAP Février 2016 10