types de données et variables de step 7

28
Date: 06.05.22 Fichier: PRO2_05f.1 SIMATIC S7 Siemens AG 2000. All rights reserved. Siemens Centre de Formation Savoir pour automatiser Types de données et variables de STEP 7

Upload: abdelkrim-lamrous

Post on 09-Aug-2015

1.748 views

Category:

Documents


46 download

TRANSCRIPT

Page 1: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.1

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Types de données et variables de STEP 7

Page 2: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.2

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Les types de données caractérisent les propriétés fondamentales de données

zone continue: p.ex. vitesse_réelle propriété "oui/non": p.ex. défaut

vitesse _réelle: REAL

défaut: BOOL

consigne_vitesse : REAL

libération: BOOL

Signification de types de données et variables

Les types de données caractérisent les propriétés fondamentales de données

zone continue: p.ex. vitesse_réelle propriété "oui/non": p.ex. défaut

Le type de données détermine: la plage des valeurs admissible

(INT: -32 768 ... +32 767, etc.) les opérations admissibles

(opérations arithmétiques : +, -, etc.) abstraction de la représentation de base

des bits dans la mémoire

Page 3: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.3

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Par la déclaration d'une variable, les propriétés suivantes sont déterminées:

nom symbolique type de données plage de validité

Propriétés et déclaration de variables

point_mesure[1]: Real

point_mesure[2]: Real

point_mesure[3]: Real

point_mesure[10]: Real

point_mesure: ARRAY[1..10]

Par la déclaration d'une variable, les propriétés suivantes sont déterminées:

nom symbolique type de données plage de validité

Variables peuvent être déclarées: dans la liste globale des symboles

(type de données élémentaire) dans la partie déclarative d'un bloc

de données globales (tous les types de données)

dans la partie déclarative d'un bloc logique (OB, FB et FC)

Page 4: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.4

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Types de donnéescomplexes

(supérieur à 32 bits)

Types de données utilisateur(supérieur à 32 bits)

Types de donnéesélémentaires

(jusqu'à 32 bits)

Aperçu des types de données dans STEP 7

• Types de données bit (BOOL, BYTE, WORD, DWORD, CHAR)

• Types de date et heure (DATE_AND_TIME)

Type de données UDT (User Defined Type)

• Types de données bit (BOOL, BYTE, WORD, DWORD, CHAR)

• Types de temporisations (S5TIME, TIME, DATE, TIME_OF_DAY)

• Types de données bit (BOOL, BYTE, WORD, DWORD, CHAR)

• Types de temporisations (S5TIME, TIME, DATE, TIME_OF_DAY)

• Types de données arithmétiques (INT, DINT, REAL)

• Types de date et heure (DATE_AND_TIME)

• Tableau (ARRAY)

• Types de date et heure (DATE_AND_TIME)

• Tableau (ARRAY)

• Structure (STRUCT)

• Types de date et heure (DATE_AND_TIME)

• Tableau (ARRAY)

• Structure (STRUCT)

• Chaîne de caractères (STRING)

Page 5: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.5

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Types de données élémentaires dans STEP 7

Largeur (en bits)Mot-clé Exemple d'une constante de ce type

BOOL 1 1 ou 0BYTE 8 B#16#A9WORD 16 W#16#12AFDWORD 32 DW#16#ADAC1EF5CHAR 8 CHAR

S5TIME 16 S5T#5s_200ms

INT 16 123DINT 32 65539 ou L#-1REAL 32 REAL

TIME 32 T#2D_1H_3M_45S_12MSDATE 16 D#200-07-21TIME-OF-DAY 32 TOD#12:23:45.12

Page 6: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.6

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Signification de types de données complexes

consigne_vitesse: REAL

vitesse_réelle: REAL

libération: BOOL

défaut: BOOL

Moteur: STRUCT

END_STRUCT

Permet de structurerles données:

adaptée à l'énoncé avec type de données "correct"

5

.

.CALL "régulateur" moteur:= #entrainement

..

in entrainement UDT1out ... ...

.

.U #moteur.libération

.

.

in moteurUDT1

out ... ...

Forme compacte de la transmission de données lors de l'appel d'un bloc:

"beaucoup" de données peuvent être transmises dans un paramètre

permet la programmation structurée

les blocs "communiquent" uniquement par la structure des paramètres

bloc réutilisable

Page 7: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.7

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Types de données complexes dans STEP 7

Largeur (en bits)Mot-clé Exemple

DATE_AND_TIME(date et heure)

64 DT#00-07-22-12:14:55.0

STRING(chaîne de caractères avecmax. 254 caractères)

8 * (nombre descaractères +2)

'Ceci est n string''SIEMENS'

ARRAY(tableau, groupe decomposantes du mêmetype de données)

défini parl'utilisateur

Valeurs meurées: ARRAY[1..20]INT

STRUCT(structure, groupe decomposantes de différenttype de données)

défini parl'utilisateur

Moteur: STRUCT Vitesse de rotation: INT Courant: REALEND_STRUCT

UDT(User Defined data Type =type de données utilisateur,"modèle" de type de donnéesélémentaires ou complexes)

défini parl'utilisateur

UDT comme bloc comme élément de tableau

STRUCT Vitesse de rotation: INT Courant: REALEND_STRUCT

Entrainement: ARRAY[1..4] UDT1

Page 8: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.8

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Types de paramètres dans STEP 7

Largeur (en bits)Mot-clé Exemple

TIMER 16Temps_contact: TIMER.SI #temps_contact

COUNTER 16Nbre_pieces_finies: COUNTER.LC Nbre_pieces_finies

BLOCK_FBBLOCK_FCBLOCK_DBBLOCK_SDB

16Retour: BLOCK_FB.UC #Retour

POINTER 48Mesure: POINTER.L P##Mesure

ANY 80Valeurs_mesurees: ANY.L P## Valeurs_mesurees

Page 9: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.9

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

. .DBz

.

Zones de variables

Mémentos

MIS

MIE

Périphérie

Pile des donnéeslocales

Zones d'automate"classiques"

DBy

Blocs de données

DBx

Page 10: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.10

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Fonctionnement de la pile des données locales

Occupation de la pile Lpour OB1

p.ex. 256 octets

5

OB1

FC10

.

.CALL FB1

.

.

1

4

5..

CALL FC10..

FB1

6

Début de cycle

LD pour OB1

libre

1

LD pour OB1

LD pour FB1

libre

3

LD pour OB1

LD pour FB1

libre

4

LD pour OB1

libre

5

LD pour OB1

LD pour FC10

libre

6

LD pour OB1

libre

LD = données locales

FC5

.

.CALL FC5

.

.

2

3

LD pour FB1

2

LD pour OB1

LD pour FC5

libre

LDpour FB1

Page 11: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.11

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Exemple: utilisation des données locales par l'éditeur CONT/LOG

Ramification en CONT Représentation en LIST

RamificationsVariables auxiliaires

de la pile des données locales

Page 12: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.12

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Blocs de données (DB)

FonctionFC10

FonctionFC20

OB1

Données globales

DB20

Accès de tous les blocs

Bloc defonction

FB1

Données d'instance

DB5

DB d'instance pour FB1

Page 13: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.13

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Le type de données: ARRAY

ARRAY (tableau): Groupe de composantes

du même type de données Point_mesure[1]: Real

Point_mesure[2]: Real

Point_mesure[3]: Real

Point_mesure[10]: Real

Point_mesure: ARRAY[1..10]

.

.

.

.

ARRAY (tableau): Groupe de composantes

du même type de données

Déclaration:• unidimensionnel:

Nom de tableau: ARRAY[min_index..max_index] OF type de données;

• multidimensionnel:Nom de tableau:ARRAY[min_index1..max_index1,min_index2..max_index2] OF

type de données;

ARRAY (tableau): Groupe de composantes

du même type de données

Déclaration:• unidimensionnel:

Nom de tableau: ARRAY[min_index..max_index] OF type de données;

• multidimensionnel:Nom de tableau:ARRAY[min_index1..max_index1,min_index2..max_index2] OF

type de données;

Exemples: Déclaration d'une variable:

• unidimensionnel: valeur_mesuree: ARRAY[1..10] OF REAL;

• multidimensionnel: resultat: ARRAY[1..5,2..8] OF INT;

ARRAY (tableau): Groupe de composantes

du même type de données

Déclaration:• unidimensionnel:

Nom de tableau: ARRAY[min_index..max_index] OF type de données;• multidimensionnel:

Nom de tableau:ARRAY[min_index1..max_index1,min_index2..max_index2] OF

type de données;

Exemples: Déclaration d'une variable:

• unidimensionnel: valeur_mesuree: ARRAY[1..10] OF REAL;• multidimensionnel: resultat: ARRAY[1..5,2..8] OF INT;

Accès à une variable:• L #valeur_mesuree[5] // Charger le 5ième élément de l'ARRAY

valeur_mesuree dans l'ACCU1• T #resultat[2,5]

Page 14: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.14

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Déclaration et initialisation de tableaux (ARRAY)

DB5 "Vue de déclaration"

DB5 "Vue de données"

Page 15: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.15

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Sauvegarde de variables ARRAY dans la mémoire

Octet n1)

Tableaux unidimensionnels Tableaux multidimensionnels Type de données BOOL

8 7 6 5 4 3 2 1

7 6 5 4 3 2 1 0

12 11 10 9Octet n+1

Type de données BYTE, CHAR

Octet m

Octet m+1

Octet m+2

Octet 1

Octet 2

Octet 3. ..

Exemple.ARRAY[1..2,1..3,1..2] OF BYTE

Octet n1)

Octet n+1

Octet n+2

Octet 1.1.1

Octet 1.1.2

Octet 1.2.1

. ..Octet 1.2.2

Octet 1.3.1

Octet 1.3.2

Octet 2.1.1

Octet 2.1.2

Octet 2.2.1

Octet 2.2.2

Octet 2.3.1

Octet 2.3.2

1) n = paire

Type de données WORD, DWORD,...

Octet n1)

Octet n+1

Octet n+2 Byte 3Mot 2

Octet n+2. ..

Mot 1

non affecté

Page 16: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.16

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

STRUCT (Structure): Groupe de composantes

de différents types de données

Le type de données: STRUCT

Consigne_Vitesse: REAL

Vitesse_Reelle: REAL

Liberation: BOOL

Defaut: BOOL

MoteuCommande: STRUCT

END_STRUCT

STRUCT (Structure): Groupe de composantes

de différents types de données

Déclaration:NomStructure: STRUCT

NomComp1: type de données;NomComp2: type de données;...

END_STRUCT

STRUCT (Structure): Groupe de composantes

de différents types de données

Déclaration:NomStructure: STRUCT

NomComp1: type de données;NomComp2: type de données;...

END_STRUCT

Exemple: Déclaration d'une variable: Accès à la variable

• MoteurCommande: STRUCT S #MoteurCommande.LiberationVitesse_Reelle : REAL; L

#MoteurCommande.Vitesse_Réelle Consigne_Vitesse : REAL; T #MoteurCommande.Consigne_Vitesse Liberation : BOOL; ...

Defaut : BOOL; • END_STRUCT;

Page 17: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.17

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Déclaration de STRUCTs

Exemple: Déclaration de tableau - structure - tableau

DB6 "Vue de déclaration"

DB6 "Vue de données"

Page 18: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.18

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Sauvegarde de variables STRUCT dans la mémoire

Octet n1)

Structure avec types de données élémentaires

6 5 4 3 2 1

7 6 5 4 3 2 1 0

Octet n+1

Octet n+2 Octet 1

Octet 2

Octet 3

Octet n+8

Octet n+9Mot 1

Mot 2

. ..1) n = paire

Octet perdu

Octet perdu

Octet n+3

Octet n+4

Octet n+5

6 5 4 3 2 1

Octet perdu

Octet n+6

Octet n+7

. ..

Composantesavec type de données

élémentaire

Limite du mot

Composantesavec type de données

ARRAY

Composantesavec type de données

STRUCT

Limite du mot

. ..

Limite du mot

Structure avec types de données complexes

Page 19: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.19

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Types de données utilisateur: UDT

Types de données utilisateur UDT: Création d'un modèle pour utilisation

ultérieure lors de déclarations

Consigne_Vitesse: REAL

Vitesse_Reelle: REAL

Liberation: BOOL

Defaut: BOOL

UDT1: STRUCT

END_STRUCT

Types de données utilisateur UDT: Création d'un modèle pour utilisation

ultérieure lors de déclarations valable pour tous

les blocs du programme

Types de données utilisateur UDT: Création d'un modèle pour utilisation

ultérieure lors de déclarations valable pour tous

les blocs du programme

Exemple: Définition d'un nouveau type de données (structure):

UDT1 STRUCTConsigne_Vitesse : REAL; ...Vitesse_Réelle : REAL; Libération : BOOL;Défaut : BOOL;

END_STRUCT;

Types de données utilisateur UDT: Création d'un modèle pour utilisation

ultérieure lors de déclarations valable pour tous

les blocs du programme

Exemple: Définition d'un nouveau type de données (structure):

UDT1 STRUCTConsigne_Vitesse : REAL; ...Vitesse_Réelle : REAL; Libération : BOOL;Défaut : BOOL;

END_STRUCT; Déclaration de variables:

Moteur_1: UDT1;Moteur_2: UDT1;

Types de données utilisateur UDT: Création d'un modèle pour utilisation

ultérieure lors de déclarations valable pour tous

les blocs du programme

Exemple: Définition d'un nouveau type de données (structure):

UDT1 STRUCTConsigne_Vitesse : REAL; ...Vitesse_Réelle : REAL; Libération : BOOL;Défaut : BOOL;

END_STRUCT; Déclaration de variables:

Moteur_1: UDT1;Moteur_2: UDT1;

Accès aux variables: L #Moteur_1.Vitesse_Réelle

Page 20: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.20

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Utilisation de UDTsUDT5

FC23

Page 21: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.21

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Le type de données: DATE_AND_TIME

Octet n1)

Octet n+2

Octet n+4

Octet n+1

Octet n+3

Octet n+5

Année(90 ... 89)

Constitution:

Mois (01 ... 12)

Jour(01 ... 31)

Heure(00 ... 23)

Minute(00 ... 59)

Secondes(00 ... 59)

Octet n+4 Pctet n+7Millisecondes(000 ... 999)

Jour desemaine (1..7)

Toutes les valeurs sont sauvegardées dans le format BCD

1=Dimanche2=Lundi3=Mardi4=Mercredi5=Jeudi6=Vendredi7=Samedi

1) n = paire

Toutes les valeurs sont sauvegardées dans le format BCD

Préréglage des variables:

DT#Année-Mois-Jour-Heures:Minutes:Secondes.[Millisecondes]

Exemple: DT#2000-07-14-23:00:00:00

Toutes les valeurs sont sauvegardées dans le format BCD

Préréglage des variables:

DT#Année-Mois-Jour-Heures:Minutes:Secondes.[Millisecondes]

Exemple: DT#2000-07-14-23:00:00:00

Traitement par des fonctions de la bibliothèque IEC

Page 22: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.22

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Fonctions pour le traitement de variables DTBibliothèque IEC dans Standard Library

FC1 (AD_DT_TM): La fonction FC 1 additionne une durée (format TIME) et une date/heure (format DT) et fournit comme résultat une nouvelle date/heure (format DT).

Bibliothèque IEC dans Standard Library FC1 (AD_DT_TM): La fonction FC 1 additionne une durée (format TIME) et une

date/heure (format DT) et fournit comme résultat une nouvelle date/heure (format DT).

FC34 (SB_DT_DT): La fonction FC 34 soustrait deux date/heure (l'une de l'autre) (format DT) et fournit comme résultat une durée (format TIME).

Bibliothèque IEC dans Standard Library FC1 (AD_DT_TM): La fonction FC 1 additionne une durée (format TIME) et une

date/heure (format DT) et fournit comme résultat une nouvelle date/heure (format DT).

FC34 (SB_DT_DT): La fonction FC 34 soustrait deux date/heure (l'une de l'autre) (format DT) et fournit comme résultat une durée (format TIME).

FC35 (SB_DT_TM): La fonction FC 35 soustrait une durée (format TIME) d'une date/heure (format DT) et fournit comme résultat une nouvelle date/heure (format DT).

Bibliothèque IEC dans Standard Library FC1 (AD_DT_TM): La fonction FC 1 additionne une durée (format TIME) et une

date/heure (format DT) et fournit comme résultat une nouvelle date/heure (format DT).

FC34 (SB_DT_DT): La fonction FC 34 soustrait deux date/heure (l'une de l'autre) (format DT) et fournit comme résultat une durée (format TIME).

FC35 (SB_DT_TM): La fonction FC 35 soustrait une durée (format TIME) d'une date/heure (format DT) et fournit comme résultat une nouvelle date/heure (format DT).

FC3 (D_TOD_DT): La fonction FC 3 regroupe les formats de données DATE et TIME_OF_DAY (TOD) et les convertit dans le format de données DATE_AND_TIME (DT).

Bibliothèque IEC dans Standard Library FC1 (AD_DT_TM): La fonction FC 1 additionne une durée (format TIME) et une

date/heure (format DT) et fournit comme résultat une nouvelle date/heure (format DT).

FC34 (SB_DT_DT): La fonction FC 34 soustrait deux date/heure (l'une de l'autre) (format DT) et fournit comme résultat une durée (format TIME).

FC35 (SB_DT_TM): La fonction FC 35 soustrait une durée (format TIME) d'une date/heure (format DT) et fournit comme résultat une nouvelle date/heure (format DT).

FC3 (D_TOD_DT): La fonction FC 3 regroupe les formats de données DATE et TIME_OF_DAY (TOD) et les convertit dans le format de données DATE_AND_TIME (DT).

FC6 (DT_DATE): La fonction FC 6 extrait le format de données DATE du format DATE_AND_TIME.

Bibliothèque IEC dans Standard Library FC1 (AD_DT_TM): La fonction FC 1 additionne une durée (format TIME) et une

date/heure (format DT) et fournit comme résultat une nouvelle date/heure (format DT).

FC34 (SB_DT_DT): La fonction FC 34 soustrait deux date/heure (l'une de l'autre) (format DT) et fournit comme résultat une durée (format TIME).

FC35 (SB_DT_TM): La fonction FC 35 soustrait une durée (format TIME) d'une date/heure (format DT) et fournit comme résultat une nouvelle date/heure (format DT).

FC3 (D_TOD_DT): La fonction FC 3 regroupe les formats de données DATE et TIME_OF_DAY (TOD) et les convertit dans le format de données DATE_AND_TIME (DT).

FC6 (DT_DATE): La fonction FC 6 extrait le format de données DATE du format DATE_AND_TIME.

FC7 (DT_DAY): La fonction FC 7 extrait le jour de la semaine du format DATE_AND_TIME.

Bibliothèque IEC dans Standard Library FC1 (AD_DT_TM): La fonction FC 1 additionne une durée (format TIME) et une

date/heure (format DT) et fournit comme résultat une nouvelle date/heure (format DT).

FC34 (SB_DT_DT): La fonction FC 34 soustrait deux date/heure (l'une de l'autre) (format DT) et fournit comme résultat une durée (format TIME).

FC35 (SB_DT_TM): La fonction FC 35 soustrait une durée (format TIME) d'une date/heure (format DT) et fournit comme résultat une nouvelle date/heure (format DT).

FC3 (D_TOD_DT): La fonction FC 3 regroupe les formats de données DATE et TIME_OF_DAY (TOD) et les convertit dans le format de données DATE_AND_TIME (DT).

FC6 (DT_DATE): La fonction FC 6 extrait le format de données DATE du format DATE_AND_TIME.

FC7 (DT_DAY): La fonction FC 7 extrait le jour de la semaine du format DATE_AND_TIME.

FC8 (DT_TOD): La fonction FC 8 extrait le format de données TIME_OF_DAY du format DATE_AND_TIME.

Bibliothèque IEC dans Standard Library FC1 (AD_DT_TM): La fonction FC 1 additionne une durée (format TIME) et une

date/heure (format DT) et fournit comme résultat une nouvelle date/heure (format DT).

FC34 (SB_DT_DT): La fonction FC 34 soustrait deux date/heure (l'une de l'autre) (format DT) et fournit comme résultat une durée (format TIME).

FC35 (SB_DT_TM): La fonction FC 35 soustrait une durée (format TIME) d'une date/heure (format DT) et fournit comme résultat une nouvelle date/heure (format DT).

FC3 (D_TOD_DT): La fonction FC 3 regroupe les formats de données DATE et TIME_OF_DAY (TOD) et les convertit dans le format de données DATE_AND_TIME (DT).

FC6 (DT_DATE): La fonction FC 6 extrait le format de données DATE du format DATE_AND_TIME.

FC7 (DT_DAY): La fonction FC 7 extrait le jour de la semaine du format DATE_AND_TIME.

FC8 (DT_TOD): La fonction FC 8 extrait le format de données TIME_OF_DAY du format DATE_AND_TIME.

Fonctions de comparaison pour DT#variables: FC9 (EQ_DT), FC12 (GE_DT), FC14 (GT_DT), FC18 (LE_DT), FC23 (LT_DT), FC28 (NE_DT)

Page 23: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.23

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Le type de données: STRING

Variables du type STRING (chaîne de caractères): Type de données STRING représente une chaîne de caractères comprenant

jusqu'à 254 caractères Application: préparation de textes de messages Application: préparation de textes de messages Déclaration:

NomString: STRING[Nbremax]: 'texte d'initialisation'(variable string jusqu'à Nbremax caractères, Nbremax: 0... 254)

NomString : STRING: 'texte d'initialisation'

(variable string jusqu'à 254 caractères)

Application: préparation de textes de messages Déclaration:

NomString: STRING[Nbremax]: 'texte d'initialisation'(variable string jusqu'à Nbremax caractères, Nbremax: 0... 254)

NomString : STRING: 'texte d'initialisation'

(variable string jusqu'à 254 caractères)

Exemple: Déclaration de variables:

Message_defaut : STRING 'Défaut du moteur_4'

Avertissement : STRING[50]' '

Application: préparation de textes de messages Déclaration:

NomString: STRING[Nbremax]: 'texte d'initialisation'(variable string jusqu'à Nbremax caractères, Nbremax: 0... 254)

NomString : STRING: 'texte d'initialisation'

(variable string jusqu'à 254 caractères)

Exemple: Déclaration de variables:

Message_defaut : STRING 'Défaut du moteur_4'

Avertissement : STRING[50]' '

Traitement: Accès élémentaires:

L #message_defaut[5] (charge le 5ième caractère de message_defaut)

Traitement au moyen de FCs de la bibliothèque IEC

Page 24: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.24

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Sauvegarde de variables STRING dans la mémoire

Exemple: Déclaration avec initialisation

Prénom: STRING[8]: 'TOTO'

1) n = paire

Indique le nombre de caractères effectifs

Indique le nombre max. de caractères pouvant être sauvegardés

L'information sur le nombre max. de caractères pouvant être sauvegardés, ou sur la longueur actuelle est traitée par la fonction de bibliothèque IEC.

Octet n1)

Octet n+1

Octet n+2

Longueur max = 8

Longueur actuelle = 4

1. caractère = 'T'

Octet n+8

. ..

2. caractère = 'O'Octet n+3

Octet n+4

Octet n+5

Octet n+6

Octet n+7

3. caractère = 'T'

4. caractère = 'O'

B#16#00

B#16#00

B#16#00

Octet n+9 B#16#00

Exemple: Déclaration avec initialisation

Prénom: STRING[8]: 'TOTO' Sauvegarde de la variable STRING "prénom"

Page 25: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.25

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Fonctions pour le traitement de variables STRINGBibliothèque IEC dans Standard Library

FC2 (CONCAT): La fonction FC2 réunit deux variables STRING en une chaîne de caractères.

FC4 (DELETE): La fonction FC4 efface dans une chaîne de caractères L caractères à partir du P-ième caractère.

FC4 (DELETE): La fonction FC4 efface dans une chaîne de caractères L caractères à partir du P-ième caractère.

FC11 (FINF): La fonction FC11 recherche la position de la deuxième chaîne de caractères incluse dans la première.

FC4 (DELETE): La fonction FC4 efface dans une chaîne de caractères L caractères à partir du P-ième caractère.

FC11 (FINF): La fonction FC11 recherche la position de la deuxième chaîne de caractères incluse dans la première.

FC17 (INSERT): La fonction FC17 insère la chaîne de caractères au paramètre IN2 dans la chaîne de caractères au paramètre IN1 derrière le P-ième caractère.

FC4 (DELETE): La fonction FC4 efface dans une chaîne de caractères L caractères à partir du P-ième caractère.

FC11 (FINF): La fonction FC11 recherche la position de la deuxième chaîne de caractères incluse dans la première.

FC17 (INSERT): La fonction FC17 insère la chaîne de caractères au paramètre IN2 dans la chaîne de caractères au paramètre IN1 derrière le P-ième caractère.

FC20 (LEFT): La fonction FC20 fournit les premiers L caractères d'une chaîne de caractères.

FC4 (DELETE): La fonction FC4 efface dans une chaîne de caractères L caractères à partir du P-ième caractère.

FC11 (FINF): La fonction FC11 recherche la position de la deuxième chaîne de caractères incluse dans la première.

FC17 (INSERT): La fonction FC17 insère la chaîne de caractères au paramètre IN2 dans la chaîne de caractères au paramètre IN1 derrière le P-ième caractère.

FC20 (LEFT): La fonction FC20 fournit les premiers L caractères d'une chaîne de caractères.

FC21 (LEN): La fonction FC21 émet la longueur actuelle d'une chaîne de caractères (nombre de caractères valables).

FC4 (DELETE): La fonction FC4 efface dans une chaîne de caractères L caractères à partir du P-ième caractère.

FC11 (FINF): La fonction FC11 recherche la position de la deuxième chaîne de caractères incluse dans la première.

FC17 (INSERT): La fonction FC17 insère la chaîne de caractères au paramètre IN2 dans la chaîne de caractères au paramètre IN1 derrière le P-ième caractère.

FC20 (LEFT): La fonction FC20 fournit les premiers L caractères d'une chaîne de caractères.

FC21 (LEN): La fonction FC21 émet la longueur actuelle d'une chaîne de caractères (nombre de caractères valables).

FC26 (MID): La fonction FC26 fournit la partie centrale d'une chaîne de caractères.

FC4 (DELETE): La fonction FC4 efface dans une chaîne de caractères L caractères à partir du P-ième caractère.

FC11 (FINF): La fonction FC11 recherche la position de la deuxième chaîne de caractères incluse dans la première.

FC17 (INSERT): La fonction FC17 insère la chaîne de caractères au paramètre IN2 dans la chaîne de caractères au paramètre IN1 derrière le P-ième caractère.

FC20 (LEFT): La fonction FC20 fournit les premiers L caractères d'une chaîne de caractères.

FC21 (LEN): La fonction FC21 émet la longueur actuelle d'une chaîne de caractères (nombre de caractères valables).

FC26 (MID): La fonction FC26 fournit la partie centrale d'une chaîne de caractères. FC31 (REPLACE): La fonction FC31 remplace L caractères de la première chaîne de

caractères (IN1) à partir du P-ième caractère (inclus) par la deuxième chaîne de caractères (IN2).

FC4 (DELETE): La fonction FC4 efface dans une chaîne de caractères L caractères à partir du P-ième caractère.

FC11 (FINF): La fonction FC11 recherche la position de la deuxième chaîne de caractères incluse dans la première.

FC17 (INSERT): La fonction FC17 insère la chaîne de caractères au paramètre IN2 dans la chaîne de caractères au paramètre IN1 derrière le P-ième caractère.

FC20 (LEFT): La fonction FC20 fournit les premiers L caractères d'une chaîne de caractères.

FC21 (LEN): La fonction FC21 émet la longueur actuelle d'une chaîne de caractères (nombre de caractères valables).

FC26 (MID): La fonction FC26 fournit la partie centrale d'une chaîne de caractères. FC31 (REPLACE): La fonction FC31 remplace L caractères de la première chaîne de

caractères (IN1) à partir du P-ième caractère (inclus) par la deuxième chaîne de caractères (IN2).

FC4 (DELETE): La fonction FC4 efface dans une chaîne de caractères L caractères à partir du P-ième caractère.

FC11 (FINF): La fonction FC11 recherche la position de la deuxième chaîne de caractères incluse dans la première.

FC17 (INSERT): La fonction FC17 insère la chaîne de caractères au paramètre IN2 dans la chaîne de caractères au paramètre IN1 derrière le P-ième caractère.

FC20 (LEFT): La fonction FC20 fournit les premiers L caractères d'une chaîne de caractères.

FC21 (LEN): La fonction FC21 émet la longueur actuelle d'une chaîne de caractères (nombre de caractères valables).

FC26 (MID): La fonction FC26 fournit la partie centrale d'une chaîne de caractères. FC31 (REPLACE): La fonction FC31 remplace L caractères de la première chaîne de

caractères (IN1) à partir du P-ième caractère (inclus) par la deuxième chaîne de caractères (IN2).

FC32 (RIGHT): La fonction FC32 fournit les derniers L caractères d'une chaîne de caractères.

FC4 (DELETE): La fonction FC4 efface dans une chaîne de caractères L caractères à partir du P-ième caractère.

FC11 (FINF): La fonction FC11 recherche la position de la deuxième chaîne de caractères incluse dans la première.

FC17 (INSERT): La fonction FC17 insère la chaîne de caractères au paramètre IN2 dans la chaîne de caractères au paramètre IN1 derrière le P-ième caractère.

FC20 (LEFT): La fonction FC20 fournit les premiers L caractères d'une chaîne de caractères.

FC21 (LEN): La fonction FC21 émet la longueur actuelle d'une chaîne de caractères (nombre de caractères valables).

FC26 (MID): La fonction FC26 fournit la partie centrale d'une chaîne de caractères. FC31 (REPLACE): La fonction FC31 remplace L caractères de la première chaîne de

caractères (IN1) à partir du P-ième caractère (inclus) par la deuxième chaîne de caractères (IN2).

FC32 (RIGHT): La fonction FC32 fournit les derniers L caractères d'une chaîne de caractères.

Fonctions de comparaison pour variables STRING: FC10 (EQ_STRING), FC13 (GE_STRING), FC15 (GT_STRING), FC19 (LE_STRING), FC24 (LT_STRING), FC29 (NE_STRING)

Page 26: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.26

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Exercice 5.1: Utilisation de types de données complexes

UDT99 "Moteur"

. . .

DB51 "Rouleaux_Moteurs"

Page 27: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.27

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Exercice 5.2: Accès à des types de données complexes

Page 28: Types de données et variables de STEP 7

Date: 13.04.23Fichier: PRO2_05f.28

SIMATIC S7Siemens AG 2000. All rights reserved.

Siemens Centre de FormationSavoir pour automatiser

Exercice optionnel 5.3: Lecture de l'heure avec SFC1 (READ_CLK)

SFC1EN

RET_VAL

ENO

??.?

CDT ??.?