Le format de fichier .SCY de PL7
Date de publication : 04/08/2007 , Date de mise à jour : 04/08/2007
Par
bbil (bbil.developpez.com)
Présentation du format .Scy utilisé pour l'import/export de variables issues de l'atelier logiciel Télémécanique PL7.
I. Introduction
L'atelier logiciel PL7Pro de Telemecanique (Schneider electric) utilise pour l'import/export de variables
deux format de fichiers différents
le ".txt" : format texte délimité par une tabulation (que nous laisserons de côté dans cet article) et
le format .Scy issue d'anciennes spécifications de l'association PlcOpen qui s'appuie sur la norme CEI 61131.
Cet article à été écrit en se basant :
- sur les informations contenues dans l'aide en ligne PL7
- sur le contenu site
www.plcopen.org
- et sur l'observation des fichiers généré par PL7 lors de l'export
 |
Les spécifications actuelles de PLCopen, se tournent le XML.
|
II. Format des fichiers .SCY
II-A. Présentation générale
Les fichiers sources .Scy sont composés de 3 parties, qui à la manières des sections d'un fichier .ini débute par une étiquette entre crochet [.......]
Ces 3 sections nommées 'Blocs' sont :
- [HEADER] Qui contient des informations générales relative au format de fichier et à l'application qui la généré.
- [APPLICATION] Qui contient les informations générales relatives à l'application ( nom, date ,version commentaire)
- [DATA_UNIT] Qui contient les variables de l'application
- [EOF] Une dernière "balise" qui termine le fichier
II-B. Section HEADER
Voici un exemple de section Header généré pour l'occasion :
[HEADER]
DATE = date #2007-08-01
STANDARD = 'PLCopen v0.1 1993'
SENDER = 'Schneider Automation S.A. PL7 PRO V4.3'
|
(*Application de test pour DVP *)
Trois informations sont stockés dans ce bloc :
- DATE : La date de création du fichier
- STANDARD : Le standard respecté par le format du fichier
- SENDER : Le nom et la version de l'application qui à généré ce fichier
- Le commentaire général sur l'application encadré par (* et *)
II-C. Section APPLICATION
Voici un exemple de section Application généré pour l'occasion :
[APPLICATION]
NAME = 'ST_DVP'
DATE = date_and_time#2007-08-01-21:42:24
VERSION = '1.1'
|
Trois informations sont stockés dans ce bloc :
- NAME : Le nom de l'application (du programme)
- DATE : La date et heure de la dernière sauvegarde du programme
- VERSION : La version du programme (que l'on retrouve dans le menu édition/propriété de PL7)
II-D. Section DATA_UNIT
Celle-ci débute par 4 variables, qui invariablement ne sont pas renseignées par PL7 :
[DATA_UNIT]
DA_TYPE =
LOCATION =
NAME =
BODY =
VAR_GLOBAL
Symb_m0 AT %M0 : EBOOL (*Commentaire de M0*);
Symb_m1 AT %M1 : EBOOL (*Commentaire de M1*);
END_VAR
|
On retrouve ensuite la liste des variables, encadrés par deux marqueurs :
- VAR_GLOBAL : qui signale le début du block de variables
- END_VAR : pour la fin du bloc
entre ces deux marqueurs l'on retrouve une ligne par variables, ligne terminée par un ";"
(1) Symbole
Le Symbole peu comporter jusqu'as 32 caractères et débute obligatoirement par un caractère alphanumérique, sa présence et facultative, elle est à l'initiative de l'utilisateur exception faite des variables relatives aux instances de blocs DFB qui n'ayant pas d'adresse physique (repère) ont obligatoirement un Symbole.
(2) Repère
Toujours précédé du texte : AT le repère représente l'adresse physique de la variable de la forme %M..,%I..,%X..,%T...,... le repère est obligatoire pour toutes les variables
, exception faites des variables d'instances DFB qui n'ont pas d'adresse physique.
(3) Type
Le signe : précède le type de donnée de la variable (WORD, BOOL, TM, T ...), le type est présent pour toutes
les variables, exception faite des variables de type "FB PREDEFINI" %T,%TM,%R,%C... lorsque ni le symbole ni le commentaire ne sont renseignés, le type de
variable peu alors être déduit en fonction de l'adresse du repère.
(4) Commentaire
Le commentaire est à l'initiative du programmeur, il peu contenir jusqu'as environ 500 caractères.
(5) Paramètres
Des Paramètres supplémentaires peuvent être présent
entre deux parenthèse à la suite des caractères
:,
ces Paramètres sont séparés par des ',' leur nombre, ordre et utilisation étant fonction
du type de variable ( %TM, %T, %KW...) pour les DFB dont la nature et le nombre de Paramètres dépendent du programmeur ces Paramètres sont nommées ( à la manière de l'appel de fonctions en VB6) par exemple :
:=(3,DECI)
:=(TON,1 M,5,YES)
:=(1,YES)
:= (Varpubli:=1)
|
(6) Terminaison de lignes
Le caractère ';' termine chacune des lignes.
Quelques exemples de lignes de déclaration de variables
Defaut_3_mix_a AT %I2.5 : EBOOL (*Capteur de defaut n°3; Mixeur poste A*);
Esclave_1_conf_prof AT %MW30 : WORD;
Esclave_1_detect_prof AT %MW31 : WORD;
Cd_mess2 AT %M32 : EBOOL (*Commande l'affichage du message 2*);
Tempo_malax_mix_a AT %TM0 : TM (*Temporisateur pour malaxage produits A B C*) :=(TON,1 S,5,YES);
Tempo_consigne_atteinte AT %TM1 : TM :=(TON,100 MS,100,YES);
Prem_ordre : Premier_ordre := (Gain:=0.85,Filtrage:=15.0);
AT %KW1 : WORD :=(0,DBL);
AT %TM3 :=(TON,1 M,1,YES);
|
II-E. Section EOF
Elle termine le fichier de variable et ne comporte aucune information
III. Application
Pour finir je vous propose d'essayer un applicatif Excel basé sur les contestations contenu dans cet article
et permettant d'effectuer l'import/export de fichier .Scy vers Excel, en créant lors de l'import un nouveau classeur comprenant
un onglet par type de donnée
Macro excel Import/Export .Scy
N'hésitez pas à utiliser le
forum automation pour commenter cet article et l'utilitaire Excel qui l'accompagne, vos idées d'amélioration étant les bienvenues.


Copyright © 2007 bbil. Aucune reproduction, même partielle, ne peut être faite
de ce site et de l'ensemble de son contenu : textes, documents, images, etc
sans l'autorisation expresse de l'auteur.
Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E
de dommages et intérêts.
Cette page est déposée à la
SACD.