A OUTAYEB
Definition
• C'est un langage textuel, qui est le plus proche du comportement interne de l'automate
• Chaque instruction correspond à une étape de l'exécution du programme par la CPU.
• chacune spécifiant un code opération suivi d'un opérande.
• Le langage liste d’instruction permet de transcrire sous forme de liste :
Un schéma à contact
Un logigramme
Équations booléennes
Un grafcet
Organigramme ( Algorithme )
L’état logique
C’est l’état de la variable binaire interrogée, la variable est à « 1 » ou
à«0»
La première interrogation
Ce flag indique le début d’une opération booléenne, sinon on combinerait
l’équation en cours avec le résultat de l’équation précédente. Les instructions qui
limitent le RLG sont:
= Assignation
S Mise à « 1 »
R Mise à « 0 »
SE, SV, SI, SA, SS Démarrage d’une temporisation
ZV,ZR Comptage ou décomptage d’un compteur
Le RLG (Résultat Logique)
Ce bit mémorise le résultat d’un test et permet de réaliser une combinaison avec
l’instruction suivante. Quelques instructions sur le résultat logique :
SAVE Sauvegarde le Résultat logique dans le bit RB
SET Mise à 1 inconditionnel du RLG
CLR Mise à 0 inconditionnel du RLG
NOT Complément du RLG
U E 0.0 1 1 1
U E 0.1 1 1 1
= A 4.0 1 1 0
FONCTION OU
O E0.0 1 1 1
O E 0.1 0 1 1
= A 4.0 1 1 0
OU
Ce flag permet de mémoriser le résultat de la combinaison précédente pour
la combiner en OU avec la combinaison suivante.
FONCTION ET AVANT OU
La fonction ET avant OU est comparable à un montage en parallèle de plusieurs
contacts montés en série du schéma des circuits.
FONCTION OU AVANT ET
FONCTION OU EXCLUSIF
MISE A « UN » PRIORITAIRE
FRONT MONTANT
(FP)
FRONT DESCENDANT (FN)
Exemple
LIST
L EW 0
T AW 4
L +5
T AW 6
BE
La Temporisation en Langage LIST
Diverses temporisations sont souvent utilisées dans la réalisation de tâches
d'automatisation. Ces Temporisations sont intégrées dans l'unité centrale de
l'automate programmable.
EN BLOC DE TEMPORISATION
U E 0.1
ZR Z0
EN BLOC DE COMPTAGE
Exemple 1
Exemple 2
L EW20
L EW20
L EW22
OW W#16#0FFF
OW
T AW0
T MW8
OPERATIONS DE COMPARAISON
Les opérations de comparaison comparent le contenu de l'accumulateur 2 à celui de
l'accumulateur 1 selon les types de comparaison suivants :
Si le RLG égale 1, le résultat de comparaison est vrai. Les bits BI1 et BI0 indiquent
la relation "inférieur à", "égal à" ou "supérieur à".
les opérations de comparaison sont :
?I Comparer entiers de 16 Bits
?D Comparer entiers de 32 Bits
?R Comparer réels de 32 Bits
Exemple
LIST
L EW 0
L EW 2
>I
= A 4.7
+I +D Additionner accumulateurs 2 et 1
-I -D Soustraire accumulateur 1 de l’accumulateur 2
/I /D Diviser accumulateur 2 par accumulateur 1
*I *D Multiplier accumulateur 2 par accumulateur 1
+ Additionner constante entière (16,32bits) à l’accumulateur 1
MOD Reste de division entière (32 bits)
Exemple 1 Exemple 2
L EW10 L ED10
L MW14 L MD14
+I MOD
+ 25 T MD20
T MW20
Les opérations ci-dessous permettent d’exécuter les fonctions arithmétiques sur un nombre
réel :
ABS Valeur absolue d’un nombre réel SIN Sinus d’un angle comme nombre réel
SQR Carre d’un nombre réel COS Cosinus d’un angle comme nombre réel
SQRT Racine carrée d’un nombre réel TAN Tangente d’un angle comme nombre réel
EXP Valeur exponentielle d’un nombre réel ASIN Arc sinus d’un angle comme nombre réel
LN Logarithme naturel d’un nombre réel ACOS Arc sinus d’un angle comme nombre réel
ATAN Arc tangente d’un angle comme nombre réel
Exemple 1 Exemple 2
L MD0
L MD10
SQR
SIN
UN OV
T MD20
SPB OK
BEA
OK: T MD20
OPERATIONS DE CONVERSION
Les opérations de conversion permettent de convertir des nombres décimaux codés
binaires et des nombres entiers en d’autres types de nombres :
BTI Convertir DCB en entier de 16 bits
ITB Convertir entier de 16 bits en DCB
BTD Convertir DCB en entier de 32 bits
ITD Convertir entier de 16 bits en entier de 32 bits
DTB Convertir entier de 32 bits en DCB
DTR Convertir entier de 32 bits en réel
Exemple
LIST
L MW10
BTI
T MW20
Exemple
LIST
L EW8
NEGI
T MW10
Les opérations suivantes permettent de modifier l’ordre des octets dans le mot de poids
faible de l’accumulateur 1 ou dans l’accumulateur 1 entier :
TAW Modifier l'ordre dans l'accumulateur 1-L (16 bits)
TAD Modifier l'ordre dans l'accumulateur 1 (32 bits)
Exemple
LIST
L MD10
TAD
T MD20
Exemple
LIST
L MD10
RND+
T MD20
OPERATION DE SAUT
Les opérations de saut permettent de gérer le déroulement de votre programme, elles
interrompent le déroulement linéaire de votre programme afin de reprendre son
exécution à un endroit diffèrent
Les opérations de saut suivantes interrompent la séquence normale dans votre programme
selon le résultat logique RLG généré par l’instruction précédente :
SPB Saut si RLG est 1
SPBN Saut si RLG est 0
SPBB Saut si RLG est 1 avec RB
SPBNB saut si RLG est 0 avec RB
Exemple
LIST
U E 1.0
U E 1.2
SPB SAUT
L EW8
T MW22
SAUT: U E 2.1
Les opérations de saut suivantes interrompent la séquence normale dans votre programme
selon le résultat d’un calcul :
SPZ Saut si égal à 0
SPN Saut si diffèrent de 0
SPP Saut si plus
SPM Saut si moins
SPPZ Saut si supérieur ou égal à 0
SPMZ Saut si inférieur ou égal à 0
SPU Saut si illicite
Exemple
LIST
L EW8
L MW12
-I
SPP POS
UN M 4.0
S M 4.0
SPA SUIV
POS: UN M 4.1
S M 4.1
SUIV: NOP 0
Exemple 1 Exemple 2
L MB22 L MW10
INC 1 L MW12
T MB22 >I
SPB SUIV
TAK
SUIV: -I
T MW14