Académique Documents
Professionnel Documents
Culture Documents
Faculté de Technologie
Département de GEE
partie)
M2 Instrumentation Electronique
Par : BRIXI NIGASSA Mohammed El Amine
• Langage Ladder
• Exercice
Langages de programmation
des API
• 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).
(a) (b)
Figure 2 : (a) Représentation d’un circuit électrique. (b) Représentation en Ladder (Diagramme Ladder)
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).
1. Les lignes verticales représentent les lignes d’alimentation entre lesquelles les composants
sont connectés.
3. Chaque ligne du langage Ladder représente une opération de contrôle d’un processus
donné.
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.
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.
• 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.
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.
Sortie=0 Sortie=1
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.
Sortie=0
Sortie=1
(a) (b)
Sortie=1
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.
Sortie=1 Sortie=0
(a) (b)
Figure 11 : (a) Circuit électrique avec un contact normalement fermé. (b) Porte 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.
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
• 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.
• [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).