Lang Ages 02

25
 1 Pr Pr é sentation des Langages sentation des Langages Automates Programmables Automates Programmables Pierre Duysinx Prof. Henri Lecocq SIEMENS PLCs S SIEMENS PLCs Série S7 rie S7 CARACTÉRISTIQUES PRINCIPALES Multiprocesseur  bit processor  word processor  PID processor  communication processor Multi lang age  Liste d’Instructions (IL) ou liste d’instructions  Blocs Fonctionnels (LOG) ou logigramme  Contact (CONT) ou langage à contact Mode séquentiel  Programmation GRAFCET  Mode d’exécution séquentiel

Transcript of Lang Ages 02

Page 1: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 1/25

 

1

PrPréésentation des Langagessentation des LangagesAutomates ProgrammablesAutomates Programmables

Pierre Duysinx

Prof. Henri Lecocq

SIEMENS PLCs SSIEMENS PLCs Séérie S7rie S7CARACTÉRISTIQUES PRINCIPALES

• Multiprocesseur

– bit processor

– word processor

– PID processor

– communication processor• Multi langage

– Liste d’Instructions (IL) ou liste d’instructions

– Blocs Fonctionnels (LOG) ou logigramme

– Contact (CONT) ou langage à contact

• Mode séquentiel

– Programmation GRAFCET

– Mode d’exécution séquentiel

Page 2: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 2/25

 

2

STRUCTURE DES PROGRAMMESSTRUCTURE DES PROGRAMMESET DES DONNET DES DONNÉÉESES

OB 1

FB

FB

FB

FC

FC

FB

Cyclique

Blocsd’organisation

BlocsFonctionnels

FonctionsSequential

Function Chartl

Systèmed’exploi-

tation

SFC

DB

DI

Blocs de donnéesBlocs d’Instance

STRUCTURE DES PROGRAMMESSTRUCTURE DES PROGRAMMESET DES DONNET DES DONNÉÉESES

• Blocs d’organisation OBL’OB1 est examiné à chaque cycle d’automate. C’est à partir de ce bloc que l’on feraappels aux différents blocs de programmes.

L’OB100 et l’OB101 sont appelés au démarrage à chaud et à froid uniquement. Ilsservent à l’initialisation des données.

• Fonctions FC

C’est dans ces blocs que l’on va mettre les instructions à exécuter. La numérotationest libre (de 0 à 255). Ces blocs n’ont pas de mémoire.

• Blocs de fonctions FB

Ces blocs sont des FC paramétrables. On peut passer des données en créant des DBd’instance associés à un seul FB pour le passage de paramètres. La numérotation estlibre (de 0 à 255)

• Fonctions systèmes SFC, blocs fonctionnels systèmes SFB, blocs fonctionnels decommunication CFB

Page 3: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 3/25

 

3

STRUCTURE DES PROGRAMMESSTRUCTURE DES PROGRAMMESET DES DONNET DES DONNÉÉESES

OB 20

OB 100OB 101

OB 80àOB 87

100 ms clock 

Tâches auxiliaires:Time based functionscontrol loops...

Procédures deDémarrage à chaudDémarrage à froid

Gestion deserreurs d’exécution(run time errors)

STRUCTURE DES PROGRAMMESSTRUCTURE DES PROGRAMMESET DES DONNET DES DONNÉÉESES

• LES BLOCS DE DONNEES

Mots composés de 16 bits (DW) danslesquels on peut lire et écrire desdonnées

Un bloc de données ouvert reste valide jusqu’à ce qu’un autre bloc de donnéessoit appelé ou qu’un bloc de codeappelant soit terminé avec un BE ou unBEB

Dans un programme:

AUF DBn

L DW5

DB n

DW 0

DW 1

DW 2

DW x

Mot de 16 bits

Page 4: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 4/25

 

4

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE STEP 7 ILLANGAGE STEP 7 IL

• BIT VARIABLES

Input E 0.0 à 127.7 (#byte . #bit)

Output A 0.0 à 127.7

Flag (mémo interne) M 0.0 à 255.7

Data D 0.0 à 255.7

Timer Output T 0 à 127

Counter Z 0 à 127

• BYTE VARIABLES (=8 bits)

Input EB 0 à 127Output AB 0 à 127

Flag MB 0 à 255

Data (left byte) DL 0 à 255

(right byte) DR 0 à 255

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE STEP 7 ILLANGAGE STEP 7 IL

• WORD VARIABLES (= 16 bits)

Input EW 0 à 126

Output AW 0 à 126

Flag (mémo interne) MW 0 à 254

Data DW 0 à 255• DOUBLE WORD VARIABLES (=32 bits)

Input ED 0 à 126

Output AD 0 à 126

Flag (mémo interne) MD 0 à 254

Data DD 0 à 254

Page 5: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 5/25

 

5

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE STEP 7 ILLANGAGE STEP 7 IL

• CONSTANTES

Bit TRUE/FALSE 1/0

Integer unsigned B#(0,0) à B#(255,255)

Integer signed -32768 à +32767

Real -1.175494 E -38 à 3.402823 E 38

Hexadecimal (8 bits) B#16#0 à B#16#FF

(16 bits) W#16#0 à W#16#FFFF

Bit pattern 2#0 à 2#11111111 11111111

ASCII characters ‘ abcd ’Time Constant (S5Time) S5T#0ms, S5T2h46m30s

Time Constant (CPU TIME) T#-24d20h31m23s746ms

T#-65535ms à T#+65535ms

Counter C#0 à C#999

Pointer P#x.y

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE STEP 7 ILLANGAGE STEP 7 IL

• INSTRUCTIONS LOGIQUES (sur bit variables)

 Instructions déjà disponibles en step 5

U AND ou chargement de l’accumulateur du RLG si vide

UN AND NOT

O OR

ON OR NOT

U( AND sur expression entre parenthèses

O( OR sur expression entre parenthèses

) fin parenthèse

S SET à ‘ 1 ’ de l’opérande (permanente)

R RESET à ‘ 0 ’ de l’opérande (permanente)

= assignation de l’opérande à la valeur du RLG (1 cycle)

Page 6: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 6/25

 

6

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE STEP 7 ILLANGAGE STEP 7 IL

• INSTRUCTIONS LOGIQUES (sur bit variables)

 Nouvelles instructions disponibles avec le step 7 

CLR mise à ‘ 0 ’ du RLG

SET mise à ‘ 1 ’ du RLG

NOT négation du registre logique

X OU EXCLUSIF

XN (OU NON) EXCLUSIF

FN front montant d’une variable

FP front descendant d’une variable

 

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE STEP 7 ILLANGAGE STEP 7 IL

• INSTRUCTIONS DE BASE SUR BYTES, WORDS ET CONSTANTESTravaille sur les accumulateurs arithmétiques (ACCU1, ACCU2)

 Instructions de chargement 

AUF Ouverture DB

L Chargement: ACCU1 → ACCU2,Opérande → ACCU1

T Transfert ACCU1 transféré dans opérande Instructions arithmétiques

+I/+D/+R Addition: ACCU1 = ACCU2 + ACCU1-I/-D/-R Soustraction: ACCU1 = ACCU2 - ACCU1×I/ ×D/ ×R Multiplication: ACCU1 = ACCU2 × ACCU1÷I/ ÷D/ ÷R Division: ACCU1 = ACCU2 ÷ ACCU1

I si integer 16 bits, D si integer 32 bits, R si réels 32 bits

Page 7: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 7/25

 

7

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE STEP 7 ILLANGAGE STEP 7 IL

• INSTRUCTIONS DE COMPARAISON SUR ENTIERS ET REELS

Bit accumulateur mis à ‘ 1 ’ si

==D/ ==I/ ==R ACCU2 = ACCU1

><D/ ><I/ ><R ACCU2 ≠ ACCU1

>D/ >I/ >R ACCU2 > ACCU1

>=D/ >=I/ >=R ACCU2 ≥ ACCU1

<D/ <I/ <R ACCU2 < ACCU1

<=D/ <=I/ <=R ACCU2 ≤ ACCU1

D pour entier 32 bits, I pour entiers 16 bits, R pour réels 32 bits

• OPERATIONS COMBINATOIRES SUR MOTS

OD/OW OU sur MOT DOUBLE (32 bits) ou MOT (16 bits)

UD/UW ET sur MOT DOUBLE (32 bits) ou MOT (16 bits)

XOD/XOW OU EXCLUSIF sur MOT DOUBLE ou MOT

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE STEP 7 ILLANGAGE STEP 7 IL

• OPERATION D’APPEL DES BLOCS

UC FC/FB Saut inconditionnel, appel du bloc

CC FC/FB Saut conditionnel, appel du bloc

si bit accumulateur RLG =1

CALL FC/FB/SFC/SFB saut avec transfert de paramètres

exemples: call FCn

call SFCn

call FBn1,DBn2

call SFBn1,DBn2

• INSTRUCTIONS DE FIN DE BLOC

BE Fin de bloc (requis)

BEB Saut conditionnel (si RLG=1) à la fin du bloc

BEA Saut inconditionnel à la fin du bloc

Page 8: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 8/25

 

8

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE STEP 7 ILLANGAGE STEP 7 IL

• OPERATIONS DE SAUT

SPA saut (JUMP) inconditionnel

SPB saut (JUMP) conditionnel si RLG=1

LOOP boucle de programme

• UTILISATION DES TEMPOS (TIMERS)

 Départ:

U E/A/M

L S5T#3SSS Tn SE: démarrage de la tempo (retard à la montée mémorisée)

Utilisation:

U/O/UN/ON Tn

Quelques types de tempos:

SI, SV, SE, SS, SA

 

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE STEP 7 ILLANGAGE STEP 7 IL

• TYPES DE TEMPOS (TIMERS)

SE: Temporisation sous forme de retard à la montée

 Démarrage si RLG passe de 0 à 1

Particularité: arrêt de la temporisation si le signal de départ retombe à 0SS: Temporisation sous forme de retard à la montée mémorisé

Particularité: la tempo continue même si le signal de départ retombe à 0

SA: Temporisation sous forme de retard à la retombé

 Démarrage si RLG passe de 1 à 0

SI: Temporisation sous forme d'impulsion

 La tempo monte à 1 après le départ et redescend après le temps imparti

SV: Temporisation sous forme d'impulsion prolongée

Particularité: la tempo continue même si le signal de départ retombe à 0

Page 9: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 9/25

 

9

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE STEP 7 ILLANGAGE STEP 7 IL

• MODE D’ADRESSAGE DIRECT ET INDIRECT

 Mode direct:

L 4

L MW7

 Mode indirect:

L 5

T MW2

L T[MW2] équivalent à L T5

L P#8.7

L MD2

U E[MD2] équivalent à U E8.7

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE STEP 7 ILLANGAGE STEP 7 IL

• NOUVEAUX TYPES DE VARIABLES

 Array: ARRAY[x1..x2,y1..y2,z1..z2]

Structure: STRUCT

:

:

END_STRUCT

<name-struct.name-var>

Page 10: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 10/25

 

10

EDITEUR DE PROGRAMME STEP 7EDITEUR DE PROGRAMME STEP 7

• PROGRAMME SOUS WINDOWS 95

• ARCHITECTURE ARBORESCENTE DU PROJET– niveau 1, le projet: la station connectée et le réseau (MPI)

– niveau 2, la définition de la station: CPU et sa configuration matérielle

– niveau 3, les différents programmes (programmes S7) et la table de connexion pour le

réseau

– niveau 4: sources externes, tables de mnémoniques

– niveau 5: les blocs de programmes.

• PROGRAMMER ON LINE ou OFF LINE

• PLUSIEURS LANGAGES: IL, CONT, LOG

• VISUALISATION DYNAMIQUE ET FORCAGE DS VARIABLES

• DEFINITION DE LA CONFIGURATION MATERIELLE

ALLEN BRADLEY CONTROL LOGIX 5550ALLEN BRADLEY CONTROL LOGIX 5550CARACTÉRISTIQUES PRINCIPALES

• Processeur– logique– de communication

• Communications

– RS 232 / 422 / 423– DH+– RIO (Remote I/O)

• RESEAUX:– ETHERNET TCP/IP (option)– DEVICENET

• LANGAGES– LD (ladder)– SFC (Sequential Function Chart basé sur la norme IEC 1131-3)– Function Blocks (FB)

Page 11: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 11/25

 

11

ORGANISATION DES PROGRAMMESORGANISATION DES PROGRAMMES

• Tasks– Main tasks

• Main Programm– Programm Tags– Main routine_0– Routine_1– Routine_2– ...

– Unscheduled Programm– Programm Tags– Main routine_A– Routine_B– ...

ADRESSAGE DES VARIABLESADRESSAGE DES VARIABLES

• L’ADRESSAGE COMPLET– L’adressage se fait en suivant la logique du matériel– Par exemple

Local: 2:I.Data.11où

• 2 = numéro du rack de la carte (sur notre matériel 1 = Devicenet, 2 carted’entrées, 3 cartes des sorties)

• I est mis pour entrées et O pour sorties• Data = données• 11 = numéro du bit (sur notre matériel, 0 à 31)

• UTILISATION DE « TAGS »– Il est possible de définir des noms qui « pointent » vers l ’adresse physique et qui

évoquent la signification de la variable

Page 12: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 12/25

 

12

DEFINITIONDEFINITION DES VARIABLESDES VARIABLES

• La définition des données est réalisée dans « Controller Tags » pour tous lesprogrammes ou bien dans « Programme Tags » si la définition doit êtrevalable uniquement dans le programme considéré.

• La démarche de définition d’une nouvelle variable est assez semblable à celleque l’on trouve pour les langages de programmation structurées desordinateurs (Pascal , Fortran, C) : définition du nom de la variable, de sontype et de son champ si c’est un tableau. De manière pragmatique, on utiliseles lignes des tableaux mis à disposition.

• Les variables qui seront visibles par OPC seront définies dans « ControllerTags ».

TYPE DE DONNEESTYPE DE DONNEES

• BOOL

Booléen, c’est-à-dire 1 bit

Valeur 0/1

• SINT

Entier court codé sur 7 bits + S:C (bit de report), soit 1 octet

Valeur de -128 à +126

• INTEntier codé sur 15 bits + S:C (bit de report), soit 2 octets

Valeur de -32768 à +32767

• DINT

Entier double codé sur 31 bits + S:C (bit de report), soit 4 octets

Valeur de - 2 147 483 648 à + 2 147 483 647

Page 13: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 13/25

 

13

TYPE DE DONNEES (suite)TYPE DE DONNEES (suite)• REAL

Nombre (réel) en virgule flottante codé sur 4 octets

Valeurs entre -3,402823E38 à -1,1754944E-38 (valeurs négatives), 0

et 1,175499E-38 à 3,402823E38 (valeurs positives)

• REMARQUE– Les types de données sont conformes aux types définis dans la norme CEI 1131-3

• CONVERSIONS– Il est possible de convertir

• des SINTs ou des INTs en REALs (sans perte de précision)• des DINTs en REALs (avec éventuelle perte de précision à cause de l ’exposant du REAL)

• des REALs en un nombre entier avec arrondi

– Il est impossible de convertir à partir ou vers le type de donnée BOOL

CONCEPT DE TABLEAUCONCEPT DE TABLEAU

• DEFINITION

– one_d_array DINT[3]

– two_d_array DINT[4,5]

– three_d_array DINT[2,3,4]

• Les dimensions sont basées sur zéro (i.e. les indices commencent à zéro)

– par exemple, dans one_d_array one les éléments suivants:

• one_d_array[0], one_d_array[1], one_d_array[2]

• LA RÉFÉRENCE aux éléments peut se fait de manière statique

– par exemple: one_d_array[1]

ou de manière dynamique

– par exemple: MOV la valeur 2 dans la variable position et puis faireone_d_array[ position]

Page 14: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 14/25

 

14

CONCEPT DE TABLEAU (suite)CONCEPT DE TABLEAU (suite)• ATTENTION! Assurez-vous que tout indice de tableau est dans les limites de

définition du tableau. Les instructions qui lisent les tableaux produisent un défautmajeur si l’indice dépasse la dimension déclarée.

• BIT DANS UN TABLEAU

– On peut adresser des bits dans des éléments d’un tableau à l’aide du « . »

– Exemple: one_d_array[0].3

• STOCKAGE DES DONNEES D’UN TABLEAU

– pour un tableau à deux dimensions, le stockage s’effectue ligne par ligne

• ALLOCATION DE MEMOIRE

– les bits de poids fort sont placés en premier lieu dans les adresses de la mémoire

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE LADDERLANGAGE LADDER

• ADRESSAGE DES VARIABLES

Structure

ex. les tempos Bit DN T4 : 0.DN (Bit done )

Word PV T4 : 0.PRE

Word ACT4 : 0.ACC

• DIVERS

Bit système S : 1 / 15 mis à ‘ 1 ’ lors du premier cycle d’automate

Page 15: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 15/25

 

15

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE LADDERLANGAGE LADDER

• PRINCIPALES INSTRUCTIONS SUR BITS

A A

-] [- A -] / [- non A

A

-( )- A = 1

A A

-(L)- set A -(U)- reset A

-[ONS]- Valide les sorties quand les entrées précédents l’instruction

ONS passent de 0 à 1

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE LADDERLANGAGE LADDER

• INSTRUCTIONS DE TYPE RELAIS

Test circuit fermé XIC (et)

Test circuit ouvert XIO (et pas)

Activation de sortie OTE (=)

Accrochage de sortie OTL (set)Décrochage de sortie OTU (reset)

Entrée immédiate IIN

Sortie immédiate IOT

• INSTRUCTIONS LOGIQUESET logique AND

OU logique OR

OU exclusif XOR

Complément NOT

Page 16: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 16/25

 

16

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE LADDERLANGAGE LADDER

• INSTRUCTIONS DE TEMPORISATION ET DE COMPTAGETemporisation au travail: TONTemporisation au repos: TOFTemporisation à mémoire RTOCompteur CTUDécompteur CTDRemise à zéro RES

• INSTRUCTIONS DE COMPARAISONComparaison CMP

Egalité EQUDifférence NEQSupériorité GRTSupériorité ou égalité GEQInfériorité LESInfériorité ou égalité LEQ

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE LADDERLANGAGE LADDER

• INSTRUCTIONS DE CALCUL

Calcul CPT

Addition ADD

Soustraction SUB

Multiplication MULDivision DIV

Moyenne AVE

Effacement CLR

Négation NEG

Racine carrée SQR

Tri SRT

Ecart type STD

Page 17: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 17/25

 

17

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE LADDERLANGAGE LADDER

• INSTRUCTIONS DE TRANSFERTTransfert d’un mot: MOVTransfert masqué MVM

• INSTRUCTIONS DE CONTROLE DE PROGRAMMESaut JMPSaut au sous-programme JSREtiquette LBLRetour RETBoucle FOR, NXT, BRK

Fin temporaire TND• INSTRUCTIONS DE DIALOGUE MODULES INTELLIGENTSTransfert en bloc écriture BTWTransfert en bloc lecture BTR

• INSTRUCTIONS DE COMMUNICATIONSMSG

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE LADDERLANGAGE LADDER

• PRINCIPALES INSTRUCTIONS DE PROGRAMMATION

Comparaison: Bloc EQU EQUAL source A et source B

 Affectation: Bloc MOV MOVE source A vers source B

Temporisation: Bloc TON TIMER ON DELAY

Compteur  Bloc CTU COUNT

 Envoie et  Bloc MSG SEND/RECEIVE MESSAGEréception de messages:

Page 18: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 18/25

 

18

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE LADDERLANGAGE LADDER

• PRINCIPALES INSTRUCTIONS DE PROGRAMMATION

99

Saut: -(JMP)-

99

 Label: -[LBL]-

 Appel sous routine: Bloc JSR JUMP TO SUBROUTINE

Fin de sous routine: Bloc RET RETURN

EDITEUR DE PROGRAMMEEDITEUR DE PROGRAMMEROCKWELL SOFTWAREROCKWELL SOFTWARE

• ATELIER RSLOGIX sous Windows 2000– Programmation RSLOGIX

– Interface réseau RSLINX

– Configuration réseau RSNETWORX

• PLUSIEURS LANGAGES– Grafcet

– Ladder diagramm (langage à relais)

• PROGRAMMER ON LINE ou OFF LINE

• POINTS MARQUANTS– programmation on line très performante

– visualisation dynamique

– mnémoniques (tags)

– très bonne documentation

Page 19: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 19/25

 

19

TELEMECANIQUETELEMECANIQUE SCHNEIDERSCHNEIDERTSX PREMIUMTSX PREMIUM

CARACTÉRISTIQUES PRINCIPALES

• Multiprocesseur

– Processeur principal

– Processeur de contrôle d’axe

– Processeur d’interface avec l’opérateur

– Processeur de communication

• Multi langage

– Ladder

– Literal (langage arithmétique et booléen de haut niveau)• Mode séquentiel

– Programmation GRAFCET

– Mode d’exécution séquentielle

ORGANISATION DES PROGRAMMESORGANISATION DES PROGRAMMES

GRAFCET

SCHEDULER

POST-PROC

PRE-PROC

FAST TASK

INTERRUPT

DRIVEN TASK

INTERRUPT

CLOCK

(10 - 20 ms)

CLOCK

(10 - 20 ms)

CLOCK

(40 - 80 ms)

CLOCK

(40 - 80 ms)

CLOCK

(150 - 500 ms)

HIGH

LOW

OPTINAL

MANDOTORY

OPTIONAL

PRIORITY

AUXILIARY TASKS

0

1

2

3

MASTER TASK

Page 20: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 20/25

 

20

LES VARIABLES DU TSX PREMIUMLES VARIABLES DU TSX PREMIUM

• ADRESSAGE DES BITS– Bits d’entrée % IXx.i

– Bits de sortie %QXx.i

– Bits internes %MXi (accès en écriture)

– Bits systèmes %Si

– Bits extraits de mots ex. %MW10:X5

– Bits d’étape (prog. GRAFCET) %Xi (accès en écriture)

• ADRESSAGE DES MOTS– % Symbole

– M, K ou S = Type d'objet: M = interne, K = constante, S = système

– B, W, D ou F = Format : B = octet, W = mots, D = double mots, F = flottants

– i = Numéro

LES VARIABLES DU TSX PREMIUM (suite)LES VARIABLES DU TSX PREMIUM (suite)

• ADRESSAGE DES OBJETS DE MODULES ENTRÉES/SORTIES DANS DESRACKS Dans les équipements FIPIO, l'adressage des principaux objets bits et motsd'entrée/sortie est défini par les caractères suivants:

– % = Symbole– I,Q, M ou K = Type d’objet: I = entrée, Q = sortie, M = information en lecture-écriture,

K = information en configuration– X, W, D ou F = Format : X = booléen, W = mots, D = double mots, F = flottants– xy.i = Adresse du rack (x), position (y) et numéro de voie (i) du module TSX-Premium– .r = Rang : r=0 à 127 ou ERR

• POUR L'ADRESSAGE À TRAVERS LE RÉSEAU OU LES ENTRÉES / SORTIES DÉPORTÉESLe chemin complet à la station est rajouté au numéro de position (ou rack position)encadré par le séparateur backslash \.Exemple: %I\0.2.1\0.16 bouton rouge sur notre poste balle

%Q\0.2.1\0.16.2 lampe rouge correspondante

Page 21: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 21/25

 

21

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE PL7LANGAGE PL7--3 (LITERAL)3 (LITERAL)

• INSTRUCTIONS SUR CHAINE DE BITS

Bitx[y] Biti[j] Transfert un chaîne vers une autre chaîne

x = premier bit à transférer

[y] = nombre de bits à transférer

Bitx[y] word

Word Bitx[y]

 Remarque

les bits de poids le plus faible sont toujours alignés

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE PL7LANGAGE PL7--3 (LITERAL)3 (LITERAL)

• SYNTAXEFormat 

! Phrases LITTERALE (Literal language) 512 charactères maximumPhrase d’actions: une ou plusieurs actions seules séparées par des ‘ ; ’

! RESET B6! B1 . B3 O4,6 ; W4 + W6 W8

Conditions:

! IF Condition THEN Action ; END_IF! IF Condition THEN Action 1 ELSE Action2 ; END_IF

ex: ! IF Condition THEN SET B6 ; END_IF! IF Condition THEN SET B6 ELSE RESET B4; ; END_IF

Structure itérative

! WHILE Condition DO Action

Page 22: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 22/25

 

22

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE PL7LANGAGE PL7--3 (LITERAL)3 (LITERAL)

• APPEL AUX SOUS ROUTINES

 Routine principale

MAIN

Sous routines

SR*

 Appel aux sous routines

CALL SRn

Fin de sous routine (retour)

RET• SAUTS ET LABELS

JUMP L{Label de ligne}

L{Label de ligne}

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE PL7LANGAGE PL7--3 (LITERAL)3 (LITERAL)

• TEMPORISATIONS

Preset de la tempo

STOP T1 ; 20 T1,P ; PRESET T1

 Démarrage tempo

START T1

Utilisation de la tempo

T1,D Bi

Page 23: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 23/25

 

23

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE PL7LANGAGE PL7--33

• BIT VARIABLES

Input Ixy,i x le numéro du rack: de 0 à F

y le numéro du slot: de 0 à F

Output Oxy,i i le numéro du bit: de 0 à F

Flag (mémo interne) Bi i = 0 à 4000 (max)

GRAFCET step Xi i = 0 à 127 (max)

Data words Wi,j i, le numéro du mot: de 0 à 64000 (max)

 j, le numéro du bit: de 0 à FCommon words COMi,j,k i, le numéro de la station: de 0 àF

 j, le numéro du mot: de 0 à 3

k, le numéro du bit: de 0 à F

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE PL7LANGAGE PL7--3 (LITERAL)3 (LITERAL)

• WORD VARIABLES (=16 bits)

Data Words Wi i = 0 à 64000 (max)

Common Words COMi,j i = numéro de la station: de 0 à F

 j = le numéro du mot: de 0 à 3

GRAFCET Xi,V i = numéro du step: de 0 à 127

Page 24: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 24/25

 

24

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE PL7LANGAGE PL7--3 (LITERAL)3 (LITERAL)

• INSTRUCTIONS SUR BIT

Bit Accès au bit

Bit Assignation au Bit

SET Bit Set (=mise à ‘ 1 ’) du Bit

RESET Reset (=mise à ‘ 0 ’) du Bit

RE(Bit) Détection du front montant du Bit

FE(Bit) Détection du front descendant du Bit

NOT Inversion logique du Bit

. AND logique+ OU logique

( ) Parenthèses

REVUE DES PRINCIPALES INSTRUCTIONS DUREVUE DES PRINCIPALES INSTRUCTIONS DULANGAGE PL7LANGAGE PL7--3 (LITERAL)3 (LITERAL)

• INSTRUCTIONS SUR MOT

Word Accès au mot

Word Assignation à un mot

INC Incrémentation du mot

DEC Décrémentation du mot

Comparaisons

>, >=, <, <=, =, <>

Attention: mettre les arguments entre [ ]

Opérations arithmétiques

+, -, *, / 

Opérations logiques

AND, OR, XOR, CPL (compléments)

Page 25: Lang Ages 02

5/12/2018 Lang Ages 02 - slidepdf.com

http://slidepdf.com/reader/full/lang-ages-02 25/25

 

25

EDITEUR DE PROGRAMME TELEMECANIQUEEDITEUR DE PROGRAMME TELEMECANIQUE

• ATELIER LOGICIEL XTEL SOUS OS/2– PL7 3 logiciel de programmation

– SDBASE base de données et des mnémoniques

• PLUSIEURS LANGAGES: GRFCET ou LANGAGE LITTERAL

• PROGRAMMER ON LINE ou OFF LINE

• MODES OPERATOIRES– Configuration:

– Programme: accéder et éditer les différentes sous routines

– Constante:–  Réglage:

–  Données:

–  Mise au point: visualisation dynamique des variables

– Transfert: entre le PC et l’automate