Vous êtes sur la page 1sur 21

Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-

L3 Automatique- Cours API

- Cours Programmation des API-

1- Programmation en PL7-1 sur TSX17-10 :


Le langage PL7-1 de programmation TSX17-10 est un langage de structure booléenne
destiné à la programmation des grafcets.

1.1 Extrait du langage de programmation :

1.2 Adressage des variables :

On peut avoir au maximum 4 cartes d’entrée/sortie (numérotées de 0 à 3) et


comportant chacune 12 entrées et 8 sorties. Les entrées sont numérotées de 00 à 11 et
les sorties de 00 à 07. Le format d’une adresse comporte un indicateur d’entrée (I) ou

1
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

de sortie (O) suivi du numéro de la carte (0 à 3), et séparé par un point le numéro de
l’entrée ou de sortie sur la carte.

Ainsi par exemple I0.03 signifie adresse de l’entrée numéro 3 sur la carte numéro zéro,
et O2.05 signifie adresse de la sortie numéro 5 de la carte numéro 2.

1.3 Programmation d’un Grafcet avec séquence unique :

Tableau des variables d’E/S

Variables Dcy d g KM1 KM2


Adresses I0.01 I0.02 I0.03 O0.01 O0.02

Les lignes d’un programme sont numérotées à partir de


zéro. Un programme est constitué de deux zones de
traitement :

 Séquentiel : où on déclare les séquences du


grafcet, c'est-à-dire les étapes et leurs conditions
d’évolution. On déclarera donc chaque étape
suivie de la condition qui fait passer de cette
étape à l’étape suivante ;
 Postérieur : où on déclare les actions (sorties)
associées aux étapes.

Programme :

2
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

3
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

1.4 Programmation d’un Grafcet avec aiguillage :

Pour exprimer un choix entre deux possibilités (aiguillage), on ne doit pas mettre deux fois
de suite le mnémonique «-* -» avec le même opérande (deux instructions successives
«-*-N°» avec le même numéro d’étape)

2- Programmation en PL7-2 sur TSX17-20 :

Pour programmer un grafcet en langage PL7-2 on utilise en même temps le


langage à contact et le langage grafcet. Le grafcet est dessiné graphiquement en
utilisant les composants de base d’un grafcet disponibles sur l’écran. Les
réceptivités ainsi que les actions sont programmées avec le langage contact.

Un programme écrit en langage PL7-2 comprend plusieurs parties qui doivent


être saisies dans l’ordre suivant :

4
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

 Le grafcet proprement dit, c'est-à-dire un graphe qui donne le


séquencement des étapes, dessiné sur l’écran à l’aide de primitives
graphiques.
Dans le mode séquentiel (SEQ), on saisira l’ordre des étapes aves leurs
numéros sans donner d’informations sur les réceptivités des transitions.
La programmation commence par l’initialisation (indiquer comment on
arrive à l’étape initiale à partir de la dernière étape du graphe), puis le
séquencement des étapes, et enfin le retour à l’étape initiale.

 Les réceptivités (le mode SEQ): pour cela se positionner en face de


chaque transition du grafcet précédent, puis appuyer sur la touche ZM
pour entrer dans l’environnement du langage contact. Dans le réseau de
contact affiché on saisira les réceptivités correspondant à cette transition.

 Les actions (mode postérieur) : pour chaque réseau on doit donner


obligatoirement un numéro d’étiquette programme. Pour chaque étape Xi

5
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

(entrée comme condition, contact ouvert) on donnera les actions à


effectuer (bobines à activer).
 Eléments graphiques de base :

6
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

 Remarque :
S’il existe des variables auxiliaires, on les programme avec des bits
mémoires internes (Bi) en utilisant le langage contact dans le mode
Préliminaire.
Les temporisateurs et les compteurs sont programmés dans le mode
postérieur.
2.1 Programmation d’un Grafcet avec séquence unique :

Tableau des variables d’E/S

Variables Dcy d g KM1 KM2


Adresses I0.01 I0.02 I0.03 O0.01 O0.02

7
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

2.2 Programmation des Temporisateurs et Compteurs :

 Temporisateur :

La temporisation se programme de manière graphique dans le langage contact.


La saisie graphique du bloc fonction temporisation se fait à l’écran selon 2
niveaux : Le bloc est d’abord représenté dans un réseau de contact sous forme
d’un rectangle associé à un numéro. A partie de cette représentation on accède
au deuxième niveau par la touche ZM, se qui visualise les paramètres du bloc
fonction.

Chaque sortie D ou R peut piloter une ou plusieurs bobines ou un autre


bloc fonction.

8
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

 Compteur :
Le bloc fonction compteur permet d’effectuer le comptage ou le
décomptage d’événements. Ces deux opérations pouvant être simultanées
ou non.

9
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

2.3 Programmation d’un Grafcet avec aiguillage :

10
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

Remarque :

 Il est interdit d’écrire la même sortie (action) plusieurs fois. Si une même sortie
doit être activée et/ou désactivée plusieurs fois on utilise des équations
booléennes pour les conditions d’activation de cette action ou on utilise des
bobines bistables (set et reset)
 Les bits internes B3 et B4 sont utilisés comme variable de fins de
temporisations T1 et T2.

11
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

12
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

2.4 Programmation d’un Grafcet avec séquences simultanées :

13
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

3- Programmation d’un Grafcet avec le langage contact (pour les API


Siemens, Moeller):

Chaque étape d’un GRAFCET peut être représentée par l’équation suivante :

Dans la programmation on utilise des adresses :


 L’adresse d’entrée : E n.m ou I n.m, sachant que n c’est l’octet et m
c’est le bit, chaque octet contient 8 bit de 0 à 7.
 L’adresse de sortie : A n.m ou O n.m/Q n.m.
 L’adresse d’une variable interne : m n.m, ces bits mémoires sont
utilisés soit pour les étapes ou la sortie d’un temporisateur, compteur ou
comparateur...etc.

L’étape Xn peut être programmée par deux méthodes :

3-1. Méthode 1 :

Dans cette méthode on va utiliser une bobine de sortie normale pour l’étape
Xn. Donc pour mémoriser l’état de cette étape il faut utiliser le maintien de
l’étape Xn.

14
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

Pour l’étape initiale :

Dans le réseau de l’étape initiale on


utilise l’équation logique présentée au
début, en tenant compte de
l’initialisation de l’étape en utilisant les
états inactifs des autres étapes

Lorsque l’étape 2 sera active, l’étape initiale (étape 1) sera désactivée :

15
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

Après la désactivation de l’étape initiale, elle devient une étape ordinaire c.à.d.
pour réactivée l’étape 1 il faut que la transition immédiatement avant cette étape
soit franchissable :

16
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

A la désactivation de l’étape 5, on revient à l’état stable de l’initialisation tan


que l’étape qui suit étape 1 (l’étape2) est désactivée :

Après cette simulation on peut déduire un réseau optimisé qui nous donne le
même fonctionnement:

17
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

Donc on remarque que la condition de désactivation existe déjà


dans le réseau d’initialisation, et on peut aussi supprimer le maintien de l’étape
puisque après la désactivation de l’étape 5, on revient à l’état stable de
l’initialisation donc l’état de l’étape initiale ne sera changé si et seulement si la
condition de l’activation de l’étape qui la suit (étape 2) soit vérifiée.

3-2. Méthode 2 :
La deuxième méthode ne nécessite pas le maintien de l’étape puisque on
va utiliser une bobine SET pour l’activation de l’étape et une bobine
RESET pour la désactivation de l’étape Xn.

18
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

Réseau de l’étape initiale :

19
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

3-3. Programmation des actions associées aux étapes :

S’il existe une action associé à l’étape Xn quel que soit la méthode de
programmation utilisée pour l’activation et la désactivation des étapes
(méthode 1 ou 2), elle est programmée comme suite :

a) Action Continue :

On utilise une bobine normale pour l’affectation de la sortie (l’action).

b) Action Conditionnelle :

20
Université de Constantine 1- Faculté des sciences de la Technologie- Département d’Electronique-
L3 Automatique- Cours API

c) Action Mémorisée :
Lorsque l’action est répétée dans plusieurs étapes successives on
utilise les bobines set et reset pour l’affectation de la sortie (action).

Dans cet exemple l’action est répétée dans les étapes Xn, Xn+1,
Xn+2, Xn+3, Xn+4. Donc dans l’étape qui suit Xn+4 (Xn+5) il faut
utiliser une bobine reset pour indiquer que cette action n’est pas
commandée dans cette étape.

d) Action Retardée ou Limitée :


Dans ce cas on utilise des Temporisateurs comme une condition en
plus pour la commande de la sortie (action).
Le choix du type de temporisateur suit l’opération qu’on veut
effectuer c.à.d. on utilise un temporisateur qui donne 1 logique à sa
sortie Q à la fin de temporisation pour la commande des actions
retardées, et on utilise un temporisateur qui donne 1 logique à sa
sortie Q pendant la temporisation pour les actions limitées.

21

Vous aimerez peut-être aussi