Beruflich Dokumente
Kultur Dokumente
dfaut: BOOL
libration: BOOL
BOOL 1 1 ou 0
BYTE 8 B#16#A9
WORD 16 W#16#12AF
DWORD 32 DW#16#ADAC1EF5
CHAR 8 CHAR
S5TIME 16 S5T#5s_200ms
INT 16 123
DINT 32 65539 ou L#-1
REAL 32 REAL
TIME 32 T#2D_1H_3M_45S_12MS
DATE 16 D#200-07-21
TIME-OF-DAY 32 TOD#12:23:45.12
Forme compacte de la
transmission de donnes lors de
l'appel d'un bloc: in entrainement UDT1
out ... ...
"beaucoup" de donnes in moteur UDT1
peuvent tre transmises dans out ... ...
un paramtre . .
.
permet la programmation CALL "rgulateur"
.
5 U #moteur.libration
structure moteur:= #entrainement .
.
les blocs "communiquent" .
.
uniquement par la structure
des paramtres
bloc rutilisable
Valeurs_mesurees: ANY
ANY 80 .
L P## Valeurs_mesurees
Mmentos
MIS DBz
.
MIE DBy .
.
Priphrie DBx
.
1 . 2
. .
CALL FB1 CALL FC5
. .
.
4 . 3
5 FC10
. 5
.
CALL FC10
.
. 6
Occupation LD pour OB1 LD pour OB1 LD pour OB1 LD pour OB1 LD pour OB1 LD pour OB1 LD pour OB1
de la pile L
LD pour FB1 LDpour
LD pour FB1
FB1 LD pour FB1
pour OB1 LD pour FC10
libre LD pour FC5 libre
libre
libre libre
libre libre
p.ex. 256 octets
Dbut de cycle 1 2 3 4 5 6
LD = donnes locales
Variables auxiliaires
Ramifications de la pile des
donnes locales
Fonction
OB1
FC10
Donnes globales
DB20
Fonction
FC20
unidimensionnel: Point_mesure[10]:Real
Nom de tableau: ARRAY[min_index..max_index] OF type de donnes;
multidimensionnel:
Nom de tableau: ARRAY[min_index1..max_index1,min_index2..max_index2] OF
type de donnes;
Exemples:
Dclaration d'une variable:
unidimensionnel: valeur_mesuree: ARRAY[1..10] OF REAL;
multidimensionnel: resultat: ARRAY[1..5,2..8] OF INT;
STRUCT (Structure):
Groupe de composantes MoteuCommande: STRUCT
de diffrents types de donnes Consigne_Vitesse: REAL
Vitesse_Reelle: REAL
Dclaration: Liberation: BOOL
NomStructure: STRUCT
Defaut: BOOL
NomComp1: type de donnes;
NomComp2: type de donnes; END_STRUCT
...
END_STRUCT
Exemple:
Dclaration d'une variable: Accs la variable
MoteurCommande: STRUCT S #MoteurCommande.Liberation
Vitesse_Reelle : REAL; L #MoteurCommande.Vitesse_Relle
Consigne_Vitesse : REAL; T #MoteurCommande.Consigne_Vitesse
Liberation : BOOL;
...
Defaut : BOOL;
END_STRUCT;
SIMATIC S7 Date: 07.02.2013 Siemens Centre de Formation
Savoir pour automatiser
Siemens AG 2000. All rights reserved. Fichier: PRO2_05f.16
Dclaration de STRUCTs
Exemple: Dclaration de tableau - structure - tableau
DB6 "Vue de dclaration"
. . .
. . .
1) n = paire
Exemple:
Dfinition d'un nouveau type de donnes (structure):
UDT1 STRUCT
Consigne_Vitesse : REAL; ...
Vitesse_Relle : REAL;
Libration : BOOL; UDT1: STRUCT
Dfaut : BOOL; Consigne_Vitesse: REAL
END_STRUCT; Vitesse_Reelle: REAL
Dclaration de variables: Liberation: BOOL
Moteur_1: UDT1; Defaut: BOOL
Moteur_2: UDT1;
END_STRUCT
Accs aux variables:
L #Moteur_1.Vitesse_Relle
FC23
Octet n+2
Jour Heure Octet n+3
(01 ... 31) (00 ... 23)
Minute Secondes
Octet n+4 Octet n+5
(00 ... 59) (00 ... 59) 1=Dimanche
2=Lundi
Jour de 3=Mardi
Octet n+4
Millisecondes 4=Mercredi
semaine Pctet n+7
(000 ... 999) (1..7) 5=Jeudi
6=Vendredi
7=Samedi
Traitement:
Accs lmentaires:
L #message_defaut[5] (charge le 5ime caractre de message_defaut)
Traitement au moyen de FCs de la bibliothque IEC
Exemple:
Dclaration avec initialisation
Prnom: STRING[8]: 'TOTO'
Sauvegarde de la variable STRING "prnom"
Octet n1) Longueur max = 8 Indique le nombre max. de caractres pouvant tre
sauvegards
Octet n+1 Longueur actuelle = 4 Indique le nombre de caractres effectifs
Octet n+2 1. caractre = 'T'
Octet n+3 2. caractre = 'O' L'information sur le nombre max. de caractres
Octet n+4 3. caractre = 'T' pouvant tre sauvegards, ou sur la longueur
actuelle est traite par la fonction de
Octet n+5 4. caractre = 'O'
bibliothque IEC.
Octet n+6 B#16#00
1) n = paire
UDT99 "Moteur"
DB51 "Rouleaux_Moteurs"
...
SFC1
EN ENO
RET_VAL ??.?
CDT ??.?