Vous êtes sur la page 1sur 12

Chapitre V :

Programmation des API et fonctions


de bases utilisées
V.1. Introduction

Pour réussir une programmation d’un automate programmable on doit procéder de la manière
suivante :

 Etape 1 : Cette étape constitue une phase importante de l’écriture d’un programme
API. On doit connaitre la donnée d’entrées et distinguer les différentes opérations
accomplies par les actionneurs.
 Etape 2 : Cette étape consiste à établir une liste comprenant les signaux d’entrées et
de sorties.
 Etape 3 : Donner les symboles et les numéros des différents signaux d’entrée et de
sorties comme l’exemple donné par le Tableaux suivant :

Symbole des entrées et sortie Symbole des entrées et sortie


(logique câblée) (API)
Entrée S1 Entrée E0.0 ou I0.0
Entrée S2 Entrée E0.1 ou I0.1
Sortie K1 Sortie A0.0 ou Q0.0
Sortie K2 Sortie A0.1 ou Q0.1

V.2 Langages de programmation

Il existe plusieurs langages de programmation des API. Dans ce qui suivra nous nous
contenterons de présenter les trois langages de programmation les plus utilisé à savoir le
LADDER ou CONT (schémas à contacts), LOG (Logigramme) et LIST (Liste d’instructions).

V.2.1. Programmation à schéma CONT ou LADDER

Le « Ladder » ou CONT est un langage graphique de programmation. Proche dans sa


représentation graphique des schémas électriques, c’est un langage visuel très simple
d’utilisation. Un schéma « Ladder » est constitué de plusieurs réseaux. Chaque réseau possède
une ligne d’alimentation gauche, une ligne d’alimentation droite et des branches reliant les
entrées situées à gauche et les sorties situées à droite.
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 a 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).
Il existe 3 types d'élément de langage :

 Les entrées (ou contact), qui permettent de lire la valeur d'une variable booléenne.
 Les sorties (ou bobines) qui permettent d'écrire la valeur d'une variable booléenne.

Cours de Technologie en Automatismes Industriels ZAOUIA Mustapha 48


 Les blocs fonctionnels qui permettent de réaliser des fonctions avancées.

symbole signification
Contact normalement ouvert

Contact normalement fermé

Contact fermé au front descendant

Contact fermé au front montant

Contact fermé au front descendant


Bobine normalement ouverte
Bobine normalement fermée

ou Bobine Latch (maintenu à 1 une fois actionné)

ou Bobine Reset (remise à 0 de la bobine latch)

Exemples de représentation des circuits de commande en utilisant le LADDER (CONT) :

Figure.V.1. Premier exemple d’un schéma à logique câblée

Logique câblée API


Entrée : S1 E0.0 ou I0.0
Entrée : S2 E0.1 ou I0.1
Sortie : L1 A0.0 ou Q0.0

Figure. V.2. Schéma LADDER correspondant Premier exemple d’un schéma à logique câblée

Cours de Technologie en Automatismes Industriels ZAOUIA Mustapha 49


Figure. V.3. Deuxième exemple d’un schéma à logique câblée

Logique câblée API


Entrée : S1 E0.0 ou I0.0
Entrée : S2 E0.1 ou I0.1
Entrée : S3 E0.2 ou I0.2
Sortie : L1 A0.0 ou Q0.0

Figure. V.4. Schéma LADDER correspondant au deuxième exemple du schéma à logique câblée

V.2.2. Programmation à schéma LOG ou Logigramme

Le logigramme (LOG) est un langage de programmation graphique qui utilise les boîtes de
l’algèbre de Boole pour représenter les opérations logiques. Les fonctions complexes, comme
par exemple les fonctions mathématiques, peuvent être représentées directement combinées
avec les blocs logiques. Les portes logiques de base qui sont utilisées sont comme suit
(Figure. V.5) :

E0.0 E0.0
& A0.0 >=1 A0.0
E0.1 E0.1
(a) (b)

E0.0 A0.0

(c) (d)

Figure. V.5. Portes logiques utilisé dans la programmation à schéma LOG


(a) : Porte AND, (b) : Porte OR, (c) : Entrée inverse, (d) : Sortie inverse

Cours de Technologie en Automatismes Industriels ZAOUIA Mustapha 50


Exemples de représentation des circuits de commande en utilisant le schéma LOG (Figure.
V.6) :

E0.0
E0.0
& A0.0 E0.1 >=1 A0.0
E0.1
E0.2
(a) (b)

Figure. V.6. Schéma LOG correspondant au premier et deuxième exemple du schéma à logique câblée

Figure. V.7. Troisième exemple d’un schéma à logique câblée

Logique câblée API


Entrée : S1 E0.0 ou I0.0
Entrée : S2 E0.1 ou I0.1
Entrée : S3 E0.2 ou I0.2
Entrée : S4 E0.3 ou I0.3
Sortie : K1 A0.0 ou Q0.0
Sortie : K2 A0.1 ou Q0.1
Sortie : K2 A0.2 ou Q0.2

E0.0
& A0.0
E0.1 A0.1

E0.2
>=1 A0.2
E0.3

Figure. V.8. Schéma LOG correspondant au troisième exemple du schéma à logique câblée

Cours de Technologie en Automatismes Industriels ZAOUIA Mustapha 51


V.2.3. Programmation à schéma LIST

Langage basique des automatismes, il représente une liste d’instructions qui met en œuvre,
comme pour le langage booléen, des équations logiques. Cette programmation diffère des
autres méthodes car elle n’utilise pas des schémas ou des diagrammes. Chaque constructeur
d’API possède ses spécificités. Le programme est un ensemble de lignes de texte avec la
possibilité d’ajouter un commentaire pour expliquer l’action que le programme doit exécuter
Nous donnons quelques commandes de base utilisées dans un programme LIST :

Désignation Fonctions
LD Le résultat est égal à l’opérande (Load : lire la valeur)
LDN Le résultat est égal à l’inverse de l’opérande (contact ouverture).
AND ET logique entre le résultat et précèdent et l’état de l’opérande.
ANDN ET logique entre le résultat et précèdent et l’état inverse de l’opérande.
OR OU logique entre le résultat et précèdent et l’état de l’opérande
ORN OU logique entre le résultat et précèdent et l’état inverse de l’opérande.
XOR, XORN OU exclusif.

Désignation Fonctions
ST L’opérande associé prend la valeur de la zone de test.
STN L’opérande associé prend la valeur inverse de la zone de test.
S L’opérande associé est mis à 1 lorsque le résultat de la zone de test est à 1.
R L’opérande associé est mis à 1 lorsque le résultat de la zone de test est à 1.

V.3. Les Fonctions de base cd programmation des API

V.3.1. Temporisation

V.3.1.1. Fonction « S_IMPULS » Paramétrer et démarrer temporisation sous forme


d'impulsion
Cette opération démarre la temporisation précisée en cas de front montant à l'entrée de
démarrage S. Un changement d'état de signal est toujours nécessaire pour activer une
temporisation. La valeur de temps indiquée à l'entrée TW s'écoule tant que l'état de signal à
l'entrée S est égal à 1. Tant que la temporisation s'exécute, l'état de signal à la sortie Q égale 1.
En cas de passage de 1 à 0 à l'entrée S avant que le temps n'ait expiré, la temporisation
s'arrête. Dans ce cas, l'état de signal à la sortie Q est 0.Si l'état de signal passe de 0 à 1 à
l'entrée de remise à zéro R alors que la temporisation s'exécute, cette dernière est remise à
zéro. La valeur de temps en cours et la base de temps sont alors également mises à 0. L'état de
signal 1 à l'entrée R de la temporisation n'a aucun effet si la temporisation ne s'exécute pas. La
valeur de temps en cours peut être lue en format binaire à la sortie DUAL et en format

Cours de Technologie en Automatismes Industriels ZAOUIA Mustapha 52


décimal codé binaire à la sortie DEZ. La valeur de temps en cours correspond à la valeur
initiale en TW moins la valeur de temps écoulée depuis le démarrage de la temporisation
(Figure. V.9) .

Figure. V.9. Bloc Temporisation « S_IMPULS »

V.3.1.2. Fonction « S_EVERZ » Paramétrer et démarrer temporisation sous forme de


retard à la montée
Cette opération démarre la temporisation précisée en cas de front montant à l'entrée de
démarrage S. Un changement d'état de signal est toujours nécessaire pour activer une
temporisation. La valeur de temps indiquée à l'entrée TW s'écoule tant que l'état de signal à
l'entrée S est à 1. L'état de signal à la sortie Q égale 1 lorsque la temporisation s'est exécutée
sans erreur et que l'état de signal à l'entrée S est toujours 1. La temporisation s'arrête si l'état
de signal à l'entrée S passe de 1 à 0 alors que la temporisation s'exécute. Dans ce cas, l'état de
signal à la sortie Q est 0.En cas de passage de 0 à 1 à l'entrée de remise à zéro R pendant que
la temporisation s'exécute, cette dernière est remise à zéro. La valeur de temps en cours et la
base de temps sont alors également mises à 0. L'état de signal à la sortie Q égale alors 0. La
temporisation est également remise à zéro si l'état de signal égale 1 à l'entrée R alors que la
temporisation ne s'exécute pas et que le RLG à l'entrée S est égal à 1.La valeur de temps en
cours peut être lue en format binaire à la sortie DUAL et en format décimal codé binaire à la
sortie DEZ. La valeur de temps en cours correspond à la valeur initiale en TW moins la valeur
de temps écoulée depuis le démarrage de la temporisation (Figure. V.10).

Figure. V.10. Bloc Temporisation « S_EVERZ »

V.3.1.3. Fonction « S_VIMP » Paramétrer et démarrer temporisation sous forme


d'impulsion prolongée
Cette opération démarre la temporisation précisée en cas de front montant à l'entrée de
démarrage S. Un changement d'état de signal est toujours nécessaire pour activer une

Cours de Technologie en Automatismes Industriels ZAOUIA Mustapha 53


temporisation. La valeur de temps indiquée à l'entrée TW continue à s'écouler même si l'état
de signal à l'entrée S passe à 0 avant expiration du temps. Tant que la temporisation s'exécute,
l'état de signal à la sortie Q égale 1. La temporisation est redémarrée avec la valeur de temps
prédéfinie si l'état de signal à l'entrée S passe de 0 à 1 alors que la temporisation s'exécute. En
cas de passage de 0 à 1 à l'entrée de remise à zéro R pendant que la temporisation s'exécute,
cette dernière est remise à zéro. La valeur de temps en cours et la base de temps sont alors
également mises à 0.La valeur de temps en cours peut être lue en format binaire à la sortie
DUAL et en format décimal codé binaire à la sortie DEZ. La valeur de temps en cours
correspond à la valeur initiale en TW moins la valeur de temps écoulée depuis le démarrage
de la temporisation (Figure. V.11).

Figure. V.11. Bloc Temporisation « S_VIMP »

V.3.1.4. Fonction « S_SEVERZ » Paramétrer et démarrer temporisation sous forme


de retard à la montée mémorisé
Cette opération démarre la temporisation précisée en cas de front montant à l'entrée de
démarrage S. Un changement d'état de signal est toujours nécessaire pour activer une
temporisation. La valeur de temps indiquée à l'entrée TW continue à s'écouler même si l'état
de signal à l'entrée S passe à 0 avant que la temporisation n'ait expiré. L'état de signal à la
sortie Q égale 1 lorsque la temporisation a expiré, quel que soit l'état de signal à l'entrée S. Si
l'état de signal à l'entrée S passe de 0 à 1 alors que la temporisation s'exécute, cette dernière
est redémarrée avec la valeur de temps indiquée. En cas de passage de 0 à 1 à l'entrée de
remise à zéro R, la temporisation est remise à zéro quel que soit le RLG à l'entrée S. L'état de
signal à la sortie Q est alors 0.La valeur de temps en cours peut être lue en format binaire à la
sortie DUAL et en format décimal codé binaire à la sortie DEZ. La valeur de temps en cours
correspond à la valeur initiale en TW moins la valeur de temps écoulée depuis le démarrage
de la temporisation (Figure. V.12).

Figure. V.12. Bloc Temporisation « S_SEVERZ »

Cours de Technologie en Automatismes Industriels ZAOUIA Mustapha 54


V.4. Programmation par automate programmable (API)

Soit le schéma de commande donné par la Figure. V.13 représente un démarrage d’un moteur
asynchrone à deux sens de rotation et commandé à partir de deux endroits différents. On se
propose en utilise un type d’automate programmable (API) d’écrire le programme dans le
langage LADDER (CONT) qui permet de faire fonctionner ce système ainsi que les
programme dans le langage Logigramme (LOG) et LIST.

Figure. V.13. Schéma de démarrage d’un moteur asynchrone a deux sens de rotation commandé
de deux endroits différents.

V.4. 1. Tableau d’entrées sorties du circuit de commande

Le tableau ci-dessous donne les entrées et sorties du circuit de commande :

Schéma de commande Programme API

Fusible Q
Protection F I0.1 (E0.1)
Bouton poussoir ARRET S0 I0.2 (E0.2)
Bouton poussoir ARRET S1 I0.3 (E0.3)
Bouton poussoir MARCHE S2 I0.4 (E0.4)
Bouton poussoir MARCHE S3 I0.5 (E0.5)
Bouton poussoir MARCHE S4 I0.6 (E0.6)
Bouton poussoir MARCHE S5 I0.7 (E0.7)
Contacteur KM1 I0.7 (E0.8)
Contacteur KM2 Q0.1 (A0.1)
Q0.2 (A0.2)

Cours de Technologie en Automatismes Industriels ZAOUIA Mustapha 55


V.4. 2. Programme langage LADDER ou « CONT » du circuit de commande

Le schéma ci-dessous présente le schéma du circuit de commande programmé en utilisant le


langage de programmation « LADDER » ou « CONT » :

Figure. V.14. Schéma du programme « LADDER » du circuit de commande

V.4. 3. Programme langage Logigramme ou «LOG » du circuit de commande

Le schéma ci-dessous présente le schéma du circuit de commande programmé en utilisant le


langage de programmation « LOG » :

Figure. V.15. Schéma du programme « LOG » du circuit de commande

Cours de Technologie en Automatismes Industriels ZAOUIA Mustapha 56


V.4. 4. Programme langage « LIST » du circuit de commande

Le tableau ci-dessous présente la programmation « LIST » du circuit de commande :

LD LD

O E0.1 O E0.1

AN E0.2 AN E0.2

AN E0.3 AN E0.3

AN E0.4 AN E0.4

( (

O E0.5 O E0.7

O E0.6 O E0.8

O A0.1 O A0.2

) )

AN A0.2 AN A0.1

= A0.1 = A0.2

BE

Figure. V.16. Tableau du programme « LIST » du circuit de commande

Cours de Technologie en Automatismes Industriels ZAOUIA Mustapha 57


V.5. Programmation du circuit de commande du démarrage étoile-Triangle sous Step7
sous environnement STEP7

Dans ce qui suit nous présenterons la programmation d’automates programmables du circuit


de démmarage étoile-triangle d’un moteur asynchrone triphasé sous environnement STEP7.
Nous nous contenterons de présenter la programmation en langage « LADDER » ou
« CONT » et en langage de programmation en lanagage « LOG » .

V.5.1. Programme en langage LADDER ou « CONT » du circuit de commande étoile-


triangle sous environnement STEP

Le schéma ci-dessous présente le schéma du circuit de commande programmé en utilisant le


langage de programmation « LADDER » ou « CONT » sous environnement STEP7 :

Figure .V.17. Schéma du programme « LADDER » du circuit de commande sous environnement STEP7

Cours de Technologie en Automatismes Industriels ZAOUIA Mustapha 58


V.5.2. Programme en langage « LOG» du circuit de commande étoile-triangle sous
environnement STEP

Le schéma ci-dessous présente le schéma du circuit de commande programmé en utilisant le


langage de programmation « LOG» sous environnement STEP7 :

Figure .V.18. Schéma du programme « LOG» du circuit de commande sous environnement STEP7

Cours de Technologie en Automatismes Industriels ZAOUIA Mustapha 59

Vous aimerez peut-être aussi