Vous êtes sur la page 1sur 35

Université de Tlemcen

Faculté de Technologie
Département de GEE

Cours API – Part III:


Programmation des API (1 ère

partie)
M2 Instrumentation Electronique
Par : BRIXI NIGASSA Mohammed El Amine

11/11/2023 Cours sur les automates programmables industriels (API) 1


Plan du cours
• Langages de programmation des API

• Langage Ladder

• Langage logigramme (FBD)

• Exercice

11/11/2023 Cours sur les automates programmables industriels (API) 2


I. Langages de programmation des API
• Il existe plusieurs langages de programmation pouvant être utilisé pour programmer les API.

Langages de programmation
des API

Function block Sequential function


Ladder (LD)
diagram (FBD) Instruction list (IL) chart (SFC) Structured text (ST)
(Contact)
(Logigramme) (Grafcet)

Figure 1 : Principaux langages de programmation des API

11/11/2023 Cours sur les automates programmables industriels (API) 3


Ladder (LD)

11/11/2023 Cours sur les automates programmables industriels (API) 4


II. Le langage Ladder (LD ou contact)

• Pourquoi a-t-on opté pour ce type de langage ?

• Il existe plusieurs langages de programmation connus, comme le langage C, Pascal, Fortran, etc…
Ces langages imposent aux ingénieurs désirant les utiliser d’avoir de bonnes compétences en
programmation.

• Le langage Ladder a été justement inventé pour palier à ce problème. Il est destinés à être utilisé
par des ingénieurs dont les aptitudes en programmation sont modestes.

• Ce langage a été adopté par plusieurs fabricants d’API. Néanmoins, chacun a essayé de
développer sa propre version du langage Ladder.

• Publication d’un standard pour le langage Ladder en 1993 (Standard IEC 61131-3).

11/11/2023 Cours sur les automates programmables industriels (API) 5


II. Le langage Ladder (LD) :
II.1 Présentation et fonctionnement

(a) (b)

Figure 2 : (a) Représentation d’un circuit électrique. (b) Représentation en Ladder (Diagramme Ladder)

11/11/2023 Cours sur les automates programmables industriels (API) 6


II. Le langage Ladder (LD) :
II.1 Présentation et fonctionnement
 Dans la représentation en circuit électronique traditionnel, les schémas montrent l’emplacement
physique des composants et la manière dont ils sont connectés entre eux.

 Dans la représentation en Ladder, l’accent est mis plus sur la façon dont le contrôle d’un
processus est réalisé. A aucun moment, on cherche à donner une représentation des
emplacement physique des composants.

 Le langage Ladder consiste en deux lignes verticales représentant les lignes d’alimentations
appelée « power rails ».

 Les composants sont connectés entre eux par le biais de lignes horizontales appelée aussi
« rungs » (ou bien « réseau » dans le cas de Tia Portal).

11/11/2023 Cours sur les automates programmables industriels (API) 7


II. Le langage Ladder (LD) :
II.1 Présentation et fonctionnement
 Dans le langage Ladder, certaines conventions sont adoptés pour la programmation :

1. Les lignes verticales représentent les lignes d’alimentation entre lesquelles les composants
sont connectés.

2. Par convention, le passage du courant se fait de la ligne d’alimentation verticale gauche


vers celle de droite à travers la ligne horizontale (rung) ( voir Figure 3).

3. Chaque ligne du langage Ladder représente une opération de contrôle d’un processus
donné.

4. Lorsque le programme Ladder se compose de plusieurs réseaux ou rungs, l’exécution du


programme Ladder s’effectue de gauche à droite en partant du haut vers le bas (Figure 3).

11/11/2023 Cours sur les automates programmables industriels (API) 8


II. Le langage Ladder (LD) :
II.1 Présentation et fonctionnement

Figure 3 : Fonctionnement du diagramme Ladder


11/11/2023 Cours sur les automates programmables industriels (API) 9
II. Le langage Ladder (LD)
II.1 Présentation et fonctionnement

5. Le premier réseau est scanné de gauche à droite. Lorsque le scan de ce réseau est terminé, l’API
passe à la lecture du deuxième réseau toujours en partant de gauche à droite. Cette opération
est répétée N fois, N étant le nombre de réseau, jusqu’à arriver au réseau final. Ensuite, l’API
revient au début du programme pour réexécuter le programme et ce tant qu’on est dans le
mode « Run » de l’API, c’est ce que nous avons appelé cycle d’exécution.

6. Chaque réseau démarre par une ou plusieurs entrées et doit se terminer au moins par une
sortie. Le terme entrée (input) ici signifie une action de contrôle, comme par exemple actionner
un interrupteur. Le terme sortie (output) signifie quant à lui le dispositif connecté à la sortie de
l’API, tel qu’un moteur par exemple.

11/11/2023 Cours sur les automates programmables industriels (API) 10


II. Le langage Ladder (LD)
II.1 Présentation et fonctionnement
7. Les sorties ne sont pas mises à jours immédiatement, mais les états de ces dernières sont
mémorisés en mémoire. À la fin du programme (cycle d’exécution), les sorties sont alors toutes
mises à jours.

8. Un composant peut apparaître autant de fois que nécessaire, dans un ou plusieurs réseaux,
tout dépends du processus et du problème à traiter. Par exemple, un interrupteur peut
contrôler le démarrage d’un moteur et l’allumage d’une lampe, dans ce cas, le même contact
(Nom et adresse) sera repris pour actionner les deux sorties.

9. Chaque composant du langage Ladder est identifié par son Nom et adresse. La notation ou la
syntaxe dépends du fabricant de l’API. Dans le cas des API Siemens par exemple, l’adressage des
entrées sorties a été défini lors du cours précédent.

11/11/2023 Cours sur les automates programmables industriels (API) 11


II. Le langage Ladder (LD)
II.2 Composants et symboles du Ladder
• Les composants et symboles du langage Ladder ont été établis par le standard IEC 61131-3.

Figure 4 : Composants et symboles du Ladder (standard IEC 61131-3)


11/11/2023 Cours sur les automates programmables industriels (API) 12
II. Le langage Ladder (LD)
II.2 Composants et symboles du Ladder
• Contact normalement ouvert (à fermeture) : lorsqu’une action est appliquée sur un interrupteur
représenté par ce contact en Ladder, l’état de ce dernier passe de 0 à 1 et par conséquent, la
sortie devient 1.

• Contact normalement fermé (à ouverture) : lorsqu’une action est appliquée sur un interrupteur
représenté par ce contact, l’état de ce dernier passe de 1 à 0, donc la sortie qui était à 1 au départ
passe à 0.

Repos Action Repos Action


0 1 1 0

Figure 5 : Etat des contacts normalement ouvert et normalement fermé au repos et après action.
11/11/2023 Cours sur les automates programmables industriels (API) 13
II. Le langage Ladder (LD)
II.3 Adressage
• L’adressage des entrées sorties dans les API dépends du fabricant de l’automate. La figure 6 qui
suit permet de donner le type d’adressage de quelques principaux fabricants d’API.

Figure 6 : Notation des adresses pour des API : (a) Mitsubishi, (b) Siemens, (c) Allen-Bradley et (d)
11/11/2023
Telemecanique
Cours sur les automates programmables industriels (API) 14
II. Le langage Ladder (LD)
II.4 Fonctions logiques
• Lors de la programmation d’un API en langage Ladder, nous rencontrons souvent des situations ou
une condition d’initialisation ou mise en marche nécessite une combinaison d’actions. Ces
combinaisons d’actions apparaissent dans le langage Ladder sous forme de fonctions logiques de
bases telles que nous les connaissons en logique combinatoire.

• Les fonctions logiques dont il est question sont :


1. And
2. Or
3. Not
4. Nand
5. Nor
6. XOR
11/11/2023 Cours sur les automates programmables industriels (API) 15
II. Le langage Ladder (LD)
II.4 Fonctions logiques : La fonction AND
Cette fonction est utile lorsque vous avez deux contacts en entrée par exemple qui doivent
impérativement être tous les deux fermés pour que la sortie soit mise à 1 (figure 7).

Sortie=0 Sortie=1

Figure 7 : (a) Circuit électrique en AND. (b) Porte logique AND


11/11/2023 Cours sur les automates programmables industriels (API) 16
II. Le langage Ladder (LD)
II.4 Fonctions logiques : La fonction AND
Une connexion série entre deux contacts (ou plus) normalement ouverts permet de réaliser un
programme Ladder en porte logique AND .

Entrées Sortie
A B
0 0 0
0 1 0
1 0 0
1 1 1
Figure 8 : Programme Ladder avec fonction logique AND. Table de vérité de la porte AND.

11/11/2023 Cours sur les automates programmables industriels (API) 17


II. Le langage Ladder (LD)
II.4 Fonctions logiques : La fonction OR
Cette fonction est utile lorsque vous avez deux contacts en entrée par exemple et dont l’un des
deux doit au moins être fermé pour que la sortie soit mise à 1 (figure 9).

Sortie=0
Sortie=1

(a) (b)
Sortie=1

Figure 9 : (a) Circuit électrique en OR. (b) Porte logique OR


11/11/2023 Cours sur les automates programmables industriels (API) 18
II. Le langage Ladder (LD)
II.4 Fonctions logiques : La fonction OR
Une connexion parallèle entre deux contacts (ou plus) normalement ouverts permet de réaliser un
programme Ladder en porte logique OR.

Entrées Sortie
A B
0 0 0
0 1 1
1 0 1
1 1 1
Table de vérité de la porte OR.
Figure 10 : Programme Ladder avec fonction logique OR.

11/11/2023 Cours sur les automates programmables industriels (API) 19


II. Le langage Ladder (LD)
II.4 Fonctions logiques : La fonction NOT
Cette fonction est utile lorsqu’une sortie est contrôlée par un contact normalement fermé.

Sortie=1 Sortie=0

(a) (b)

Figure 11 : (a) Circuit électrique avec un contact normalement fermé. (b) Porte Not.

11/11/2023 Cours sur les automates programmables industriels (API) 20


II. Le langage Ladder (LD)
II.4 Fonctions logiques : La fonction NOT

Entrée Sortie
A
0 1
1 0
Figure 12 : Programme Ladder avec fonction logique NOT.
Table de vérité de la porte Not.

11/11/2023 Cours sur les automates programmables industriels (API) 21


II. Le langage Ladder (LD)
II.4 Fonctions logiques: La fonction NAND

Figure 13 : Représentation d’une porte NAND. Figure 14 : Programme Ladder avec fonction
logique NAND.
Entrées Sortie
A B
0 0 1
Table de vérité de la porte NAND.
0 1 1
1 0 1
1 1 0
11/11/2023 Cours sur les automates programmables industriels (API) 22
II. Le langage Ladder (LD)
II.4 Fonctions logiques : La fonction NOR

Figure 15 : Représentation d’une porte NOR. Figure 16 : Programme Ladder avec fonction
logique NOR.
Entrées Sortie
A B
0 0 1
0 1 0 Table de vérité de la porte NOR.
1 0 0
1 1 0
11/11/2023 Cours sur les automates programmables industriels (API) 23
II. Le langage Ladder (LD)
II.4 Fonctions logiques : La fonction XOR

Figure 18 : Programme Ladder avec fonction


logique XOR.
Entrées Sortie
A B
Figure 17 : Représentation d’une porte XOR. 0 0 0 Table de vérité de la porte XOR.
0 1 1 A. B + B. A
1 0 1
1 1 0
11/11/2023 Cours sur les automates programmables industriels (API) 24
II. Le langage Ladder (LD)
II.5 Maintien
• On peut tomber sur des situations ou nous avons besoin de maintenir une sortie alimentée même
si l’entrée a été remise à 0. Le cas le plus simple que l’on puisse donner ici est l’alimentation d’un
moteur en pressant un bouton poussoir.

Figure 19 : Maintien dans le langage Ladder

• Le maintien est effectué en attribuant le nom et l’adresse de la sortie à un contact mis en


parallèle avec le contact qui démarre la sortie après action et se remet à 0 aussitôt relâché.
11/11/2023 Cours sur les automates programmables industriels (API) 25
II. Le langage Ladder (LD)
II.6 Cas de plusieurs sorties
• On peut tomber dans des cas ou notre programme se compose de plusieurs sorties (Figure 20). Le
nom et l’adresse d’une sortie peuvent être affectés à un contact branché avec une autre sortie.

Figure 20 : Exemple de plusieurs sorties avec le langage Ladder


11/11/2023 Cours sur les automates programmables industriels (API) 26
II. Le langage Ladder (LD)
II.6 Cas de plusieurs sorties
• Pour ce qui est de la figure 21, nous pouvons avoir le cas ou un contact par exemple alimente
plusieurs sorties (2 sorties sur un seul réseau dans la figure21-gauche). Le programme bien sur est
juste, mais par convention, nous retiendrons la solution de la figure 21-droite ou nous avons une
seule sortie par réseau.

Figure 21 : Exemple de plusieurs sorties avec le langage Ladder


11/11/2023 Cours sur les automates programmables industriels (API) 27
Logigramme ou FBD

11/11/2023 Cours sur les automates programmables industriels (API) 28


III. Logigramme ou function block diagram (FBD)
• Le langage logigramme (FBD) est un langage graphique utilisant des blocs réalisant des fonctions
données.

• Parmi les fonctions de base de ce langage on retrouve les fonctions logiques, comptage, timers ou
même des fonctions définies par l’utilisateur.

Figure 22 : FBD ou logigramme

11/11/2023 Cours sur les automates programmables industriels (API) 29


III. Logigramme ou function block diagram (FBD)
• La figure 23 qui suit montre la représentation des principaux blocs logiques disponibles dans le langage
Logigramme des API.

Figure 23 : Portes logiques vs


logigramme correspondant

11/11/2023 Cours sur les automates programmables industriels (API) 30


III. Logigramme ou function block diagram (FBD)
• Pour donner un ordre de comparaison entre le langage Ladder et Logigramme, nous avons repris deux exemples
de programmes Ladder (Figure24) pour lesquels nous avons donné leurs équivalents en langage Logigramme.

Figure 24 : Programmes Ladder et leurs équivalents en FBD.


11/11/2023 Cours sur les automates programmables industriels (API) 31
Exercice

11/11/2023 Cours sur les automates programmables industriels (API) 32


IV. Exercices
1. Exercice 1 :
• L’exemple en question représente un système de perçage de pièce.
Le principe de fonctionnement de cette perceuse est le suivant :

1. Il faut que le capteur détecte la présence d’une pièce à


percer.

2. En plus, il faut que l’utilisateur actionne les deux boutons


PB1 et PB2.

3. Dans ce cas le moteur démarre.

4. Etablir le programme Ladder pour cet exemple.

Figure 23 : Schéma d’une perceuse

11/11/2023 Cours sur les automates programmables industriels (API) 33


IV. Exercice
2. Solution :

Figure 24 : Programme Ladder du système de perçage

Entrées Sorties Adresses


Capteur I124.0
PB1 I124.1
PB2 I124.2
Moteur Q124.0

Table des entrées/sorties


11/11/2023 Cours sur les automates programmables industriels (API) 34
Références
• [1] Lamartine V. de Souza, Carlos R. L. Francês, et João C. W. A. Costa, New Applications Using PLCs in Access Networks. INTECH
Open Access Publisher, 2010.

• [2] W. Bolton, Programmable Logic Controllers. Cambridge: Elsevier Science, 2015.

• [3] C. T. Jones, STEP 7 in 7 Steps: A Practical Guide to Implementing S7-300/S7-400 Programmable Logic Controllers. Patrick-
Turner Publishing, 2009. [En ligne]. Disponible sur: https://books.google.dz/books?id=fjL8ngEACAAJ.
• [4] F. D. Petruzella, Programmable logic controllers, Fifth edition. New York, NY: McGraw-Hill Education, 2017.
• [5] D. H. Hanssen, « Programmable Logic Controllers », p. 419.
• [6] W. Bolton, Programmable logic controllers, 5th ed. Amsterdam ; Boston: Newnes, 2009.
• [7] W. Bolton, Programmable logic controllers, Sixth edition. Amsterdam: Newnes, 2015.
• [8] Luiz Affonso Guedes, Programmable Logic Controller. INTECH Open Access Publisher, 2010.
• [9] P. JARGOT, « Langages de programmation pour API. Norme IEC 1131-3 », Ref : TIP660WEB - « Automatique et ingénierie
système », juin 10, 1999. https://www.techniques-ingenieur.fr/base-documentaire/archives-th12/archives-automatique-et-
ingenierie-systemes-tias0/archive-1/langages-de-programmation-pour-api-norme-iec-1131-3-s8030/ (consulté le janv. 05,
2021).

11/11/2023 Cours sur les automates programmables industriels (API) 35

Vous aimerez peut-être aussi