Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
Dans ce chapitre nous allons présenter l’automate programmable industriel en décrivant son
architecture et ses différentes composantes. Cet automate programmable est l’un des appareils de
commande des systèmes de production et d’automatisme les plus utilisés dans l’industrie.
Automate placé dans un procédé industriel, fait partie intégrante de la boucle de réglage. Il a pour
tâche principale de récolter des informations à partir des capteurs via des interfaces d’entrées, de les
traiter et prendre ensuite une décision pour commander les actionneurs avec des signaux via des
interfaces de sorties.
Nous détaillons l’outil de programmation des automates programmables industriels, à savoir, le
TIA PORTAL qui permet la programmation et la simulation des systèmes automatisées avec
différents langages normalisés.
De nombreux constructeurs d’automate programmables existent, la firme allemande SIEMENS
offre une des plus grandes gammes de produits. Notre choix s’est porté sur le CPU S7_314 car c’est
la même série qu’on a au niveau de nos laboratoires de TP
Nous présentons ensuite les différentes phases de configuration de l’automate et la programmation
en LADDER et en GRAFCET des instructions et fonctions de bases à savoir : les temporisateurs,
compteurs, additionneurs….
Objectifs
II.1 Introduction
Un Automate Programmable Industriel (API), (en anglais Programmable Logic Controller ou PLC) est un
appareil de commande à base de microprocesseur destiné principalement pour la commande des processus
industriels. Un API utilise une mémoire programmable pour sauvegarder des données et les instructions d’un
programme afin d’implémenter différents types de fonctions telles que les opérations arithmétiques et
logiques, les comparaisons, les temporisations, les comptages, et les régulateurs analogiques.
Les APIs sont conçus pour être éventuellement manipulés par des
utilisateurs non informaticiens afin de faciliter leur programmation et leur mise en œuvre. Ainsi, les
programmes de commande implantés dans ce genre de systèmes peuvent être développés d’une façon plus
simple en utilisant un ou plusieurs langages de programmation normalisés. Les APIs ont été initialement
introduits dans le but de remplacer les systèmes de commande à base de relais, et actuellement ils sont
devenus omniprésents dans les installations industrielles.
Le premier API, baptisé MODICON 084, a été inventé en 1969 dans l’industrie automobile par la
société Bedford Associates, dans le but de remplacer les circuits de commande électriques à base de relais et
à coût élevé. De nos jours, les APIs deviennent de plus en plus prépondérants surtout dans le domaine
industriel. Parmi les fabricants les plus connus actuellement on peut citer : Allen Bradley, Siemens, ABB,
Schneider Electric, Mitsubishi, General Electric, Omron.
Un API représente la partie commande d’un système automatisé. Il reçoit des données à partir d’entrées
externes (boutons poussoirs, interrupteurs, fins de course, photocellules, détecteurs de seuil, potentiomètres,
etc), traite ces données suivant certaines règles de commande qui sont décrites dans le cahier des charges et
définies dans un programme, et génère des sorties (ordres) vers des préactionneurs ou autres appareils à
commander (contacteurs, distributeurs, électrovannes, appareils de signalisation, variateurs de vitesse,
moteurs, etc). Ces étapes sont répétées, cycle par cycle, tant que l’automate est en mode de marche. Le temps
d’exécution d’un cycle varie typiquement entre 3 ms et 100ms, ce dernier est fonction de la taille et la
complexité du programme, ainsi que le nombre d'entrées/sorties et la puissance de calcul d’unité de
traitement de l’automate.
Programme
Système
Cycle
d’exécution
Les entrées et les sorties d’un API peuvent être de type discret ou analogique, ou alors une
combinaison des deux. Les APIs actuels peuvent gérer une dizaine jusqu’à plusieurs milliers
2
Chapitre III : Automates Programmables Industriels
d’entrées/sorties. Les automates peuvent être classifiés selon le nombre d’entrée/sorties qu’ils peuvent
supporter. On distingue alors les nano-automates (moins de 32 E/S), les micro-automates (jusqu’à 128 E/S)
et les mini-automates (jusqu’à 1024 E/S) et les automates haut de gamme (plus de 1024 E/S).
Les automates destinés à la gestion des fonctions de sécurité dans un système automatisé à complexité
ou à risque élevés sont appelés automates de sécurité. Ils sont caractérisés par une architecture interne
différente de celle des automates standards (redondance des processeurs) et utilisent des logiciels dédiés à la
gestion de la sécurité. Toutefois, les automates de sécurité peuvent également être utilisés pour les fonctions
de commande des processus.
Les APIs ont été initialement utilisés dans le but de remplacer les circuits de commande à base de relais ou
plus généralement en logique câblée. Leurs avantages par rapport à ces circuits peuvent être résumés par les
points suivants :
Flexibilité : le plus grand avantage que présente les APIs c’est de pouvoir être adaptés à une large gamme de
problèmes d’automatisation. En effet, pour modifier le schéma de commande d’un système quelconque,
l’opérateur n’a qu’à modifier les instructions contenues dans le programme de commande. De plus, les
programmes sont faits en utilisant des langages de programmation normalisés et qui sont relativement
simples à maîtriser.
Facilité de mis en œuvre : le programme de l’API peut être transféré de et vers l’automate d’une façon
simple et rapide. Le programme peut également être testé et modifié en cas de besoin et une nouvelle
application peut être reproduite en un temps minimal.
3
Chapitre III : Automates Programmables Industriels
Fonctionnalités intégrées : en plus des fonctions logiques de base, les APIs offrent des fonctions
d’automatisme plus avancées telles que les temporisations, les comptages et les régulateurs PID. Ils peuvent
également intégrer des fonctions spécifiques à certaines applications.
Visualisation et supervision : les APIs permettent de visualiser d’une manière permanente l’état des entrées
et des sorties ainsi que l’état des variables internes du programme. Cette caractéristique permet également de
faciliter les opérations de maintenance logicielle et matérielle. De plus, le dialogue homme-machine peut être
établi à l’aide d’un pupitre opérateur qui permet de superviser toutes les parties du système. Le dialogue est
encore facilité grâce à l’emploi d’images, de synoptiques, de graphes, etc.
Gain en coût et en espace : les APIs apportent un gain considérable en matière de coût et d’espace en
réduisant le nombre de pièces mécaniques et/ou électroniques à utiliser.
Robustesse et fiabilité : les APIs sont des appareils robustes et fiables qui résistent aux perturbations
externes telles que les vibrations, les poussières, la température, l’humidité et le bruit.
Introduction
La gamme SIMATIC S7 comprend des produits matériels et logiciels qui permettent aux
utilisateurs de réaliser des projets d’automatisation. Le choix des produits dépend du type et de la
complexité du problème traité. Cette gamme est répartie en deux grandes familles :
Automates modulaires : ils peuvent être adaptés aux applications désirées grâce à l’utilisation de
plusieurs modules d’entrées/sorties, de fonction, de communication et d’autres. Les modèles les
plus connus sont S7-300, S7-400, S7-1200 et S7-1500.
4
Chapitre III : Automates Programmables Industriels
Contrôleurs sur base PC : ils utilisent des logiciels basés sur le système d’exploitation Windows
pour accomplir les tâches de commande et de supervision. Parmi ces contrôleurs, on trouve le
logiciel WinCC, l’automate S7-mEC et les PC industriels.
Figure 4 : Exemples de contrôleurs sur base PC : WinAC RTX (droite), l’automate S7-mEC et le PC
industriel IPC847D (gauche).
Automate Caractéristiques
Automate modulaire pour les tâches d’entrée et milieu de gamme
Mémoire de travail max : 2 Mo
S7-300 Temps de traitement min par bit : 4 ns
Plage d’adresse max pour les E/S : 8192/8192 octets
Nombre max de racks d’extension : 4 (jusqu’à 8 modules/rack)
Commande locale : les entrées/sorties d’un système à commander ainsi que l’automate et son pupitre
opérateur sont tous situés à proximité les uns des autres. Cette structure de commande permet d’optimiser les
performances du système de commande et de faciliter les opérations de maintenance. Toutefois, elle
nécessite un déplacement du personnel d’exploitation ou une présence permanente aux niveaux des pupitres
pour la supervision de ces systèmes.
Système 1
Système 2
Commande centralisée : elle permet de commander plusieurs systèmes par l’intermédiaire d’un seul
automate programmable ou par plusieurs automates situés dans un seul centre de commande. Ce type de
commande permet d’améliorer la supervision du système global ainsi que les temps de réponses aux
contingences. En revanche, les performances diminuent et la conception des programmes de commande
devient plus difficile.
API Pupitre
Système 1 Système 2
Commande distribuée : elle combine les deux types précédents. Dans ce cas, plusieurs automates sont
utilisés pour commander localement un système ou un groupe de systèmes. De plus, ces automates sont
reliés à un centre de commande via un réseau de communication. Les ordres de commande sont générés
localement au niveau de chaque système ou sous-système, mais le centre de commande peut superviser le
fonctionnement de tous ces systèmes, c’est-à-dire la visualisation de leurs états et même générer des ordres
de commande à leurs niveaux
Interface de
API Pupitre
communication
Interface de Interface de
communication communication
Système 1 Système 2
Un API est constitué généralement d’un microprocesseur, d’un terminal de programmation, d’une
mémoire, d’interfaces d’entrée/sorties, d’une interface de communication et d’une alimentation.
Terminal de Appareils
programmation communicants
Mémoire Communication
Interfaces Interfaces
d’entrée CPU de sortie
Alimentation
Les APIs peuvent être classifiés selon leur structure externe en deux
types ; les APIs compacts et les APIs modulaires. Le premier type concerne généralement les automates
programmables de petite taille et intègre dans un seul boitier le processeur, l’alimentation et les
entrées/sorties. Ce type d’automates possède un nombre limité d’entrées/sorties (généralement 6, 8, 12 ou 24
entrées et 4, 8 ou 16 sorties) et donc ne peut être utilisé que pour des petites applications.
7
Chapitre III : Automates Programmables Industriels
Les APIs modulaires, peuvent être configurés selon le besoin et sont utilisés pour des applications plus
compliquées. Dans ce type d’automate, le processeur, l’alimentation et les interfaces d’entrée/sortie sont
disposés dans des modules séparés et sont fixés sur un ou plusieurs racks qui assurent la liaison électrique
entre les différents modules de l’automate (alimentation et communication avec la CPU). Généralement il
comporte 4, 8, 12 ou 16 emplacements et chaque emplacement peut supporter 8, 16, 32 ou 64 entrées/sorties.
Ce type d’automate est le plus adapté aux applications industrielles.
III.2.1 L’alimentation
Son rôle est d’adapter les tensions d’alimentation de l’API pour pouvoir être utilisées par le processeur et
les modules d’entrées/sorties. Elle peut être interne à l’automate ou externe. La tensions d’entrée des
alimentations est généralement 220 VAC et celle de sortie 24 VDC. Le choix du module d’alimentation
dépend surtout du nombre et du type des entrées/sorties connectées à l’automate.
III.2.2 Le processeur
Le processeur représente le cerveau de l’API, il interprète les entrées et génère des sorties en se basant
sur les règles de commande définies dans le programme de l’automate, et en exploitant les données stockées
dans la mémoire. La CPU permet aussi le transfert du programme entre la mémoire de l’automate et le
terminal de programmation. Un automate peut avoir plus d’un processeur, ce qui lui permet d’augmenter la
vitesse d’exécution des différentes opérations de contrôle et de communication.
Figure 11: Exemple d’un module de CPU associé à des modules d’entrée/sorties (S7-315C-2 DP).
8
Chapitre III : Automates Programmables Industriels
Il est utilisé pour l’édition et le test des programmes ainsi que leur transfert de et vers la mémoire de
l’automate. L’automate peut être programmé en utilisant un terminal de programmation portable mais le
moyen le plus facile et le plus courant reste le PC. Ce dernier peut être connecté à l’automate en utilisant
l’interface Simatic S7 PC USB adapter pour pouvoir charger la configuration de l’automate et le programme
ou une liaison via un câble Ethernet.
III.2.4 La mémoire
Elle est utilisée pour sauvegarder le programme de l’automate ainsi que toutes les données nécessaires
pour l’exécution de ce programme telles que les valeurs des entrées/sorties et des variables intermédiaires.
Les mémoires utilisées dans les automates sont généralement de type ROM, RAM, EPROM et EEPROM :
ROM : ce type de mémoire contient généralement les programmes et les données imposés par le
constructeur de l’automate et qui ne peuvent pas être modifiés par les utilisateurs.
RAM : permet de sauvegarder les données utilisées par les programmes telles que les états des
entrées/sorties, les temporisations et les compteurs. Ce type de mémoire peut être rendu non volatile par
l'adjonction d'une batterie de secours.
EPROM : permet de sauvegarder des programmes utilisateurs d’une façon permanente dont la modification
nécessite une source de lumière UV et une procédure lente.
EEPROM : est utilisée pour sauvegarder les programmes utilisateurs d’une façon permanente mais qui
peuvent être modifiés facilement à l’aide d’un terminal de programmation (par exemple un PC).
Il existe trois zones mémoires
9
Chapitre III : Automates Programmables Industriels
Sorties L1
Entrées
L1
S1
L1
S2 0
0
1
1
2
2
3
3
4
4
5 KM1 H1
5
6
N COM 6 N
7
7
Figure 13: Exemple de câblage des entrées/sorties à courant alternatif d’un automate.
Les modules de sortie peuvent être de type continu ou alternatif (à transistor, à triac ou à relais). Les
sorties à transistor (PNP ou NPN) sont utilisées pour des charges à courant continu, et les sorties à triacs pour
les charges à courant alternatif, tandis que les sorties à relais peuvent être utilisées indifféremment pour des
charges à courant continu ou alternatif.
Les sorties à relais peuvent supporter des courants plus élevés que les autres mais leur commutation est plus
lente et leur durée de vie est plus courte.
Si des entrées ou des sorties d’un automate utilisent chacune deux bornes de câblage, ces dernières sont dites
des entrées/sorties séparées ou isolées. Dans certains modules, on peut avoir une borne commune pour
chaque groupe 4, 8 ou 16 points (entrée ou sortie).
L’utilisation des entrées/sorties isolées, bien que rarement adoptée, permet de connecter différents types
et sources de tension au même module, ce qui permet de réduire dans certains cas le nombre de modules
nécessaires.
Les entrées/sorties analogiques peuvent recevoir ou émettre des données continues sous forme de courant
ou de tension de/vers des appareils externes tels quel les potentiomètres, les capteurs analogiques, les
variateurs de vitesse et les servomoteurs
10
Chapitre III : Automates Programmables Industriels
L1 L1
S1
V+
V+
S2
KM1 H1
V N V
Les entrées/sorties d’un automate sont repérées dans un programme par des adresses
alphanumériques uniques. Dans le cas des automates compacts, l’adresse d’une variable quelconque
est établie simplement à l’aide d’un chiffre préfixé par une lettre qui indique le type de la variable
(entrée ou sortie). Dans le cas d’un automate modulaire, l’adressage diffère d’un constructeur à un
autre. Des exemples d’adressage pour les automates S7-300 de Siemens, le M340 de Schneider et le
sont donnés ci-après
S7-300 : l’adressage des entrées/sorties de l’automate S7-300 de Siemens se fait en spécifiant le type
de la variable (I : entrée, Q : sortie) suivi par un chiffre qui indique l’adresse de l’octet dans le rack,
suivi d’un point, et d’un chiffre indiquant le numéro du bit dans l’octet (0 à 7).
M340 : l’adressage se fait en spécifiant le type de la variable (I : entrée, Q : sortie) suivi par un chiffre
qui indique le numéro du rack, le numéro de l’emplacement du module et enfin le numéro du bit.
.
11
Chapitre III : Automates Programmables Industriels
Mémentos : Les mémentos sont utilisés pour les opérations internes à l’automate pour
lesquelles l’émissions d’un signale n’est pas nécessaire. Les mémentos sont des bistables
servant à mémoriser les états logiques 0 ou 1.
Chaque automate programmable dispose d’un grand nombre de mémentos (S7-300 dispose
de 2048 bits de mémentos). On programme ces derniers comme des sorties. En cas de panne
de la tension de service, le contenue sauvegardé dans les mémentos est perdu.
Les APIs peuvent avoir plusieurs modes de fonctionnement, dont les deux modes de base
sont les modes Programme (Prog) et Exécution (Run). Le nombre de ces modes varie selon le
constructeur. Les modes de fonctionnement les plus utilisés sont présentés ci-après.
III.4.1 Le mode Programme (Prog) : il est utilisé pour éditer, transférer un programme de
ou vers l’automate. Quand ce dernier est mis en mode Porg, l’exécution du programme est
arrêtée et toutes les sorties sont désactivées.
III.4.2 Le mode Exécution (Run) : est utilisé pour lancer les cycles d’exécution du
programme, à savoir la lecture des entrées, l’exécution du programme et la mise à jour des
sorties.
III.4.3 Le mode de test (Test) : il est utilisé pour tester le déroulement du programme selon
les états des entrées mais sans émettre des sorties. Ce mode permet de vérifier la consistance
12
Chapitre III : Automates Programmables Industriels
du programme avant de laisser l’automate agir réellement sur la machine. Le test peut être
effectué cycle par cycle, ou par en fonctionnement continu.
Il existe plusieurs langages qui peuvent être utilisés pour programmer les APIs. La norme
CEI 61131-3 établie en 1993 définit les cinq langages de programmation standard pour les
APIs : le langage Ladder ou Ladder Diagram (LD), Instruction List (IL), Sequential Function
Chart (SFC), Structured Text (ST) et le Function Block Diagram (FBD).
III.5.1 Ladder Diagram : appelé aussi langage à contacts, c’est un langage graphique qui
ressemble aux schémas électriques à contacts. Il est facile à appréhender de la part d’un non-
informaticien. Ce langage demeure le langage le plus utilisé pour la programmation des APIs.
Ces symboles sont organisés en réseau reliés à gauche et à droite à des barres d’alimentation.
III.5.2 Principe :
Un programme Ladder se lit de haut en bas et l'évaluation des valeurs se fait de gauche à
droite. Les valeurs correspondent en fait, si on le compare à un schéma électrique, à la
présence ou non d'un potentiel électrique à chaque nœud de connexion.
En effet, le Ladder est basé sur le principe d’une alimentation en tension représentée par deux
traits verticaux reliée horizontalement par des bobines, des contacts et des blocs fonctionnels,
d'où le nom 'Ladder' (échelle).
13
Chapitre III : Automates Programmables Industriels
(c)
14