Vous êtes sur la page 1sur 13

[Chapitre 4]

[La programmation des API]

CHAPITRE 4 : LA PROGRAMMATION DES API

I-

Mise en quations des GRAFCET:


Malheureusement, ce ne sont pas tous les automates qui se programment en

GRAFCET directement. Mais, gnralement ils peuvent tre programms en diagramme


chelle (ou LADDER).
Il faut donc pouvoir transformer le GRAFCET qui est la meilleure approche qui existe
pour traiter les systmes squentiels en diagramme chelle qui est le langage le plus
utilis par les automates.

I-1 Mmoire dtape :


Afin de respecter les rgles dvolution du GRAFCET, chaque tape peut tre
matrialise par une mmoire du type marche prioritaire possdant une structure de la
forme :

Les termes denclenchement et de remise zro sont dfinis de la manire


suivante :

Encl : Etat logique de lEtape(s) prcdente(s).


Rceptivit
ETAPE X
RAZ : Etat logique de lEtape(s) suivante(s)

Page 48

[Chapitre 4]

[La programmation des API]


Encl : X4.C1
X1

RAZ : X2
C1.C4.DCY
Encl : X1.C1.C4.DCY
2

X2

RO

RAZ : X3
C3
Encl : X2.C3
3

DE

X3
RAZ : X4

C2
Encl : X3.C2
4

MO

X4
RAZ : X1

C1

Les quations des mmoires tape dtermine prcdemment nous donnent le


schma de cblage lectrique suivant :
X1
X4

C1

X2

X1

ETAPE 1

X2
X1

C1

X3

X2

X2

C3

X4

X3

C4

DCY

ETAPE 2

X3
ETAPE 3

Page 49

[Chapitre 4]

[La programmation des API]


X4
X4

C2

X2

X1

ETAPE 4

X2
X3
X4

RO

ROTATION

DE

DESCENTE

MO

MONTEE

Pour tablir la commande de chaque sortie, il suffit de considrer la ou les tapes


durant lesquelles la sortie doit tre enclenche. Ainsi :
La sortie RO a lieu durant lETAPE 2 do RO = X2
La sortie DE a lieu durant lETAPE 3 do DE = X3
La sortie MO a lieu durant lETAPE 4 do MO = X4

I-2 Initialisation de la squence :


Nous remarquons sur le schma prcdent qu la mise sous tension, toutes les
mmoires se trouvant ici ltat repos, aucune volution nest possible.
Il est donc impratif dinitialiser la squence en venant enclencher la mmoire X1
matrialisant ltape initiale de notre GRAFCET. Ceci est obtenu :
Soit en utilisant un contact dinitialisation ou un contact de passage
command lors de la mise sous tension de lautomatisme, comme le montre le
schma suivant :

Init
X1
X4

C1
ETAPE 1

X2

X1

Page 50

[Chapitre 4]

[La programmation des API]

Soit en testant ltat repos de toutes les mmoires dtape suivantes, pour
venir alors systmatiquement enclencher la mmoire X1 , comme le montre le
schma suivant :

X2

X3

X4
X1

X4
X2

II-

C1
ETAPE 1

X1

Langages de programmation des API:


Les langages de programmation des API sont de natures diverses tant donn la

diversit, des utilisateurs pouvant les utiliser.

II-1 Le langage LADER (LD) :


Le langage des API dorigine amricaine utilise le symbolisme classique des schmas
relais accompagn de blocs graphiques prprogramms pour raliser des fonctions
dautomatisme (calculs, temporisation, compteur,..).
C'est une suite de rseaux qui seront parcourus squentiellement. Les entres sont
reprsentes par des interrupteurs -| |- ou -|/|- si entre inverse, les sorties par des
bobines -( )- ou des bascules -(S)- -(R)-.Il y a galement dautre oprations :
l'inverseur -|NOT|-,
l'attente d'un front montant -(P)- ou descendant -(N)-.
Les sorties sont obligatoirement droite du rseau On doit videmment identifier nos E/S,
soit directement par leur code (Ia.b / Qa.b), ou avec leur libell en clair dfini dans la table
des mnmoniques.
On relie les lments en srie pour la fonction ET, en parallle pour le OU. On peut utiliser
des bits internes (peuvent servir en bobines et interrupteurs), comme on utilise dans une
calculatrice une mmoire pour stocker un rsultat intermdiaire (Ma.b). On peut aussi
introduire des lments plus complexes, en particulier les oprations sur bits comme par
exemple une bascule SR (priorit dclenchement), RS (priorit enclenchement), POS et

Page 51

[Chapitre 4]

[La programmation des API]

NEG pour la dtection de fronts... on trouvera d'autres fonctions utiles, les compteurs, les
temporisateurs et le registre dcalage.
On peut galement utiliser des fonctions plus complexes (calculs sur mots par exemple)

II-2 Adressage des entres/sorties


La dclaration d'une entre ou sortie donne l'intrieur d'un programme s'appelle
l'adressage. Les entres et sorties des API sont la plupart du temps regroupes en groupes
de huit sur des modules d'entres ou de sorties numriques. Cette unit de huit est appele
octet. Chaque groupe reoit un numro que l'on appelle l'adresse d'octet.
Afin de permettre l'adressage d'une entre ou sortie l'intrieur d'un octet, chaque octet
est divis en huit bits. Ces derniers sont numrots de 0 7. On obtient ainsi l'adresse du
bit..L'API reprsent ici a les octets d'entre 0 et 1 ainsi que les octets de sortie 0 et 1.

Nom
ETAPE 1
ETAPE 2
ETAPE 3
ETAPE 4
C1
C2
C3
C4
DCY
RO
DE
MO

Type de donnes
Bool
Bool
Bool
Bool
Bool
Bool
Bool
Bool
Bool
Bool
Bool
Bool

Adresse
M0.1
M0.2
M0.3
M0.4
I0.0
I0.1
I0.2
I0.3
I0.4
Q0.0
Q0.1
Q0.2

Etape 1 de type logique (Bool) affect


la mmoire M0.1

Le capteur C1 est de type logique et


affect ladresse I0.0

La sortie DE est de type logique et


affect ladresse Q0.0

Tableau 1 : table de variables mnmoniques

Par exemple, pour adresser la 5me entre du DCY en partant de la gauche, on dfinit
ladresse suivante :
I0.4

I indique une adresse de type entre, 0, ladresse doctet et 4, ladresse


de bit. Les adresses doctet et de bit sont toujours spares par un point.

Pour adresser la 3me sortie, par exemple, on dfinit ladresse suivante :


Q0.2

Q indique une adresse de type Sortie, 0, ladresse doctet et 2, ladresse

Page 52

[Chapitre 4]

[La programmation des API]

de bit. Les adresses doctet et de bit sont toujours spares par un point.
Remarque : Ladresse du bit de la dixime sortie est un 1 car la numrotation commence
zro.

Exemple:
Dans lexemple prcdent et suivant la table mnmonique daffectation le
programme en LADER de la premire tape est :

Initialisation systme

X4 .C1

X2 .X1

Et ainsi pour ltape 2 est :

X1.C1.C4.DCY

X3 .X2

Page 53

[Chapitre 4]

[La programmation des API]

Ltape 3 :

X2 .C3

X4 .X3

Ltape 4 :

X4 .C2

X2 .X1

Pour la programmation des sorties

R0 : est actionn uniquement ltape 2

Page 54

[Chapitre 4]

[La programmation des API]

DE : est actionn uniquement ltape 3

MO : est actionn uniquement ltape 4

Le programme peut tre simplifier si en utilisant les bobines Set/ Reset ou les bascules SR ou
RS et en tenant compte des cinq rgles du GRAFCET.

Activation de ltape 1 et
dsactivation de ltape 4

Forage manuelle de remise zro par RAZ.

Activation de ltape 2 et
dsactivation de ltape 1

Page 55

[Chapitre 4]

[La programmation des API]

Activation de ltape 3 et
dsactivation de ltape 2

Activation de ltape 4 et
dsactivation de ltape 3

II-2 Le langage LOG (Logigramme) :


Les oprations logiques servent dfinir des conditions pour l'activation d'une sortie.
Elles peuvent tre cres dans le programme de l'API dans les langages de
programmation Schma des circuits LADER (LD) ou Logigramme (LOG).
Il existe de nombreuses oprations logiques pouvant tre mises en uvre dans des
programmes API.
L'opration ET et l'opration OU, ainsi que la NEGATION d'une entre sont les oprations les
plus frquemment utilises et seront expliques ici l'appui d'un exemple.

II-2-1 Opration ET
Exemple dune opration ET :
Une lampe doit sallumer quand les deux interrupteurs sont ferms simultanment.

Page 56

[Chapitre 4]

[La programmation des API]

Schma :
S2

S1
24V

P1

M
Explication :
La lampe sallume uniquement quand les deux interrupteurs sont ferms.
Cest--dire, quand S1 ET S2 sont ferms, alors la lampe P1 est allume.
Cblage de lAPI :
Pour appliquer cette opration au programme de lAPI, les deux commutateurs doivent
tre connects aux entres de lAPI. Ici, S1 est reli lentre I 0.0 et S2 lentre I 0.1.
De plus, la lampe P1 doit tre connecte une sortie, par exemple Q 0.0.

24V
Interrupteur S1

%I 0.0

Entres

24V
Interrupteur S2

%I 0.1

M
API

Sorties
%Q 0.0

La Lampe P1 doit
sallumer quand les
deux interrupteurs
S1 et S2 sont
ferms.

Oprateur ET dans LOG :


Dans le logigramme LOG, loprateur ET est programm par le symbole ci-dessous et est
reprsent de la manire suivante :

Page 57

[Chapitre 4]

[La programmation des API]

Entres de
l'opration ET.
Il est possible de
prvoir plus de
deux entres.

%I 0.0

Sortie
concerne par
l'affectation.

%Q 0.0

&

%I 0.1

=
Affectation des
rsultats de
l'opration
logique.

Reprsentation
graphique de
l'opration logique ET.

II-2-2 Opration OU
Exemple dune opration OU :
Une lampe doit sallumer si au moins un des deux interrupteurs est ferm.
Schma :
S1
24V
S2
24V
P1

M
Explication :
La lampe sallume partir du moment o un des deux interrupteurs est ferm.
Cest--dire, quand S1 OU S2 est ferm, alors la lampe P1 est allume.

Page 58

[Chapitre 4]

[La programmation des API]

Cblage de lAPI :
Pour appliquer cette opration au programme de lAPI, les deux commutateurs doivent
tre connects aux entres de lAPI. Ici, S1 est reli lentre E 0.0 et S2 lentre E 0.1.
De plus, la lampe P1 doit tre connecte une sortie, par exemple A 0.0.

24V
Interrupteur S1

%I 0.0
Entres

24V
Interrupteur S2

%I 0.1

M
API

La lampe P1 doit
sallumer quand
l'interrupteur S1 ou
l'interrupteur S2 est
ferm.

Sorties
%Q 0.0

Oprateur OU dans LOG


Dans le logigramme LOG, loprateur OU est programm par le symbole ci-dessous et est
reprsent de la manire suivante :
Entres de l'opration
OU.
Il est possible de prvoir
plus de deux entres.

%I 0.0
%I 0.1

Sortie concerne par


l'affectation.

%Q 0.0

>

=
Affectation des rsultats
de l'opration logique.

Reprsentation
graphique
de
lopration logique OU.

Page 59

[Chapitre 4]

[La programmation des API]

II-2-3 Ngation
Il est souvent ncessaire dans les oprations logiques d'interroger l'tat d'un contact pour
savoir : dans le cas d'un contact fermeture si celui-ci n'a pas t activ, ou dans le cas
d'un contact ouverture s'il a t activ, et donc pour savoir si la tension est applique
la sortie ou non.
Ceci peut tre ralis par la programmation d'une ngation l'entre de l'opration ET ou
OU.
Dans le logigramme LOG, la ngation de lentre (ou inversion) sur un oprateur ET est
programm de la faon suivante :
Entres
de
l'
opration ET qui doit
tre
inverse
(ngation).

%I 0.0
%I 0.1

Reprsentation
graphique
de
l'opration
logique
Ngation.

%Q
0.0

&

Ceci signifie quune tension est applique la sortie %Q 0.0 uniquement si %I 0.0 est 0 et
%I 0.1 est 1.

Page 60