Professional Documents
Culture Documents
dveloppement de programmes
pour automates programmables
avec
CoDeSys 2.3
Copyright 1994, 1997, 1999, 2003, 2006 by 3S - Smart Software Solutions GmbH
Tous droits rservs.
Toutes les mesures existantes ont t prises afin de garantir lexactitude et lintgralit de la
documentation prsente. Etant donn que des fautes restent toujours possible, malgr toutes
les prcautions qui sont prises, nous vous serions reconnaissants de bien vouloir nous faire
part de vos remarques et de vos suggestions.
Editeur:
3S - Smart Software Solutions GmbH
Memminger Strae 151
D-87439 Kempten
Tl. +49/ 831/ 5 40 31 - 0
Fax +49/ 831/ 5 40 31 - 50
Edition: 29.09.2006
Document Version: 3.2, CoDeSys V2.3.7.0 (contenu corresponde V2.3.6.0)
Inhalt
Contenu
1-1
2-1
3-1
4-1
5 Les Editeurs
5-1
CoDeSys V2.3
Inhalt
5.4.5
6 Ressources
ii
CoDeSys V2.3
Inhalt
6.12
Configuration de la Cible .................................................................................... 6-82
6.13
PLC-Browser ...................................................................................................... 6-83
6.13.1 Gnralits quant l'usage du PLC-Browser ................................................... 6-83
6.13.2 Saisie des commandes avec le PLC-Browser .................................................. 6-84
6.13.3 Utilisation de macros lors de la saisie de commandes dans le PLC-Browser .. 6-86
6.13.4 Autres options du PLC-Browser........................................................................ 6-87
6.14
Outils .................................................................................................................. 6-87
6.14.1 Caractristiques des liens existants (Caractristiques d'objet)......................... 6-88
6.14.2 Gestion des liens .............................................................................................. 6-91
6.14.3 Les questions les plus importantes en matire d'outils..................................... 6-92
7 ENI
7.1
7.2
7.3
7.4
7-1
Qu'est-ce que ENI .................................................................................................. 7-1
Conditions pour travailler avec une base de donnes de projet ENI ..................... 7-1
Travailler dans CoDeSys avec la base de donnes de projet................................ 7-2
Catgories au sein de la base de donnes du projet ............................................. 7-3
8 Interface DDE
8.1
8.2
8-1
9-1
CoDeSys V2.3
10-1
Les oprateurs CEI et fonctions supplmentaires dextension des normes
10-27
10-35
10-45
iii
Inhalt
10-69
10-75
Appendice G
10-85
Appendice H
10-91
Utilisation du clavier
10-107
10-111
iv
CoDeSys V2.3
CoDeSys V2.3
1-1
1-2
CoDeSys V2.3
Contenu de la documentation
Nom du fichier
Systme de
programmation
CoDeSys
CoDeSys_V23_D.pdf
Serveur de
passerelle
Passerelle Manual.pdf
Serveur OPC
OPC_20_How_to_use_D.pdf
Visualisation
CoDeSys
Manuel
de
visualisation
pour
CoDeSys, y compris CoDeSys HMI,
Visualisation Cible et Visualisation
Web CoDeSys HMI, Visualisation
Cible et Visualisation Web
CoDeSys_Visu_V23_D.pdf
SoftMotion
Manuel
dutilisation,
description
partielle des bibliothques SoftMotion
CoDeSys_SoftMotion_V23_D.pdf
Bibliothques
<SysLib-Name>.pdf
CoDeSys_V23_D.pdf
Serveur ENI
Linstallation et la configuration du
serveur ENI eu gard la gestion dun
projet CoDeSys se trouvent dans une
base de donnes externe.
Pour la configuration au sein de
CoDeSys, voir le prsent manuel.
Pour ENI Admin, ENI Control et ENI
Explorer, voir laide En ligne ad hoc.
EniServerQuickstart_D.pdf
CoDeSys_V23_D.pdf
CoDeSys V2.3
Premiers
V23.pdf
pas
avec
CoDeSys
1-1
1-2
CoDeSys V2.3
En outre, il faut affecter un rsultat la fonction, c.--d. que le nom de fonction est utilis comme
variable de sortie.
Une dclaration de fonction commence par le mot-cl FUNCTION.
Exemple d'une fonction en langage liste d'instructions
En langage ST, l'appel d'une fonction peut apparatre sous forme d'oprandes dans des expressions.
CoDeSys V2.3
2-1
en langage ST:
Rsultat := Fct(7, 2, 4);
en langage FBD:
Dans les diagrammes fonctionnels en squence (SFC) un appel de fonction ne peut tre ralis qu'
l'intrieur d'une tape ou d'une transition.
Remarque : Si dans votre projet vous dfinissez une fonction nomme CheckBounds, vous pourrez vrifier
automatiquement les dbordements de plage l'intrieur de votre projet !
Remarque : Si dans votre projet vous dfinissez des fonctions nommes CheckDivByte, CheckDivWord,
CheckDivDWord et CheckDivReal, vous pourrez vrifier la valeur du diviseur lors de l'utilisation
de l'oprateur DIV, par exemple pour viter une division par zro.
Remarque : Si vous dfinissez les fonctions CheckRangeSigned et CheckRangeUnsigned, vous pouvez
reprer automatiquement en mode En ligne les dbordements de plage pour des variables qui sont
dclares laide de types domaines partiels.
Les noms des fonctions cites sont rservs en raison des possibilits dutilisation dcrites ici.
Bloc fonctionnel
Un bloc fonctionnel est un module dont l'excution produit une ou plusieurs valeurs. Contrairement
une fonction, un bloc fonctionnel ne produit pas de valeur renvoye.
Une dclaration de bloc fonctionnel commence par le mot cl FUNCTION_BLOCK et se termine par
le mot cl END_FUNCTION_BLOCK.
Voici un exemple de bloc fonctionnel deux variables d'entre et deux variables de sortie, en
langage IL. La premire sortie est le produit des deux entres tandis que la deuxime sortie est le
rsultat boolen de la comparaison l'identique.
2-2
CoDeSys V2.3
Les blocs fonctionnels sont toujours appels par l'intermdiaire des instances, telles que dfinies cidessus.
Seuls les paramtres d'entre et de sortie sont accessibles du dehors d'une instance de bloc
fonctionnel, non les variables internes du bloc fonctionnel.
Voici un exemple o l'on accde une variable d'entre:
Le bloc fonctionnel fb a une variable d'entre nomme in1, de type int.
PROGRAM prog
VAR
inst1:fb;
END_VAR
LD 17
ST
inst1.in1
CAL inst1
END_PROGRAM
Les parties de dclaration des blocs fonctionnels et des programmes peuvent contenir des dclaration
d'instances. Les dclarations d'instances ne sont pas admises l'intrieur de fonctions.
L'accs une instance de bloc fonctionnel est limit au module, ce qui est bien le but poursuivi par la
cration de l'instance, sauf si l'instance a t dclare de faon globale.
Le nom d'instance d'une instance de bloc fonctionnel peut tre utilis comme entre de fonction ou de
bloc fonctionnel.
Remarque : Entre deux excutions successives d'un mme bloc fonctionnel, toutes les valeurs sont conserves.
C'est pourquoi un bloc fonctionnel appel avec les mmes arguments ne produit pas toujours les
mmes valeurs de sortie !
Remarque : Si le bloc fonctionnel comporte au moins une variable rmanente, lentiret de linstance sera
sauvegarde dans la zone de rmanence.
CoDeSys V2.3
2-3
Exemple :
FBINST est une variable locale du type d'un bloc fonctionnel, comprenant la variable d'entre xx et la
variable de sortie yy. Lors de l'appel de FBINST via la liste de slection pour l'dition, elle est insre
dans un programme ST sous la forme suivante: FBINST1(xx:= , yy=> );
Variables d'entre / de sortie l'appel :
Veuillez noter que les variables d'entre / de sortie (VAR_IN_OUT) d'un bloc fonctionnel sont
transmises comme Pointeur. Il est ds lors impossible de leur attribuer une constante lors de l'appel,
et on ne peut y avoir accs de l'extrieur en lecture ou en criture.
Exemple
Appel d'une variable VAR_IN_OUT inout1 du bloc fonctionnel fubo au sein d'un module ST:
VAR
inst:fubo;
var1:int;
END_VAR
var1:=2;
inst(inout1:=var1);
Le rsultat de la multiplication est plac dans la variable ERG, le rsultat de la comparaison est
mmoris dans QUAD. Supposons qu'une instance du bloc fonctionnel FUB soit dclare sous le
nom INSTANZ.
On appelle une instance d'un bloc fonctionnel en langage IL de la manire suivante :
On appelle une instance d'un bloc fonctionnel en langage ST (partie de dclaration comme en
langage IL) de la manire suivante :
2-4
CoDeSys V2.3
On appelle une instance d'un bloc fonctionnel en langage FBD (partie de dclaration comme en
langage IL) de la manire suivante :
En SFC, les appels de blocs fonctionnels apparaissent seulement au niveau des tapes.
Programme
Un programme est un module qui produit lors de son excution une ou plusieurs valeurs. Les
programmes sont connus de manire globale dans l'ensemble du projet. Toutes les valeurs sont
conserves entre deux excutions successives d'un mme programme.
Exemple de programme
Les programmes peuvent tre appels partir de programmes et de blocs fonctionnels. Un appel de
programme n'est pas autoris dans une fonction. Il n'existe pas non plus d'instances de programmes.
Lorsqu'un programme est appel partir d'un module, et que cela entrane des changements dans
les valeurs du programme, ceux-ci sont conservs lors de l'appel suivant, mme si le programme est
appel partir d'un autre module.
Ceci est diffrent de l'appel d'un bloc fonctionnel. Dans ce cas, seules les valeurs de l'instance
correspondant ce bloc fonctionnel sont modifies.
Si vous souhaitez dfinir les paramtres d'entre et/ou de sortie - et donc dfinir les valeurs des
variables d'entre / de sortie - l'appel d'un programme, il suffit, dans les langages IL et ST,
d'attribuer des valeurs aux paramtres suivant le nom du programme donn entre parenthses.
L'affectation se fait par ":=" comme pour l'endroit de dclaration lors de l'initialisation de variables.
Si un programme est insr dans la fentre d'implmentation d'un module ST ou IL, en utilisant la liste
de slection pour l'dition (<F2>) et l'option Avec arguments, il sera automatiquement reprsent
avec ses paramtres dans cette syntaxe. Il n'est alors pas absolument ncessaire d'affecter les
paramtres.
Exemple d'appels de programmes :
Dans un programme PRGexample2, la variable d'entre in_var et la variable de sortie out_var sont toutes deux
dclares de type INT. La variable erg dclare localement est galement de type INT :
CoDeSys V2.3
2-5
En langage IL:
CAL PRGexample2
LD PRGexample2.out_var
ST ERG
ou par la affichage direct des paramtres (liste de slection pour l'dition "Avec
arguments", voir plus haut):
CAL PRGexample2(in_var:=33, out_var=>erg )
En langage ST:
PRGexample;
Erg := PRGexample2.out_var;
ou par la affichage direct des paramtres (liste de slection pour l'dition "Avec
arguments", voir plus haut):
PRGexample2(in_var:=33, out_var=>erg );
En langage FBD:
Si, partir d'un programme principal, on initialise la variable PAR du programme PRGexample avec la
valeur 0 et qu'ensuite des programmes sont appels successivement au moyen des appels de
programme ci-dessus, le rsultat Erg l'intrieur des programmes aura comme valeur 1, 2 et 3. Si on
inverse l'ordre des appels, on observe le changement en consquence des valeurs des paramtres
de rsultat correspondants.
PLC_PRG
PLC_PRG est un module prdfini particulier. Chaque projet doit contenir ce programme particulier.
Ce module est appel exactement une fois par cycle de commande.
Lorsque 'Projet' 'Insrer objet' est excut pour la premire fois aprs la cration d'un nouveau projet,
la praffectation dans le dialogue des modules est un module nomm PLC_PRG de type programme.
Nous vous conseillons de ne pas modifier cette praffectation !
Si des tches ont t dfinies, le projet ne peut contenir de programme PLC_PRG, car dans ce cas
l'ordre d'excution est fonction de l'affectation des tches.
Attention : ne pas effacer le module PLC_PRG et ne pas modifier son nom (dans le cas o vous n'utilisez
pas de configuration des tches, voir chapitre 6.6.11, Configuration de l'automate en mode En Ligne
!). Le programme PLC_PRG est toujours le programme principal dans un programme monotche.
Action
Il est possible de dfinir des actions associes aux blocs fonctionnels et aux programmes. L'action
constitue une implmentation supplmentaire, qui peut mme tre cre dans un langage autre que
celui de l'implmentation "normale". Toute action est dsigne par un nom.
Une action travaille avec les donnes du bloc fonctionnel ou du programme auquel elle est associe.
L'action fait appel aux mmes variables d'entre / de sortie et aux mmes variables locales que
l'implmentation „normale".
2-6
CoDeSys V2.3
Dans l'exemple prsent, si le bloc fonctionnel Counter est appel, la variable de sortie out est
incrmente ou dcrmente en fonction de la variable d'entre in. Si l'action Reset associe au bloc
fonctionnel est appele, la variable de sortie out est mise zro. Il s'agit de la mme variable out
dans les deux cas de figure.
Appel d'une action :
Une action est appele au moyen de <Nom de programme>.<Nom d'action> ou <Nom
d'instance>.<Nom d'action>. Veuillez observer la transcription en FBD (voir exemple ci-dessous) ! Si
l'action doit tre appele l'intrieur de son propre module, alors on utilise uniquement le nom
d'action dans le cas des diteurs littraux et l'appel de bloc fonctionnel sans spcification d'instance
dans le cas des diteurs graphiques.
Exemples d'appel de l'action ci-dessus :
Dclaration pour tous les exemples:
PROGRAM PLC_PRG
VAR
Inst : Counter;
END_VAR
Appel de l'action 'Reset' dans un autre module programm en langage IL:
CAL Inst.Reset(In := FALSE)
LD Inst.out
ST ERG
Appel dans un autre module programm en langage ST:
Inst.Reset(In := FALSE);
Erg := Inst.out;
Appel dans un autre module programm en langage FBD:
Remarques : Dans le cas de modules en diagramme fonctionnel en squence (SFC), les actions jouent un
rle spcifique.
La norme CEI ne reconnat aucune action, sauf dans le cas du diagramme fonctionnel en squence
(SFC).
CoDeSys V2.3
2-7
Ressources
Vous avez besoin de ressources pour configurer et organiser votre projet et pour suivre l'volution des
valeurs des variables. Il s'agit :
de Variables globales, qui peuvent tre utilises dans l'ensemble du projet ou du rseau
la Gestionnaire de bibliothques pour l'administration des bibliotheques dans un projet
du Journal pour enregistrer les actions qui ont lieu lors d'une session
la Configuration de l'alarme pour configurer des classes et groupes d'alarme, qui par example
peuvent visualise avec la visualisation de CoDeSys
de la Configuration de l'automate, pour configurer votre matriel
de la Configuration des tches, pour commander votre programme au moyen de tches
du Gestionnaire d'espion et des recettes, pour visualiser des valeurs de variables et praffecter
des valeurs aux variables.
de Configuration de la cible pour le choix et ventuellement la configuration dfinitive du systme
cible
Environnement de travail avec reprsentation des options du projet
Dependant de la configuration de la cible en outre ce sont disponibles les ressources suivantes:
L'enregistrement des Histogramme, pour l'enregistrement graphique des valeurs des variables
Le Manager des paramtres pour l'change de donnes avec d'autres automates au sein d'un
rseau
PLC-Browser pour le contrle de l'automate
D'Outils par attacher des tools externes
SoftMotion
Se reporter au chapitre 6, 'Ressources'.
Bibliothques
Dans votre projet, vous pouvez intgrer une srie de bibliothques et utiliser les modules, les types de
donnes et les variables globales correspondantes au mme titre que les lments dfinis
directement dans le projet. La bibliothques 'standard.lib' et util.lib sont mises votre disposition par
dfaut.
Se reporter au chapitre 7, 'Gestion des bibliothques'.
Types de donnes
En plus des types de donnes standard, l'utilisateur peut dfinir ses propres types de donnes. Il est
possible de crer des structures, des types numratifs et des rfrences.
Se reporter pour cela l'annexe, 'Types de donnes standard' et 'Types de donnes dfinis'.
Visualisation
CoDeSys peut vous fournir une reprsentation concrte des variables de votre projet au moyen d'une
visualisation. A l'aide de la visualisation vous pouvez tracer en mode Hors Ligne des lments
gomtriques. Lors de l'utilisation en mode En Ligne, ces lments peuvent ensuite changer de
forme / couleur / affichage du texte, en fonction de valeurs de variables dtermines.
Une visualisation peut galement servir de zone de commande exclusive pour un projet avec
CoDeSys HMI, ou encore sous forme de Visualisation Web ou de Visualisation Cible via Internet ou
sur le systme cible.
Se reporter pour cela au manuel 'CoDeSys Visualisation'.
2-8
CoDeSys V2.3
Description
LD
ST
AND
N,(
OR
N,(
OR bit bit
XOR
N,(
ADD
Addition
SUB
Soustraction
MUL
Multiplication
CoDeSys V2.3
2-9
Les Langages
DIV
Division
GT
>
GE
>=
EQ
NE
<>
LE
<=
LT
<
JMP
CN
CAL
CN
RET
CN
LD
TRUE
(*charger TRUE dans l'accumulateur*)
ANDN BOOL1 (*excuter AND avec la ngation de la valeur de la variable BOOL1*)
JMPC label
(*si le rsultat est TRUE, sauter l'tiquette "label"*)
LDN
ST
label:
LD
ST
En langage IL, il est galement possible de placer des parenthses aprs une opration. La valeur
entre parenthses est alors considre comme une oprande.
Par Exemple :
LD
MUL
ADD
ST
2
2
3
Erg
Dans ce cas la valeur de Erg est 7. En revanche, si l'on place des parenthses:
LD
MUL
ADD
)
ST
2
(2
3
Erg
Dans ce cas cela donne 10 comme rsultat de Erg, tant donn que l'opration MUL est excute
seulement partir du moment o l'on rencontre ")"; le calcul de l'oprande pour MUL donne alors 5.
2-10
CoDeSys V2.3
2.2.2
Expressions
Une expression est une construction syntaxique qui, lorsqu'elle est value, fournit une valeur.
Les expressions sont composes d'oprateurs et d'oprandes. Un oprande peut tre soit une
constante, soit une variable, soit un appel de fonction, soit une autre expression.
Evaluation des expressions
Une expression est value par l'application des oprateurs en suivant des rgles de priorit
dtermines. L'oprateur possdant la plus forte priorit est appliqu en premier, puis c'est le tour des
autres oprateur par ordre de priorit dcroissante, jusqu' ce que tous les oprateurs aient t
appliqus.
Si des oprateurs ont mme rang de priorit, ils sont appliqus successivement, en commenant
gauche et en se dplaant vers la droite.
Vous trouvez ci-aprs un tableau avec les oprateurs du langage ST rangs par ordre de priorit
dcroissante:
Operation
Symbole
Priorit
Mise entre
parenthses
(Expression)
Evaluation de
fonction
Exponentiation
EXPT
Ngation
Complment
NOT
Multiplication
Division
Modulo
*
/
MOD
Addition
Soustraction
+
-
Comparaison
<,>,<=,>=
Similitude
Dissimilitudet
=
<>
AND boolen
AND
OR exclusif boolen
XOR
OR boolen
OR
CoDeSys V2.3
2-11
Les Langages
En langage ST, les noncs existants sont ordonns dans un tableau et illustrs par des exemples:
Type d'nonc
Exemple
Affectation
A:=B; CV := CV + 1; C:=SIN(X);
RETURN;
IF
D:=B*B;
IF D<0.0 THEN
C:=A;
ELSIF D=0.0 THEN
C:=B;
ELSE
C:=D;
END_IF;
CASE
CASE INT1 OF
1: BOOL1 := TRUE;
2: BOOL2 := TRUE;
ELSE
BOOL1 := FALSE;
BOOL2 := FALSE;
END_CASE;
FOR
J:=101;
FOR I:=1 TO 100 BY 2 DO
IF ARR[I] = 70 THEN
J:=I;
EXIT;
END_IF;
END_FOR;
WHILE
J:=1;
WHILE J<= 100 AND ARR[J] <> 70 DO
J:=J+2;
END_WHILE;
REPEAT
J:=-1;
REPEAT
J:=J+2;
UNTIL J= 101 OR ARR[J] = 70
END_REPEAT;
EXIT
EXIT;
Enonc Vide
2-12
CoDeSys V2.3
compteur
EQ
JMPC
fin
LD
Var1
MUL
ST
Var1
LD
compteur
SUB
ST
compteur
JMP
boucle
fin:
LD
Var1
ST
res
Comme on peut le voir, la boucle programme en langage ST est non seulement plus courte, mais
aussi plus facile lire, surtout si on imagine le cas de boucles embotes dans des constructions
syntaxiques plus importantes.
Voici la signification des diffrentes structures existant en langage ST:
Oprateur d'affectation
Dans la partie gauche de l'affectation se trouve un oprande (variable, adresse), auquel est affect,
au moyen de l'oprateur :=, la valeur de l'expression situe dans la partie droite de l'affectation.
Exemple :
Var1 := Var2 * 10;
Aprs avoir excut cette ligne, Var1 a une valeur dix fois plus grande que celle de Var2.
Appel de blocs fonctionnels en langage ST
Pour appeler un bloc fonctionnel en langage ST, il faut crire le nom d'instance du bloc fonctionnel et
puis affecter aux paramtres les valeurs souhaites, entre parenthses. Dans l'exemple suivant un
temporisateur est appel et des valeurs sont affectes aux paramtres IN et PT. Ensuite, la variable
de rsultat Q est affecte la variable A.
On accde la variable de rsultat comme en langage IL l'aide du nom du bloc fonctionnel suivi
d'un point et du nom de la variable:
CMD_TMR(IN := %IX5, PT := 300);
A:=CMD_TMR.Q
Enonc RETURN
L'nonc RETURN peut tre utilis pour quitter une fonction, en dfinissant par exemple une
condition pour cela.
CoDeSys V2.3
2-13
Les Langages
Enonc CASE
L'nonc CASE permet de regrouper plusieurs noncs lis des conditions et qui possdent la
mme variable de condition dans une construction syntaxique.
Syntaxe:
CASE <Var1> OF
<valeur_1>: <nonc_1>
<valeur_2>: <nonc_2>
...
<valeur_n>: <nonc_n>
ELSE <nonc_ELSE>
END_CASE;
Enonc IF
L'nonc IF permet de vrifier une condition et de dfinir cette condition pour l'excution d'un nonc.
Syntaxe:
IF <expression_boolenne_1> THEN
<noncs_IF>
ELSE
<noncs_ELSE>}
END_IF;
La partie entre accolades {} est facultative.
Lorsque <expression_boolenne_1> donne comme rsultat TRUE, seules les <noncs_IF> sont
excutes, l'exclusion de toutes les autres.
2-14
CoDeSys V2.3
Dans le cas contraire, les expressions boolennes suivantes sont successivement vrifies en
commenant avec <expression_boolenne_2>, jusqu' ce qu'une des expressions donne comme
rsultat TRUE. Ensuite, seuls sont excuts les noncs situs aprs cette expression boolenne et
avant le ELSE ou le ELSEIF suivant.
Lorsque aucune des expressions boolennes ne donne comme rsultat TRUE, alors seuls les
<noncs_ELSE> sont excuts.
Exemple:
IF temp<17
THEN chauffage_on := TRUE;
ELSE chauffage_off := FALSE;
END_IF;
Dans ce cas, le chauffage est mis en marche si et seulement si la temprature descend en dessous
de 17 degrs.
Enonc d'itration FOR
L'nonc d'itration FOR permet de programmer des processus rpts.
Syntaxe:
INT_Var :INT;
FOR <INT_Var> := <INIT_VAL> TO <END_VAL> {BY <pas>} DO
<noncs>
END_FOR;
La partie entre accolades {} est facultative.
Les <noncs> sont rpts aussi longtemps que le compteur <INT_Var> ne dpasse pas la valeur
<END_VAL>. La vrification de cette condition est effectue avant l'excution des <noncs>, de
sorte que ceux-ci ne sont jamais excuts lorsque la valeur <INIT_VAL> est suprieure la valeur
<END_VAL>.
A chaque fois que les <noncs> ont t excuts, <INT_Var> est incrment de la valeur du <pas>.
Le pas peut avoir comme valeur n'importe quel nombre entier. On lui affecte par dfaut la valeur 1. La
boucle doit obligatoirement se terminer, tant donn que <INT_Var> ne peut qu'augmenter.
Exemple:
FOR compteur:=1 TO 5 BY 1 DO
Var1:=Var1*2;
END_FOR;
Erg:=Var1;
En supposant que la valeur 1 a t praffecte la variable Var1, celle-ci aura comme valeur 32
aprs la boucle FOR.
Remarque : <END_VAL> ne peut pas tre gale la valeur limite du type de variable du compteur <INT_Var>.
P.ex. lorsque la variable compteur est du type SINT, <END_VAL> ne peut pas tre 127 sinon il y a
une boucle infinie.
CoDeSys V2.3
2-15
Les Langages
Les <noncs> sont excuts de faon rpte aussi longtemps que <expression_boolenne> donne
comme rsultat TRUE. Si <expression_boolenne> donne comme rsultat FALSE ds la premire
valuation, alors les <noncs> ne sont jamais excuts. Si <expression_boolenne> ne prend
jamais la valeur FALSE, alors les <noncs> sont rpts indfiniment, ce qui entrane une erreur
d'excution.
Remarque : le programmeur doit veiller lui mme ce qu'aucune boucle infinie ne soit gnre, en modifiant la
condition de terminaison dans la partie <noncs> de la boucle, par exemple en incrmentant ou en
dcrmentant un compteur.
Exemple:
WHILE compteur<>0 DO
Var1 := Var1*2;
compteur := compteur-1;
END_WHILE
Les noncs WHILE et REPEAT sont dans un certain sens plus puissants que l'nonc FOR, car il
n'est pas ncessaire de savoir combien de fois la boucle sera parcourue avant son excution. Dans
certains cas, on est donc oblig de travailler uniquement avec ces deux types de boucle. Cependant,
si l'on sait combien de fois la boucle sera parcourue, il est prfrable de recourir un nonc FOR,
car ce type de boucle exclut automatiquement les boucles infinies.
Enonc d'itration REPEAT
L'nonc d'itration REPEAT se distingue de l'nonc d'itration WHILE par le fait que la vrification
de la condition de terminaison est effectue aprs que la boucle est excute. Il en rsulte que la
boucle est parcourue au moins une fois, quelle que soit la condition de terminaison.
Syntaxe:
REPEAT
<noncs>
UNTIL <expression_boolenne>
END_REPEAT;
Les <noncs> sont excuts aussi longtemps que <expression_boolenne> donne comme rsultat
TRUE.
Si <expression_boolenne> donne comme rsultat TRUE ds la premire valuation, alors les
<noncs> sont excuts exactement une fois. Si <expression_boolenne> ne prend jamais la valeur
TRUE, alors les <noncs> sont rpts indfiniment, ce qui entrane une erreur d'excution.
Remarque : le programmeur doit veiller lui mme ce qu'aucune boucle infinie ne soit gnre, en modifiant la
condition de terminaison dans la partie <noncs> de la boucle, par exemple en incrmentant ou en
dcrmentant un compteur.
Exemple :
REPEAT
Var1 := Var1*2;
compteur := compteur-1;
UNTIL
compteur=0
END_REPEAT
Enonc EXIT
Si l'nonc EXIT apparat dans une boucle FOR, WHILE ou REPEAT, alors la boucle la plus
intrieure est termine, indpendamment de la condition de terminaison.
2-16
CoDeSys V2.3
2.2.3
Etape
Un module crit en SFC est constitu d'une succession d'tapes, qui sont relies entre elles par des
liaisons diriges (transitions).
Il existe deux types d'tapes.
La forme simplifie est constitue d'une action et d'un drapeau, qui indique si l'tape est active ou
inactive. Pour chaque tape dont une action est implmente, un petit triangle apparat dans le
coin suprieur droit de l'tape.
Une tape CEI est constitue d'un drapeau et d'une ou de plusieurs actions attribues l'tape. Les
actions associes apparaissent droite de l'tape. Des informations supplmentaires sont fournies
par la suite.
Example d'un Rseau en SFC:
Action
Une action peut se prsenter soit comme un ensemble d'instructions en langage IL, soit comme un
ensemble d'noncs en langage ST, soit comme un ensemble de rseaux en langage FBD, soit
comme une ensemble d'chelons en langage LD, ou contenir un diagramme fonctionnel en squence
(SFC).
Dans le cas des tapes simplifies, une action est toujours associe son tape. Pour diter une
action, double-cliquez avec votre souris sur l'tape laquelle est associe l'action, ou bien marquez
l'tape et excutez dans la commande de menu "Zoom action/transition" dans le menu 'Extras'. En
outre, une action dentre et/ou de sortie par tape est possible.
CoDeSys V2.3
2-17
Les Langages
Les actions des tapes CEI sont attaches dans l'Organisateur d'objets directement sous le module
SFC correspondant et sont chargs dans l'diteur par un double-clic ou par l'activation de la touche
<Entre>. De nouvelles actions peuvent tre cres au moyen de '"rojet' + "Ajouter une action".
Action d'entre et de sortie
Il est possible d'ajouter une tape, en plus de laction dtape, une action d'entre et une action de
sortie. Une action d'entre est excute une seule fois, immdiatement aprs que l'tape ait t
active. Une action de sortie est excute une seule fois, avant que l'tape ne soit dsactive.
Une tape avec action d'entre est indique par un 'E' dans le coin infrieur gauche, alors qu'une
tape avec action de sortie est signale par un 'X' dans le coin infrieur droit.
Les actions d'entre et de sortie peuvent tre implmentes dans le langage de votre choix. Pour
diter une action d'entre ou de sortie, double-cliquez sur le coin correspondant de l'tape.
Les actions d'entre et de sortie peuvent tre dfinies uniquement pour une tape simplifie et non
pour une tape CEI
Etape active
Aprs l'appel du module SFC, l'action correspondant l'tape initiale (entoure en double) sera
ensuite excute. Une tape dont l'action sera excute, est appele active. En mode En Ligne, les
tapes actives sont reprsentes en bleu.
A chaque tape correspond un drapeau, lequel mmorise l'tat de l'tape. Le drapeau d'tape (tat
actif ou inactif de l'tape) sera reprsent par la valeur logique d'un lment boolen
<nom_du_pas>.x. Cette variable boolenne a la valeur TRUE (vraie) quand l'tape correspondante
est active et FALSE (fausse) quand elle est inactive. Cette variable est dclare implicitement et peut
tre utilise dans toutes les actions et transitions du module SFC.
Dans un cycle de commande, toutes les actions appartenant des tapes actives sont excutes.
Ensuite, les tapes qui suivent les tapes actives deviennent actives quand les conditions de
transition des tapes suivantes sont TRUE. Les tapes prsent actives ne sont excutes qu'au
prochain cycle.
Remarque : Si ltape active contient une action de sortie, celle-ci ne sera excute quau prochain cycle, pour
autant que la transition suivante ait la valeur TRUE.
2-18
CoDeSys V2.3
Etape CEI
A ct des tapes simplifies, les tapes conformes aux normes CEI peuvent tre utilises dans le
langage SFC.
Pour pouvoir utiliser des tapes CEI, vous devez intgrer dans votre projet une bibliothque SFC
particulire nomme lecsfc.lib.
Un maximum de neuf actions peut tre affect une tape CEI. Les actions des tapes CEI ne sont
pas rattaches de manire fixe une tape, comme par exemple les actions d'entre, d'tape ou de
sortie pour les tapes simplifies, mais existent sparment des tapes et peuvent tre utilises
plusieurs fois l'intrieur de votre module. Pour cela, elles doivent tre associes aux tapes
souhaites avec la commande "Relier action" dans le menu 'Extras'.
Outre les actions, des variables boolennes peuvent aussi tre affectes aux tapes.
En fonction du qualificateur (qualifier), les actions et variables boolennes sont actives ou
dsactives, parfois avec temporisation. Comme une action peut rester active, mme si l'tape
suivante est dj termine, par ex. avec le qualificateur S (set), des droulements parallles peuvent
tre obtenus.
Une variable boolenne associe est positionne ou remise zro chaque appel du module SFC.
En clair, la valeur TRUE ou FALSE lui est chaque fois attribue.
Les actions associes une tape CEI sont reprsentes par une case se trouvant la droite de
l'tape et divise en deux. Le champ de gauche contient le qualificateur, ventuellement avec une
constante de temps et celui de droite le nom de l'action.
Exemple d'une tape CEI avec deux actions :
Pour pouvoir suivre facilement le processus, toutes les actions actives en mode En Ligne sont
reprsentes en bleu comme les tapes actives. Aprs chaque cycle, on vrifie quelles actions sont
actives.
Observez galement cet effet les limitations lors de l'utilisation de qualificatifs temporels pour des
actions utilises plusieurs fois au cours d'un mme cycle (voir 'Qualificatifs') !
Remarque : Si une action est dsactive, elle sera excute encore une fois. Ceci signifie que chaque action
est excute au moins deux fois (mme une action avec le qualificatif P).
Lors d'un appel, les actions dsactives sont excutes en premier lieu dans l'ordre alphabtique,
puis les actions actives, elles aussi dans l'ordre alphabtique.
Le fait qu'une tape nouvellement introduite soit ou non une tape CEI dpend de la slection de la
commande "Utiliser les tapes CEI" dans le menu 'Extras'.
Dans l'Organisateur d'objets, les actions sont attaches directement sous le module SFC
correspondant. De nouvelles actions peuvent tre cres au moyen de la commande "Ajouter une
action" du menu 'Projet'.
Module SFC avec actions dans l'Organisateur d'objets:
CoDeSys V2.3
2-19
Les Langages
Qualificatif
Pour associer des actions des tapes CEI, vous disposez des qualificatifs (qualifier) suivant:
N
Non-stored
(non mmoris)
overriding Reset
(remise zro
prioritaire)
dsactivation de l'action
Set (Stored)
(positionn
(mmoris))
time Limited
activation de l'action pendant une dure dtermine
(limite dans le temps)
time Delayed
(temporis)
Pulse
(impulsion)
SD
DS
SL
Les qualificatifs L, D, SD, DS et SL doivent tre accompagns dune spcification de temps sous
format de constante TIME, p.ex. L T#5s.
Attention : Si la mme action avec qualificatifs influant sur le droulement temporel est utilise dans deux tapes
se succdant directement, le qualificatif temporel ne peut plus tre efficace lors de la deuxime
utilisation. Pour contourner ce problme, il suffit dintroduire une tape intermdiaire qui verrait, en
plus du cycle effectuer, une rinitialisation de ltat daction.
2-20
CoDeSys V2.3
Pour les actions CEI : <nom de laction>.x devient TRUE ds que laction devient active. (<nom de
laction>._x nest que dun usage interne et ne sert pas linterrogation dtat).
Interrogation du temps dexcution dune tape par le biais de variables TIME :
Les variables implicites suivantes fournissent le temps dexcution actuel depuis lactivation dune
tape pour laquelle le temps minimal, au moins, a t configur dans les attributs de ltape.
Pour les tapes CEI : <StepName>.t
Pour les tapes simplifies : _time<StepName>. Pour remplir cette fonction, cette variable implicite
doit toutefois aussi tre explicitement dclare comme variable TIME ; p. ex. _timeStep1 :
TIME;
Pour les actions CEI : Les variables de temps implicites ne sont pas utilises.
Ces drapeaux dtat peuvent tre utiliss au sein de chaque action et transition du module SFC.
Mais il est galement possible daccder ces flags partir dautres programmes :
Exemple: boolvar1:=sfc.step1.x;
step1.x est ici une variable boolenne implicite qui reprsente ltat de ltape CEI step1 dans
le module sfc1.
Drapeaux SFC
Pour faciliter le contrle du droulement dans le langage SFC, vous pouvez utiliser des drapeaux qui
seront gnrs lors du traitement du projet. cet effet, vous devez dclarer les variables
correspondantes comme tant des variables d'entre ou de sortie globales ou locales. Exemple :
Lorsque dans le SFC une tape dure plus longtemps que ce qu'indiquent ses attributs, un drapeau est
utilis, et vous y avez accs par le biais d'une variable dnomme SFCError (SFCError obtient la
valeur TRUE). Les variables suivantes sont possibles pour les drapeaux :
SFCEnableLimit: Cette variable spcifique appartient au type BOOL. Si celle-ci a la valeur TRUE,
tous les dpassements de temps au niveau des tapes sont enregistrs dans SFCError. Dans le cas
contraire, les dpassements de temps ne sont pas pris en compte.
SFCInit: Si cette variable boolenne est a la valeur TRUE, alors le diagramme fonctionnel en
squence est rinitialis sur l'tape Init et les autres drapeaux SFC sont rinitialiss (Initialisation).
Longtemps que la variable a la valeur TRUE, l'tape Init reste active mais ne sera pas excute. Le
traitement du module ne reprend normalement qu' partir du moment o la valeur FALSE est affecte
SFCInit.
SFCReset: Cette variable de type BOOL se comporte comme la variable SFCInit. Elle diffre
cependant de celle-ci en ce sens que l'tape Init s'excute aprs l'initialisation elle-mme. Ceci peut
par exemple tre mis profit pour affecter nouveau la valeur FALSE au SFCReset durant l'tape
Init.
SFCQuitError: Aussi longtemps que cette variable boolenne est a la valeur TRUE, l'excution du
diagramme fonctionnel en squence est suspendue et les dpassements de temps ventuels
enregistrs dans la variable SFCError sont rinitialiss. A partir du moment o la valeur FALSE est
nouveau affecte la variable, tous les temps existants au niveau des tapes actives sont
rinitialiss. Une condition pour ce faire est la dclaration du drapeau SFCError qui enregistre les
dpassements de temps.
SFCPause. Aussi longtemps que cette variable boolenne est a la valeur TRUE, l'excution du
diagramme fonctionnel en squence est suspendue.
SFCError: Cette variable boolenne obtient la valeur TRUE lorsqu'un dpassement de temps est
intervenu dans un diagramme fonctionnel en squence. Si, dans le programme, un second
dpassement de temps se produit aprs le premier, il ne sera plus enregistr si la variable SFCError
n'a pas auparavant t remise zro. La dclaration de SFCError est la condition pour le
fonctionnement des autres variables de drapeaux contrlant le droulement dans le temps
(SFCErrorStep, SFCErrorPOU, SFCQuitError, SFCErrorAnalyzation).
SFCTrans: Cette variable boolenne devient TRUE lorsqu'une transition s'effectue.
CoDeSys V2.3
2-21
Les Langages
SFCErrorStep: Cette variable appartient au type STRING. En cas de dpassement de temps, le nom
de l'tape qui a caus le dpassement est mmoris dans cette variable. Une condition pour ce faire
est la dclaration de la variable SFCError qui enregistre les dpassements de temps. Une condition
pour ce faire est la dclaration de la variable SFCError qui enregistre les dpassements de temps.
SFCErrorPOU: En cas de dpassement de temps, enregistr par SFCError, le nom du module qui a
caus le dpassement est mmoris dans cette variable de type STRING.
SFCCurrentStep: Cette variable appartient au type STRING. Le nom de l'tape active est stock
dans cette variable indpendamment de la surveillance des temps. Le nom de l'tape de la branche la
plus droite est stock dans le cas d'une squence simultane.
SFCErrorAnalyzationTable: Cette variable de type ARRAY [0..n] OF ExpressionResult donne les
informations ci-dessous pour chaque variable d'une expression de transition compose et impliquant
le statut FALSE de la transition, ainsi qu'un dpassement de temps de l'tape prcdente: nom,
adresse, commentaire, valeur actuelle.
Cette fonction est possible pour un maximum de 16 variables, ce qui signifie que la plage d'array est
de maximum 0..15.
La structure ExpressionResult ainsi que les modules d'analyse utiliss de manire implicite se
trouvent dans la bibliothque AnalyzationNew.lib. Les modules d'analyse peuvent galement tre
utiliss de manire explicite au sein de modules qui ne sont pas programms en SFC.
Une condition pour l'analyse de l'expression de transition est l'enregistrement d'un dpassement de
temps dans l'tape prcdente. C'est pourquoi il faut y implmenter une surveillance et dclarer la
variable SFCError (voir plus haut) dans le module.
SFCTip, SFCTipMode: Ces variables de type BOOL permettent le fonctionnement par tapes du
SFC. Si celui-ci est activ par le biais de SFCTipMode=TRUE, on ne peut passer l'tape suivante
que si SFCTip est positionn sur VRAI. Tant que SFCTipMode est positionn sur FALSE, vous
pouvez en outre passer la suite par le biais des transitions.
Remarque : Notez galement les variables implicites dcrites dans le chapitre prcdent que vous pouvez utiliser
pour interroger ltat et le temps dexcution dtapes et dactions.
Squence alternative
Dans les rseaux SFC, deux ou plusieurs squences peuvent tre dfinies comme squences
alternatives. Toute squence alternative doit commencer et terminer par une transition. Une squence
alternative peut contenir des squences simultanes et d'autres squences alternatives. Une
squence alternative commence au niveau d'une ligne horizontale (dbut de squences alternatives)
et finit au niveau d'une ligne horizontale (fin de squences alternatives) ou par un saut. Elle peut tre
munie dune tiquette de saut.
Si l'tape prcdant la ligne de dbut de squences alternatives est active, alors la premire transition
de chaque squence alternative est value de la gauche vers la droite. La premire transition dont la
condition de transition a comme valeur TRUE est ouverte, puis les tapes suivantes sont actives
(voir tape active).
Squence simultane
Dans les rseaux SFC, deux ou plusieurs squences peuvent tre dfinies comme squences
simultanes. Toute squence simultane doit commencer et terminer par une transition. Une
squence simultane peut contenir des squences alternatives et d'autres squences simultanes.
Une squence simultane commence au niveau d'une double ligne (dbut de squences
simultanes) et finit au niveau d'une ligne double horizontale (fin de squences simultanes) ou par
un saut. Elle peut tre munie dune tiquette de saut.
Si l'tape prcdant la ligne de dbut de squences simultanes est active, et si la condition de
transition qui suit cette tape a comme valeur TRUE, alors la premire tape de chacune des
squences simultanes est active (voir tape active). Ds lors, ces squences sont excutes
paralllement les unes par rapport aux autres. L'tape qui suit la ligne de fin de squences
simultanes est active si toutes les tapes prcdentes sont actives et si la condition de transition
prcdant cette tape a la valeur TRUE.
2-22
CoDeSys V2.3
Saut
Un saut constitue une liaison vers l'tape dont le nom est indiqu sous le symbole de saut. Les sauts
ont une utilit du fait qu'il n'est pas permis de crer des liaisons vers le haut ni de crer des liaisons
qui s'entrecroisent.
2.2.4
Se reporter pour cela galement au chapitre 5.4.2, 'L'diteur graphique FBD' dans 'Les diteurs dans
CoDeSys'.
2.2.5
Schma en CFC
Lditeur graphique CFC ne travaille pas avec des rseaux comme le schma en plans fonctionnels
FBD, mais bien avec des lments disposer librement. Ceci permet par exemple des
asservissements.
Exemple de rseau en diteur graphique CFC tel quil apparat dans CoDeSys :
Exemple de rseau en diteur graphique CFC
2.2.6
CoDeSys V2.3
2-23
Les Langages
Contact
En langage LD, la partie gauche de chaque rseau est constitu d'un rseau de contacts (un contact
est visualis par deux lignes parallles : | |), qui transmet de la gauche vers la droite l'tat "ON" ou
"OFF".
Ces tats correspondent aux valeurs boolennes TRUE et FALSE. A chaque contact correspond une
variable boolenne. Si cette variable a comme valeur TRUE, alors l'tat est transmis de la gauche
vers la droite le long de l'lment de liaison. Dans le cas contraire, la liaison de droite prend la valeur
"OFF".
Si les contacts sont disposs paralllement, alors une des branches parallles doit transmettre la
valeur "ON" pour que la disposition parallle transmette la valeur "ON"; si les contacts sont monts en
srie, alors tous les contacts doivent transmettre l'tat "ON" pour que le dernier contact transmette
l'tat "ON". Cela correspond donc respectivement aux montages en parallle et aux montages en
srie des circuits lectriques.
Un contact peut aussi exister sous forme de ngation (contact normalement au travail), ce qui est
signal par la barre oblique l'intrieur du symbole de contact: |/|. Dans ce cas, la valeur est
transmise l'lment de liaison si la variable a comme valeur FALSE.
Bobinage
En langage LD, on trouve dans la partie droite d'un rseau un nombre indtermin de "bobinages",
visualiss par des parenthses: ( ). Ceux-ci peuvent tre monts uniquement en parallle. Un
bobinage transmet la valeur de la liaison de gauche droite, et copie cette valeur dans une variable
boolenne associe. La liaison d'entre peut avoir la valeur ON (correspondant la variable
boolenne TRUE) ou la valeur OFF (correspondant FALSE).
Les contacts et les bobinages peuvent galement exister sous forme de ngation (dans l'exemple, le
contact SCHALT1 et le bobinage %QX3.0 existent sous forme de ngation). Si un bobinage existe
sous forme de ngation (ce qui est signal par la barre oblique l'intrieur du symbole de bobinage:
(/)), alors celui-ci copie la ngation de la valeur dans la variable boolenne associe. Si un contact
existe sous forme de ngation, alors celui-ci n'tablit la connexion que si la variable boolenne
associe a comme valeur FALSE.
Blocs fonctionnels dans le rseau LD
En plus des contacts et des bobinages, vous pouvez aussi introduire des blocs fonctionnels et des
programmes. Les blocs fonctionnels et les programmes doivent avoir une entre et une sortie de
rseau de type boolen et peuvent tre utiliss aux mmes endroits que les contacts, c.--d. dans la
partie gauche du rseau LD.
Bobinage SET/RESET
Il est possible de dfinir des bobinages SET (verrouillage) ou RESET (dverrouillage). Un bobinage
SET (identifi par un "S" l'intrieur du symbole de bobinage: (S)) n'crase jamais la valeur TRUE
dans la variable boolenne associe. En d'autres termes, il suffit que la valeur TRUE ait t affecte
une fois ladite variable pour que cette affectation soit dfinitive.
Un bobinage RESET (identifi par un "R" l'intrieur du symbole de bobinage: (R)) n'crase jamais la
valeur FALSE dans la variable boolenne associe. En d'autres termes, il suffit que la valeur FALSE
ait t affecte une fois ladite variable pour que cette affectation soit dfinitive.
2-24
CoDeSys V2.3
Bobinage SET/RESET
Il est possible de dfinir des bobinages SET (verrouillage) ou RESET (dverrouillage). Un bobinage
SET (identifi par un "S" l'intrieur du symbole de bobinage: (S)) n'crase jamais la valeur TRUE
dans la variable boolenne associe. En d'autres termes, il suffit que la valeur TRUE ait t affecte
une fois ladite variable pour que cette affectation soit dfinitive.
Un bobinage RESET (identifi par un "R" l'intrieur du symbole de bobinage: (R)) n'crase jamais la
valeur FALSE dans la variable boolenne associe. En d'autres termes, il suffit que la valeur FALSE
ait t affecte une fois ladite variable pour que cette affectation soit dfinitive.
LD sous forme de FBD
En travaillant en langage LD, il se peut facilement que vous souhaitiez utiliser le rsultat produit par le
montage des contacts pour commander d'autres modules. Dans ce cas, vous pouvez placer l'aide
des bobinages le rsultat dans une variable globale, qui sera ensuite utilise un autre endroit. Vous
pouvez galement installer un appel ventuel directement dans votre rseau LD. Pour cela
introduisez un module avec entre EN.
Ces modules sont des oprandes, des fonctions, des programmes ou des blocs fonctionnels tout
fait ordinaires, qui possdent une entre supplmentaire portant l'inscription EN. Une entre EN est
toujours de type BOOL et a la signification suivante: le module avec entre EN est valu si EN a
comme valeur TRUE.
Un module EN est mont en parallle sur les bobinages, de faon relier l'entre EN l'lment de
liaison entre les contacts et les bobinages. Si l'information "ON" est vhicule le long de cette ligne,
alors le module est valu de faon tout fait ordinaire.
Un tel module EN peut servir pour raliser des rseaux comme ceux existant en langage FBD.
Exemple de rseau en langage LD avec module EN:
CoDeSys V2.3
2-25
2-26
CoDeSys V2.3
La valeur du pointeur est affiche dans l'implmentation. Pour les drfrencements, la valeur
drfrence est affiche.
Espionnage des composants d'un tableau : En plus des composants d'un tableau indexs par une
constante, des composants indexs sur une variable sont affichs.
anarray[1] = 5
anarray[i] = 1
Si l'index se compose d'une expression (p.ex. [i+j] ou [i+1]), les composants ne peuvent tre affichs.
Veuillez noter:Lorsque le nombre maximal de variables pouvant tre "espionnes" est atteint, le texte "Trop de
variables espionnes" est affich la place de la valeur actuelle pour chaque variable
supplmentaire.
Simulation
Dans le cas de la simulation, le programme d'automate cr est excut dans l'ordinateur sur lequel
CoDeSys est excut et non dans l'automate. Toutes les fonctions En Ligne sont disponibles. Vous
avez donc la possibilit de vrifier si la logique de votre programme est correcte sans recourir un
matriel d'automate programmable.
Remarque: Les modules provenant de bibliothques externes ne fonctionnent pas dans la simulation.
Journal
Lors du mode En Ligne, le journal enregistre chronologiquement les actions de lutilisateur, les
processus internes, les changements d'tats et les cas exceptionnels. Il sert la surveillance et la
traabilit des erreurs (voir chapitre 'Fonctions En ligne').
CoDeSys V2.3
2-27
La Norme
2.4 La Norme
La norme CEI 661131-3 est une norme internationale relative aux langages de programmation pour
automates programmables.
Les langages de programmation mis en uvre dans le cadre de CoDeSys sont conformes aux
exigences de cette norme.
D'aprs cette norme, un programme est constitu des lments suivants:
Structures
Modules
Variables globales
L'excution d'un programme CoDeSys commence par le module particulier PLC_PRG. Le module
PLC_PRG peut appeler d'autres modules.
2-28
CoDeSys V2.3
CoDeSys V2.3
3-1
Dclaration de "TRAFFICSIGNAL"
Consacrons-nous d'abord au module TRAFFICSIGNAL. Dans l'diteur de dclaration vous dclarez
comme variable d'entre une variable nomme STATUS, de type INT (entre les mots-cls
VAR_INPUT et END_VAR). STATUS pourra adopter quatre tats diffrents, correspondant
respectivement aux phases de feux vert, jaune, jaune-rouge et rouge.
Notre feu possde par consquent trois sorties, savoir RED, YELLOW et GREEN. (Attention : des
trmas ne sont pas permis dans les noms de variables!) Dclarez ces trois variables et la partie de
dclaration de notre bloc fonctionnel TRAFFICSIGNAL ressemblera alors ceci:
Bloc fonctionnel TRAFFICSIGNAL, partie de dclaration
Corps de "TRAFFICSIGNAL"
A prsent, il s'agit de calculer les valeurs des variables de sortie en fonction de l'entre STATUS pour
le module. Accdez la partie corps du module. Cliquez dans la zone situe gauche du premier
rseau (la zone grise portant le numro 0001). Vous avez slectionn le premier rseau. Slectionnez
maintenant l'option 'Insrer' + `Module'
Une bote avec l'oprateur AND et deux entres est insre dans le premier rseau:
Cliquez sur le texte AND avec le pointeur de la souris et remplacez ce texte par EQ. Slectionnez les
trois points d'interrogation de l'entre suprieure et entrez la variable STATUS. Ensuite, slectionnez
les trois points d'interrogation du dessous et remplacez les par 1. Vous obtenez le rseau suivant:
Cliquez prsent un endroit quelconque derrire la bote EQ. La sortie de l'opration EQ est
maintenant slectionne. Slectionnez 'Insrer' + 'Affectation'. Remplacez les trois points
d'interrogation ??? par GREEN. Vous avez cr un rseau de cette forme:
STATUS est compar 1 et le rsultat est affect GREEN. Ce rseau commute sur GREEN
lorsque STATUS a la valeur 1.
3-2
CoDeSys V2.3
Pour les autres couleurs de feux, nous avons besoin de deux rseaux supplmentaires. Crez le
premier avec la commande 'Insrer' + "Rseau (derrire)" et crez un module EQ comme dcrit cidessus. Lorsque vous avez slectionn la sortie, choisissez la commande 'Insrez' 'Module' et
remplacez le "AND" par un "OR" dans celle-ci. Slectionnez nouveau la sortie du module OR et
affectez lui YELLOW par le biais de la commande 'Insrer' 'Affectation'. Slectionnez maintenant la
seconde entre du OR en cliquant sur la barre horizontale ct des trois points dinterrogation, si
bien que celle-ci est maintenant marque dun rectangle pointill, puis insrez un autre module EQ
comme dcrit ci-dessus au moyen de la commande 'Insrer' 'Module'. En fin de compte, le rseau
devrait se prsenter comme indiqu la figure 3.2.
Bloc fonctionnel TRAFFICSIGNAL, partie d'instructions
Pour insrer un nouvel oprateur devant un oprateur existant, vous devez slectionner l'entre
laquelle vous voulez ajouter l'oprateur, puis slectionner l'endroit prcis o l'entre aboutit la bote.
Ensuite, excutez la commande 'Insrer' + `Module'. Pour le reste, vous pouvez procder
l'laboration des autres rseaux de la mme faon que pour celui-ci.
Notre premier module est prsent termin. TRAFFICSIGNAL commande la couleur de feu
approprie, en fonction de la valeur qui a t entre dans STATUS.
Intgrer la bibliothque standard.lib
Pour le temporisateur du module WAIT, nous avons besoin d'un module issu de la bibliothque
standard. Ouvrez le gestionnaire de bibliothques au moyen de Fentre' + `Gestion des
CoDeSys V2.3
3-3
Corps de "WAIT"
Pour raliser le temporisateur voulu, il faut que le corps du module soit programm comme suit:
Pour commencer, un contrle est effectu pour savoir si Q est dj TRUE (on veut savoir si le
comptage a dj commenc). Si c'est le cas, nous ne modifions en rien l'affectation de ZAB, et
appelons le bloc fonctionnel ZAB sans fournir d'entre (pour vrifier si le temps est dj coul).
Dans le cas contraire, nous affectons la valeur FALSE la variable IN dans ZAB, ce qui implique
simultanment l'affectation de 0 ET et de FALSE Q. Toutes les variables se trouvent ainsi l'tat
initial voulu. A prsent, nous transfrons la dure ncessaire depuis la variable TIME vers la variable
PT, et appelons ZAB avec IN:=TRUE. Au niveau du bloc fonctionnel ZAB, la variable ET est
incrmente jusqu' ce qu'elle atteigne la valeur TIME, puis la valeur FALSE est affecte Q.
3-4
CoDeSys V2.3
La valeur inverse de Q est mmorise dans OK chaque fois que WAIT a t parcouru une fois. Ds
que Q a comme valeur FALSE, OK fournit donc comme valeur TRUE.
Nous avons ainsi termin le temporisateur. A prsent, il s'agit de runir nos deux blocs fonctionnels
WAIT et TRAFFICSIGNAL dans le programme principal SEQUENCE.
"SEQUENCE" - premier niveau de dveloppement
Pour commencer, nous dclarons les variables dont nous avons besoin. C'est--dire une variable
d'entre START du type BOOL, deux variables de sorties TRAFFICSIGNAL1 et TRAFFICSIGNAL2
du type INT et une de type WAIT (DELAY pour la temporisation). Le programme SEQUENCE
ressemble maintenant ceci:
Programme SEQUENCE, premier niveau de dveloppement, partie de dclaration
CoDeSys V2.3
3-5
3-6
CoDeSys V2.3
Nous devons prsent raliser la programmation des tapes une une. En double-cliquant sur la
zone d'une tape, vous ouvrez une bote de dialogue pour ouvrir une nouvelle action. Dans le cas
prsent, nous utiliserons chaque fois le langage IL (Liste d'Instructions) actions et conditions de
transition
Actions et conditions de transition
Au niveau de l'action relative l'tape Init les variables sont initialises, STATUS de
TRAFFICSIGNAL1 doit tre 1 (vert), STATUS de TRAFFICSIGNAL2 doit tre 3 (rouge). L'action Init
ressemble alors ceci:
Action Init
Au niveau de Green1 SIGNAL1 est vert (STATUS:=1), SIGNAL2 est rouge (STATUS:=3) et la dure
de temporisation est de 5000 millisecondes.
CoDeSys V2.3
3-7
Action Green1
Marquez prsent la transition vers Switch1 et insrez sa suite une tape et une transition.
Marquez la transition qui vient d'tre cre et insrez sur sa gauche une squence alternative.
Insrez une tape et une transition aprs la transition de gauche. Insrez un saut vers Switch1 aprs
la transition ainsi cre.
3-8
CoDeSys V2.3
Nommez les composants nouvellement crs comme suit: en ce qui concerne les deux tapes
nouvellement cres, l'tape suprieure doit recevoir le nom "Count" et l'tape infrieure le nom "Off".
Les transitions sont nommes (de haut en bas et de gauche droite) EXIT, TRUE et DELAY.OK. La
partie nouvellement cre devrait donc ressembler la partie encadre en noir et reprsente cidessous:
Systme de feux de signalisation
Il faut donc implmenter deux nouvelles actions et une nouvelle condition de transition. Au niveau de
l'tape Count, le COUNTER est incrment d'une unit; il s'agit de la seule intervention ce niveau:
Action Count
La transition EXIT vrifie si le compteur (COUNTER) est suprieur un nombre donn, disons par
exemple 7:
Transition EXIT
CoDeSys V2.3
3-9
Au niveau de l'action Off, les variables d'tat STATUS des deux feux prennent la valeur 5 (OFF) (toute
autre valeur diffrente de 1, 2, 3 ou 4 peut tre choisie pour dfinir cet tat), COUNTER est remis
zro et une dure de temporisation de 10 secondes est dfinie:
Action Off
Le Rsultat
Dans notre petite agglomration, o sont installs les feux, la nuit survient aprs que les feux aient
parcouru sept cycles, ensuite le feu s'teint pendant dix secondes, puis le jour se lve, le systme de
feux se met de nouveau en marche et tout ce cycle complet est rpt. Si vous le souhaitez, vous
pouvez maintenant le tester en mode de simulation comme dcrit ci-dessus, avant de crer le module
PLC_PRG.
PLC_PRG
Nous avons dfini et mis en corrlation l'volution des phases des deux feux de signalisation dans le
module SEQUENCE. Cependant, du fait que nous assimilions le systme de feux de signalisation
un module CAN et que nous souhaitions crer la configuration d'automate en utilisant un bus CAN,
nous devons encore prvoir des variables d'entre et de sortie appropries au sein du module
PLC_PRG. Nous souhaitons mettre en marche le systme de feux de signalisation au moyen d'un
interrupteur ON et transmettre l'instruction de signal" adquat pour chaque tape du module
SEQUENCE aux six diffrentes lampes (lampes rouge, verte et jaune pour chaque feu de
signalisation). Nous dclarons prsent avant de crer le programme dans l'diteur des variables
de type boolen appropries aux six sorties et l'unique entre. Dans le mme temps, nous affectons
ces variables aux adresses CEI appropries.
Dans l'diteur de dclaration de PLC_PRG, nous dclarons dans un premier temps les variables
LIGHT1 et LIGHT2 de type TRAFFICSIGNAL.
Dclaration de SIGNAL1 et SIGNAL2
Ces variables transmettent aux six sorties exiges ci-dessus les valeurs boolennes pour chacune
des six lampes, chaque tape du module SEQUENCE. Cependant, nous ne dclarons pas les six
variables de sortie prvues cet effet l'intrieur du module PLC_PRG, mais bien dans Ressources,
au niveau des Variables Globales. La mme remarque s'applique la variable d'entre ON de type
boolen, qui permet d'affecter la valeur TRUE la variable START dans le module SEQUENCE. Une
adresse CEI est attribue aussi la variable ON.
Slectionnez prsent l'onglet Ressources et ouvrez la liste Variables Globales.
Effectuez la dclaration comme ceci:
3-10
CoDeSys V2.3
Le nom de la variable (par exemple ON) est suivi de AT et de l'adresse CEI, qui commence par un
signe pour cent ". I dsigne une entre, Q dsigne une sortie, B (utilis dans cet exemple) signifie
"octet" et 0.0 (0.1, 0.2, etc.) permet d'accder chacun des bits du module. Nous allons crer la
configuration de l'automate requise, mais avant cela nous allons terminer le module PLC_PRG.
Pour ce faire, nous accdons la fentre d'dition. Nous avons slectionn l'diteur graphique FBD,
c'est pourquoi nous accdons la barre d'icnes FBD, qui est situe sous la barre de menu et qui
comprend les lments pouvant tre utiliss comme composants .
Cliquez avec la touche droite de la souris dans la fentre d'dition et slectionnez l'lment Module.
Cliquez sur le teste AND et remplacez-le par le texte "SEQUENCE". Vous accdez alors au module
SEQUENCE qui est visualis avec les variables d'entre et de sortie dj dfinies. Ajoutez deux
lments de type module supplmentaires, auxquels vous donnerez le nom de LIGHT1. SIGNAL est
un bloc fonctionnel, c'est pourquoi trois points d'interrogation rouges sont placs au-dessus du
module. Remplacez ces points d'interrogation par le nom des variables LIGHT1 et LIGHT2 dclares
localement ci-dessus. Dfinissez prsent un lment de type Entre, que vous dsignerez par ON
et six lments de type Sortie, auxquels vous donnerez les noms de variable S1_green, S1_yellow,
S1_red, S2_green, S2_yellow, S2_red, comme dans la figure ci-aprs.
Tous les lments du programme sont prsent placs et vous pouvez relier vos entres et vos
sorties en cliquant avec la souris sur la courte ligne situe l'entre ou la sortie d'un lment et en
dplaant ensuite la souris jusqu' l'entre ou la sortie de l'lment voulu, tout en maintenant la
touche de la souris enfonce. Votre ligne est trace.
En dfinitive, votre programme doit se prsenter comme ceci:
PLC_PRG, dclaration et reprsentation dans l'diteur graphique FBD
CoDeSys V2.3
3-11
Simulation de feux
Testez prsent votre programme. Pour cela, il vous faut le compiler compiler) et le charger ('En
Ligne' + Accder au systme') et puis 'En Ligne' + 'Lancer'. Si vous excutez maintenant 'En Ligne' +
'Dmarrer', vous pouvez suivre la succession chronologique des tapes individuelles de votre
programme principal. La fentre du module PLC_PRG s'est prsent transforme en fentre
d'espion. Lorsque vous double-cliquez sur le signe plus dans l'diteur de dclaration, la visualisation
des variables apparat, et vous pouvez observer les valeurs prises par chacune des variables.
Ensuite, vous slectionnez la catgorie Couleurs et vous cliquez sur le bouton Dedans dans la
zone Couleur. Slectionnez une couleur neutre, par exemple noir.
Cliquez prsent sur le bouton Dedans dans la zone Couleur d'alarme et slectionnez le ton
rouge qui correspond le mieux un feu rouge.
3-12
CoDeSys V2.3
Le cercle ainsi constitu sera noir l'tat normal et passera au rouge lorsque la variable RED de
SIGNAL1 aura comme valeur TRUE. Nous avons donc labor ds prsent la premire lampe
du premier feu!
Les autres lampes des feux
Slectionnez maintenant les commandes 'Editer' + "Copier" (<Ctrl>+<C>), puis deux fois 'Editer' +
"Coller" (<Ctrl>+<V>). Ainsi, vous obtenez deux autres cercles de mme dimension, qui sont situs
au-dessus du premier. Vous pouvez dplacer les cercles en cliquant sur le cercle voulu et en
dplaant la souris jusqu' la position voulue, tout en maintenant la touche gauche de la souris
enfonce. Dans le cas prsent, la position voulue correspondrait une range verticale dans la partie
gauche de la fentre d'dition. En double-cliquant sur un des deux cercles infrieurs, vous ouvrez
nouveau la bote de dialogue de configuration. Entrez les variables suivantes dans le champ Changer
du cercle associ:
pour le cercle du milieu: L1_yellow
pour le cercle infrieur: L1_green
Slectionnez maintenant la couleur adquate pour chaque cercle (jaune ou vert), dans la catgorie
Couleurs et dans la zone Couleur d'alarme.
Le botier des feux
Slectionnez prsent la commande 'Insrer' + "Rectangle", et insrez un rectangle qui entoure les
trois cercles, en procdant de la mme faon que prcdemment pour le premier cercle. Choisissez
pour le rectangle nouveau une couleur aussi neutre que possible et activez la commande 'Extras' +
"Arrire-plan", pour que les cercles deviennent nouveau visibles.
Au cas o le mode simulationn'est pas encore activ, vous pouvez l'activer au moyen de la
commande 'En Ligne' + `Simulation'.
Si vous lancez prsent la simulation au moyen des commandes 'En Ligne' + `Accder au systme'
et 'En Ligne' + `Dmarrer', vous pouvez suivre le changement de couleur du premier feu.
Le deuxime feu
Pour crer le deuxime feu, le plus simple est de copier l'ensemble des composants du premier feu.
Pour ce faire, marquez tous les lments du premier feu et copiez-les (comme prcdemment pour
les lampes du premier feu) au moyen des commandes 'Editer' + `Copier' et 'Editer' + `Coller'. Pour
terminer la visualisation du deuxime feu, vous n'avez plus qu' transformer le texte "S1" en "S2"
dans les botes de dialogue de visualisation respectives.
L'interrupteur ON
Insrez un rectangle, attribuez les couleurs de votre choix, selon ce qui est dcrit ci-dessus dans le
cas des feux, et entrez .ON dans Variables si vous souhaitez un Changer la couleur. A l'intrieur de
la catgorie Texte, entrez "MARCHE" dans le champ Contenu.
CoDeSys V2.3
3-13
Pour pouvoir affecter laide dun clic de la souris la valeur TRUE la variable ON, vous devez
activer loption Frapper la variable dans la catgorie Entre et ensuite entrer la variable .ON.
Slectionnez en plus l'option Variable impulsion et entrez cet endroit la variable .ON. Si cette
option est active, la valeur TRUE est affecte la variable .ON en cliquant avec la souris sur
l'lment de visualisation, alors que si vous relchez la touche de la souris, la valeur FALSE est
raffecte cette variable (ainsi, nous avons cr un interrupteur simple pour les besoins de notre
programme de feux).
Bote de dialogue pour configurer des lments de visualisation (catgorie Entre)
3-14
CoDeSys V2.3
Les lments suivants sont situs dans la fentre principale de CoDeSys (de haut en bas):
La barre de menus (Un grand nombre de commandes de menus se trouve galement dans le
menu contextuel, ce dernier s'ouvrant par le biais du bouton droit de la souris)
La barre d'outils (facultative); avec des boutons pour excuter plus rapidement les commandes de
menus.
L'Organisateur d'objets avec des onglets pour les modules, types de donnes, visualisations et
ressources.
Une barre de fractionnement verticale entre l'Organisateur d'objets et l'environnement de travail de
CoDeSys.
L'environnement de travail qui comprend les fentres des diteurs.
La fentre de messages (facultative).
La barre d'tat (facultative); avec des informations sur l'tat actuel du projet.
Barre de menus
La barre de menus est situe au niveau du bord suprieur de la fentre principale. Elle contient toutes
les commandes des menus.
CoDeSys V2.3
4-1
La fentre principale
Barre d'outils
En cliquant avec la souris sur une icne de la barre d'outils, il est possible de slectionner plus
rapidement une commande de menu. La slection d'icnes s'adapte automatiquement la fentre
active.
La commande n'est excute qu'en enfonant et en relchant la touche de la souris pralablement
positionne sur l'icne.
Si vous maintenez pendant un temps rduit le pointeur de la souris sur une icne de la barre d'outils,
le nom de l'icne est affich dans une info-bulle.
Pour recevoir la description de chaque icne de la barre d'outils il suffit de slectionner dans l'aide
l'diteur propos duquel vous souhaitez recevoir des informations et de cliquer sur l'icne de la barre
d'outils qui vous intresse.
L'affichage de la barre d'outils est facultatif (voir 'Projet' + 'Options', Catgorie "Environnement de
travail").
Organisateur d'objets
L'Organisateur d'objets se situe toujours sur la partie gauche de CoDeSys. Dans la partie infrieure se
trouvent quatre onglets avec des symboles pour les quatre types d'objets, savoir les modules
types de donnes
visualisations
et ressources
. Pour passer d'un type d'objet un
autre, cliquez sur l'onglet appropri avec la souris ou bien utilisez la touche directionnelle gauche ou
droite.
Des symboles supplmentaires avant ou aprs les entres dobjets caractrisent certains statuts
concernant les Fonctions En Ligne et la Connexion ENI vers une base de donnes.
Le chapitre 4.4, 'Gestion des objets', vous indiquera comment travailler avec les objets dans
l'Organisateur d'objets.
Barre de fractionnement
La barre de fractionnement constitue la frontire entre deux fentres accoles. CoDeSys prvoit des
barres de fractionnement entre l'Organisateur d'objets et l'environnement de travail de la fentre
principale, entre l'interface (partie de dclaration) et l'implmentation (partie instructions) des modules
et entre l'environnement de travail et la fentre de messages.
Si vous amenez le pointeur de la souris sur la barre de fractionnement, vous pouvez dplacer cette
dernire. Pour ce faire, dplacez la souris en maintenant le bouton gauche de la souris enfonc.
Tenez compte du fait que la barre de fractionnement conserve toujours sa position absolue, mme si
la taille de la fentre est modifie. Si la barre de fractionnement semble avoir disparue, alors il
convient tout simplement d'agrandir votre fentre.
Environnement de travail
L'environnement de travail se trouve dans la partie droite de la fentre principale de CoDeSys. Tous
les diteurs relatifs aux objets et la gestion des bibliothques s'ouvrent au niveau de cette zone.
Vous trouvez la description des diteurs aux chapitres 5, Les diteurs dans CoDeSys, 6, Les
ressources, Manuel CoDeSys Visualisation et chapitre 6.4, Gestion des bibliothques. Le nom de
chaque objet apparat dans la barre de titre de la fentre, et une abrviation y est ajoute entre
parenthses dans le cas des modules, indiquant le type de module et le langage de programmation
utilis.
Dans l'option "Fentre" se trouvent toutes les commandes relatives la gestion des fentres.
4-2
CoDeSys V2.3
Fentre de messages
La fentre de messages se situe dans la fentre principale, en dessous de l'environnement de travail
et est spare de celui-ci par une barre de fractionnement.
Elle fournit tous les messages relatifs aux derniers procds de compilation, de vrification et de
comparaison effectus. Les rsultats de recherches et les 'Listes des rfrences croises' peuvent
galement tre affichs ici.
Si, dans la fentre de messages, vous excutez avec la souris un double-clic sur un message ou si
vous enfoncez la touche <Entre>, alors l'diteur de l'objet s'ouvre. La ligne concerne de l'objet est
marque. Les commandes 'Editer' + "Erreur prochaine" et 'Editer' + "Erreur prcdente" permettent de
se dplacer rapidement d'un message d'erreur l'autre.
L'affichage de la fentre de messages est facultative.
Barre d'tat
La barre d'tat, qui se situe au niveau du cadre infrieur de la fentre principale de CoDeSys, vous
indique des informations sur le projet actuel et sur les commandes de menu.
Si un nonc est valable, alors l'nonc apparat droite dans la barre d'tat, dans une couleur de
police noire, sinon il apparat dans une couleur de police grise.
Si vous travaillez en ligne, alors l'expression En Ligne apparat dans une couleur de police noire. Si
en revanche vous travaillez hors ligne, cette expression apparat dans une couleur de police grise.
Lorsque vous tes en mode En Ligne, la barre d'tat vous renseigne si vous vous trouvez dans la
simulation (SIM), si le programme est excut (EXECUTE), si un point d'arrt est dfini (PT ARRET)
ou si des valeurs de variables sont forces (FORCER).
Dans le cas d'diteurs littraux, le numro de ligne et de colonne de la position actuelle du curseur est
indique (p.ex. L.:5, Col.:11).
Si le pointeur de la souris se situe dans une visualisation, la position actuelle X et Y du curseur par
rapport au coin suprieur gauche de l'image est indique, en pixel. Si le pointeur de la souris se situe
sur un lment ou si un lment est en cours de traitement, le numro de celui-ci est indiqu. Si vous
avez choisi un lment insrer, cela apparat galement (p.ex. Rectangle).
Si vous avez slectionn une commande de menu, sans l'avoir encore active, alors une brve
description apparat dans la barre d'tat.
L'affichage de la barre d'tat est facultatif (voir 'Projet' + "Options", Catgorie "Environnement de
travail").
Menu contextuel
Raccourci : <Maj>+<F10>
Au lieu d'utiliser la barre de menus pour excuter une commande, vous pouvez utiliser le bouton droit
de la souris. Le menu qui est alors affich contient les commandes utilises les plus frquemment en
rapport avec un objet marqu ou avec l'diteur actif. La slection des commandes disponibles
s'adapte automatiquement la fentre active.
CoDeSys V2.3
4-3
Projet Options
de dialogue la catgorie voulue au moyen d'un clic avec la souris ou l'aide des touches
directionnelles et modifiez les options dans la partie droite.
Voici les catgories :
Categories
Enregistr
Enregistr dans le
dans CoDeSys
projet
Informations utilisateur
Editeur
Environnement de travail
Couleurs
Rpertoires
Journal
Cat. Gnral
Cat. Projet
Options de compilation
Mots de passe
Macros
4-4
CoDeSys V2.3
Copie de sauvegarde: CoDeSys sauvegarde l'ancien fichier lors de chaque enregistrement par la
commande 'Fichier' 'Enregistrer' dans un fichier de sauvegarde, avec l'extension ".bak".
Contrairement au fichier de sauvegarde *.asd (voir ci-dessous, 'Enregistrement automatique'), ce
fichier est gard mme aprs avoir termin le programme. Ainsi, vous pouvez toujours restituer la
version qui prcde le dernier enregistrement.
Enregistrement automatique: Le projet ouvert est frquemment sauvegard selon un intervalle que
vous aurez fix (Intervalle denregistrement) dans le fichier projets temporaire avec lextension
".asd". Ce fichier est effac lorsque le programme sest termin normalement. Si, pour une raison ou
une autre, CoDeSys ne se termine pas "normalement" (p.ex. lors dune coupure de courant), le fichier
n'est pas effac. Lorsque, dans ce cas, vous ouvrez nouveau le projet, le message suivant apparat:
Vous pouvez alors dcider si vous ouvrez le fichier original ou le fichier de sauvegarde.
Si une bibliothque *.lib est ouverte en tant que projet, un fichier de sauvegarde correspondant
*.asl est cr.
Demander de l'information sur le projet: alors la bote de dialogue Info sur le projet s'ouvre
automatiquement lors de l'enregistrement d'un nouveau projet ou lors de la l'enregistrement d'un
projet sous un nouveau nom. Vous pouvez afficher et modifier les informations sur le projet au moyen
de la commande 'Projet''Info projet'.
Charger automatiquement: alors le dernier projet ouvert sera charg automatiquement lors du
prochain lancement de CoDeSys. Le chargement d'un projet lors du lancement de CoDeSys peut
galement s'effectuer en spcifiant un projet dans la ligne de commande.
Enregistrer avant la compilation: Le projet est enregistr avant toute compilation. Un fichier est
alors cr avec lextension ".asd" ou " .asl" et celui-ci se comporte comme avec loption
'Enregistrement automatique' dcrite ci-dessus.
Rappeler le projet de dmarrage avant de terminer: Si, depuis la cration du projet dinitialisation,
le projet sous forme modifie a t charg sur lautomate sans avoir auparavant cr un nouveau
projet dinitialisation, ceci sera signal lutilisateur lorsquil tentera de quitter le projet : "Aucun projet
dinitialisation na t cr depuis le dernier tlchargement. Voulez-vous malgr tout terminer?"
Enregistrer les informations d'autorisation scurises ENI: Le nom dutilisateur et le mot de
passe tels quils ont t introduits le cas chant pour laccs la base de donnes ENI, sont
enregistrs avec le projet. Pour les donnes daccs introduites dans 'Ouvrir projet du contrle de
projets' ('Fichier' 'Ouvrir'), le nom dutilisateur et le mot de passe seront alors galement enregistrs
dans le fichier codesys.ini.
CoDeSys V2.3
4-5
Projet Options
Informations utilisateur
Si vous slectionnez cette catgorie, vous obtenez la bote de dialogue suivante:
Bote de dialogue Options pour la catgorie Informations utilisateur
Les informations utilisateur comprennent le Nom de l'utilisateur, ses Initiales et la Socit pour
laquelle il travaille. Chacune des saisies peut tre modifie et est enregistre avec le projet.
Editeur
Si vous slectionnez cette catgorie, vous obtenez la bote de dialogue suivante:
Bote de dialogue Options pour la catgorie Editeur
4-6
CoDeSys V2.3
Lister les composants: Si cette option est active, vous disposez de la fonction Intellisense dans
CoDeSys. Si vous nintroduisez quun point aux endroits o un identificateur doit tre saisi, vous
obtenez une liste de slection reprenant toutes les variables disponibles pour cet endroit. Cette
fonction Intellisense est disponible, non seulement dans l'diteur, mais aussi dans le gestionnaire
despion et de recettes, dans la visualisation et dans la configuration de lhistogramme.
Dclarations sous forme de tableau: Si cette option a t slectionne, vous pouvez diter des
variables sous forme de tableau au lieu de le faire au moyen de l'diteur de dclaration classique. Ce
tableau est ordonn de la mme faon qu'une cartothque, dans lequel se trouvent des onglets pour
les variables d'entre, de sortie, les variables locales et les variables d'entre-sortie. Vous disposez
pour chaque variable des champs Nom, Adresse, Type, Initial, Commentaire.
Largeur de tabulation: Ici vous pouvez spcifier la largeur d'une tabulation visualise dans les
diteurs. La largeur configure par dfaut est de 4 caractres, avec une largeur de caractre qui
dpend son tour de la configuration de la police de caractres.
Caractres: En appuyant sur ce bouton vous pouvez slectionner la police dans tous les diteurs
CoDeSys. La taille de la police est l'unit de base pour toutes les oprations de dessin. Le choix
d'une taille de police plus grande agrandit ainsi la reprsentation et mme l'impression pour chaque
diteur de CoDeSys.
Aprs avoir slectionn la commande, la bote de dialogue pour la slection de la police de caractre,
du style et de la taille de police s'ouvre.
Bote de dialogue de configuration de la police
Marquage: Ici vous pouvez choisir si une slection dans les diteurs graphiques doit tre reprsente
au moyen d'un rectangle en pointills (En pointills), d'un rectangle en ligne continue (Ligne) ou d'un
rectangle plein (Rempli). Dans le dernier cas, la slection est visualise "en ngatif" (inverse).
Valeur des bits: Ici vous pouvez choisir si des informations binaires (de type BYTE, WORD,
DWORD) doivent tre visualises, au niveau de l'espionnage, en mode Dcimal, Hexadcimal ou
Binaire.
Supprimer le monitoring de types complexes (tableaux, pointeur, VAR_IN_OUT): Si cette option
est active, les types de donnes complexes comme les tableaux, les pointeurs, VAR_IN_OUTs ne
seront pas reprsents dans la fentre despion du mode En ligne.
Afficher les symboles des units de programmation: Si cette option est active, des symboles
sont reprsents dans les botiers de modules, pour autant quils soient disponibles dans la
bibliothque des rpertoires sous forme dimages bitmap. Le nom du fichier bitmap doit se composer
du nom du module et de lextension .bmp. Exemple : pour le module TON, le symbole suivant est
contenu dans le fichier TON.bmp :
CoDeSys V2.3
4-7
Projet Options
Environnement de travail
Si vous slectionnez cette catgorie, vous obtenez la bote de dialogue suivante:
Bote de dialogue Options pour la catgorie Environnement de travail
Barre d'icnes: La barre d'outils avec les boutons pour slectionner plus rapidement les commandes
de menu est rendue visible en dessous de la barre de menus.
Ligne d'tat: La barre d'tat est rendue visible au niveau du bord infrieur de la fentre principale de
CoDeSys.
Opration en ligne en mode scurit: Une bote de dialogue avec une demande de scurit
apparat en mode En Ligne, pour les commandes Dmarrer, Arrter, Reset, Point d'arrt actif, Cycle
indpendant, Ecrire valeurs des variables, Forcer valeurs des variables, Arrter de forcer, pour
demander si la commande doit rellement tre excute. Si le systme d'excution le supporte, un
dialogue largi apparat lors du chargement du projet sur l'automate programmable : Ce dialogue
indique en outre les informations d'un projet se trouvant ventuellement dj sur l'automate ainsi que
celles du nouveau projet charger. Ces informations de projet apparaissent galement lors de la
cration d'un projet d'initialisation, si un tel projet est dj prsent sur l'automate programmable. Cette
option est enregistre avec le projet.
Faire une requte des paramtres de communication avant le login: Suite la commande 'En
Ligne' 'Login', la bote de dialogue pour les paramtres de communication apparat l'cran. On ne
passe au mode En ligne que lorsque cette bote de dialogue a t ferme l'aide de OK.
Ne pas enregistrer les paramtres de communication dans le projet: Les paramtres de la bote
de dialogue pour les paramtres de communication ('En Ligne' 'Paramtre de communication') ne
sont pas enregistrs dans le projet.
Afficher la zone d'impression: Les limites de la zone d'impression en cours de rglage sont
marques par des traits discontinus rouges dans chaque fentre d'diteur. L'importance de cette zone
dpend des caractristiques de l'imprimante (format de papier, alignement) et de la grandeur de la
zone "Contenu" de la mise en page rgle (Menu 'Fichier' 'Paramtres documentation').
F4 ignore les avertissements: En appuyant sur F4 dans la fentre des messages aprs une
compilation, l'accent est mis sur les lignes comprenant les messages d'erreur, et les avertissements
sont ignors.
Reprsentation MDI: Cette option (Multiple-Document-Interface) est active par dfaut, rendant ainsi
possible l'ouverture simultane de plusieurs objets (fentres). Si cette option est dsactive (mode
SDI, Single-Document Interface), on ne peut alors ouvrir qu'une fentre la fois dans l'environnement
de travail, et cette fentre est reprsente en mode plein cran. Exception : l'action d'un programme
peut tre reprsente aussi en MDI en mme temps que le programme lui-mme.
Timeout de communication [ms]: Pour des services de communication standard : temps en
millisecondes au bout duquel la communication avec le systme cible (services de communication
4-8
CoDeSys V2.3
standard) est interrompue si plus aucune activit nest constate. Valeurs possibles : 1-10000000.
ms.
Timeout de communication pour tlchargement [ms]: Pour des services de communication de
longue dure (tlchargement dun programme, tlchargement dun fichier, cration et contrle dun
projet dinitialisation) : temps en millisecondes au bout duquel la communication avec le systme cible
est interrompue si plus aucune activit nest constate Valeurs possibles : 1-10000000.
XML-Encoding: Le format pour les exportations XML du CoDeSys peut tre slectionn. Le rglage
standard est ISO 8859-1. Celui-ci sapplique aussi bien la communication via ENI, Message
Interface et COM Automation Interface qu toutes les exportations de CoDeSys commandes par
lutilisateur. Toutefois, lexportation XML du gestionnaire de licences fait exception.
Langue: Slectionnez dans quelle langue les textes des menus et des botes de dialogue ainsi que
l'aide En ligne doivent tre affichs.
Remarque : Notez que la slection d'une langue n'est pas possible sous Windows 98 !
Couleurs
Si vous slectionnez cette catgorie, vous obtenez la bote de dialogue suivante:
Bote de dialogue Options pour la catgorie Couleurs
CoDeSys V2.3
4-9
Projet Options
Rpertoires
Si vous slectionnez cette catgorie, vous obtenez la bote de dialogue suivante:
Bote de dialogue Options pour la catgorie Rpertoires
Vous pouvez introduire, dans les zones Projet et Gnral, des rpertoires que CoDeSys devra
parcourir la recherche de bibliothques, defichiers de configuration d'automate et fichiers de
visualisation (bitmaps, fichiers XML pour textes dynamiques, etc.) ou qu'il devra utiliser pour la
rception de fichiers de compilation ou de fichiers source de tlchargement en amont. Si vous
activez le bouton () derrire un champ, alors la bote de dialogue pour slectionner un rpertoire
s'ouvre. Plusieurs chemins d'accs spars par un point-virgule ";" peuvent tre introduits pour les
fichiers de bibliothque et de configuration.
Remarque: Les chemins d'accs aux bibliothques peuvent tre saisis en relation au rpertoire de projet actuel,
en les faisant prcder d'un ".". Si on saisit par exemple ".\libs", les bibliothques seront galement
recherches dans le rpertoire 'C:\Programme\projects\libs', pour autant que le projet se trouve dans
le rpertoire 'C:\Programme\projects'. Pour des informations concernant les chemins daccs aux
bibliothques, voyez galement le chapitre 6.4, 'Insrer 'Autre bibliotheque'.
Remarque: N'utilisez pas d'espaces ou de caractres spciaux dans les chemins des rpertoires, l'exception
de "_".
Les entres dans la zone Projet sont enregistres avec le projet. Les entres dans la zone
Gnralsont crites dans le fichier Ini du systme de programmation et valent pour tous les projets.
Les rpertoires de bibliothques et de fichiers de configuration, configurs dans le systme cible, sont
affichs dans la zone Systme cible l'aide, par exemple, des donnes dans le fichier cible. Vous ne
pouvez pas diter ces champs, mais une entre peut tre slectionne et copie (menu contextuel
bouton droit de la souris).
En rgle gnrale, CoDeSys cherche d'abord parmi les rpertoires classs sous 'Projet', ensuite les
rpertoires sous 'Systme cible' et enfin ceux sous 'Gnral'. Si plusieurs fichiers portent le mme
nom, celui qui se trouve dans le premier rpertoire parcouru est utilis.
4-10
CoDeSys V2.3
Journal
Si vous slectionnez cette catgorie, vous obtenez la bote de dialogue suivante :
Bote de dialogue Options pour la catgorie Journal
lintrieur de cette bote de dialogue, vous pouvez configurez un fichier qui, en tant que journal de
projet, enregistre chronologiquement toutes les actions dutilisateur et tous les processus internes
durant le mode En ligne.
Si un projet existant est ouvert pour lequel aucun journal na t gnr, une bote de dialogue
souvre vous signalant quun journal est cr, qui ne mmorisera les entres qu partir du prochain
processus d'ouverture de session.
Lors de la sauvegarde du projet, le journal sera automatiquement enregistr sous forme de fichier
binaire dans le rpertoire de projet. Si vous souhaitez un autre rpertoire cible, vous pouvez activer
loption Rpertoire pour les journaux de projet: et introduire le chemin daccs adquat dans le
champ ddition. Par le biais du bouton
rpertoire'.
Le fichier de journal enregistre automatiquement le nom du projet avec lextension .log. Le nombre
maximal de Sessions en ligne enregistrer est fix sous la Grandeur maximale d'un journal du
projet. Si ce nombre est dpass durant un enregistrement, les entres les plus anciennes sont
effaces au profit des nouvelles.
Cette fonction de journal est active et dsactive par le biais du bouton doption Activer le journal.
Dans la zone Filtre, vous pouvez slectionner les actions qui doivent tre enregistres : Actions par
l'utilisateur, Actions internes, changements de l'tat, Exceptions. Les actions provenant de catgories
munies ici dun crochet seront seules affiches la fentre du journal ou crites dans le fichier du
journal.
Vous pouvez ouvrir la fentre de journal par le biais de la commande 'Fentre' 'Journal'.
CoDeSys V2.3
4-11
Projet Options
Options de compilation
Dans cette catgorie du dialogue 'Options', les rglages se rapportent la traduction, cest--dire la
compilation du projet.
Si vous slectionnez cette catgorie, vous obtenez la bote de dialogue suivante:
Bote de dialogue Options pour la catgorie Options de compilation
Dbogage:Selon le systme cible, cette option peut tre slectionne ou prrgle. Si elle est
active, le code peut tre considrablement plus grand. Le choix de cette option permet de gnrer
du code de dbogage supplmentaire. Le code de dbogage est ncessaire pour utiliser les fonctions
de dbogage disponibles sur CoDeSys. Si vous dsactivez cette option, vous augmentez la rapidit
d'excution et vous autorisez des codes de taille plus petite. Cette option est enregistre avec le
projet.
changer constantes: La valeur de chaque constante de type scalaire (donc pas pour les chanes,
les arrays et les structures) est directement charge et, en mode En ligne, les constantes sont
affiches en vert. Le forage, lcriture et le monitoring dune constante ne sont alors plus possibles.
Si loption est dsactive, la valeur est charge sur un emplacement de mmoire par le biais de
laccs la variable (ceci permet bien dcrire la valeur de la variable, mais ncessite un temps de
traitement plus long).
Commentaires imbriqus: Vous pouvez introduire des commentaires imbriqus les uns dans les
autres. Exemple :
(*
a:=inst.out; (* vrifier *)
b:=b+1;
*)
4-12
CoDeSys V2.3
Crer fichier binaire de l'application: Une reprsentation binaire du code est cr (Projet
d'initialisation) dans le rpertoire de projet lors de la compilation. Nom de fichier: <nom de projet>.bin.
Notez galement cet effet la possibilit de crer le projet d'initialisation ainsi que le fichier
correspondant de total de contrle En ligne sur l'automate (commande 'En Ligne' 'Crer projet
d'initialisation), ou Hors ligne dans le rpertoire de projet.
Actions cachent les programmes: Cette option est active par dfaut ds qu'un nouveau projet est
cr. Sa signification : si une action locale porte le mme nom qu'une variable ou un programme,
l'excution s'effectue dans l'ordre ci-aprs : variable locale, action locale, variable globale,
programme.
Attention: Si on ouvre un projet qui a t cr avec une version prcdente de CoDeSys, cette option est
dsactive par dfaut. Ainsi, on garde la hirarchie qui a t applique lors de la cration (variable
locale, variable globale, programme, action locale).
Compiler LREAL comme REAL: Si cette option est active (par dfaut, elle ne l'est pas), les valeurs
LREAL sont traites comme des valeurs REAL lors de la compilation du projet. Cette option est
utilise afin de dvelopper des projets indpendamment de la plate-forme.
En spcifiant le Nombre de segments de donnes, vous pouvez dfinir la quantit de segments de
mmoire rservs aux donnes de votre projet dans l'automate programmable. Cet espace est
ncessaire pour pouvoir effectuer un changement En ligne lorsque des nouvelles variables ont t
introduites. Si en cours de compilation le message "Les variables globales occupent trop de
mmoire." apparat, augmentez le nombre de segments dfinis ici.
Exclure des objets: Ce bouton donne accs au dialogue Exclure des objets de la compilation:
Slectionnez au sein de l'arborescence affiche les modules du projet qui ne doivent pas tre
compils lors d'une procdure de compilation, puis activez l'option Ne pas compiler. Les modules
exclus de la compilation sont alors affichs en vert dans l'arborescence. Afin d'exclure
automatiquement tous les modules qui ne sont pas utiliss au sein du projet, appuyez sur le bouton
Exclure inutiliss. Un objet marqu dans lOrganisateur dobjets peut aussi tre exclu de la
compilation via la commande 'Exclure des objets de la compilation' dans le menu contextuel.
Version compilateur: La version du compilateur utiliser pour la compilation peut tre dfinie ici. Les
versions CoDeSys postrieures V2.3.3 disposent de la version actuelle de compilateur ainsi que des
versions prcdentes jusqu' V2.3.3 (pour chaque version / chaque Service Pack / chaque retouche). Si
vous souhaitez qu'un projet soit toujours compil avec la version de compilateur la plus rcente, activez
l'option Utiliser le plus actuel. Dans ce cas, il est galement important de savoir si le projet est
actuellement ouvert, lui aussi, dans la version correspondante du systme de programmation. Si cela
nest pas le cas, cest la version de compilateur correspondant au systme de programmation
actuellement employ qui sera utilise. Si le projet doit automatiquement tre compil avec une version
prcise de compilateur, dfinissez celle-ci dans le champ de slection en regard de Dfinir.
Pour agir sur le processus de compilation, deux macros peuvent tre utilises :
La macro situe dans le champ Macro avant la compilation est excute avant la compilation, la
macro situe dans le champ Macro aprs la compilation s'effectue aprs la compilation. Les
commandes de macro ci-dessous ne peuvent cependant jamais tre excutes dans ce contexte : file
new, file open, file close, file saveas, file quit, online, project compile, project check, project build,
debug, watchlist.
Tous les paramtres fixs dans la bote de dialogue des options de compilation sont enregistrs avec
votre projet.
Vrifier automatiquement:
Afin de contrler l'exactitude smantique lors de chaque compilation du projet, vous pouvez activer
les options ci-dessous :
Variables inutilises
Zones de mmoire superposes
Accs concurrent
Ecriture multiple sur la sortie
CoDeSys V2.3
4-13
Projet Options
Les rsultats seront affichs dans une fentre de messages. Ces contrles peuvent tre lancs de
manire cible par le biais de l'instruction Vrifier dans le menu 'Projet'.
Si le systme cible le supporte, les rsultats de contrle ngatifs sont dits en tant querreurs de
compilation.
Remarque: Tous les rglages effectus au sein du dialogue des Options de compilation sont enregistrs en
mme temps que le projet.
Mots de passe
Si vous slectionnez cette catgorie, vous obtenez la bote de dialogue suivante:
Bote de dialogue Options pour la catgorie Mots de passe
Pour protger vos donnes contre des accs non autoriss, CoDeSys vous donne la possibilit de
scuriser l'ouverture et la modification de vos fichiers au moyen d'un mot de passe.
Entrez le mot de passe voulu dans le champ Mot de passe. Une toile (*) apparat chaque fois que
vous saisissez une lettre. Vous devez rpter ce mme mot au niveau du champ Confirmer mot de
passe. Fermer la bote de dialogue par OK. Si le message
"Le mot de passe et la confirmation ne concordent pas."
apparat, vous avez fait une faute de frappe au cours d'une des entres. C'est pourquoi il est
prfrable de rpter les deux saisies jusqu' ce que la bote de dialogue se ferme sans qu'un
message n'apparaisse.
Si maintenant vous ouvrez nouveau le fichier aprs l'avoir enregistr, une bote de dialogue apparat
pour vous demander d'entrer le mot de passe. Le projet ne s'ouvre que lorsque vous avez saisi le mot
de passe correct. Si ce n'est pas le cas, le message suivant apparat:
"Le mot de passe est incorrect."
Il vous est possible de protger l'aide d'un mot de passe non seulement l'ouverture mais aussi la
modification d'un fichier. Pour ce faire, il faut effectuer une saisie dans le champ Mot de passe
lecture seule, puis rpter cette saisie dans le champ du dessous.
Un projet protg en criture peut tre ouvert sans mot de passe. Pour cela, appuyez simplement sur
le bouton Annuler, si CoDeSys vous demande d'entrer le mot de passe lecture seule au moment
d'ouvrir un fichier. Vous pouvez prsent compiler le projet, le charger dans l'automate
programmable, procder une simulation, etc. Vous ne pouvez toutefois pas modifier le projet.
Il est important que vous mmorisiez bien les deux mots de passe, cela va de soi. Au cas o vous
auriez rellement oubli un mot de passe, veuillez vous adresser votre fabricant d'automate
programmable.
Les mots de passe sont enregistrs avec le projet.
4-14
CoDeSys V2.3
Pour crer des droits d'accs spcifiques, vous pouvez dfinir des niveaux d'accs et 'Projet' 'Mots de
passe pour niveau d'accs'.
Download Sourcecode
Si vous slectionnez cette catgorie dans la bote de dialogue Options, vous obtenez la bote de
dialogue suivante:
Bote de dialogue Options pour la catgorie Download Sourcecode
Vous pouvez choisir le Timing et le Degr d'enregistrement du projet dans l'automate programmable.
Afin d'tre enregistres, les donnes sont comprimes. L'option Seulement code source concerne
uniquement le fichier CoDeSys (Zusatz.pro). L'option Tous les fichiers englobe galement des
fichiers supplmentaires, tels que les bibliothques lies au projet, les visualisations sous forme
d'image bitmap, les fichiers de configuration, etc.
Automatiquement au chargement du programme: Si cette option est active, la commande 'En
Ligne' + `Lancer' vous permet de charger automatiquement dans l'automate programmable les fichiers
correspondant au degr choisi.
Message au chargement: Si cette option est active, la commande 'En Ligne' + `Lancer' vous permet
d'accder une bote de dialogue avec l'interrogation suivante "Ecrire le code source dans l'automate
programmable ?". Si vous appuyez sur Oui, les fichiers correspondant au degr slectionn sont
chargs automatiquement dans l'automate programmable. Si vous appuyez en revanche sur Non, la
bote de dialogue se referme.
Automatiquement la cration du projet d'initialisation : Si cette option est active, la commande
'En Ligne' 'Crer projet d'initialisation' vous permet de charger automatiquement dans l'automate
programmable les donnes choisies.
Sur demande: Si cette option est active, les fichiers correspondant au degr choisi doivent tre
chargs exprs dans l'automate programmable l'aide de la commande 'En Ligne' 'Application
tlcharge du code source dans l'automate'
Le projet stock dans l'automate programmable peut tre nouveau charg dans l'ordinateur l'aide
de la commande 'Ouvrir projet de l'automate' dans le menu 'Fichier' + "Ouvrir fichier". Les donnes
sont dcomprimes au moment du chargement.
CoDeSys V2.3
4-15
Projet Options
Configuration de symbole
La bote de dialogue donne ici sert la configuration du fichier de symboles. Celui-ci est cr sous
forme de fichier de texte <Nom du projet>.sym ou de fichier binaire <Nom du projet>.sdb (en fonction
de la gateway utilise) dans le rpertoire du projet. Le fichier de symboles est ncessaire pour
l'change de donnes avec l'automate programmable par le biais de l'interface de symboles, et est
utilis par exemple par le serveur gateway OPC ou DDE.
Si l'option Gnrer des entres de symboles est slectionne, des entres de symboles sont
automatiquement cres dans le fichier des symboles chaque compilation de projet. Dans le cas
contraire, ce fichier nobtient que des informations de version relatives au fichier et au projet ainsi
quune somme de contrle.
Si en plus l'option Gnrer un tableau XML est active, une version XML du fichier des symboles est
en outre cre. Celle-ci est cre dans le rpertoire du projet et est dnomme <Nom du
projet>.SYM_XML.
Pour la configuration des entres du fichier de symboles :
Si l'option 'Configuration des symboles par fichier INI' est active dans la configuration du systme
cible, la configuration des entres de symboles est lue partir de codesys.ini ou partir d'un autre
fichier INI nomm en cet endroit. (La bote de dialogue CoDeSys 'Dfinir les attributs d'objets' n'est
en aucun cas ditable.)
Si l'option 'Configuration des symboles par fichier INI' n'est pas active, les entres de symboles
sont cres selon les rglages que vous avez dfinis dans la bote de dialogue 'Dfinir les attributs
d'objets'. Vous y parvenez par le biais du bouton Configurer un fichier de symbole :
Dialogue 'Dfinir les attributs d'objets' (in catgorie 'Configuration de symbole')
Dans la liste de slection pour ldition qui saffiche sous forme darborescence, slectionnez les
variables pour lesquelles des entres de symboles doivent tre gnres. Pour ce faire, vous pouvez
soit marquer des modules du projet, ce qui permet de slectionner automatiquement les variables
associes, soit marquer de faon cible des entres de variables individuelles.
Ensuite, choisissez les options souhaites pour les objets slectionns en cliquant sur la case
correspondante dans la bote de dialogue ci-dessous. Les options actives sont munies d'un crochet.
Les options suivantes sont possibles :
Exporter les variables de l'objet :
4-16
CoDeSys V2.3
Les options suivantes ne valent que si l'option 'Exporter les variables de l'objet' est active:
Exporter les entres des donnes: Des entres pouvant agir sur les variables globales sont
cres pour les structures et tableaux de l'objet.
Exporter les composants de structure: Pour les structures de l'objet, une entre propre est
cre pour chaque composant de variable.
Exporter les composants de champ: Pour les tableaux de l'objet, une entre propre est
cre pour chaque composant de variable.
Accs criture: Les variables de l'objet peuvent tre modifies partir du serveur OPC.
Aprs que le rglage des options ait t effectu pour la slection de module en cours, vous pouvez sans devoir fermer la bote de dialogue avec OK - slectionner d'autres modules et leur attribuer une
configuration d'options. Vous pouvez traiter autant de modules que vous le souhaitez les uns la
suite des autres.
Lorsque vous fermez la bote de dialogue l'aide du bouton OK, toutes les configurations effectues
depuis l'ouverture de cette bote sont enregistres.
Remarque: Notez qu'il est possible, l'aide de pragmas, de reprendre chaque variable de manire cible sans
droit d'criture / de lecture dans le fichier de symboles, ou de ne pas les reprendre du tout.
Utiliser la base de donnes du projet (ENI): Activez cette option si vous souhaitez accder une
base de donnes du projet par le biais dun serveur ENI, de faon traiter certains ou tous les
modules se rapportant ce projet via cette base de donnes. Il faut pour ce faire que le serveur ENI
et la base de donnes soient installs et que vous soyez dfini comme utilisateur dans chacun.
Reportez vous cet effet la documentation du serveur ENI ainsi quau chapitre 7, 'L'interface
CoDeSys-ENI'.
Si cette option est active, les options de la base de donnes (check-in, dition) sont disposition
pour chaque objet du projet. Dune part, certaines fonctions de la base de donnes seffectuent
automatiquement, si cela a t configur en consquence dans les options de la bote de dialogue, et
dautre part les commandes du menu 'Projet' 'Liaison avec la base de donnes' peuvent tre utilises
pour un appel cibl des fonctions. En outre, un onglet 'Liaison au contrle de ressources' est
disponible dans la bote de dialogue pour les Proprits, par lequel on peut attribuer une certaine
catgorie de base de donnes un module.
CoDeSys V2.3
4-17
Projet Options
Configurer ENI...: Ce bouton nous mne aux rglages ENI qui ont t subdiviss en trois botes de
dialogue.
Les objets appartenant au projet et devant tre grs par la base de donnes peuvent tre attribus
aux catgories de bases de donnes 'Objets de projet', 'Objets communs' ou 'Fichiers de compilation'.
Pour chacune de ces catgories, les botes de dialogue des options des bases de donnes du projet
ci-dessous dterminent le rpertoire dans lequel elles se trouvent et quelles valeurs par dfaut valent
pour certaines fonctions de bases de donnes :
Les botes de dialogue apparaissent lune la suite de lautre lors dune premire configuration, et un
Assistant vous guide (via les boutons Suivant/Prcdent) tout au long de ces tapes. Les
paramtres introduits dans la premire bote de dialogue sont repris dans les deux autres et il ne faut
alors introduire que les diffrences par rapport ces paramtres.
Si une configuration est dj disponible, les botes de dialogue sont reprises sous la forme de trois
onglets dans la fentre.
Si, avant la configuration, il ny a pas encore eu d'ouverture de session correcte la base de
donnes, (Bote de dialogue d'ouverture de session via le menu 'Projet' 'Liaison avec la base de
donnes' 'Login') une bote de dialogue d'ouverture de session souvre automatiquement cet effet.
4-18
CoDeSys V2.3
Port:
Nom du projet:
Si cette option est active, vous ne pouvez accder aux donnes des
rpertoires de base de donnes dfinis ici quen lecture seule.
CoDeSys V2.3
4-19
Projet Options
Appeler
La fonction de base de donnes 'Appeler' (Menu 'Projet' 'Liaison avec la base de donnes' permet de
copier la version en cours dun module hors de la base de donnes sur un projet ouvert localement,
en crasant la version locale. Ceci se produit automatiquement, pour tous les modules modifis par
rapport la version locale du projet activ et aux moments dsirs (marqu dun crochet) :
Ouvrir au projet
Apres compilation
russite
Loption Avec demande peut toujours tre active pour les points Appeler, Extraire et Archiver. Dans
ce cas, un bote de dialogue saffiche avant que laction concerne ne soit excute, incitant
lutilisateur confirmer ou interrompre cette action.
Les diffrents points de la bote de dialogue 'Objets communs' correspondent ceux de la bote de
dialogue dcrite plus haut 'Objets du Projet'. Les configurations valent pour tous les objets affects
la catgorie 'Objets communs'.
Les botes de dialogue apparaissent lune la suite de lautre lors dune premire configuration, et un
Assistant vous guide (via les boutons Suivant/Prcdent) tout au long de ces tapes. Les
paramtres introduits dans la premire bote de dialogue sont repris dans les deux autres et il ne faut
alors introduire que les diffrences par rapport ces paramtres.
Si une configuration est dj disponible, les botes de dialogue sont reprises sous la forme de trois
onglets dans la fentre.
4-20
CoDeSys V2.3
Pour les champs Adresse TCP/IP, Port, Nom du projet, reportez-vous la bote de dialogue Objets
du Projet/Objets communs.
Si cette option est active, tout fichier de symboles
*.sym (format texte) ou *.sdb (format binaire) est
aussi repris dans la base de donnes ds sa
cration. Lors de la cration des symboles, les
Crer une information de symboles binaires
attributs dobjets configurs dans les options du
(.sdb)
projet sous la catgorie 'Configuration des symboles'
restent valables.
Crer une information de symboles ASCII
(*.sym)
Les botes de dialogue apparaissent lune la suite de lautre lors dune premire configuration, et un
Assistant vous guide (via les boutons Suivant/Prcdent) tout au long de ces tapes. Les
paramtres introduits dans la premire bote de dialogue sont repris dans les deux autres et il ne faut
alors introduire que les diffrences par rapport ces paramtres.
Si vous appuyez sur Annuler, vous revenez sur la bote principale de dialogue, et les paramtres de
longlet 'Fichiers de compilation' ne sont pas enregistrs. (Ceux qui avaient dj t effectus sous
Objets du Projet et Objets communs sont cependant conservs.)
CoDeSys V2.3
4-21
Projet Options
Macros
Si vous slectionnez cette catgorie dans la bote de dialogue 'Options', vous obtenez les botes de
dialogue suivantes :
Options de la bote de dialogue de la catgorie Macros
Dans cette bote de dialogue, vous pouvez dfinir des macros partir du fichier des commandes de
CoDeSys; ces macros peuvent alors tre appeles dans le menu 'Editer' 'Macros'.
Veuillez procder comme suit pour dfinir de nouvelles macros :
1. Introduisez dans le champ de saisie Nom le nom de la macro crer. Aprs avoir appuy sur le
bouton Nouveau, ce nom est repris dans la Liste des macros et y est slectionn. La liste des
macros est organise en une arborescence. Les macros cres localement apparaissent lune
sous lautre, et les bibliothques de macro ventuellement lies (voir ci-dessous) y apparaissent
accompagnes du nom de fichier de bibliothque. Vous pouvez ouvrir ou fermer la liste des
lments de la bibliothque par le biais du signe plus ou moins avant le nom de la bibliothque.
2. Dfinissez dans le champ Menu la dnomination de lentre de menu laquelle la macro est
rattache dans le menu 'Editer' 'Macros'. Pour dfinir une lettre comme raccourci, il faut placer le
symbole '&' avant cette lettre. Exemple : le nom "Ma&cro 1" produit lentre de menu "Macro 1".
3. Introduisez maintenant dans le champ dditeur Commandes, les commandes se rapportant la
macro marque dans la liste des macros. Toutes les commandes du mcanisme collectif et les
mots-cls se rapportant celles-ci sont autoris(e)s, et vous pouvez en obtenir une liste par le
biais du bouton Aide. Une nouvelle ligne dinstructions peut tre insre via <Ctrl><Entre>. Vous
obtenez le menu contextuel avec toutes les fonctions dditeur littral par le biais du bouton droit
de la souris. Les composantes de commande allant ensemble peuvent tre regroupes laide de
guillemets.
4. Si vous souhaitez crer dautres macros, rptez les tapes 1 3 avant de confirmer laide du
bouton OK et de fermer la bote de dialogue.
Si vous souhaitez effacer une macro, slectionnez-la dans la liste des macros et appuyez sur la
touche <Suppr>.
Si vous souhaitez renommer une macro, slectionnez-la dans la liste des macros, donnez-lui un autre
nom sous Nom et appuyez sur le bouton Renommer.
Si vous souhaitez modifier une macro existante, slectionnez-la dans la liste des macros et ditez les
champs menu et/ou instructions. Les changement sont enregistrs avec OK.
En quittant la bote de dialogue avec OK, la version actuelle de la macro est sauvegarde dans le
projet.
4-22
CoDeSys V2.3
Les entres de menu de macros apparaissent dans lordre selon lequel elles ont t dfinies dans le
menu 'Editer' 'Macros'. Une vrification de la macro ne se produit que lors de dexcution de la
commande du menu.
Bibliothque des macros:
Les macros peuvent tre enregistres dans des bibliothques externes de macros, et peuvent ainsi
par exemple tre lies dautres projets.
Cration dun bibliothque de macros constitue de macros du projet actuel :
Appuyez sur le bouton Crer.... Vous obtenez la bote de dialogue 'Copier des objets' qui reprend
toutes les macros disponibles. Marquez les macros souhaites et confirmez avec OK. Suite quoi
la bote de dialogue pour la slection se referme et une nouvelle bote de dialogue 'Enregistrer la
bibliothque des macros' souvre. Introduisez ici le nom et le chemin daccs de la bibliothque
crer et appuyez sur le bouton Enregistrer. La bibliothque est ainsi cre sous <nom de la
bibliothque >.mac, et la bote de dialogue se referme.
Intgration de la bibliothque de macros <nom de la bibliothque>.mac dans le projet en cours
dutilisation.
Appuyez sur le bouton Inclure.... La bote de dialogue 'Ouvrir la bibliothque des macros'
apparat, affichant automatiquement les seuls fichiers avec lextension *.mac. Slectionnez la
bibliothque souhaite et appuyez sur le bouton Ouvrir. La bote de dialogue se referme et la
bibliothque apparat sous forme darborescence reprenant la liste des macros.
Remarque : Les macros relatives un projet peuvent galement tre exportes ('Projet' 'Exporter').
Cette commande vous permet de crer un nouveau projet intitul 'Sans nom'. Lors de
l'enregistrement, il faudra modifier ce nom.
'Fichier' 'Nouveau de modle'
Cette commande vous permet d'ouvrir un projet modle. Un dialogue s'ouvre vous permettant de
slectionner un fichier de projet qui sera alors ouvert avec comme nom "Inconnu".
'Fichier' - 'Ouvrir'
Icne :
Cette commande vous permet d'ouvrir un projet existant. Lorsqu'un projet est dj ouvert et qu'il a t
modifi, CoDeSys demande si vous souhaitez l'enregistrer ou non.
La bote de dialogue Ouvrir s'affiche, dans laquelle vous devez slectionner un fichier de projet
portant l'extension "*.pro" ou un fichier bibliothque portant l'extension "*.lib". Ces fichiers doivent
exister, car la commande "Ouvrir" ne permet pas de crer un projet.
Ouvrir le projet de l'automate
Pour charger un projet d'un automate programmable, appuyez sur le bouton PLC dans Ouvrir le
projet de l'automate. S'il n'existe pas encore de liaison avec l'automate programmable, vous
accdez dans un premier temps la bote de dialogue Paramtres de communication (voir le menu
'En Ligne' 'Paramtres de communication') afin de configurer les paramtres de transmission. S'il
existe dj une liaison en ligne, le logiciel vrifie si des fichiers de projet portant le mme nom figurent
dj dans le rpertoire de votre ordinateur. Si c'est le cas, vous accdez la bote de dialogue
Charger le projet de l'automate afin de dterminer si les fichiers locaux doivent tre remplacs par
CoDeSys V2.3
4-23
Gestion de projets
les fichiers utiliss dans l'automate programmable. (Ce processus est l'inverse du processus 'En
Ligne' 'Application tlcharge du code source dans l'automate', grce auquel le fichier source du
projet est enregistr dans l'automate. ne pas confondre avec 'Crer projet d'initialisation' !)
Remarque : Nous attirons votre attention sur le fait qu'un projet d'automate programmable qui est charg, ne
possde pas encore de nom. Vous devez par consquent enregistrer le projet sous un nouveau nom.
Si le systme cible le supporte, une 'Dsignation' saisie au sein des informations sur le projet sera
automatiquement attribue comme nouveau nom de fichier. Dans ce cas, le dialogue de sauvegarde
de fichier s'ouvrira automatiquement lors du chargement du projet partir de l'API, ce dialogue
reprenant ce nom de fichier et vous demandant de le confirmer ou de le modifier.
Dans le cas o aucun projet n'a encore t charg dans l'automate programmable, le message
d'erreur adquat est affich.
(Se reporter pour cela la catgorie 'Sourcedownload' dans 'Projet' 'Options')
Bote de dialogue standard Ouvrir
4-24
CoDeSys V2.3
Raccourci : <Ctrl>+<S>
Cette commande permet d'enregistrer tout projet qui a subi des modifications.
Lorsque le projet enregistrer est intitul "Sans nom", il convient de lui donner un nom (voir 'Fichier'
'Enregistrer sous').
'Fichier' 'Enregistrer sous'
Grce cette commande, vous pouvez stocker le projet actuel dans un autre fichier ou sous la forme
d'une bibliothque. Cette opration n'a pas d'incidence sur le fichier de projet d'origine.
Lorsque vous avez slectionn la commande, vous accdez la bote de dialogue pour
l'enregistrement. Choisissez soit un Nom de fichier existant, soit entrez un nouveau nom et
slectionnez le Type de fichier souhait.
Bote de dialogue Enregistrer sous
CoDeSys V2.3
4-25
Gestion de projets
Vous avez galement la possibilit d'enregistrer le projet actuel sous forme de bibliothque, de faon
pouvoir l'utiliser dans d'autres projets. Choisissez le type de fichier Librairie interne (*.lib), si vous
avez programm vos modules dans CoDeSys.
Choisissez le type de fichier Librairie externe (*.lib), lorsque vous voulez intgrer des modules qui
ont t implments dans d'autres langages de programmation (p. ex. le langage C). Cela signifie
qu'un fichier supplmentaire sera enregistr sous le nom de fichier de la bibliothque mais avec
l'extension "*.h". Ce fichier est structur comme un fichier C-Header et comporte les dclarations de
tous les modules, types de donnes et variables globales.
Protection d'une bibliothque par l'attribution d'une licence :
Si la bibliothque doit tre soumise une licence, les informations ncessaires relatives la licence
peuvent lui tre adjointes. cet effet, il faut ouvrir la bote de dialogue 'Editer les informations
relatives lattribution dune licence' par le biais du bouton Edit info de licence. Reportez-vous cet
effet la description de la Gestion de licences .
Pour terminer, cliquez sur OK. Le projet actuel est enregistr dans le fichier spcifi. Si le nouveau
nom donn au fichier existe dj, un message vous demande si vous souhaitez remplacer le fichier
concern.
Lorsque vous enregistrez le fichier sous la forme d'une bibliothque, la totalit du projet est compile.
En cas d'erreur, un message vous indique que, pour tre enregistr sous la forme d'une bibliothque,
un projet ne doit comporter aucune erreur. Le projet n'est donc pas enregistr sous la forme d'une
bibliothque.
'Fichier' 'Enregistrer archive/envoyer'
Vous pouvez crer un fichier zip comprenant tous les fichiers relatifs un projet CoDeSys l'aide de
cette commande. Ce fichier zip peut tre enregistr dans le systme de fichiers ou tre envoy
directement par e-mail.
Veuillez noter: Cette fonction d'archivage ne convient pas pour rtablir des environnements de projets. Elle sert
tout simplement rsumer tous les fichiers appartenant au projet. Lorsqu'une archive est
dcomprime, il faut adapter le chemin de chaque fichier l'environnement CoDeSys correspondant!
Aprs avoir excut cette commande, la bote de dialogue 'Enregistrer le fichier d'archives' s'ouvre.
cran 'Enregistrer le fichier d'archives'
Les catgories de fichiers devant tre ajoutes au fichier d'archives du projet sont dfinies ici. Une
catgorie est slectionne si la case en regard de cette catgorie est munie d'un crochet . Pour ce
faire, il vous suffit de cliquer une fois dans la case ou de cliquer deux fois sur la dsignation de la
4-26
CoDeSys V2.3
catgorie. Pour chaque catgorie slectionne, tous les fichiers pertinents sont en principe copis
dans le fichier zip (voir tableau ci-dessous). Pour certaines catgories cependant, vous pouvez
procder une slection partielle. cet effet, vous disposez de la bote de dialogue 'Dtails' que vous
pouvez ouvrir par le biais du bouton Dtails en regard.
Bote de dialogue 'Dtails' pour une slection cible de fichiers pour le fichier d'archives
La bote de dialogue 'Dtails' vous donne une liste de tous les fichiers disponibles dans cette
catgorie. Activez ou dsactivez les fichiers souhaits : Les boutons Slectionner tout et Ne rien
slectionner agissent sur tous les fichiers de la liste, un clic dans une case (ds)active le fichier en
regard, de mme qu'un double-clic sur une entre. En outre, si une entre est marque, vous pouvez
l'activer ou la dsactiver au moyen de la touche <Entre>.
Lorsque vous fermez la bote de dialogue avec OK, la slection effectue est accepte. La
configuration restera en mmoire jusqu' la cration dfinitive du fichier d'archives.
Dans la bote principale de dialogue 'Enregistrer les archives', on reconnat les catgories pour
lesquelles une slection partielle a t effectue l'arrire plan gris de la case : ..
Le tableau suivant vous indique quelles catgories de fichiers sont prdfinies et quels fichiers s'y
rapportent :
Catgorie
Fichier de projet
Bibliothques
rfrences
*.lib, *.obj, *.hex (les bibliothques et, le cas chant, les fichiers .obj et .hex)
Informations de
compilation
*.ci
(Informations
au
sujet
de
la
dernire
*.ri
(Information
au
sujet
du
dernier
<temp>.* (compilation temporaire et fichiers de
galement pour la simulation
Fichier INI
Codesys.ini
Entres dans la
registry
CoDeSys V2.3
compilation),
tlchargement)
tlchargement)
4-27
Gestion de projets
Fichier cible
*.trg (Fichiers cibles en format binaire pour toutes les cibles installes)
*.txt (Fichiers cibles en format texte pour toutes les cibles installes, si
disponibles)
Fichiers de
configuration
Fichiers de symbole
Journal
Fichiers de bitmap
Gateway local
Fichiers de langage
Projet dinitialisation
Pour ajouter d'autres fichiers votre guise dans le fichier d'archives, ouvrez la bote de dialogue
Autres fichiers... via le bouton du mme nom.
Bote de dialogue 'Autres fichiers' pour fichier d'archives du projet
Vous pouvez crer ici votre propre liste de fichiers. Ouvrez cet effet au moyen du bouton Ajouter...
la bote de dialogue standard permettant d'ouvrir un fichier. Choisissez un fichier et confirmez avec
Ouvrir. Ce fichier est alors inclus dans la liste de la bote de dialogue 'Autres fichiers'. Vous pouvez
effacer une entre de la liste au moyen du bouton Effacer. Lorsque la liste est termine, fermez la
bote de dialogue avec OK, et les entres seront sauvegardes jusqu' la cration du fichier zip.
Pour ajouter un fichier Lisezmoi au fichier zip, appuyez sur le bouton Commentaire.... Une bote de
dialogue du mme nom s'ouvre, contenant un champ d'dition. Vous pouvez introduire ici du texte
votre guise. Lorsque vous refermez la bote de dialogue avec OK, un fichier Lisezmoi.txt est cre en
mme temps que le fichier zip. Ce fichier Lisezmoi contient le texte que l'utilisateur a saisi ainsi que
les ajouts automatiques de date de cration et numro de la version CoDeSys utilise.
4-28
CoDeSys V2.3
Dans la bote de dialogue Imprimer, vous pouvez choisir la zone d'impression au niveau de
Documentation du projet (soit Tout soit une slection de Pages explicitement indiques); pour ce qui
est des objets, ils sont imprims dans leur totalit. Vous pouvez spcifier le Nombre de copies et
imprimer dans un fichier.
Le bouton Proprits permet d'ouvrir la bote de dialogue Configuration de l'imprimante.
Vous pouvez dterminer la mise en page du document que vous souhaitez imprimer via la commande
'Configuration Documentation' du menu 'Fichier'.
Pendant l'impression, une bote de dialogue vous indique le nombre de pages dj imprimes. Si
vous fermez cette bote de dialogue, l'impression cesse la page suivante.
CoDeSys V2.3
4-29
Gestion de projets
Pour documenter l'ensemble de votre projet, utilisez la commande 'Projet' 'Documentation du projet'.
Si vous souhaitez crer un document modle pour votre projet, dans lequel vous souhaitez introduire
tous les commentaires relatifs aux variables utilises dans ce projet, ouvrez une liste globale de
variables et utilisez la commande 'Extras' 'Crer document modle'.
'Fichier' 'Configuration Documentation'
Cette commande vous permet de configurer les pages imprimes et donne accs la bote de
dialogue affiche ci-dessous.
Vous pouvez entrer le nom du fichier dans lequel la configuration doit tre mmorise au niveau de la
zone Fichier et lui donner l'extension ".dfr". Par dfaut, le modle est enregistr dans le fichier
DEFAULT.DFR.
Si vous souhaitez modifier une configuration existante, cliquez sur le bouton Parcourir pour
rechercher le fichier souhait dans l'arborescence de rpertoires.
Bote de dialogue Configurations de documentation
De mme, vous pouvez choisir de faire commencer une nouvelle page pour chaque objet et une
nouvelle page pour chaque sous-objet. Le bouton Configuration vous permet d'accder la
configuration de l'imprimante.
En cliquant sur le bouton Modifier, vous accdez au modle de configuration de la mise en page.
Dans ce fichier, vous pouvez indiquer les numros de page, la date, le nom du fichier et du module
ainsi que placer des graphiques et spcifier les zones dans lesquelles la documentation doit tre
imprime. La surface de feuille prise en compte par la configuration de limprimante est hachure en
rouge.
Fentre pour insrer des espaces rservs dans la mise en page
4-30
CoDeSys V2.3
L'option 'Espace rserv' du menu 'Insrer' vous permet d'insrer un espace rserv. Vous avez le
choix entre les cinq espaces rservs suivants (Page, Nom de module, Nom de fichier, Date,
Contenu) et vous pouvez les placer sur la page en dessinant un rectangle. Ces espaces rservs ont
les effets suivants:
Commande
Espace rserv
Effet
Page
{Page}
Nom de module
{POUName}
Nom de fichier
{FileName}
Date
{Date}
Contenu
{Content}
En outre, vous pouvez insrer une image Bitmap l'aide de l'option 'Bitmap' du menu 'Insrer' (p. ex.
le logo d'une socit). Pour cela, vous devez choisir le graphique insrer, puis tracer un nouveau
rectangle sur la page l'aide de la souris. Il est possible d'insrer d'autres lments de visualisation
(voir le manuel 'CoDeSys Visualisation').
Lorsque le modle a t modifi, CoDeSys demande, lors de la fermeture de la fentre, si vous
souhaitez conserver ces modifications ou non.
Remarque : Pour pouvoir tenir compte, ds la programmation, de la dimension du papier prvue pour limpression
du projet, rglez le format de papier souhait comme dcrit ici puis activez loption 'Afficher la zone
dimpression' dans les options du projet, catgorie Environnement de travail.
'Fichier' 'Quitter'
Raccourci : <Alt>+<F4>
CoDeSys V2.3
4-31
Gestion de projets
Exemple de messages d'erreur et d'informations de compilation pouvant apparatre dans la fentre de messages d'un
projet
4-32
CoDeSys V2.3
CoDeSys V2.3
4-33
Gestion de projets
Introduisez dans le champ Fichier de traduction: un chemin d'accs indiquant l'endroit o le fichier
doit tre sauvegard. L'extension du fichier est par dfaut *.tlt, il s'agit un fichier texte. L'extension
*.txt est galement possible, et mme recommande si par exemple le fichier doit tre trait par le
biais de WORD ou EXCEL, vu que dans ces cas, les donnes sont disposes sous forme de tableau.
S'il y a dj un fichier de traduction que vous souhaitez traiter, introduisez le chemin d'accs de ce
fichier ou utilisez la bote de dialogue standard Windows permettant de slectionner un fichier par le
biais du bouton Rechercher.
Les informations suivantes provenant du projet peuvent tre donnes en option en plus du fichier de
traduction remplacer ou modifier, de telle sorte que vous disposiez, dans ce fichier de traduction,
de : Noms (p.ex. le titre 'Module' dans l'organisateur d'objets), Identificateurs, Chane de
caractres, Commentaires, Visualisation, Textes de visualisation, Textes d'alarme. Des
Informations sur la position par rapport ces lments de projets peuvent galement tre reprises.
Si les options correspondantes sont pourvues d'un crochet, les informations sont reprises comme
symboles linguistiques du projet en cours d'utilisation dans un nouveau fichier de traduction crer,
ou ajoutes un fichier de traduction existant. Si l'option n'est pas slectionne, toutes les
informations relatives la catgorie concerne sont effaces du fichier de traduction, quel que soit le
projet d'o elles proviennent.
Textes dans les visualisations :
Les textes de visualisation utiliss ici sont les lments de visualisation 'Texte' et 'Texte pour infobulle'. Toutefois, notez les points suivants lors de lutilisation dun fichier de traduction pour les textes
de visualisation :
Un fichier de traduction *.tlt ou *.txt ne peut tre utilis quavec CoDeSys et CoDeSys HMI, mais
pas avec la visualisation Cible et la visualisation Web. Le cas chant, utilisez de prfrence un
fichier de langage de visualisation spcial *.vis.
En principe, la commutation vers une autre langue nest possible quen mode En ligne, c.--d. que
les textes de visualisation ne sont pas traduits avec la commande 'Projet' 'Traduire dans dautres
langues', mais seulement si la langue souhaite est slectionne en ligne, dans le dialogue 'Extras'
'Environnement'.
Si un fichier tlt ou txt doit tre utilis pour des textes de visualisation ('Texte' et 'Texte pour infobulle' des lments de visualisation), les textes correspondants doivent tre introduits dans le
dialogue de configuration de llment de visualisation entre deux signes # (p. ex. #text#).
propos de la commutation vers une autre langue dans la visualisation, voir le manuel
CoDeSys_Visu_V23_F.pdf.
Informations sur la position : l'aide des donnes Chemin d'accs au fichier, Module, Ligne, cellesci dcrivent la position du symbole linguistique mis disposition pour la traduction. Vous avez ici le
choix entre trois options:
Pas d'information: il n'y a pas d'informations de position gnres.
Premire occurrence: La position de la premire occurrence de l'lment traduire est reprise
dans le fichier de traduction.
Tous: Toutes les positions auxquelles l'lment concern intervient dans le projet vous sont
indiques.
Si un fichier de traduction cr auparavant est dit et comporte plus d'informations de position que
ceux mis disposition par la slection, celles-ci sont abrges en consquence ou entirement
effaces, quel que soit le projet d'o elles ont t gnres.
Remarque : Par lment (symbole linguistique), on ne peut gnrer qu'un maximum de 64 informations sur la
position, mme si l'utilisateur a slectionn 'Tous' sous la rubrique "Informations sur la position" dans
la bote de dialogue du fichier de traduction.
Ecraser: Toutes les informations existantes sur la position dans le fichier de traduction en cours de
traitement sont crases, quel que soit le projet d'o elles ont t gnres.
4-34
CoDeSys V2.3
Langages cible: Cette liste contient des dsignations pour toutes les langues comprises dans le
fichier de traduction ou qui doivent tre reprises aprs avoir ferm la bote de dialogue 'Crer fichier
de traduction'.
Le bouton Exclure ouvre la bote de dialogue 'Exclure les librairies'. Vous pouvez slectionner ici,
dans la liste des bibliothques associes au projet, toutes celles dont les identificateurs ne sont pas
repris dans le fichier de traduction. L'entre concerne est slectionne l'aide de la souris dans le
tableau de gauche Bibliothques inclues et ajoute la liste dans le tableau de droite
Bibliothques exclues l'aide du bouton Ajouter. De la mme manire, le bouton Effacer permet
d'effacer une entre slectionne droite. La configuration est confirme avec OK et la bote de
dialogue se referme.
Bote de dialogue permettant d'exclure des informations venant de certaines bibliothques dans l'laboration du
fichier de traduction
Un identificateur de langue doit tre saisi dans le champ d'dition, et celui-ci ne peut contenir un
espace au dbut ou la fin ou encore un trma (, , ).
Vous refermez la bote de dialogue avec OK, et la nouvelle langue cible apparat dans la liste des
langues cibles.
Le bouton Effacer permet d'effacer l'entre slectionne de la liste.
Vous pouvez galement confirmer la bote de dialogue 'Crer un fichier de traduction' l'aide du
bouton OK de manire gnrer un fichier de traduction. S'il y a dj un fichier de traduction du
mme nom, une demande de scurit apparat tout d'abord, vous incitant rpondre par oui ou par
non :
"Le fichier de traduction donn existe dj. Il va tre modifi en consquence, et
une copie de scurit du fichier existant dj sera ralise. Voulez-vous
continuer ?"
Non permet de revenir la bote de dialogue 'Crer un fichier de traduction' sans modification. Si Oui
a t choisi, une copie du fichier de traduction existant dj est ralise, portant le nom
"Backup_of_<Fichier de traduction>.xlt" et classe dans le mme rpertoire, et le fichier de traduction
concern est modifi conformment aux options slectionnes.
CoDeSys V2.3
4-35
Gestion de projets
aprs la traduction :
les traductions en anglais et en franais de 'Visualisierung' ont t introduites en lieu et place de
#TODO :
##NAME_ITEM
[D:\CoDeSys\projects\Bspdt_22.pro::ST_Visualisierung::0]
ST_Visualisierung
##English :: ST_Visualization
##French :: ST_Visu
##END_NAME_ITEM
Il faut veiller ce que les identificateurs ou noms traduits restent valables et corrects selon la norme,
et que les chanes de caractres et commentaires restent inclus entre les guillemets. Dans le cas dun
commentaire (##COMMENT_ITEM), repris dans le fichier de traduction avec "(* Commentaire 1 )", le
"##TODO' doit tre remplac par un "(* Commentaire 1 *)", et dans le cas dune chane de caractres
(##STRING_ITEM), "'chane de caractres1'" par "'texte1'".
Remarque : Les parties suivantes dun fichier de traduction ne devraient pas tre modifies sans connaissances
pralables approfondies : bloc linguistique, bloc de drapeaux, informations sur la position, textes
originaux.
Le projet en cours d'utilisation peut tre traduit dans une autre langue moyennant l'utilisation d'un
fichier de traduction valable.
4-36
CoDeSys V2.3
Remarque: Si vous souhaitez conserver le projet dans la version linguistique originale, faites une copie de ce
projet sous un autre nom avant la traduction. Un processus de traduction n'est pas rversible.
Veuillez noter cet gard la possibilit d'uniquement visualiser le projet dans une autre langue, cette
visualisation ne permettant pas une dition de ce projet.
Indiquez dans le champ Fichier de traduction le chemin d'accs du fichier de traduction utiliser.
Grce Rechercher, vous obtenez une bote de dialogue standard Windows permettant la slection
d'un fichier.
Sous Langue cible, vous obtenez une liste des langues disponibles dans le fichier de traduction vous
permettant de choisir la langue cible.
OK dbute la traduction du projet en cours d'utilisation l'aide du fichier de traduction indiqu dans la
langue cible slectionne. Lors de la traduction, un dialogue d'avancement apparat en mme temps
que les messages d'erreur ventuels. Aprs la traduction, la bote de dialogue se referme ainsi que
toutes les fentres d'diteur du projet.
Annuler ferme la bote de dialogue sans aucune modification du projet en cours d'utilisation.
Si le fichier de traduction contient des donnes incorrectes, un message d'erreur apparat aprs avoir
appuy sur OK, reprenant le chemin d'accs du fichier et la ligne incorrecte, par exemple :
"[C:\Programme\CoDeSys\projets\visu.tlt (78)]; texte de traduction attendu".
Remarque : Notez les spcificits relatives aux textes dans les visualisations, voir ci-dessus 'Crer fichier de traduction'.
Indiquez dans le champ Fichier de traduction le chemin d'accs du fichier de traduction utiliser.
Grce Rechercher..., vous obtenez une bote de dialogue standard Windows permettant la
slection d'un fichier.
Le champ Langue cible vous donne une liste de slection proposant, outre l'entre de <Langue
d'origine>, les dsignations des langues contenues dans le fichier de traduction. La langue d'origine
est celle qui est actuellement enregistre avec le projet. Elle ne change que lorsque vous excutez
l'instruction 'Projet' 'Traduire'. Choisissez maintenant une des autres langues proposes puis fermez
le dialogue via OK. Le projet sera alors affich dans la langue que vous aurez slectionne, mais il ne
sera cependant pas ditable dans cette visualisation !
Pour revenir la langue d'origine, vous pouvez utiliser la commande 'Commuter traduction'.
Remarque : Notez les spcificits relatives aux textes dans les visualisations, voir ci-dessus 'Crer fichier de traduction'.
Commuter traduction
Si vous avez transform, par le biais de la commande 'Montrer le projet traduit', l'affichage du projet
(protg en criture) dans une autre langue disponible dans le fichier de traduction, la commande
CoDeSys V2.3
4-37
Gestion de projets
'Commuter traduction' du menu 'Projet' 'Traduire dans une autre langue' vous permet de passer de
cette version traduite la version originale (ditable) et vice-versa.
'Projet' 'Documentation du projet'
Cette commande vous permet d'imprimer une documentation relative l'ensemble de votre projet.
Bote de dialogue Documenter le projet
Les zones slectionnes apparaissant en bleu dans la bote de dialogue sont imprimes.
Si vous souhaitez slectionner la totalit du projet, slectionnez le nom du projet figurant sur la
premire ligne.
Par contre, si vous souhaitez slectionner un objet unique, cliquez sur l'objet concern ou dplacez,
l'aide des touches directionnelles, le rectangle trac en pointill sur l'objet souhait. Les objets dont le
symbole est prcd du caractre "+" sont des objets d'organisation contenant d'autres objets. En
4-38
CoDeSys V2.3
cliquant sur le caractre "+", l'objet d'organisation s'ouvre; en cliquant sur le caractre "" qui apparat
alors, il se ferme. Lorsque vous slectionnez un objet d'organisation, tous les objets qui en font partie
sont slectionns dans le mme temps. En maintenant la touche <Maj> enfonce, vous pouvez
slectionner un bloc d'objets; la touche <Ctrl> permet de slectionner plusieurs objets sparment.
Aprs avoir effectu votre slection, cliquez sur OK. La bote de dialogue Imprimer s'affiche. Vous
dfinissez la prsentation des pages imprimer l'aide de la commande 'Fichier' 'Configuration
Documentation'.
'Projet' 'Exporter'
CoDeSys permet d'exporter ou d'importer des projets. Cette fonctionnalit vous donne la possibilit
d'changer des programmes entre diffrents systmes de programmation CEI.
Jusqu' prsent, les modules en langage IL, ST et SFC ont un format d'change standard (il s'agit du
format 'Common Elements' de la norme CEI 61131-3). Pour les modules en langage LD et FBD et les
autres objets, CoDeSys propose un format de stockage propre, car la norme CEI 61131-3 ne dispose
pas de format textuel pour ces units et objets. Les objets slectionns sont enregistrs dans un
fichier ASCII.
Il est possible d'exporter les modules, les types de donnes, les visualisations et les ressources. Il est
possible en outre d'exporter les entres provenant du gestionnaire des bibliothques, c.--d. les
informations relatives aux liens vers les bibliothques (pas les bibliothques elles-mmes !).
Attention:La rimportation d'un module FBD ou LD choue si, dans l'diteur graphique, un commentaire contient
un guillemet simple ('), ce dernier tant interprt comme le dbut d'une chane de caractres!
Aprs avoir effectu votre slection dans la bote de dialogue, (pour la slection, procdez comme
pour 'Projet' 'Documentation du projet'), cliquez sur OK. La bote de dialogue Enregistrer s'affiche.
Nommez le fichier en lui attribuant l'extension ".exp".
'Projet' 'Importer'
Slectionnez le fichier d'exportation souhait dans la bote de dialogue Ouvrir qui s'affiche.
Les donnes sont importes dans le projet actuel. S'il existe un objet du mme nom dans le projet,
une bote de dialogue s'ouvre et affiche la question suivante: "Remplacer l'objet existant?": Si vous
rpondez Oui, l'objet existant est remplac par celui du fichier d'importation; si vous rpondez Non, le
nouvel objet garde le nom de l'objet existant, lequel est complt par un caractre de soulignement et
un numro ("_0", "_1", ..). L'option Oui, tout ou Non, tout effectue la mme opration pour l'ensemble
des objets.
Si linformation relative un lien vers une bibliothque est importe, la bibliothque en question est
charge dans le gestionnaire des bibliothques et ajoute la fin de la liste. Si la bibliothque dj
t charge dans le projet, elle nest pas nouveau charge. Si cependant un autre moment de
sauvegarde pour la bibliothque est indiqu dans le fichier dexportation qui est import, le nom de la
bibliothque dans le gestionnaire des bibliothques sera caractris par un "*" (p.ex.
standard.lib*30.3.99 11:30:14), comme cest le cas avec le chargement dun projet. Si la bibliothque
ne peut tre trouve, la bote de dialogue ci-dessous vous informe : "Impossible de trouver la
bibliothque {<chemin daccs>\}<nom> <date> <heure>", comme cest le cas avec le chargement
dun projet.
La fentre de messages consigne l'opration.
'Projet' 'Extras' 'Importer un fichier Siemens'
Le sous-menu 'Importer un fichier Siemens' propose des commandes destines l'importation de
blocs et de variables contenus dans les fichiers Siemens STEP5 et STEP7.
Les commandes suivantes sont proposes:
Importer un fichier SEQ
Importer un fichier S5
Pour plus d'informations sur l'importation de fichiers Siemens, reportez-vous chapitre Appendice G,
'Siemens-Import'.
CoDeSys V2.3
4-39
Gestion de projets
'Projet' 'Comparer'
Cette commande permet de comparer deux projets, ou de comparer la version actuelle du projet
ouvert avec celle qui a t enregistre en dernier lieu.
Aperu, Dfinitions:
Projet en cours :
Projet de comparaison :
Mode de comparaison :
Unit :
Dans le mode de comparaison, le projet en cours et le projet de comparaison sont confronts dans
une fentre scinde en deux parties, et les modules tant diffrent sont marqus dune couleur. Dans
le cas de modules dditeur, les contenus sont galement directement confronts. Avant le processus
de comparaison, des filtres relatifs la prise en compte despaces et de commentaires peuvent tre
activs. Vous pouvez en outre dterminer si, en mode de comparaison, les changements intervenant
lintrieur dunits qui subsisteront doivent tre reprsents tels quels, ou si les units diffrentes
doivent tre marques comme 'nouveau' ou 'plus disponible'. La version du projet de comparaison
peut tre reprise dans le projet en cours soit par units individuelles diffrentes, soit par blocs entiers
identifis comme identiques.
Veuillez noter : Tant que le mode de comparaison est activ (voir dans la barre d'tat : COMPARE), le projet ne
peut tre dit !
4-40
CoDeSys V2.3
Opposer les changements : Si cette option est active : Pour une unit au sein d'un module qui n'a
pas t efface ou ajoute mais simplement modifie, la version du projet de comparaison est
oppose directement la version du projet en cours grce la fentre scinde en deux du mode de
comparaison (marquage en rouge, voir ci-dessous). Si cette option est dsactive : L'unit concerne
est reprsente comme 'plus disponible' dans le projet de comparaison et comme 'nouveau' dans le
projet en cours (voir ci-dessous) et n'est donc pas directement oppose.
Reportez-vous cet effet l'exemple sur la page suivante dans lequel la ligne 0005 du projet en
cours diffre (partie gauche de la fentre).
Exemple pour 'Opposer les changements'
Lorsque vous fermez la bote de dialogue de comparaison du projet avec OK, la comparaison
s'effectue selon les rglages.
CoDeSys V2.3
4-41
Gestion de projets
Les modules qui prsentent des diffrences sont affichs ombrs et sont caractriss par la couleur
du texte ou par lajout dun texte :
Rouge : une unit qui a t modifie est reprsente en rouge dans les deux parties de la fentre.
Bleu : unit disponible uniquement dans le projet en cours; un vide est introduit ce mme
emplacement dans larborescence du projet de comparaison.
Vert : unit disponible uniquement dans le projet de comparaison ; un vide est introduit ce mme
emplacement dans larborescence du projet en cours.
Noir : unit pour laquelle aucune diffrence na t constate.
"(Proprits changes)" : Ce texte apparat derrire le nom dun module dans larborescence du
projet en cours lorsque des diffrences ont t constates dans les proprits du module.
"(Droits d'accs modifis)" : Ce texte apparat derrire le nom dun module dans larborescence du
projet en cours lorsque des diffrences ont t constates dans les droits daccs.
2. Contenu des modules en mode de comparaison :
Vous ouvrez le module concern laide dun double-clic sur la ligne dans laperu du projet.
Sil sagit dun module texte ou graphique modifi (rouge), il sera ouvert dans une fentre scinde en
deux parties. Le contenu du module dans le projet de comparaison ( droite) sera oppos celui du
projet en cours, comme ctait le cas dans laperu du projet. Les diffrences constates seront
reprsentes avec les mmes couleurs que celles utilises ci avant.
4-42
CoDeSys V2.3
Sil ne sagit pas dun module diteur, mais bien par exemple dune configuration de tche, de
configurations du systme cible, etc., le module du projet en cours ou le module du projet de
comparaison sera ouvert dans une propre fentre selon que vous cliquiez sur la partie gauche ou
droite de laperu du projet. Pour ces modules de projet, il ny a pas dautre diffrenciation au niveau
du contenu.
Travailler en mode de comparaison
Si, dans la fentre scinde en deux parties, le curseur se trouve sur une ligne indiquant une
diffrence, le menu 'Extras' ou le menu contextuel (bouton droit de la souris) offre une slection des
commandes suivantes, selon que lon se trouve au niveau de laperu du projet ou lintrieur dun
module :
`Prochaine diffrence'
`Diffrence prcdente'
`Accepter les parties changes'
`Accepter lment chang'
`Accepter les caractristiques'
'Accepter les droits d'accs'
Remarque : La reprise de diffrents endroits au sein dun projet (modifications) ou de droits daccs nest possible
qu partir du projet de comparaison vers le projet en cours et non inversement.
CoDeSys V2.3
4-43
Gestion de projets
Le curseur se dplace jusqu lemplacement suivant (ligne dans laperu du projet/ligne ou rseau
dans le module) indiquant une diffrence.
'Extras' 'Diffrence prcdente'
Icne : <Maj><F7>
Le curseur se dplace vers lemplacement prcdent (ligne dans laperu du projet/ligne ou rseau
dans le module) indiquant une diffrence.
'Extras' 'Accepter les parties changes'
Icne : <Ctrl> <Espace> : Accepter les parties changes ou Accepter changement
Pour toutes les units allant ensemble (p.ex. des lignes conscutives) et tant caractrises par la
mme modification, la version du projet de comparaison est reprise dans le projet en cours (et non
inversement !). Les units concernes apparaissent alors dans la partie gauche de la fentre dans la
couleur adquate. Sil sagit dune unit qui tait marque en rouge (modification l'intrieur), la
reprise dans le projet en cours est indique par la couleur jaune.
'Extras' 'Accepter lment chang'
Icne : <Ctrl> <Espace> : (uniquement dans laperu du projet)
La version du projet de comparaison nest reprise dans le projet en cours (et non inversement !) que
pour lunit de comparaison sur laquelle le curseur se trouve actuellement (p.ex. ligne dans laperu
du projet, ou ligne/rseau dans les modules). Lunit concerne apparat alors dans la partie gauche
de la fentre dans la couleur adquate. Sil sagit dune unit qui tait marque en rouge (modification
l'intrieur), la reprise dans le projet en cours est indique par la couleur jaune.
'Extras' 'Accepter les caractristiques'
(uniquement dans laperu du projet)
Pour le module sur lequel le curseur se trouve actuellement, les caractristiques du module provenant
du projet de comparaison seront reprises dans le projet en cours (et non inversement !).
'Extras' 'Accepter les droits d'accs '
(uniquement dans laperu du projet)
Pour le module sur lequel le curseur se trouve actuellement, les droits daccs du module provenant
du projet de comparaison seront reprises dans le projet en cours (et non inversement !).
'Projet' 'Copier'
Cette commande permet de copier dans votre projet des objets (modules, types de donnes,
visualisations et ressources) ainsi que des liens vers des bibliothques contenus dans d'autres
projets.
Lorsque vous slectionnez cette commande, la bote de dialogue standard Ouvrir s'affiche, si vous
avez slectionn un fichier, puis une autre bote de dialogue s'ouvre, dans laquelle vous pouvez
slectionner les objets souhaits. La slection est effectue de la mme faon que pour 'Projet' 'Documentation du projet'.
S'il existe dj un objet portant le mme nom dans le projet, le nouvel objet garde le nom de l'objet
existant, lequel est complt par un caractre de soulignement et un numro ("_1", "_2" ...).
'Projet' 'Informations sur le projet'
Grce cette option, vous pouvez mmoriser des informations relatives votre projet. Cette
commande donne accs la bote de dialogue suivante:
4-44
CoDeSys V2.3
le nom de l'Auteur,
le numro de la Version, et
une Description du projet.
Ces donnes sont optionnelles. Lorsque vous cliquez sur le bouton Statistique, vous obtenez une
description statistique du projet.
Cette description contient les donnes reprises dans la bote de dialogue Info sur le projet, ainsi que
le nombre de Modules, de Types de donnes, de Variables locales et de Variables globales, tels
qu'ils ont t enregistrs lors de la dernire compilation.
CoDeSys V2.3
4-45
Gestion de projets
Vous pouvez appuyer sur le bouton Infos relatives la licence ... s'il s'agit d'un projet CoDeSys qui
a dj t enregistr comme module soumis licence par le biais de la commande 'Fichier'
'Enregistrer sous...'. Vous obtenez dans ce cas la bote de dialogue de 'Editer informations relatives
l'attribution d'une licence', dans laquelle vous pouvez modifier ou effacer les informations relatives
cette licence. Voyez cet effet : 'Gestion des licences dans CoDeSys'.
Si vous slectionnez l'option Demander de l'information sur le projet dans la catgorie Ouvrir &
Fermer de la bote de dialogue Options, les informations sur le projet sont automatiquement appeles
lors de l'enregistrement d'un nouveau projet ou de l'enregistrement d'un projet sous un nouveau nom.
'Projet' 'Recherche globale'
Cette commande vous permet de rechercher un texte dans les modules, les types de donnes ou les
objets des variables globales.
Lorsque la commande a t appele, une bote de dialogue s'affiche, dans laquelle vous pouvez
slectionner les objets souhaits. La slection est effectue de la mme faon que pour 'Projet' 'Documentation du projet'.
Aprs avoir cliqu sur OK pour confirmer votre choix, la bote de dialogue Rechercher s'affiche. Si un
texte est trouv dans un objet, ce dernier est charg dans l'diteur auquel il est li et le lieu o il a t
dcouvert est affich. Pour ce qui est de l'affichage du texte trouv ainsi que de la recherche et de la
poursuite de la recherche, ils sont analogues la commande 'Rechercher' du menu 'Editer'.
Aprs avoir cliqu sur OK pour confirmer votre choix, la bote de dialogue standard permettant la
recherche s'affiche. Celle-ci souvre directement si la commande 'Recherche globale' a t appele
via le symbole
dans la barre des menus, et la recherche se rapporte automatiquement toutes
les parties du projet pouvant faire lobjet dune recherche. Les dernires recherches introduites
peuvent tre slectionnes via la zone de liste modifiable du champ Rechercher. Si un texte est
trouv dans un objet, ce dernier est charg dans l'diteur ou le gestionnaire de bibliothques auquel il
est li et le lieu o il a t dcouvert est affich. Pour ce qui est de l'affichage du texte trouv ainsi
que de la recherche et de la poursuite de la recherche, ils sont analogues la commande
"Rechercher" du menu "Editer".
Si vous slectionnez le bouton Fentre de messages, tous les endroits o la suite de caractres
recherche est utilise dans les objets slectionns sont numrs ligne par ligne sous forme de
tableau dans une fentre de messages. Le nombre doccurrences trouves est donn la fin.
Si la fentre de messages ntait pas ouverte, elle est affiche. Par emplacement trouv, les donnes
suivantes sont affiches :
4-46
CoDeSys V2.3
Nom dobjet
Emplacement dans la partie de dclaration (Dcl) ou dans la partie dimplmentation (Impl) dun
module
Numro de ligne ou de rseau
Ligne complte dans le cas des diteurs littraux
Unit de texte complte dans le cas des diteurs graphiques
Fentre des messages avec affichage des rsultats de recherche
Si, dans la fentre de messages, vous excutez un double-clic sur une ligne avec la souris ou si vous
enfoncez la touche <Entre>, alors lditeur de lobjet souvre. La ligne concerne de lobjet est
marque. Vous pouvez parcourir rapidement les lignes daffichage au moyen de la touche de fonction
<F4> ou <Maj> + <F4>.
'Projet' 'Remplacer globalement'
Cette commande vous permet de rechercher un texte dans les modules, les types de donnes ou les
objets des variables globales et de le remplacer par un autre. Pour ce qui est de la manipulation et de
la procdure, elles sont identiques celles dcrites dans la partie 'Projet' - 'Recherche globale' ou
'Editer' - 'Remplacer'. Cependant, une slection des bibliothques nest pas propose et il ny a pas
daffichage possible dans la fentre de messages.
'Projet' 'Vrifier tout'
Grce cette commande, vous pouvez ouvrir un sous-menu comprenant les commandes suivantes
permettant de contrler l'exactitude smantique du projet :
Variables inutilises
Zones de mmoire superposes
Accs concurrent
Ecriture multiple sur la sortie
Les rsultats seront affichs dans une fentre de messages.
Chacune de ces fonctions contrle l'tat de la dernire compilation. Si le projet a t modifi depuis
lors, un avertissement saffiche sur la fentre de messages. Pour obtenir un rsultat de contrle
actuel, vous devez donc recompiler le projet.
Remarque: Ces contrles peuvent galement tre configurs dans les options de projet, catgorie Options de
compilation, de telle sorte qu'ils soient automatiquement effectus chaque compilation.
Variables inutilises
Cette fonction recherche des variables qui sont dclares mais non utilises dans le programme.
Elles sont affiches avec le nom du module et la ligne, par exemple : PLC_PRG (4) var1. Les
variables contenues dans des bibliothques ne sont pas prises en compte.
Zones de mmoire imbriques
Cette fonction vrifie sil ny a pas de recoupements dans certaines zones de mmoire lors de
laffectation de variables via une dclaration AT. titre dexemple, il y a un recoupement de par
CoDeSys V2.3
4-47
Gestion de projets
laffectation des variables "var1 AT %QB21: INT" et "var2 AT %QD5: DWORD", puisquelles ont loctet
21 de commun. L'affichage ressemble alors ceci :
%QB21 est rfrenc par les variables suivantes:
PLC_PRG (3): var1 AT %QB21
PLC_PRG (7): var2 AT %QD5
Accs concurrent
Cette fonction recherche des zones de mmoire d'adresses CEI qui sont rfrences dans plus d'une
tche. Il n'est pas fait de diffrence entre l'accs en lecture ou l'accs en criture. L'affichage
ressemble ceci :
%MB28 est rfrenc dans les tches suivantes :
Task1 - PLC_PRG (6): %MB28 [accs lecture seule]
Task2 - POU1.ACTION (1) %MB28 [accs en criture]
Ecriture multiple sur la sortie
Cette fonction recherche des zones de mmoire auxquelles on accde en criture partir de
plusieurs endroits au sein dun projet. titre dexemple, l'affichage ressemble ceci :
%QB24 est accd en criture aux emplacements suivants :
PLC_PRG (3): %QB24
PLC_PRG.POU1 (8): %QB24
Niveaux d'accs
Le systme CoDeSys permet de configurer jusqu' huit niveaux d'accs pour les modules, types de
donnes, visualisations et ressources. Les droits d'accs peuvent tre accords pour la totalit des
objets ou pour certains d'entre eux. A chaque fois qu'un projet est ouvert, cette ouverture se fait avec
un niveau d'accs dtermin. Ce niveau d'accs est protg par un mot de passe.
Les niveaux d'accs sont numrots de 0 7, le niveau 0 dtenant les droits de l'administrateur, c.-d. ceux de dfinir les mots de passe et les droits d'accs pour tous les niveaux ou objets.
Lors de la cration d'un nouveau projet, aucun mot de passe n'est dfini. Tant qu'aucun mot de passe
n'a t dfini pour le niveau 0, l'utilisateur entrant dans le projet est automatiquement considr
comme utilisateur appartenant au niveau 0.
Lorsqu'un mot de passe est dfini pour le niveau 0 au moment du chargement du projet, tous les
niveaux doivent introduire un mot de passe pour ouvrir le projet concern. Pour cela, la bote de
dialogue suivante s'affiche:
Bote de dialogue Mot de passe pour niveau d'accs
Indiquez le niveau auquel vous appartenez dans la zone de liste modifiable Niveau d'accs situe
dans la partie gauche de la bote de dialogue, et tapez le Mot de passe correspondant dans la partie
droite de la fentre. Cliquez sur OK. Lorsque le mot de passe ne concorde pas avec celui mmoris,
le message suivant s'affiche:
Le mot de passe est incorrect."
4-48
CoDeSys V2.3
La commande 'Mots de passe pour niveau d'accs' vous permet dattribuer des mots de passe et la
commande 'Objet' 'Droits d'accs' attribue les droits pour les objets individuels ou pour la totalit
dentre eux.
'Projet' 'Mot de passe pour niveau d'accs'
Cette commande permet d'ouvrir la bote de dialogue Changer mot de passe pour niveau d'accs. Il
n'est accessible qu'aux membres du niveau 0. Cette commande donne accs la bote de dialogue
suivante:
Bote de dialogue Changer mot de passe pour niveau d'accs
Vous pouvez slectionner le niveau dans la zone de liste modifiable Niveau d'accs situe dans la
partie gauche de la fentre. Tapez le mot de passe correspondant au niveau choisi dans la zone Mot
de passe. Une toile (*) apparat chaque fois que vous saisissez une lettre. Confirmez-le en le
tapant nouveau dans la zone Confirmer mot de passe. Fermez ensuite la bote de dialogue en
cliquant sur OK. Si le message
Le mot de passe et la confirmation ne concordent pas."
apparat, vous avez fait une faute de frappe au cours d'une des entres. C'est pourquoi il est
prfrable de rpter les deux saisies jusqu' ce que la bote de dialogue se ferme sans qu'un
message n'apparaisse.
Vous pouvez ensuite ventuellement saisir un mot de passe pour le niveau infrieur en appelant
nouveau la commande.
Il est possible d'attribuer des droits pour les objets individuels ou tous les objets l'aide de 'Objet'
'Droits d'accs'
Attention : Si des mots de passe ne sont pas attribus tous les groupes de travail, un projet peut tre ouvert
par un groupe de travail auquel aucun mot de passe na t attribu.
La commande 'Mots de passe pour niveau d'accs' vous permet dattribuer des mots de passe et la
commande 'Objet' 'Droits d'accs' attribue les droits pour les objets individuels ou pour la totalit
dentre eux.
'Projet' Contrle de projets'
Cet lment de menu est disponible lorsque loption 'Utiliser la base de donnes du projet (ENI)' des
options du projet, catgorie Base de donnes du projet est active. Elle mne un sous-menu avec
les commandes pour la gestion de lobjet ou du projet dans la base de donnes en cours dutilisation
relie via l'interface ENI.
Login (ouverture de session de lutilisateur auprs du serveur ENI)
Lorsquun objet est marqu dans lOrganisateur dobjets et que la commande 'Contrle de ressources'
est slectionne du menu contextuel (bouton droit de la souris), les fonctions correspondantes de la
base de donnes peuvent tre appeles pour cet objet par le biais des commandes prsentes. Au
cas o aucune ouverture de session na t faite pour lutilisateur auprs de ENI via la bote de
dialogue Ouverture de session-Base de donnes, cette dernire souvre tout dabord et la
commande nest excute quaprs authentification de l'utilisateur.
Dinir
Dernire version
CoDeSys V2.3
4-49
Gestion de projets
Check out
Check in
Annuler check out
Afficher les diffrences
Afficher l'histoire de la version
Si la commande 'Contrle de projets' a t slectionne dans le Menu 'Projet', dautres options de
menu saffichent, relatives tous les objets du projet :
Dfinition multiple
Dernires versions
Check out multiple
Check in multiple
Annuler le check-out multiple
Historique de la version du projet
Attribuer un nom la version
Insrer les objets commun
Actualiser le statut
Prsentation des tats des objets relatifs la gestion dans la base de donnes du projet dans lOrganisateur dobjets :
4-50
CoDeSys V2.3
Dfinir
Commande : 'Projet' Contrle de projets' 'Dfinir'
Nous allons dterminer si lobjet marqu dans lOrganisateur dobjets doit tre gr dans la base de
donnes ou uniquement localement (au sein du projet). cet effet, une bote de dialogue souvre
dans laquelle vous pouvez choisir entre les deux catgories de base de donnes 'Projet' ou 'Objets
communs', ou la catgorie 'Local'. Voir galement cet effet Catgories au sein de la base de
donnes du projet.
Les icnes de tous les objets qui sont grs dans la base de donnes apparaissent ombrs en gris
dans lOrganisateur dobjets.
Dernire version
Commande : 'Projet' Contrle de projets' 'Dernire version'
La version actuelle de lobjet marqu dans lOrganisateur dobjets est extraite de la base de donnes
et remplace la version locale. Contrairement au check-out - voir ci-dessous -, lobjet dans la base de
donnes nest pas bloqu au traitement par dautres utilisateurs.
Check out
Commande : 'Projet' Contrle de projets' 'Check out'
Lobjet marqu dans lOrganisateur dobjets subit un check-out hors de la base de donnes et est
alors bloqu au traitement par dautres utilisateurs.
A lappel de cette commande, la bote de dialogue 'Extraire objet' souvre. Vous pouvez introduire un
commentaire qui sera enregistr dans lhistorique de lobjet dans la base de donnes en mme temps
que la procdure de check-out. Les retours la ligne sont introduits par <Ctrl>+<Entre>.
Aprs avoir confirm la bote de dialogue avec OK, lobjet ayant subi un check-out dans
lOrganisateur dobjets est caractris par la prsence dun crochet devant le nom du module, il
apparat pour les autres utilisateurs marqu dune croix rouge et ne peut donc pas tre trait par ces
autres utilisateurs.
Check in
Commande : 'Projet' Contrle de projets' 'Check in'
Lobjet marqu dans lOrganisateur dobjets subit un check-in dans la base de donnes. Une nouvelle
version de lobjet est ainsi cre dans la base de donnes. Les anciennes versions sont conserves.
A lappel de cette commande, la bote de dialogue 'Archiver lobjet' souvre. Vous pouvez introduire un
commentaire qui sera enregistr dans lhistorique de lobjet dans la base de donnes en mme temps
que la procdure de check-in. Les retours la ligne sont introduits par <Ctrl>+<Entre>. Si la version
de lobjet mmorise dans la base de donnes se distingue de la version utilise dans le projet local,
un message correspondant est affich et lutilisateur peut dcider sil veut effectuer ou non le checkout de lobjet.
Aprs la confirmation de la bote de dialogue avec OK, le crochet vert devant le nom du module
disparat de lOrganisateur dobjets.
Annuler check out
Commande : 'Projet' Contrle de projets' 'Annuler check out'
Le check-out de lobjet marqu dans lOrganisateur dobjets et les changements effectus localement
au sein de cet objet sont annuls. Aucune bote de dialogue napparat. Lobjet demeure inchang et
est nouveau libr pour les autres utilisateurs dans la base de donnes. La croix rouge devant le
nom du module dans lOrganisateur dobjets disparat.
CoDeSys V2.3
4-51
Gestion de projets
Version : Numrotation des versions de lobjet ayant subi un check-in, par ordre chronologique et en
fonction de la base de donnes. Les versions tiquetes ne reoivent pas de numro de version, mais
sont caractrises par une icne dtiquette.
Utilisateur : nom de lutilisateur qui a effectu laction sur lobjet
Date : date et heure de laction
Action : type daction qui a t effectue sur lobjet. Dpendant de la base de donnes, par exemple
'cr' (lobjet a subi un premier check-in dans la base de donnes), 'check-in' ou tiquet avec
<label>' (cette version de lobjet a t pourvue dun identificateur)
Les boutons :
Fermer : la bote de dialogue se referme
Afficher : la version marque dans le tableau est ouverte dans une fentre dans CoDeSys. Vous
pouvez lire dans la barre de titre : ENI: <Nom du projet dans la base de donnes>/<Nom d'objet>
Dtails : La bote de dialogue 'Dtails de l'historique de la version' souvre :
Fichier, Nom (rpertoire du projet et du nom de lobjet dans la base de donnes), Version (voir cidessus), Date (voir ci-dessus), Utilisateur (voir ci-dessus), Commentaire (commentaire introduit
lors du check-in ou de ltiquetage). Les boutons Prochain ou Prcdent permettent de sauter
aux dtails de lentre prcdente ou suivante dans le dialogue 'Historique de la version...'.
Dernire version : La version marque dans le tableau est charge de la base de donnes de
CoDeSys et remplace la version locale.
4-52
CoDeSys V2.3
Afficher les diffrences : Si une seule version de lobjet est marque dans le tableau, la
commande a pour effet de comparer cette version avec la version actuelle de la base de donnes.
Si deux versions sont marques, celles-ci sont compares. Les diffrences sont reprsentes
dans une fentre scinde en deux parties comme avec la comparaison de projets.
Remettre zro la version : la version marque dans le tableau est tablie comme version
actuelle de la base de donnes. Les versions introduites ultrieurement sont effaces ! Ceci peut
tre utilis pour rtablir une version antcdente et ltablir comme version actuelle.
Seulement des noms : Si cette option est active, seules les versions pourvues dune tiquette
apparaissent la slection dans le tableau.
Bote de slection sous loption 'Seulement des noms' : Les noms de tous les utilisateurs ayant
dj effectu des actions de base de donnes sur les objets du projet sont repris ici. Slectionnez
'Tous' ou un seul des noms afin de visualiser lhistorique de version des objets traits soit par tous
les utilisateurs soit par un utilisateur particulier.
Dfinition multiple
Commande : 'Projet' Contrle de projets' 'Dfinition multiple'
laide de cette commande, vous pouvez dterminer, pour plusieurs objets du projet en cours
dutilisation en mme temps, dans quelle catgorie de base de donnes ils seront grs. La mme
fentre de dialogue 'Proprits de l'objet' que pour la commande 'Dfinir' apparat tout dabord.
Choisissez-y la catgorie souhaite et fermez cette bote de dialogue avec OK. Suite quoi la bote
de dialogue 'Slection ENI' souvre, numrant les modules du projet pertinents pour la catgorie
concerne (par exemple, si vous avez choisi la catgorie 'Ressources', les modules ressources du
projet seront proposs la slection). La reprsentation correspond larborescence utilise pour
lOrganisateur dobjets. Marquez les modules souhaits et confirmez avec OK.
Dernires versions
Commande : 'Projet' Contrle de projets' 'Dernires versions'
Pour le projet ouvert, la version actuelle de tous les objets de la catgorie projet sont prises de la
base de donnes. Si des objets ont t ajouts dans la base de donnes, ceux-ci seront galement
introduits localement, et si des objets ont t effacs de la base de donnes, ceux-ci ne seront pas
effacs localement, mais bien classs automatiquement dans la catgorie 'Local'. Pour les objets
provenant de la catgorie Ressources, ne sont prises (appeles) de la base de donnes que les
objets qui sont dj crs dans le projet local. Pour la signification de lappel, reportez-vous la
commande 'Dernire version'
Check out multiple
Commande : 'Projet' Contrle de projets' 'Check out multiple'
Plusieurs objets peuvent en mme temps faire lobjet dun check-out. cet effet, la bote de dialogue
'Slection ENI' souvre, numrant les modules du projet comme dans larborescence de
lOrganisateur dobjets. Marquez les modules qui doivent faire lobjet dun check-out, et confirmez
avec OK. Pour la signification du check-out, reportez-vous la commande 'Check out'.
Check in multiple
Commande : 'Projet' Contrle de projets' 'Check in multiple'
Plusieurs objets peuvent en mme temps faire lobjet dun check-in. La procdure est la mme que
pour le check-out multiple. Pour la signification du check-in, reportez-vous la commande 'Check in'.
Annuler le check-out multiple
Commande : 'Projet' Contrle de projets' 'Annuler le check-out multiple'
Vous pouvez annuler le Check-out pour plusieurs objets en mme temps. La slection seffectue
comme pour le 'Check-out multiple' ou le 'Check in multiple'.
CoDeSys V2.3
4-53
Gestion de projets
4-54
CoDeSys V2.3
CoDeSys V2.3
4-55
Dialogue 'Login'
4-56
CoDeSys V2.3
Remarque : Les dossiers n'exercent aucune influence sur le programme. Ils servent simplement donner un
aperu structur de votre projet.
Exemple de dossiers dans l'Organisateur d'objets
'Nouveau dossier'
Cette commande permet d'insrer un nouveau dossier en tant qu'objet de rangement. Si un dossier
est slectionn, le nouveau dossier est cr en dessous du dossier slectionn, sinon il est plac au
mme niveau ce dernier. Si une action est slectionne, le nouveau dossier est cre au niveau du
module auquel laction appartient.
Pour afficher le menu contextuel de l'Organisateur d'objets qui propose cette commande, il faut
slectionner l'objet ou le type d'objet et appuyer sur le bouton droit de la souris ou effectuer la
combinaison de touches <Majuscule>+<F10>.
Le dossier qui vient dtre introduit obtient le nom 'Nouveau dossier'. Veuillez respecter les
conventions suivantes en matire de noms de dossiers :
Les dossiers se trouvant sur le mme niveau hirarchique doivent porter des noms diffrents. Les
dossiers se trouvant des niveaux diffrents peuvent porter le mme nom.
Un dossier ne peut avoir le mme nom quun objet qui se trouve au mme niveau.
Sil y a dj un dossier avec le nom 'Nouveau dossier' sur le mme niveau, tout dossier obtenant le
mme nom se voit attribuer en plus un numro courant (par exemple Nouveau dossier 1"). Il est
impossible de renommer un dossier daprs un nom dj existant.
'Dvelopper' 'Rduire'
La commande 'Dvelopper' permet de faire apparatre les objets placs sous l'objet slectionn,
tandis que le commande 'Rduire' permet de les faire disparatre.
Vous pouvez faire apparatre ou disparatre des dossiers en double-cliquant dessus ou en appuyant
sur la touche <Entre>.
Pour afficher le menu contextuel de l'Organisateur d'objets qui propose cette commande, il faut
slectionner l'objet ou le type d'objet et appuyer sur le bouton droit de la souris ou effectuer la
combinaison de touches <Majuscule>+<F10>.
'Projet' 'Objet' 'Supprimer un objet'
Raccourci : <Suppr>
Cette commande enlve de l'Organisateur d'objets l'objet actuellement marqu (un module, un type
de donnes, une visualisation ou des variables globales) ou un dossier et son contenu. Cet objet ou
ce dossier sont alors supprims du projet. Avant la suppression effective, il vous est demand de
confirmer votre choix. L'effacement peut tre annul au moyen de la commande 'diter' 'Annuler'.
Si la fentre de l'diteur de l'objet est ouverte, elle se ferme automatiquement.
CoDeSys V2.3
4-57
Si l'on utilise la commande 'Editer' 'Couper', pour supprimer l'objet, alors celui-ci est en outre transfr
dans le presse-papiers.
'Projet' 'Objet' 'Insrer objet'
Raccourci : <Inser>
Cette commande vous permet de crer un nouvel objet. Le type d'objet (module, type de donnes,
visualisation ou variables globales) dpend de l'onglet choisi dans l'Organisateur d'objets. Veuillez
noter cet gard que l'on utilise un modle dfini le cas chant pour le type d'objet slectionn. Ceci
est possible pour des objets de type 'Variables globales', 'Type de fichier', 'Fonction', 'Bloc fonctionnel'
ou 'Programme', voir ci-dessous, chapitre 'Enregistrer comme modle'.
Entrez le nom du nouvel objet dans la bote de dialogue qui s'affiche.
Veuillez noter cet effet les restrictions suivantes :
Le nom du module ne peut contenir d'espaces.
Un module ne peut avoir le mme nom qu'un autre module ou qu'un type de donne.
Un type de donne ne peut avoir le mme nom qu'un autre type de donne ou qu'un module.
Une liste de variables globales ne peut avoir le mme nom qu'une autre liste de variables globales.
Une action ne peut avoir le mme nom qu'une autre action au sein du mme module.
Une visualisation ne peut avoir le mme nom qu'une autre visualisation.
Dans tous les autres cas, une concordance de nom est permise. Ainsi, des actions provenant de
diffrents modules peuvent avoir le mme nom, et une visualisation peut avoir le mme nom qu'un
module.
S'il s'agit d'un module, vous devez galement indiquer le type de module dont il s'agit (programme,
fonction ou bloc fonctionnel) et slectionner le langage dans lequel il doit tre programm. Le Type
de l'unit est par dfaut 'Programme', le Langage de l'unit de programmation est celui du dernier
module cr. Si un module du type Fonction doit tre cr, le type de la valeur renvoye doit tre
introduit dans le champ Type de retour. cet effet, tous les types lmentaires de donnes ou les
types dfinis (tableaux, structures, numrations, alias) sont autoriss. Vous pouvez utiliser la liste de
slection pour l'dition (p.ex. via <F2>).
Bote de dialogue Nouveau module
Aprs confirmation de la saisie via le bouton OK, ce qui n'est possible que si vous avez respect les
conventions de noms dcrites ci-dessus, le nouvel objet est introduit dans l'Organisateur d'objets et la
fentre de saisie correspondante est affiche.
Si vous utilisez la commande 'Editer' 'Coller', l'objet plac dans le presse-papiers est insr, sans
qu'aucune bote de dialogue ne s'ouvre. Si le nom de l'objet insr va l'encontre des conventions de
nom, l'objet sera accompagn d'un caractre de soulignement et d'un numro courant de manire le
distinguer (p.ex. "Fonction_1").
4-58
CoDeSys V2.3
Si le projet est reli avec une base de donnes de projet par le biais d'un interface ENI, cette
connexion peut tre configure de telle sorte que l'on vous demande, lors de la cration d'un nouvel
objet, dans quelle catgorie de base de donnes cet objet doit tre gr. Dans ce cas, vous obtenez
la bote de dialogue 'Caractristiques des objets' permettant de slectionner la catgorie de base de
donnes. Reportez-vous cet effet la description des Options de projet pour les bases de donnes
de projet.
'Projet' 'Enregistrer comme fichier modle'
Les objets de type 'Variables globales', 'Type de fichier', 'Fonction', 'Bloc fonctionnel' ou 'Programme'
peuvent tre sauvegards comme modles de modules. Marquez pour ce faire l'objet dans
l'Organisateur d'objets puis slectionnez la commande 'Enregistrer comme fichier modle' dans le
menu contextuel (bouton droit de la souris). Ensuite, lors de l'Insertion d'un autre objet du mme type,
la partie de dclaration du modle sera reprise en premier. On utilise toujours le modle cr en
dernier pour un type d'objet.
'Projet' 'Objet' 'Renommer objet'
Raccourci : <Barre d'espacement>
Cette commande vous permet de renommer l'objet ou le dossier slectionn. Veillez ne pas utiliser
un nom existant.
Si la fentre de l'diteur de l'objet est ouverte, le nouveau nom apparat automatiquement dans la
barre de titre.
Bote de dialogue Renommer objet
CoDeSys V2.3
4-59
En revanche, si vous utilisez la commande 'Editer' 'Copier', l'objet est copi dans le presse-papiers
sans qu'aucune bote de dialogue ne s'ouvre.
Bote de dialogue Copier objet
Cette commande vous permet de charger, dans l'diteur pertinent, un objet slectionn dans
l'Organisateur d'objets. Si cet objet est dj ouvert dans une autre fentre, celle-ci passe l'avantplan et l'objet peut tre dit.
Un objet peut tre dit de deux autres manires:
soit en double-cliquant dessus, soit
en tapant les premires lettres du nom de l'objet souhait dans l'Organisateur d'objets. Aprs quoi,
une boite de dialogue s'ouvre et affiche tous les objets du type slectionn qui commencent par
les trois premires lettres introduites dans l'Organisateur d'objets. Slectionnez l'objet souhait et
cliquez sur le bouton Ouvrir pour charger l'objet dans la fentre de l'diteur pertinente. Pour le type
d'objet Ressources, cette possibilit n'est supporte que pour les variables globales.
Cette dernire possibilit est particulirement intressante pour des projets comportant de nombreux
objets.
Bote de dialogue pour slectionner l'objet ouvrir
4-60
CoDeSys V2.3
dans celui-ci sont slectionns (voir chapitre 6.2.1, Ressources, Variables globales) dans
lOrganisateur d'objets.
Objet de visualisation:
Dans longlet 'Visualisation', il est possible de dterminer comment lobjet de visualisation doit tre
utilis (voir le manuel CoDeSys Visualisation) :
Utiliser comme: Si 'Visualisation sur le web' ou 'Visualisation sur la cible' est activ dans les
rglages du systme cible, loption correspondante saffichera ici. Dsactivez loption si lobjet
ne doit pas tre disponible dans la Visualisation sur le web et/ou la Visualisation sur la cible
(voir manuel CoDeSys Visualisation).
Dialogue Proprits dun objet de visualisation
Utilis comme: Slectionnez un des rglages suivants li la possibilit de travailler avec les
mises en page matre :
Visualisation: Lobjet est utilis comme visualisation normale.
Visualisation sans mise en page matre: Si une mise en page matre est dfinie dans le
projet, celle-ci ne sapplique pas cet objet de visualisation. De faon standard, la mise en
page matre est toujours pose dans lavant-plan dune visualisation, sauf si loption dans
arrire plan est active.
Mise en page matre: Lobjet est utilis comme mise en page matre.
Liaison au contrle de ressources:
Si le projet est li une base de donnes ENI (voir 'Projet' 'Options' 'Base de donnes du projet'), un onglet
supplmentaire intitul 'Liaison au contrle de ressources' est disponible pour chaque objet. Lattribution
actuelle de lobjet une des catgories de bases de donnes ou la catgorie 'Local' est affiche et vous
pouvez la modifier. Vous trouverez dautres informations ce sujet dans le chapitre 7, 'ENI'.
Objet droits d'accs
Le commande 'Projet' 'Objet' 'Proprits' permet d'ouvrir la bote de dialogue d'attribution des droits
d'accs aux divers niveaux d'accs: Pour cela, la bote de dialogue suivante s'affiche:
CoDeSys V2.3
4-61
Les membres du niveau 0 peuvent attribuer des droits d'accs individuels tous les niveaux d'accs.
Ces droits d'accs peuvent prendre trois formes:
Pas d'accs: l'objet est inaccessible au niveau d'accs concern.
Lecture seule: l'objet peut tre ouvert en lecture seule par les membres du niveau d'accs; il ne
peut donc pas tre modifi.
Accs complet: l'objet peut tre ouvert et modifi par les membres du niveau d'accs.
Ces configurations s'appliquent soit l'objet marqu actuellement dans l'Organisateur d'objets, soit
la totalit des modules, types de donnes, visualisations et ressources du projet. Dans ce dernier cas,
vous devez cocher l'option Etendre tous les objets.
L'affectation un niveau d'accs se fait au moment de l'ouverture du projet par l'intermdiaire d'un
mot de passe, dans la mesure o un mot de passe a t attribu par le niveau d'accs 0.
Notez galement ce propos la possibilit supplmentaire dattribution de droits daccs relatifs aux
groupes de travail et se rapportant lutilisation des lments de visualisation (voir sous
Visualisation).
'Projet' 'Ajouter une action'
Cette commande permet de gnrer une action pour le module slectionn dans l'Organisateur
d'objets. Dans la bote de dialogue qui s'affiche, vous pouvez slectionner le nom de l'action et le
langage dans lequel celle-ci doit tre implmente.
La nouvelle action est attache sous son propre module dans l'Organisateur d'objets. Un signe plus
apparat devant le module. Il vous suffit de cliquer sur ce signe pour faire apparatre les objets de
l'action. Un signe moins apparat alors devant le module. En cliquant sur ce signe moins vous
masquez les actions et le signe plus apparat nouveau. Vous pouvez obtenir le mme rsultat au
moyen des commandes du menu contextuel 'Dvelopper' et 'Rduire'.
En double-cliquant sur l'action ou en appuyant sur la touche <Entre> vous pouvez charger une
action dans l'diteur en vue de l'diter.
'Projet' 'Ouvrir l'instance'
Cette commande permet d'ouvrir et d'afficher des instances individuelles de blocs fonctionnels en
mode En ligne. Avant de procder l'ouverture de ces instances, vous devez slectionner le bloc
fonctionnel concern dans l'Organisateur d'objets. Vous pouvez ensuite slectionner l'instance
souhaite du bloc fonctionnel ainsi que limplmentation dans la bote de dialogue qui s'ouvre. Suite
quoi les lments souhaits saffichent dans une fentre.
Remarque : Les instances ne peuvent tre ouvertes qu'aprs l'accs au systme! (Le projet a t correctement
compil et transfr dans l'automate programmable l'aide de le commande 'En ligne' 'Accder au
systme').
4-62
CoDeSys V2.3
CoDeSys V2.3
4-63
Lorsque vous marquez une ligne dans la liste des rfrences croises et que vous cliquez sur le
bouton Atteindre ou lorsque vous double-cliquez sur la ligne concerne, le module s'affiche dans
l'diteur l'endroit pertinent. Cela vous permet de passer d'un endroit d'utilisation l'autre sans vous
perdre dans des recherches inutiles.
Un moyen de faciliter vos manipulations consiste placer la liste des rfrences croises actuelle
dans la fentre de messages l'aide du bouton Dans la fentre de messages de la bote de
dialogue et de passer au module correspondant partir de la fentre de messages.
'Projet' 'Afficher diagramme d'appel'
Cette commande permet d'ouvrir une fentre qui reprsente le diagramme d'appel d'un objet
slectionn dans l'Organisateur d'objets. Pour cela, le projet doit avoir t compil sans erreurs. Le
diagramme d'appel contient aussi bien des appels de modules que des rfrences aux types de
donnes utilises.
Exemple de diagramme d'appel
4-64
CoDeSys V2.3
'Editer' 'Refaire'
Raccourci : <Ctrl>+<Y>
Cette commande permet de rtablir une action annule ('Editer' 'Annuler') dans la fentre de l'diteur
actuelle ou dans l'Organisateur d'objets. Vous pouvez excuter autant de fois la commande 'Refaire'
que vous avez excut la commande 'Annuler'.
Remarque : Les commandes 'Annuler' et 'Refaire' concernent toujours la fentre actuelle. Chaque fentre
dispose de sa propre liste d'oprations. Lorsque vous voulez annuler des oprations effectues dans
plusieurs fentres, vous devez activer la fentre pertinente. Pour effectuer ces commandes dans
l'Organisateur d'objets, celui-ci doit tre au premier plan.
'Editer' 'Couper'
Icne :
Raccourci : <Ctrl>+<X> ou <Maj>+<Suppr>
Cette commande transfre la slection actuelle de l'diteur vers le presse-papiers. L'lment
slectionn est effac de l'diteur.
Les objets marqus dans l'Organisateur d'objets n'chappent pas cette rgle, la diffrence que
certains types d'objets ne peuvent pas tre supprims, p. ex. la configuration de l'automate.
Ne perdez pas de vue que les diteurs ne supportent pas tous la commande Couper, et que la
fonctionnalit de cette commande peut tre limite dans certains diteurs.
La forme de la slection dpend de l'diteur concern:
Dans les diteurs de texte (IL, ST, dclarations), la slection prend la forme d'une liste de caractres.
Dans les diteurs FBD et LD, la slection prend la forme d'un ensemble de rseaux, chacun d'eux
tant marqu par un rectangle en pointills dans les champs numriques, ou d'une zone comportant
toutes les lignes, zones et oprandes qui la prcdent.
Dans l'diteur SFC, la slection est une partie de la srie d'tapes, entoure d'un rectangle en
pointills.
Pour insrer le contenu du presse-papiers, utilisez la commande 'Editer' 'Coller'. Dans l'diteur SFC,
vous pouvez galement utiliser les commandes 'Extras' 'Insrer squence parallle (droite)' ou
'Extras' 'Insrer derrire'.
Pour insrer une slection dans le presse-papiers sans l'effacer, utilisez la commande 'Editer' 'Copier'.
Pour effacer une zone marque sans modifier le contenu du presse-papiers, utilisez la commande
'Editer' 'Supprimer'.
'Editer' 'Copier'
Icne :
Raccourci : <Ctrl>+<C>
CoDeSys V2.3
4-65
'Editer' 'Coller'
Icne :
Raccourci : <Ctrl>+<V>
Cette commande vous permet de rechercher un texte spcifique dans la fentre de l'diteur actuelle.
Elle ouvre la bote de dialogue Rechercher. Celle-ci reste ouverte jusqu' ce que vous cliquiez sur le
bouton Annuler.
Vous pouvez saisir le chane de caractres recherche dans le champ Rechercher.
4-66
CoDeSys V2.3
En outre, vous pouvez effectuer la recherche sur un Mot entier ou sur une partie de mot, vous
pouvez cibler la recherche en fonction de la casse (option Respecter la casse) et dfinir le sens de la
recherche (vers le haut ou vers le bas). Veuillez noter que dans le cas des modules FBD, le
traitement seffectue de droite gauche !
Le bouton Nouvelle recherche lance la recherche. Celle-ci commence l'endroit que vous avez
choisi et elle est effectue dans le sens que vous avez spcifi. Lorsque le texte recherch est trouv,
il apparat marqu. Dans le cas contraire, un message vous le signale. Des recherches successives
peuvent tre effectues jusqu' ce que le dbut ou la fin de la fentre de l'diteur est atteint.
Ne perdez pas de vue que le texte trouv peut tre masqu par la bote de dialogue Rechercher.
Bote de dialogue Rechercher
Raccourci : <F3>
Cette commande vous permet d'effectuer une recherche selon les mmes paramtres que ceux de la
commande 'Editer' 'Rechercher'. Veuillez noter que dans le cas des modules FBD, le traitement
seffectue de droite gauche !
'Editer' 'Remplacer'
Cette commande vous permet de rechercher un texte spcifique, exactement comme la commande
'Editer' 'Rechercher', et de le remplacer par un autre. Aprs avoir choisi cet ordre, la bote de dialogue
Rechercher et remplacer s'ouvre; elle reste ouverte tant que vous ne cliquez pas sur le bouton
Annuler ou Fermer.
Le bouton Remplacer remplace la slection actuelle par le texte saisi dans le champ Remplacer par
de la bote de dialogue.
Le bouton Remplacer tout substitue toutes les occurrences du texte saisi dans le champ
Rechercher, partir de la position actuelle, par le texte saisi dans le champ Remplacer par. Aprs
cette opration, un message vous indique le nombre de substitutions opres.
Bote de dialogue Rechercher et Remplacer
CoDeSys V2.3
4-67
Les catgories proposes dpendent de la position actuelle du curseur dans la fentre de l'diteur; en
d'autres termes, elles dpendent des entres qu'il est possible d'effectuer cet endroit (p. ex.
variables, oprateurs, modules, conversions, etc.).
Si loption Avec des arguments est active, les arguments passer sont indiqus lors de linsertion
de llment slectionn. Exemples : Slection du bloc fonctionnel fu1, qui a dfini la variable dentre
var_in: fu1(var_in:=);
Insertion de la fonction func1, qui ncessite les paramtres var1 et var2 : func1(var1,var2);
En principe, il est possible dalterner entre une reprsentation structure ou non des lments
disposition. Ceci se produit en activant ou en dsactivant loption Image structur.
Veuillez noter : Lors de lintroduction de variables, vous avez en outre la possibilit dutiliser la fonction
'Intellisense' comme aide.
Les modules, variables ou types de fichiers de chaque catgorie sont tout simplement classs par
ordre alphabtique et de faon linaire.
Pour certaines positions (p. ex. dans la liste d'espion), il peut arriver que des noms composs de
variables soient ncessaires. La bote de dialogue Liste de slection pour l'dition affiche alors une
liste de tous les modules, et les variables globales sont reprsentes par un point. Le nom de chaque
module est suivi d'un point. Si vous marquez un module par un double-clic ou en appuyant sur la
touche <Entre>, vous ouvrez la liste des variables sy rapportant. Si des instances et types de
donnes sont disponibles, ils peuvent tre affichs. Pour prendre en compte la variable slectionne
en fin de compte, cliquez sur OK.
Image structure
Si Image structure est slectionn, les modules, variables ou types de donnes sont classs de
manire hirarchique. Ceci est possibles pour Programmes standard, Fonctions standard, Blocs
fonctionnels standard, Programmes dfinis, Fonctions dfinies, Blocs fonctionnels dfinis, Variables
globales, Variables locales, Types dfinis, Types, Variables despion. L'apparence et la hirarchie
correspondent celles de lOrganisateur dobjets, et si des lments provenant de bibliothques sont
concerns, ceux-ci sont insrs la position suprieure et par ordre alphabtique, et la hirarchie est
reprsente comme dans le gestionnaire de bibliothques.
Les variables dentre et de sortie des blocs fonctionnels, dclares comme variables locales ou
globales, sont affiches dans la catgorie 'Variables locales' ou 'Variables globales' en dessous du
nom de linstance (p.ex. Inst_TP.ET, Inst_TP.IN, ...). On y accde en slectionnant le nom de
linstance (p.ex. Inst_TP) et en confirmant avec OK.
4-68
CoDeSys V2.3
Si linstance dun bloc fonctionnel est marque, loption Avec des arguments peut tre slectionne.
Le nom de linstance et les paramtres d'entre du bloc fonctionnel seront alors insrs pour les
langages littraux IL et ST ainsi que dans la configuration des tches.
Par exemple, pour la slection Inst (Dclaration Inst: TON;),
Inst(IN:= ,PT:=) est insr.
Si loption nest pas slectionne, le nom dinstance est seul insr. Avec les langages graphiques ou
encore dans la fentre despion, seul le nom dinstance est gnralement insr.
Les composants de structures sont reprsents de la mme faon que les instances de blocs
fonctionnels.
Pour les numrations, les valeurs individuelles dnumration sont reprises sous le type
dnumration. Lordre est : numrations provenant de bibliothques, numrations provenant de
types de donnes, numrations locales provenant de modules.
En rgle gnrale, les lignes qui contiennent des sous-objets ne peuvent tre slectionnes (
lexception des instances, voir ci-dessus), mais peuvent tre masques ou affiches de la mme
faon que les noms composs de variables.
Si vous appelez la liste de slection pour ldition dans le gestionnaire despion et de recettes ou lors
du choix des variables dhistogramme dans la bote de dialogue de configuration de lhistogramme,
vous pouvez procder un choix multiple. En maintenant la touche <Maj> enfonce, vous pouvez
slectionner un bloc de variables; la touche <Ctrl> permet de slectionner plusieurs variables
sparment. Les variables slectionnes sont marques. Si, lors du marquage du bloc, vous
slectionnez des lignes ne contenant pas de variables valables (p.ex. des noms de modules), cellesci ne seront pas reprises dans la slection. Il nest pas possible de marquer de telles lignes lors dune
slection individuelle.
Dans la fentre despion ou dans la configuration de lhistogramme, vous pouvez reprendre des
structures, tableaux ou instances hors de la liste de slection pour ldition. Vu que laffichage ou le
masquage des lments est dfini par un double-clic de la souris, la slection ne peut seffectuer
dans ces cas que par OK.
Suite quoi les variables slectionnes sont introduites ligne par ligne dans la fentre despion,
chaque variable slectionne tant donc crite dans une ligne. Pour les variables de lhistogramme,
chacune dentre elle est introduite dans une ligne dans la liste des variables de lhistogramme.
Si vous dpassez le nombre maximum de 20 variables dhistogramme lors de lintroduction des
variables slectionnes, le message derreur suivant apparat : "Vous ne pouvez introduire plus de 20
variables". Toute variable slectionne au-del de ces vingt n'est pas reprise dans la liste.
Remarque: Pour certaines entres (p. ex. les variables globales), la mise jour est effectue aprs une
compilation.
CoDeSys V2.3
4-69
Cette commande vous permet d'obtenir une bote de dialogue pour dclarer des variables ds que
vous entrez une nouvelle variable dans l'diteur de dclaration. Cette bote de dialogue s'ouvre
galement lorsque l'option de projet 'Dclarer automatiquement' active.
'Editer' 'Erreur prochaine'
Raccourci : <F4>
Lorsqu'un projet n'a pas pu tre compil cause de la prsence d'erreurs, cette commande permet
d'afficher la prochaine erreur. La fentre de l'diteur pertinente est active, l'emplacement contenant
l'erreur est marqu et le message d'erreur correspondant est affich simultanment dans la fentre de
messages. Si ces avertissements devaient tre ignors en travaillant pas pas avec F4, loption 'F4
ignore les avertissements' doit tre active dans le menu 'Projet' 'Options' 'Environnement de travail'.
'Editer' 'Erreur prcdente'
Raccourci : <Maj>+<F4>
Lorsqu'un projet n'a pas pu tre compil cause de la prsence d'erreurs, cette commande permet
d'afficher l'erreur prcdente. La fentre de l'diteur pertinente est active, l'emplacement contenant
l'erreur est marqu et le message d'erreur correspondant est affich simultanment dans la fentre de
messages. Si ces avertissements devaient tre ignors en travaillant pas pas avec F4, loption 'F4
ignore les avertissements' doit tre active dans le menu 'Projet' 'Options' 'Environnement de travail'.
'Editer' 'Macros'
Toutes les macros dfinies pour le projet en cours apparaissent sous cette option. (En ce qui
concerne la cration, reportez-vous 'Projet' 'Options' 'Macros' ). Si vous slectionnez une macro et
quelle est excutable, la bote de dialogue 'Excuter la macro' souvre. Le nom de la macro saffiche
ainsi que la ligne de commande en cours. Le bouton Annuler permet dinterrompre lexcution de la
macro, tout en terminant l'excution de la commande en cours. Un message correspondant apparat
dans la fentre des messages et sajoute au journal dans le mode En ligne : '<Macro>: excution
interrompue par lutilisateur'.
Vous pouvez procder l'excution des macros En ligne et Hors ligne. Les commandes se rapportant
au mode concern seront seules excutes.
Raccourci : <Alt>+<F8>
Cette commande tablit la liaison entre le systme de programmation et l'automate programmable (ou
lance le programme de simulation) et bascule en mode En Ligne.
Si le projet actuel n'a pas t compil depuis qu'il a t ouvert ou modifi pour la dernire fois, la
compilation est lance (voir 'Projet' - 'Compiler'). Si la compilation se heurte une erreur, CoDeSys ne
bascule pas en mode En Ligne.
4-70
CoDeSys V2.3
Si le projet en cours a t modifi mais pas ferm depuis le dernier tlchargement sur l'automate, et
si les informations relatives ce dernier tlchargement n'ont pas t effaces par la commande
'Projet' 'Rorganiser tout', une bote de dialogue s'ouvre aprs la commande 'Accder au systme',
vous demandant : "Le programme a t modifi! Voulez-vous charger les modifications ? (Online
Change)". (Voyez ce sujet les remarques relatives aux changements En ligne ci-dessous). Si vous
appuyez sur Oui, vous confirmez que les parties modifies du projet doivent tre charges sur
l'automate lors de l'ouverture de session. Non permet une ouverture de session sans que les
changements effectus depuis le dernier tlchargement soient chargs sur l'automate. Annuler vous
permet d'interrompre la commande. Charger tout permet de charger le projet complet sur l'automate.
Dialogue d'ouverture de session tendu
Lorsque l'option ' Opration en ligne en mode de scurit' a t active dans les options de projet,
catgorie Environnement de travail, et si le systme cible supporte cette fonction, les informations
relatives au projet actuellement charg dans le systme de programmation et du projet dj
disponible sur la commande sont automatiquement reprsentes de faon complmentaire dans la
bote de dialogue Login (informations relatives au projet). Elles peuvent tre fermes via le bouton
Dtails. Si loption dans Environnement de travail nest pas active, ces informations relatives au
projet peuvent tre explicitement ouvertes via le bouton Details.
Veuillez noter que le bouton par dfaut, c'est--dire celui sur lequel l'accent est automatiquement mis, dpend
de la configuration du systme cible.
Si l'accs au systme n'a rencontr aucun problme, toutes les fonctions en ligne sont votre
disposition (dans la mesure o la catgorie Options de compilation de la bote de dialogue 'Options' a
t configure dans ce sens). Pour toutes les dclarations de variables visibles l'cran, les valeurs
actuelles sont espionnes.
Pour basculer du mode en ligne au mode hors ligne, utilisez la commande 'Quitter le systme' du
menu 'En Ligne'.
CoDeSys V2.3
4-71
Un changement En ligne n'est pas possible aprs des modifications au niveau de la configuration
des tches ou de la configuration de l'automate, aprs l'insertion d'une bibliothque ou suite la
commande 'Projet' 'Rorganiser tout' (voir plus bas).
Lorsque les informations de tlchargement (fichier <Nom de projet><Targetidentifier>.ri), cres
lors du dernier chargement du projet, ont t effaces (par exemple par le biais de la commande
'Rorganiser tout'), aucun changement En ligne n'est possible, moins que le fichier *.ri n'ait t
enregistr en un autre emplacement sous un autre nom et qu'il puisse nouveau tre charg par
le biais de la commande 'Charger les informations de tlchargement'. Voyez cet effet le point
'Changement En ligne pour un projet....'.
Lors d'un changement En ligne, il n'est pas procd une nouvelle initialisation, ce qui signifie que
les changements des valeurs d'initialisation ne sont pas pris en compte !
Les variables rmanentes gardent leurs valeurs lors d'un changement En ligne, contrairement un
nouveau tlchargement du projet (voir ci-dessous, 'En ligne' 'Charger').
Changement En ligne pour un projet fonctionnant sur plusieurs automates :
Si vous utilisez un projet proj.pro sur deux automates programmables identiques API1 et API2 (systme cible
identique), et si vous souhaitez, aprs avoir modifi le projet, pouvoir actualiser ce mme projet sur les deux
automates par le biais des fonctions En ligne, veuillez procder comme suit:
tablissez une connexion avec l'automate API1 (En ligne/Paramtres de communication) puis chargez
proj.pro sur API1 (En ligne/Accder au systme, Charger). En parallle au proj.pro, le fichier proj00000001.ri
est alors cre, ce dernier contenant les informations de tlchargement.
Renommez proj00000001.ri , p.ex. en proj00000001_API1.ri. Cette "sauvegarde" sous un fichier d'un autre
nom est ncessaire car lors d'un tlchargement ultrieur de proj.pro, le fichier proj00000001.ri contenant les
nouvelles informations de tlchargement serait cras, ce qui provoquerait la perte des informations
relatives au tlchargement sur API1.
Dmarrez le projet et quittez nouveau le systme.
tablissez maintenant la connexion avec l'automate API2 puis chargez proj.pro sur API2. Ensuite, en
parallle au proj.pro, un fichier proj00000001.ri est nouveau cre, ce dernier contenant les informations du
tlchargement actuel.
Effectuez maintenant dans CoDeSys les modifications de proj.pro que vous souhaitez charger dans le projet
fonctionnant sur l'automate par le biais des Changements En ligne.
Pour pouvoir excuter le changement En ligne proj.pro sur API1, les informations de tlchargement de
proj.pro sauvegardes sur API1 doivent tout d'abord tre rendus nouveau disponibles. Pour ce faire,
CoDeSys recherche le fichier proj00000001.ri lors de l'ouverture de session. Vous avez sauvegard le fichier
.ri valide pour API1 sous proj00000001_API1.ri.
Vous avez alors deux possibilits :
(a) Vous pouvez nouveau renommer le fichier proj00000001_API1.ri en proj00000001.ri. Ainsi, vous tes
assur que lors d'une ouverture de session sur API1, les informations correctes de tlchargement seront
prises
en
compte
automatiquement
et
le
changement
en
ligne
sera
propos.
(b) Vous pouvez galement charger de manire cible le fichier proj00000001_API1.ri par le biais de la
commande 'Projet' 'Charger informations de tlchargement', cela avant mme d'ouvrir une session. Vous
vitez ainsi de devoir renommer le fichier.
Afin de pouvoir galement effectuer le changement en ligne de proj.pro sur API2, veuillez procder comme
dcrit au point 8, avec bien entendu le fichier proj00000001_API2.ri.
Si le systme affiche
Message derreur :
"Le profil de l'automate slectionn ne correspond pas celui du systme cible!
La connexion sera termine."
Vrifiez si le systme cible tel quil a t paramtr dans la configuration du systme cible
(Ressources) concorde avec le paramtrage 'En Ligne' 'Paramtres de communication'.
4-72
CoDeSys V2.3
Message derreur :
"Faute de communication: Logout."
Vrifiez si lautomate fonctionne. Vrifiez si les paramtres configurs dans `En Ligne' `Paramtres de
communication' concordent avec les paramtres de votre automate programmable. Vous devez
vrifier en particulier si le port adquat a t rgl et si les dbits en bauds concordent sur lautomate
et dans le systme de programmation. Si vous utilisez la gateway, vrifiez si le bon canal est rgl.
Message derreur :
"Le programme a t modifi! Voulez-vous charger les modifications ?"
Le projet en cours d'utilisation dans l'diteur ne correspond pas au programme charg actuellement
dans l'automate. Il est par consquent impossible d'effectuer l'espionnage et le dbogage. Vous
pouvez rpondre Non, quitter le systme et ouvrir le projet pertinent, ou rpondre Oui et charger le
projet actuel dans l'automate programmable.
Message :
"Le programme a t modifi! Voulez-vous charger les modifications ? (Online
Change)"
Le projet est en cours dutilisation sur lautomate. Le systme cible supporte les 'Changements En
ligne' et le projet a t modifi par rapport au dernier tlchargement ou par rapport au dernier
Changement En ligne. Vous pouvez dterminer si ces modifications doivent tre charges sur
lautomate, le programme tant en cours, ou si la commande doit tre interrompue. Vous pouvez
galement charger le code compil entier en appuyant sur le bouton Charger tout.
'En Ligne' 'Quitter le systme'
Icne :
Raccourci : <Ctrl>+<F8>
Raccourci : <F5>
Cette commande lance l'excution du programme utilisateur dans l'automate programmable ou dans
la simulation.
Vous pouvez choisir d'excuter cette commande directement aprs l'excution de la commande 'En
ligne' 'Lancer' ou aprs avoir arrt l'excution du programme utilisateur dans l'automate
programmable l'aide de la commande 'En ligne' 'Arrter' ou encore lorsque le programme utilisateur
CoDeSys V2.3
4-73
est un point d'arrt ou lorsque qu'un cycle individuel (commande 'En Ligne' 'Cycle indpendant') a
t excut.
'En Ligne' 'Arrter'
Icne :
Raccourci : <Maj>+<F8>
Cette commande suspend, entre deux cycles, l'excution du programme utilisateur dans l'automate
programmable ou dans la simulation.
Pour relancer le programme utilisateur, utilisez la commande 'En ligne' 'Dmarrer'.
'En Ligne' 'Reset'
Cette commande ramne toutes les variables ( lexception des variables rmanentes (VAR
RETAIN)) la valeur quelles avaient lors de leur initialisation (y compris donc les variables dclares
laide de VAR PERSISTENT! ). Les variables qui ne sont pas explicitement munies dune valeur
dinitialisation, sont ramenes la valeur standard dinitialisation (par exemple, les nombres entiers
sont mis zro). Avant l'crasement de toutes les variables, CoDeSys demande confirmation. Cest la
mme situation que lors dune panne de courant ou lors dune mise en/hors service de lautomate
(dmarrage chaud) durant le fonctionnement du programme.
Pour relancer le programme, utilisez la commande 'En ligne' 'Dmarrer'.
Voir galement cet effet 'En Ligne' 'Reset (origine)' et 'En Ligne' 'Reset ( froid)'.
'En Ligne' 'Reset ( froid)'
Cette commande ramne toutes les variables, y compris les variables rmanentes, la valeur quelles
avaient lors de leur initialisation. Cest la mme situation que lors du dmarrage dun programme qui a
t charg pour la premire fois dans lautomate (dmarrage froid). Voir galement cet effet 'En
Ligne' 'Reset' et 'En Ligne' 'Reset (origine)'.
'En Ligne' 'Reset origine'
Cette commande ramne toutes les variables, y compris les variables rmanentes (VAR RETAIN et
VAR PERSISTENT), la valeur quelles avaient lors de leur initialisation et efface le programme
utilisateur sur lautomate. Lautomate est ramen son tat original. Voir galement cet effet 'En
Ligne' 'Reset' et 'En Ligne' 'Reset ( froid)'.
'En Ligne' 'Point d'arrt actif/inactif'
Icne :
Raccourci : <F9>
Cette commande dfinit un point d'arrt la position actuelle dans la fentre active. Si un point d'arrt
y est dj dfini, il est enlev.
La position o un point d'arrt peut tre dfini dpend du langage dans lequel est crit le module dans
la fentre active.
Dans les diteurs de texte (IL, ST) le point d'arrt est dfini sur la ligne o se trouve le curseur,
lorsque cette ligne est une position de point d'arrt (on peut le dterminer grce la couleur gris fonc
du champ de numrotation de ligne). Pour dfinir ou enlever un point d'arrt dans les diteurs de
texte, vous pouvez cliquer sur le champ de numrotation de ligne.
Dans les diteurs FBD et LD, le point d'arrt est plac sur le rseau actuellement marqu. Pour dfinir
ou enlever un point d'arrt dans ce type d'diteur, vous pouvez cliquer sur le champ de numrotation
de rseau.
Dans l'diteur SFC, le point d'arrt est dfini sur l'tape marque actuellement. Pour dfinir ou enlever
un point d'arrt dans l'diteur SFC, vous avez la possibilit d'utiliser la touche <Maj> associe un
double-clic de la souris.
Lorsqu'un point d'arrt est dfini, le champ de numrotation de ligne, de rseau ou l'tape apparat
dans une couleur de fond bleu clair.
4-74
CoDeSys V2.3
Lorsque le programme atteint un point d'arrt en cours d'excution, il s'arrte et la couleur de fond du
champ correspondant apparat en rouge. Pour poursuivre, utilisez les commandes 'En ligne'
'Dmarrer' ou 'En Ligne' 'Etape individuelle dans' ou 'En Ligne' 'Etape individuelle sur'.
'En Ligne' 'Dialogue des points d'arrt'
Cette commande ouvre une bote de dialogue permettant d'diter les points d'arrt de l'ensemble du
projet. En outre, cette bote de dialogue affiche l'ensemble des points d'arrt actuellement dfinis.
Pour dfinir un point d'arrt, slectionnez un module dans la zone de liste modifiable pertinente de la
bote de dialogue et, dans la zone de liste modifiable Emplacement, choisissez la ligne ou le rseau
o vous souhaitez dfinir un point d'arrt et cliquez sur le bouton Ajouter. Le point d'arrt est intgr
la liste.
Pour supprimer un point d'arrt, slectionnez-le dans la liste et cliquez sur le bouton Effacer.
Le bouton Effacer tout supprime tous les points d'arrt.
Pour vous rendre un endroit de l'diteur o un point d'arrt a t dfini, marquez ce point d'arrt
dans la liste des points d'arrt dfinis et cliquez sur le bouton Atteindre.
Pour dfinir ou enlever des points d'arrt, vous pouvez galement utiliser la commande 'En Ligne'
'Point d'arrt actif/inactif'.
Bote de dialogue pour diter les points d'arrt
Raccourci : <F10>
Cette commande permet d'excuter une tape individuelle. Dans le cas d'un appel de module,
l'excution s'arrte uniquement aprs que l'excution du module est termine. Dans l'diteur SFC,
une action complte est excute.
Lorsque l'instruction actuelle consiste en un appel de fonction ou de bloc fonctionnel, la fonction ou le
bloc fonctionnel sont excuts jusqu'au bout. Pour aller la premire instruction d'une fonction ou
d'un bloc fonctionnel qui a t appel(e), utilisez la commande 'En ligne' 'Etape individuelle dans'.
Lorsque la dernire instruction est atteinte, le programme passe l'instruction suivante du module
partir duquel l'appel a t effectu.
'En Ligne' 'tape individuelle dans'
Raccourci : <F8>
Cette commande permet d'excuter une tape individuelle. Dans le cas de l'appel de modules,
l'application s'arrte avant l'excution de la premire instruction du module.
Le cas chant, vous basculez dans un module qui est appel.
CoDeSys V2.3
4-75
Cette commande se limite effectuer un cycle de commande unique, aprs quoi il s'arrte.
Cette commande peut tre rpte continuellement, pour avancer en effectuant des cycles uniques.
Un cycle indpendant prend fin lorsque que la commande 'En ligne' 'Dmarrer' est excute.
'En Ligne' 'crire valeurs des variables'
Raccourci : <Ctrl>+<F7>
Cette commande permet de ramener au dbut dun cycle - une seule fois ! - une ou plusieurs
variable(s) des valeurs dfinies par lutilisateur.
Vous pouvez modifier la valeur de toutes les variables composes d'un seul lment qui sont aussi
visibles lespionnage.
Avant deffectuer la commande 'Ecrire valeurs des variables', vous devez dfinir une valeur de
variable pour lcriture.
1. Dfinition des valeurs :
Pour les variables autres que boolennes, il suffit de double-cliquer sur la ligne laquelle la
variable est dclare, ou de marquer cette variable et dappuyer sur la touche <Entre>. Suite
quoi une bote de dialogue 'crire variable <x>' apparat, vous permettant de saisir la valeur qui
sera crite dans la variable.
Bote de dialogue pour lcriture dune nouvelle valeur de variable
Pour les variables boolennes, il suffit de double-cliquer sur la ligne laquelle la variable est
dclare, et la valeur change dun tat lautre (TRUE, FALSE, et pas de nouvelle valeur) sans
quune bote de dialogue apparaisse.
La nouvelle valeur prvue pour lcriture est affiche couleur turquoise entre les signes '<' et '>', la
suite de lancienne valeur, par exemple a=0 <:=34>.
Remarque : Exception laffichage des valeurs crire : Dans les diteurs FBD et LD, la nouvelle valeur est
indique en couleur turquoise mais sans les signes '<' et '>'.
Vous pouvez dfinir une nouvelle valeur pour autant de variables que vous le souhaitez.
Les valeurs introduites pour les variables crire peuvent galement tre corriges voire effaces de
la mme manire. Ceci est galement possible avec 'En Ligne' 'Dialogue crire/Forcer' (voir cidessous).
Les valeurs attribues pour lcriture sont sauvegardes dans une liste d'criture (Liste d'espion)
jusqu leur utilisation effective ou leur effacement; elles peuvent galement tre dposes dans une
liste de forage via la commande 'Forcer valeurs des variables' Les listes d'espion et de forage
peuvent tre consultes dans 'Dialogue Ecrire/Forcer'.
4-76
CoDeSys V2.3
En FBD par contre, la premire variable est seule espionne dans une expression utilise par
exemple comme entre d'un bloc fonctionnel. Ainsi, 'crire valeurs des variables' est possible pour
cette seule variable.
'En Ligne' 'Forcer valeurs des variables'
Raccourci : <F7>
Cette commande permet de ramener de manire permanente une ou plusieurs variable(s) des
valeurs dfinies par l'utilisateur. Cette opration s'effectue dans le systme d'excution au dbut et
la fin d'un cycle.
Droulement chronologique au sein d'un cycle : 1.lire les entres, 2. forcer les valeurs, 3. excuter le
code, 4. forcer les valeurs, 5. crire les sorties.
La fonction est active tant qu'elle n'est pas expressment interrompue par l'utilisateur (Commande 'En
Ligne' 'Arrter de forcer') ou que le systme de programmation ait ferm la session.
Pour la cration d'une nouvelle valeur, une Liste d'espion (liste d'criture) est tout d'abord cre,
comme cela a t dcrit sous 'En Ligne' 'Ecrire valeurs des variables' (voir 1. Dfinition des valeurs).
Les variables contenues dans la liste d'criture sont identifies en consquence dans l'espion. La liste
d'criture est transmise dans une Liste de forage ds que la commande 'Forcer valeurs des
variables' est excute. Les entres dans la liste de forage peuvent tre consultes dans 'Dialogue
crire/Forcer'. Il se peut qu'il y ait dj une Liste de forage active, celle-ci sera alors mise jour en
consquence. La liste d'criture se vide et les nouvelles valeurs sont reprsentes en rouge comme
"forces"; par exemple:
Des modifications dans la Liste de forage sont transmises au programme lors d'une commande
ultrieure 'Forcer valeurs des variables'.
Veuillez noter : La Liste de forage est cre lors du premier forage des valeurs contenues dans la
Liste d'espion alors que cette dernire existait dj avant la premire criture des valeurs qu'elle
contient.
Remarque: Si le systme cible le supporte, une liste de forage est maintenue sur l'automate programmable,
mme si la connexion est interrompue p.ex. par une fin de session.
La commande permettant de forcer une variable (et par l mme l'enregistrement dans une liste de
forage) se trouve aux emplacements suivants :
Commande 'Forcer valeurs des variables' dans le menu 'En Ligne'.
CoDeSys V2.3
4-77
Bouton <Forcer valeurs des variables> dans la bote de dialogue 'Editer la liste d'criture et de
forage'.
Remarque : Dans le diagramme fonctionnel en squence, les valeurs individuelles permettant de former une
expression de transition ne peuvent tre modifies par le biais de 'Forcer valeurs des variables'. Ceci
repose sur le fait que lors de l'espionnage, la valeur totale de l'expression est reprsente, et non pas
la valeur des variables individuelles (p.ex. a ET b ne seront reprsents comme TRUE que si les
deux valeurs ont effectivement la valeur TRUE).
En FBD par contre, la premire variable est seule espionne dans une expression utilise par
exemple comme entre d'un bloc fonctionnel. Ainsi, 'Forcer valeurs des variables' n'est possible que
pour cette variable.
Dans le diagramme fonctionnel en squence, les valeurs individuelles formant une expression de
transition ne peuvent tre modifies par le biais de 'Forcer valeurs des variables'. Ceci repose sur le
fait que lors de l'espionnage, la valeur totale de l'expression est reprsente, et non pas la valeur des
variables individuelles (p.ex. a ET b ne seront reprsents comme TRUE que si les deux valeurs
ont effectivement la valeur TRUE).
En FBD par contre, la premire variable est seule espionne dans une expression utilise par
exemple comme entre d'un bloc fonctionnel. Ansi, 'Forcer valeurs des variables' n'est possible que
pour cette variable.
'En Ligne' 'Arrter de forcer'
Raccourci : <Maj>+<F7>
Cette commande met fin au Forage de valeurs de variables dans lautomate. Les variables modifient
nouveau leur valeur selon la procdure normale.
Les variables forces sont reconnaissables leur reprsentation en rouge dans lespion. Vous avez la
possibilit deffacer compltement la liste de forage ou den effacer quelques variables individuelles
( slectionner avant de donner la commande d'arrt de forage).
Pour effacer compltement la liste de forage et donc lever le forage pour toutes les variables,
slectionnez les possibilits suivantes :
Commande 'Arrter de forcer' dans le menu 'En Ligne'.
Bouton <Arrter de forcer> dans la bote de dialogue 'Editer la liste d'criture et de forage'.
Effacer toute la liste de forage par le biais de la bote de dialogue 'Effacer les listes d'criture/de
forage'. Celle-ci s'ouvre grce la commande 'En Ligne' 'Arrter de forcer' pour autant quil y ait
encore des entres dans la Liste d'espion.
Pour lever le forage de quelques variables individuelles de la 'Liste de forage', vous devez tout
dabord marquer ces variables. Vous devez pour ce faire slectionner une des possibilits dcrites ciaprs. Les variables concernes sont reconnaissables lajout couleur turquoise <Arrter de forcer>.
Un double-clic sur la ligne laquelle une variable non boolenne forcer est dclare donne
accs la bote de dialogue 'crire variable <x>'. Appuyez alors sur le bouton <Arrter de forcer
pour cette variable>.
En multipliant les doubles-clics sur la ligne laquelle une variable boolenne forcer est dclare,
vous pouvez modifier les donnes jusqu lindication <Arrter de forcer> aprs la variable.
Effacez la valeur dans le champ ddition de la colonne 'Valeur force' dans la bote de dialogue
crire/Forcer, laquelle vous avez accs via le menu 'En Ligne'.
Si '<Arrter de forcer>' se trouve aprs la valeur de toutes les variables souhaites dans la fentre de
dclaration, vous pouvez excuter la commande 'Forcer valeurs des variables', qui transmettra le
nouveau contenu de la Liste de forage lautomate.
Si, lors de lexcution de la commande 'Arrter de forcer', la Liste d'espion (voir 'En Ligne' 'crire
valeurs des variables') nest pas vide, la bote de dialogue 'Effacer les listes d'criture/de forage'
souvre, incitant lutilisateur dcider sil veut Annuler le forage ou Effacer la liste d'criture, ou
les deux.
4-78
CoDeSys V2.3
Grce la commande 'En Ligne' 'crire valeurs des variables', les valeurs parviennent la 'Liste
d'espion', et elles sont transmises dans la 'Liste de forage' par le biais de la commande 'En Ligne'
'Forcer valeurs des variables'. Les valeurs peuvent tre dites dans les colonnes 'Valeur prpare'
ou 'Valeur force' en ce sens quun clic de la souris sur lentre ouvre un champ ddition. Un
message derreur est dlivr en cas d'inconsistance de type. Si vous effacez une valeur, cela signifie
que lentre est enleve de la liste dcriture ou que la variable est marque pour lever le forage ds
que vous quittez la bote de dialogue par le biais dune commande autre que Annuler.
Les commandes suivantes, correspondant celles du menu En ligne, sont disposition par le biais
des boutons :
Forcer valeurs des variables: Toutes les entres de la liste dcriture actuelle sont dplaces dans
la liste de forage, ce qui signifie que les valeurs de variables sont forces dans lautomate. Les
variables marques par "<Arrter de forcer>" ne sont plus forces. La bote de dialogue se referme
ensuite.
CoDeSys V2.3
4-79
Ecrire valeurs des variables: Toutes les entres de la liste dcriture actuelle sont crites une seule
fois dans les variables correspondantes dans lautomate. La bote de dialogue se referme ensuite.
Arrter de forcer: Toutes les entres de la liste de forage sont effaces ou, si une liste d'criture est
disponible, la bote de dialogue 'Effacer les listes d'criture/de forage' souvre, incitant lutilisateur
dcider sil veut Annuler le forage ou Effacer la liste d'criture, ou les deux. La bote de dialogue
se referme ensuite ou aprs avoir ferm la bote de dialogue qui a permis la slection.
'En Ligne' 'Hirarchie d'appel'
Vous pouvez appeler cette commande lorsque la simulation s'arrte un point d'arrt. Une bote de
dialogue s'ouvre et affiche une liste des modules qui se trouvent actuellement dans la pile d'appel.
Exemple de hirarchie d'appel
Le premier module est toujours PLC_PRG, car c'est dans ce module que dbute l'excution.
Le dernier module est toujours celui o le programme tait excut actuellement.
Aprs avoir slectionn un des modules et cliqu sur le bouton Atteindre, le module slectionn est
charg dans une fentre, et la ligne ou le rseau en cours d'excution est affich(e).
'En Ligne' 'Contrle de droulement' '
Selon la configuration du systme cible actuel, on peut activer ou dsactiver le contrle de
droulement par l'utilisateur au moyen de cette option de menu. Si Contrle de droulement est
slectionn, un crochet (9) apparat devant l'lment de menu. Tous les rseaux ou lignes qui ont t
excuts au cours du dernier cycle de commande sont marqus.
Les champs de numrotation des lignes ou des rseaux qui ont t parcourus sont visualiss en vert.
Dans l'diteur IL, un champ supplmentaire est ajout au niveau du bord gauche de chaque ligne. Le
contenu actuel de l'accumulateur y est affich. Dans les diteurs graphiques du schma en blocs
fonctionnels et du langage contacts, un champ supplmentaire est ajout tous les lments de
liaison qui ne vhiculent pas de valeurs boolennes. Lorsque ces entres et sorties sont dfinies, la
valeur vhicule par l'lment de liaison s'affiche dans ce champ. Les lments de liaison qui
transportent exclusivement des valeurs boolennes apparaissent en bleu lorsqu'ils transportent des
valeurs TRUE; ce systme permet de suivre continuellement le flux d'informations.
Veuillez noter :
1. Le contrle de droulement provoque un prolongement du temps dexcution dun programme.
Ceci peut causer des dpassements de temps de cycle pour les programmes cycliques haute
charge de tche.
2. Le contrle de droulement nest pas affich aux positions de points darrt actives.
4-80
CoDeSys V2.3
Lorsque le programme n'est pas en mode simulation, il est excut sur l'automate programmable. La
communication entre le PC et l'automate programmable se fait de manire usuelle, par l'intermdiaire
de l'interface srie.
L'tat de ce drapeau est enregistr avec le projet.
'En Ligne' 'Paramtres de communication'
Vous accdez au moyen de cette commande une bote de dialogue destine configurer les
paramtres de communication entre l'ordinateur local et le systme d'excution via une gateway. (Si
vous utilisez un serveur OPC ou DDE, les mmes paramtres de communication doivent y tre
configurs.)
Voyez cet effet les points suivants :
Principe de la gateway
Bote de dialogue "Paramtres de communication" de l'ordinateur local
Configuration de la passerelle souhaite et du canal
Cration d'un nouveau canal pour la passerelle locale
Indications pour diter les paramtres dans la bote de dialogue Paramtres de communication
Principe de la gateway
Votre ordinateur local peut tre reli un ou plusieurs systmes d'excution via une gateway. Une
configuration particulire pour chaque gateway dtermine les systmes d'excution auxquels la
gateway peut accder tandis que la liaison avec la gateway voulue est configure au niveau de
l'ordinateur local. Il est possible de crer une configuration telle que, non seulement la gateway, mais
aussi un ou plusieurs systmes d'excution soient en excution sur l'ordinateur local. Si la gateway
est installe sur l'ordinateur local, l'change entre le systme de programmation et la gateway se fait
par le biais de la mmoire partage ou de TCP/IP. S'il s'agit d'une gateway qui est en excution sur
un PC tranger, il faut s'assurer qu'elle a dmarr sur ce mme PC. La connexion n'est alors possible
que par le biais de TCP/IP.
La gateway dmarre automatiquement ds que, sur l'ordinateur dans lequel il est install, la bote de
dialogue permettant la configuration de la communication s'ouvre dans le cadre de CoDeSys, ou ds
que vous vous connectez au systme d'excution cible. Si une version de la gateway incompatible
avec le systme de programmation est installe sur votre ordinateur, le message correspondant est
affich. Il est alors impossible d'ouvrir une session.
apparat alors en bas droite, dans la barre des tches. Cette icne est
Une icne CoDeSys
allume aussi longtemps que vous tes reli au systme d'excution via la gateway.
Le menu de passerelle :
En cliquant sur le bouton droit de la souris sur ladite icne, vous accdez aux options Aide, Info,
Changer mot de passe,Inspection, et Quitter.
Vous obtenez des informations propos de la version de la gateway par le biais d'Info.
Par le biais de Changer mot de passe, vous obtenez une bote de dialogue vous permettant de saisir
un mot de passe pour la gateway local ou ventuellement de changer ce mot de passe. Si une telle
protection existe, vous tes invit saisir le mot de passe ds que la gateway concerne est
slectionne dans la bote de dialogue des paramtres de communication ou ds que vous vous
connectez pour la premire fois.
Par le biais de Inspection, vous accdez aux botes de dialogue du contrleur de gateway,
permettant un espionnage des canaux de gateway (canaux disponibles, services actifs, etc.). Vous
pouvez ouvrir, via l'option Aide, l'aide En ligne de l'interface utilisateur de la gateway, afin d'obtenir
des informations quant l'utilisation du contrleur.
La commande Quitter vous permet de dconnecter la gateway.
CoDeSys V2.3
4-81
PC_lokaldsigne votre ordinateur local tandis que PC_x dsigne un PC distinct de l'ordinateur local,
utilisant la gateway. PC_gateway dsigne le PC sur lequel est installe la gateway, PC_PLC1,
PC_PLC2, PC_PLC3 et PC_PLC4 dsignent les PC sur lesquels les systmes d'excution sont en
excution. Les modules apparaissent spars sur la figure, mais il est tout fait possible que la
gateway et / ou le systme d'excution soient galement installs sur l'ordinateur local.
Attention : Nous attirons votre attention sur le fait que la liaison avec la passerelle ne peut se faire qu'en utilisant
le protocole TCP/IP. Par consquent, votre ordinateur doit tre quip de faon adquate. Si par
contre la passerelle est installe sur votre ordinateur local, la liaison est possible via la mmoire
partage (srie).Les liaisons entre la passerelle et les diffrents ordinateurs d'excution peuvent
quant elles utiliser divers protocoles (TCP/IP, Pipe, etc.).
4-82
CoDeSys V2.3
La premire catgorie regroupe tous les canaux que la gateway actuellement connecte, dsigne
par "localhost", offre sur le rseau, permettant par exemple une liaison avec lautomate. L'adresse
ou le nom de ladite gateway est indiqu aprs le signe moins, l'extrmit suprieure. Dans
l'exemple que nous avons choisi, cette gateway est en excution sur l'ordinateur local. L'adresse
approprie "localhost" correspond en rgle gnrale l'adresse IP 127.0.0.1 de l'ordinateur local
(PC_lokal). En dessous, trois adresses de systmes d'excution sont indentes au sein d'une
arborescence. Des canaux sont configurs pour ces systmes d'excution, au niveau de la
gateway (PC_PLC1 3). Ces canaux ont pu tre configurs aussi bien par l'ordinateur local que
par d'autres PC (PC_x), qui sont ou ont t relis la gateway.
La deuxime catgorie de canaux englobe toutes les liaisons au niveau de la gateway ayant t
configures partir de votre ordinateur local par exemple, l'aide de cette bote de dialogue de
configuration. Ces liaisons constituent la "branche" qui descend en droite ligne du signe moins
vers PC_PLC1 et PC_PLC4. Les adresses de ces canaux ne doivent pas ncessairement avoir
dj t identifies au niveau de la gateway. Certes, les paramtres de communication pour
PC_PLC4, dans l'exemple reprsent ci-dessus, sont enregistrs localement dans le projet.
Nanmoins, ces paramtres n'ont t identifis par la gateway qu'aprs un nouvel accs au
systme d'excution. C'est le cas pour PC_PLC1, qui a t rajout pour cette raison
"l'arborescence des canaux", comme "sous-branche" de l'adresse de gateway concerne.
Dans la partie centrale de la bote de dialogue se trouvent l'identification du canal slectionn dans la
partie de gauche ainsi que les paramtres qui se rapportent ce canal, dans les rubriques Nom,
Valeur et Commentaire.
Configuration de la gateway souhaite et du canal
1. Slection de la passerelle dans le dialogue Paramtres de communication:
Pour dfinir la liaison avec la gateway voulue, ouvrez la bote de dialogue Paramtres de
communication par Gateway en appuyant sur le bouton Gateway.
Exemple de bote de dialogue, Dfinition de la connexion locale la passerelle
CoDeSys V2.3
4-83
le mot de passe pour la gateway slectionne, si celle-ci est installe sur un ordinateur
distance. Si celui-ci est erron ou que vous ne l'introduisez pas, un message d'erreur apparat
l'cran.
Veuillez noter cet effet : vous pouvez munir d'un mot de passe la gateway installe localement
de la manire suivante : Cliquez avec le bouton droit de la souris sur l'icne de la gateway en bas
droite dans la barre des tches, et slectionnez Changer mot de passe . Vous accdez alors
une bote de dialogue permettant de changer ou de saisir un mot de passe. Si vous accdez
localement la gateway, le mot de passe ventuellement attribu n'est pas demand.
le port de l'ordinateur que vous souhaitez utiliser et sur lequel la gateway tourne ; en rgle
gnrale, il est dj prdfini pour la valeur correspondant la gateway slectionne.
Si vous fermez la bote de dialogue en confirmant par OK, l'entre correspondante (adresse
d'ordinateur) apparat tout en haut dans la rubrique Canaux de la bote de dialogue Paramtres de
communication, et les canaux disponibles de cette gateway apparaissent en dessous.
2. Configuration du canal souhait de la gateway slectionne
Slectionnez maintenant un des canaux en cliquant sur une des entres. Les paramtres
correspondants sont alors affichs dans un tableau. Si aucune connexion ne peut tre cre vers
l'adresse de gateway choisie - du fait que le serveur ne soit pas dmarr ou que l'adresse soit
errone , alors l'indication "non connect" apparat entre parenthses derrire l'adresse ainsi que le
message 'Aucune gateway avec ces paramtres n'a t trouve'. Reportez-vous dans ce cas la
rubrique 'Vrification en cas d'chec de connexion la gateway'.
Lorsque le canal souhait est configur, fermez cette bote de dialogue avec OK. Les configurations
sont enregistres avec le projet.
Cration d'un nouveau canal pour la gateway locale
Dans le dialogue Paramtres de communication, vous pouvez crer des nouveaux canaux pour la
passerelle actuellement connecte, ceux-ci seront alors disposition pour les connexions de la
passerelle, par exemple pour une connexion avec l'automate. Les possibilits dont vous disposez
sont fonction de la gamme individuelle des pilotes installs sur votre ordinateur.
Appuyez sur le bouton Nouveau.... Vous obtenez alors la bote de dialogue 'Paramtres de
communication :Nouveau canal' :
Exemple de bote de dialogue, Cration d'un nouveau canal
Le nom correspondant au dernier canal entr est automatiquement propos dans le champ Nom.
Si aucun canal n'a t dfini jusque l, le nom de la gateway actuelle est propos suivi d'un
caractre de soulignement, par exemple "localhost_". A cet endroit, vous pouvez modifier le nom
de canal. Les noms de canaux sont purement indicatifs. Il n'est donc pas ncessaire qu'ils soient
univoques, mme si cela est prfrable.
Les pilotes disponibles auprs de l'ordinateur gateway sont numrs dans un tableau sous
Appareil. En cliquant avec la souris, slectionnez un des pilotes proposs dans la colonne Nom ;
s'il existe, le commentaire correspondant est affich dans la colonne Information.
4-84
CoDeSys V2.3
Si vous fermez la bote de dialogue 'Nouveau canal' en confirmant par OK, le canal nouvellement
dfini est affich dans la bote de dialogue Paramtres de communication, dans la rubrique Canaux,
en dernire position sous le signe moins. Pour le moment, le canal n'est enregistr que localement
dans le projet (voir ci-dessus) ! ce stade, vous pouvez diter la colonne Valeur. Confirmez les
paramtres rgls l'aide d'OK et quittez la bote de dialogue 'Paramtres de communication'.
Vous devez accder au systme d'excution afin que le nouveau canal de gateway et ses
paramtres soient identifis au niveau de la gateway xy et afin qu'il soit accessible tous les
ordinateurs qui ont accs cette gateway xy. Si vous ouvrez ensuite nouveau la bote de dialogue
'En Ligne' 'Paramtres de communication' le nouveau canal apparat dans une "arborescence de
canaux" et en indentation sous l'adresse / le nom de l'ordinateur sur lequel la gateway est installe,
tout en continuant tre affich la position qu'il occupait jusque-l. Ceci signifie qu'il est connu du
rseau. Vous pouvez alors ouvrir la bote de dialogue des paramtres de communication partir d'un
autre ordinateur que l'ordinateur local, slectionner la gateway xy et utiliser son nouveau canal.
Si une erreur de communication est affiche lors de l'accs au systme, alors il se peut qu'il soit
impossible d'ouvrir l'interface (par exemple COM1 dans le cas d'une liaison srie). En effet, il se peut
que cette interface soit dj occupe par un autre priphrique. Il se peut galement que seul
l'automate ne fonctionne pas.
Il ne vous est plus possible d'diter, partir de la bote de dialogue de configuration, les paramtres
d'un canal dj identifi par la gateway. Les champs de paramtres sont visualiss en gris. En
revanche, vous conservez la possibilit de supprimer la liaison, condition que celle-ci ne soit pas
active.
Attention : Nous attirons votre attention sur le fait que, dans le cas d'un canal, l'opration de suppression ne soit
pas rversible. La suppression est effectue au moment o vous appuyez sur le bouton Effacer !
Indications pour diter les paramtres dans la bote de dialogue Paramtres de communication
Dans le dialogue Paramtres de communication, vous pouvez diter uniquement les champs de texte
de la colonne Valeur.
En slectionnant un champ de texte avec la souris, vous pouvez accder au mode dition l'aide
d'un double-clic ou en appuyant sur la <Barre d'espacement>. Pour terminer une entre de texte
donne, appuyez sur la touche <Entre>.
Pour vous dplacer vers le bouton ou la zone d'dition qui suit ou qui prcde, appuyez
respectivement sur la touche <Tabulation> et sur les touches <Maj> + <Tabulation>.
Si vous ditez des valeurs numriques, il vous est possible d'incrmenter ou de dcrmenter une
valeur donne d'une ou de dix units, l'aide des touches directionnelles ou des touches de
dfilement d'cran. En double-cliquant avec la souris, vous incrmentez galement la valeur d'une
unit. Pour les valeurs numriques, une vrification relative au type a t configure: en appuyant sur
les touches <Ctrl> + <Pos1> et <Ctrl> + <Fin>, vous obtenez respectivement la valeur minimale et la
valeur maximale susceptible d'tre entre, pour le type de paramtre choisi.
Vrification en cas dchec de connexion la gateway
Vrifiez les points suivants si vous ne parvenez pas tablir une connexion avec la gateway
slectionne (Le message 'Non connect' apparat dans la bote de dialogue des paramtres de
communication derrire ladresse de la gateway, dans le champ Canaux) :
La gateway est-elle dmarre (apparition dun symbole tricolore dans le coin infrieur droit dans la
barre des tches) ?
Sagit-il rellement, au niveau de ladresse IP que vous avez saisi dans la bote de dialogue
'Gateway: 'Paramtres de communication, de lordinateur sur lequel la gateway est en excution ?
(Vrifier au moyen dun ping )
La connexion TCP/IP fonctionne localement ? Lerreur se situe ventuellement au niveau du TCP/IP.
'En Ligne' 'Application tlcharge du code source dans l'automate'
Cette commande permet de charger le code source du projet dans l'automate programmable. ne
pas confondre avec le code cr la compilation du projet ! Vous pouvez dterminer les options
CoDeSys V2.3
4-85
valables pour un tlchargement (moment, taille) dans la bote de dialogue 'Projet' 'Options'
'Tlchargement code source'.
'En Ligne' 'Crer projet d'initialisation'
Si cette commande est effectue en ligne, le projet compil est compltement sauvegarde dans
l'automate de sorte que ce dernier puisse le charger lors d'un nouveau dmarrage. La sauvegarde du
projet d'initialisation se produit de diffrentes faons, en fonction du systme cible. Par exemple, trois
fichiers sont crs sur les systmes bass sur un processeur 386 : default.prg contient le code projet,
default.chk le total de contrle du code, et default.sts le statut de l'automate aprs un nouveau
dmarrage (Start/Stop).
La commande 'En Ligne' 'Crer projet d'initialisation' est galement disposition Hors ligne, lorsque
le projet a t compil sans erreurs. Dans ce cas, le fichier <Nom du projet>.prg est cr pour le
projet d'initialisation dans le rpertoire du projet, et le fichier <Nom du projet>.chk pour le total de
contrle du code. Il peuvent tre copis sur un automate aprs en avoir chang le nom de faon
adquate.
S'il existe dj un projet d'initialisation dans l'automate programmable et si en outre l'option 'Mode En
ligne en mode de scurit' est active au sein des options de projet, catgorie Environnement de
travail, un dialogue s'ouvre lors de la cration d'un nouveau projet d'initialisation, reprenant les
informations relatives au projet actuellement charg sur le systme de programmation et au projet
d'initialisation existant au niveau de l'automate. Cette fonctionnalit doit bien entendu tre supporte
par le systme cible !
Toujours selon la configuration du systme cible, un nouveau fichier *.ri (informations de compilation)
sera ventuellement cr en mme temps que la cration Hors ligne d'un projet d'initialisation. Si un
tel fichier existe, un dialogue de confirmation s'ouvrira le cas chant (selon le systme cible).
Remarque : Si l'option Automatiquement la cration du projet d'initialisation (catgorie Download
Sourcecode) est active, la commande 'En Ligne' 'Crer projet d'initialisation' vous permet de
charger automatiquement dans l'automate programmable les fichiers source choisis.
4-86
CoDeSys V2.3
CoDeSys V2.3
4-87
Gestionnaire d'Aide
Vous pouvez activer la touche <F1> dans une fentre active, une bote de dialogue ou lorsqu'un
lment de menu est slectionn. Dans le cas des lments de menu, c'est l'aide qui correspond la
commande actuellement slectionne qui est affiche.
Vous pouvez aussi marquer un texte (p.ex. un mot cl ou une fonction standard) et obtenir que l'aide
correspondante soit affiche.
4-88
CoDeSys V2.3
5 - Les Editeurs
5 Les Editeurs
5.1 Pour toutes les diteurs
Structure d'un diteur
Tous les diteurs pour les langages de programmation dans CoDeSys sont constitus dune partie de
dclaration et dun corps. Le corps peut tre compos dun diteur graphique ou littral, la partie de
dclaration quant elle est toujours un diteur littral. Le corps et la partie de dclaration sont
spars par une barre horizontale de fractionnement, que lon peut dplacer sa convenance, en
cliquant dessus avec la souris et en la dplaant vers le haut et vers le bas tout en maintenant la
touche de la souris enfonce.
Zone d'impression
Les dlimitations horizontales et verticales relatives aux pages et en vigueur lors de limpression du
contenu de lditeur sont marques par les lignes rouges pour autant que vous ayez slectionn
loption 'Zone d'impression' parmi les options de projet de la bote de dialogue 'Environnement de
travail'. cet effet, les donnes par dfaut de limprimante configure sont dapplication, de mme
que la mise en page slectionne pour limpression dans le menu 'Fichier' 'Configuration
Documentation'. Si aucune imprimante ou mise en page nest disponible, on se base sur une
assignation par dfaut (Dfaut DFR et Imprimante standard). Les limites horizontales dimpression
sont affiches comme si on avait slectionn loption 'Nouvelle page pour chaque objet' ou 'Nouvelle
page pour chaque sous-objet' dans la 'Configuration Documentation'. La limite infrieure nest pas
reprsente.
Veuillez noter : Un affichage prcis des zones limites dimpression nest obtenu quavec un facteur zoom rgl
100%.
Commentaires
Les commentaires de l'utilisateur doivent tre enferms dans les chanes de caractres spcifiques
"(*" et "*)".
Les commentaires sont autoriss dans tous les diteurs littraux, et ce n'importe quel endroit.
Autrement dit, les commentaires sont autoriss dans les dclarations, en langage IL et en langage
ST, et dans les types de donnes dfinis par l'utilisateur. Si le projet est imprim moyennant
lutilisation dun document modle, le commentaire saisi en regard de la dclaration de variable
apparat toujours derrire cette variable, ceci pour les parties de programme se basant sur des textes.
Pour chaque rseau, il est possible dintroduire un commentaire dans les diteurs graphiques en
langage FBD et LD Pour cela, choisissez le rseau que vous souhaitez commenter et activez
"Insrer" + "Commentaire". Des commentaires peuvent en outre tre ajouts lendroit
dintroduction des noms de variables.
Exemple en langage FBD dun commentaire de rseau et dun commentaire introduit derrire une
variable dentre :
En langage LD, vous pouvez ajouter un commentaire chaque contact ou chaque bobinage, si le
rglage dans laffichage des options du menu 'Extras' 'Options' le permet. Avec lditeur CFC , il existe
des modules spciaux de commentaire qui peuvent tre placs selon son gr.
CoDeSys V2.3
5-1
En SFC, vous pouvez entrer des commentaires relatifs aux tapes dans la bote de dialogue pour
ldition dattributs dtape.
Des 'commentaires imbriqus' sont galement permis, pour autant que loption correspondante ait
t active dans la bote de dialogue 'Projet' 'Options' 'Options de compilation'.
Si, dans le mode En Ligne, vous maintenez pendant une courte dure le pointeur de la souris sur une
variable, alors le type et, le cas chant, le commentaire de celle-ci sont visualiss l'intrieur d'une
info-bulle.
Zoom sur module appel
Cette commande est disponible dans le menu contextuel (<F2>) ou dans le menu Extras, pour autant
que le curseur se trouve sur le nom du module appel dans les diteurs littraux, ou si la bote dun
module est marque dans les diteurs graphiques. Le zoom ouvre le module concern dans sa
fentre dditeur. S'il s'agit d'un module issu d'une bibliothque, alors le gestionnaire de bibliothques
est appel et le module correspondant est affich.
Ouvrir l'instance
Cette commande correspond la commande 'Projet' 'Ouvrir l'instance'. Elle est disponible dans le
menu contextuel ou dans le menu Extras, pour autant que le curseur se trouve sur le nom du bloc
fonctionnel dans les diteurs littraux, ou si la bote dun module est marque dans les diteurs
graphiques.
Fonction Intellisense
Si loption Lister les composants est active parmi les options de projet dans la catgorie diteurs, la
fonction Intellisense est disponible dans tous les diteurs, dans le gestionnaire despion et de
recettes, dans la visualisation et dans la configuration de lhistogramme.
Si un point . est donn en tant quidentificateur, une liste de slection de toutes les variables
locales et globales souvre. Vous pouvez slectionner un lment hors de cette liste et l'insrer en
appuyant sur la touche dentre aprs le point. Linsertion se produit galement aprs un doubleclic sur llment de la liste.
Si lidentificateur est une instance d'un bloc fonctionnel ou une variable dfinie comme une
structure et suivie dun point, une liste des variables dentre et de sortie du bloc fonctionnel ou
des composants de structure souvre aprs la saisie du point.
Exemple :
Saisie de "struvar." -> les composants de la structure struct1 sont affichs :
Si lon introduit une srie de caractres quelconque en tant quidentificateur et que lon appuie sur
<CTRL> + <Barre despacement>, une liste de slection de tous les modules et variables globales
disponibles dans le projet apparat, dans laquelle la premire variable commenant par cette srie
de caractres est marque et reprise dans le programme lorsquon appuie sur la touche dentre.
Info-bulle hors ligne pour variables
Pour tous les diteurs en mode Hors ligne : Si le pointeur de la souris se trouve sur un identificateur
ditable, le nom de lidentificateur, la classe de variable (p. ex. VAR_GLOBAL), le type de donnes,
les attributs de la variable (p. ex. RETAIN), ladresse et le commentaire sont reprsents dans une
info-bulle.
5-2
CoDeSys V2.3
5 - Les Editeurs
Partie de dclaration
Dans la partie de dclaration d'un module sont dclares toutes les variables qui sont utilises
exclusivement dans ce module. Il peut s'agir de variables d'entre, de variables de sortie, de variables
d'entre-sortie, de variables rmanentes ou de constantes. La syntaxe de dclaration est conforme
la norme IEC61131-3.
Notez que pour le remplissage de la partie dclaration lors de la cration d'un nouvel objet de type
'Variables globales', 'Type de fichier', 'Fonction', 'Bloc fonctionnel' ou 'Programme', il est possible
d'utiliser des objets modles, voir chapitre 4.3.
Voici un exemple de dclaration de variables correcte dans l'diteur CoDeSys:
Variables d'entre
Entre les mots cls VAR_INPUT et END_VAR sont dclares toutes les variables qui interviennent en
tant que variables d'entre d'un module, c.--d. que la valeur de ces variables peut galement tre
entre au moment de l'appel, au niveau de l'endroit d'appel.
Exemple :
VAR_INPUT
in1:INT; (* premire variable d'entre *)
END_VAR
CoDeSys V2.3
5-3
L'diteur de dclaration
Variables de sortie
Entre les mots cls VAR_OUTPUT et END_VAR sont dclares toutes les variables qui interviennent
comme variables de sortie d'un module, c.--d. que les valeurs de ces variables sont renvoyes au
module d'appel, pour y tre contrles et rutilises.
Exemple :
VAR_OUTPUT
out1:INT; (* premire variable de sortie *)
END_VAR
Variables d'entre-sortie
Entre les mots cls VAR_IN_OUT et END_VAR sont dclares toutes les variables qui interviennent
comme variables d'entre-sortie d'un module.
Attention : dans le cas des variables d'entre-sortie, la valeur de la variable transfre est modifie directement
("transfert sous forme de pointer", Call-by-Reference). C'est pourquoi une telle variable n'accepte que
des constantes comme valeurs d'entre. Ceci explique galement pourquoi les variables dentresortie VAR_IN_OUT ne peuvent tre lues ou crites directement de lextrieur par <Instance de bloc
fonctionnel> <Variables dentre-sortie>.
Exemple :
VAR_IN_OUT
inout1:INT; (* premire variable d'entre-sortie *)
END_VAR
Variables locales
Entre les mots cls VAR et END_VAR sont dclares toutes les variables locales d'un module.
Celles-ci n'ont pas de relation avec l'extrieur, c.--d. qu'il est impossible d'y accder partir de
l'extrieur.
Exemple :
VAR
loc1:INT; (* premire variable locale *)
END_VAR
5-4
CoDeSys V2.3
5 - Les Editeurs
Variables rmanentes
Les variables rmanentes gardent leur valeur au-del de lexcution normale de programme. Les
variables rmanentes ("retain") et les variables persistantes en font partie.
Exemple :
VAR RETAIN
rem1:INT; (* premire variable rmanente *)
END_VAR
Les variables rmanentes ("retain") sont caractrises par le mot cl RETAIN. Ces variables
conservent leur valeur mme aprs un arrt non intentionnel de lautomate ou aprs une remise
zro ('En Ligne' 'Reset'). Lors d'un nouveau lancement du programme, le travail continue avec les
valeurs mmorises. Un exemple dapplication possible est un compteur install sur une
installation de production, qui doit pouvoir continuer compter aprs une panne de secteur. Les
variables rmanentes sont rinitialises 'En Ligne' 'Reset froid', 'En Ligne' 'Reset origine' et au contraire des variables persistantes -, chaque nouveau tlchargement de programme.
Toutes les autres variables sont rinitialises, soit avec leurs valeurs d'initialisation, soit avec des
initialisations standard.
Les variables persistantes sont caractrises par le mot cl PERSISTENT. Elles gardent leur
valeur seulement aprs un nouveau tlchargement ('En Ligne' 'Lancer'), mais - au contraire des
variables rmanentes ("retain") - non aprs 'En Ligne' 'Reset', 'En Ligne' 'Reset froid', 'En Ligne'
'Reset origine', vu quelles ne sont pas enregistres dans la "zone mmoire rmanente". Si les
variables persistantes doivent garder leur valeur mme aprs un arrt non intentionnel de
l'automate, elles doivent donc tre dclares en plus comme des VAR RETAIN. Un exemple
dapplication possible de "variable rmanente persistante" est un compteur pour calculer le nombre
dheures de service effectif, qui doit pouvoir continuer compter aprs une panne de secteur.
x = valeur est conserv
apres command
'En Ligne'...
Reset
Reset froid
Reset origine
Lancer
(=Download)
Online Change
VAR
RETAIN
VAR
PERSISTENT
x
-
x
x
Attention :
- Si une variable locale est dclare dans le programme comme variable rmanente, cest
prcisment cette variable qui sera sauvegarde dans la zone mmoire rmanente (comme une
variable rmanente globale).
- Si une variable locale est dclare dans un bloc fonctionnel comme variable rmanente, linstance
complte de ce bloc fonctionnel sera enregistre dans la zone mmoire rmanente (toutes les
donnes du module), les variables rmanentes dclares tant cependant seules traites comme
telles.
- Si une variable locale dune fonction est dclare comme variable rmanente, ceci na pas deffet.
La variable nest pas enregistre dans la zone mmoire rmanente ! Si une variable locale dune
fonction est dclare comme variable persistante, ceci na pas deffet non plus !
CoDeSys V2.3
5-5
L'diteur de dclaration
Exemple :
VAR CONSTANT
con1:INT:=12; (* premire constante *)
END_VAR
Mots cls
Les mots cls s'crivent en majuscule dans tous les diteurs. Il n'est pas permis de choisir des mots
cls comme nom de variable.
Dclaration de variables
La syntaxe d'une dclaration de variables se prsente comme suit:
<Identificateur> {AT <Adresse>}:<Type> {:= <Initialisation>};
Les parties entre accolades {} sont facultatives.
Un identificateur est une srie de lettres, chiffres et caractres de soulignement qui commence avec
une lettre ou un caractre de soulignement. En ce qui concerne les identificateurs (noms) de
variables, il faut veiller ce qu'ils ne comportent ni espace ni trma, ce qu'ils ne soient pas dclars
deux fois et ce qu'ils ne concident pas avec des mots-cls. Les variables peuvent s'crire
indiffremment en majuscules ou en minuscules, c.--d. que VAR1, Var1 et var1 reprsentent une
seule et mme variable. Les caractres de soulignement sont significants, c.--d. que "A_BCD" et
"AB_CD" sont interprts comme deux identificateurs diffrents. Les caractres de soulignement
successifs ne sont autoriss ni au dbut ni l'intrieur d'un identificateur. La longueur des
identificateurs ainsi que la zone significative sont illimites.
Toutes les dclarations de variables et tous les lments appartenant aux types de donnes peuvent
contenir des initialisations (attribution d'une valeur initiale). Celles-ci sont constitues d'un oprateur
d'affectation " := ". Dans le cas de variables ayant un type lmentaire, les initialisations sont des
constantes. L'initialisation par dfaut pour toutes les dclarations est 0.
Exemple :
var1:INT:=12; (* variable integer avec la valeur initiale 12*)
Si vous voulez placer directement une variable une adresse donne, vous devez dclarer la
variable avec le mot cl AT.
Pour entrer plus rapidement les dclarations, vous pouvez utiliser le mode raccourci.
Dans des blocs fonctionnels, les variables peuvent tre spcifies mme en utilisant des adresses
incompltes. Pour utiliser de telles variables dans une instance locale, vous devez effectuer l'entre
approprie dans la configuration des variables.
5-6
CoDeSys V2.3
5 - Les Editeurs
Mots cls
Vert
Commentaires
CoDeSys V2.3
5-7
L'diteur de dclaration
Rose
Rouge
Entre errone (p.ex. constante de temps non valable, mot cl crit en minuscule, )
Noir
Mode raccourci
L'diteur de dclaration de CoDeSys vous offre la possibilit d'utiliser le mode raccourci. Celui-ci est
activ lorsque vous terminez une ligne par <Ctrl>+<Entre>.
Les raccourcis suivant sont supports:
Tous les identificateurs dans une ligne, l'exception du dernier, sont changs en identificateurs
des variables intervenant dans la dclaration.
Le type de la dclaration est fix par le dernier identificateur de la ligne:
B ou BOOL fournit comme rsultat BOOL
I ou INT fournit comme rsultat INT
R ou REAL fournit comme rsultat REAL
S ou STRING fournit comme rsultat STRING
Si ces rgles ne suffisent pas dfinir un type, alors c'est le type BOOL qui est retenu, et le
dernier identificateur n'est pas utilis comme type (exemple 1).
Chaque constante est change en une initialisation ou en une longueur de chane de caractres,
en fonction du type de dclaration (exemples 2 et 3).
L'attribut AT est ajout une adresse (comme dans %MD12) (exemple 4).
Un texte aprs un point-virgule (;) est chang en commentaire (exemple 4).
Tous les autres caractres de la ligne sont ignors (comme par exemple le point d'exclamation
dans l'exemple 5).
Exemples:
Raccourci
Dclaration
A
A: BOOL;
A B I 2
A, B: INT := 2;
ST S 2; une chane
de caractres
X %MD12 R 5; nombre
rel
B !
B: BOOL;
Dclarer automatiquement
Si l'option Dclarer automatiquement a t slectionne, alors apparat dans chaque diteur, aprs
entre d'une variable non encore dclare, une bote de dialogue qui aide dclarer cette variable.
Dans la zone de liste modifiable Classe, oprez une slection pour dclarer cette variable, soit
comme variable locale (VAR), soit comme variable d'entre (VAR_INPUT), soit comme variable de
sortie (VAR_OUTPUT), soit comme variable d'entre-sortie (VAR_INOUT), soit comme variable
globale (VAR_GLOBAL).
Les options CONSTANT et RETAIN, PERSISTENT vous permettent de dfinir s'il s'agit d'une
constante ou d'une variable rmanente.
5-8
CoDeSys V2.3
5 - Les Editeurs
Le nom de variable entr dans l'diteur a t praffect au champ Nom, tandis que BOOL a t
praffect au champ Type. Le bouton vous permet d'accder la bote de dialogue de la liste de
slection pour l'dition, afin d'oprer une slection parmi tous les types possibles.
Dclaration dArrays (tableau):
Si vous slectionnez comme type de variable ARRAY (tableau), la bote de dialogue permettant la
saisie des 'Limites du tableau' saffiche' :
diteur de dclaration pour les tableaux
Pour chacune des trois dimensions (Dim.), vous pouvez saisir les limites du tableau (plage de valeurs
DINT !) sous Dmarrage et Fin en cliquant sur le champ correspondant. Le type de tableau est
donn dans le champ Type. Le bouton
slection pour l'dition.
En quittant la bote de dialogue des limites du tableau via le bouton OK, les donnes du champ 'Type'
dans la bote de dialogue de 'Dclaration de variable' sont remplies dans le format CEI. Exemple :
ARRAY [1..5, 1..3] OF INT
Vous pouvez entrer la valeur initiale de la variable dclarer dans le champ Valeur initiale. Si celle-ci
est un tableau ou une structure valable, vous pouvez ouvrir une bote de dialogue spciale pour
linitialisation par le biais du bouton
l'dition pour tous les autres types.
Dans la bote de dialogue dinitialisation pour un tableau, vous obtenez une liste de tous les lments
de tableau et vous pouvez ouvrir, laide dun clic de la souris derrire le ":=", un champ ddition
pour la saisie de la valeur initiale dun lment.
Dans la bote de dialogue dinitialisation pour une structure, les composants individuels sont
prsents sous la forme dune arborescence. Le type et la valeur initiale par dfaut sont donns entre
parenthses derrire le nom de la variable, suivi eux aussi de ":=". En cliquant avec la souris sur le
champ derrire ce ":=", vous ouvrez un champ ddition dans lequel vous pouvez saisir la valeur
initiale souhaite. Si un des composants est un tableau, vous pouvez, laide dun clic de la souris
CoDeSys V2.3
5-9
L'diteur de dclaration
sur le signe Plus devant le nom du tableau, faire apparatre les champs individuels du tableau et les
diter avec les valeurs initiales.
En quittant la bote de dialogue avec OK, linitialisation du tableau ou de la structure en format CEI
apparat dans le champ Valeur initiale de la bote de dialogue de dclaration.
Exemple : x:=5,champ:=2,3,struct2:=(a:=2,b:=3)
Dans le champ Adresse vous pouvez placer une variable dclarer sur une adresse CEI (dclaration
AT).
Le cas chant, entrez un Commentaire. Il est possible d'insrer des retours la ligne dans le
commentaire l'aide des touches "Ctrl" + "Entre".
Si vous appuyez sur OK, la bote de dialogue de dclaration se referme et la variable convertie en
syntaxe CEI est entre dans lditeur de dclaration appropri.
Remarque : La bote de dialogue de dclaration de variables peut galement tre ouverte en cas de besoin en
utilisant la commande "Editer" + "Dclarer automatiquement".
Si le curseur se trouve sur une variable, la fentre de dclaration automatique ainsi que les
paramtres relatifs aux variables peuvent tre ouverts en mode Hors ligne via les touches <Maj>
<F2>.
Numros de ligne dans l'diteur de dclaration
En mode hors ligne, un simple clic sur un numro de ligne donn suffit pour marquer toute la ligne de
texte correspondante.
Dans le mode En Ligne, un simple clic sur un numro de ligne donn permet d'afficher ou de masquer
la variable qu'elle contient, dans le cas o il s'agit d'une variable structure.
Dclarations sous forme de tableau
Si l'option Dclarations sous forme de tableau a t configure au niveau de la catgorie Editeur
ou, lorsquon se trouve dj dans lditeur de dclaration, par le biais du menu contextuel dans la
bote de dialogue Options, l'diteur de dclaration est propos sous forme de tableau. Comme pour
une cartothque, vous pouvez slectionner sparment les onglets correspondant aux diffrents
types de variables et diter les variables.
Pour chaque variable les champs suivants vous sont proposs, afin d'effectuer une saisie:
Nom:
Adresse:
Type:
Valeur initiale:
Commentaire:
Il est possible de basculer sans aucune difficult d'un type de visualisation l'autre. En mode En
ligne, on ne peut pas choisir dautres visualisations.
Introduire une nouvelle dclaration :
Utilisez la commande 'Insrer' 'Nouvelle dclaration' pour diter une nouvelle variable.
Pour diter une nouvelle variable, excutez la commande 'Insrer' 'Nouvelles dclarations' (voir cidessous). Une nouvelle ligne que vous pouvez diter est alors insre en dessous de la ligne o se
trouve le pointeur de la souris.
5-10
CoDeSys V2.3
5 - Les Editeurs
5.2.2
CoDeSys V2.3
5-11
L'diteur de dclaration
Dans le cas o une variable est affiche, tous ses composants sont affichs l'un aprs l'autre. La
variable est prcde d'un caractre moins. En double-cliquant une nouvelle fois ou en appuyant sur
la touche <Entre> les lments de la variable sont masqus et le signe plus apparat nouveau.
En appuyant sur la touche <Entre> ou en double-cliquant sur une variable un seul lment, la
bote de dialogue pour crire les variables s'ouvre. Celle-ci permet de modifier la valeur actuelle de la
variable. Dans le cas des variables boolennes il n'apparat pas de bote de dialogue; la valeur
change directement d'un tat l'autre.
La nouvelle valeur est affiche couleur turquoise derrire la variable entre les signes '<' et '>' et reste
inchange.
En donnant la commande 'En Ligne' 'Ecrire valeurs des variables', les valeurs slectionnes sont
affectes toutes les variables et ces dernires se colorent nouveau en noir.
En donnant la commande 'En Ligne' 'Forcer valeurs des variables', les valeurs slectionnes sont
affectes toutes les variables, jusqu' ce que la commande 'Arrter de forcer' soit effectue. Dans
ce cas, la couleur de la valeur de forage vire au rouge.
5.2.3
Instructions Pragma
Instruction Pragma
L'instruction Pragma sert au contrle du processus de compilation. Elle est donne dans une ligne de
programme comme texte supplmentaire ou encore dans sa propre ligne d'diteur de dclaration.
L'instruction Pragma est donne entre accolades (majuscules ou minuscules n'ont aucune
importance) :
{ <texte de l'instruction> }
Si le compilateur ne parvient pas interprter le texte de l'instruction, la Pragma entire est
considre comme tant un commentaire et est ignore. Un message vous est cependant donn :
"Ignore directive du compilateur "<texte de l'instruction>"!".
Selon le type et le contenu de la Pragma, celle-ci agit sur la ligne dans laquelle elle se trouve ou sur
les lignes suivantes et ce jusqu' ce qu'elle soit leve, que la mme pragma soit excute avec
d'autres paramtres, ou qu'on ait atteint la fin du fichier. On comprend ici sous le terme fichier : partie
de dclaration, partie d'implmentation, liste de variables globale, dclaration de types.
L'accolade d'ouverture peut suivre le nom d'une variable. Les accolades d'ouverture et de fermeture
doivent se trouver sur la mme ligne.
l'heure actuelle, les pragmas ci-dessous peuvent tre utilises dans CoDeSys :
Pragma {flag} pour l'initialisation, l'espionnage et la cration de symboles
Pragma {bitaccess...} pour accs binaire
Pragma {parameter..}, {template...}, {instance...} pour la cration d'entres dans le gestionnaire
des paramtres
Pragma {library ...} pour laffichage ou le non-affichage de parties de dclaration dune bibliothque
dans le gestionnaire de bibliothques
Pragma {flag} pour l'initialisation, l'espionnage et la cration de symboles
Syntax: {flag [<flags>] [off|on]}
Cette pragma peut influer les proprits d'une dclaration d'une variable:
<flags> peut tre une combinaison du flags figurantes ci dessous:
5-12
noinit:
nowatch:
CoDeSys V2.3
5 - Les Editeurs
noread:
La variable est exporte sans dun droit daccs lecture dans le fichier du
symboles.
nowrite:
La variable est exporte sans dun droit daccs criture dans le fichier du
symboles.
noread,
nowrite:
Avec la modification "on" la pragma fait effet sur toutes les dclarations subordonnes, jusqu'elle est
enleve par la pragma {flag off}, respectivement jusqu'elle est surimprime par une autre pragma
{flag <flags> on}.
Sans la modification "on" ou "off" la pragma seulement fait effet sur la dclaration actuelle (c'est la
dclaration qu'est termine par le point-virgule prochain).
Exemples par utilisation de la pragma {flag}:
Initialisation et espionnage de variables :
Variable "a" n'est pas initialise et n'est pas observe. Variable b n'est pas initialise:
VAR
a : INT {flag noinit, nowatch};
b : INT {flag noinit };
END_VAR
VAR
{flag noinit, nowatch on}
a : INT;
{flag noinit on}
b : INT;
{flag off}
END_VAR
CoDeSys V2.3
5-13
L'diteur de dclaration
VAR
{ flag noread on}
a : INT;
{ flag noread, nowrite on}
b : INT;
{flag off}
END_VAR
Les deux variables ne sont pas exportes dans le fichier des symboles:
{ flag noread, nowrite on }
VAR
a : INT;
b : INT;
END_VAR
{flag off}
VAR
{ flag noread, nowrite on }
a : INT;
b : INT;
{flag off}
END_VAR
La pragma agit de manire additionnelle sur toutes les dclarations subordonnes de variables.
Exemple: (toutes les modules utilises sont exportes avec droit daccs lecture et criture)
a : afb;
...
FUNCTION_BLOCK afB
VAR
b : bfb {flag nowrite};
c : INT;
END_VAR
...
FUNCTION_BLOCK bfB
VAR
d : INT {flag noread};
e : INT {flag nowrite};
END_VAR
Cette pragma vous permet de dfinir des accs binaires valides et symboliques des structures,
ces accs se faisant l'aide d'une constante globale. Ces symboles seront alors proposs dans la
liste de slection pour l'dition et la fonction Intellisense et utiliss pour la reprsentation de l'accs
binaire lors de l'espionnage dans l'diteur de dclaration. Les constantes globales utilises y sont
galement affiches.
Veuillez noter: L'option de projet 'Remplacer constantes' (catgorie Options de compilation) doit tre active !
Dans la dfinition de la structure, la pragma doit tre insre dans une ligne spare. Cette ligne
n'est pas clture par un point virgule.
Syntaxe: {bitaccess <Constante globale> <Numro de bit> '<Commentaire>'}
<Constante globale> : nom de la constante globale qui doit tre dfinie au sein d'une liste de
variables globales.
<Numro de bit> :
Pour voir un exemple, reportez-vous au chapitre Appendice B, oprandes dans CoDeSys, adressage
de bits au sein de variables.
5-14
CoDeSys V2.3
5 - Les Editeurs
Une pragma est donne entre des accolades. L'criture en majuscules ou en minuscules n'a
aucune importance. Si la pragma est ajoute des dclarations de variables "normales", elle doit
l'tre juste avant le point-virgule de clture de la dclaration de variable sur laquelle elle est
sense agir.
Les pragmas utilises dans des fentres VAR_CONFIG sont donnes chacune dans une seule
ligne et ne sont pas cltures par un point-virgule !
<name> (=nom): nom de la liste de paramtres dans le gestionnaire des paramtres. Si la liste de
variables n'existe pas encore, elle est automatiquement cre.
<key> (=cl): nom de l'attribut, c.--d. titre de colonne dans la liste des paramtres ; par exemple
"nom", "valeur", "niveau d'accs" etc.; les cls pouvant tre indiques sont fonction de la dfinition
du type de liste de paramtres. Toutes les dfinitions de cls dans les pragmas sont donnes lune
la suite de lautre dans des crochets, spares par des espaces. Respectez la syntaxe des
entres dans des listes dinstance pour des composants darray, de structures ou de blocs
fonctionnels (voir 3.).
<value> (=valeur): valeur selon laquelle l'attribut dfini par <cl> doit tre entr dans la liste.
Veuillez noter cet gard que les valeurs qui contiennent des espaces doivent tre donnes entre
guillemets doubles. Exemple : ...niveau d'accs="read only"...
Remarque: Les noncs de pragmas agissent dj ds que l'on passe autre chose (prcompilation), et donc
ds que l'on quitte l'diteur de dclaration. Les entres de pragmas incorrectes ne sont signales
qu' la compilation du projet.
Pour des variables, une entre peut tre cre dans une liste de paramtres de type 'Variables'
si elle est dclare comme suit dans une fentre VAR_CONFIG.(Si la liste de paramtres
n'existe pas encore, elle est cre.)
Syntaxe: {parameter list=<name> path=<path> [ <key>=<value> <key>=<value> ...autres cls ]
}
CoDeSys V2.3
5-15
L'diteur de dclaration
<path> chemin d'accs de la variable selon laquelle l'entre doit tre cre, p.ex.
"PLC_PRG.act1.var_x"
Exemple : pour la variable var_x, une entre est cre dans la liste des paramtres varlist1, et
xvar est saisi comme nom symbolique.
VAR_CONFIG
{parameter list=varlist1 path=PLC_PRG.act1.var_x [
END_VAR
name=xvar ] }
2. Entres dans des listes de paramtres de type 'Modle' partir de blocs fonctionnels et de
structures
Avec des dclarations de variables dans des blocs fonctionnels ou des structures, il est
possible de crer des entres dans des listes de paramtres de type 'Modle'. (Si le modle
n'existe pas encore, il est cr.)
Syntaxe: {template list=<name> [ <key>=<value> <key>=<value> ...autres cls ] }
Exemple : La variable strvar, lment de la structure stru1, doit tre entre dans le
gestionnaire des paramtres sous le nom (member) "struvar1" et avec niveau
d‘accs=low dans le modle "vorl1":
TYPE stru :
STRUCT
ivar:INT;
strvar:STRING{template list=vorl1 [member=struvar1 accesslevel=low]
};
END_STRUCT
END_TYPE
3. Entres dans des listes de paramtres de type 'Instance' (pour des variables d'array, de bloc
fonctionnel ou structures)
(a) partir de programmes et de listes de variables globales
On peut crer directement une liste d'instances dans le gestionnaire des paramtres lors de la
dclaration de variables d'array, de bloc fonctionnel ou de structure au sein d'un programme ou
d'une liste de variables globales.
Syntaxe:
{instance
list=<name>
template=<template>
baseindex=<index>
basesubindex=<subindex> [ <key>=<value> <key>=<value> ...autres cls ] }[ <key>=<value pour
le premier lment > <key>=<value pour le premier lment > ...autres cls pour le premier
lment ] | [ <key>=<value pour le deuxime lment > <key>=<value pour le deuxime lment
> ...autres cls pour le deuxime lment ] | [cls pour dautres lments]}
Pour les arrays, la cl "template" est dfinie par le biais du modle "ARRAY" qui est toujours
implicitement disponible, alors que pour les structures et les blocs fonctionnels, un modle
correspondant doit tre disponible dans le gestionnaire de paramtres et doit tre indiqu ici.
Dans la liste des paramtres, il est possible de prdfinir une entre individuelle pour chaque
lment darray, de structure ou de bloc fonctionnel. On peut par exemple donner une propre
dfinition [Nom=<Nom de llment>] pour chaque lment. Les dfinitions de cl des diffrents
lments (une paire de crochets par lment !) doivent tre crites lune la suite de lautre en les
sparant par un espace et se rapportent automatiquement aux lments dans lordre croissant de
lindex (Member). Sil ny a pas autant de dfinitions de cl que de nombre dlments ou de
variables dans larray, la structure ou le bloc fonctionnel, les lments restants reoivent les
mmes valeurs que le dernier lment dfini de faon individuelle (sauf pour la cl nom dans le
cas des arrays, voir ci-dessous) ! (Voir ci-dessous, exemple 1b).
Automatismes lis la cl nom lors de linsertion darrays dans des listes de paramtres :
5-16
Si vous ne dfinissez aucun nom pour un lment darray dans le pragma, llment concern
ainsi que tous les lments qui le suivent dans la liste des paramtres recevront
automatiquement les noms <Nom du module>_<Nom de la variable darray>_<Index darray
correspondant>.
Exemple : La variable darray ARRVAR [1..8] of INT dans le module PLC_PRG doit tre entre
dans une liste de paramtres au moyen dun pragma ; si aucune dfinition nest indique pour
CoDeSys V2.3
5 - Les Editeurs
la cl nom , les diffrents lments darray reoivent automatiquement dans la liste des
paramtres les noms de PLC_PRG_arrvar_1 PLC_PRG_arrvar_8 .
-
Exemples :
Exemple1a: Une variable d'array arr_1 est dclare comme suit, afin qu'un liste d'instances "arrinst" soit
cre dans le gestionnaire des paramtres (si elle n'est toutefois pas encore disponible) dans
laquelle les lments d'array doivent tre entrs; chaque lment doit tout d'abord tre entr
sous le nom symbolique xname_<Index> (ditable par aprs au sein de la liste), et le sous-index
doit tre incrment de 1, en partant de 0 (sous-index de base), pour chaque nouvelle entre.
Accesslevel=low est repris pour tous les lments.
arr_1:
ARRAY
[1..8]
OF
INT{instance
list=arrinst
baseindex=16#0 basesubindex=16#0 [name=xname ] };
template=ARRAY
Exemple1b: Pour une variable darray arr_1, diffrents noms ne sont prdfinis dans la liste des
paramtres que pour les lments 1 4, les lments 5 8 reoivent le mme nom que
llment 4 auquel est ajout un caractre de soulignement et lindex correspondant, cest--dire
xnom_5 xnom_8. Noubliez pas que vous devez introduire les dfinitions de cl
complmentaires pour un lment spcifique dans une mme paire de crochets, comme ici pour
le premier et le quatrime lment par rapport au niveau daccs:
arr_1:
ARRAY
[1..8]
OF
INT{instance
list=arrinst
template=ARRAY
baseindex=16#0 basesubindex=16#0[name=aname accesslevel=high] [name=bname]
[name=cname] [name=xname accesslevel=medium]};
Parmetermanager-Editor zu Example1a et Example1b, Insrer array dans la liste d'instances
Exemple1a,
CoDeSys V2.3
5-17
L'diteur de dclaration
Exemple1b:
Exemple2 : Une variable structure struvar de type stru1 est dclare comme suit, afin qu'une liste
d'instances "strulist" soit cre dans le gestionnaire des paramtres (si elle n'est toutefois pas
encore disponible), cette liste se basant sur le modle strulist_temp et contenant comme
entres les variables a,b,c de la structure existante stru1. Les variables ne reoivent pas
encore de nom symbolique l'insertion, le niveau d'accs est mis sur High, et l'index tel que
dfini par le modle est chaque fois incrment de 2. Veillez ce que le modle d'instance
indiqu strulist_temp soit prsent dans le gestionnaire des paramtres:
struvar:stru1{instance
list=strulist
template=strulist_templ
baseindex=16#2 basesubindex=16#0 [accesslevel=high] };
Pour l'exemple2, variable structure insre dans la liste d'instances
5-18
CoDeSys V2.3
5 - Les Editeurs
baseindex=16#2
END_VAR
Exemple : Ci-dessous, vous verrez la partie de dclaration dune bibliothque cr dans CoDeSys. Le
commentaire (* this is for all *) doit tre affich dans le gestionnaire de bibliothques aprs le
rattachement de la bibliothque au gestionnaire de bibliothques, mais (* but this is not for all *)
ne doit en revanche pas ltre. Les variables local et in2 doivent galement tre masques.
{library public}(*this is for all*){library private}(*this is not for all*)
{library public}
FUNCTION afun : BOOL
VAR_INPUT
in: BOOL;
END_VAR
{library private}
VAR
local: BOOL;
END_VAR
{library public}
VAR_INPUT
in2: BOOL;
{library private}
in3: BOOL;
CoDeSys V2.3
5-19
{library public}
END_VAR
'Insrer' 'Oprateur'
Cette commande entrane l'affichage dans une bote de dialogue de tous les oprateurs disponibles
dans le langage actuel.
Si un oprateur est slectionn et si la liste est ferme au moyen de OK, alors l'oprateur slectionn
est insr au niveau de la position actuelle du curseur.
(L'utilisation a lieu de la mme faon que dans la Liste de slection pour l'dition).
5-20
CoDeSys V2.3
5 - Les Editeurs
'Insrer' 'Oprande'
Cette commande entrane l'affichage dans une bote de dialogue de toutes les variables. Vous pouvez
opter pour la visualisation de la liste des variables globales, des variables locales ou des variables
systme.
Si un des oprandes est slectionn et si la bote de dialogue est ferme au moyen de OK, alors
l'oprande slectionn est insr au niveau de la position actuelle du curseur.
(L'utilisation a lieu de la mme faon que dans Liste de slection pour l'dition).
'Insrer' 'Fonction'
Cette commande entrane l'affichage, dans une bote de dialogue, de toutes les fonctions. Vous
pouvez opter pour la visualisation de la liste des fonctions dfinies par l'utilisateur ou de la liste des
fonctions standard.
Si une des fonctions est slectionne et si la bote de dialogue est ferme au moyen de OK, alors la
fonction slectionne est insre au niveau de la position actuelle du curseur. (L'utilisation a lieu de la
mme faon que dans la Liste de slection pour l'dition).
Si l'option Avec arguments a t slectionne dans la bote de dialogue, alors les variables d'entres
et de sorties requises par la fonction sont insres avec celle-ci.
'Insrer' 'Bloc fonctionnel'
Cette commande entrane l'affichage, dans une bote de dialogue, de tous les blocs fonctionnels.
Vous pouvez optez pour la visualisation de la liste des blocs fonctionnels dfinis par l'utilisateur ou de
la liste des blocs fonctionnels standard.
Si un des blocs fonctionnels est slectionn, et si la bote de dialogue est ferme au moyen de OK,
alors le bloc fonctionnel slectionn est insr au niveau de la position actuelle du curseur.
(L'utilisation a lieu de la mme faon que dans la Liste de slection pour l'dition).
Si l'option Avec arguments a t slectionne dans la bote de dialogue, alors les variables d'entre
et de sortie requises par le bloc fonctionnel sont insres avec celui-ci. Ceux-ci ne doivent cependant
pas obligatoirement tre affects.
Appel de module avec paramtres de sortie
Les paramtres de sortie d'un module appel peuvent directement tre affects lors de l'appel dans le
cas des langages textuels IL ou ST. Exemple : le paramtre de sortie out1 de afbinst est attribu la
variable a.
Langage IL :
Langage ST
afbinst(in1:=1, out1=>a);
Si le module est insr dans la fentre d'implmentation d'un module ST ou IL, en utilisant la liste de
slection pour l'dition (<F2>) et l'option Avec arguments, ce module sera automatiquement
reprsent avec ses paramtres dans cette syntaxe. Il n'est pas absolument ncessaire d'affecter les
paramtres.
Les diteurs littraux en mode En Ligne
Les fonctions En Ligne des diteurs sont Dfinir point d'arrt et Pas pas. Si l'on ajoute cela
l'espionnage, l'utilisateur dispose alors d'une fonctionnalit de dbogage comparable celle existant
pour un langage de programmation volu sous Windows.
Dans le mode En Ligne, la fentre de l'diteur littral est scinde verticalement en deux parties. Dans
la partie gauche de la fentre est situe le texte de programmation normal et dans la partie droite sont
visualises les variables, dont les valeurs sont modifies dans la ligne correspondante. La largeur des
fentres partielles peut tre modifie en faisant glisser la barre de sparation verticale laide de la
souris ou via la bote de dialogue 'Options despionnage'.
La visualisation est la mme que pour la partie de dclaration. Autrement dit, lorsque l'automate
programmable est en service, les valeurs instantanes des variables respectives sont visualises. Les
CoDeSys V2.3
5-21
valeurs structures (tableaux, structures ou instances de bloc fonctionnel) sont signales par un signe
plus plac devant l'identificateur.
En cliquant avec la souris sur le signe plus ou en appuyant sur la touche <Entre>, la variable est
affiche ou masque.
Lors de lespionnage dexpressions ou de position binaires d'une variable, veuillez noter : Dans le cas
des expressions, la valeur de lexpression entire est affiche. Exemple : a AND b saffiche en bleu ou
avec ":=TRUE" si a et b ont la valeur TRUE). Dans le cas de positions binaires d'une variable, la
position binaire concerne est espionne (p.ex. a.3 sera affich en bleu ou reprsent avec :=TRUE
si a la valeur 4).
Si vous maintenez le pointeur de souris pendant une courte dure sur une variable, le type et le
commentaire de la variable sont affichs dans une info-bulle.
'Extras' 'Options d'espionnage"
Avec cette commande vous pouvez configurer votre fentre d'espion. Si l'espionnage est effectu,
alors, l'intrieur des diteurs littraux, la fentre est scinde en une partie gauche, qui contient le
programme, et en une partie droite, dans laquelle sont espionnes toutes les variables contenues
dans la ligne de programme correspondante.
Vous pouvez configurer la Largeur que la zone d'espionnage doit occuper dans la fentre de texte,
ainsi que la Distance qui doit sparer deux variables d'espionnage dans une mme ligne. La
spcification de distance 1 correspond une hauteur de ligne dans la police de caractres choisie.
Veuillez noter que la largeur des fentres partielles peut aussi tre modifie en faisant glisser la barre
de sparation laide de la souris.
Bote de dialogue Options d'espionnage
5-22
CoDeSys V2.3
5 - Les Editeurs
Pour dfinir un point d'arrt, l'utilisateur doit cliquer avec la souris sur le champ de numrotation de la
ligne dans laquelle il souhaite dfinir un point d'arrt. Si le champ slectionn est une position de point
d'arrt, alors la couleur du champ de numrotation de ligne passe du gris fonc au bleu clair et le
point d'arrt est activ dans l'automate programmable.
De faon analogue, pour supprimer un point d'arrt, il faut cliquer sur le champ de numrotation de la
ligne contenant ce point d'arrt.
Il est galement possible d'opter pour la dfinition ou la suppression de points d'arrt via le menu ('En
Ligne' 'Point d'arrt actif/inactif'), via la touche de fonction <F9> ou via l'icne approprie de la barre
d'outils.
Comment dfinit-on un point d'arrt ?
Pour dfinir un point d'arrt, l'utilisateur doit cliquer avec la souris sur le champ de numrotation de la
ligne dans laquelle il souhaite dfinir un point d'arrt. Si le champ slectionn est une position de point
d'arrt, alors la couleur du champ de numrotation de ligne passe du gris fonc au bleu clair et le
point d'arrt est activ dans l'automate programmable.
Supprimer un point d'arrt
De faon analogue, pour supprimer un point d'arrt, il faut cliquer sur le champ de numrotation de la
ligne contenant ce point d'arrt.
Il est galement possible d'opter pour la dfinition ou la suppression de points d'arrts via le menu
('En Ligne' 'Point d'arrt actif/inactif'), via la touche de fonction <F9> ou via l'icne approprie de la
barre d'outils.
Que se produit-il au niveau du point d'arrt ?
Si l'automate programmable a atteint un point d'arrt, alors la section contenant la ligne avec le point
d'arrt est visualise l'cran. Le champ de numrotation de la ligne qui contient le point d'arrt est
colore en rouge. Dans l'automate programmable, le traitement du programme utilisateur est
suspendu.
Lorsque le programme est arrt au niveau d'un point d'arrt, le traitement du programme peut
reprendre au moyen de 'En Ligne' 'Dmarrer'.
CoDeSys V2.3
5-23
En outre, les commandes 'En Ligne' 'Etape individuelle sur' ou 'En Ligne' 'Etape individuelle dans' ne
permettent d'atteindre que la position de point d'arrt suivante. Si l'instruction sur laquelle on est
arrt est une instruction CAL ou encore si un appel de fonction est prsent dans les lignes qui
prcdent la position de point d'arrt suivante, alors, soit on saute cet appel au moyen de 'Etape
individuelle sur', soit on dvie dans le module appel au moyen de 'Etape individuelle dans'.
Numros de ligne de l'diteur littral
Les numros de ligne de l'diteur littral indiquent le numro de chaque ligne de texte prsente dans
l'implmentation d'un module.
En mode hors ligne, un simple clic sur un numro de ligne donn suffit pour marquer toute la ligne de
texte correspondante.
Dans le mode En Ligne, la couleur de fond du numro de ligne indique l'tat de chaque ligne en ce
qui concerne les points d'arrt:
gris fonc: cette ligne est une position possible de point d'arrt.
bleu clair: un point d'arrt a t dfini dans cette ligne.
rouge: l'excution du programme a atteint cet endroit.
Dans le mode En Ligne, un simple clic avec la souris modifie l'tat de la ligne en ce qui concerne le
point d'arrt.
5.3.2
Tous les diteurs pour modules sont constitus d'une partie de dclaration et d'un corps. Ceux-ci sont
spars entre eux par une barre de fractionnement.
L'diteur IL est un diteur littral qui comporte les fonctionnalits courantes des diteurs littraux de
Windows. Vous trouvez les commandes les plus importantes dans le menu contextuel (touche droite
de la souris ou <Ctrl>+<F10>).
Un appel dinstance sur plusieurs lignes est possible. Exemple:
5-24
CoDeSys V2.3
5 - Les Editeurs
CAL CTU_inst(
CU:=%IX10,
PV:=(
LD A
ADD 5
)
)
Pour obtenir des informations sur le langage IL, reportez vous au chapitre 2.2.1, "Liste d'instructions
(langage IL)".
Contrle de droulement
Avec la commande 'En Ligne' 'Contrle de droulement', vous pouvez insrer, l'intrieur de l'diteur
IL, un nouveau champ dans la partie gauche de chaque ligne. Ce champ assure la visualisation du
contenu de l'accumulateur.
Pour obtenir des informations sur l'diteur IL en mode En Ligne, reportez vous au paragraphe "Les
diteurs littraux en mode En Ligne"
5.3.3
Tous les diteurs pour modules sont constitus d'une partie de dclaration et d'un corps. Ceux-ci sont
spars entre eux par une barre de fractionnement.
L'diteur ST est un diteur littral qui comporte les fonctionnalits courantes des diteurs littraux de
Windows. Vous trouvez les commandes les plus importantes dans le menu contextuel (touche droite
de la souris ou <Ctrl>+<F10>).
Pour obtenir des informations sur l'diteur ST En Ligne, reportez vous au paragraphe "Les diteurs
littraux en mode En Ligne"
Pour obtenir des informations sur le langage, reportez vous au chapitre 2.2.1, "Littral structur
(langage ST)".
CoDeSys V2.3
5-25
Zoom
Des objets tels que modules, actions, transitions etc., en langage SFC, LD, FBD, CFC, et
apparaissant dans des visualisations, peuvent tre agrandis ou rduits au moyen dune fonction de
zoom. Tous les lments contenus dans la fentre de la partie implmentation sont repris, et la partie
dclaration reste inchange.
Chaque objet est affich par dfaut une valeur de zoom de 100%. La valeur rgle pour le zoom est
enregistre dans le projet comme caractristique dobjet.
Les impressions de la documentation relative au projet se font toujours en reprsentation 100%.
Le degr de zoom peut tre rgl par le biais dune liste de slection dans la barre d'outils. Des
valeurs comprises entre 25 et 400% peuvent tre directement slectionnes; des valeurs entre 10 et
500% peuvent tre saisies manuellement.
La possibilit de slection dune valeur de zoom nest possible que lorsque le curseur se trouve sur un
objet cr laide dun diteur graphique ou sur un objet de visualisation.
Les positions du curseur peuvent aussi tre slectionnes ltat zoom, et vous pouvez galement y
dplacer le curseur laide des touches directionnelles. La taille du texte est fonction du degr de
zoom et de la taille de la police.
Lexcution de toutes les options disponibles chez les diteurs (p.ex. linsertion dune bote) en
fonction de la position du curseur est possible quel que soit le degr de zoom et en fonction de celuici.
Dans le mode En ligne, chaque objet est reprsent selon le degr de zoom spcifi, et toutes les
fonctions sont disponibles sans restrictions.
Vous pouvez agrandir ou rduire un objet en utilisant IntelliMouse : appuyez sur la touche <Ctrl> et
tournez en mme temps la roulette vers lavant ou vers larrire.
Rseau
Avec les diteurs graphiques LD et FBD, le programme est agenc dans une liste de rseaux.
Chaque rseau est caractris par un numro courant dans la partie gauche et contient une structure
visualisant une expression logique ou arithmtique, un appel de programme, fonction ou bloc
fonctionnel, un saut ou une instruction return.
Etiquettes de saut
A chaque rseau correspond une tiquette de saut, qui peut ventuellement tre laisse vide. Pour
diter cette tiquette, il faut cliquer sur la premire ligne du rseau, situe directement ct du
numro de rseau. Entrez prsent une tiquette, suivie du signe deux-points.
Commentaires de rseau, Mises en Page, 'Extras' 'Options'
Il est possible dattribuer un commentaire de plusieurs lignes chaque rseau. La bote de dialogue
'Options du langage blocs fonctionnels et du langage contacts', accessible via la commande
'Extras' 'Options', permet de procder aux rglages quant aux commentaires.
5-26
CoDeSys V2.3
5 - Les Editeurs
Longueur maximale du commentaire: nombre maximal de lignes devant tre disponibles pour un
commentaire de rseau (ici, la valeur par dfaut est 4).
Longueur minimale du commentaire: nombre minimal de lignes devant en principe tre laisses
vides ou tre affiches pour les commentaires. Supposons que 2 soit la valeur configure ; deux
lignes de commentaires vides sont prsentes au dbut de chaque rseau, aprs la ligne dtiquette.
Ici, la valeur par dfaut est 0, ce qui prsente lavantage que plus de rseaux peuvent tre disposs
dans la zone dcran.
Si la taille minimale de commentaire de rseau est suprieure 0, il suffit simplement, pour entrer un
commentaire, de cliquer sur la ligne de commentaire et d'entrer le commentaire. Si ce n'est pas le
cas, il faut dabord slectionner le rseau qui doit faire lobjet du commentaire, avant dinsrer la ligne
de commentaire au moyen de 'Insrer' + 'Commentaire'. Les commentaires sont visualiss en gris,
la diffrence du texte de programmation.
Look Feel alternative pour LD: Les options suivantes permettent une visualisation alternative des
rseaux.
Commentaires par contact : (uniquement pour le schma contacts) : Si cette option est active,
des commentaires peuvent tre attribus des contacts et des bobinages individuels. Introduisez
dans le champ Lignes pour commentaire de la variable le nombre de lignes qui doivent tre
prvues et affiches cet effet. Suite quoi un champ saffiche, rserv au commentaire relatif au
contact ou au bobinage et dans lequel vous pouvez saisir du texte.
Si cette option de commentaire par contact est active, vous pouvez galement dfinir le nombre de
lignes (Lignes pour texte de la variable:) utilis pour le nom de la variable de contact ou de
bobinage, de telle sorte que des noms plus longs puissent le cas chant tre reprsents sur
plusieurs lignes. Dans lexemple suivant, 2 lignes sont consacres pour le commentaire de contact et
1 ligne pour le texte de la variable.
CoDeSys V2.3
5-27
Exemple: Rseau avec affichage du commentaire des variables et de l'adresse de chaque contact
Rseaux avec mises en page (uniquement pour le schma contacts) : Si cette option est active,
les rseaux sont munis de mises en page ds que la largeur de fentre rgle ne permet plus de
visualiser tous les lments du rseau.
Exemple: Rseau avec mises en page
Remplacer par symbole, apres entre de ladresse: Si cette option est active, vous pouvez
introduire une :adresse (p. ex. %QB4 ) au niveau du module, contact ou bobinage et celle-ci sera
remplace, immdiatement aprs lentre, par le nom de la variable attribue cette adresse. Si
aucune variable nest attribue une adresse, cette dernire saffiche telle quelle.
Mettre commentaire de symbole par dfaut au commentaire de contact : (uniquement pour le
schma contacts) : Si cette option est active, le commentaire dfini pour la variable utilise dans
sa dclaration est affich dans le champ de commentaire du contact ou du bobinage, o vous pourrez
poursuivre son traitement (voir ci-dessus, illustration loption 'Commentaires par contact'). Pour ce
faire, il faut toutefois que loption 'Commentaires par contact' (voir ci-dessus) soit, elle aussi, active.
Veuillez noter : Un commentaire dj entr localement dans le champ de commentaire est
automatiquement remplac par le commentaire de la variable, le cas chant par des espaces si
aucun commentaire nest disponible dans la dclaration de variable !
Afficher adresse du symbole (uniquement pour le schma contacts) : Si la variable attribue
une adresse est entre au niveau du contact ou du bobinage, celle-ci sera galement affiche en
dessus du nom de la variable (voir ci-dessus, illustration loption 'Commentaires par contact').
Afficher commentaires de variables par reseau dans lexpression : Si cette option est active,
une ligne par rseau saffiche pour chaque variable utilise dans le rseau, cette ligne contenant le
nom de la variable, ladresse, le type de donne ainsi que le commentaire de la variable comme celuici est dfini dans la dclaration de variable. Ceci peut tre utile pour documenter (imprimer) le projet.
Exemple:
5-28
CoDeSys V2.3
5 - Les Editeurs
Pour insrer un nouveau rseau dans l'diteur FBD ou dans l'diteur LD, il faut slectionner la
commande 'Insrer' 'Rseau (derrire)' ou 'Insrer' 'Rseau (devant)', selon que l'on souhaite
insrer le nouveau rseau devant ou derrire le rseau actuel. On modifie le rseau actuel en cliquant
avec la souris sur le numro de rseau. Ce rseau est reprable grce au rectangle en pointill situ
en dessous du numro. En actionnant la touche <Maj> et en cliquant avec la souris sur un rseau
prcis, on slectionne l'ensemble des rseaux situs dans la zone comprise entre le rseau actuel et
le rseau sur lequel on a cliqu.
Les diteurs de rseaux en mode En Ligne
Dans les diteurs FBD et LD, on peut dfinir des points d'arrt uniquement au niveau des rseaux. Le
champ de numrotation du rseau pour lequel on a dfini un point d'arrt est visualis en bleu. Le
traitement s'arrte avant le rseau qui contient le point d'arrt. Dans ce cas le champ de numrotation
du rseau est visualis en rouge. Dans le cas d'une excution pas pas, la progression se fait en
sautant de rseau en rseau.
Toutes les valeurs sont espionnes au niveau des entres et sorties des modules (rseaux).
Lors de lespionnage dexpressions ou de position binaires d'une variable, veuillez noter : Pour les
expressions, p.ex. a AND b comme condition de transition ou entres d'un bloc fonctionnel, la valeur
de lexpression complte est toujours affiche (a AND b saffiche en bleu ou est reprsente par
":=TRUE" si a et b ont la valeur TRUE). Dans le cas de positions binaires d'une variable, la position
binaire concerne est espionne (p.ex. a.3 sera affich en bleu ou reprsent avec :=TRUE si a a la
valeur 4).
Vous pouvez lancer le contrle de droulement au moyen de la commande de menu 'En Ligne'
'Contrle de droulement'. Ce contrle vous permet d'examiner les valeurs actuelles qui sont
vhicules l'intrieur des rseaux au moyen des lments de liaison. Lorsque les lments de
liaison ne vhiculent aucune valeur de type boolen, la valeur est affiche dans un champ
spcialement insr cet effet. Les champs despion pour les variables qui ne sont pas utilises
(p.ex. la fonction SEL) sont ombrs en gris. Si les lments de liaison vhiculent des valeurs de type
boolen, et plus prcisment la valeur TRUE, alors elles sont colores en bleu. Cela permet de suivre
le flux d'informations lorsque l'automate programmable est en cours d'excution.
Si vous maintenez le pointeur de souris pendant une courte dure sur une variable, le type et le
commentaire de la variable sont affichs dans une info-bulle.
CoDeSys V2.3
5-29
5.4.2
L'diteur FBD est un diteur graphique. Il fonctionne avec une liste de rseaux, o chaque rseau
contient une structure visualisant une expression logique ou arithmtique, un appel de bloc
fonctionnel, un appel d'une fonction, un appel d'un programme, un saut ou une instruction Return.
Notez que pour un module cr En ou Hors ligne dans le langage FBD, il est possible de basculer
entre la visualisation au sein de l'diteur FBD ou LD (voir ci-dessous 'Extras' 'Affichage'). Notez
galement les possibilits de rglage disponibles pour les commentaires, la saisie dadresses, etc.
par le biais de bote de dialogue Options, voir chapitre 5.4.1, Commentaires de rseau, Mises en
Page, 'Extras' 'Options'.
Vous trouvez les commandes les plus importantes dans le menu contextuel (touche droite de la souris
ou <Ctrl>+<F10>).
Positions du curseur en langage FBD
Le curseur peut se positionner sur n'importe quelle lment de texte. Le texte slectionn est affich
sur fond bleu et peut prsent tre modifi.
Par ailleurs, la position actuelle du curseur est caractrise par un rectangle en pointills. Voici une
numration des positions de curseurs possibles, illustres par un Exemple :
1) Chaque champ de texte (la position du curseur potentielle est encadre en noir):
2) Chaque entre:
5-30
CoDeSys V2.3
5 - Les Editeurs
4) Les sorties, si elles sont suivies par une affectation ou par un saut:
6) Derrire l'objet situ le plus droite dans chaque rseau ("dernire position du curseur", il s'agit de
la position prise par le curseur lorsqu'un rseau a t slectionn):
Raccourci : <Ctrl>+<B>
Cette commande permet d'insrer des oprateurs, fonctions, blocs fonctionnels et programmes. Tout
dabord, un oprateur "AND" est toujours insr par dfaut. Celui-ci peut tre transform en n'importe
quel autre oprateur, fonction, bloc fonctionnel ou programme en slectionnant et en crasant le texte
type ("AND"). La liste de slection pour ldition (<F2>) vous permet de slectionner le module
souhait. Si le module que vous venez de slectionner possde un nombre minimal dentres
diffrent, alors celles-ci sont rattaches. Si le nouveau module possde un nombre maximal dentres
moindre, alors les dernires entres sont supprimes.
Pour les fonctions et les blocs fonctionnels, les noms formels des entres et sorties sont affichs.
Il existe un champ dinstance ditable au dessus de la bote pour les blocs fonctionnels. Si, en
modifiant le texte type, vous appelez un autre bloc fonctionnel qui nest pas connu, une bote
doprateur saffiche avec deux entres ainsi que le type. Si vous slectionnez le champ dinstance,
vous pouvez appeler via la touche <F2> la liste de slection pour ldition avec les catgories pour la
slection de variables.
Le nouveau module sera insr en fonction de la position slectionne (voir Position de curseur).
CoDeSys V2.3
5-31
Si une entre est slectionne, alors Bote est insr devant cette entre. La premire entre de cet
Box est relie la branche situe gauche de l'entre slectionne. La sortie du nouvel Box est
relie l'entre slectionne.
Si une sortie est slectionne, alors Bote est insr derrire cette sortie. La premire entre de cet
Bote est relie la sortie slectionne. La sortie du nouvel Box est relie la branche laquelle tait
relie la sortie slectionne.
Si un bote, une fonction ou un bloc fonctionnel est slectionn (position du curseur 3), alors l'ancien
lment est remplac par le nouvel bote. Les branches sont relies autant que possible comme elles
l'taient avant le remplacement. Si l'ancien lment a plus d'entres que le nouveau, alors les
branches qui ne peuvent tre relies un lment sont supprimes. La mme rgle s'applique aux
sorties.
Si un saut ou une instruction Return est slectionne, alors l'oprateur est insr avant ce saut ou
cette instruction Return, selon le cas. La premire entre de bote est relie la branche situe
gauche de l'lment slectionn. La sortie de bote est relie la branche situe droite de l'lment
slectionn.
Si la dernire position de curseur d'un rseau est slectionne (position du curseur 6), alors bote est
insr derrire le dernier lment. La premire entre de bote est relie la branche situe gauche
de la position slectionne.
Box insr est obligatoirement un lment AND. Celui-ci peut tre transform en n'importe quel autre
bote en slectionnant et en crasant le texte. La liste de slection pour l'dition vous permet de
slectionner bote de votre choix dans la liste des botes supportes. Si la nouvelle bote possde un
nombre minimal d'entres diffrent, alors les entres sont rattaches. Si, le nouvel oprateur possde
un nombre maximal d'entres moindre, alors les dernires entres sont supprimes, ainsi que les
branches situes devant celles-ci.
Toutes les entres de bote qui n'ont pas pu tre relies sont dfinies avec le texte "???". Il faut
cliquer sur ce texte et le remplacer par la constante ou la variable voulue.
Si une branche est situe droite du module insr, elle est affecte la premire sortie de module.
Pour le reste, les sorties ne font pas lobjet dune dfinition.
'Insrer' 'Affectation'
Icne :
Raccourci : <Ctrl>+<A>
Raccourci : <Ctrl>+<L>
5-32
CoDeSys V2.3
5 - Les Editeurs
Lorsqu'un saut a t insr, il est ensuite possible de slectionner le texte existant "???" et de le
remplacer par l'tiquette de saut correspondant au saut.
'Insrer' 'Return'
Icne :
Raccourci : <Ctrl>+<R>
Raccourci : <Ctrl>+<U>
Cette commande insre une entre d'oprateur. Le nombre des entres est variable pour un grand
nombre d'oprateurs (p.ex. l'lment ADD peut possder deux ou davantage d'entres).
Pour ajouter une entre un oprateur de ce genre, il faut slectionner, soit l'entre devant laquelle
une nouvelle entre doit tre insre (position du curseur 1), soit, lorsqu'une entre doit tre insre
en dessous, l'oprateur lui-mme (position du curseur 3).
L'entre insre est dfinie avec le texte "???". Il faut cliquer sur ce texte et le remplacer par la
constante ou la variable voulue. Pour ce faire, vous pouvez galement utiliser la liste de slection
pour l'dition. Notez la possibilit dentrer des adresses si le rglage correspondant a t effectu
dans la bote de dialogue Options (voir chapitre 5.4.1, Commentaires de rseau, Mises en Page,
'Extras' 'Options').
'Insrer' 'Sortie'
Icne :
Cette commande permet d'ajouter une affectation existante une nouvelle affectation. Cette
fonctionnalit permet de crer des chelles d'affectation, c.--d. que la valeur actuellement contigu
la ligne est affecte diffrentes variables.
Si la jonction au-dessus d'une affectation ou si la sortie prcdant immdiatement celle-ci est
slectionne, alors une nouvelle affectation est insre la suite des affectations existantes.
Si la jonction prcdant immdiatement une affectation est slectionne (position du curseur 4), alors
une nouvelle affectation est insre devant la premire.
La sortie insre est dfinie avec le texte "???". Il faut cliquer sur ce texte et le remplacer par la
variable de votre choix. Pour ce faire, vous pouvez galement utiliser la liste de slection pour
l'dition. Notez la possibilit dentrer des adresses si le rglage correspondant a t effectu dans la
bote de dialogue Options (voir chapitre 5.4.1, Commentaires de rseau, Mises en Page, 'Extras'
'Options').
'Insrer' 'Entre de module'
Raccourci : <Ctrl> + <U>
Cette commande insre une entre de module. Le nombre des entres est variable pour un grand
nombre d'oprateurs (p.ex. l'lment ADD peut possder deux ou davantage d'entres).
Pour ajouter une entre un module de ce genre, il faut slectionner la module lui-mme (position du
curseur 1).
CoDeSys V2.3
5-33
'Insrer' 'Etiquette'
Icne :
Raccourci : <Ctrl>+<L>
Cette commande permet d'insrer une tiquette. Il est possible de slectionner le texte existant "???"
et de le remplacer par une tiquette de saut. En mode En ligne, une tiquette RETURN (RETOUR)
est automatiquement insre pour le marquage de la fin du module.
L'tiquette de saut est insre l'aide de la commande 'Insrer' 'Etiquette'.
'Extras' 'Ngation'
Icne :
Raccourci : <Ctrl>+<N>
Cette commande vous permet d'inverser des entres, des sorties, des sauts ou des instructions
RETURN. Le symbole utilis pour la ngation est un petit cercle sur une liaison.
Si une entre a t slectionne, alors la valeur de celle-ci est inverse.
Si une sortie a t slectionne, alors la valeur de celle-ci est inverse.
Si un saut ou une instruction Return est marque, alors la valeur de l'entre de ce saut ou de cette
instruction, selon le cas, est inverse.
Une ngation peut tre annule en inversant la valeur une nouvelle fois.
'Extras' 'Verrouillage/Dverouillage'
Icne :
Cette commande permet de dfinir des sorties SET (verrouillage) et des sorties RESET
(dverrouillage). Une porte avec une sortie SET est visualise par un [S], tandis qu'une porte avec
une sortie RESET est visualise par un [R].
Sorties Verrouillage/Dverouillage en langage FBD
Si la porte correspondant une sortie SET fournit comme valeur TRUE, alors la sortie prend la valeur
TRUE et elle garde cette valeur mme si la porte reprend la valeur FALSE.
Si la porte correspondant une sortie RESET fournit comme valeur TRUE, alors la sortie prend la
valeur FALSE et elle garde cette valeur mme si la porte reprend la valeur FALSE.
Si la commande est excute plusieurs fois, alors la sortie devient tour tour une sortie SET, une
sortie RESET et une sortie normale.
'Extras' 'Affichage'
Cette commande vous permet de slectionner, pour un module cr avec l'diteur de schmas en
blocs fonctionnels, une reprsentation par le biais de ce mme diteur ou avec l'diteur de langage
contacts. Une telle fonction est possible en mode En ligne et en mode Hors ligne.
Zoom sur module appel
Cette commande est disponible dans le menu contextuel (<F2>) ou dans le menu Extras, pour autant
que le curseur se trouve sur le nom du module appel dans les diteurs littraux, ou si la bote dun
module est marque dans les diteurs graphiques. Le zoom ouvre le module concern dans sa
fentre dditeur. S'il s'agit d'un module issu d'une bibliothque, alors le gestionnaire de bibliothques
est appel et le module correspondant est affich.
5-34
CoDeSys V2.3
5 - Les Editeurs
CoDeSys V2.3
5-35
5.4.3
Tous les diteurs pour modules sont constitus d'une partie de dclaration et d'un corps. Ceux-ci sont
spars entre eux par une barre de fractionnement.
L'diteur LD est un diteur graphique. Vous trouvez les commandes les plus importantes dans le
menu contextuel (touche droite de la souris ou <Ctrl>+<F10>).
Pour obtenir des informations sur les lments de l'diteur, reportez vous au chapitre 2.2.6, Langage
contacts (LD).
Positions du curseur dans l'diteur LD
Vous trouvez ci-dessous les endroits o le curseur peut se positionner, sachant que les appels de
blocs fonctionnels et de programmes peuvent tre traits comme des contacts. Les modules avec
entres "EN" et les modules qui y sont rattachs sont traits comme dans le schma en blocs
fonctionnels. Vous trouvez des informations sur l'dition de ces lments de rseau dans le chapitre
2.2.4 sur l'diteur FBD.
1. Chaque champ de texte (la position du curseur potentielle est encadre en noir)
5-36
CoDeSys V2.3
5 - Les Editeurs
3. Chaque bobinage
Si, en revanche, vous faites glisser llment sur le marquage (nom de variable) dun autre lment,
celui-ci sera reprsent sur fond vert. Si vous relchez ensuite la souris, lancien nom sera remplac
par le nom de llment gliss . Si de plus ladresse et le commentaire sont affichs, ceux-ci sont
galement copis.
'Insrer' 'Reseau (devant)'
Icne :
Cette commande permet dinsrer un autre rseau dans lditeur. Si dautres rseaux existent dj
dans lditeur, alors le nouveau rseau est insr devant le rseau momentanment slectionn.
'Insrer' 'Reseau (aprs)'
Icne :
Cette commande permet dinsrer un autre rseau dans lditeur. Si dautres rseaux existent dj
dans lditeur, alors le nouveau rseau est insr aprs le rseau momentanment slectionn.
'Insrer' 'Contact'
Icne :
Raccourci : <Ctrl>+<O>
Dans l'diteur LD, cette commande vous permet d'insrer un contact devant l'endroit slectionn dans
le rseau.
Si l'endroit slectionn est un bobinage ou l'lment de liaison entre les contacts et les bobinages ,
alors le nouveau contact est mont en srie sur le montage contacts existant.
CoDeSys V2.3
5-37
Le contact est prdfini avec le texte "???". Vous pouvez cliquer sur ce texte et le remplacer par la
nom de la variable ou la constante de votre choix. Pour ce faire, vous pouvez galement utiliser la
liste de slection pour l'dition. Notez la possibilit dentrer des adresses si le rglage correspondant
a t effectu dans la bote de dialogue Options (voir chapitre 5.4.1, Commentaires de rseau, Mises
en Page, 'Extras' 'Options').
Si vous avez, galement dans la bote de dialogue Options, activ loption Commentaires par
contact, vous pouvez dfinir un nombre prcis de Lignes pour texte de la variable en plus du
nombre souhait de Lignes pour commentaire de la variable. Ceci est particulirement
recommand pour des noms de variables assez longs, et permet de maintenir un rseau compact
lhorizontale.
Notez galement la possibilit de loption Rseaux avec mise en page que vous pouvez activer via
'Extras' 'Options'.
'Insrer' 'Contact (ni)'
Icne :
Cette commande permet dinsrer un contact dj ni. Elle est semblable aux commandes 'Insrer'
'Contact' et 'Extras' Ngation', dont la combinaison permet galement dobtenir un contact ni.
'Insrer' 'Contact parallle'
Icne :
Raccourci : <Ctrl>+<R>
Dans l'diteur LD, cette commande vous permet d'insrer un contact en parallle par rapport
l'endroit slectionn dans le rseau.
Si l'endroit slectionn est un bobinage ou la liaison entre les contacts et les bobinages, alors le
nouveau contact est mont en parallle sur l'ensemble du montage contacts existant.
Le contact est prdfini avec le texte "???". Vous pouvez cliquer sur ce texte et le remplacer par la
variable ou la constante de votre choix. Pour ce faire, vous pouvez galement utiliser la liste de
slection pour l'dition.
Il est possible de reprsenter un nom de variable sur plusieurs lignes ainsi qu'un commentaire propre
pour le contact. Voyez cet effet 'Insrer' 'Contact'.
'Insrer' 'Contact parallle (ni)
Icne :
Cette commande permet dinsrer un contact en parallle dj ni. Elle est semblable aux
commandes 'Insrer' 'Contact' parallle et 'Extras' Ngation' dont la combinaison permet galement
dobtenir un contact en parallle dj ni.
'Insrer' 'Bobinage'
Icne :
Raccourci : <Ctrl>+<L>
Dans l'diteur LD, cette commande vous permet d'insrer un bobinage mont en parallle sur les
bobinages existants.
Si l'endroit slectionn est une liaison entre les contacts et les , alors le nouveau bobinage est insr
en dernier par rapport aux prcdents. Si l'endroit slectionn est un bobinage , alors le nouveau
bobinage est insr directement au dessus du premier.
Le bobinage est prdfini avec le texte "???". Vous pouvez cliquer sur ce texte et le remplacer par la
variable de votre choix. Pour ce faire, vous pouvez galement utiliser la liste de slection pour
l'dition.
Il est possible de reprsenter un nom de variable sur plusieurs lignes ainsi qu'un commentaire propre
pour le bobinage. Voyez cet effet 'Insrer' 'Contact'.
5-38
CoDeSys V2.3
5 - Les Editeurs
Cette commande permet dinsrer un bobinage Set (voir chap.2.2.6). Elle est semblable aux
commandes 'Insrer' 'Bobinage' et 'Extras' 'Set/Reset', dont la combinaison permet galement
dobtenir un bobinage Set.
'Insrer' 'Bobinage 'Reset'
Icne :
Cette commande permet dinsrer un bobinage Reset (voir chap. 2.2.6). Elle est semblable aux
commandes 'Insrer' 'Bobinage' et 'Extras' 'Set/Reset', dont la combinaison permet galement
dobtenir un bobinage Reset.
'Insrer' 'Bloc fonctionnel'
Icne :
Raccourci : <Ctrl>+<B>
Vous utilisez cette commande pour insrer un bloc fonctionnel ou un programme sous forme de
module. Il faut que la liaison entre les contacts et les bobinages soit marque (position du curseur 4),
ou un bobinage (position du curseur 3). La liste de slection pour ldition souvre, vous permettant de
choisir entre les modules standard disponibles ainsi que des modules que vous avez personnellement
dfinis.
La premire entre du module frachement insr est place sur la liaison dentre et la premire
sortie est place sur la liaison de sortie, ce qui implique que ces variables doivent toujours tre de
type BOOL. Toutes les autres entres et sorties du module sont prdfinies avec le texte "???". Ces
textes prdfinis peuvent tre remplacs par des constantes, des variables ou des adresses. Pour ce
faire, vous pouvez galement utiliser la liste de slection pour ldition.
Pour lentre ventuelle dadresses, la reprsentation sur plusieurs lignes du nom de la variable ou
lentre dun commentaire propre pour le bloc fonctionnel, veuillez vous rfrer la description des
options du schma en blocs fonctionnels et du schma contacts.
Modules avec entres EN
Si, avec votre rseau LD, vous voulez utiliser des appels d'autres modules pour la commande, alors
vous devez insrer un module avec une entre EN. Un tel module est mont en parallle sur les
bobinages. Avec ce module comme point de dpart, vous pouvez dvelopper le rseau comme dans
le cas du schma en bloc fonctionnels. Les commandes concernant les oprations d'insertion au
niveau d'un module EN sont accessibles dans l'option 'Insrer' 'Ajouter au module'.
Un oprateur, un bloc fonctionnel, une fonction ou une programme dot d'une entre EN se
comporte comme le module correspondant dans le schma en blocs fonctionnels, la diffrence que
son excution est commande par l'entre EN. Cette entre est branche sur la liaison entre les
bobinages et les contacts. Si cet lment vhicule l'information "ON", alors le module est valu.
Si un module dot d'une entre EN a dj t cr, il est possible de crer partir de celui-ci un
rseau semblable ceux existants dans le schma en blocs fonctionnels. Cela signifie qu'un module
EN peut recevoir un flux de donnes des oprateurs, des fonctions ou des blocs fonctionnels
courants et qu'en retour il peut transmettre des donnes des modules courants de ce type.
Par consquent, si vous voulez programmer un rseau la faon du schma en blocs fonctionnels
dans l'diteur LD, il vous suffit de commencer par insrer un oprateur EN dans un nouveau
rseau, avant de dvelopper votre rseau partir de ce module, comme vous le feriez dans le
schma en blocs fonctionnels. Un rseau constitu de la sorte se comporte de la mme faon qu'un
rseau semblable dans le schma en blocs fonctionnels.
CoDeSys V2.3
5-39
Cette commande vous permet d'insrer un bloc fonctionnel, une fonction ou une programme avec
entre EN dans un rseau LD. Cette commande vous permet d'insrer un oprateur avec entre
EN dans un rseau LD.
Il faut que l'endroit slectionn soit une liaison entre les contacts et les bobinages (position du curseur
4) ou un bobinage. Le nouvel oprateur est insr en parallle par rapport aux bobinages, en dessous
de ceux-ci. Dans un premier temps, il est identifi par AND. Vous pouvez remplacer cette dsignation
par celle de votre choix. Pour ce faire, vous pouvez galement utiliser la liste de slection pour
l'dition.
'Insrer' 'Ajouter au module'
Cette commande vous permet d'ajouter des lments supplmentaires un module insr
auparavant (il peut s'agir d'un module avec entre EN). Les commandes proposes dans cette
option peuvent tre excutes pour les mmes positions du curseur que celles prvues pour les
commandes correspondantes dans le schma en blocs fonctionnels.
Entre entrane l'ajout d'une nouvelle entre au module.
Sortie entrane l'ajout d'une nouvelle sortie au module.
Vous pouvez ajouter un module supplmentaire avec Bote. La procdure est la mme que celle
dcrite sous 'Insrer' 'Module'.
Affectation vous permet dinsrer un affectation une variable. Celle-ci est tout dabord reprsente
par 3 points dinterrogation"???" que vous pouvez diter et remplacer par la variable voulue. Vous
pouvez bien entendu utiliser la liste de slection pour ldition.
Fonction entrane l'ajout d'une fonction l'entre slectionne.
Bloc Fonctionnel entrane l'ajout d'un bloc fonctionnel l'entre slectionne.
Pour lentre ventuelle dadresses, la reprsentation sur plusieurs lignes du nom de la variable ou
lentre dun commentaire propre pour le contact, veuillez vous rfrer la description ci-dessus, au
point 'Insrer' 'Contact'.
'Insrer' 'Dtection de fronts montants'
Icne :
Cette commande vous permet dinsrer un bloc fonctionnel R_TRIG servant lidentification dun front
montant (FALSE -> TRUE) au niveau du signal dentre (voir aussi chap.10.17.3). Elle est semblable
la commande 'Insrer' 'Bloc fonctionnel', qui permet galement de slectionner et dinsrer un tel
bloc fonctionnel.
'Insrer' Dtection de fronts descendants
Icne :
Cette commande vous permet dinsrer un bloc fonctionnel F_TRIG servant lidentification dun front
descendant (TRUE -> FALSE) au niveau du signal dentre (voir aussi chap. 10.17.3). Elle est
semblable la commande 'Insrer' 'Bloc fonctionnel', qui permet galement de slectionner et
dinsrer un tel bloc fonctionnel.
'Insrer' 'Temporisateur (TON)'
Icne :
Cette commande vous permet dinsrer un bloc fonctionnel de temporisation de type 'TON'. Ainsi,
vous pouvez obtenir une temporisation lenclenchement (transmission retarde du signal dentre)
(voir aussi chap. 10.17.3). La commande dinsertion est semblable la commande 'Insrer' 'Bloc
fonctionnel' qui permet galement de slectionner un module TON.
5-40
CoDeSys V2.3
5 - Les Editeurs
'Insrer' 'Saut'
Cette commande vous permet d'insrer un saut en parallle et la suite des bobinages existants,
dans l'diteur LD. Si la liaison gauche fournit comme valeur "ON", alors un saut vers l'tiquette
indique est effectu.
Il faut que l'endroit slectionn soit une liaison entre les contacts et les bobinages ou un bobinage.
Le saut est prdfini avec le texte "???". Vous pouvez cliquer sur ce texte et le remplacer par
l'tiquette de saut de votre choix.
'Insrer' 'Return'
Cette commande vous permet d'insrer une instruction RETURN en parallle et la suite des
bobinages existants, dans l'diteur LD. Si la liaison gauche fournit comme valeur "ON", alors
l'excution du module est annule dans ce rseau.
Il faut que l'endroit slectionn soit une liaison entre les contacts et les bobinages ou un bobinage.
'Extras' 'Insrer ci-aprs'
Dans l'diteur LD, cette commande vous permet d'insrer aprs l'endroit slectionn le contenu du
presse-papiers, sous forme de contact mont en srie. Cette commande n'est autorise que si le
contenu du presse-papiers et l'endroit slectionn sont des rseaux contacts.
'Extras' 'Insrer ci-dessous'
Raccourci : <Ctrl>+<U>
Dans l'diteur LD, cette commande vous permet d'insrer en dessous de l'endroit slectionn le
contenu du presse-papiers, sous forme de contact mont en parallle. Cette commande n'est
autorise que si le contenu du presse-papiers et l'endroit slectionn sont des rseaux contacts.
'Extras' 'Insrer ci-dessus'
Dans l'diteur LD, cette commande vous permet d'insrer au dessus de l'endroit slectionn le
contenu du presse-papiers, sous forme de contact mont en parallle. Cette commande n'est
autorise que si le contenu du presse-papiers et l'endroit slectionn sont des rseaux contacts.
'Extras' 'Ngation'
Icne :
Raccourci : <Ctrl>+<N>
Cette commande vous permet d'inverser un contact, un bobinage, un saut ou une instruction
RETURN, ou encore l'entre ou la sortie de modules EN au niveau de la position actuelle du
curseur .
Entre les parenthses du bobinage ou entre les traits droits du contact apparat une barre oblique
(respectivement (/) et |/|). Dans le cas de sauts, d'instructions Return, d'entres ou de sorties de
modules EN, un petit cercle apparat sur la liaison, comme pour l'diteur FBD.
Le bobinage crit prsent la valeur inverse de la liaison d'entre dans la variable boolenne
correspondante. Un contact invers fait commuter l'tat de l'entre sur la sortie au moment o la
variable boolenne correspondante fournit comme valeur FALSE.
Si un saut ou une instruction Return est marque, alors la valeur de l'entre de ce saut ou de cette
instruction, selon le cas, est inverse.
Une ngation peut tre annule en inversant la valeur une nouvelle fois.
'Extras' 'Set/Reset'
Icne :
Si vous excutez cette commande pour un bobinage, alors vous obtenez un bobinage SET. Un tel
bobinage n'crase jamais la valeur TRUE contenue dans la variable boolenne correspondante.
CoDeSys V2.3
5-41
Autrement dit, si la valeur TRUE est affecte cette variable, alors elle le sera de faon permanente.
Un bobinage SET est caractris par un "S" au niveau du symbole de bobinage.
Si vous rptez cette commande, alors vous obtenez un bobinage RESET. Un tel bobinage n'crase
jamais la valeur FALSE contenue dans la variable boolenne correspondante. Autrement dit, si la
valeur FALSE est affecte cette variable, alors elle le sera de faon permanente. Un bobinage
RESET est caractris par un "R" au niveau du symbole de bobinage.
Si vous rptez plusieurs fois cette commande, alors le bobinage devient tour tour un bobinage
SET, un bobinage RESET et un bobinage normal.
Couper, copier, coller et supprimer dans le schma en blocs fonctionnels
Les commandes 'Couper', 'Copier', 'Coller' et 'Supprimer' se trouvent dans le menu 'Editer'.
Si une jonction est slectionne , alors les affectations, sauts ou instructions RETURN situs en
dessous de celle-ci sont coups, supprims ou copis.
Si une bote est slectionne, l'objet slectionn est coup, supprim ou copi, ainsi que toutes les
branches contigus aux entres, l'exception de la premire (plus leve) dentre elles.
Dans les autres cas, la totalit de la branche situe devant la position du curseur est coupe,
supprime ou copie.
Aprs l'opration de copiage ou de dcoupage, l'lment supprim ou copi se trouve dans le pressepapiers et peut tre coll autant de fois que l'on veut.
Pour ce faire, il faut d'abord slectionner la position d'insertion. Les entres et les sorties sont des
positions d'insertion possibles.
Si un bote a t charg dans le presse-papiers, (pour mmoire: dans ce cas, toutes les branches
contigus se trouvent dans le presse-papiers, l'exception de la premire), alors la premire entre
est relie la branche situe devant la position d'insertion.
Dans le cas contraire, la totalit de la branche situe devant la position d'insertion est remplace par
le contenu du presse-papiers.
Dans tous les cas, le dernier lment coll est reli la branche situe droite de la position
d'insertion.
Remarque : Le dcoupage et le collage permettent de rsoudre le problme suivant. Supposons qu'un oprateur
soit coll au milieu d'un rseau. La branche situe droite de l'oprateur est prsent relie la
premire entre, alors qu'elle devrait tre relie la deuxime entre. On slectionne prsent la
premire entre et on excute la commande 'Editer' 'Couper'. Ensuite, on slectionne la deuxime
entre et on excute la commande 'Editer' 'Coller'. La branche est maintenant rattache la
deuxime entre.
5-42
CoDeSys V2.3
5 - Les Editeurs
5.4.4
L'diteur graphique du schma en blocs fonctionnels n'utilisant pas de rseaux, les lments peuvent
tre placs librement. La liste d'excution comprend les lments suivants: module, entre, sortie,
saut, tiquette, return et commentaire. Les entres et sorties de ces lments peuvent tre relies
entre elles en dplaant une liaison au moyen de la souris. L'lment de liaison est dessin
automatiquement. C'est l'lment de liaison le plus court qui est trac, en tenant compte des liaisons
existantes. Lors du dplacement d'lments, les lments de liaison sont ajusts automatiquement. Si
un lment de liaison ne peut pas tre trac en raison d'un manque de place, alors une ligne rouge
est cre entre l'entre et la sortie correspondante. Ds qu'il existe suffisamment de place, cette ligne
est convertie en un lment de liaison.
Avec l'diteur graphique du schma en blocs fonctionnels, il est possible d'insrer directement des
asservissements, ce qui constitue un avantage par rapport l'diteur ordinaire du schma en blocs
fonctionnels.
Les commandes principales se trouvent dans le menu contextuel.
Positions du curseur dans l'diteur graphique CFC
Le curseur peut se positionner sur n'importe quel lment de texte. Le texte slectionn est affich
sur fond bleu et peut tre modifi.
Par ailleurs, la position actuelle du curseur est caractrise par un rectangle en pointills. Voici une
numration des positions de curseurs possibles, illustres par des exemples:
CoDeSys V2.3
5-43
1. Corps des lments module, entre, sortie, saut, tiquette, return et commentaire:
2. Champs de texte des lments module, entre, sortie, saut, tiquette et commentaire ainsi que les
champs de texte des tiquettes de liaison:
'Insrer' 'Module'
Icne :
Raccourci : <Ctrl>+<B>
Cette commande permet d'insrer des oprateurs, fonctions, blocs fonctionnels et programmes. Un
oprateur "AND" est toujours insr par dfaut. Celui-ci peut tre transform en n'importe quel autre
oprateur, fonction, bloc fonctionnel ou programme en slectionnant et en crasant le texte. La liste
de slection pour l'dition vous permet de slectionner le module de votre choix dans la liste des
modules supports. Si le nouveau module possde un nombre minimal d'entres diffrent, alors les
entres sont rattaches. Si le nouveau module possde un nombre maximal d'entres moindre, alors
les dernires entres sont supprimes.
5-44
CoDeSys V2.3
5 - Les Editeurs
'Insrer' 'Entre'
Icne :
Cette commande permet d'insrer une entre. Il est possible de slectionner le texte existant "???" et
de le remplacer par une variable ou une constante. Pour ce faire, vous pouvez galement utiliser la
liste de slection pour l'dition.
'Insrer' 'Sortie'
Icne :
Raccourci : <Ctrl>+<A>
Cette commande permet d'insrer une sortie. Il est possible de slectionner le texte existant "???" et
de le remplacer par une variable. Pour ce faire, vous pouvez galement utiliser la liste de slection
pour l'dition. La valeur existant l'entre de la sortie est attribue cette variable.
'Insrer' 'Saut'
Icne :
Raccourci : <Ctrl>+<J>
Cette commande permet d'insrer un saut. Il est possible de slectionner le texte existant "???" et de
le remplacer par l'tiquette de saut correspondant au saut.
L'tiquette de saut est insre l'aide de la commande 'Insrer' 'Etiquette'.
'Insrer' 'Return'
Icne :
Cette commande permet d'insrer une instruction RETURN. Veuillez noter quune tiquette de saut
est automatiquement insre en mode En ligne, avec la dnomination RETURN, dans la premire
colonne et aprs le dernier lment dans lditeur ; on passe cette tiquette lors dune excution
pas pas avant de quitter le module.
'Insrer' 'Commentaire'
Icne :
Cette commande insre une entre de module. Le nombre des entres est variable pour un grand
nombre d'oprateurs (p.ex. l'lment ADD peut possder deux ou davantage d'entres).
Pour ajouter une entre un module de ce genre, il faut slectionner la module lui-mme (position du
curseur 1).
Insrer' 'Insrer une entre CFC, 'Insrer une sortie CFC'
Icne :
Ces commandes sont disponibles ds quune macro est ouverte pour dition. Elles servent
linsertion de pins dentre ou de sortie servant dentre et de sortie pour la macro. Elles se
diffrencient des entres ou sorties normales de modules de par leur reprsentation et de par le fait
quelles nont pas dindex de position.
CoDeSys V2.3
5-45
'Extras' 'Connecteur'
Des liaisons peuvent aussi tre visualises l'aide de connecteurs (tiquettes de liaisons) plutt qu'
l'aide d'lments de liaison. Dans ce cas, la sortie et l'entre correspondante sont dotes d'un
connecteur qui est dsign par un nom univoque.
S'il existe dj une liaison entre deux lments et que l'on souhaite visualiser prsent cette liaison
l'aide de connecteurs, il faut commencer par marquer la sortie de l'lment de liaison (position du
curseur 3), puis slectionner l'lment de menu 'Extras' 'Etiquette de liaison'. La figure suivante
reprsente une liaison avant et aprs slection de cet lment de menu.
Le programme attribue par dfaut un nom univoque chaque connecteur, commenant par la lettre
M. Ce nom peut nanmoins tre modifi. Le nom de connecteur est enregistr comme paramtre de
sortie, mais peut cependant tre dit aussi bien comme entre que comme sortie.
Nous attirons votre attention sur le fait que le nom de connecteur est considr comme tant une
proprit d'une sortie d'une liaison et qu'il est enregistr avec cette sortie.
1. Editer le nom de connecteur au niveau de la sortie:
Si le texte l'intrieur du connecteur est remplac, le nouveau nom de connecteur est pris en compte
par tous les connecteurs correspondants au niveau des entres. Cependant, il n'est pas possible de
choisir un nom qui est dj attribu une autre tiquette de liaison. Cela permet de conserver des
noms de connecteur univoques. Dans ce cas, un message adquat saffiche lcran.
2. Editer le nom de connecteur au niveau de l'entre:
Si le texte l'intrieur du connecteur est remplac, il le sera galement dans ltiquette de liaison
correspondante dans lautre module.
Pour rtablir une liaison ordinaire partir d'une liaison visualise l'aide de connecteurs, marquez les
sorties des liaisons (position du curseur 4) et slectionnez nouveau l'option de menu 'Extras'
'Etiquettes de liaison'.
'Extras' 'Inversion'
Icne :
Cette commande vous permet d'inverser des entres (ngation), des sorties, des sauts ou des
instructions RETURN. Le symbole utilis pour la ngation est un petit cercle sur une liaison.
Si une entre d'un module, d'une sortie, d'un saut ou d'un return a t slectionne (position du
curseur 3, alors la valeur de celle-ci est inverse.
Si une sortie d'un module ou d'une entre a t slectionne (position du curseur 4), alors la valeur
de celle-ci est inverse.
Une ngation peut tre annule en inversant la valeur une nouvelle fois.
'Extras' 'Set/Reset'
Icne :
Cette commande n'est excutable que pour les entres slectionnes des lments de type sortie
(position du curseur 3).
Le symbole S reprsente SET et le symbole R reprsente RESET.
5-46
CoDeSys V2.3
5 - Les Editeurs
VarOut1 devient TRUE lorsque VarIn1 fournit TRUE. VarOut1 garde cette valeur mme si VarIn1
reprend la valeur FALSE.
VarOut2 devient FALSE lorsque VarIn2 fournit TRUE. VarOut2 garde cette valeur mme si VarIn2
reprend la valeur FALSE.
Si la commande est excute plusieurs fois, alors la sortie prend tour tour l'tat SET, l'tat RESET
et l'tat normal.
'Extras' 'EN/ENO'
Icne :
Cette commande permet d'ajouter une entre d'activation EN (Enable In) supplmentaire et une sortie
boolenne ENO (Enable Out) au module slectionn.
Dans cet exemple, la fonction ADD sera uniquement excute si la variable boolenne "Bedingung"
(condition) la valeur TRUE. Aprs lexcution de ADD, VarOut est galement plac sur la valeur
TRUE. Mais si la variable Condition commute par la suite sur la valeur FALSE, ADD nest plus
excut et VarOut garde la valeur TRUE ! L'exemple ci-dessous montre comment la valeur d'ENO
peut tre utilise pour d'autres modules.
Pour cela, x doit tre initialis avec la valeur 1 et y avec la valeur 0. Les numros qui figurent dans le
coin droit des modules indiquent l'ordre d'excution.
x est incrment jusqu' ce qu'il prenne la valeur 10. Ds lors, la sortie du module LT(0) fournit
comme valeur FALSE, ce qui entrane l'excution de SUB(3) et de ADD(5). Par consquent, x prend
la valeur 1 tandis que y est incrment d'une unit. Ensuite, c'est le module LT(0) qui est nouveau
excut aussi longtemps que x est infrieur 10. Par consquent, y comptabilise le nombre de fois
que x parcourt les valeurs de 1 10.
CoDeSys V2.3
5-47
'Extras' 'Caractristiques...'
Dans l'diteur graphique du schma en blocs fonctionnels, les paramtres d'entre constants
(VAR_INPUT CONSTANT) des fonctions et des blocs fonctionnels ne sont pas affichs directement.
Ces paramtres peuvent tre affichs et leur valeur peut tre modifie en slectionnant le corps du
module concern (Position du curseur 1 et la commande 'Extras' 'Proprits', ou simplement en
double-cliquant sur le corps. Pour cela, la bote de dialogue suivante s'affiche:
Bote de dialogue Proprits
Les valeurs des paramtres d'entre constants (VAR_INPUT CONSTANT) peuvent tre modifies.
Pour cela, il faut slectionner la valeur du paramtre dans la colonne Valeur. Cette valeur peut tre
dite en cliquant une nouvelle fois avec la souris ou en appuyant sur la <Barre d'espacement>. Pour
confirmer la modification d'une valeur, il faut appuyer sur la touche <Entre>; pour rejeter les
modifications, appuyez sur la touche <Echap>. Pour enregistrer toutes les modifications, appuyez sur
le bouton OK.
Veuillez noter : Cette fonctionnalit, et par consquent la dclaration dote du mot-cl "VAR_INPUT
CONSTANT", na dimportance que pour lditeur CFC. Dans lditeur FBD, toutes les variables
INPUT saffichent toujours au niveau du module, indpendamment du fait que la dclaration a
t effectue en tant que paramtre dentre VAR_INPUT ou VAR_INPUT CONSTANT. Ceci ne
joue aucun rle non plus pour les diteurs de texte. VAR_INPUT CONSTANT n'est valable que
lors de son utilisation dans l'diteur CFC.
5-48
CoDeSys V2.3
5 - Les Editeurs
Il existe plusieurs faons de relier une entre d'un lment E2 une sortie d'un lment E1.
Cliquez avec la touche gauche de la souris sur la sortie de l'lment E1 (position du curseur 4),
maintenez la touche gauche de la souris enfonce, dplacez le pointeur de la souris jusqu' l'entre
de l'lment E2 (position du curseur 3) et relchez la touche gauche de la souris cet endroit.
Pendant le dplacement de la souris, une liaison est dessine entre la sortie de l'lment E1 et le
pointeur de la souris.
Cliquez avec la touche gauche de la souris sur l'entre de l'lment E2, maintenez la touche gauche
de la souris enfonce, dplacez le pointeur de la souris jusqu' la sortie de l'lment E1 et relchez la
touche gauche de la souris cet endroit.
Dplacez soit l'lment E1, soit l'lment E2 (position du curseur 1) et dposez-le en relchant la
touche gauche de la souris de telle faon que la sortie de l'lment E2 et l'entre de l'lment E1
soient en contact.
Dans le cas o l'lment E2 est un module avec une entre libre, il est possible de crer une liaison
en effectuant un dplacement partir d'une des sorties de E1 jusque dans le corps de l'lment E2.
Ds que vous relchez la touche de la souris, une liaison avec l'entre libre de E2 la plus haute est
cre. Si le module E2 ne possde aucune entre libre, mais se trouve tre un oprateur auquel il est
possible d'ajouter une entre, alors une nouvelle entre est cre automatiquement.
En appliquant les mmes mthodes, il est possible de relier entre elles la sortie et l'entre d'un
module (asservissement). Pour tablir une liaison entre deux pins, il suffit de cliquer laide du bouton
gauche de la souris sur lun dentre eux, de se dplacer tout en maintenant le bouton enfonc
jusquau pin souhait, o vous pouvez relcher le bouton. Si vous quittez la zone de travail de
lditeur durant cette manuvre, vous faites automatiquement dfiler lcran. Un contrle du type se
produit lors de la liaison dans le cas de types de donnes simples. Si les types des pins que vous
souhaitez relier sont incompatibles entre eux, le curseur se modifie et affiche Interdit . Avec des
types de donnes complexes, il ny a pas de contrle.
Supprimer des liaisons
Il existe plusieurs faons de supprimer une liaison entre la sortie d'un lment E1 et l'entre d'un
lment E2.
Marquez la sortie de E1 (position du curseur 4) et appuyez sur la touche <Suppr> ou excutez la
commande 'Editer' 'Supprimer'. Si la sortie de E1 est relie plusieurs entres, alors les liaisons
correspondantes sont supprimes.
Marquez l'entre E2 (position du curseur 4) et appuyez sur la touche <Suppr> ou excutez la
commande 'Editer' 'Supprimer'.
Marquez avec la souris l'entre de E2 et, tout en maintenant la touche gauche de la souris enfonce,
cartez la liaison de l'entre de E2. Pour supprimer la liaison, il suffit de relcher la touche gauche de
la souris dans une zone libre.
Modifier des liaisons
Il est possible de convertir facilement une liaison entre la sortie d'un lment E1 et l'entre d'un
lment E2 en une liaison entre la sortie de E1 et une entre d'un lment E3. Pour ce faire, cliquez
avec la souris sur l'entre de E2 (position du curseur 3) et, tout en maintenant la touche gauche de la
souris enfonce, dplacez le pointeur de la souris jusqu' l'entre de E3 et relchez la touche de la
souris cet endroit.
'Extras' 'Connecteur'
Des liaisons peuvent aussi tre visualises l'aide de connecteurs (tiquettes de liaisons) plutt qu'
l'aide d'lments de liaison. Dans ce cas, la sortie et l'entre correspondante sont dotes d'un
connecteur qui est dsign par un nom univoque.
CoDeSys V2.3
5-49
S'il existe dj une liaison entre deux lments et que l'on souhaite visualiser prsent cette liaison
l'aide de connecteurs, il faut commencer par marquer la sortie de l'lment de liaison (position du
curseur 3), puis slectionner l'lment de menu 'Extras' 'Etiquette de liaison'. La figure suivante
reprsente une liaison avant et aprs slection de cet lment de menu.
Le programme attribue par dfaut un nom univoque chaque connecteur, commenant par la lettre
M. Ce nom peut nanmoins tre modifi. Le nom de connecteur est enregistr comme paramtre de
sortie, mais peut cependant tre dit aussi bien comme entre que comme sortie.
Nous attirons votre attention sur le fait que le nom de connecteur est considr comme tant une
proprit d'une sortie d'une liaison et qu'il est enregistr avec cette sortie.
1. Editer le nom de connecteur au niveau de la sortie:
Si le texte l'intrieur du connecteur est remplac, le nouveau nom de connecteur est pris en compte
par tous les connecteurs correspondants au niveau des entres. Cependant, il n'est pas possible de
choisir un nom qui est dj attribu une autre tiquette de liaison. Cela permet de conserver des
noms de connecteur univoques. Dans ce cas, un message adquat saffiche lcran.
2. Editer le nom de connecteur au niveau de l'entre:
Si le texte l'intrieur du connecteur est remplac, il le sera galement dans ltiquette de liaison
correspondante dans lautre module.
Pour rtablir une liaison ordinaire partir d'une liaison visualise l'aide de connecteurs, marquez les
sorties des liaisons (position du curseur 4) et slectionnez nouveau l'option de menu 'Extras'
'Etiquettes de liaison'.
Insrer des entres / des sorties " la vole"
Si vous slectionnez un seul pin dentre ou de sortie dun lment, vous pouvez insrer directement
au clavier llment dentre ou de sortie correspondant par le biais dune chane de caractres et
remplir son champ ddition laide de cette chane de caractres.
Ordre d'excution
Dans l'diteur graphique du schma en blocs fonctionnels, un numro d'excution est attribu
chaque lment de type module, sortie, saut, return et tiquette. Cela dfinit l'ordre dans lequel les
diffrents lments sont pris en compte pendant l'excution du programme.
Le numro est attribu automatiquement selon un ordre topologique, lors de l'insertion de l'lment
(de gauche droite et de haut en bas). Si l'ordre a dj t modifi, le nouvel lment reoit le
numro de l'lment suivant dans l'ordre topologique et tous les numros plus levs sont
incrments d'une unit.
Le numro d'un lment est conserv lors du dplacement de l'lment.
L'ordre influe sur le rsultat et doit tre modifi dans des cas prcis.
Si l'ordre est affich, alors le numro d'excution apparat dans le coin suprieur droit de l'lment
auquel il se rapporte.
'Extras' 'Ordre' 'Affichage'
Cette commande permet d'activer ou de dsactiver l'affichage de l'ordre d'excution. L'ordre
d'excution est affich par dfaut (dans ce cas, un crochet est mis devant l'lment de menu).
Pour les lments de type module, sortie, saut, return et tiquette, le numro d'excution apparat
dans le coin suprieur droit de l'lment auquel il se rapporte.
5-50
CoDeSys V2.3
5 - Les Editeurs
Les lments portant les numros 1, 2 et 3 sont slectionns. Si la commande 'Ordonner selon
l'ordre topologique' est slectionne, alors les trois lments slectionns sont extraits de la liste
d'excution. Ensuite, Var 3, le saut et l'oprateur AND sont rinsrs, dans cet ordre. Var3 est plac
devant l'tiquette et reoit le numro 2. Ensuite, le saut est insr et reoit provisoirement le numro 4
qui se transforme en 5 aprs insertion de l'oprateur AND. On obtient un nouvel ordre d'excution qui
se prsente comme ceci:
Lors de la disposition d'un nouveau module, celui-ci est plac par dfaut devant l'lment suivant
selon l'ordre topologique, au sein de la liste d'excution.
'Extras' 'Ordre' 'Avancer le squencement par un'
Cette commande permet de faire avancer tous les lments slectionns d'une place dans l'ordre
d'excution, l'exception de l'lment qui est situ en tte de l'ordre d'excution.
CoDeSys V2.3
5-51
5-52
CoDeSys V2.3
5 - Les Editeurs
Aprs slection de cette commande, les lments sont ordonns comme suit:
Lorsque cette commande est slectionne, tous les lments sont tris dans une premire tape
selon l'ordre topologique. Ensuite, une nouvelle liste d'excution est constitue. En s'appuyant sur les
valeurs des entres connues, on dtermine quel est le prochain lment non numrot susceptible
d'tre excut. Dans le 'rseau' suprieur, le module ADD, par exemple, est susceptible d'tre
excut immdiatement, car les valeurs ses entres sont connues (1 et 2). Le module SUB ne
pourra tre excut qu'ensuite, tant donn que le rsultat de ADD doit tre connu, etc.
Les asservissements sont cependant insrs en dernier.
Lorsque l'ordre est tabli en fonction du flux des donnes, cela prsente l'avantage qu'une box de
sortie relie la sortie d'un module est toujours place juste aprs celui-ci, ce qui n'est pas toujours le
cas avec l'ordre topologique. Par consquent, il se peut que l'ordre topologique ne fournisse pas
toujours le mme rsultat que l'ordre dpendant du flux des donnes. Cette dernire hypothse se
vrifie dans l'exemple ci-dessus.
'Extras' 'Crer Macro'
Icne :
laide de cette commande, vous pouvez regrouper plusieurs modules slectionns simultanment
en un bloc auquel vous pouvez donner un nom en tant que macro. Vous ne pouvez reproduire des
macros quau moyen de la fonction copier-coller, chaque copie reprsentant une macro dont vous
pouvez choisir le nom en toute libert. De ce fait, les macros ne sont pas des rfrences. Toutes les
liaisons qui sont dcapites par la cration de la macro crent des pins dentre ou de sortie la
macro. Les liaisons vers des entres crent des pins dentre. Un nom par dfaut apparat ct du
pin sous la forme In<n>. Dans le cas de liaisons vers des sorties, le nom est Out<n>. Les liaisons
concernes qui disposaient dtiquettes de liaison avant la cration de la macro gardent cette
tiquette de liaison sur le PIN de la macro.
Une macro reoit tout dabord le nom par dfaut MACRO". Celui-ci peut tre modifi dans le champ
du nom de la macro. Si vous ditez la macro, son nom sera affich dans la barre de titre de la fentre
dditeur, ajout au nom du module.
CoDeSys V2.3
5-53
Exemple :
Slection
Macro :
Dans lditeur :
Par le biais de cette commande ou en double-cliquant sur le corps de la macro, cette mme macro
est ouverte dans la fentre dditeur du module correspondant en vue dune dition. Le nom de la
macro est rattach au nom du module dans la barre de titre.
Vous pouvez utiliser les botes de pins obtenues lors de la cration de manire similaire aux entres
et sorties du module. Elles peuvent donc tre glisses, effaces, ajoutes, etc. Elles ne se
diffrencient quau niveau de la visualisation et ne disposent pas dun index de position. Pour lajout,
vous pouvez utiliser les boutons
(entre) ou
(sortie) qui vous sont proposes dans la barre
d'outils. Les botes de pins ont des coins arrondis. Le texte de la bote de pin correspond au nom du
pin dans la visualisation de la macro.
Lordre des pins sur la bote de la macro est tabli en fonction de lordre selon lequel les lments de
la macro sont excuts. Un numro d'ordre moins lev avant un plus lev, un pin suprieur avant
un infrieur.
Lordre dexcution au sein de la macro est ferm, c.--d. la macro est considre comme un bloc et
ce au niveau de lemplacement de la macro dans le module principal. Les commandes quant la
manipulation de lordre dexcution nont deffet quau sein de la macro.
5-54
CoDeSys V2.3
5 - Les Editeurs
Ces commandes sont galement disponibles dans la barre d'outils ds quune macro est ouverte pour
dition. Si des macros sont imbriques les unes dans les autres, vous pouvez revenir au niveau de
macro juste au dessus ou au niveau le plus lev.
Asservissements
Contrairement au schma en blocs fonctionnels ordinaire, l'diteur graphique du schma en blocs
fonctionnels permet de visualiser directement des asservissements. Il faut savoir qu'une variable
intermdiaire interne est toujours cre pour la sortie d'un module. Dans le cas d'un oprateur, le type
de donnes de la variable intermdiaire est donn par le plus grand type de donnes des entres.
Le type de donnes d'une constante est obtenu partir du plus petit type de donnes possible pour
cette constante, c'est--dire qu'avec la constante "1" on obtient le type de donnes SINT. Si l'on
effectue prsent une addition avec asservissement avec la constante "1", la premire entre fournit
le type de donnes SINT et la deuxime reste indfinie en raison de l'asservissement. Par
consquent, la variable intermdiaire est elle aussi de type SINT. La valeur de la variable
intermdiaire est affecte seulement ensuite la variable de sortie.
La figure ci-dessous montre tantt une addition avec asservissement et tantt une addition directe
avec une variable. Dans ces cas, les variables x et y doivent tre de type INT.
CoDeSys V2.3
5-55
Les pins de macros sont espionns comme des botes dentre et de sortie.
Les liaisons non boolennes avec tiquette de liaison affichent leur valeur au sein de cette tiquette
de liaison. Pour des liaisons boolennes, les liaisons ainsi que les labels sont visualis(e)s en bleu
pour autant que cette liaison soit TRUE, et en noir dans les autres cas.
Contrle de droulement:
Si le contrle de droulement est activ, les liaisons parcourues seront marques de la couleur rgle
dans les options du projet.
Points darrt :
Des points darrt peuvent tre attribus aux lments qui possdent galement un index dordre de
d'excution. Lexcution du programme est interrompue avant lexcution mme de llment
concern, c.--d. pour les modules et sorties avant lattribution des entres, et pour les tiquettes de
saut avant lexcution de llment lindex suivant. Lindex d'excution de llment est utilis
comme emplacement de point darrt dans la bote de dialogue des points darrt.
Le positionnement des points darrt un lment slectionn se fait par le biais de la touche F9, de
loption 'Point d'arrt actif/inactif' du menu 'En Ligne' ou du menu 'Extras' ou encore dans le menu
contextuel de lditeur. Si un point darrt est attribu un lment, celui-ci sera rendu actif ou inactif
par le biais de la commande 'Point d'arrt actif/inactif'. Vous pouvez galement changer la valeur dun
point darrt en double-cliquant sur celui-ci.
La visualisation du point darrt se fait dans la couleur rgle dans les options du projet.
Label RETURN :
En mode En ligne, une tiquette de saut est automatiquement cre avec la dnomination RETURN
dans la premire colonne et aprs le dernier lment dans lditeur. Cette tiquette marque la fin du
module et on y passe en mode pas pas avant de quitter le module. Des tiquettes RETURN ne sont
pas insres dans des macros.
Pas pas :
Avec 'tape individuelle sur', on saute toujours llment avec lindex dexcution suivant (en
grandeur). Si llment en cours est une macro ou un module, on branche vers leur implmentation
au moyen de 'Cycle indpendant'. Si on excute partir de l une 'tape individuelle sur', on branche
llment dont lindex dexcution suit celui de la macro.
Zoom sur module appel
Cette commande est disponible dans le menu contextuel (<F2>) ou dans le menu Extras, pour autant
que le curseur se trouve sur le nom du module appel dans les diteurs littraux, ou si la bote dun
module est marque dans les diteurs graphiques. Le zoom ouvre le module concern dans sa
fentre dditeur. S'il s'agit d'un module issu d'une bibliothque, alors le gestionnaire de bibliothques
est appel et le module correspondant est affich.
5-56
CoDeSys V2.3
5 - Les Editeurs
5.4.5
Raccourci : <Ctrl>+<T>
Dans l'diteur SFC, cette commande permet d'insrer devant le bloc slectionn une tape suivie
d'une transition.
'Insrer' 'Etape-Transition (derrire)'
Icne :
Raccourci : <Ctrl>+<E>
Dans l'diteur SFC, cette commande permet d'insrer derrire le bloc slectionn une tape suivie
d'une transition.
Effacer une tape et une transition
Vous ne pouvez effacer une tape quavec la transition prcdente ou suivante. Veuillez marquer
cet effet ltape et la transition et excutez la commande 'Editer' 'Supprimer' ou appuyez sur la touche
<Suppr>.
'Insrer' 'Squence alternative (droite)'
Icne :
Raccourci : <Ctrl>+<A>
Dans l'diteur SFC, cette commande ajoute au bloc slectionn une squence alternative vers la
droite. Pour que cela soit possible, le bloc slectionn doit commencer et finir par une transition. La
nouvelle branche est constitue alors d'une transition.
CoDeSys V2.3
5-57
Dans l'diteur SFC, cette commande ajoute au bloc slectionn une squence alternative vers la
gauche. Pour que cela soit possible, le bloc slectionn doit commencer et finir par une transition. La
nouvelle branche est constitue alors d'une transition.
'Insrer' 'Squence parallle' (droite)'
Icne :
Raccourci : <Ctrl>+<L>
Dans l'diteur SFC, cette commande ajoute au bloc slectionn une squence parallle vers la droite.
Pour que cela soit possible, le bloc slectionn doit commencer et finir par une tape. La nouvelle
branche est constitue alors d'une tape. Pour permettre des sauts vers la squence parallle cre,
elle doit tre munie dune tiquette de saut. (voir 'Extras' 'Ajouter une tiquette la branche parallle')
'Insrer' 'Squence parallle (gauche)"
Icne :
Dans l'diteur SFC, cette commande ajoute au bloc slectionn une squence parallle vers la
gauche. Pour que cela soit possible, le bloc slectionn doit commencer et finir par une tape. La
nouvelle branche est constitue alors d'une tape. Pour permettre des sauts vers la squence
parallle cre, elle doit tre munie dune tiquette de saut. (voir 'Extras' 'Ajouter une tiquette la
branche parallle')
'Insrer' 'Saut'
Icne :
Raccourci : <Ctrl>+<U>
Dans l'diteur SFC, cette commande insre un saut la fin de la branche qui se rapporte au bloc
slectionn. Pour que cela soit possible, la branche doit tre une squence alternative. Lorsquun
saut a t insr, il est possible de slectionner ensuite le texte existant "Step" et de le remplacer par
le nom de l'tape correspondant au saut ou par ltiquette de saut dune branche parallle'.
'Insrer' 'Transition-Saut'
Icne :
Dans l'diteur SFC, cette commande insre une transition suivie d'un saut la fin de la squence
slectionne, qui doit obligatoirement tre de type parallle. Lorsquun saut a t insr, il est
possible de slectionner ensuite le texte existant "Step" et de le remplacer par le nom de l'tape
correspondant au saut ou par ltiquette de saut dune branche parallle'.
'Insrer' 'Ajouter une action d'entre'
Cette commande vous permet d'ajouter une action d'entre une tape. Une action d'entre est
excute une seule fois, immdiatement aprs que l'tape ait t active. L'action d'entre peut tre
implmente dans le langage de votre choix.
Une tape avec action d'entre est caractrise par un 'E' dans le coin infrieur gauche.
Une action d'entre ne peut pas tre dfinie en tant qu'tape CEI.
'Insrer' 'Ajouter une action de sortie'
Cette commande vous permet d'ajouter une action de sortie une tape. Une action de sortie est
excute une seule fois, avant que l'tape ne soit dsactive. L'action de sortie peut tre
implmente dans le langage de votre choix.
Une tape avec action de sortie est caractrise par un 'X' dans le coin infrieur droit.
Une action de sortie ne peut pas tre dfinie en tant qu'tape CEI.
5-58
CoDeSys V2.3
5 - Les Editeurs
L'action de la premire tape ou le corps de transition de la premire transition du bloc slectionn est
charg(e) dans l'diteur, dans le langage dans lequel il (elle) est crit(e). Si l'action ou le corps de
transition est vide, alors il faut slectionner le langage dans lequel il (elle) doit tre crit(e).
En ce qui concerne les transitions, notez que la condition crite dans lditeur a priorit sur une
condition qui, le cas chant, aurait t crite directement sur ltiquette de la transition. Exemple :
Supposons que i >100, alors la condition de transition est FALSE, mme si la valeur TRUE est crite
sur ltiquette !
CoDeSys V2.3
5-59
Vous pouvez effectuer trois entres diffrentes dans la bote de dialogue Attributs de l'tape. Dans
Temps minimal, vous entrez le temps minimal prescrit pour l'excution de cette tape. Dans Temps
maximal, vous entrez le temps maximal prescrit pour l'excution de cette tape. Nous vous signalons
que les entres doivent tre du type TIME. Les rgles d'criture dcrites dans l'annexe C s'appliquent
donc au cas prsent.
Dans Commentaire vous pouvez entrer un commentaire relatif l'tape. Avec 'Extras' 'Options' vous
pouvez configurer l'diteur SFC de faon visualiser au niveau de vos tapes, soit les commentaires,
soit le rglage de temps. A droite de l'tape apparat alors le commentaire ou les rglages de temps,
selon le cas.
Dans le cas d'un dpassement du temps maximal, des drapeaux SFC sont mis. Ils peuvent tre
contrls par l'utilisateur.
L'exemple prsente le cas d'une tape dont l'excution doit durer au moins 2 secondes et au plus 10
secondes. En mode En Ligne, l'affichage indique depuis combien de temps l'tape est active, en plus
des deux autres donnes.
5-60
CoDeSys V2.3
5 - Les Editeurs
Dans la Vue des limites de temps SFC, toutes les tapes de votre module SFC sont visualises. Si
vous avez spcifi une limite de temps pour une tape donne, alors celle-ci est affiche droite de
l'tape (d'abord la limite infrieure et puis la limite suprieure). En outre, vous pouvez diter les limites
de temps. Pour ce faire, cliquez sur l'tape souhaite dans la Liste des tapes. Le Nom de l'tape
s'affiche alors dans le bas de la fentre. Allez ensuite sur le champ Temps minimal ou Temps
maximal et entrez y la limite de temps de votre choix. Lorsque vous fermez la fentre par OK, toutes
les modifications sont enregistres.
Dans l'exemple, les tapes 2 et 6 possdent une limite de temps. Switch1 dure au moins deux
secondes et au plus dix secondes. Switch2 dure au moins sept secondes et au plus huit secondes.
'Extras' 'Options'
Cette commande vous donne accs une bote de dialogue, qui vous permet de configurer
diffrentes options pour votre module SFC.
Bote de dialogue Options SFC
CoDeSys V2.3
5-61
Dans la bote de dialogue Options SFC, vous pouvez effectuer cinq entres. Dans Hauteur de l'tape
vous pouvez entrer le nombre de lignes requises pour une tape SFC, au sein de l'diteur SFC. La
configuration standard est 4. Dans Largeur de l'tape vous pouvez entrer le nombre de colonnes
requises pour une tape. La configuration standard est 6. La Largeur de commentaire dfinit le
nombre de caractres affichs lorsque vous laissez afficher le commentaire avec l'tape.
Dans la zone Affichage pendant l'tape vous pouvez slectionner les entres faites dans 'Extras'
'Attributs d'tape' qui doivent tre affiches. Vous pouvez opter soit pour Rien, soit pour
Commentaire, soit pour Contrle de temps.
'Extras' 'Relier action'
Cette commande permet d'associer des actions et des variables boolennes des tapes CEI.
Une petite bote en deux parties est ajoute ct de l'tape CEI, pour permettre d'associer une
action. Le qualificateur 'N' et le nom 'Action' sont prdfinis dans la partie gauche de la bote. Ces
deux praffectations peuvent tre modifies. Pour ce faire, vous pouvez utiliser la liste de slection
pour l'dition.
Vous pouvez affecter un maximum de neuf actions une tape CEI.
De nouvelles actions pour des tapes CEI peuvent tre cres dans l'Organisateur d'objets au niveau
d'un module SFC, au moyen de la commande 'Projet' 'Ajouter une action'.
'Extras' 'Utiliser les tapes CEI'
Icne :
Si cette commande est active (dans ce cas un crochet (9) apparat devant l'lment de menu et
l'icne correspondante de la barre de fonction est enfonce), alors des tapes CEI, plutt que des
tapes simplifies, sont insres lors de l'insertion de transitions d'tapes et de squences parallle.
Le diagramme fonctionnel en squence mode En Ligne
Dans le cas o l'diteur du diagramme fonctionnel en squence opre En Ligne, les tapes
actuellement actives sont visualises en bleu (en noir dans l'exemple). Si vous avez effectu la
configuration approprie dans 'Extras' 'Options', alors le contrle du temps est visualis ct des
tapes. En dessous des limites infrieures et suprieures de temps que vous avez spcifies, une
troisime donne temporelle apparat, vous indiquant depuis combien de temps l'tape est active.
Dans l'illustration ci-dessus, l'tape reprsente est active depuis 8 secondes et 410 millisecondes.
Cette tape doit toutefois demeurer active pendant 7 minutes avant qu'elle ne soit abandonne.
Il est possible de dfinir un point d'arrt au niveau d'une tape au moyen de 'En Ligne' 'Point d'arrt
actif/inactif'., et au niveau d'une action aux endroits darrt permis par le langage. Le traitement est
suspendu avant mme lexcution de cette tape ou de lendroit du programme de cette action. Les
tapes ou endroits de programme sur lesquel(le)s un point darrt est dfini sont marqu(e)s en bleu
clair.
Si plusieurs tapes sont actives dans une squence parallle, alors l'tape dont l'action sera la
prochaine tre traite est visualise en rouge.
Si des tapes CEI ont t utilises, alors toutes les actions actives sont visualiss en bleu dans le
mode En Ligne.
Le diagramme fonctionnel en squence supporte lui aussi le pas pas ('En Ligne' 'Etape individuelle
sur'). Dans ce cas, on progresse jusqu' la prochaine tape dont l'action sera excute.
Vous pouvez atteindre directement une tape, que ce soit une action ou une transition, au moyen de
'En Ligne' 'Etape individuelle dans'.
5-62
CoDeSys V2.3
5 - Les Editeurs
La commande 'En Ligne' 'tape individuelle sur' permet de passer pas pas ltape suivante
dont laction est excute. Si la position actuelle est :
une tape dans un droulement linaire dun module ou encore une tape dans la squence
parallle la plus droite dun module, on quitte le module SFC et on revient lappelant. Si le
module est le programme principal, le cycle suivant dbute.
une tape dans la squence parallle ntant pas la plus droite, on saute ltape active de la
squence parallle suivante.
le dernier point darrt au sein dune action 3S, on saute vers lappelant du SFC.
le dernier point darrt au sein dune action CEI, on saute vers lappelant du SFC.
le dernier point darrt au sein dune action dentre ou de sortie, on saute vers la premire tape
active.
Vous pouvez en outre avancer pas pas dans des actions au moyen de "En Ligne" + "tape
individuelle dans". Si vous devez sauter vers une action dentre, de sortie ou CEI, vous devez y
crer un point darrt. A lintrieur des actions, lutilisateur dispose de toutes les fonctionnalits de
dbogage de lditeur correspondant.
Si vous maintenez le pointeur de souris pendant une courte dure sur une variable dans lditeur de
dclaration, le type et le commentaire de la variable sont affichs dans une info-bulle.
Diagramme fonctionnel en squence en mode En Ligne avec une tape active (Switch1) et un point d'arrt (Step 10)
Veuillez noter : Si vous renommez une tape et effectuez un changement En ligne alors que cette mme tape
est en cours dexcution, le programme sarrte avec un tat indfini.
CoDeSys V2.3
5-63
1. Tous les drapeaux du bloc de contrle des actions CEI utilises dans cette chane sont tout
dabord remis zro. (ne concerne cependant pas les drapeaux dactions CEI appeles
l'intrieur des actions).
2. Pour chaque action et dans leur ordre dapparition dans la chane (du haut vers le bas et de
gauche droite), on vrifie si la condition pour lexcution de laction de sortie est prsente et
ralise le cas chant.
3. Pour chaque action et dans leur ordre dapparition dans la chane, on vrifie si la condition pour
lexcution de laction dentre est prsente et ralise le cas chant.
4. Pour chaque tape et dans leur ordre dapparition dans la chane, les points suivants sont
excuts :
- le temps coul est ventuellement copi dans la variable d'tape correspondante.
- on vrifie ventuellement un dpassement de temps et on utilise les drapeaux derreur SFC
correspondants.
- pour les actions autres que CEI, laction correspondante est excute.
5. Les actions CEI utilises dans la chane sont excutes dans lordre alphabtique. cet effet, la
liste des actions est parcourue deux fois. Lors du premier passage, toutes les actions CEI
dsactives dans le cycle en cours sont excutes. Lors du second passage, toutes les actions
CEI actives dans le cycle en cours sont excutes.
6. Les transitions sont values : si ltape dans le cycle en cours tait active et que la transition y
faisant suite donne la valeur TRUE (et que le temps minimal est ventuellement dj coul),
ltape suivante est active.
Observez les points suivants lors de limplmentation dactions :
Il se peut quune action soit excute plusieurs fois au cours dun cycle, du fait quelle soit associe
plusieurs chanes. (Par exemple, un programme SFC peut contenir deux actions CEI A et B, ces deux
actions tant implmentes en langage SFC et appelant toutes deux une action CEI C : au cours du
mme cycle, les actions CEI A et B pourraient tre actives et au sein de ces deux actions, laction CEI
C pourrait galement tre active, ce qui a pour effet que cette dernire action C est excute deux
fois.)
Si la mme action CEI est utilise simultanment deux niveaux diffrents au sein dun SFC, ceci
pourrait avoir des effet indsirables en raison de lordre dexcution dcrit ci-dessus. Dans ce cas, un
message derreur apparat lccran. Ceci peut se produire lors du traitement de projet qui ont t
crs laide de versions antrieures de CoDeSys !
Remarque : Lors de lespionnage dexpressions (p.ex. A ET B) dans les transitions, la valeur globale
5-64
CoDeSys V2.3
6 - Ressources
6 Ressources
6.1 Aperu du Ressources
Dans l'onglet Ressources de l'Organisateur d'objets, vous trouvez des objets qui permettent de
configurer et d'organiser votre projet, de suivre l'volution de la valeur des variables et de configurer
le projet pour utilisation sur le systme cible et dans le rseau, savoir :
de Variables globales, qui peuvent tre utilises dans l'ensemble du projet ou du rseau
la Configuration de l'alarme pour configurer des classes et groupes d'alarme, qui par example
peuvent visualise avec la visualisation de CoDeSys
la Gestionnaire de bibliothques pour l'administration des bibliotheques dans un projet de la
Configuration de l'automate, pour configurer votre matriel de la Configuration des tches, pour
commander votre programme au moyen de tches
du Journal pour enregistrer les actions qui ont lieu lors d'une session
du Gestionnaire d'espion et des recettes, pour visualiser des valeurs de variables et praffecter
des valeurs aux variables.
de Configuration de la cible permettant le choix et le cas chant le paramtrage du matriel
cible
Environnement de travail avec reprsentation des options du projet
Dependant de la configuration de la cible en outre ce sont disponibles les ressources suivantes:
L'enregistrement des Histogramme, pour l'enregistrement graphique des valeurs des variables
Le Manager des paramtres qui met disposition des variables auxquelles d'autres utilisateurs
au sein du rseau peuvent accder (Fonctionnalit dpendant de la configuration du systme
cible)
Le PLC-Browser permettant l'appel d'information de l'automate en cours d'excution
Les Outils pour la connexion des outils externes pouvant tre dmarrs partir de CoDeSys.
(La fonctionnalit dpend du systme cible)
La fonction SoftMotion (soumise licence) avec l'diteur CNC (liste de programme CNC) et
l'diteur CAM (cames)
En outre, si un objet provenant des variables globales est ouvert, un document modle peut tre
cr et appel et l'aide duquel diffrents commentaires peuvent tre mis disposition pour une
variable. Ces commentaires se retrouvent dans la documentationEn outre, si un objet provenant des
variables globales est ouvert, un document modle peut tre cr et appel et l'aide duquel
diffrents commentaires peuvent tre mis disposition pour une variable. Ces commentaires se
retrouvent dans la documentation
CoDeSys V2.3
6-1
L'onglet Ressources
6-2
CoDeSys V2.3
6 - Ressources
6.2.1
Variables Globales
Variables rseau
Remarque: L'utilisation de variables rseau doit tre supporte par le systme cible et tre active au sein de la
configuration du systme cible (catgorie Fonctions rseau).
Les variables rseau peuvent tre maintenues au mme niveau auprs de plusieurs automates par le
biais d'un change automatique de donnes et ce au sein d'un rseau d'automates compatible avec
CoDeSys (comparez ce sujet l'change non-automatique par le biais du gestionnaire des
paramtres). Ceci ne ncessite pas de fonctions spcifiques l'automate, mais les utilisateurs rseau
doivent cependant disposer dans leurs projets des mmes listes de dclaration et de la mme
configuration relative la transmission de variables rseau. Afin d'obtenir des listes identiques, nous
vous recommandons de ne pas introduire manuellement la dclaration de ces variables sur chaque
automate, mais bien de les reprendre d'un fichier spar pouvant tre cr par le biais d'une
exportation. (Voir 'Cration d'une liste de variables globales').
Pour lchange des variables de rseau, il est ncessaire que les variables de rseau soient utilises
dans une tche cyclique ou spontane ou dans le module PLC_PRG. Il ne suffit pas pour ce faire de
les dclarer uniquement dans la partie de dclaration. Si les variables sont utilises dans diverses
tches / dans le module PLC_PRG, alors cest la variable de priorit suprieure qui sapplique.
Cration d'une 'Liste de variables globales'
Pour crer une liste de variables globales, marquez l'entre 'Variables globales' dans l'Organisateur
d'objets des Ressources, ou encore une liste de variables globales qui y serait dj cre.
Pour crer une liste de variables globales, marquez l'entre 'Variables globales' dans l'Organisateur
d'objets dans la rubrique 'Ressources', ou encore une liste de variables globales qui y serait dj
cre. Si vous choisissez ensuite la commande 'Projet' 'Objet' 'Insrer', la bote de dialogue
'Proprits' s'ouvre pour la Liste de variables globales.
Cette bote de dialogue s'ouvre par ailleurs aussi par le biais de la commande 'Projet' 'Objet'
'Proprits' pour afficher la configuration de la liste de variables globales dans l'organisateur d'objets,
cette liste tant dj configure.
CoDeSys V2.3
6-3
Liaison au fichier:
Nom de fichier : Si vous disposez dj d'un fichier d'exportation (*.exp) ou d'un fichier DCF contenant
les variables souhaites, vous pouvez les intgrer. Introduisez cet effet le chemin d'accs
correspondant ou aidez-vous de la bote de dialogue standard via le bouton Balayer. Lors de la
lecture, les fichiers DCF sont convertis en syntaxe CEI.
Choisissez l'option Importer avant la compilation si vous souhaitez que la liste externe de variables
soit lue avant chaque compilation du projet. Choisissez l'option Exporter avant la compilation si
vous souhaitez que la liste de variables soit nouveau crite dans le fichier externe indiqu avant
chaque compilation du projet.
Lorsque vous refermez le dialogue 'Liste des variables globales' avec OK, le nouvel objet est cr
dans l'Organisateur d'objets, muni du symbole -, et cet objet peut tre ouvert au moyen de la
commande 'Projet' 'Objet' 'diter' ou encore par un double-clic sur l'entre correspondante.
La commande 'Projet' 'Objet' 'Caractristiques' vous permet d'ouvrir nouveau le dialogue de
configuration 'Liste de variables globales' se rapportant l'entre marque dans l'Organisateur
d'objets.
6-4
CoDeSys V2.3
6 - Ressources
Utiliser le standard : Si vous appuyez sur ce bouton, le port 1202 sera inscrit comme tant le port
pour l'change avec tous les autres utilisateurs rseau. L'adresse de diffusion / diffusion
slective par dfaut est "255.255.255.255", ce qui signifie que l'change se produit avec tous
les utilisateurs rseau.
Port : Il s'agit d'une alternative au port par dfaut (voir ci-dessus) (Attention : il doit tre rgl de la
mme manire auprs de tous les nœuds concerns). Pour les rseaux UDP, une valeur
introduite ici est reprise automatiquement pour toutes les connexions qui seront le cas chant
dfinies sur d'autres onglets.
Adresse Broadcast/Multicast : Il s'agit d'une alternative l'adresse par dfaut (voir ci-dessus) ou
zone d'adresse de sous-rseau (p.ex. "197.200.100.255" engloberait tous les utilisateurs avec
une adresse IP 197.200.100.x.).
Notez que pour les systmes Win32, l'adresse broadcast vers le masque de sous-rseau de la
configuration TCP/IP du PC doit correspondre !
Dialogue 'Environnement pour UDP'
CAN:
Indexe de lautomate: Index du contrleur CAN par lintermdiaire duquel les variables doivent
tre transmises.
Les options suivantes peuvent tre (ds)actives pour la configuration de la transmission des
variables.
CoDeSys V2.3
6-5
Comprimer les variables : Les variables sont regroupes en paquets (tlgrammes) pour la
transmission, la taille de ces paquets tant dpendante du rseau. Si cette option est dsactive, un
paquet est cre pour chaque variable.
Identificateur de la liste de variables : Numro d'identification du premier paquet dans lequel des
variables sont transmises. (valeur par dfaut = 1). Les paquets suivants sont numrots en squence.
La possibilit de dfinir les variables de rseau de la liste comme 'Lire' et 'Ecrire' ou seulement
'Lire' ou 'Ecrire' est dpendante du systme cible. La configuration correspondante seffectue par
slection des options 'Lire' et 'Ecrire' :
Lire : Les variables de la liste sont lues ; si l'option est dsactive, les nouvelles valeurs de
variables envoyes par le biais du rseau sont ignores. Si loption 'Lire' est slectionne, les
options complmentaires suivantes peuvent tre actives :
Requte l'initialisation : Si le noeud local peut lire (option Lire active, voir ci-dessus) et
est redmarr, les valeurs actuelles de variables sont demandes (de manire
optionnelle) aux autres automates pouvant crire ces mmes valeurs, et envoyes
partir de ces automates, indpendamment des autres conditions temporelles ou
vnementielles sous lesquelles elles seraient normalement envoyes
conformment la configuration. Il faut pour ce faire que l'option de rponse une
demande d'initialisation soit active dans la configuration des variables des
automates pouvant crire les valeurs (voir ci-dessous).
Ecrire : Les variables de la liste sont crites. Les options supplmentaires suivantes sont
disponibles :
Transmettre le total de contrle : Lors de l'envoi, chaque paquet est accompagn d'un
total de contrle qui sera vrifi la rception. On dtermine ainsi si les dfinitions
de variables sont identiques chez l'metteur et chez le rcepteur. Les paquets avec
un total de contrle erron ne seront pas repris et recevront un accus de rception
ngatif pour autant que cette option soit choisie (voir ci-dessous, Confirmation de
transfert).
Confirmation : (sans fonction avec CAN) Chaque message est confirm par un accus de
rception du rcepteur. Si l'metteur n'a pas reu un accus de rception au
minimum au sein d'un cycle, un message d'erreur et mis.
Rpondre aux requtes d'initialisation : Si le noeud local peut crire (option crire
active, voir ci-dessus), il peut tre donn une rponse aux requtes provenant de
noeuds pouvant lire et envoyes par ces derniers dans le cadre d'une initialisation
(option de Requte l'initialisation, voir ci-dessus). Ce qui signifie que les valeurs
actuelles de variables sont transmises, mme si les autres conditions temporelles ou
vnementielles telles que configures ne l'exigent pas.
Transmettre chaque cycle : Les variables sont crites conformment aux intervalles
donns la rubrique Intervalle (exemple T#70ms).
Transmettre en cas de modification : Les variables ne sont crites que lorsqu'un
changement a eu lieu, et on peut cependant dterminer un intervalle minimum de
temps entre les transmissions dans le champ Intervalle.
Transmettre en cas d'vnement : Les variables de la liste sont crites si la variable
introduite sous Variable a la valeur TRUE.
Lorsque vous refermez la bote de dialogue 'Liste de variables globales' avec OK, le nouvel objet est
cr. Vous reconnaissez les listes de variables rseau globales au symbole
dans l'Organisateur
d'objets. l'aide de la commande 'Projet' 'Objet' 'Proprits', vous pouvez ouvrir nouveau la bote
de dialogue relative l'entre marque dans l'Organisateur d'objets.
Remarque : Si une variable rseau globale est utilise dans une ou plusieurs tches, la composante temporelle
de la transmission est soumise aux conditions suivantes : Lors de l'appel de chaque tche, on vrifie
quels paramtres sont d'application pour la transmission de la valeur de la variable (configuration par
le biais de la bote de dialogue 'Liste de variables globales'). La valeur de variable est transmise ou
non en fonction de l'intervalle coul l'instant. Lors de chaque transmission, le compteur pour les
intervalles de cette variable est remis zro.
6-6
CoDeSys V2.3
6 - Ressources
L'envoi s'effectue toujours au dpart du systme d'excution de l'automate concern. Des fonctions
spcifiques aux automates ne doivent ds lors pas tre disponibles pour l'change de donnes.
dition des listes de variables globales, variables rseau globales
L'diteur pour les variables globales travaille de la mme faon que l'diteur de dclaration. Dans le
cas de l'affichage d'une liste de variables externe, vous ne pouvez pas l'diter cet endroit. Les listes
de variables externes peuvent uniquement tre traites de manire externe et sont lues de nouveau
lors de chaque ouverture et de chaque compilation du projet.
Syntaxe:
VAR_GLOBAL
(* Dclarations de variables *)
END_VAR
Les variables rseau ne peuvent tre utilises que si le systme cible le permet, et elles sont
galement dfinies l'aide de cette syntaxe.
Exemple de liste de variable rseau cre par l'insertion d'un fichier d'exportation *.exp, et ayant reu
le titre NETWORKVARIABLES_UDP :
Exemple d'une liste de variables rseau
Syntaxe:
VAR_GLOBAL RETAIN
(* Dclarations de variables *)
END_VAR
VAR_GLOBAL PERSISTENT
(* Dclarations de variables *)
END_VAR
Pour combiner les proprits Retain et Persistent, on utilise les deux mots-cls suivants :
VAR_GLOBAL RETAIN PERSISTENT ou VAR_GLOBAL PERSISTENT RETAIN
CoDeSys V2.3
6-7
Les variables rseau (spcifiques au systme cible) sont galement dfinies l'aide de cette syntaxe.
Constantes globales
Le mot cl CONSTANT est ajout aux constantes globales.
Syntaxe:
VAR_GLOBAL CONSTANT
(* Dclarations de variables *)
END_VAR
6.2.2
Variable Configuration
Dans les blocs fonctionnels, il est possible de spcifier des adresses d'entre et de sortie dfinies de
manire incomplte, entre les mots cls VAR et END_VAR. Les adresses qui sont dfinies de
manire incomplte sont caractrises par une toile.
Exemple :
FUNCTION_BLOCK locio
VAR
loci AT %I*: BOOL := TRUE;
loco AT %Q*: BOOL;
END_VAR
Dans le cas prsent, deux variables locales d'entre-sortie sont dfinies, une variable local-In (%I*) et
une variable local-Out (%Q*).
Au cas o vous souhaitez configurer des variables locales d'entre-sortie, vous disposez, l'tat
Variable_Configuration dans l'onglet Ressources de l'Organisateur d'objets.
standard, de l'objet
Le nom de l'objet peut tre modifi et des objets supplmentaires pour configuration de variables
peuvent tre cres.
L'diteur pour la configuration des variables travaille de la mme faon que l'diteur de dclaration.
Les variables ncessaires la configuration de variables locales d'entre-sortie doivent figurer entre
les mots cls VAR_CONFIG et END_VAR.
Le nom d'une telle variable est compos d'un chemin d'instance complet et les diffrents noms de
module et d'instance sont spars par des points. La dclaration doit contenir une adresse, dont la
classe (Entre/Sortie) correspond l'adresse spcifie de manire incomplte (%I*, %Q*) dans le
bloc fonctionnel. Le type de donnes doit lui aussi correspondre la dclaration au niveau du bloc
fonctionnel.
Les variables de configuration dont le chemin d'instance n'est pas valide, du fait que l'instance n'existe
pas, sont considres comme des erreurs et sont caractrises comme telles. Une erreur est
galement signale dans le cas inverse, savoir lorsque aucune configuration n'est attribue une
variable d'instance. Pour obtenir une liste complte de toutes les variables de configuration requises,
vous pouvez utiliser la commande 'Tous les chemins d'instance' dans le menu 'Insrer'.
Exemple de configuration de variable
6-8
CoDeSys V2.3
6 - Ressources
6.2.3
Pour utiliser un fichier cadre pour la documentation, effectuez la commande 'Extras' 'Slectionner
fichier cadre pour la documentation'. Si vous voulez prsent documenter la totalit de votre projet,
CoDeSys V2.3
6-9
Configuration de l'alarme
ou imprimer des parties de votre projet, alors le commentaire que vous avez cr au niveau du fichier
cadre pour la documentation de cette variable est insr dans la partie implmentation (pas la partie
dclaration !), l'endroit mme o cette variable est utilise. Ce commentaire n'apparat qu'
l'impression!
'Extras' 'Etablir fichier cadre pour la documentation'
Cette commande vous permet de crer un fichier cadre pour la documentation. Cette commande est
disponible lorsqu'un objet a t slectionn dans Variables globales.
La bote de dialogue pour l'enregistrement des fichiers sous un nouveau nom s'affiche. Dans le
champ Nom de fichier, l'extension *.txt a dj t entre. Choisissez un nom votre convenance. Un
fichier texte est cr, dans lequel sont rpertories toutes les variables de votre projet.
'Extras' 'Slectionner fichier cadre pour la documentation'
Cette commande vous permet de slectionner un fichier cadre pour la documentation.
La bote de dialogue pour l'ouverture des fichiers est affiche. Slectionnez le fichier cadre pour la
documentation et appuyez sur OK. Si vous voulez prsent documenter la totalit de votre projet, ou
imprimer des parties de votre projet, alors le commentaire que vous avez cr au niveau du fichier
cadre pour la documentation est insr dans le texte de programmation, pour chacune des variables.
Ce commentaire n'apparat qu' l'impression!
Pour crer un fichier cadre pour la documentation, vous pouvez utiliser la commande 'Extras' 'Etablir
fichier cadre pour la documentation'.
6-10
CoDeSys V2.3
6 - Ressources
Ouvrez l'arborescence actuellement disponible en cliquant sur le symbole Plus en regard de l'entre
'Configuration de l'alarme'. Dans le cas d'une nouvelle configuration, cette arborescence ne contient
que les entres 'Classes d'alarme' et 'Systme'.
6.3.2
Systme d'alarme
L'utilisation d'un systme d'alarme dans CoDeSys rpond aux descriptions et dfinitions gnrales
relatives aux alarmes:
Alarme: une alarme est gnralement considre comme tant une condition spciale (valeur
d'expression).
Priorit: la priorit ou "Severity" d'une alarme dcrit quel point la condition d'alarme est
importante ou lourde de consquences. La plus grande priorit est "0", la moins urgente est "255".
tat d'alarme : une expression / variable configure pour la surveillance par alarme peut prendre
les tats suivants: NORM (pas d'tat d'alarme), INTO (une alarme est intervenue, "l'alarme entre"),
ACK (l'alarme est intervenue et a t confirme par l'utilisateur), OUTOF (l'tat d'alarme est
termin, "l'alarme est sorti'', mais pas encore confirme!)
Sous-tat : une condition d'alarme peur disposer de limites (Lo, Hi) et de limites "extrmes" (LoLo,
HiHi). Exemple : la valeur d'une expression augmente et dpasse tout d'abord la limite Hi, ce qui
dclenche l'alarme Hi. Si la valeur continue augmenter et dpasse la limite HiHi avant mme que
l'alarme Hi n'ait pu tre confirme, cette dernire se confirme automatiquement en interne et il ne
reste plus que l'tat d'alarme HiHi dans la liste des alarmes (liste interne de gestion des alarmes).
L'tat Hi est dsign dans ce cas par les termes de sous-tat
Confirmation d'alarmes : une application principale de l'alarme est de communiquer une situation
d'alarme l'utilisateur. cet gard, il s'avre souvent ncessaire de s'assurer que l'information
bien t reue (voir actions possibles dans la configuration des classes d'alarme). L'utilisateur doit
"confirmer" l'alarme afin que cette dernire puisse tre efface de la liste des alarmes.
vnement d'alarme : un vnement d'alarme ne doit pas tre confondu avec une condition
d'alarme. Alors qu'une condition d'alarme peut s'tendre sur une dure plus longue, un vnement
d'alarme dcrit l'apparition momentane d'une modification, par exemple le passage de l'tat
normal l'tat d'alarme. vnements d'alarme possibles: INTO, OUTOF, ACK,
CoDeSys V2.3
6-11
Configuration de l'alarme
6.3.3
Classes d'alarme
Les classes d'alarmes servent la description gnrale de certains critres d'alarme comme par
exemple la philosophie de l'acquittement (confirmation d'une alarme par l'utilisateur), l'excution de
l'action (ce qui doit se passer automatiquement avec certains tats d'alarme) et la visualisation au
sein du Tableau d'alarme. Les classes d'alarmes sont dfinies de manire globale dans la
Configuration de l'alarme et font alors office de "Configuration de base" pour chaque groupe d'alarme.
Configuration des classes d'alarmes :
marquez l'entre 'Classes d'alarmes' dans l'arborescence de configuration d'alarmes. Cela vous
donne accs au dialogue de configuration des 'Classes d'alarmes':
Dialogue de configuration des 'Classes d'alarmes'
6-12
CoDeSys V2.3
6 - Ressources
Appuyez sur le bouton Ajouter pour crer une classe d'alarme. Une ligne est alors ajoute dans la
fentre suprieure, n'affichant tout d'abord que le paramtrage "NOACK" (no acknowledgement = pas
d'acquittement) dans la colonne 'Acquittement'. Attribuez un nom la classe d'alarme ; cliquez pour
ce faire sur le champ sous Nom, ce qui vous donne accs un cadre d'dition, choisissez si
ncessaire un autre type d'acquittement dans la liste de slection propose sous Accus de
rception.
Les types d'acquittement suivants sont possibles :
NO_ACK:
ACK_INTO:
une "condition d'alarme entrant" (statut "INTO", l'alarme commence) doit tre
acquitte par l'utilisateur.
ACK_OUTOF: une "condition d'alarme sortant" (statut "OUTOF", l'alarme se termine) doit tre
acquitte par l'utilisateur.
ACK_ALL:
toutes les conditions d'alarme (entrant ou sortant) doivent tre acquittes par
l'utilisateur.
Chaque classe d'alarme peut se voir attribuer une liste d'actions qui seront dclenches ds que des
vnements d'alarmes interviennent.
Marquez dans la liste Actions possibles celle que vous souhaitez et transfrez-la dans le champ
Actions assignes par le biais du bouton ">". Le bouton ">>" vous permet de slectionner
simultanment toutes les actions. De mme, vous pouvez supprimer par le biais de "<" ou de "<<"
une ou encore toutes les actions de la slection.
Lorsqu'une action slectionne est marque dans la liste, le bouton "..." vous donne accs au
dialogue correspondant afin d'y dfinir l'adresse e-mail souhaite, la configuration de l'imprimante
ainsi qu'un texte de message.
Les types d'action ci-aprs sont supports :
Action
Description
Paramtrage
correspondant :
effectuer
dans
le
dialogue
Enregistrer:
Imprimer:
CoDeSys V2.3
6-13
Configuration de l'alarme
Message:
E-Mail:
Un message lectronique
est envoy, contenant le
texte dfinir.
Variables:
Le statut d'alarme ou un
texte de message est
attribu une variable du
projet actuel.
Excuter :
6-14
MESSAGE
DATE
TIME
EXPRESSION
PRIORITY
VALUE
TYPE
CLASS
TARGETVALUE
DEADBAND
ALLDEFAULT
CoDeSys V2.3
6 - Ressources
Exemple :
Saisissez les lments suivants dans la fentre des messages, cela pour la dfinition de la bote de message
(action 'Message' ) :
Saisissez en outre ce qui suit pour la dfinition de l'alarme dans le groupe d'alarmes, dans le champ de tableau
'Message': "Temperature critical !". Le message d'alarme apparatra alors comme suit l'cran :
Remarque: Le texte de message peut galement tre pris en compte lors de la commutation du projet une
autre langue, cela par le biais dun fichier *.vis ou dun fichier de traduction *.tlt. Afin dtre repris
dans le fichier de traduction *.tlt, la chane de caractre correspondante doit cependant tre pourvue
du symbole "#" au dbut et la fin, comme pour tous les textes se rapportant aux visualisations
(p.ex. dans lexemple ci-dessus: "#Temperature critical!#" et "TIME /EXPRESSION: MESSAGE
#current#: VALUE", cela afin de conserver les parties adquates de texte comme
ALARMTEXT_ITEM dans le fichier de traduction.)
Un fichier de sauvegarde pour l'action 'Enregistrer' est dfini au sein de la configuration des groupes
d'alarme.
vnements pour les actions :
Pour chaque action, il faut dterminer les vnements d'alarme dclencheurs.
Activez les vnements souhaits :
INTO
L'alarme commence.
ACK
CoDeSys V2.3
6-15
Configuration de l'alarme
6.3.4
Groupes d'alarme
Les groupes d'alarmes servent structurer les diffrentes alarmes. Chaque alarme est attribue de
manire stricte un seul groupe d'alarme et est gre par ce dernier. Toutes les alarmes au sein d'un
groupe peuvent recevoir une seule et mme variable de dsactivation ainsi que des paramtres
communs pour l'enregistrement de l'alarme. Le groupe peut donc servir la structuration des alarmes
disponibles. Mme une alarme individuelle doit tre configure dans un groupe d'alarmes.
La structure hirarchique des groupes d'alarmes dans la configuration d'alarme peut tre construite
l'aide d'lments de dossiers. Lorsqu'un groupe d'alarme est slectionn dans l'arborescence des
alarmes, le dialogue de Groupe d'alarme est automatiquement affich :
Dialogue de configuration 'Groupe d'alarme'
Le champ Description vous permet de saisir une dsignation pour le groupe d'alarme.
La Variable de dsactivation peut tre une variable boolenne de projet qui dsactive avec un front
montant le dclenchement pour toutes les alarmes du groupe prsent, et qui l'active nouveau avec
un front descendant.
Le bouton Ajouter vous permet d'ajouter des alarmes individuelles au groupe, ces alarmes tant
dfinies par les paramtres ci-dessous:
Expression: La variable de projet laquelle l'alarme se rapporte. Aidez-vous de la liste de slection
pour l'dition <F2> ou de la fonction Intellisense pour une saisie correcte. Il est galement possible de
saisir une expression (p.ex. "a + b")
Type: Les types d'alarmes ci-dessous peuvent tre utiliss : (Notez le commentaire correspondant
affich en bas du tableau)
DIG=0: Alarme numrique, devient active lorsque l'expression prend la valeur FALSE.
DIG=1: Alarme numrique, devient active lorsque l'expression prend la valeur TRUE.
LOLO: Alarme analogique, devient active lorsque l'expression dpasse par le bas la valeur
indique sous 'type d'alarme LOLO'. Il est possible de saisir une tolrance
(pourcentage) par rapport cette valeur. Dans cette zone de tolrance, aucune alarme
ne se dclenche, mme si la valeur LOLO est dpasse par le bas.
6-16
CoDeSys V2.3
6 - Ressources
LO:
Identique LOLO
HI:
Alarme analogique, devient active lorsque l'expression dpasse la valeur indique sous
'type d'alarme HIHI'. Il est possible de saisir une tolrance (pourcentage) par rapport
cette valeur. Dans cette zone de tolrance, aucune alarme ne se dclenche, mme si
la valeur HI est dpasse.
HIHI:
Identique HI
DEV-:
Dviation (dviation par rapport la valeur cible); l'alarme devient active lorsque
l'expression dpasse par le bas la valeur cible indique sous 'Type d'alarme DEV-' +
une dviation exprime en pourcentages. Pourcentage de dviation = valeur cible*
(dviation en %) /100.
DEV+: Dviation (dviation par rapport la valeur cible); l'alarme devient active lorsque
l'expression dpasse la valeur cible indique sous 'Type d'alarme DEV-' + la dviation
indique. Pourcentage de dviation = valeur cible* (dviation en %) /100.
ROC:
Rate of Change (taux de changement par unit de temps); l'alarme devient active
lorsque l'expression a trop fortement chang par rapport la valeur prcdente. La
valeur limite de l'intensit du changement dclenchant l'alarme est dfinie par le
nombre d'units (changement de valeur) qui sont modifies par seconde, minute ou
heure.
Classe:Slectionnez la Classe d'alarme souhaite. Vous pouvez alors choisir entre les classes
dfinies au sein de la configuration des classes d'alarme avant la dernire sauvegarde du projet.
Priorit:Vous pouvez ici saisir une priorit entre 0 et 255, 0 reprsentant la plus haute priorit. La
priorit agit sur le tri au sein du tableau d'alarme.
Message:Dfinissez ici un texte pour le message qui pourra tre affich dans le tableau d'alarme ou
par le biais de la macro "MESSAGE" au sein de chaque action. Cette bote doit tre confirme par
OK, ce qui ne confirme cependant pas automatiquement l'alarme ! Pour confirmer l'alarme, il faut
avoir accs la liste des alarmes, ce qui est possible via l'lment de visualisation 'Tableau d'alarme',
ou encore via la date de l'entre de l'alarme reprendre dans un fichier de sauvegarde pouvant tre
cr en option.
Dsactivation On peut saisir ici une variable de projet qui dsactiverait le dclenchement de l'alarme
avec un front montant. Notez cependant que cette entre est crase par une saisie dans le champ
'Variable de dsactivation' (voir plus haut).
6.3.5
Enregistrement de l'alarme
Un fichier peut tre dfini pour chaque groupe d'alarmes, ce fichier enregistrant les vnements
d'alarme pour autant (!) qu'un "Enregistrement" soit activ dans la Liste d'actions de la classe
concerne.
Slectionnez le groupe d'alarmes dans l'arborescence de configuration des alarmes puis choisissez
l'onglet du dialogue 'Enregistrement de l'alarme':
Dialogue de configuration 'Enregistrement de l'alarme'
CoDeSys V2.3
6-17
Configuration de l'alarme
Heure
PLC_PRG.b LO
PLC_PRG.n HIHI
-30
-31
35
Priorit Message
Alarm_high
Mess1
Avertissement 9
Mess2
Exemple :
1046963332,6.3.03 16:08:52,INTO,PLC_PRG.ivar5,HIHI,,,,
9.00,a_class2,0,
1046963333,6.3.03 16:08:53,INTO,PLC_PRG.ivar4,ROC,2,,,
6.00,a_class2,2,
1046963333,6.3.03 16:08:53,INTO,PLC_PRG.ivar3,DEV-,,,,
-6.00,a_class2,5,
1046963334,6.3.03 16:08:54,INTO,PLC_PRG.ivar2,LOLO,-35,,3,
temperature !
1046963334,6.3.03 16:08:54,INTO,PLC_PRG.ivar1,HI,20,,5,
high ! Acknowledge !
6.3.6
-47.00,warning,10,warning: low
47.00,a_class1,2,temperature to
Vous pouvez dfinir ici le format dans lequel la date et l'heure doivent tre affichs dans le Fichier
d'enregistrement pour les alarmes. Saisissez les formats conformment la syntaxe suivante, les
traits d'union et deux-points sont enferms entre des guillemets simples :
pour la date : dd'-'MM'-'yyyy -> p.ex. "12-Jan-1993"
pour l'heure : hh':'mm':'ss -> p.ex. "11:10:34"
Catgorie Langage:
Slectionnez ici un fichier de langue qui doit tre utilis pour la commutation vers une autre langue et
qui doit donc galement contenir les textes de la configuration d'alarme. Reportez-vous pour ce faire
aux descriptions ci-dessous :
- Visualisation, Configuration de la langue
- Traduire projet dans un autre langage
6-18
CoDeSys V2.3
6 - Ressources
CoDeSys V2.3
6-19
Gestionnaire de bibliothques
Bibliothque standard
La bibliothque 'standard.lib' est mise votre disposition par dfaut. La bibliothque standard contient
l'ensemble des fonctions et blocs fonctionnels requis par la norme CEI61131-3, dans laquelle sont
dfinis les modules standard ncessaires un systme de programmation CEI. La diffrence entre
une fonction standard et un oprateur rside dans le fait que l'oprateur est connu de faon implicite
par le systme de programmation, alors que les modules standard doivent tre intgrs au projet
sous forme de bibliothque (standard.lib).
Le code relatif ces modules est prsent sous forme de bibliothque "C" et fait partie intgrante de
CoDeSys.
Les bibliothques dfinies par l'utilisateur
Un projet peut tre enregistr en tant que bibliothque par le biais de la commande 'Enregistrer
sous' dans le menu 'Fichier'. Le projet lui-mme reste inchang, un fichier avec lextension standard
".lib" est cr, qui sera par la suite mis disposition sous le nom que vous lui aurez attribu, comme
cest le cas par exemple pour la bibliothque standard.
Pour pouvoir utiliser les modules dun projet dans le cadre dun autre projet, elle est sauvegarde
comme Bibliothque interne *.lib. Elle peut alors tre lie un autre projet par le biais du
gestionnaire de bibliothques, comme cest par exemple le cas pour la bibliothque standard.lib.
Remarque : Notez la possibilit de dfinir par le biais de pragmas dans quelle mesure la partie de dclaration de
la bibliothque doit tre affiche dans le gestionnaire de bibliothques lorsque cette bibliothque sera
ultrieurement associe un projet ("masquage" de dclarations de variables, voir chap.5.2.3).
Cependant, si vous avez implment des modules dans dautres langages de programmation, par
exemple C, et que vous souhaitez les relier un autre projet par lintermdiaire dune bibliothque,
vous devez slectionner lors de lenregistrement du projet en question le type de fichier Bibliothque
externe *.lib. Cela signifie qu'un fichier supplmentaire en plus du fichier de bibliothque sera cr
portant galement le nom de fichier de bibliothque mais avec l'extension "*.h". Ce fichier est
structur comme fichier du langage de programmation C (Header-file) et comporte les dclarations de
tous les modules, types de donnes et variables globales disponibles dans la bibliothque. Si une
bibliothque externe est utilise dans un projet, l'implmentation crite pour les modules dans
CoDeSys sera excute en mode simulation. Par contre, un systme cible utilise l'implmentation
crite en langage C lors de l'excution.
Si vous souhaitez soumettre une bibliothque une licence, vous devez appuyer sur le bouton Edit
info de licence... et saisir les donnes adquates dans la bote de dialogue 'diter les informations
relatives lattribution dune licence'. Reportez-vous pour ce faire la description de la commande
'Fichier' 'Enregistrer sous...' ou la rubrique Gestion des licences dans CoDeSys.
'Insrer' 'Autre bibliothque'
Cette commande permet d'associer une nouvelle bibliothque votre projet. :
Cette commande ouvre la bote de dialogue pour louverture dun fichier. Si le rpertoire actuellement
slectionn ne contient pas la bibliothque souhaite, vous pouvez choisir dans le champ Rpertoire
de
bibliothques
un
autre
rpertoire
parmi
les
rpertoires
dfinis
sous
Projet/Options/Rpertoires/Bibliothques (voir chap.4.2), et vous obtiendrez laffichage des fichiers
de bibliothque disponibles dans ce rpertoire (fichier de type "*.lib"). Slectionnez la bibliothque ou
les bibliothques souhaites un choix multiple est possible et confirmez votre choix avec le bouton
OK. La bote de dialogue se ferme et la bibliothque est ajoute dans le gestionnaire de
bibliothques. prsent, vous pouvez utiliser les objets de la bibliothque comme si ces objets
taient dfinis par vous-mme.
Chemins daccs de bibliothque :
Veuillez noter les rpertoires de bibliothques actuellement dfinis dans les options du projet. Si vous
insrez une bibliothque dun rpertoire qui nest pas indiqu dans les options du projet, la
bibliothque sera introduite avec lindication du chemin daccs correspondant.
Exemple : Vous intgrez la bibliothque standard.lib du rpertoire "D:\ progsys\libraries\standard".
6-20
CoDeSys V2.3
6 - Ressources
Si ce rpertoire est dfini dans les options du projet, alors lentre suivante sera effectue dans le
gestionnaire de bibliothques : "standard.lib <date and time of file>".
Si un seul rpertoire "D:\ progsys\libraries" est dfini dans les options du projet, alors lentre
suivante sera effectue : "standard\standard.lib <date and time of file>".
Si aucun rpertoire adquat nest dfini dans les options du projet, alors le chemin daccs absolu
sera entr dans son intgralit. "D:\ progsys\libraries\standard\standard.lib <date and time of file>".
Lorsque vous ouvrez le projet, les bibliothques enregistres dans le gestionnaire de bibliothques
sont recherches en fonction des entres figurant dans les options du projet. Ainsi, une bibliothque
enregistre sans indication de chemin daccs sera recherche dans les rpertoires de bibliothques
dfinis dans les options du projet.
Si des bibliothques ne sont pas trouves lors de louverture dun fichier, le systme vous demande si
vous souhaitez modifier le rpertoire indiqu dans les options du projet. En cas de refus, une bote de
dialogue contenant des informations sur la bibliothque non trouve souvre et les entres
concernes apparaissent en rouge dans le gestionnaire de bibliothques. Au cas o il y a une entre
marque en rouge, la commande Rechercher... est disponible dans le menu contextuel. Vous
obtenez alors un dialogue qui vous permet douvrir un fichier et, le cas chant, de charger
directement la bibliothque manquante.
Licence :
Si vous insrez une bibliothque sujette une licence, un message vous indique que cette
bibliothque nest disponible quen mode dmonstration ou quelle nest pas valable pour le systme
cible tel quactuellement paramtr. Vous pouvez ignorer ce message ou prendre les mesures
ncessaires quant la licence. Des licences non valables crent un message d'erreur lors de la
compilation du projet ('Projet' 'Compiler'). En double-cliquant sur le message derreur ou en appuyant
sur <F4>, vous avez accs la bote de dialogue 'Informations relatives l'attribution d'une licence'
grce laquelle vous pouvez prendre les mesures ncessaires quant cette licence.
Enlever une bibliothque
La commande 'Editer' 'Supprimer' vous permet d'enlever une bibliothque d'un projet et du
gestionnaire de bibliothques.
'Extras' 'Proprits'
Cette commande donne accs la bote de dialogue 'Informations relatives l'attribution d'une
licence'. Dans le cas des bibliothques internes, elle comprend, en plus des statistiques, toutes les
donnes qui ont t introduites lors de la cration de la bibliothque en tant qu'Info sur le Projet, ce
qui englobe entre autres les 'Informations sur l'attribution d'une licence'. Dans le cas des bibliothques
externes, elle indique le nom de la bibliothque et le chemin d'accs.
6.5 Journal
Le journal enregistre dans lordre chronologique toutes les actions qui ont lieu lors dune session En
Ligne. Pour ce faire, un fichier journal en format binaire (*.log) est cr pour chaque projet. En outre,
lutilisateur peut sauvegarder des extraits provenant de chaque journal de projet dans un journal
externe.
Vous pouvez accder la fentre du journal En ligne et Hors ligne, et celle-ci peut ainsi galement
servir despion direct en mode En ligne.
'Fentre' 'Protocole en ligne'
Pour y avoir accs, slectionnez loption 'Fentre' 'Protocole en ligne' ou encore lentre
correspondante ('Journal') dans longlet Ressources.
CoDeSys V2.3
6-21
Journal
Fentre de journal
Le nom du journal en cours dutilisation est indiqu la suite de Journal : au dessus de la fentre de
protocole. Sil sagit du journal du projet en cours, "(Interne)" est galement affich.
Les entres consignes sont indiques dans la fentre de protocole. La dernire entre est toujours
ajoute la fin.
Les actions des catgories actives dans le cadre du menu 'Projet' 'Options' 'Journal', rubrique 'Filtre'
sont seules visualises.
Les informations relatives lentre slectionne dans la fentre de protocole sont affiches en
dessous de cette mme fentre.
Catgorie : Il sagit de la catgorie de l'entre de journal. Les quatre catgories suivantes sont
possibles :
Actions par l'utilisateur : lutilisateur a excut une action En ligne (normalement partir du
menu En ligne).
Actions internes : une action interne a t excute au niveau En ligne (par exemple Effacer
mmoires tampons (Delete Buffers) ou Init dbogage (Init Debugging)).
Changements de l'tat : le statut du systme dexcution a t modifi (par exemple, passage de
En cours (Running) Pause (Break) si on est pass par un point darrt).
Exceptions : Une exception est survenue, par exemple une erreur de communication
Description : Il sagit du type daction. Les actions de l'utilisateur portent le mme nom que le menu
correspondant, toutes les autres actions sont libelles en anglais et portent le mme nom que leur
fonction OnlineXXX() correspondante.
Information : Ce champ contient une description des erreurs qui se sont ventuellement produites au
cours de laction. Sil ny a pas eu derreur, ce champ reste vide.
Temps du systme : Le temps du systme au dbut de laction, la seconde prs.
Temps relatif : le temps par rapport au dbut de la session En ligne, la milliseconde prs.
Dure : la dure de laction en millisecondes.
6-22
CoDeSys V2.3
6 - Ressources
Menu Journal
Si la fentre du journal est la fentre active, loption Journal sera affiche la place du point 'Insrer'
dans la barre des menus.
Le menu vous offre le choix entre les points suivants :
Charger
Enregistrer
Cette option ne peut tre slectionne que si cet instant le journal du projet
est affich. Cette commande permet de sauvegarder un extrait du journal du
projet dans un fichier externe. cet effet, la bote de dialogue suivante
saffiche lcran, vous permettant de slectionner les sessions En ligne
sauvegarder.
Enregistrer le journal
Indpendamment dune sauvegarde possible du journal dans un fichier externe, le journal du projet
est enregistr automatiquement dans un fichier binaire <Nom du projet>.log. Si un autre chemin
daccs nest pas donn explicitement dans la bote de dialogue 'Projet' 'Options' 'Journal', la cration
se fera dans le mme rpertoire que celui dans lequel le projet est enregistr.
Le nombre maximal de sessions En ligne pouvant tre enregistres peut tre dtermin dans la bote
de dialogue 'Projet' 'Options' 'Journal'. Si ce nombre est dpass durant lenregistrement en cours, les
sessions les plus anciennes sont effaces de la mmoire tampon au profit des nouvelles.
CoDeSys V2.3
6-23
Configuration de l'automate
Apercu
La configuration de lautomate
est prsente sous forme dobjet dans longlet Ressources de
lOrganisateur dobjets. Elle donne accs un diteur de configuration avec lequel le matriel cible,
sur lequel le projet actuellement ouvert doit tourner, peut tre dcrit. Pour laborer le programme, il
importe de connatre le nombre et lemplacement des diffrentes entres et sorties. CoDeSys se
fonde sur cette description pour vrifier si les adresses CEI utilises dans le programme existent bien
au niveau du matriel.
Les fichiers de configuration (* cfg, voir ci-dessous 'Remarques sur la compatibilit') ou les fichiers de
matriel (p.ex. *.gsd, .eds) sont la base de tout travail dans lditeur de configuration ; ces fichiers
sont trouver dans un rpertoire dfini par le fichier cible (voir Configuration du systme cible) ou
dfini dans les options du projet et sont lus lors du dmarrage du projet. Le fichier de configuration
dcrit une configuration de base qui est automatiquement visualise lors de louverture de lditeur et
indique les possibilits de paramtrage encore disponibles dans lditeur.
Attention: Lorsque le fichier de configuration est modifi, la configuration se basant sur ce fichier doit tre
refaite dans CoDeSys.
Remarques sur la compatibilit: Un nouveau format de configuration dautomate a t introduit dans
CoDeSys V2.2, et les fichiers de configuration ayant servi de base sont munis de lextension *.cfg.
Le configurateur dautomate utilis pour la programmation de projets plus anciens se basait quant
lui sur des fichiers de configuration reconnaissables lextension *.con. Le systeme cible poit
dterminer si le 'vieux' configurateur doit continuer tre utilis, mme si un projet plus ancien est
ouvert en V2.2 ou plus. Ceci vous pargne une transcription des fichiers de configuration vu que les
fichiers *con peuvent tre utiliss tout en restant inchangs. Si le systme cible ne supporte pas
lancien configurateur, la configuration de lautomate enregistre dans le projet peut tre convertie au
nouveau format, pour autant quun fichier *.cfg ait t prpar cet effet. Voir pour ce faire 'Extras'
'Convertir'.
Le configurateur dautomate CoDeSys permet la connexion de modules d'E/S simples ainsi que de
modules Profibus, CAN et DeviceNet.
Si le systme cible le supporte, vous pouvez directement intgrer les informations structurelles du
prsent matriel de commande dans la configuration (scannage) ou faire afficher des messages de
diagnostic et dtat de la commande dans CoDeSys.
Aprs que lutilisateur ait termin la configuration dans lditeur, une reprsentation binaire du projet
est transmise lautomate lors du tlchargement de ce projet.
Le systme cible actuellement utilis dtermine ventuellement la poursuite du travail avec la
configuration de lautomate utilise dans CoDeSys V2.1. Dans ce cas, la documentation utilisateur
de CoDeSys V2.1 fera foi pour lutilisation du configurateur et les extensions du configurateur
suivantes sont prendre en considration :
Configurateur CAN :
Option "Crer tous les SDO" dans le dialogue 'Paramtres CAN' dun module CAN (voir
chap.6.6.8)
Attention : dsormais, la cration des SDO sera toujours effectue selon le mcanisme
utilis dans le configurateur V2.3, cest--dire que les rsultats diffreront peut-tre des
rsultats obtenus jusquici !
Champ de saisie "Device-Type" dans la bote de dialogue 'Configuration CAN' dun
CanDevice (voir chap. 6.6.9).
Configuration du Profibus :
La liste de slection des modules Profibus prts tre insrs (voir chap. 6.6.7) est
dsormais classe par ordre alphabtique en fonction des noms de module.
6-24
CoDeSys V2.3
6 - Ressources
6.6.2
La configuration est prsente dans lditeur sous forme darborescence et peut tre traite par le
biais de commandes de menus et de botes de dialogue. Il existe des lments qui sont soit des
entres, soit des sorties, soit des lments de gestion, possdant eux-mmes des sous-lments
(p.ex. un bus CAN, un PROFIBUS ou une carte dentres digitales 8 entres).
Les entres et sorties apparaissent dans lditeur avec ladresse CEI permettant dy accder. Dans
les cas standard, on peut attribuer chaque entre ou sortie un nom symbolique permettant de
lidentifier ; celui-ci sera plac avant ladresse CEI.
Si vous ouvrez des projets contenant une configuration dautomate effectue laide des versions
plus anciennes de CoDeSys, celle-ci peut tre convertie au nouveau format de configuration standard
dautomates.
La fentre de lditeur de configuration est divise en deux : la partie gauche contient larborescence
de configuration. La structure et le contenu de cette arborescence se composent en premier lieu des
dfinitions des fichiers de configuration (configuration par dfaut), ils peuvent cependant tre modifis
par le biais des configurations effectues par lutilisateur dans le cadre du projet. La partie droite de
lcran est rserve aux botes de dialogue de configuration correspondant aux lments
slectionns, rparties sur un ou plusieurs onglets.
Laffichage de la bote de dialogue de configuration est activ par dfaut mais peut tre dsactiv via
la commande 'Extras' 'Proprits'.
Le module "Root" est plac la tte de larborescence de configuration, caractris par le symbole et
une identification qui lui aura t attribue dans le fichier de configuration. Les autres lments de la
configuration sont indents en dessous et par ordre hirarchique : il sagit de modules de diffrents
types (CAN, PROFIBUS, E/S), de canaux ou de canaux binaires (identifications de bits l'intrieur
d'un canal).
Slection d'lments
Pour slectionner des lments, cliquez avec la souris sur llment correspondant ou dplacez le
rectangle en pointills sur llment voulu, au moyen des touches directionnelles.
Les lments qui sont prcds d'un signe plus sont des lments dorganisation contenant des souslments. Pour ouvrir un tel lment, il faut le slectionner et double-cliquer sur le signe plus ou
encore appuyer sur la touche <Entre>. Les lments ouverts (signe moins devant llment) se
laissent refermer de la mme manire.
CoDeSys V2.3
6-25
Configuration de l'automate
6-26
CoDeSys V2.3
6 - Ressources
6.6.3
Settings
Marquez lentre en tte de larborescence de configuration (module Root). Vous obtenez alors la
bote de dialogue 'Settings' :
Calculer les adresses automatiquement: Chaque module que vous ajoutez obtient
automatiquement une adresse qui est le rsultat du module insr juste avant, ajout sa propre
dimension. Si vous enlevez un module de la configuration, les adresses des modules suivant celui-ci
sont automatiquement adaptes en consquence. La commande 'Extras' 'Calcul des adresses'
permet de recalculer toutes les adresses partir du nud (module) actuellement slectionn.
Vrifier superposition d'adresses: Les superpositions dadresses sont vrifies et communiques
lors de la compilation du projet.
CoDeSys V2.3
6-27
Configuration de l'automate
Le mode global dattribution dadresses (adresses plates / adresses selon lidentit) au sein de la
configuration dautomate est prdfini dans le fichier de configuration.
6.6.4
6-28
CoDeSys V2.3
6 - Ressources
6.6.5
Si vous slectionnez un module d'E/S dans l'arborescence de configuration, vous obtenez la bote de
dialogue des 'Paramtres de base' comprenant les entres suivantes :
Id. du module : l'identit du module est une identification univoque du module au sein de
l'environnement total de configuration. Elle est reprise hors du fichier de configuration et n'est pas
ditable.
Numro de noeud : le numro de noeud dcoule d'une entre dans le fichier de configuration ou de
sa position dans l'arborescence de configuration si une telle entre n'est pas dfinie dans le fichier de
configuration.
Adresse d'entre, Adresse de sortie, Adresse de diagnose : adresses pour les entres et sorties
ou pour l'enregistrement des donnes de diagnostic.
Ces adresses se rapportent au module. Les adresses dj dfinies, les modes d'adressages utiliss
dans la configuration et si cet emplacement est encore ditable dpendent des rglages gnraux
(Settings) et des dfinitions dans le fichier de configuration.
Commentaire: Ici vous pouvez introduire des informations complmentaires relatives au module.
Charger description du module : Si cette option est dsactive (elle l'est par dfaut), le module ne
sera pas pris en compte lors d'un tlchargement. On dfinit dans le fichier de configuration *.cfg si
l'option doit tre visible et ditable dans le prsent dialogue.
Ne pas changer les adresses automatiquement :cette option n'est disponible que si cela a t
dfini dans le fichier de configuration. Si elle est active, le module est exclu lors d'un Calcul
automatique des adresses.
Vous trouverez de plus amples informations relatives au diagnostic dans la configuration d'automate :
Une adresse de mmento doit tre saisie dans le champ Adresse de diagnostic, laquelle les
informations de diagnostic sont automatiquement crites. Dans le cas des modules d'E/S normaux, la
faon dont l'adresse de diagnostic est traite dpend de la configuration spcifique du matriel. Pour
les systmes de Bus CAN ou Profibus DP, les adresses de diagnostic sont soumises aux points
suivants : Il faut spcifier une adresse mmento partir de laquelle se fera l'enregistrement des
informations de diagnostic. Ces informations sont cres dans une structure GetBusState contenue
dans une bibliothque spcifique au fabricant (par exemple BusDiag.lib de 3S - Smart Software
Solutions GmbH).
CoDeSys V2.3
6-29
Configuration de l'automate
Aprs qu'une tche CEI ait envoy ses donnes de processus aux modules E/S ou lu ces donnes
partir des modules, tous les modules sont rgulirement invit remplir la structure de diagnostic
GetBusState.
Si un des participants disponibles sur le bus annonce une erreur, ses donnes spcifiques de
diagnostic peuvent tre lues avec le module DiagGetState (galement dfini dans la bibliothque ci
avant nomme). Cette fonction n'est cependant active que si le Bus principal a galement t
configur dans le cadre de CoDeSys.
Voyez ci-dessous les paramtres d'entre et de sortie pour le bloc fonctionnel DiagGetState, appel
pour la lecture des informations de diagnostic pour un participant de Bus prcis.
Variables d'entre du DiagGetState:
ENABLE: BOOL;
DRIVERNAME:
POINTER TO
STRING;
6-30
READY: BOOL ;
STATE:INT;
EXTENDEDINFO:
ARRAY [0..129] OF
BYTE;
CoDeSys V2.3
6 - Ressources
Les paramtres donns dans le fichier dappareils sont visualiss. On ne peut procder ldition que
dans la colonne Valeur.
Index : il sagit dun numro courant (i) qui numrote les paramtres au sein du module.
Nom : nom du paramtre
Valeur : valeur modifiable du paramtre
La valeur par dfaut est tout d'abord affiche. Les valeurs peuvent tre affiches directement ou par
le biais dun nom symbolique. Elles peuvent tre dites, pour autant que les entres du fichier de
configuration ne soient pas rgles sur 'Lecture seule', en ouvrant un champ de saisie au moyen dun
clic sur la valeur ou en slectionnant une autre valeur dans une liste de dfilement. Si la valeur
mentionne un fichier, un double-clique sur cette valeur ouvre une bote de dialogue 'Ouvrir fichier' qui
vous permet alors de slectionner un autre fichier.
Prfrence : valeur par dfaut du paramtre
Min. : valeur minimale du paramtre (uniquement si reprsentation directe des valeurs)
Max. : valeur maximale du paramtre (uniquement si reprsentation directe des valeurs)
Le cas chant, vous pouvez obtenir des informations supplmentaires sur le paramtre actuellement
slectionn par le biais dune info-bulle.
La bote de dialogue des paramtres spcifiques lapplication peut apparatre la place de la bote
de dialogue des paramtres du module. Cest le cas lorsquune bote de dialogue pour les paramtres
spcifiques lapplication a t 'rattache' pour le module concern au moyen dune DLL
Hook.Paramtrage d'un canal
CoDeSys V2.3
6-31
Configuration de l'automate
6.6.6
6-32
CoDeSys V2.3
6 - Ressources
6.6.7
CoDeSys V2.3
6-33
Configuration de l'automate
Le bouton Fichier GSD vous permet d'ouvrir et de visualiser le fichier GSD relatif aux appareils.
Le bouton Groupes vous donne accs la bote de dialogue 'Caractristiques des groupes'. Les
caractristiques de groupe se rapportent aux esclaves affects au matre. Vous pouvez amnager
jusqu' huit groupes. Dterminez pour chaque groupe s'il doit fonctionner en mode Freeze et/ou en
mode Sync. Grce au classement des esclaves en diffrents groupes (voir ci-dessous :
'Caractristiques des DP esclaves', 'Assignation un groupe'), l'change de donnes peut tre
synchronis via une commande de contrle global partir du matre. Par la commande Freeze, le
matre ordonne un esclave ou un groupe de geler ses entres dans leur tat momentan et de
transmettre ces donnes lors de l'change de donnes suivant. Une commande Sync oblige les
esclaves transmettre aux sorties les donnes reues par le matre lors de l'change de donnes
suivant et ce de manire synchrone lors de la prochaine commande Sync.
Pour (ds)activer les options Freeze et Sync d'un groupe, cliquez l'aide du bouton gauche de la
souris sur l'endroit correspondant du tableau de faon placer/enlever un 'X' auprs de l'option
souhaite, tandis que le bouton droit de la souris vous permet d'activer ou de dsactiver cette option
via un menu contextuel. En outre, vous pouvez diter les noms des groupes.
Paramtre DP du DP matre / Caractristiques dau groupe
6-34
CoDeSys V2.3
6 - Ressources
Tous les paramtres peuvent galement tre dits manuellement selon votre gr.
Taux en bauds [kBits/s] Vous pouvez choisir entre les rglages effectus dans le cadre du
fichier GSD ; vous ne pouvez cependant rgler quun dbit de
transmission qui sera support par tous les esclaves
Optimiser
automatiquement
Slot Time
Min.Station Delay
Max.Station Delay
max TSDR (en Tbit) : dure maximale accorde lesclave pour une
rponse.
Quiet Time
TQUI (en Tbit): Temps d'inactivit qui doit tre respect lors d'une
conversion de signaux NRZ (Non Return to Zero) en dautres codages
(temps de commutation pour le rpteur)
TTR (en Tbit): dure de rotation nominale dun jeton ; dure projete
durant laquelle le matre devrait recevoir un jeton. Elle est le rsultat de
la somme des temps de retenue du jeton par tous les matres du bus.
Temps entre deux cycles de bus, durant lequel un esclave peut traiter
une requte du matre (base = 100 s). La valeur introduite ici doit tre
fonction des donnes par dfaut contenues dans les fichiers GSD des
esclaves.
CoDeSys V2.3
6-35
Configuration de l'automate
Poll Timeout
Watchdog Time
6-36
Info
Paramtres de
dfaut
CoDeSys V2.3
6 - Ressources
Activation
l'esclave est actif/non actif dans la configuration actuelle. Si vous n'optez pas
pour l'activation, les donnes de configuration des esclaves seront transmises au
coupleur lors d'un tlchargement, mais un change de donnes via le bus ne
peut se produire.
Watchdog
(surveillance)
Si Contrle Watchdog est activ, la dure introduite cet effet vaut (surveillance
de la rponse, base = 10 ms). Si le matre ne s'adresse pas l'esclave durant ce
temps, ce dernier revient son tat d'initialisation.
La procdure suivre pour la configuration de l'esclave est diffrente selon qu'il s'agisse d'un esclave
'modulaire' ou d'un esclave non modulaire 'fixe'.
La slection des modules pour l'esclave modulaire s'effectue comme suit :
Vous slectionnez le module d'entre ou de sortie que vous souhaitez en cliquant dessus dans la liste
de gauche et vous le copiez dans la fentre de droite par le biais du bouton >>. Des entres
incorrectes peuvent tre corriges en slectionnant le module non souhait dans la fentre de droite
et en appuyant sur le bouton Effacer. Les modules insrs sont immdiatement repris dans
l'arborescence de configuration. S'ils y sont marqus, vous avez accs au dialogue adquat Module
Profibus, qui reprend les adresses d'entre, de sortie et de diagnostic du module. Si un canal
appartenant ce module est marque, vous avez accs au dialogue Canal Profibus qui affiche
CoDeSys V2.3
6-37
Configuration de l'automate
l'adresse du canal. Vous pouvez dfinir pour ces deux dialogues un autre titre dans le fichier de
configuration.
Comme l'on doit tenir compte de la longueur maximale des donnes (Longueur max. de l'entre,
Longueur max. de la sortie, Longueur max. de l'entre / de la sortie) et du nombre maximal de
modules (No. max. de modules) indiqus dans le fichier GSD, ces informations sont affiches dans
les deux listes de modules. Le bloc de gauche reprsente les valeurs maximales possibles pour
l'appareil, le bloc de droite reprsente la somme des valeurs atteintes par la configuration
slectionne. En cas de dpassement des valeurs maximales, un message d'erreur s'affiche.
La bote de dialogue numre dans la fentre de gauche tous les modules d'entre et de sortie
disponibles dans le fichier GSD de l'esclave tandis que la fentre de droite contient la configuration
slectionne actuellement pour cet appareil en matire d'entres et de sorties.
S'il s'agit d'un esclave modulaire (appareil qui peut tre quip de diffrents modules d'entre et de
sortie), la slection s'effectue comme suit : vous slectionnez le module d'entre ou de sortie que
vous souhaitez en cliquant dessus dans la liste de gauche et vous le copiez dans la fentre de droite
par le biais de la touche >>. Des entres incorrectes peuvent tre corriges en slectionnant le
module non souhait dans la fentre de droite et en appuyant sur le bouton Effacer.
Ce mode de slection n'est pas possible auprs des esclaves non modulaires. Ceux-ci imposent
immdiatement une reprsentation fixe de leurs entres et sorties dans la fentre de droite.
Le bouton Caractristiques vous donne accs la bote de dialogue 'Caractristiques du module'
relative au module d'entre ou de sortie actuellement slectionn dans la liste de gauche ou de droite.
Celle-ci indique le Nom, la Configuration (codification de la description du module selon la norme
PROFIBUS) et la Longueur de l'entre (octets) ainsi que la Longueur de la sortie (Octets) du
module en Octets. Si, dans le fichier GSD, la description du module comprend, en plus du jeu
standard de paramtres, des paramtres spcifiques, ceux-ci sont numrs avec leur valeur et leur
plage de valeur. Si vous activez l'option Noms symboliques, les noms symboliques seront utiliss.
Bote de dialogue pour la caractristiques de entres/sorties d'un DP-Esclave
6-38
CoDeSys V2.3
6 - Ressources
Cette bote de dialogue sert assigner lesclave un ou plusieurs des huit groupes possibles. Les
caractristiques des groupes (Mode Sync et/ou Mode Freeze) gnralement acceptes cet gard
sont dfinies lors de la configuration des caractristiques du matre (voir 'Caractristiques du DP
matre', 'Caractristiques des groupes'). On accde galement cette bote de dialogue par le biais
du bouton Caractristiques globales du groupe.
CoDeSys V2.3
6-39
Configuration de l'automate
Le(s) groupe(s) auxquel(s) lesclave est assign est (sont) marqu(s) dun signe plus. Lassignation
ou lcartement dun esclave par rapport au groupe seffectue en slectionnant le nom du groupe
dans la colonne Appartenance un groupe, puis en slectionnant 'Ajouter un esclave au groupe' ou
'carter un esclave du groupe' par le biais du bouton droit de la souris, ou encore en cliquant
nouveau gauche du nom du groupe.
Un appareil esclave ne peut tre assign quaux groupes dont il supporte les caractristiques. Les
caractristiques de chaque esclave ce sujet (Mode Sync / Mode Freeze) sont indiques dans la
partie suprieure du tableau. Les modes supports par lappareil sont munis dun crochet.
Paramtre de module d'un DP-Esclave
La bote de dialogue des paramtres de module dun DP esclave correspond celle des autres
modules: Les paramtres qui ont t attribus lesclave en plus des paramtres DP et dutilisateur
dans le fichier de configuration sont reprsents ici, et leurs valeurs peuvent normalement tre
dites.
Caractristiques d'un DP esclave lors d'un fonctionnement esclave du Profibus
Si le Profibus est exploit en mode esclave, lappareil esclave est rattach au niveau du matre. La
configuration est possible par le biais de quatre onglets :
Paramtres de base
Paramtres DP
Paramtres de module
Entres / Sorties
6.6.8
6-40
CoDeSys V2.3
6 - Ressources
Vous pouvez dfinir ici les rglages globaux et les paramtres de surveillance pour le Bus CAN :
Configurez le Dbit en bauds qui doit tre utilis pour la transmission, au moyen de l'option
correspondante.
En ce qui concerne les PDO (Process Data Object), on distingue le mode de transmission synchrone
du mode de transmission asynchrone (voir les proprits PDO). Le message de synchronisation est
envoy avec un numro univoque Sync.COB-Id (Communication Object Identifier), dans l'intervalle
de temps spcifi dans la zone Com.munication Cycle Period, en microsecondes.
Activer : cest uniquement lorsque cette option est active quun envoi de messages de
synchronisation a lieu entre le matre et les esclaves.
Les PDO synchrones sont transmis immdiatement aprs le message de synchronisation dans la
fentre de temps (Sync. Window Length en microsecondes). Si les champs Comm. Cycle Period et
Sync. Window Length sont dfinis avec 0, aucun message de synchronisation n'est envoy.
Le Node-Id sert identifier de faon univoque le module CAN. Il correspond au numro configur
dans le module lui-mme et est compris entre 1 et 127. L'Id doit tre entr en dcimal. ( ne pas
confondre avec le 'Numro de nud' qui est en outre utilis dans la configuration de lautomate !)
CoDeSys V2.3
6-41
Configuration de l'automate
Si l'option Dmarrer automatiquement est active, alors le bus CAN est initialis et lanc
automatiquement lors du tlchargement et de l'amorage de l'automate programmable. Dans le cas
contraire, le bus CAN doit tre lanc l'intrieur du projet.
Si loption Supporter DSP301,V4.01 et DSP306 est active, des esclaves modulaires ainsi que des
extensions supplmentaires relatives aux normes DSP301 V3.01 et DSP306 seront supportes. Dans
ce cas, la cadence pour la fonction despionnage Heartbeat peut par exemple tre rgle (Heartbeat
Matre [ms]:), cette fonction pouvant tre utilise comme alternative la fonction Nodeguarding.
Contrairement cette dernire, les Heartbeats peuvent tre envoys partir de tous les modules
CAN indpendamment les uns des autres. Normalement, on procde une configuration telle que le
matre envoie les Heartbeats aux esclaves.
Paramtre de module d'un CAN-Matre
La bote de dialogue des paramtres d'une module CAN correspond celle des autres modules: Les
paramtres qui ont t attribus au matre en plus des paramtres CAN dans le fichier de
configuration sont reprsents ici, et leurs valeurs peuvent normalement tre dites.
Paramtres de base d'un module CAN
La bote de dialogue des paramtres de base dun CAN-esclave correspond celle des autres
modules (voir chapitre 0, Paramtres de base d'un module E/S).
Dans Adresse d'entre et Adresse de sortie, on entre, pour une configuration CAN, les adresses
CEI qui permettent d'accder aux PDO (Process Data Object) dans le projet. Le sens (entre ou
sortie) est dtermin par rapport au module.
Paramtre CAN d'un module CAN
Les paramtres CAN dun module CAN ne reprenant pas la fonction globale de surveillance en tant
que 'matre' se diffrencient de ceux dun CAN-Matre.
Section Gnral :
Le ID de nud sert identifier de faon univoque le module CAN. Il correspond au numro configur
dans le module lui-mme et est compris entre 1 et 127. L'Id doit tre entr en dcimal.
Si Ecrire DCF est activ, un fichier DCF est cr aprs qu'un fichier EDS ait t insr dans le
rpertoire configur et rserv aux fichiers de compilation. Le nom de ce fichier reprend le nom du
fichier EDS, derrire lequel on accole le Node-Id.
Si loption Crer tous les SDO est active, des SDO sont crs pour tous les objets, pas uniquement
pour les objets modifis.
Si loption Remettre le nud zro est active, lesclave procde une remise zro ds que la
configuration est charge sur lautomate.
Si loption Appareil optionnel est active (la disponibilit de loption dans la bote de dialogue
dpend du systme), le Matre nessaie quune seule fois de lire partir de ce nud. Ensuite, sil ne
rpond pas, le nud est ignor, c.--d. que le Matre commute vers ltat de fonctionnement normal.
Si loption Pas initialiser est active (la disponibilit de loption dans la bote de dialogue dpend du
systme), le Matre met immdiatement le nud en service, sans lui envoyer de SDO de
configuration. (Les donnes SDO sont toutefois cres et enregistres sur lautomate.)
Section Nodeguard : (alternative la fonction Heartbeat)
Si l'option Nodeguarding est active, alors un message est envoy au module dans l'intervalle de
temps spcifi au niveau de Guard Time, en millisecondes. Si le module ne rpond pas par le Guard
COB-ID (Communication Object Identifier) spcifi, alors l'tat Timeout est attribu au module. Si le
nombre de tentatives (Life Time Factor) est puis, alors le module est jug invalide. L'tat du
module est affich au niveau de l'adresse de diagnose (voir ci-dessus). Si rien n'est spcifi dans
Guard Time et dans Life Time Factor (0), il n'existe pas de contrle du module.
6-42
CoDeSys V2.3
6 - Ressources
Si loption Activer gnration heartbeat est active, le module envoie les Heartbeats selon les
intervalles indiqus sous Heartbeat Producer Time: en ms.
Si loption Activer consommateur heartbeat est active, le module obit aux Heartbeats qui sont
envoys par le matre. Ds que de tels Heartbeats ne sont plus reus, le module met les E/S hors
circuit.
Bote de dialogue de paramtres CAN pour un module CAN
Un module envoie des messages Emergency avec un COB-Id univoque dans le cas o des erreurs
internes surviennent. Ces messages, propres chaque module, sont affichs au niveau de l'adresse
de diagnose.
Derrire le bouton Info se cachent les donnes "FileInfo" et "DeviceInfo" du fichier EDS ou DCF du
fabricant du module donn.
Choix de modules CAN pour esclaves modulaires
Les modules disponibles pour l'esclave modulaire sont numrs dans la colonne de gauche.
Composez votre propre slection l'aide des boutons Ajouter et Effacer ; cette slection est affiche
dans la colonne de droite (Modules slectionns). La slection PDO et SDO est modifie en
consquence.
CoDeSys V2.3
6-43
Configuration de l'automate
Sur le ct gauche se trouvent tous les objets "mappables" du fichier EDS, qui peuvent tre ajouts
aux PDO (Process Data Object) situs du ct droit (bouton >>) et tre nouveau supprims (bouton
Supprimer). Les StandardDataTypes peuvent tre insrs afin de crer des espaces vides
l'intrieur du PDO.
Le bouton Insrer PDO permet de crer des PDO supplmentaires et de leur affecter des objets
appropris. L'affectation des entres et des sorties aux adresses CEI s'effectue par l'intermdiaire des
PDO insrs. Les configurations effectues sont affiches dans la configuration de l'automate une fois
que l'on a quitt la bote de dialogue. A cet endroit, des noms symboliques peuvent tre attribus aux
diffrents objets.
Les proprits des PDO, dfinies dans la norme, peuvent tre dites au moyen de Proprits.
Proprits PDO Dialogue
6-44
CoDeSys V2.3
6 - Ressources
Le Groupe de priorit CMS ne peut pas tre modifi. Il dfinit la priorit relative des PDO pour la
transmission CAN. Les numros affichs vont de 0 7, le chiffre 0 correspondant la priorit
maximale.
Type de transmission vous permet d'accder une slection des diffrents modes de transmission
pour un module donn:
acyclique - synchrone: le PDO est transmis en mode synchrone mais non priodique.
cyclique synchrone: le PDO est transmis en mode synchrone et Numro Sync's indique le
nombre de messages de synchronisation existant entre deux transmissions, pour ce mme
PDO.
synchrone RTR seulement: le PDO est actualis aprs un message de synchronisation,
mais n'est pas envoy. Il n'est transmis qu' la suite d'une demande explicite (Remote
Transmission Request).
asynchrone RTR seulement: le PDO est actualis et transmis uniquement la suite d'une
demande explicite (Remote Transmission Request).
asynchrone spcifique au profile de l'appareil et asynchrone - spcifique au fabricant:
le PDO est transmis uniquement aprs certains vnements.
Numro Sync's : selon le type de transmission, ce champ est ditable pour permettre la saisie du
nombre de messages de synchronisation (dfinition dans la bote de dialogue des paramtres CAN,
Com. Cycle Period, Sync Window Length, Sync. COB-Id) aprs lequel le PDO doit nouveau tre
envoy.
Event-Time : selon le type de transmission, lintervalle de temps entre deux transmissions de PDO
est indiqu ici en millisecondes (ms).
Service Data Objects
Tous les objets du fichier EDS ou DCF compris dans la zone allant de Index 0x2000 0x9FFF et
identifis comme des objets dfinissables sont numrs ici.
Bote de dialogue pour la configuration des Service Data Objects (SDO)
Un Index, un Nom, une Valeur, un Type et un Prfrence sont spcifis pour chaque objet. La
valeur peut tre modifie. Slectionnez la valeur de votre choix et appuyez sur la <Barre
d'espacement>. Aprs que la modification ait t effectue, vous pouvez confirmer la valeur au
moyen de la touche <Entre> ou la rejeter au moyen de la touche <Echap>.
Les valeurs configures sont transmises aux modules CAN sous forme de SDO (Service Data
Object), au moment de l'initialisation du bus CAN.
Remarque : Tout type de donnes pour lequel il n'existe pas de compatibilit entre CANopen et la norme CEI61131, est remplac dans CoDeSys par le type de donnes CEI-61131 qui est le plus proche et de
taille plus grande que le type d'origine.
CoDeSys V2.3
6-45
Configuration de l'automate
6.6.9
6-46
CoDeSys V2.3
6 - Ressources
Ici vous avez la possibilit de transmettre au systme dexcution des valeurs pour les paramtres
CAN connus de la norme CANopen. La faon dont elles seront interprtes dpend du systme
d'excution. Si vous utilisez limplmentation CANopen supporte par les systmes d'excution 3S en
combinaison avec les bibliothques correspondantes, rfrez-vous la documentation CanOpen
pour systme dexcution 3S .
ID noeud : LID nud (1 127) est le numro de nud avec lequel le Matre Bus excite le
CanDevice dans le rseau CANopen.
Taux de baud : laide de la liste de slection, vous pouvez rgler le taux de Baud souhait pour la
transmission dans le Bus.
Device Type : Ici apparat automatiquement le "Device-Type" de lappareil qui est renvoy lors de
linterrogation de lobjet 0x1000, cest--dire celui de lautomate programmable configur dans le
projet. Le type y est ditable.
CoDeSys V2.3
6-47
Configuration de l'automate
Si l'option Dmarrer automatiquement est active, alors le bus CAN est initialis et lanc
automatiquement lors du tlchargement et de l'amorage de l'automate programmable. Si elle est
dsactive, le CanDevice attend une instruction approprie.
Vous pouvez configurer Garder noeuds et disposer de la fonctionnalit Tlgramme d'urgence.
Veuillez vous rfrer ce propos aux descriptions relatives la configuration dautres modules et
matres CAN (chap.6.6.8).
Configuration heartbeat :
Activer generation heartbeat : Si cette option est active, le CanDevice met des Hearbeats dans
les intervalles indiqus en millisecondes dans Frquence de heartbeat :.
Activer consommateur heartbeat : Si cette option est active, le CanDevice ragit aux Heartbeats
envoys par le module dfini par lID consommateur. Le Heartbeat Consumer Time indique en
millisecondes la dure au bout de laquelle un drapeau derreur est mis si le Heartbeat nest pas entr.
Dfault PDO-Mapping, CANDevice
Bote de dialogue pour Dfault PDO-Mapping
On peut dfinir ici l'attribution des entres dans un rpertoire local d'objets (Gestionnaire des
paramtres) aux PDO qui sont mises / reues par le CanDevice. Les PDO sont alors disposition
lors de l'utilisation du CanDevice dans une configuration matre pour le mappage PDO local.
Dans le gestionnaire des paramtres, la liaison avec les variables de l'application est tablie dans les
entres (rpertoire de variables) par le biais de l'index/du sous-index. Notez que le sous-index 0 d'un
index comprenant plus d'un sous-index est implicitement utilis pour la mention du nombre de sousindex. Les objets (paramtres) d'un index doivent tre saisis par ordre croissant (aprs le sous-index)
dans une liste de paramtres.
6-48
CoDeSys V2.3
6 - Ressources
Liste des objets mappables: Slectionnez dans la liste des paramtres la liste de variables pour les
entres desquelles le CanDevice doit crer des PDO. Si le systme cible le supporte, vous pouvez
grer des listes de paramtres de type 'Mapping' qui ne grent que des variables de processus
prvues pour ce mappage. Dans ce cas, seules ces listes de paramtres seront proposes dans la
slection. Dans le cas contraire, toutes les listes de paramtres disponibles de type 'Variables' et
'Instance' seront proposes.
Attention : Si une zone dindex pour mappages est dfinie dans la configuration du systme cible pour le
gestionnaire de paramtres, alors seule cette zone sera prise en considration par un CanDevice,
lexclusion de toutes les autres zones dindex dfinies par ailleurs !
En fonction de la liste slectionne, les objets apparaissent dans la fentre de slection gauche. La
configuration des PDO est cre dans la fentre de droite (PDO's). Grce aux boutons Insrer PDO
de rception et Insrer PDO d'envoi, vous pouvez crer en dessous des lments de dossier 'PDO
de rception' et 'PDO d'envoi' des PDO servant l'envoi ou la rception. Afin d'attribuer un des
PDO d'envoi / de rception un objet de la liste de gauche, marquez cet objet dans la fentre de
gauche ainsi que le PDO dans la fentre de droite, puis appuyez sur le bouton >>. L'objet est alors
rattach en dessous du PDO dans la fentre de droite. Les Proprits du PDO peuvent tre dfinies
par le biais du dialogue obtenu partir de la configuration des modules CAN sous un matre.
Le bouton Effacer permet d'effacer de la configuration le PDO actuellement marqu dans la fentre
de droite.
Exemple:
But : La variable PLC_PRG.a doit tre reue sur le premier PDO de rception (COB-Id = 512 + NodeId) du
CanDevice.
Un index / sous-index doit donc tre reli la variable PLC_PRG.a dans un rpertoire de variables dans le
gestionnaire des paramtres: Afin d'ouvrir le gestionnaire des paramtres, ce dernier doit tre activ dans la
Configuration du systme cible sous 'Fonctions de rseau', et il doit tre paramtr avec des plages d'index / de
sous-index pertinentes.
Ensuite, l'entre d'index / de sous-index doit tre attribue comme entre de mappage un PDO dans la bote
de dialogue pour le mappage PDO par dfaut du CanDevice.
CoDeSys V2.3
6-49
Configuration de l'automate
Notez aussi quen principe vous pouvez toujours ajouter des fichiers de configuration de faon cible
durant la phase de travail sur le projet.
Si un Matre DeviceNet est marqu dans larborescence de configuration, vous pouvez choisir entre les
botes de dialogue suivantes (le choix dpend de la dfinition figurant dans le fichier de configuration)
sur les onglets de mme nom : Paramtres de base, Paramtres DeviceNet, Paramtres de module.
Si un Esclave DeviceNet accroch en dessous dun Matre DeviceNet est marqu, vous obtenez les
botes de dialogue suivantes : Paramtres de base, Paramtres DeviceNet, Configuration de
connexion E/S, Paramtres, Paramtres de module.
Les diffrentes botes de dialogue de configuration sont dcrites ci-dessous :
Paramtres de base dun Matre DeviceNet
La bote de dialogue Paramtres de base dun Matre DeviceNet correspond, en ce qui concerne les
points de dialogue quelle contient (ID module, Numro de nud, Adresse dentre, Adresse de
sortie, Adresse de diagnostic), celle des autres modules (voir chap.6.6.5, Paramtres de base
dun module E/S).
Paramtres Device Net dun Matre DeviceNet
Bote de dialogue pour Paramtres Device Net dun Matre DeviceNet
Entrez lidentification du Matre DeviceNet, qui est dtermine au niveau mme du module, dans le
champ Adresse. Cette identification a la mme signification que celle du Node-ID dun module CAN
et ne doit pas tre confondue avec le numro de nud ou ladresse entre dans la bote de dialogue
Paramtres de base ! Elle doit tre saisie sous forme dcimale, avec des valeurs de 0 63, valeur
par dfaut : 0.
Vous devez galement dfinir Dbit en bauds [baud] pour lchange de donnes au sein du rseau.
Les rglages suivants sont disposition: 125000 (valeur par dfaut), 250000, 500000.
Paramtres de module dun Matre DeviceNet
La bote de dialogue Paramtres de module dun Matre DeviceNet correspond celle des autres modules
(voir chap.6.6.5, Paramtres de base d'un module E/S). Les paramtres qui ont t attribus au Matre
DeviceNet dans le fichier de configuration, en plus des paramtres DeviceNet et Bus, sont visualiss dans
cette bote de dialogue et les valeurs y sont normalement ditables.
Paramtres de base dun Esclave DeviceNet
La bote de dialogue Paramtres de base dun Esclave DeviceNet correspond, en ce qui concerne les
points de dialogue quelle contient Adresse dentre et de sortie, celle des autres modules (voir
chap.6.6.5, Paramtres de base dun module E/S). La direction, lentre et la sortie sont dtermins
du point de vue du module.
Paramtres DeviceNet dun Esclave DeviceNet
Les paramtres gnraux du module Esclave sont configurs ici.
Adresse : Identification de lEsclave DeviceNet, qui est dtermine au niveau mme du module.
Cette identification a la mme signification que celle du Node-ID dun module CAN et ne doit pas tre
6-50
CoDeSys V2.3
6 - Ressources
confondue avec le numro de nud ou ladresse entre dans la bote de dialogue Paramtres de
base !). Elle doit tre saisie sous forme dcimale, avec des valeurs de 0 63.
Appareil actif dans la configuration : Activez cette option pour dfinir cet appareil en tant que
participant actif pour la communication au sein du rseau.
Info... : Ce bouton ouvre une fentre dans laquelle est visualis le contenu du Fichier EDS de
lappareil. Notez que les fichiers de priphriques CAN peuvent galement porter lextension EDS
sans quils ne soient pour autant utilisables pour la configuration dun DeviceNet !
Bote de dialogue pour Paramtres DeviceNet dun Esclave DeviceNet
Expert... : Ce bouton ouvre la bote de dialogue Configuration largie qui permet de configurer les
points suivants :
UCMM : (Unconnected Message Manager for multiple connections) Si cette option est active
(rglage par dfaut), lEsclave est en mesure de comprendre des messages UCMM.
Classifications possibles: Groupe 1, Groupe 2 ou Groupe 3 (rglage par dfaut)
Les contrles qui ont lieu par dfaut lors du Dmarrage du rseau peuvent tre dsactivs ici.
Lors de chaque contrle, la valeur indique dans le fichier EDS utilis est compare la valeur
dtecte au niveau du module:
Vrifier ID du vendeur, Vrifier type dappareil, Vrifier code du produit, Vrifier version du
produit
Bote de dialogue Expert
CoDeSys V2.3
6-51
Configuration de l'automate
Connection E/S slectionne : Slectionnez le type de communication que vous souhaitez voir
appliquer une configuration de connexion E/S dun Esclave DeviceNet que vous effectuerez ci-dessous:
Poll : Les donnes des Esclaves sont interroges cycliquement par le Matre (procdure Matre-Esclave)
Bit Strobe : Le Matre DeviceNet envoie un tlgramme broadcast tous les Esclaves avec
linvitation transmettre les donnes actuelles. Les participants rpondent lun aprs lautre en
commenant par le nud 1.Les donnes que chaque appareil peut renvoyer aprs un ordre Bit
Strobe sont limites une longueur de 8 octets.
Change of State : Lors de tout changement au niveau de lentre, lEsclave envoie
automatiquement les donnes au Matre. Linterrogation par le Matre nest donc pas ncessaire.
Cyclic : LEsclave envoie spontanment ses donnes aprs coulement dun temps de cycle
(fonction Heartbeat ).
6-52
CoDeSys V2.3
6 - Ressources
CoDeSys V2.3
6-53
Configuration de l'automate
6-54
CoDeSys V2.3
6 - Ressources
CoDeSys V2.3
6-55
Les tches sont reprsentes dans la partie gauche de la fentre sous la forme dune arborescence
de configuration. La premire ligne contient 'Configuration des tches', ensuite lentre 'vnements
dans le systme' puis les entres pour chaque tche individuelle reprsentes par les noms de
tches. Les appels de programme correspondants sont rattachs en dessous de chaque entre de
tche.
La partie droite de la fentre est rserve au Dialogue des caractristiques de lentre marque
dans larborescence de configuration. Les tches individuelles, appels de programme ou vnements
dans le systme peuvent tre dfinis ici. Les possibilits de configuration disponibles dans la bote de
dialogue des caractristiques sont spcifiques au systme cible et sont dfinies en format XML par le
biais dun fichier descriptif rfrenc dans le fichier cible. Si les dfinitions standard ont t
compltes par des dfinitions spcifiques au client, celles-ci sont disponibles pour la configuration
dans un onglet supplmentaire 'Paramtres' dans la partie droite de la fentre.
Remarque : Il est conseill de ne pas utiliser les mmes fonctions de chanes de caractres (voir Bibliothque
standard standard.lib) dans plusieurs tches car un crasement pourrait dans ce cas survenir lors de
lexcution des tches.
6.7.1
6-56
CoDeSys V2.3
6 - Ressources
'Ajouter Appel de programme'), ou encore le tableau des vnements dans le systme. Les rglages
entrepris seront immdiatement repris dans larborescence de configuration et y seront affichs ds
que celui-ci sera nouveau actif ( l'avant-plan).
Un nom de tche ou de programme peut galement tre directement dit dans larborescence de
configuration. Pour ce faire, il faut cliquer sur le nom ou appuyer sur la barre d<Espace> en ayant
pralablement marqu lentre ; une possibilit ddition souvre alors dans laquelle vous pouvez
procder la modification du nom.
Les touches directionnelles vous permettent de marquer dans larborescence de configuration lentre
prcdente ou suivante.
'Insrer Tche' ou 'Ajouter sous-lment'
Cette commande vous permet d'ajouter une nouvelle tche au niveau de la configuration des tches.
Les entres se composent toutes d'un symbole et d'un nom de tche.
Si vous slectionnez dans l'arborescence de configuration une entre de tche ou encore l'entre
vnements dans le systme, la commande 'Insrer tche' est disponible. La nouvelle tche est
insre aprs la tche slectionne. Si "Configuration des tches" est slectionne, alors la
commande "Ajouter tche" est disponible et toute nouvelle tche est insre la fin de la liste
existante.
Le nombre maximal de tches est dfini par le systme cible. Notez qu'un certain nombre de tches
est dj rserv le cas chant par la configuration de l'automate, pour certains modules (dfinition
dans le fichier .cfg actuel).
Lorsqu'une tche est insre, la bote de dialogue pour dfinir les attributs des tches est affiche.
Bote de dialogue pour la dfinition des attributs de tches
CoDeSys V2.3
6-57
Type:
Cyclique (
Intervalle.
Evnement (pour le type 'Dclench par vnements' ou 'Dclench par vnement externe') :
une variable globale qui doit procder l'excution de la tche aprs un front montant. Le bouton
ou la touche vous permet d'accder la liste de slection pour l'dition en vue de choisir
parmi les variables globales disponibles.
Si aucune saisie nest effectue dans le champ Intervalle et dans le champ Evnement, l'intervalle
d'excution dpend du systme d'excution utilis (reportez-vous cet effet la documentation
spcifique du systme d'excution ; par exemple, cest un intervalle de 10 ms qui est introduit dans
CoDeSys SP NT partir de la version V2.2).
Surveillance
Si le systme cible le supporte, une surveillance des temps peut tre configure:
Activer surveillance Activez cette option ( ) si vous souhaitez que la tche se termine avec
un statut d'erreur ds que l'excution de cette tche dpasse le temps de surveillance allou
sous la rubrique 'Temps' selon la sensibilit configure (voir ci-dessous) (mcanisme de
surveillance (Watchdog).
Temps (p. ex. : t#200ms) : Aprs lcoulement de ce temps, le mcanisme de surveillance
(Watchdog) est activ selon la sensibilit configure (voir ci-dessous) lorsque la tche ne se
termine pas spontanment. A propos de lunit de la saisie, veuillez vous rfrer au
paragraphe Intervalle . Le systme cible exige ventuellement aussi que le temps de
6-58
CoDeSys V2.3
6 - Ressources
) et du nom du programme.
Saisissez dans le champ Appel de programme un nom de programme valide dans votre projet ou bien
ouvrez la liste de slection pour ldition au moyen du bouton ... ou de la touche <F2> pour choisir
parmi les noms de programme valides. Le nom du programme peut encore tre modifi dans
larborescence de configuration pour autant que lentre de programme ait t slectionne. Pour ce
faire, ouvrez un champ ddition en cliquant sur le nom ou en appuyant sur la barre <Espace>. Si le
programme slectionn ncessite des variables dentre, spcifiez-les de la manire habituelle, en
utilisant le type dclar (p.ex. . prg(invar:=17)).
6.7.2
CoDeSys V2.3
6-59
Chaque vnement est reprsent sur une ligne du tableau : Nom et Description sont repris hors de
la description du systme cible, et vous pouvez insrer dans la colonne Module appel POU le
module du projet qui doit tre excut lors de lintervention de lvnement.
Pour ce faire, vous pouvez utiliser la liste de slection pour ldition (<F2>) ou saisir manuellement le
nom dun module existant (par exemple "PLC_PRG" ou "PRG.ACT1") ou encore le nom dun module
qui nest pas encore disponible. De faon crer ce dernier au sein du projet, appuyez sur le bouton
Crer un module. Attention pour les systmes cibles RISC et Motorola 68K : Le nom dune
fonction lie un vnement dans le systme (fonction Callback) doit commencer par callback !
Pour quun module nouvellement dfini dans le projet puisse tre cr, appuyez sur le bouton Crer
module <Nom>. Le module apparat alors dans lOrganisateur dobjets et contient automatiquement
dans la partie Dclaration les dfinitions des paramtres ventuellement ncessits pour lvnement.
Ce paramtrage dun vnement ncessit selon les circonstances est galement reprsent
graphiquement en tant que module en dessous de la liste dattribution, et ce ds que lentre
correspondante est marque dans le tableau.
Lappel dun module par lvnement ne se produit que lorsque lentre est active, savoir lorsque la
case dans la premire colonne est munie dun crochet ( ). Lactivation ou la dsactivation
seffectue par le biais dun clic sur cette case.
6.7.3
6-60
CoDeSys V2.3
6 - Ressources
Idle
pas excut depuis la dernire mise jour, ceci vaut principalement pour des
tches vnementielles
Running
Stop
arrt
Stop on BP
Stop on Error erreur, par exemple division par zro, erreur de pagination, etc.
Stop
Watchdog
Lentre de la tche vire au rouge dans les cas 'Stop on Error' et 'Stop Watchdog'.
Chaque tche est reprsente par une barre, dont la longueur indique la dure du cycle. Les mesures
suivantes sont indiques de gauche droite en dessous de et galement dans la barre par des
marquages adquats :
Min :
Akt :
Max :
Zyklus :
Jitter :
Le bouton Remettre zro permet de remettre zro les valeurs Min., Max. et Gigue.
Lchelle de la reprsentation graphique (microsecondes par pixel) peut tre rgle via une liste de
slection chelle [s/Pixel].
CoDeSys V2.3
6-61
6-62
CoDeSys V2.3
6 - Ressources
Toutes les listes d'espion cres ('Insrer' 'Nouvelle liste d'espion') sont affiches dans la colonne de
gauche du gestionnaire d'espion et de recettes et peuvent tre slectionnes en cliquant avec la
souris ou au moyen des touches directionnelles. Dans la partie droite du gestionnaire d'espion et de
recettes sont affiches les variables correspondantes.
Pour travailler avec le gestionnaire d'espion et de recettes, ouvrez l'objet Gestionnaire d'espion et de
recettes
6.8.2
Des valeurs constantes peuvent tre praffectes aux variables de la liste d'espion, autrement dit, en
mode En Ligne, ces valeurs peuvent tre crites dans les variables au moyen de la commande
'Extras' 'Ecrire la recette'. Pour ce faire, la valeur constante doit tre affecte la variable par les
signes ":=":
Exemple :
PLC_PRG.TIMER:=50
CoDeSys V2.3
6-63
6.8.3
En mode hors ligne, des valeurs constantes peuvent tre affectes des variables (en entrant aprs
la variable :=<Valeur>). Dans le mode En Ligne, ces valeurs peuvent maintenant tre crites dans les
variables en utilisant la commande 'Extras' 'Ecrire la recette'.
6-64
CoDeSys V2.3
6 - Ressources
La commande 'Extras' 'Lire la recette' permet de remplacer la valeur praffecte une variable par sa
valeur actuelle.
Remarque : Seules sont charges les valeurs appartenant une liste d'espion slectionne dans le gestionnaire
d'espion et de recettes!
6.9 Histogramme
6.9.1
Apercu et Configuration
L'enregistrement des histogrammes est disponible dans CoDeSys ds que l'option correspondante
est active dans la configuration du systme cible (catgorie 'Gnralits').
L'enregistrement de histogrammes assure l'enregistrement de l'volution de la valeur des variables
dans un intervalle de temps dtermin. Ces valeurs sont enregistres dans une mmoire en anneau
(tracebuffer). Si la mmoire est remplie, alors les valeurs les plus "anciennes" sont crases, en
commenant par le dbut.
Un maximum de 20 variables peuvent tre enregistres simultanment. Un maximum de 500 valeurs
peuvent tre enregistres pour chaque variable.
Etant donn que la dimension du tracebuffer l'intrieur de l'automate programmable est fixe, il est
possible que le nombre de valeurs enregistres soit infrieur 500, dans le cas de variables trs
nombreuses ou trs grandes (DWORD).
CoDeSys V2.3
6-65
Histogramme
6-66
CoDeSys V2.3
6 - Ressources
Attribuez tout d'abord un nom (Nom d'histogramme) la configuration. Elle apparatra ensuite sous ce
nom dans la liste de slection 'Histogramme' dans le coin suprieur droit de la fentre 'Enregistrement
des histogrammes', ds que le dialogue de configuration est confirm avec OK puis referm.
Le champ Commentaire vous permet en outre d'insrer un texte votre gr.
Dans un premier temps, la liste des Variables enregistrer est vide. Pour qu'une variable puisse y
tre ajoute, celle-ci doit tre entre dans le champ situ en dessous de la liste. Ensuite, la variable
peut tre ajoute la liste au moyen du bouton Insrer ou de la touche <Entre>. Pour ce faire, vous
pouvez galement utiliser la Liste de slection pour l'dition. L'utilisation de variables d'numration
est galement possible.
Une variable est enleve de la liste en la slectionnant et en appuyant ensuite sur le bouton Effacer.
Une variable boolenne ou une variable analogique (ou encore une variable d'numration) peut tre
entre dans le champ Variable dclencheur. Pour ce faire, vous pouvez galement utiliser la liste de
slection pour l'dition. La variable dclencheur sert dcrire la condition de terminaison de
l'histogramme.
Dans Niveau du dclencheur, spcifiez la valeur de la variable dclencheur analogique pour laquelle
un vnement dclencheur se produit. Cette valeur peut galement tre indique par une constante
ENUM.
Si l'option positive a t active dans Front du dclencheur, alors l'vnement dclencheur survient
aprs un front montant pour une variable dclencheur de type boolen ou encore si une variable
dclencheur analogique franchit le niveau du dclencheur, du bas vers le haut. De faon analogue, si
l'option ngative a t active, le dclenchement intervient aprs un front descendant ou lors d'un
franchissement du haut vers le bas. Si l'option les deux a t active, alors le dclenchement
intervient aprs un front descendant et un front montant, ou encore aprs un franchissement positif et
un franchissement ngatif. Enfin, si l'option aucun a t active, aucun vnement dclencheur ne
survient.
Dans Position du dclencheur, spcifiez quel pourcentage des valeurs de mesure doit tre
enregistr avant l'vnement dclencheur. Par exemple, si vous entrez 25, cela signifie que 25 % des
valeurs de mesure sont visualises avant l'vnement dclencheur et 75 % aprs l'vnement
dclencheur, aprs quoi l'histogramme est termin.
Dans le champ Taux d'chantillonnage, vous pouvez spcifier l'intervalle de temps qui spare deux
enregistrements en millisecondes, ou en microsecondes si le systme cible le supporte. La
praffectation "0" signifie qu'un processus d'chantillonnage est effectu par cycle.
Choisissez le mode d'appel des valeurs enregistres. Si Single est activ, alors le nombre de
mesures spcifi dans le champ Nombre est visualis une fois. Si Permanent est activ, l'extraction
de l'enregistrement des valeurs de mesure, pour le nombre de mesures spcifi, se rpte
continuellement. Par exemple, si vous entrez "35" dans Nombre, cela signifie que la premire
visualisation comporte les premires valeurs de mesure, de la 1re la 35me. Ensuite,
l'enregistrement des 35 valeurs de mesure suivantes est appel (36me -70me ), et ainsi de suite. Si
l'option Manuel est active, l'extraction de l'enregistrement de l'histogramme est ralise la
demande, au moyen de la commande 'Extras' 'Lire l'histogramme'.
Le mode d'appel fonctionne indpendamment du fait qu'une variable dclencheur a t dfinie ou
non. Si aucune variable dclencheur n'est spcifie, alors le tracebuffer est rempli avec le nombre
spcifi de valeurs de mesures et le contenu du tampon est lu et visualis lors de l'appel.
Le bouton Enregistrer permet d'enregistrer dans un fichier la configuration de l'histogramme cre.
Pour ce faire, accdez la bote de dialogue standard 'Fichier enregistrer sous'.
Le bouton Charger vous permet de charger nouveau une configuration de l'histogramme place en
mmoire. Pour cela, vous obtenez la bote de dialogue standard 'Ouvrir fichier'.
Remarque : Nous attirons votre attention sur le fait que les boutons Enregistrer et Charger de la bote de
dialogue Configuration de l'histogramme s'appliquent uniquement la configuration et non aux
valeurs d'un enregistrement de l'histogramme (contrairement aux options de menu 'Extras' 'Stocker
l'histogramme' et 'Extras' 'Charger l'histogramme').
CoDeSys V2.3
6-67
Histogramme
6.9.2
l'automate
Si la lecture du tracebuffer se fait automatiquement, alors un crochet est mis devant l'lment de
menu correspondant.
'Extras' Arrter l'histogramme'
Icne :
Cette commande arrte l'enregistrement de l'histogramme dans l'automate programmable.
6-68
CoDeSys V2.3
6 - Ressources
6.9.3
Visualisation de l'histogramme
Histogramme avec des variables diffrentes avec dclencheur
CoDeSys V2.3
6-69
Histogramme
moyen des touches directionnelles. En appuyant sur <Ctrl>+<gauche> ou sur <Ctrl>+<droite>, selon
le cas, vous pouvez acclrer le dplacement d'un facteur 10.
En maintenant en plus la touche <Maj> enfonce, vous pouvez dplacer l'autre droite et la diffrence
par rapport la premire droite est indique.
'Extras' 'Multivoie'
Cette commande permet de basculer entre la visualisation monovoie et la visualisation multivoie de
l'histogramme. Dans le cas d'une visualisation multivoie, un crochet est mis devant l'lment de
menu.
La visualisation multivoie est choisie comme configuration par dfaut. Dans ce cas, la fentre de
visualisation est scinde en huit parties pour les courbes visualiser. Au niveau du bord, la valeur
maximale et minimale pour chaque courbe est affiche sous forme de graduation.
Dans le cas d'une visualisation monovoie, toutes les courbes ont la mme graduation et sont
visualises de manire superpose. Cela peut tre utile pour visualiser des carts entre les courbes.
'Extras' 'Montrer la matrice'
Cette commande permet d'activer ou de dsactiver l'affichage de la grille dans la fentre d'espion.
Lorsque l'option est active, un crochet apparat devant l'option.
'Extras' 'Graduation Y'
Cette commande permet de modifier la graduation prdfinie de l'axe des Y d'une courbe dans la
visualisation de l'histogramme. En double-cliquant sur une courbe, vous avez accs au dialogue
'Graduation Y'.
Tant que l'option Automatique est active, on utilise la graduation par dfaut, selon le type de variable
concerne. Dans le cas d'numrations, les valeurs numratives correspondantes sont affiches
comme libell d'chelle. Pour changer la graduation, dsactivez l'option 'Automatique', puis entrez
dans la bote de dialogue le numro de la courbe de votre choix (Voie) et la nouvelle valeur maximale
(Valeur Y max.) et la nouvelle valeur minimale (Valeur Y min.) sur l'axe des Y.
Vous pouvez galement accder ce dialogue en double-cliquant sur une courbe. La voie et les
valeurs actuelles de graduation sont affiches.
Bote de dialogue Graduation Y
'Extras' 'Etendre'
Icne :
Cette commande permet d'tirer (d'effectuer un zoom) les valeurs affiches. La position initiale peut
tre ajuste au moyen de la barre de dfilement horizontale. Lorsque cette commande est excute
plusieurs fois de suite, l'extrait d'histogramme affich est de plus en plus petit.
Cette commande ralise le contraire de la commande 'Extras' 'Compresser'.
6-70
CoDeSys V2.3
6 - Ressources
'Extras' 'Compresser'
Icne :
Cette commande permet de compresser les valeurs affiches dans l'histogramme. Autrement dit,
cette commande permet de suivre l'volution des variables d'histogramme pendant une dure plus
grande. Il est possible de rpter cette commande.
Cette commande ralise le contraire de la commande 'Extras' 'Etendre'.
6.9.4
CoDeSys V2.3
6-71
Histogramme
cas contraire, la premire colonne affiche le moment (en ms) auquel ont t enregistres les valeurs
depuis le dmarrage de l'enregistrement de l'histogramme.
Dans les colonnes suivante sont enregistres les valeurs correspondantes des variables
d'histogramme. Les valeurs sont spares entre elles par un espace.
Les noms de variable correspondants sont visualiss au niveau de la troisime ligne, l'un ct de
l'autre et selon leur ordre de succession (PLC_PRG.COUNTER, PLC_PRG.LIGHT1).
6.9.5
6-72
CoDeSys V2.3
6 - Ressources
CoDeSys V2.3
6-73
Les diffrentes dfinitions au sein d'un fichier descriptif spcifique au systme cible (odconfig.xml)
dterminent les attributs (= colonnes dans l'diteur de gestionnaire des paramtres) visibles et
ditables, ainsi que leur classification dans la liste des paramtres. S'il n'y a pas de fichier descriptif,
le jeu standard et complet d'attributs sera affich, prdfinis avec les valeurs standard.
Outre des listes de variables de projet et de constantes de projet, le Gestionnaire des paramtres
peut galement grer des listes de paramtres systme. Ces dernires sont dfinies de manire fixe
par le systme cible. En outre, on peut crer des listes d'arrays, d'instances de blocs fonctionnels ou
de variables structures, ces listes reposant sur des Modles dfinis par l'utilisateur, ces derniers
pouvant galement tre crs dans le Gestionnaire des paramtres.
Comme les donnes sont gres indpendamment du programme CEI, on peut utiliser une liste de
paramtres afin par exemple d'enregistrer des 'Recettes' qui seraient gardes si le programme est
remplac par une version de programme diffrente. En outre, un automate programmable en cours
pourrait tre aliment de diffrentes 'Recettes' sans que cela ne ncessite un tlchargement de
programme.
Remarque : Le systme cible dtermine si les contenus du Gestionnaire des paramtres doivent tre repris dans
un projet d'initialisation lors de la cration de ce dernier.
6-74
CoDeSys V2.3
6 - Ressources
La fentre d'diteur est divise en deux. La partie gauche sert la navigation, et elle affiche les listes
de paramtres actuellement charges dans le gestionnaire des paramtres. La partie droite contient
un diteur de listes, et les colonnes sont libelles avec les noms des attributs de paramtre.
Dans la fentre de navigation, vous pouvez insrer, effacer, trier ou renommer des listes de
paramtres de diffrents types (variables, paramtres (constantes), modles, instances, paramtres
systme). .
Dans l'diteur de listes, vous devez insrer une ligne par entre de paramtres, cette ligne
reprenant les attributs du paramtre. Chaque type de liste dispose d'une gamme spciale d'attributs
(colonnes) qui sont soit ditables, soit simplement affichs. Cette gamme d'attributs peut tre dfinie
par un fichier descriptif spcifique au systme cible ; on utilise sinon le rglage standard.
La touche <F6> vous permet de passer de la fentre de navigation l'diteur de listes et vice-versa.
Remarque: Les listes de paramtres peuvent galement tre cres ou compltes directement par des
instructions de Pragma au sein de dclarations.
En mode En ligne, vous pouvez charger les listes cres dans l'diteur sur le systme cible
actuellement connect, ou bien vous pouvez avoir accs aux listes de paramtres prsentes dans le
systme cible afin de procder des changes de donnes avec d'autres systmes au sein du
rseau (tlchargement en amont, criture de valeurs). En outre, la fentre d'diteur affiche les
valeurs actuelles d'excution des paramtres (espionnage).
Tant qu'il n'y a pas communication tablie avec un systme cible, il est seulement possible de crer
des listes de paramtres et de les enregistrer localement au niveau du projet.
CoDeSys V2.3
6-75
Paramtres: Les entres dans des listes de paramtres de ce type reprsentent des donnes dont
les valeurs sont indpendantes du processus.
Paramtres du systme: Les entres dans des listes de paramtres de ce type reprsentent des
constantes spciales indpendantes du processus et prdfinies par le systme cible. Les listes de
paramtres systme ne peuvent tre effaces ou renommes.
Modle: Un modle ne contient pas d'entres de paramtres auxquelles on peut avoir accs
directement des fins d'change de donnes. Les entres servent plutt la configuration de base
des composants d'un bloc fonctionnel prcis ou d'une structure. Cette configuration de base peut
alors tre utilise pour la cration de listes de paramtres du type 'Instance'.
Instance: Les entres dans des listes de paramtres de ce type reprsentent des entres de
paramtres pour des variables de type bloc fonctionnel ou structure, en d'autres termes pour des
instances et des variables structures. Afin de faciliter la cration de listes d'instances, on utilise un
modle (voir plus haut) cr auparavant et galement au sein du gestionnaire des paramtres.
Mappages: Ce type de liste n'est pas disponible s'il n'est pas support par le Systme cible. Les
entres se composent de rfrences des variables de processus qui peuvent tre "mappes"dans
un CAN-Device. En principe, il s'agit d'une liste de variables, fonctionnant sur sa propre zone
d'index/de sous-index. Cette zone doit tre dfinie dans la configuration du systme cible, Catgorie
Fonctions de rseau ! Le CAN-Device n'utilise dans ce cas que les entres dans les listes de type
'Mappage', alors que dans les autres cas, toutes les entres des listes de variables et d'instances sont
proposes dans le dialogue 'Mappage PDO par dfaut' dans la configuration de l'automate.
La reprsentation des diffrents types de listes au sein de l'diteur du gestionnaire des paramtres
dpend du systme cible.
Instances et Modles
Une liste de paramtres de type 'Instance' ...
... gre des entres de paramtres qui reprsentent un bloc fonctionnel prcis, ou encore une
variable structure ou un array. Chaque liste d'instances pour un bloc fonctionnel ou une variable
structure se base sur un modle qui a galement du tre spcialement dfini dans le gestionnaire
des paramtres pour le bloc fonctionnel ou la structure.
Une liste de paramtres de type 'Modle' ...
... ne contient pas d'entres de paramtres auxquelles on peut avoir accs directement des fins
d'change de donnes. On prdfinit ici plutt des dcalages d'index ou de sous-index ainsi que
certains attributs pour les entres de paramtres qui reprsentent les composants d'un bloc
fonctionnel prcis ou d'une structure. Ce modle peut alors tre utilis dans une liste de paramtres
de type 'Instance' (voir plus haut), ce qui facilite la cration de listes de paramtres pour plusieurs
variables de projet reprsentant les instances du mme bloc fonctionnel ou de la mme structure.
Cration d'un Modle:
Saisissez dans le champ POU de base le nom du bloc fonctionnel ou de la structure pour
le(la)quel(le) le modle vaut. Vous pouvez utiliser la liste de slection pour l'dition (<F2>) afin
d'oprer une slection parmi les modules de projet disponibles. Appuyez sur Appliquer afin de
reprendre les composants du module slectionn dans l'diteur de listes. ditez ensuite les entres
d'attributs puis refermez la liste afin qu'elle puisse tre disponible pour utilisation dans une liste
d'instances.
La commande Insrer les entres manquantes dans le menu contextuel ou dans le menu 'Extras'
provoque une actualisation des entres l'tat actuel du module ayant servi de base (POU de base).
Ceci s'avre ventuellement ncessaire ou souhaitable lorsque quelques entres ont t effaces
dans la liste ou lorsque l'on a procd des changements dans le module de base.
Afin de pouvoir crer des listes de paramtres d'instance pour des variables de type array, il n'est pas
ncessaire de crer un modle dans le gestionnaire des paramtres. Le type de modle ARRAY est
disponible de manire implicite.
6-76
CoDeSys V2.3
6 - Ressources
Crez un bloc fonctionnel fubo dans le projet avec les variables ci-dessous:a,b,c.
Dfinissez les instances de bloc fonctionnel suivantes dans PLC_PRG: inst1_fubo:fubo;
inst2_fubo:fubo;.
Compilez le projet.
Ouvrez le gestionnaire des paramtres afin de crer des listes de paramtres pour les variables
inst1_fubo.a, inst1_fubo.b, inst1_fubo.c et inst2_fubo.a, inst2_fubo.b, inst2_fubo. Insrez d'abord pour ce faire une
liste de type 'Modle' et nommez-la "fubo_template". Dfinissez le POU de base: "fubo". Appuyez sur
'Appliquer' puis dfinissez quelques attributs pour les composants a,b,c. Saisissez par exemple des dcalages
d'index: pour a: 16#1, pour b: 16#2, pour c: 16#3. De mme pour les dcalages de sous-index, p.ex. a: 16#2,
b: 16#3, c: 16#4.
Insrez alors une nouvelle liste de paramtres de type 'Instance'. Slectionnez le modle "fubo_template".
Saisissez la variable de base "inst1_fubo". Dfinissez l'index de base: p.ex. 16#2300 ainsi qu'un sous-index de
base de 30 (notez les zones d'index dfinies dans la configuration du systme cible !).Appuyez maintenant sur
'Appliquer' afin d'obtenir dans les entres de listes les index actualiss pour les composants a, b, et c, calculs
par l'addition du dcalage de base et du dcalage dfini dans le modle: pour les index: 16#2301, 16#2302,
16#2303; et pour les sous-index:16#23, 16#33, 16#43.
CoDeSys V2.3
6-77
Sur base de ces entres cres automatiquement, vous pouvez maintenant continuer diter la liste des
paramtres.
Saisissez un Nom pour la nouvelle liste de paramtres (doit tre univoque au sein des types de listes)
puis choisissez un des types ci-dessous :
6-78
Variables
Paramtres
Modle
Modle pour un jeu d'attributs pour les composants d'un bloc fonctionnel
ou d'une structure (pouvant tre utilis dans des listes de type 'Instance'
(voir plus bas))
Instance
CoDeSys V2.3
6 - Ressources
Mappages
Paramtres
du systme
Ds que les entres ont t confirmes par OK et que le dialogue est referm, la liste cre l'instant
apparat comme entre dans la fentre de navigation. Le type de liste est reprsent par le symbole
plac devant.
Dans l'diteur de listes, les attributs adquats sont affichs comme titres de colonnes. La slection et
la disposition des colonnes sont prdfinis dans un fichier descriptif spcifique au systme cible ; si
un tel fichier n'existe pas, on utilise le rglage standard.
La nouvelle liste peut maintenant tre dite, cela en insrant une ligne pour chaque entre de
paramtre souhaite.(voir chapitre 6.11.5, diter des listes de paramtres).
Liste de paramtres\Renommer
Utilisez la commande 'Renommer liste' dans le menu 'Insrer' ou dans le menu contextuel afin
renommer la liste de paramtres marque dans le fentre de navigation. La commande ouvre un
cadre diter, qu'aussi est cre par un clic double sur le nom de la liste.
Couper / Copier / Insrer rpertoire de listes de paramtres
Raccourci clavier : <Ctrl> + <X>, <Ctrl> + <C>, <Ctrl> + <V>
La disposition des listes de paramtres dans la fentre de navigation peut tre modifie par le biais
des commandes 'Couper', 'Copier' et 'Insrer' (menu 'diter' ou menu contextuel).
La commande 'Couper ' ou 'Couper liste' stocke la liste marque l'instant dans une mmoire
tampon; partir de l, elle pourra nouveau tre insre en un autre endroit via les commandes
'Insrer' ou 'Insrer liste'. Avant cette nouvelle insertion, marquez la liste se trouvant en dessous de
l'endroit souhait.
La commande 'Copier' ou 'Copier liste' utilise galement cette mmoire tampon provisoire, cette
diffrence prs que l'entre originale est garde et qu'une copie puisse en outre tre faite dans
l'arborescence de navigation par le biais de la commande 'Insrer' ou 'Insrer liste'.
Effacer Liste
Raccourci clavier : <Supp>
La liste actuellement marque dans la fentre de navigation peut tre supprime avec la commande
'Effacer' (menu 'diter') ou 'Effacer liste' (menu 'Extras' ou menu contextuel).
Veuillez noter : En mode En ligne, cette commande efface la liste correspondante dans le systme d'excution !
CoDeSys V2.3
6-79
Afin de modifier la largeur des colonnes, vous pouvez dplacer les lignes de sparation entre les titres
de colonnes, et vous disposez en plus, si le pointeur de la souris se trouve sur un titre de colonne, de
deux commandes dans le menu contextuel. La largeur de colonne standard est calcule de telle
sorte que toutes les colonnes puissent tre visibles dans la fentre. L'agrandissement de colonne
se rapporte la colonne actuellement l'avant-plan et largit la colonne de telle sorte que chaque
entre soit visible dans son entiret.
Commandes pour l'dition des entres de paramtres :
Les commandes suivantes permettant l'dition sont disponibles dans le menu contextuel ou dans les
menus 'Insrer' ou 'Extras':
Insertion / Effacement de lignes :
Insrer ligne resp.
Nouvelle Ligne
Effacer ligne
6-80
CoDeSys V2.3
6 - Ressources
Veuillez noter: Lors d'une ouverture de session, un tlchargement est automatiquement effectu pour toutes
les listes pour lesquelles l'option 'Charger avec programme' a t active dans le gestionnaire des
paramtres !
En outre, il est possible d'crire les valeurs individuellement sur l'automate programmable.
Pour l'affichage des valeurs actuelles de chaque paramtre (Monitoring), une colonne
supplmentaire est disponible en mode En ligne (la premire colonne) dans le gestionnaire des
paramtres :
Lutilisation des appariements Index et Sous-index ou RefID et Offset pour le monitoring est
dtermine en fonction du systme cible.
Les commandes suivantes sont disponibles dans le menu 'Extras':
Supprimer liste
Ecrire liste
Lire liste
Toutes les valeurs dans la colonne 'Valeur' sont crites sur l'automate dans
la liste des paramtres. Pour crire des valeurs individuelles, double-cliquez
sur le champ correspondant de la colonne afin d'avoir accs au dialogue
'crire valeurs', comme avec la commande 'En ligne' 'crire valeurs'.
Ecrire des valeurs de Les valeurs dans la colonne 'Dfaut' sont crites sur l'automate dans la liste
correspondante des paramtres.
dfault
Appliquer des valeurs Les valeurs actuelles des paramtres sont lues partir de l'automate
programmable et crites dans la colonne 'Valeur'.
La commande Format Dc/Hex aussi est disponible en mode en ligne, pour commuter le format
d'indication entre decimal et hexadecimal.
Listes de paramtres dans le projet d'initialisation
Le systme cible dtermine si les contenus du Gestionnaire des paramtres doivent tre repris dans
un projet d'initialisation lors de la cration de ce dernier.
CoDeSys V2.3
6-81
Configuration de la Cible
Les contenus du gestionnaire des paramtres peuvent galement tre exports par le biais de la
fonction gnrale d'exportation ('Projet' Export').
'Extras' 'Importer'
La commande 'Importer' du menu 'Extras' vous permet d'importer le contenu d'un fichier XML qui
dcrit des listes de paramtres. Ce fichier peut par exemple avoir t cr par le biais de la
commande 'Extras' 'Exporter' et dispose donc dans le cas standard de l'extension *.prm.
Si le fichier d'importation contient une liste dont le nom existe dj dans le gestionnaire des
paramtres, vous avez accs un dialogue vous demandant si la liste existante doit tre crase.
Target-Support-Package
Un Target Support Package (TSP) doit auparavant tre install laide du programme dinstallation
InstallTarget avant de dmarrer le programme. Ceci peut tre compris dans linitialisation CoDeSys.
Un TSP se compose de tous les fichiers de configuration et dextension ncessaires lutilisation dun
automate prcis (systme cible, Target) par une application. Sont configurs : le gnrateur de code,
la structure de la mmoire, ltendue des fonctions de lautomate et les modules E/S. Il faut en outre
intgrer les bibliothques, les pilotes de gateway, les fichiers derreur et d'initialisation pour le
navigateur dAPI, etc. Llment central dun TSP se compose dun ou de plusieurs fichiers cibles. Un
Fichier cible fait rfrence aux fichiers supplmentaires ncessits pour la configuration de la cible,
mais il peut cependant se les partager avec dautres fichiers cibles.
En gnral, un fichier cible porte lextension *.trg, et son format est binaire. Les entres des
configurations sont pourvues de dfinitions supplmentaires qui dterminent si elles peuvent tre
visualises par lutilisateur dans la bote de dialogue des rglages du systme cible et si elles peuvent
tre dites en cet endroit.
Durant linstallation dun TSP, un fichier cible correspondant est cr pour chaque systme cible dans
un propre rpertoire, et son chemin daccs est enregistr. Les fichiers sy rapportant sont galement
copis sur lordinateur conformment un fichier dinfo *.tnf compris dans le TSP. Le nom du
rpertoire cible concide avec le nom de la cible. La classification dans un rpertoire portant le nom du
fabricant est galement propose.
Les fichiers installs avec un Target Support Package sont lus au dmarrage du programme
CoDeSys. Les rglages du systme cible entrepris dans les botes de dialogue du systme de
programmation sont enregistrs avec le projet correspondant.
Veuillez noter : Si un nouveau fichier cible est utilis ou si le fichier cible existant est modifi, CoDeSys doit tre
redmarr afin de rendre la version actualise disponible.
6-82
CoDeSys V2.3
6 - Ressources
Aprs un changement, vous pouvez revenir aux valeurs de la configuration par dfaut par le biais du
bouton Par dfaut.
Pour de plus amples informations sur les diffrents dialogues permettant la configuration du systme
cible, voir chapitreAppendice H.
6.13 PLC-Browser
Dans le cas du PLC-Browser, il sagit dun moniteur de commande (terminal) bas sur du texte. Les
commandes permettant l'accs certaines informations provenant de lautomate sont introduites sur
une ligne de saisie et envoyes lautomate sous forme de chanes de caractres. La chane de
caractre de rponse obtenue en retour est visualise dans une fentre de rsultats du navigateur.
Cette fonction sert un diagnostic et un dbogage.
Les commandes disposition pour le systme cible configur se composent du set standard de
CoDeSys en plus dun set dextension possible provenant du fabricant de lautomate. Elles sont
gres dans un fichier INI et sont implmentes en consquence dans le systme dexcution.
CoDeSys V2.3
6-83
PLC-Browser
Le PLC-Browser CoDeSys
Le navigateur se compose dune ligne de saisie des commandes et dune fentre daffichage / de
rsultats.
La ligne de saisie propose dans une bote de slection une liste de toutes les commandes saisies
depuis le dbut du projet (historique de la saisie). Elles sont nouveau disponibles jusqu ce que le
projet soit referm. Des nouvelles commandes ne sont reprises dans la liste que si elle se
diffrencient de celles dj prsentes.
Grce la touche <Entre>, la commande saisie est envoye lautomate. Sil ny a pas de
connexion En ligne, la commande est affiche dans la fentre des rsultats telle quelle a t envoye
lautomate ; sinon, cette mme fentre affiche la rponse de lautomate. Si une nouvelle commande
est envoye lautomate, le contenu de la fentre des rsultats est effac.
Les commandes peuvent tre saisies sous la forme de chanes de caractres (voir ci-dessous, Saisie
des commandes), mais lutilisation de macros est galement possible (voir ci-dessous, Utilisation de
macros).
6-84
CoDeSys V2.3
6 - Ressources
pid
Affichage dans la fentre des rsultats :
pid
Project-ID: 16#0025CFDA
Pour chaque commande standard, vous pouvez afficher un texte d'aide par le biais de
?<ESPACE><MOT CL>. Celui-ci sera galement dfini dans le fichier ini.
Les commandes ci-dessous sont intgres au systme d'excution et dans le fichier INI avec les
entres correspondantes pour les listes de slection, les infos-bulles et l'aide :
Commande
Description
mem
memc
memd
reflect
dpt
ppt
pid
pinf
Lire et diter les informations relatives au projet (voir 'Projet' 'Info Projet')
tsk
od
pod
startprg
stopprg
resetprg
resetprgcold Rinitialiser le programme d'automate froid. Seules les donnes non rmanentes
sont initialises. ('En Ligne 'Reset (a froid))
CoDeSys V2.3
6-85
PLC-Browser
resetprgorg
reload
getprgprop
Visualiser les proprits du programme (Nom de projet, Titre, Version, Auteur, Date
de la dernire modification)
getprgstat
filecopy
filerename
filedelete
saveretain
delpwd
Veuillez noter :
Le premier mot de la commande saisie est interprt comme tant un mot cl.
Si l'automate ne connat pas le premier mot de la saisie de commande (<MOT CL>), la rponse
'Keyword not found' ' s'affiche dans la fentre des rsultats.
Si "?<SPACE>" se trouve devant un mot-cl (p.ex. "? mem"), le fichier INI sera parcouru la
recherche de ce mot cl pour trouver la section d'aide adquate. Si un tel mot cl est disponible,
rien n'est envoy l'automate, et le texte d'aide est affich dans la fentre des rsultats.
6-86
CoDeSys V2.3
6 - Ressources
Le signe % est ignor sil est prcd du symbole d'chappement \ (barre oblique inverse Backslash). Le symbole d'chappement nest repris comme tel que lorsquil est crit \\.
Exemple :
mem %V.testit
Affichage dans la fentre des rsultats :
mem #4:52
03BAAA24 00 00 00 00 CD CD CD CD ....
6.14 Outils
Lobjet Outils est disponible sous longlet Ressources pour autant que ceci ait t configur en
consquence dans le fichier cible du systme cible. Les liens des fichiers exe doutils externes sont
reprsents dans 'Outils', et ces outils peuvent tre appels partir de CoDeSys. Le nombre et le
type de liens possibles sont galement dfinis dans le fichier cible. En fonction de cette dfinition,
lutilisateur peut, dans 'Outils', ajouter ou effacer des liens. La reprsentation dans lOrganisateur
dobjets ressemble par exemple ceci :
Lexemple donn se compose de quatre liens doutils : un permet le dmarrage de CoDeSys, un autre
ouvre le listing d'assembleur dans un diteur littral, et les deux dernier permettent l'ouverture de
fichiers PDF. Les liens marqus dun "<R>" ne peuvent plus tre modifis dans le cadre de CoDeSys.
Une utilisation envisageable serait le lien vers un diteur, par exemple notepad.exe, ou un fichier
PDF prcis. Un double-clic sur lentre correspondante permettrait alors douvrir le listing assembleur
dans le bloc-notes ou encore les fichiers PDF dans Acrobat Reader.
CoDeSys V2.3
6-87
Outils
Vous pouvez en outre dfinir des fichiers qui seraient chargs sur lautomate ds que le lien serait
activ.
Aprs l'extension de la bote de dialogue, la partie droite reprend les caractristiques gnrales du
lien tels qu'ils ont t dfinis dans le fichier cible. Un champ d'dition est en outre disponible, et vous
pouvez y dfinir un Rpertoire de travail qui sera utilis pour les actions du fichier Exe. Le chemin
d'accs indiqu est enregistr par le biais du bouton Appliquersans que la bote de dialogue se
referme.
'Proprits des outils :
6-88
Numro fixe:
Il s'agit du nombre fixe de liens pour cet outil qui seront automatiquement
insrs dans l'Organisateur d'objets. Si "0" est saisi ici, l'utilisateur a la
possibilit de crer lui-mme un nombre de liens sa guise. Veuillez noter :
pour les liens qui ont t insrs de manire fixe partir du fichier cible, il n'y
a pas que leur nombre qui est dfini ; il est galement impossible d'en
modifier les caractristiques sous CoDeSys (ces liens sont reconnaissables
la prsence d'un "<R>" dans l'Organisateur d'objets).
Nom Exe:
CoDeSys V2.3
6 - Ressources
Modles pour la dfinition du fichier qui doit tre ouvert dans l'outil. Les
modles suivants peuvent tre compris en tant connects par le signe
spcial correspondant :
$(PROJECT_NAME) nom du projet en cours
(nom du fichier sans l'extension ".pro").
$(PROJECT_PATH) chemin d'accs du rpertoire dans lequel le fichier du
projet est class
(sans mention du lecteur).
$(PROJECT_DRIVE) lecteur sur lequel se trouve le projet en cours.
$(COMPILE_DIR) rpertoire de compilation du projet (avec mention du
lecteur)
$(TOOL_EXE_NAME) nom du fichier exe de l'outil.
$(DISPLAY_NAME) nom du lien en cours utilis dans les 'Outils'.
$(INSTANCE_NUMBER) numro du lien
(numro d'instance, numro courant dbutant "1")
$(CODESYS_EXE_DIR) chemin d'accs du rpertoire dans lequel le fichier
excutable de CoDeSys se trouve
(avec mention du lecteur).
Pour la conversion d'un modle, reportez-vous la bote de dialogue des
Caractristiques d'un lien individuel (voir ci-dessous).
Exemple :
"$(PROJECT_NAME)_$(INSTANCE_NUMBER).cfg"
le fichier cfg portant le nom <Nom du projet CoDeSys en
cours>_<Numro du lien>.cfg est ouvert dans l'outil
Charger fichiers
modles:
Fichiers, chemins d'accs et modles pour les fichiers qui doivent tre
galement chargs sur l'automate lors d'un tlchargement. Si l'option
Editable est active, la liste de ces fichiers peut tre dite dans la bote de
dialogue des caractristiques du lien. Si le nom du fichier est indiqu sans
chemin d'accs, ce fichier sera recherch dans le rpertoire dans lequel le
fichier excutable de CoDeSys se trouve.
"a.up;$(PROJECT_NAME).pro;$(INSTANCE_NUMBER).upp"
les fichiers a.up, <Projet CoDeSys en cours>.pro et <Numro du lien>.upp
seront galement chargs sur l'automate lors d'un tlchargement
Paramtres
CoDeSys V2.3
6-89
Outils
Fichiers charger Cette liste comprend automatiquement et en premier lieu les Noms de
fichiers rsultants de la description de la cible et qui ont dj t dcrits
dans les caractristiques des outils (voir ci-dessus). Si l'option 'ditable'
est active (voir ci-dessous la Bote de dialogue tendue), la liste peut
tre modifie ici mme. Ouvrez cet effet la bote de dialogue 'Indiquer
nom de fichier' par le biais du bouton Nouveau; vous pouvez y
introduire un fichier supplmentaire ou un chemin d'accs un fichier. Si
le nom du fichier est indiqu sans chemin d'accs, ce fichier sera
recherch dans le rpertoire dans lequel le fichier excutable de
CoDeSys se trouve. Le bouton Effacer vous permet d'effacer l'entre
actuellement marque dans la liste.
Le bouton Standard ramne les entres de la bote de dialogue aux valeurs par dfaut indiques par
le fichier cible.
Le bouton Appliquer enregistre les rglages entrepris sans pour autant refermer la bote de dialogue
des caractristiques.
Le bouton tendu permet d'tendre la bote de dialogue vers la droite, si bien qu'elle ressemble alors
ceci :
Bote de dialogue pour les caractristiques des liens
6-90
Numro de
raccourci:
ID Outil:
CoDeSys V2.3
6 - Ressources
Nombre de
raccourcis de
default:
Editable:
Si cette option est affiche comme tant active, vous pouvez procder
des changements dans le champ 'Paramtres' ou dans le tableau des
fichiers charger sur l'automate.
Tous les outils vers lesquels de nouveaux liens peuvent tre tablis sont repris dans le tableau. Celuici reprend, selon les entres dans le fichier cible, lID des outils, le Nom du raccourci par dfaut et le
nom du fichier exe des outils (Nom du fichier excutable).
Pour crer un lien (supplmentaire) avec un des outils proposs, cliquez sur cet outil dans la colonne
'Id'. Le champ Nom du raccourci permet de modifier individuellement le nom par dfaut de ce
nouveau lien que vous confirmez par OK. Ceci nest possible que lorsquun nom nayant pas encore
t attribu est introduit.
OK referme la bote de dialogue et le lien qui vient dtre introduit apparat dans larborescence des
ressources accompagnes de son nom et dun numro de lien, qui est dune unit suprieur au lien
auparavant le plus lev utilis pour les instances de ce mme outil.
La zone en dessous du champ du nom est rserve des remarques concernant les entres par
lutilisateur.
Supprimer des liens
Pour supprimer un lien, vous devez slectionner la commande Supprimer dans le menu contextuel
(bouton droit de la souris) ou dans le menu 'Projet' 'Objet'. Vous navez accs cette commande que
si vous avez slectionn dans larborescence de configuration le lien dun outil pour lequel aucun
nombre fixe de liens nest spcifi. Leffacement dune entre nentrane pas de modification dans les
numros des autres liens.
CoDeSys V2.3
6-91
Outils
Excution de liens
Un lien est excut par un double-clic sur lentre correspondante dans larborescence des
ressources, ou si la commande 'Editer objet' dans le menu 'Projet' 'Objet' ou dans le menu contextuel
(bouton droit de la souris) est excute.
Si lexcution du fichier indiqu par les paramtres nest pas possible, un message derreur adquat
saffiche. Si un fichier de paramtres nest pas trouv, le fichier exe de loutil est excut et une bote
de dialogue apparat vous demandant si le fichier doit tre cr.
Au cas o le fichier exe de loutil nest pas trouv dans le chemin daccs ou si aucun chemin daccs
na t donn, une bote de dialogue permettant de slectionner un fichier souvre, incitant lutilisateur
indiquer le chemin daccs du fichier exe. Ce chemin sera enregistr la fermeture de la bote via
OK et sera dans la suite disponible pour cet outil mme dans le cadre dautres projets.
Enregistrement de liens
Lors de lenregistrement du projet, lensemble du nud 'Outils' est enregistr dans larborescence des
ressources.
Veuillez noter : Si un projet est enregistr sous un nouveau nom via 'Enregistrer sous', veillez
respecter les points suivants lors de lutilisation de modles $(PROJECT_NAME) dans la dfinition du
fichier des paramtres et des fichiers qui devront tre chargs sur lautomate :
Pour les liens (FixedCount=0) qui ont t introduits par lutilisateur dans lancien projet, les noms de
fichiers doivent tre renomms manuellement dans le nouveau projet conformment au nouveau nom
de projet. Par contre, le modle pour un outil dont un nombre fixe de liens a t dfini est toujours
automatiquement interprt avec le nom actuel du projet.
6-92
CoDeSys V2.3
6 - Ressources
CoDeSys V2.3
6-93
Outils
6-94
CoDeSys V2.3
7 - ENI
7 ENI
7.1 Qu'est-ce que ENI
L'interface ENI ('Engineering Interface') permet l'accs du systme de programmation une base de
donnes de projet externe dans laquelle les donnes rsultant de la cration d'un projet
d'automatisation sont gres. L'utilisation d'une base de donnes externe garantit la consistance des
donnes qui peuvent alors tre utilises de manire commune par plusieurs utilisateurs, projets ou
programmes, et permet les extensions suivantes dans les fonctionnalits CoDeSys :
Gestion de version pour les projets CoDeSys et les ressources s'y rapportant (objets utiliss en
commun) : Si un objet a subi un check-out, t modifi et subi un check-in, une nouvelle version
de l'objet est cre dans la base de donnes, mais les anciennes versions sont cependant
gardes et peuvent toujours tre nouveau appeles si besoin est. L'historique des modifications
est trac pour chaque objet et pour un projet global. Les versions peuvent tre compares la
recherche de diffrences. (Ceci ne vaut pas si un systme de fichiers local est utilis comme base
de donnes.)
Fonctionnement multi-utilisateurs : La version la plus rcente d'un ensemble de modules, par
exemple les modules d'un projet, peut tre rendue accessible un groupe d'utilisateurs. Les
modules ayant subi un check-out par un utilisateur sont marqus auprs des autres utilisateurs
comme tant 'en traitement' et ne peuvent tre modifis. Ainsi, plusieurs utilisateurs peuvent
travailler au mme projet sans que les versions des objets ne s'crasent mutuellement.
Accs via des programmes externes : En plus du systme de programmation CoDeSys,
d'autres outils disposant galement de l'interface ENI peuvent avoir accs la mme base de
donnes. Il s'agit par exemple de visualisations externes, de systmes ECAD, etc. qui ont besoin
des donnes cres au sein de CoDeSys ou qui crent eux-mmes des donnes.
Afin de crer la base de donnes sur un autre ordinateur et par cela permettre le fonctionnement
multi-utilisateurs, l'interface ENI se compose d'un client et d'une partie serveur. Le systme de
programmation CoDeSys est galement un client du Processus indpendant du serveur ENI au
mme titre que toute autre application qui aurait besoin de l'accs la base de donnes. Pour
l'installation, la configuration et l'utilisation du serveur ENI, reportez-vous la documentation
correspondante.
L'interface ENI supporte actuellement les bases de donnes 'Visual SourceSafe 6.0', 'MKS Source
Integrity', 'PVCS Version Manager' partir de V7.5 et un systme local de fichiers. Les objets peuvent
y tre rpertoris dans diffrents 'Rpertoires' (Catgories avec diffrentes caractristiques d'accs),
subir un check-out pour tre traits et tre ainsi bloqus aux autres utilisateurs. Les objets peuvent
tre appels hors de la base de donnes dans leur tat actuel. En mme temps, des objets peuvent
n'tre gards que localement, c.--d. dans le projet. Le fichier *.pro est la copie de travail d'un projet
gr dans la base de donnes.
7.2 Conditions pour travailler avec une base de donnes de projet ENI
Pour pouvoir utiliser linterface ENI dans le systme de programmation CoDeSys des fins de gestion
des objets de projet dans une base de donnes externe, vous devez remplir les conditions suivantes :
Veuillez noter : Pour linstallation, la configuration et lutilisation du serveur ENI de 3S Smart Software
Solutions GmbH, reportez-vous la documentation correspondante. Notez galement la
possibilit dutiliser lExplorateur ENI qui permet, combin au serveur ENI, de grer la base de
donnes connecte ce dernier indpendamment du systme de base de donnes utilis.
TCP/IP doit tre disponible pour la connexion entre CoDeSys et le serveur ENI puisque ce dernier
utilise le protocole HTTP.
CoDeSys V2.3
7-1
Un serveur ENI doit tre install et dmarr localement ou sur un autre ordinateur (Suite de
Serveur ENI). Un licence valable est obligatoire pour rendre le pilote de base de donnes
disponible. Sans licence, vous ne pouvez utiliser que le pilote du systme local de fichiers.
Configurez les points suivants dans ladministration du serveur ENI, ENI Admin :
- Lutilisateur doit tre enregistr comme utilisateur possdant les droits daccs (User
Management)
- Les droits daccs aux rpertoires de la base de donnes doivent tre correctement dfinis
(Access
Rights)
- Recommandation : le mot de passe de ladministrateur permettant laccs aux programmes ENI
Admin et ENI Control doit tre dfini immdiatement aprs linstallation.
La connexion vers la base de donnes souhaite doit tre correctement configure dans le
programme de contrle ENI Control (Database).
Une base de donnes de projet pour laquelle il y a un pilote support par le serveur ENI doit tre
installe ; nous recommandons d'installer celle-ci sur lordinateur sur lequel le serveur ENI
fonctionne. Vous pouvez galement utiliser un systme local de fichiers pour lequel il y a pour
chaque cas un pilote pour serveur ENI.
Le cas chant, lutilisateur (comme Client) ainsi que le serveur ENI doivent tre enregistrs tous
deux dans ladministration de la base de donnes comme utilisateurs ayant des droits daccs.
Ceci vaut dans tous les cas pour lutilisation de SourceSafe comme base de donnes; pour les
autres pilotes de base de donnes, reportez-vous la documentation correspondante pour la
configuration obligatoire des utilisateurs.
Linterface ENI doit tre active pour le projet en cours (reportez-vous pour ce faire la bote de
dialogue CoDeSys 'Projet' 'Options' 'Base de donnes du projet'.
Vous devez procder la configuration de la liaison la base de donnes pour le projet
CoDeSys en cours (reportez-vous pour ce faire aux botes de dialogue CoDeSys sous 'Projet'
'Options' 'Base de donnes du projet).
Lutilisateur doit ouvrir une session (nom dutilisateur et mot passe) auprs du serveur ENI dans
le projet en cours et grce la bote de dialogue douverture de session, obtenue via la commande
'Projet' 'Liaison avec la base de donnes' 'Login' ou en essayant douvrir une base de donnes.
(Reportez-vous galement aux instructions abrges dans le document 'Serveur ENI Aperu et
dmarrage')
7-2
CoDeSys V2.3
7 - ENI
pour les objets qui contiennent des informations sources spcifiques au projet,
p.ex. modules utiliss en commun au sein dun projet, important pour un
fonctionnement multi-utilisateurs. La commande 'Versions dernires' de
CoDeSys permet de reprendre automatiquement dans le projet local tous les
objets de cette catgorie provenant du rpertoire de projet de la base de
donnes, y compris ceux qui ny avaient pas encore t crs.
Objets
commun :
pour des objets gnraux indpendants des projets, par exemple des
bibliothques de modules qui sont normalement utiliss par plusieurs
utilisateurs dans diffrents projets. Attention : la commande 'Versions
dernires' de CoDeSys permet de ne copier dans le projet local que les objets
de cette catgorie provenant du rpertoire de projet de la base de donnes, qui
y sont dj crs.
Fichiers de
compilation :
Vous pouvez galement retirer selon votre gr des modules de projet hors de la gestion de la base de
donnes du projet et les enregistrer exclusivement localement et de manire classique avec le projet.
CoDeSys V2.3
7-3
7-4
CoDeSys V2.3
8 - Interface DDE
8 Interface DDE
CoDeSys dispose dune Interface DDE (dynamic data exchange). Grce cela, CoDeSys donne
accs aux contenus de variables dautomate programmable et dadresses CEI partir dautres
applications disposant galement dune interface DDE.
Lors de lutilisation de la Gateway DDE, les valeurs de variables peuvent tre lues indpendamment
du systme de programmation CoDeSys de lautomate et galement reprsentes dans des
applications qui disposent galement dune interface DDE.
Attention : Les adresses directes ne peuvent tre lues via le serveur DDE ! Dans ce cas, les variables doivent
tre cres dans CoDeSys avec l'affectation correcte de ladresse (AT).
Attention : Linterface DDE a t teste avec Word 97 et Excel 97 sous Windows NT 4.0. En cas de problmes
dans la communication DDE, causs par lutilisation dautres versions ou par des programmes
installs en sus sur votre ordinateur, 3S Smart Software Solutions ne peut tre tenue pour
responsable.
%IX1.4.1
PLC_PRG.TEST
.GlobVar1
CoDeSys V2.3
8-1
Cliquez une nouvelle fois avec la touche droite de la souris sur le champ et donnez la commande
'Actualiser champ'. Le contenu de la variable recherch apparat dans le texte.
Lier des variables EXCEL
Pour affecter une variable une cellule dans Microsoft EXCEL, il faut entrer ceci dans EXCEL:
=CODESYS|'C:\CODESYS\PROJECT\IFMBSP.PRO'!PLC_PRG.TEST
En effectuant 'Editer' 'Liens' pour ce lien, on obtient:
Type: CODESYS
Fichier source: C:\CODESYS\PROJECT\IFMBSP.PRO
Elment: PLC_PRG.TEST
Accder des variables via Intouch
Convenez pour votre projet d'un nom d'accs DDE <AccessName> comportant le nom d'application
CODESYS et le topic name DDE C:\CODESYS\PROJECT\IFMBSP.PRO.
Vous pouvez prsent convenir de variables de type DDE portant le nom d'accs <AccessName>.
En ce qui concerne l'item name, il faut nouveau entrer le nom de la variable (p.ex.
PLC_PRG.TEST).
La commande 'Fichier' 'Ouvrir' vous permet dappeler une configuration dj enregistre dans un
fichier. La bote de dialogue standard pour la slection dun fichier souvre. La recherche porte par
dfaut sur des fichiers pourvus de lextension ".cfg". Lorsquun fichier de configuration a t
slectionn, les paramtres de configuration pour la gateway et pour lappareil cible (Device)
saffichent.
Si loption 'Fichier' 'Autochargement' est active, la gateway DDE souvre automatiquement
configure telle quelle tait lors de sa dernire utilisation.
8-2
CoDeSys V2.3
8 - Interface DDE
Si la gateway est dmarre sans configuration et sans le rglage Autochargement, seules les notions
'Gateway:' et 'Appareil:' sont affichs dans la fentre. Vous devez alors procder la configuration.
La commande 'Fichier' 'Settings' donne accs la bote de dialogue 'Settings Gateway' dans
laquelle vous pouvez dfinir les paramtres suivants :
Bote de dialogue pour la dfinition des paramtres de la gateway DDE
PLC_PRG.TEST
.GlobVar1
CoDeSys V2.3
8-3
/s
/s=h
/s=i
/s=m
/s=n
/c
/c=<fichier de
config>
/o
aucune
rduite (icone)
agrandie
normale
Exemple :
La gateway DDE dmarre et la fentre de la bote de dialogue apparat sous la forme dune icone, la
configuration du serveur enregistre dans le fichier conf_1.cfg est charge.
8-4
CoDeSys V2.3
9.1.1
Gnral :
Nom : Il s'agit du nom du module de bibliothque sous lequel il est gr au sein du gestionnaire
de licences. Cette entre est obligatoire.
ID du vendeur: Identification du fabricant, en fonction du programme de gestion des licences
spcifiques aux fabricants.
Mode sans licensement : Activez cette option si le module peut tre utilis sans licence (mode
dmonstration) et introduisez le nombre de jours aprs lequel cette licence de dmonstration arrive
expiration. Le nombre de jours est toujours automatiquement arrondi la dizaine suprieure par
CoDeSys V2.3
9-1
3S Licensing Manager
le gestionnaire des licences (10, 20, 30, ...). Si le module doit tre utilis sans limites de temps,
introduisez sans limites (disponible dans la liste de slection).
Cibles : Introduisez ici l'identit du ou des systmes cible pour lesquels la licence est valide.
Plusieurs ID peuvent tre donnes dans une liste, spares par point-virgule, ou comme zone.
Exemple : "12;15-19;21"
Contact :
Licensement par tlphone: / par e-mail: Introduisez ici le numro de tlphone ou l'adresse
e-mail auxquels l'utilisateur peut demander une licence. Ces entres sont obligatoires.
Informations optionnelles :
La fentre de droite est destine au texte que vous pouvez saisir selon votre gr en regard du
point marqu dans la fentre de gauche :
Description, Fabricant, Vendeur, Informations sur le prix
Veuillez noter :
Une bibliothque sauvegarde avec des informations relatives une licence devrait aussi tre munie d'un
mot de passe. Si vous souhaitez sauvegarder le fichier sans mot de passe, vous en tes prvenu par un
message.
Pour les bibliothques 3S, ce n'est pas ncessaire de garder les infos relatives la licence dans un fichier
descriptif de module spar, car elles sont enregistres de manire interne et automatiquement stockes sur
l'ordinateur lors de l'utilisation de la bibliothque. Pour les autres, et galement par exemple les modules
externes (pas 3S), un fichier descriptif doit tre disponible en format XML et pouvant tre lu par le
gestionnaire de licences 3S.
9-2
CoDeSys V2.3
10 - APPENDICE
10 APPENDICE
Appendice A Les oprateurs CEI et fonctions supplmentaires
dextension des normes
CoDeSys supporte tous les oprateurs CEI. Ceux-ci sont connus implicitement dans la totalit du
projet, contrairement aux fonctions standard (bibliothque standard). Outre les oprateurs CEI,
CoDeSys supporte les oprateurs suivants non exigs par la norme : INDEXOF et SIZEOF (voir
oprateurs arithmtiques), ADR et BITADR (voir oprateurs dadressage).
Attention: Si des types de donnes avec virgules flottantes sont utilises, le rsultat d'une calculation dpendre
de la system cible choisi !
Dans les modules du projet les oprateurs sont utilises comme fonctions.
var1
MUL
Multiplication de variables du type BYTE, WORD, DWORD, SINT, USINT, INT, UINT, DINT, UDINT,
REAL et LREAL.
Exemple en langage IL:
LD 7
MUL 2,4,7
ST
var1
CoDeSys V2.3
10-1
Oprateurs arithmtiques
SUB
Soustraction d'une variable de type BYTE, WORD, DWORD, SINT, USINT, INT, UINT, DINT, UDINT,
REAL et LREAL d'une autre variable d'un de ces types.
Une variable TIME peut aussi tre soustraite d'une autre variable TIME, et le rsultat est de nouveau
de type TIME. Tenez compte du fait que les valeurs TIME ngatives ne sont pas dfinies.
Exemple en langage IL:
LD 7
SUB 8
ST
var1
DIV
arithmtique:Division d'une variable de type BYTE, WORD, DWORD, SINT, USINT, INT, UINT, DINT,
UDINT, REAL et LREAL par une autre variable d'un de ces types.
Exemple en langage IL:
LD 8
DIV 2
ST
var1
Si dans votre projet vous dfinissez des fonctions des CheckDivByte, CheckDivWord,
CheckDivDWord et CheckDivReal, vous pourrez vrifier la valeur du diviseur lors de l'utilisation de
l'oprateur DIV, par exemple pour viter une division par zro. Le nom de la fonction est fix et ne
peut tre modifi.
Exemple de mise en œuvre de la fonction CheckDivReal :
FUNCTION CheckDivReal : REAL
VAR_INPUT
divisor:REAL;
END_VAR
IF divisor = 0 THEN
CheckDivReal:=1;
ELSE
CheckDivReal:=divisor;
END_IF;
Le rsultat de la fonction CheckDivReal est utilis comme diviseur par l'oprateur DIV. Ceci permet
d'viter une division par zro dans le programme exemplaire ci-aprs car la valeur du diviseur (d) est
change de 0 1. Le rsultat "erg" de la division est alors 799.
PROGRAM PLC_PRG
VAR
erg:REAL;
v1:REAL:=799;
10-2
CoDeSys V2.3
10 - APPENDICE
d:REAL;
END_VAR
erg:= v1 DIV d
Attention : Les fonctions CheckDiv contenues dans la bibliothque CheckLib sont uniquement des exemples de
solution ! Avant dutiliser la bibliothque, veuillez vrifier si les fonctions travaillent selon vos besoins
ou implmentez directement une fonction CheckDiv ad hoc en tant que module dans votre projet.
MOD
Division modulo d'une variable de type BYTE, WORD, DWORD, SINT, USINT, INT, UINT, DINT,
UDINT, REAL et LREAL par une autre variable d'un ce ces types. Cette fonction donne comme
rsultat le reste entier de la division.
Exemple en langage IL:
LD 9
MOD 2
ST
var1
(* Le rsultat est 1 *)
MOVE
Affectation dune variable une autre variable dun type compatible. Du fait que MOVE soit disponible
sous la forme dun module dans les diteurs CFC et LD, la fonctionnalit EN/EN0 peut galement y
tre utilise dans le cadre de l'affectation dune variable. Ceci nest malheureusement pas possible
dans lditeur FBD.
Exemple en langage CFC en rapport avec la fonction EN/EN0 :
Cest uniquement lorsque en_i a la valeur TRUE que la valeur de la variable var1 est affecte la
variable var2.
( entspricht:
LD ivar1
ST ivar2 )
Beispiel en langage ST:
ivar2 := MOVE(ivar1);
( Ceci correspond :
ivar2 := ivar1; )
CoDeSys V2.3
10-3
INDEXOF
Cette fonction nest pas prescrite par la norme CEI61131-3.
Cette fonction INDEXOF fournit comme rsultat lindex interne d'un module.
Exemple en langage ST:
var1 := INDEXOF(module2);
SIZEOF
Cette fonction nest pas prescrite par la norme CEI61131-3.
Cette fonction SIZEOF fournit comme rsultat le nombre d'octets que ncessite le type de donnes
spcifi.
Exemple en langage IL:
arr1:ARRAY[0..4] OF INT;
Var1 INT
LD arr1
SIZEOF
ST Var1 (* Ergebnis ist 10 *)
Exemple en langage ST:
var1 := SIZEOF(arr1);
Remarque : Dans le cas o vous utilisez dans FBD des gnrateurs de code 68xxx ou C et si vous entrez un
droulement de programme comme le suivant,
vous devez tenir compte de ce qui suit: l'affectation de la valeur de la deuxime variable d'entre du module
oprateur AND la variable "z" ne sera pas effectue cause de la procdure de traitement
optimalise dans FBD ds que la variable d'entre "a" a la valeur FALSE!
10-4
CoDeSys V2.3
10 - APPENDICE
OR
Au niveau du bit OR d'oprandes binaires. Les oprandes doivent tre du type BOOL, BYTE, WORD
ou DWORD.
Exemple en langage IL:
var1 : BYTE;
LD 2#1001_0011
OR 2#1000_1010
ST
Remarque : Dans le cas o vous utilisez dans FBD des gnrateurs de code 68xxx ou C et si vous entrez un
droulement de programme comme le suivant,
vous devez tenir compte de ce qui suit: l'affectation de la valeur de la deuxime variable d'entre du module
oprateur OR la variable "z" ne sera pas effectue cause de la procdure de traitement
optimalise dans FBD ds que la variable d'entre "a" a la valeur TRUE!
XOR
Au niveau du bit XOR d'oprandes binaires. Les oprandes doivent tre du type BOOL, BYTE,
WORD ou DWORD.
Exemple en langage IL:
Var1 : BYTE;
LD 2#1001_0011
XOR 2#1000_1010
ST
Remarque : Veuillez noter le comportement du module XOR dans sa forme tendue, avec plus de deux entres :
les entres sont testes deux par deux et les rsultats obtenus sont nouveau compars les uns aux
autres (correspond la norme, mais pas ncessairement aux attentes).
CoDeSys V2.3
10-5
NOT
Au niveau du bit NOT d'un oprande binaire. L'oprande doit tre du type BOOL, BYTE, WORD ou
DWORD.
Exemple en langage IL:
Var1 : BYTE;
LD 2#1001_0011
NOT
ST
SHL
Dcalage vers la gauche au niveau du bit d'un oprande: erg:= SHL (in, n)
in est dcal de n bits vers la gauche, et complt avec des zros partir de la droite.
Les variables d'entres erg, in et n doivent tre du type BYTE, WORD ou DWORD. In est dcal de n
bits vers la gauche, et complt avec des zros partir de la droite.
Remarque : Ne perdez pas de vue que le nombre de bits utilis par cette opration de calcul est dfini par le
type de donne de la variable d'entre in. S'il s'agit d'une constante, le plus petit type de donne
possible est utilis pour cette opration. Le type de donne de la variable de sortie n'a pas
d'influence sur cette opration de calcul.
Vous pouvez voir l'aide de la reprsentation hexadcimale dans l'exemple suivant l'influence de
l'opration sur les rsultats erg_byte et erg_word pour une mme valeur des variables d'entre
in_byte et in_word mais pour des types de donne diffrents de la variable "in...", c.--d. une fois du
type BYTE et l'autre fois du type WORD.
Exemple en langage ST:
PROGRAM shl_st
VAR
in_byte : BYTE:=16#45;
in_word : WORD:=16#45;
erg_byte : BYTE;
erg_word : WORD;
n: BYTE :=2;
END_VAR
erg_byte:=SHL(in_byte,n); (* Resultat: 16#14 *)
erg_word:=SHL(in_word,n); (* Resultat: 16#0114 *)
Exemple en langage FBD:
10-6
CoDeSys V2.3
10 - APPENDICE
16#45
SHL 2
ST
erg_byte
SHR
Dcalage vers la droite au niveau du bit d'un oprande: erg:= SHR (in, n)
in est dcal de n bits vers la droite. Lorsquun type de donne sans signe est utilis (BYTE, WORD,
DWORD), in est complt avec des zro partir de la gauche. Avec un type de donne avec signe,
p.ex. INT, on procde un dcalage arithmtique, c.--d. quin est complt avec la valeur du bit
suprieur.
Remarque : Ne perdez pas de vue que le nombre de bits utilis par cette opration de calcul est dfini par le
type de donne de la variable d'entre in. S'il s'agit d'une constante, le plus petit type de donne
possible est utilis pour cette opration. Le type de donne de la variable de sortie n'a pas
d'influence sur cette opration de calcul.
Vous pouvez voir l'aide de la reprsentation hexadcimale dans l'exemple suivant l'influence de
l'opration sur les rsultats erg_byte et erg_word pour une mme valeur des variables d'entre
in_byte et in_word mais pour des types de donne diffrents de la variable "in...", c.--d. une fois du
type BYTE et l'autre fois du type WORD.
Exemple en langage ST:
PROGRAM shr_st
VAR
in_byte : BYTE:=16#45;
in_word : WORD:=16#45;
erg_byte : BYTE;
erg_word : WORD;
n: BYTE :=2;
END_VAR
erg_byte:=SHR(in_byte,n); (* Resultat 11 *)
erg_word:=SHR(in_word,n); (* Resultat 0011 *)
Exemple en langage FBD:
16#45
SHR 2
ST
erg_byte
ROL
Rotation vers la gauche au niveau du bit d'un oprande: erg:= ROL (in, n)
erg, in et n doivent tre du type BYTE, WORD ou DWORD. in est dplac n fois vers la gauche d'une
position binaire tandis que le bit le plus gauche est rinsr par la droite.
Remarque : Ne perdez pas de vue que le nombre de bits utilis par cette opration de calcul est dfini par le
type de donne de la variable d'entre in. S'il s'agit d'une constante, le plus petit type de donne
possible est utilis pour cette opration. Le type de donne de la variable de sortie n'a pas
d'influence sur cette opration de calcul.
Vous pouvez voir l'aide de la reprsentation hexadcimale dans l'exemple suivant l'influence de
l'opration sur les rsultats erg_byte et erg_word pour une mme valeur des variables d'entre
in_byte et in_word mais pour des types de donne diffrents de la variable "in...", c.--d. une fois du
type BYTE et l'autre fois du type WORD.
CoDeSys V2.3
10-7
16#45
ROL 2
ST
erg_byte
ROR
Rotation vers la droite au niveau du bit d'un oprande: erg:= ROR (IN, N)
erg, in et n doivent tre du type BYTE, WORD ou DWORD. in est dplac n fois vers la droite d'une
position binaire tandis que le bit le plus droite est rinsr par la gauche.
Remarque : Ne perdez pas de vue que le nombre de bits utilis par cette opration de calcul est dfini par le
type de donne de la variable d'entre in. S'il s'agit d'une constante, le plus petit type de donne
possible est utilis pour cette opration. Le type de donne de la variable de sortie n'a pas
d'influence sur cette opration de calcul.
Vous pouvez voir l'aide de la reprsentation hexadcimale dans l'exemple suivant l'influence de
l'opration sur les rsultats erg_byte et erg_word pour une mme valeur des variables d'entre
in_byte et in_word mais pour des types de donne diffrents de la variable "in...", c.--d. une fois du
type BYTE et l'autre fois du type WORD.
Exemple en langage ST:
PROGRAM ror_st
VAR
in_byte : BYTE:=16#45;
in_word : WORD:=16#45;
erg_byte : BYTE;
erg_word : WORD;
n: BYTE :=2;
END_VAR
erg_byte:=ROR(in_byte,n); (* Resultat 16#51 *)
erg_word:=ROR(in_word,n); (* Resultat 16#4011 *)
Exemple en langage FBD:
10-8
CoDeSys V2.3
10 - APPENDICE
IN0, IN1 et OUT peuvent tre de n'importe quel type, G doit tre de type BOOL. Si G a la valeur
FALSE, alors le rsultat de la slection est IN0, et si G a la valeur TRUE, alors le rsultat est IN1.
Exemple en langage IL:
LD TRUE
SEL 3,4
ST
LD FALSE
SEL 3,4
ST
Remarque: Pour optimizer le dure: Une expression avant IN0 est execute seulement si G=FALSE. Une
expression avant IN1 est execute seulement si G=TRUE!
Dans la mode Simulation toutes les branches sont executes.
MAX
Fonction maximum. Fournit la plus grande des deux valeurs.
OUT := MAX(IN0, IN1)
CoDeSys V2.3
10-9
Oprateurs de slection
MIN
Fonction minimum. Fournit la plus petite des deux valeurs.
OUT := MIN(IN0, IN1)
LIMIT
Limitation
OUT := LIMIT(Min, IN, Max) signifie:
OUT := MIN (MAX (IN, Min), Max)
Max reprsente la barrire suprieure et Min la barrire infrieure du rsultat. Si la valeur IN dpasse
la barrire suprieure Max, alors LIMIT fournit comme valeur Max. Si IN dpasse vers le bas la
barrire Min, alors le rsultat est Min.
IN et OUT peuvent tre de n'importe quel type.
Exemple en langage IL:
LD 90
LIMIT
ST
30,80
MUX
Multiplexeur
OUT := MUX(K, IN0,...,INn) signifie:
OUT := INK.
IN0, ..., INn et OUT peuvent tre de n'importe quel type. K doit tre du type BYTE, WORD, DWORD,
SINT, USINT, INT, UINT, DINT ou UDINT. MUX slectionne dans un ensemble la K-ime valeur.
Exemple en langage IL:
LD 0
MUX
30,40,50,60,70,80
ST
10-10
INK
est
calcule !
CoDeSys V2.3
10 - APPENDICE
LE
Plus petit ou gal.
Un oprateur boolen qui fournit comme rsultat TRUE, lorsque le premier oprande est plus petit
que le deuxime ou gal au deuxime. Les oprandes peuvent tre de type BOOL, BYTE, WORD,
DWORD, SINT, USINT, INT, UINT, DINT, UDINT, REAL, LREAL, TIME, DATE, TIME_OF_DAY,
DATE_AND_TIME ou STRING.
Exemple en langage IL:
LD 20
LE 30
ST
GE
Plus grand ou gal.
Un oprateur boolen qui fournit comme rsultat TRUE, lorsque le premier oprande est plus grand
que le deuxime ou gal au deuxime. Les oprandes peuvent tre de type BOOL, BYTE, WORD,
DWORD, SINT, USINT, INT, UINT, DINT, UDINT, REAL, LREAL, TIME, DATE, TIME_OF_DAY,
DATE_AND_TIME ou STRING.
Exemple en langage IL:
LD 60
GE 40
ST
CoDeSys V2.3
10-11
Oprateurs de comparaison
EQ
Egalit.
Un oprateur boolen qui fournit comme rsultat TRUE, lorsque les deux oprandes sont gaux. Les
oprandes peuvent tre de type BOOL, BYTE, WORD, DWORD, SINT, USINT, INT, UINT, DINT,
UDINT, REAL, LREAL, TIME, DATE, TIME_OF_DAY, DATE_AND_TIME ou STRING.
Exemple en langage IL:
LD 40
EQ 40
ST
NE
Ingalit.
Un oprateur boolen qui fournit comme rsultat TRUE, lorsque les deux oprandes ne sont pas
gaux. Les oprandes peuvent tre de type BOOL, BYTE, WORD, DWORD, SINT, USINT, INT,
UINT, DINT, UDINT, REAL, LREAL, TIME, DATE, TIME_OF_DAY, DATE_AND_TIME ou STRING.
Exemple en langage IL:
LD 40
NE 40
ST
LT
Plus petit que.
Un oprateur boolen qui fournit comme rsultat TRUE, lorsque le premier oprande est plus petit
que le deuxime. Les oprandes peuvent tre de type BOOL, BYTE, WORD, DWORD, SINT, USINT,
INT, UINT, DINT, UDINT, REAL, LREAL, TIME, DATE, TIME_OF_DAY, DATE_AND_TIME ou
STRING.
10-12
CoDeSys V2.3
10 - APPENDICE
var2
man_fun1
Attention: Lorsqu'un changement En ligne est appliqu, les contenus des adresses peuvent
se dplacer. Tenez-en compte lors de l'utilisation de pointeurs sur les adresses.
ADRINST
Cette fonction dadressage nest par prescrite par la norme CEI61131-3.
ADRINST fournit dans une instance de bloc fonctionnel ladresse de cette instance dans un DWORD.
Cette adresse peut tre transmise des fonctions et y tre traite comme un pointeur ou alors tre
attribue un pointeur au sein du projet.
Exemple en langage ST ( lintrieur dune instance de bloc fonctionnel) :
dvar:=ADRINST();
CoDeSys V2.3
10-13
Oprateur d'appeler
BITADR
Cette fonction d'adressage n'est par prescrite par la norme IEC61131-3.
BITADR fournit le dcalage du bit au sein d'un segment dans un DWORD. Ne perdez pas de vue que
le dcalage dpend de l'activation ou non de l'option Adressage par octets dans la configuration du
systme cible.
VAR
var1 AT %IX2.3:BOOL;
bitoffset: DWORD;
END_VAR
Exemple en langage ST:
bitoffset:=BITADR(var1); (* Rsultat avec Adressage par octets=TRUE: 19, et avec
Adressage par octets=FALSE: 35 *)
Exemple en langage IL:
LD Var1
BITADR
ST Var2
Attention: Lorsqu'un changement En ligne est appliqu, les contenus des adresses peuvent
se dplacer. Tenez-en compte lors de l'utilisation de pointeurs sur les adresses.
Oprateur de contenu
La suppression de la rfrence d'un pointer se fait au moyen de l'oprateur de contenu "^" plac
derrire l'identificateur du pointer.
Exemple en langage ST:
pt:POINTER TO INT;
var_int1:INT;
var_int2:INT;
pt := ADR(var_int1);
var_int2:=pt^;
Attention: Lorsqu'un changement En ligne est appliqu, les contenus des adresses peuvent
se dplacer. Tenez-en compte lors de l'utilisation de pointeurs sur les adresses.
10-14
CoDeSys V2.3
10 - APPENDICE
Conversions BOOL_TO
Conversion du type BOOL en un autre type:
Dans le cas des types numriques, le rsultat est 1 si l'oprande a la valeur TRUE et 0 si l'oprande a
la valeur FALSE.
Dans le cas du type STRING, le rsultat est 'TRUE' ou 'FALSE', selon le cas.
Voici aussi au-dessus : 10.8, Remarques.
Exemples en langage IL:
LD TRUE
BOOL_TO_INT
ST I
(* Le rsultat est 1 *)
LD TRUE
BOOL_TO_STRING
ST str
LD TRUE
BOOL_TO_TIME
ST t
LD TRUE
BOOL_TO_TOD
ST
LD FALSE
BOOL_TO_DATE
ST dat
LD TRUE
BOOL_TO_DT
ST dandt
(* Le rsultat est 1 *)
str:=BOOL_TO_STRING(TRUE);
t:=BOOL_TO_TIME(TRUE);
tof:=BOOL_TO_TOD(TRUE);
dat:=BOOL_TO_DATE(FALSE);
dandt:=BOOL_TO_DT(TRUE);
CoDeSys V2.3
10-15
Conversions de types
Conversions TO_BOOL
Conversion d'un type quelconque en un type BOOL:
Le rsultat est TRUE si l'oprande est diffrent de 0. Le rsultat est FALSE si l'oprande est gal 0.
Dans le cas du type STRING, le rsultat est gal TRUE si l'oprande est 'TRUE', sinon le rsultat
est FALSE.
Voici aussi au-dessus : 10.8, Remarques.
Exemples en langage IL:
LD 213
BYTE_TO_BOOL
ST b
LD 0
INT_TO_BOOL
ST b
LD T#5ms
TIME_TO_BOOL
ST b
LD 'TRUE'
STRING_TO_BOOL
ST b
:=
:=
:=
:=
BYTE_TO_BOOL(2#11010101);
INT_TO_BOOL(0);
TIME_TO_BOOL(T#5ms);
STRING_TO_BOOL('TRUE');
(*
(*
(*
(*
Le
Le
Le
Le
rsultat
rsultat
rsultat
rsultat
est
est
est
est
TRUE *)
FALSE *)
TRUE *)
TRUE *)
10-16
CoDeSys V2.3
10 - APPENDICE
Si vous stockez le nombre entier 4223 (16#107f en notation hexadcimale) dans une variable SINT,
alors celle-ci assume la valeur 127 (16#7f en notation hexadcimale).
Exemple en langage IL:
LD 2
INT_TO_REAL
MUL
Exemple en langage FBD:
CoDeSys V2.3
10-17
Conversions de types
Lors de la conversion d'un type plus grand en un type moins grand, des informations peuvent tre
perdues.
Dans le cas du type STRING, le rsultat est la constante de temps.
Voici aussi au-dessus : 10.8, Remarques.
Exemples en langage IL:
LD T#12ms
TIME_TO_STRING
ST str
LD T#300000ms
TIME_TO_DWORD
ST dw
LD TOD#00:00:00.012
TOD_TO_SINT
ST si
10-18
CoDeSys V2.3
10 - APPENDICE
Conversions STRING_TO
Conversion du type STRING en un autre type:
L'oprande du type STRING doit avoir une valeur compatible avec le type d'arrive, sinon le rsultat
est 0.
Voici aussi au-dessus : 10.8, Remarques.
Exemples en langage IL:
LD 'TRUE'
STRING_TO_BOOL
ST b
LD 'abc34'
STRING_TO_WORD
ST w
LD 't#127ms'
STRING_TO_TIME
ST t
CoDeSys V2.3
10-19
Oprateurs numriques
TRUNC
Conversion d'un type REAL en un type INT. Seule la partie entire du nombre est retenue.
Exemple en langage IL:
LD 2.7
TRUNC
GE %MW8
Exemples en langage ST:
i:=TRUNC(1.9); (* Le rsultat est 1 *).
i:=TRUNC(-1.4); (* Le rsultat est 1 *).
OUT
INT
REAL
REAL
BYTE
WORD
DWORD
SINT
REAL
USINT
REAL
UINT
DINT
UDINT
-2
ABS
ST
(* Ergebnis ist 2 *)
10-20
CoDeSys V2.3
10 - APPENDICE
SQRT
Fournit la racine carre d'un nombre.
IN peut tre du type BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT, UINT, UDINT; OUT
doit tre du type REAL.
Exemple en langage IL:
LD
16
SQRT
ST
q (* Ergebnis ist 4 *)
LN
Fournit le logarithme naturel d'un nombre.
IN peut tre du type BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT, UINT, UDINT; OUT
doit tre du type REAL.
Exemple en langage IL:
LD
45
LN
ST
LOG
Fournit le logarithme dcimal d'un nombre.
IN peut tre du type BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT, UINT, UDINT; OUT
doit tre du type REAL.
Exemple en langage IL:
LD
314.5
LOG
ST
CoDeSys V2.3
10-21
Oprateurs numriques
EXP
Fournit l'lvation exponentielle d'un nombre.
IN peut tre du type BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT, UINT, UDINT; OUT
doit tre du type REAL.
Exemple en langage IL:
LD
EXP
ST
SIN
Fournit le sinus d'un nombre. Le calcul est effectu sur une valeur en radians.
IN peut tre du type BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT, UINT, UDINT; OUT
doit tre du type REAL.
Exemple en langage IL:
LD
SIN
ST
0.5
q
COS
Fournit le cosinus d'un nombre. Le calcul est effectu sur une valeur en radians.
IN peut tre du type BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT, UINT, UDINT; OUT
doit tre du type REAL.
Exemple en langage IL:
LD
0.5
COS
ST
10-22
CoDeSys V2.3
10 - APPENDICE
TAN
Fournit la tangente d'un nombre. Le calcul est effectu sur une valeur en radians. IN peut tre du type
BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT, UINT, UDINT; OUT doit tre du type REAL.
Exemple en langage IL:
LD
0.5
TAN
ST
ASIN
Fournit l'arcsinus d'un nombre (fonction inverse de la fonction sinus). La valeur est calcule en
radians.
IN peut tre du type BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT, UINT, UDINT; OUT
doit tre du type REAL.
Exemple en langage IL:
LD
0.5
ASIN
ST
ACOS
Fournit l'arccosinus d'un nombre (fonction inverse de la fonction cosinus). La valeur est calcule en
radians.
IN peut tre du type BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT, UINT, UDINT; OUT
doit tre du type REAL.
Exemple en langage IL:
LD 0.5
ABS
ST q
CoDeSys V2.3
10-23
Oprateurs numriques
ATAN
Fournit l'arctangente d'un nombre (fonction inverse de la fonction tangente). La valeur est calcule en
radians.
IN peut tre du type BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT, UINT, UDINT; OUT
doit tre du type REAL.
Exemple en langage IL:
LD 0.5
ABS
ST q
EXPT
Fournit l'lvation d'une variable la puissance d'une autre variable:
OUT = IN1IN2.
IN1 et IN2 peuvent tre du type BYTE, WORD, DWORD, INT, DINT, REAL, SINT, USINT, UINT,
UDINT; OUT doit tre du type REAL.
Exemple en langage IL:
LD 7
EXPT 2
ST var1 (* Ergebnis ist 49 *)
Exemple en langage ST:
var1 := (7,2);
Exemple en langage FBD:
10-24
CoDeSys V2.3
10 - APPENDICE
CoDeSys V2.3
10-25
Oprateur dinitialisation
10-26
CoDeSys V2.3
10 - APPENDICE
10.11 Constantes
Constantes BOOL
Les constantes boolennes (BOOL) sont les valeurs de vrit TRUE et FALSE.
Constantes TIME
CoDeSys permet la dclaration de constantes TIME. Celles-ci visent particulirement exploiter les
temporisateurs de la bibliothque standard. Une constante de temps TIME est toujours introduite par
la lettre "t" ou "T" (ou le mot "time" ou "TIME") suivi(e) d'un dise "#".
Ensuite vient la dclaration de temps proprement parler; elle peut tre forme de jours (dsigns
par "d"), d'heures (dsignes par "h"), de minutes (dsignes par "m"), de secondes (dsignes par
"s") et de millisecondes (dsignes par "ms"). Il faut veiller ce que les donnes de temps soient
ranges par ordre dcroissant (d avant h avant m avant s avant m avant ms). A noter que les
priodes temporelles ne doivent pas apparatre toutes ensemble.
Exemples de constantes TIME correctes dans une affectation en langage ST:
TIME1 := T#14ms;
TIME1 := T#100S12ms;
TIME1 := t#12h34m15s;
Exemples errons:
TIME1 := t#5m68s;
TIME1 := 15ms;
TIME1 := t#4ms13d;
Constantes DATE
Ce type de constante permet de constituer des donnes de date. Une dclaration de constante DATE
est introduite par la lettre "d" ou "D", ou le mot "DATE" ou "date" et suivi(e) d'un dise "#". Aprs quoi,
vous tes libre d'entrer une date quelconque sous la forme Anne-Mois-Jour.
Exemples:
DATE#1996-05-06
d#1972-03-29
Constantes TIME_OF_DAY
Ce type de constante permet d'enregistrer les heures du jour. Une dclaration de constante
TIME_OF_DAY est introduite par "tod#", "TOD#", "TIME_OF_DAY#" ou "time_of_day#"; vous pouvez
ensuite entrer une heure sous la forme Heure:Minute:Seconde. Les secondes peuvent tre entres
sous la forme de nombres rels, autorisant donc l'entre de fractions de seconde.
Exemples:
TIME_OF_DAY#15:36:30.123
tod#00:00:00
Constantes DATE_AND_TIME
Les constantes de date et d'heure du jour peuvent tre combines; on les appelle alors des
constantes DATE_AND_TIME. Elles sont introduites par "dt#", "DT#", "DATE_AND_TIME#" ou
"date_and_time#". La date est suivie d'un trait d'union puis de l'heure du jour.
CoDeSys V2.3
10-27
Constantes
Exemples:
DATE_AND_TIME#1996-05-06-15:36:30
dt#1972-03-29-00:00:00
Constantes numriques
Les libells numriques peuvent se prsenter sous la forme de chiffres binaires, de chiffres octaux, de
nombres dcimaux et de nombres hexadcimaux. Si un libell entier n'est pas un nombre dcimal,
vous devez faire suivre sa base d'un dise (#) avant d'crire les nombres de la constante. Dans le cas
des nombres hexadcimaux, les nombres compris entre 10 et 15 sont conventionnellement
reprsents par les lettres A-F.
Les caractres de soulignement uniques (_) au sein d'une valeur numrique sont autoriss.
Exemples:
14
(nombre
2#1001_0011 (nombre
8#67
(nombre
16#A
(nombre
dcimal)
binaire)
octal)
hexadcimal)
Ces libells numriques peuvent tre du type BYTE, WORD, DWORD, SINT, USINT, INT, UINT,
DINT, UDINT, REAL ou LREAL.
Les conversions implicites des types "suprieurs" vers les types "infrieurs" sont interdites. Impossible
donc d'utiliser une variable DINT comme une variable INT, par exemple. Pour cela, il faut faire appel
aux fonctions de conversion de types, disponibles dans la bibliothque standard .
Constantes REAL / LREAL
Les constantes REAL et LREAL peuvent tre dfinies sous la forme de fractions dcimales et de
reprsentations exponentielles. C'est la transcription amricaine qui a t choisie (la virgule est
remplace par un point).
Exemple :
7.4 au lieu de 7,4
1.64e+009 au lieu de 1,64e+009
Constantes STRING
Une chane est une chane de caractres quelconque. Les constantes STRING sont dlimites par
des guillemets simples. Il est possible de saisir galement des espaces et des trmas. Ces caractres
ont le mme statut que les autres caractres.
Dans les chanes de caractres, la combinaison du signe dollar ($) et de deux chiffres hexadcimaux
est interprte comme la reprsentation hexadcimale du code de caractre huit bits. En outre, lors
de leur apparition dans une chane de caractres, des combinaisons de deux caractres commenant
par un signe dollar sont interprtes comme suit:
10-28
$$
Signe dollar
$'
Guillemet simple
$L ou $l
Saut de ligne
$N ou $n
Nouvelle ligne
$P ou $p
Saut de page
$R ou $r
$T ou $t
Tabulation
CoDeSys V2.3
10 - APPENDICE
Exemples:
'w1W?'
'Susi et Claus'
':-)'
Si la constante ne peut tre transmise au type cible sans perte de donnes, un message derreur
saffiche :
Les constantes types peuvent tre utilises partout o des constantes normales peuvent ltre.
10.12 Variables
Les variables peuvent tre dclares soit localement, dans la partie de dclaration d'un module, soit
globalement, dans les listes de variables.
Remarque: Il est possible de dfinir une variable locale avec le mme nom qu'une variable globale. Au sein d'un
module, la variable dfinie localement a toujours priorit. Il n'est pas possible d'attribuer le mme
nom deux variables globales ; cela provoque par exemple une erreur de compilation si une variable
"var1" est dfinie aussi bien dans la liste des variables que dans la configuration de l'automate.
En ce qui concerne les identificateurs de variables, il faut veiller ce qu'ils ne comportent ni espace ni
trma ni accent, ce qu'ils ne soient pas dclars deux fois et ce qu'ils ne concident pas avec des
mots-cls. Les variables peuvent s'crire indiffremment en majuscules ou en minuscules, c.--d. que
VAR1, Var1 et var1 reprsentent une seule et mme variable. Les caractres de soulignement sont
signifiants, c.--d. que A_BCD et AB_CD sont interprts comme deux identificateurs diffrents.
Les caractres de soulignement successifs ne sont autoriss ni au dbut ni l'intrieur d'un
identificateur. La longueur des identificateurs et la zone significative de variables peuvent tre
utilises partout o le type dclar le permet.
Vous pouvez appeler les variables disponibles via la Liste de slection pour l'dition.
Drapeaux systme
Les drapeaux systme sont des variables dclares implicitement, qui dpendent spcifiquement de
votre automate programmable. Pour trouver les drapeaux systme de votre systme, choisissez
l'lment de menu 'Insrer' 'Oprande'; vous accdez la Liste de slection pour l'dition dans
laquelle vous choisissez la catgorie Variable systme.
Accs aux variables de tableaux, de structures et de modules
L'accs aux composants de tableaux bidimensionnels se fait comme suit:
<Nom_de_tableau>[Index1, Index2]
CoDeSys V2.3
10-29
Variables
10-30
CoDeSys V2.3
10 - APPENDICE
CoDeSys V2.3
10-31
Adresses
10.13 Adresses
Attention: Lorsqu'un changement En ligne est appliqu, les contenus des adresses peuvent se dplacer.
Tenez-en compte lors de l'utilisation de pointeurs sur les adresses.
Adresse
La prsentation directe d'lments de mmoire individuels se fait au moyen de chanes de caractres
spcifiques, rsultant de la concatnation du signe pour-cent "%", d'un prfixe de plage, d'un prfixe
de dimension et d'un ou de plusieurs nombres naturels, lesquels sont spars les uns des autres par
un espace.
Les prfixes de plage suivants sont supports:
I
Entre
Sortie
Mmento
Bit individuel
Octet (8 bits)
Exemples:
%QX75 et %Q75
Bit de sortie 75
%IW215
%QB7
Octet de sortie 7
%MD48
%IW2.5.7.1
Voir galement cet effet chapitre Appendice A, Oprateurs CEI et fonctions supplmentaires
d'extension des normes, oprateurs d'adressage
Mmento
Pour accder au mmento, il est possible d'utiliser toutes les grandeurs supportes.
Par exemple, l'adresse %MD48 concernerait les octets n. 192, 193, 194 et 195 de la zone des
mmentos (48 * 4 = 192). Le premier octet est l'octet n 0.
On peut accder de la mme faon aux mots et aux octets, voire au bits: l'adresse %MX5.0 donne
accs au premier bit du cinquime mot (les bits sont en gnral enregistrs par groupes de mots).
Voir galement cet effet chapitre Appendice, Oprateurs CEI et fonctions supplmentaires
d'extension des normes, oprateurs d'adressage
10-32
CoDeSys V2.3
10 - APPENDICE
10.14 Fonctions
En langage ST, un appel de fonction peut tre utilis comme oprande.
Exemple :
Result := Fct(7) + 3;
Fonction TIME()
Cette fonction calcule le temps (milliseconds) pass depuis le start du systeme.
Type de donne est TIME.
Example en diteur IL:
TIME
ST systime
CoDeSys V2.3
10-33
Fonctions
10-34
CoDeSys V2.3
10 - APPENDICE
Limite infrieure
Limite suprieure
Espace mmoire
BYTE
255
8 bits
WORD
65535
16 bits
DWORD
4294967295
32 bits
SINT:
-128
127
8 bits
USINT:
255
8 bits
INT:
-32768
32767
16 bits
UINT:
65535
16 bits
DINT:
-2147483648
2147483647
32 bits
UDINT:
4294967295
32 bits
Pour cette raison, il se peut que des informations soient perdues lors de la conversion d'un type
donn en un type plus petit.
REAL / LREAL
REAL et LREAL sont des "types en virgule flottante". Ils sont ncessaires lorsqu'on utilise des
nombres rationnels. L'espace mmoire rserv comporte 32 bits pour REAL et 64 bits pour LREAL.
Valeurs admissibles pour REAL : 1.175494351e-38F 3.402823466e+38F
Valeurs admissibles pour LREAL : 2.2250738585072014e-308 1.7976931348623158e+308
STRING
Une variable de type STRING peut recevoir une chane de caractre quelconque. La spcification de
la dimension de l'espace mmoire rserv, au niveau de la dclaration, se rapporte aux caractres et
peut se faire entre parenthses ou entre crochets. Si aucune dimension n'est spcifie, la valeur par
dfaut est de 80 caractres.
La longueur des chanes de caractres n'est en principe pas limite, les fonctions de chanes de
caractres n'excutent cependant que des longueurs de 1-255 !
Exemple de dclaration de chane de caractres:
str:STRING(35):='Ceci est une chane';
CoDeSys V2.3
10-35
TIME1 := T#14ms;
TIME1 := T#100S12ms;
TIME1 := t#12h34m15s;
Exemples errons:
TIME1 := t#5m68s;
TIME1 := 15ms;
(*Omission de T#*)
TIME1 := t#4ms13d;
10-36
CoDeSys V2.3
10 - APPENDICE
Initialisation de tableaux :
Exemples d'initialisation complte d'un tableau :
arr1 : ARRAY [1..5] OF INT := 1,2,3,4,5;
arr2 : ARRAY [1..2,3..4] OF INT := 1,3(7);
(* bref pour 1,7,7,7 *)
arr3 : ARRAY [1..2,2..3,3..4] OF INT := 2(0),4(4),2,3;
(* bref pour 0,0,4,4,4,4,2,3 *)
Exemple d'initialisation d'un tableau de structure :
TYPE STRUCT1
STRUCT
p1:int;
p2:int;
p3:dword;
END_STRUCT
ARRAY[1..3] OF STRUCT1:= (p1:=1,p2:=10,p3:=4723),(p1:=2,p2:=0,p3:=299),
(p1:=14,p2:=5,p3:=112);
Exemple d'initialisation partielle d'un tableau :
arr1 : ARRAY [1..10] OF INT := 1,2;
Les lments pour lesquels aucune valeur nest dfinie sont initialiss avec la valeur dinitialisation
par dfaut du type de base. Dans lexemple ci-dessus, les lments anarray[6] anarray[10] sont
initialiss 0.
CoDeSys V2.3
10-37
Fonction Checkbounds
Si dans votre projet vous dfinissez une fonction nomme CheckBounds, vous pourrez vrifier
automatiquement les dbordements de plage lintrieur de tableaux ! Le nom de la fonction est fix
et ne peut tre modifi.
Exemple pour la fonction CheckBounds :
FUNCTION CheckBounds : DINT
VAR_INPUT
index, lower, upper: DINT;
END_VAR
IF index < lower THEN
CheckBounds := lower;
ELSIF index > upper THEN
CheckBounds := upper;
ELSE CheckBounds := index;
END_IF
Pointeur
C'est dans les pointeurs que l'on enregistre les adresses de variables ou de blocs fonctionnels
pendant l'excution d'un programme.
La syntaxe des dclarations des pointeurs est la suivante:
<Identificateur>: POINTER OF <Type de donnes/bloc fonctionnel>;
Un pointer peut montrer sur n'importe quel type de donnes ou bloc fonctionnel, mme ceux qui sont
dfinis par l'utilisateur.
L'oprateur d'adressage ADR permet d'affecter au pointeur l'adresse d'une variable ou d'un bloc
fonctionnel.
La suppression de la rfrence d'un pointer se fait au moyen de l'oprateur de contenu "^" plac
derrire l'identificateur du pointer.
Veuillez noter : Un pointeur est incrment par octets ! Par le biais de linstruction p=p+SIZEOF(p^), on obtient
une incrmentation identique celle du compilateur C.
10-38
CoDeSys V2.3
10 - APPENDICE
Exemple :
pt:POINTER TO INT;
var_int1:INT := 5;
var_int2:INT;
pt := ADR(var_int1);
var_int2:= pt^; (* var_int2 a maintenant la valeur 5 *)
Attention: Lorsqu'un changement En ligne est appliqu, les contenus des adresses peuvent se dplacer. Tenezen compte lors de l'utilisation de pointeurs sur les adresses.
VAR_INPUT
dwAddress : DWORD;
iSize : DINT;
iGran : DINT;
bWrite: BOOL;
END_VAR
Si des fonctions CheckPointer de mme que CheckPointerAligned sont prsentes dans le projet, la
fonction CheckPointerAligned est appele.
CoDeSys V2.3
10-39
Type numratif
Un type numratif est un type de donnes dfini par l'utilisateur, constitu d'un ensemble de
constantes de chane de caractres. Ces constantes sont appeles valeurs numratives.
Les valeurs numratives sont connues dans tout le projet, mme si elles sont dclares localement
au niveau d'un module. Crez de prfrence vos types numratifs sous forme d'objets l'intrieur de
l'Organisateur d'objets, dans l'onglet Types de donnes
. Commencez par le mot cl TYPE et
terminez par END_TYPE.
Syntaxe:
Une mme valeur numrative ne peut pas tre utilise deux fois.
Exemple :
SIGNAL: (rouge, jaune, vert);
COULEUR: (bleu, blanc, rouge);
Erreur: "rouge" ne peut pas tre utilise pour SIGNAL et pour COULEUR.
Structures
Les structures sont places sous forme d'objets (types de donnes dfinis) dans l'Organisateur
d'objets, dans l'onglet Types de donnes
. Commencez par le mot cl TYPE et terminez par
END_TYPE.
La syntaxe des dclarations des structures est la suivante:
TYPE <Nom_de_structure>:
STRUCT
<Dclaration de variable 1>
.
.
<Dclaration de variable n>
END_STRUCT
END_TYPE
<Nom_de_structure> est un type qui est aprs cette dclaration connu dans tout le projet, et qui peut
tre utilis comme un type de donnes standard.
Les structures imbriques ne sont pas autorises. La seule restriction est que les variables ne
peuvent pas tre places sur des adresses (la dclaration AT n'est pas autorise!).
10-40
CoDeSys V2.3
10 - APPENDICE
Il n'est pas possible d'initialiser avec des variables. Voir sous 'Tableau' pour un exemple d'initialisation
d'un array d'une structure.
On accde aux composants de structures au moyen de la syntaxe suivante:
<Nom_de_structure>.<Nom_de_composant>
Supposons que nous ayons une structure nomme "Semaine", qui comporte un composant nomm
"Lundi". Nous pouvons accder ce composant de la faon suivante: Poly_1.Start
Rfrences
Le type de donnes dfini par l'utilisateur Rfrence permet de gnrer un nom de rechange pour une
variable, une constante ou un bloc fonctionnel.
Crez vos rfrences sous forme d'objets l'intrieur de l'Organisateur d'objets, dans l'onglet
Types de donnes . Commencez par le mot cl TYPE et terminez par END_TYPE.
Syntaxe:
TYPE <Identificateur>: <Expression d'affectation>;
END_TYPE
Exemple :
TYPE message:STRING[50];
END_TYPE;
<Inttype> est un des types de donnes SINT, USINT, INT, UINT, DINT, UDINT, BYTE,
WORD, DWORD (LINT, ULINT, LWORD).
<li>
est une constante qui doit tre compatible avec le type de base et qui dfinit la
limite infrieure du domaine du type. Cette limite infrieure fait elle aussi partie
de ce domaine dfini.
<ls>
est une constante qui doit tre compatible avec le type de base et qui dfinit la
limite suprieure du domaine du type. Cette limite suprieure fait elle aussi
partie de ce domaine dfini.
CoDeSys V2.3
10-41
Exemple :
TYPE
SubInt : INT (-4095..4095);
END_TYPE
Dclaration directe dune variable laide dun type domaine partiel (Veillez lentre correcte d'une
valeur initiale lorsque le domaine partiel ne contient pas le '0') :
VAR
i1 : INT (-4095..4095);
i2: INT (5..10):=5;
ui : UINT (0..10000);
END_VAR
Si un type domaine partiel se voit attribuer une constante (dans la dclaration ou limplmentation) qui
ne tombe pas dans ce domaine dfini (p.ex. i:=5000), un message derreur saffiche.
Pour vrifier le respect des limites du domaine partiel lors de lexcution, vous devez insrer les
fonctions CheckRangeSigned et CheckRangeUnsigned. Ces deux fonctions vous permettent de
reprer les dpassements du domaine partiel de faon adquate (la valeur peut par exemple tre
rduite ou un drapeau derreur peut tre positionn). Elles sont implicitement appeles ds quune
variable de type domaine partiel est crite et construite partir dun type avec ou sans signe.
Exemple : Dans le cas dune variable domaine partiel avec signe (comme par exemple i ci-dessus), la
fonction CheckRangeSigned est appele, pouvant tre programme pour ramener une valeur dans
les limites du domaine autoris.
FUNCTION CheckRangeSigned : DINT
VAR_INPUT
value, lower, upper: DINT;
END_VAR
IF (value < lower) THEN
CheckRangeSigned := lower;
ELSIF(value > upper) THEN
CheckRangeSigned := upper;
ELSE
CheckRangeSigned := value;
END_IF
Pour un appel automatique, le nom de fonction CheckRangeSigned est obligatoire de mme que la
structure de linterface : valeur renvoye et trois paramtres de type DINT.
La fonction est paramtre comme suit lors de lappel :
value:
lower:
upper:
Valeur renvoye :
Si par exemple y a la valeur 1000, i n'aura que la valeur 4095 aprs cette affectation.
10-42
CoDeSys V2.3
10 - APPENDICE
Le nom de fonction et linterface doivent naturellement tre aussi corrects pour la fonction
CheckRangeUnsigned.
FUNCTION CheckRangeUnsigned : UDINT
VAR_INPUT
value, lower, upper: UDINT;
END_VAR
Attention : Si ces deux fonctions CheckRangeSigned et CheckRangeUnsigned ne sont pas disponibles, il ny a
pas de contrle portant sur les dpassements de plage des types domaine partiel! La variable i
pourrait alors obtenir nimporte quelle valeur comprise entre 32768 et 32767!
Si une fonction CheckRangeSigned ou CheckRangeUnsigned est implmente comme ci-dessus, il
se peut quune boucle infinie survienne dans une boucle FOR lors de lutilisation de type domaine
partiel. Ceci se produit prcisment quand le domaine dfini pour la boucle FOR est plus grand ou
gal celui du type domaine partiel.
La fonction CheckRangeSigned contenue dans la librairie Check.Lib nest quun exemple de
solution ! Avant dutiliser la bibliothque, veuillez vrifier si la fonction travaille selon vos besoins ou
implmentez directement une fonction CheckRange ad hoc en tant que module dans votre projet.
Exemple :
VAR
ui : UINT (0..10000);
END_VAR
FOR ui:=0 TO 10000 DO
...
END_FOR
On ne quitte pas la boucle FOR vu que ui ne peut tre plus grand que 10000.
De la mme manire, il faut faire attention au contenu des fonctions Checkrange lors de lutilisation de valeurs
dincrmentation dans la boucle FOR.
CoDeSys V2.3
10-43
10-44
CoDeSys V2.3
10 - APPENDICE
10.17.1
LEN
La fonction LEN (standard.lib) dtermine la longueur d'une chane.
L'entre STR est du type STRING et la valeur renvoye de la fonction est du type INT.
Exemple en langage IL:
LD
'SUSI'
LEN
ST
LEFT
La fonction LEFT (standard.lib) fournit un extrait de chane situe l'extrme gauche de la chane.
L'entre STR est du type STRING, SIZE du type INT et la valeur renvoye de la fonction est du type
STRING.
LEFT (STR, SIZE) signifie: extraire les SIZE premiers caractres de la chane en partant de l'extrme
gauche de la chane.
Exemple en langage IL:
LD
'SUSI'
LEFT 3
ST
CoDeSys V2.3
10-45
Bibliothque Standard.lib
RIGHT
La fonction RIGHT (standard.lib) fournit un extrait de chane situe l'extrme droite de la chane.
L'entre STR est du type STRING, SIZE du type INT et la valeur renvoye de la fonction est du type
STRING.
RIGHT (STR, SIZE) signifie: extraire les SIZE premiers caractres de la chane en partant de
l'extrme droite de la chane.
Exemple en langage IL:
LD
'SUSI'
RIGHT 3
ST
MID
La fonction MID (standard.lib) fournit un extrait de chane situe dans la chane.
L'entre STR est du type STRING; LEN et POS du type INT et la valeur renvoye de la fonction est
du type STRING.
MID (STR, LEN, POS) signifie: extraire LEN caractres de la chane STR, en commenant par le
caractre positionn en POS.
Exemple en langage IL:
LD
'SUSI'
MID 2,2
ST
10-46
CoDeSys V2.3
10 - APPENDICE
CONCAT
La fonction CONCAT (standard.lib) fournit la concatnation (runion) de deux chanes.
Les entres STR1 et STR2 et la valeur renvoye de la fonction sont du type STRING.
Exemple en langage IL:
LD
'SUSI'
CONCAT 'WILLI'
ST
INSERT
La fonction INSERT (standard.lib) insre une chane dans une autre chane, partir d'une position
donne.
Les entres STR1 et STR2 sont du type STRING, POS du type INT et la valeur renvoye de la
fonction est du type STRING.
INSERT(STR1, STR2, POS) signifie: insre STR2 dans STR1 partir de la POS-ime position.
Exemple en langage IL:
LD
'SUSI'
INSERT 'XY',2
ST
DELETE
La fonction DELETE (standard.lib) efface un extrait de chane d'une chane, partir d'une position
donne.
L'entre STR est du type STRING; LEN et POS du type INT et la valeur renvoye de la fonction est
du type STRING.
DELETE(STR, LEN, POS) signifie: efface LEN caractres de la chane STR, en commenant par le
POS-ime caractre.
Exemple en langage IL:
LD
'SUXYSI'
DELETE 2,3
ST
CoDeSys V2.3
10-47
Bibliothque Standard.lib
REPLACE
La fonction REPLACE (standard.lib) remplace un extrait de chane par un autre extrait de chane,
l'intrieur d'une chane.
Les entres STR1 et STR2 sont du type STRING; LEN et POS du type INT et la valeur renvoye de
la fonction est du type STRING.
REPLACE(STR1, STR2, L, P) signifie: remplace L caractres de la chane STR1 par la chane STR2,
en partant du P-ime caractre.
Exemple en langage IL:
LD
'SUXYSI'
REPLACE 'K',2,2
ST
FIND
La fonction FIND (standard.lib) recherche un extrait de chane l'intrieur d'une chane.
Les entres STR1 et STR2 sont du type STRING et la valeur renvoye de la fonction est du type INT.
FIND(STR1, STR2) signifie: recherche la position du premier caractre de la premire occurrence de
STR2 l'intrieur de STR1. Si STR2 n'apparat pas l'intrieur de STR1, alors on a OUT := 0.
Exemple en langage IL:
LD
'abcdef'
FIND 'de'
ST
10-48
CoDeSys V2.3
10 - APPENDICE
10.17.2
SR
Bloc fonctionnel bistable (forc dominant) (standard.lib) :
Q1 = SR (SET1, RESET) signifie:
Q1 = (NOT RESET AND Q1) OR SET1
Les entres SET1 et RESET ainsi que la sortie Q1 sont du type BOOL.
Exemple de dclaration:
SRInst : SR;
Exemple en langage IL:
CAL SRInst(SET1 := VarBOOL1, RESET := VarBOOL2)
LD SRInst.Q1
ST VarBOOL3
Exemple en langage FBD:
RS
Bloc fonctionnel bistable (rinitialis dominant) (standard.lib) :
Q1 = RS (SET, RESET1) signifie:
Q1 = NOT RESET1 AND (Q1 OR SET)
Les entres SET et RESET ainsi que la sortie Q1 sont du type BOOL.
Exemple de dclaration:
RSInst : RS ;
Exemple en langage IL:
CAL RSInst(SET:= VarBOOL1,RESET1:=VarBOOL2)
LD RSInst.Q1
ST VarBOOL3
Exemple en langage FBD:
CoDeSys V2.3
10-49
Bibliothque Standard.lib
SEMA
Un smaphore (interruptible) (standard.lib) .
BUSY = SEMA(CLAIM, RELEASE) signifie:
BUSY := X;
IF CLAIM THEN X:=TRUE;
ELSIF RELEASE THEN BUSY := FALSE; X:= FALSE;
END_IF
X
est
une
variable
BOOL
interne,
initialise
avec
la
Les entres CLAIM et RELEASE ainsi que la sortie BUSY sont du type BOOL.
valeur
FALSE.
Lorsque SEMA est appele et que BUSY a la valeur TRUE, cela signifie que SEMA a dj t
occupe auparavant (SEMA a t appele avec CLAIM = TRUE). Lorsque BUSY a la valeur FALSE,
cela signifie que SEMA n'a pas encore t appele ou que SEMA a t libre (appel avec RELEASE
= TRUE).
Exemple de dclaration:
SEMAInst : SEMA;
Exemple en langage IL:
CAL SEMAInst(CLAIM:=VarBOOL1,RELEASE:=VarBOOL2)
LD SEMAInst.BUSY
ST VarBOOL3
Exemple en langage FBD:
10.17.3
Dtection de fronts
R_TRIG
Le bloc fonctionnel R_TRIG (standard.lib) dtecte un front montant.
FUNCTION_BLOCK R_TRIG
VAR_INPUT
CLK : BOOL;
END_VAR
VAR_OUTPUT
Q : BOOL;
END_VAR
VAR
M : BOOL := FALSE;
END_VAR
Q := CLK AND NOT M;
M := CLK;
Tant que la variable d'entre CLK fournit la valeur FALSE, la sortie Q et la variable auxiliaire M ont
comme valeur FALSE. Ds que CLK fournit la valeur TRUE, Q fournit la valeur TRUE et ensuite M
assume la valeur TRUE. Par consquent, l'occasion de chaque nouvel appel de l'instance du bloc
10-50
CoDeSys V2.3
10 - APPENDICE
fonctionnel, Q fournira nouveau la valeur FALSE jusqu' ce que CLK ait un front descendant suivi
d'un front montant.
Exemple de dclaration:
RTRIGInst : R_TRIG ;
Exemple en langage IL:
CAL RTRIGInst(CLK := VarBOOL1)
LD
RTRIGInst.Q
ST
VarBOOL2
F_TRIG
Le bloc fonctionnel F_TRIG (standard.lib) dtecte un front descendant.
FUNCTION_BLOCK F_TRIG
VAR_INPUT
CLK: BOOL;
END_VAR
VAR_OUTPUT
Q: BOOL;
END_VAR
VAR
M: BOOL := FALSE;
END_VAR
Q := NOT CLK AND NOT M;
M := NOT CLK;
Tant que la variable d'entre CLK fournit la valeur TRUE, la sortie Q et la variable auxiliaire M ont
comme valeur FALSE. Ds que CLK fournit la valeur FALSE, Q fournit la valeur TRUE et ensuite M
assume la valeur TRUE. Par consquent, l'occasion de chaque nouvel appel de l'instance du bloc
fonctionnel, Q fournira nouveau la valeur FALSE jusqu' ce que CLK ait un front montant suivi d'un
front descendant.
Exemple de dclaration:
FTRIGInst : F_TRIG ;
Exemple en langage IL:
CAL FTRIGInst(CLK := VarBOOL1)
LD
FTRIGInst.Q
ST
VarBOOL2
CoDeSys V2.3
10-51
Bibliothque Standard.lib
10.17.4
Temporisateurs
TP
Le bloc fonctionnel TP (standard.lib) est un gnrateur d'impulsions:
TP(IN, PT, Q, ET) signifie:
IN et PT sont des variables d'entres du type BOOL ou TIME. Q et ET sont des variables de sortie du
type BOOL ou TIME. Si IN a la valeur FALSE, alors les valeurs fournies sont FALSE ou bien 0.
Ds que IN devient TRUE, le temps est calcul en ET en millisecondes jusqu ce que la valeur soit
quivalente la valeur en PT, ensuite la valeur reste constante.
Q a la valeur TRUE aprs que IN a commut vers la valeur TRUE et que ET est encore plus petit ou
gal PT. Dans tous les autres cas, Q a la valeur FALSE.
Q fournit donc un signal pour la priode spcifie dans PT.
Reprsentation graphique de l'volution de TP au cours du temps:
Exemple de dclaration:
TPInst : TP ;
Exemple en langage IL:
CAL TPInst(IN := VarBOOL1, PT := T#5s)
LD
TPInst.Q
ST
VarBOOL2
10-52
CoDeSys V2.3
10 - APPENDICE
TON
Le bloc fonctionnel TON (Timer on-delay) (standard.lib) ralise une temporisation l'enclenchement.
TON(IN, PT, Q, ET) signifie:
IN et PT sont des variables d'entres du type BOOL ou TIME. Q et ET sont des variables de sortie du
type BOOL ou TIME. Si IN a la valeur FALSE, alors les valeurs fournies sont FALSE ou bien 0.
Ds que IN a la valeur TRUE, la valeur de temps de ET est incrmente en millisecondes jusqu' ce
qu'elle soit gale la valeur de PT. Ds lors, la valeur de ET reste inchange.
Q a la valeur TRUE si IN a la valeur TRUE et si ET est gal PT. Dans tous les autres cas, Q a la
valeur FALSE.
Q a donc un front montant lorsque le temps spcifi dans PT, qui est exprim en millisecondes, est
coul.
Reprsentation graphique de l'volution de TON au cours du temps:
Exemple de dclaration:
TONInst : TON ;
Exemple en langage IL:
CAL TONInst(IN := VarBOOL1, PT := T#5s)
LD
TONInst.Q
ST
VarBOOL2
TOF
Le bloc fonctionnel TOF (Timer off-delay) (standard.lib) ralise une temporisation au dclenchement.
TOF(IN, PT, Q, ET) signifie:
IN et PT sont des variables d'entre du type BOOL ou TIME. Q et ET sont des variables de sortie du
type BOOL ou TIME. Si IN a la valeur TRUE, alors les valeurs fournies sont TRUE ou bien 0.
Ds que IN a la valeur FALSE, la valeur de temps de ET est incrmente en millisecondes jusqu' ce
qu'elle soit gale la valeur de PT. Ds lors, la valeur de ET reste inchange.
Q a la valeur FALSE si IN a la valeur FALSE et si ET est gal PT. Dans tous les autres cas, Q a la
valeur TRUE.
CoDeSys V2.3
10-53
Bibliothque Standard.lib
Q a donc un front descendant lorsque le temps spcifi dans PT, qui est exprim en millisecondes,
est coul.
Reprsentation graphique de l'volution de TOF au cours du temps:
Exemple de dclaration:
TOFInst : TOF ;
Exemple en langage IL:
CAL TOFInst(IN := VarBOOL1, PT := T#5s)
LD TOFInst.Q
ST VarBOOL2
Exemple en langage FBD:
RTC
Le bloc fonctionnel RTC (Runtime Clock) (standard.lib) fournit continuellement la date et l'heure
partir d'un point de dpart dfini.
10-54
CoDeSys V2.3
10 - APPENDICE
10.17.5
Compteurs
CTU
Le bloc fonctionnel compteur (comptage) (standard.lib) :
Les entres CU et RESET ainsi que la sortie Q sont du type BOOL; l'entre PV et la sortie CV sont du
type WORD.
Lorsque RESET a la valeur TRUE, la variable de comptage CV est remise zro. Si CU a un front
montant de FALSE vers TRUE, alors CV est incrment d'une unit.
Q fournit la valeur TRUE si CV est suprieur ou gal la limite suprieure de PV.
Exemple de dclaration:
CTUInst : CTU ;
Exemple en langage IL:
CAL
LD
CTUInst.Q
ST
VarBOOL3
LD
CTUInst.CV
ST
VarINT2
CTD
Le bloc fonctionnel compteur (dcomptage) (standard.lib) :
Les entres CD et LOAD ainsi que la sortie Q sont du type BOOL; l'entre PV et la sortie CV sont du
type WORD.
Lorsque LOAD a la valeur TRUE, la variable de comptage CV est initialise avec la valeur de la limite
suprieure PV. Si CD a un front montant de FALSE vers TRUE, alors le bloc fonctionnel CV est
dcrment d'une unit, aussi longtemps que CV est suprieur zro (c'est--dire aussi longtemps
qu'il ne se produit pas de dbordement par le bas).
Q fournit la valeur TRUE si CV est gal 0.
Exemple de dclaration:
CTDInst : CTD ;
Exemple en langage IL:
CAL
LD
CTDInst.Q
ST
VarBOOL3
LD
CTDInst.CV
ST
VarINT2
CoDeSys V2.3
10-55
Bibliothque Standard.lib
CTUD
Le bloc fonctionnel compteur (comptage-dcomptage) (standard.lib) :
Les entres CU, CD, RESET, LOAD et les sorties QU et QD sont du type BOOL; PV et CV sont du
type WORD.
Lorsque RESET est active, la variable de comptage CV est remise zro. Si LOAD est active,
alors CV est initialise avec la valeur PV.
Si CU a un front montant de FALSE vers TRUE, alors CV est incrment d'une unit. Si CD a un front
montant de FALSE vers TRUE, alors le bloc fonctionnel CV est diminu d'une unit, aussi longtemps
que CV ne produit pas de dbordement par le bas.
QU fournit la valeur TRUE si CV est suprieur ou gal PV.
QD fournit la valeur TRUE si CV est gal 0. (0 est la limite infrieure implmente dans CoDeSys.)
Exemple de dclaration:
CTUDInst : CUTD ;
Exemple en langage IL:
CAL
LD
CTUDInst.Q
ST
VarBOOL5
LD
CTUDInst.QD
ST
VarBOOL5
LD
CTUInst.CV
ST
VarINT2
10-56
CoDeSys V2.3
10 - APPENDICE
10.18.1
Conversion BCD
Un octet en format BCD contient des valeurs entires comprises entre 0 et 99. L'emplacement de
chaque chiffre dcimal occupe quatre bits, le chiffre dcimal des dizaines tant mmoris dans les
bits 4-7. Par consquent, le format BCD ressemble la notation hexadcimale. Il s'en diffrencie par
le fait qu'un octet BCD ne peut mmoriser que des valeurs comprises entre 0 et 99 alors qu'un octet
hexadcimal va de 0 FF.
Exemple : Le nombre entier 51 doit tre converti au format BCD. En notation binaire, 5 s'crit 0101 et
1 s'crit 0001. Cela donne 01010001 pour l'octet BCD, ce qui correspond la valeur $51=81.
BCD_TO_INT
Cette fonction (util.lib) permet de convertir un octet au format BCD en une valeur INT:
La valeur d'entre de cette fonction est de type BYTE et la sortie est de type INT.
Si un octet est pass la fonction alors qu'il n'est pas au format BCD, la valeur de sortie est 1.
Exemples en langage ST:
i:=BCD_TO_INT(73); (* Le rsultat est 49 *)
k:=BCD_TO_INT(151); (* Le rsultat est 97 *)
l:=BCD_TO_INT(15); (* Le rsultat est 1 parce que pas en format BCD *)
INT_TO_BCD
Cette fonction (util.lib) permet de convertir une valeur INTEGER en un octet au format BCD:
La valeur d'entre de cette fonction est de type INT et la sortie est de type BYTE.
Si une valeur INTEGER est passe la fonction mais qu'elle ne peut pas tre convertie en un octet
au format BCD, la valeur de sortie est 255.
Exemples en langage ST:
i:=INT_TO_BCD(49); (* Le rsultat est 73 *)
k:=BCD_TO_INT(97); (* Le rsultat est 151 *)
l:=BCD_TO_INT(100); (* Erreur! Sortie: 255 *)
CoDeSys V2.3
10-57
Bibliotheque Util.lib
10.18.2
EXTRACT
Cette fonction (util.lib) comporte les entres X, de type DWORD, et N, de type BYTE. La valeur de
sortie est une valeur BOOL, dont le contenu correspond au n-ime bit de l'entre X, en commenant
compter avec la bit numro zro.
Exemples en langage ST:
FLAG:=EXTRACT(X:=81, N:=4); (* Rsultat: TRUE parce que 81 correspond 1010001 en
binaire et le 4-ime bit est 1 *)
FLAG:=EXTRACT(X:=33, N:=0); (* Rsultat: TRUE parce que 33 correspond 100001 en
binaire et le 0-ime bit est 1 *)
PACK
Cette fonction (util.lib) peut renvoyer jusqu' 8 bits d'entre B0, B1, , B7 de type BOOL sous forme
d'un seul BYTE.
Le bloc fonctionnel UNPACK est troitement li cette fonction.
PUTBIT
Cette fonction (util.lib) comporte les entres X, de type DWORD, N de type BYTE et B, de type BOOL.
PUTBIT affecte le n-ime bit de X la valeur B, en commenant compter avec le bit numro zro.
Exemple en langage ST:
A:=38; (* 100110 en binaire*)
B:=PUTBIT(A,4,TRUE); (* Rsultat: 54 = 2#110110 *)
C:=PUTBIT(A,1,FALSE); (* Rsultat: 36 = 2#100100 *)
UNPACK
La fonction UNPACK (util.lib) convertit l'entre B de type BYTE en 8 variables de sortie B0, , B7 de
type BOOL. Il s'agit donc de la fonction inverse de PACK.
Exemple dans l'diteur CFC: Sortie:
10-58
CoDeSys V2.3
10 - APPENDICE
10.18.3
DERIVATIVE
Ce bloc fonctionnel (util.lib) dtermine approximativement la drivation locale.
La valeur de la fonction est passe par l'intermdiaire de la variable IN, sous la forme REAL. TM
contient le temps coul en msec, sous la forme DWORD tandis que l'entre RESET, de type BOOL,
permet de redmarrer le bloc fonctionnel en passant la valeur TRUE.
La sortie OUT est de type REAL.
Pour obtenir le meilleur rsultat possible, DERIVATIVE effectue une approximation partir des quatre
dernires valeurs afin de restreindre autant que possible les erreurs dues des imprcisions au
niveau des paramtres d'entre.
Module dans l'diteur CFC:
INTEGRAL
Ce bloc fonctionnel (util.lib) dtermine approximativement l'intgrale d'une fonction.
De la mme manire que pour DERIVATIVE, la valeur de la fonction est passe par l'intermdiaire de
la variable IN, sous la forme REAL. TM contient le temps coul en msec, sous la forme DWORD
tandis que l'entre RESET, de type BOOL, permet de redmarrer le bloc fonctionnel en passant la
valeur TRUE.
La sortie OUT est de type REAL.
Si lintgrale atteint la limite de la plage des valeurs dune variable REAL (env. 1038), la variable de
sortie boolenne OVERFLOW est positionne sur TRUE, et le module reste bloqu jusqu ce quil
soit rinitialis par un RESET.
Module dans l'diteur CFC: Exemple : Intgration d'une fonction linaire:
LIN_TRAFO
Ce bloc fonctionnel (util.lib) transforme une valeur Real se trouvant dans une plage dfinie par des
limites infrieure et suprieure en une valeur Real correspondante, telle quelle soit proportionnelle
dans une autre plage, galement dfinie par des limites infrieure et suprieure. Cette transformation
est base sur lquation suivante :
(IN - IN_MIN) : (IN_MAX - IN) = (OUT - OUT_MIN) : (OUT_MAX - OUT)
CoDeSys V2.3
10-59
Bibliotheque Util.lib
Variables dentre :
Variable
Type de
donne
Description
IN
REAL
Valeur dentre
IN_MIN
REAL
IN_MAX
REAL
OUT_MIN
REAL
OUT_MAX
REAL
Variables de sortie
Variable
Type de
donne
Description
OUT
REAL
Valeur de sortie
ERROR
REAL
Exemple dapplication :
Un capteur de temprature fournit des valeurs en volts lentre IN. Ces dernires doivent tre transformes en
indication de temprature en degrs Celsius et tre sorties au niveau de OUT. La plage dentre (volt) est dfinie
par IN_MIN=0 et IN_MAX=10. La plage de sortie (degr Celsius) est dfinie par OUT_MIN=-20 et OUT_MAX=40.
En consquence, une temprature de 10 degrs Celsius est sortie pour une entre de 5 volts.
STATISTICS_INT
Ce bloc fonctionnel (util.lib) calcule certaines valeurs statistiques de rfrence:
L'entre IN est de type INT. Si l'entre RESET prend la valeur TRUE, alors toutes les valeurs sont
rinitialises.
Les sorties MN et MX contiennent respectivement la valeur minimale et la valeur maximale de IN.
AVG contient la moyenne, c'est--dire la valeur probable de IN. Ces trois sorties sont de type INT.
Module dans l'diteur CFC:
STATISTICS_REAL
Ce bloc fonctionnel (util.lib) correspond STATISTICS_INT, ceci prs que l'entre IN est de type
REAL, de mme que les sorties MN, MX, AVG.
10-60
CoDeSys V2.3
10 - APPENDICE
VARIANCE
VARIANCE (util.lib) calcule la variance des valeurs d'entre.
L'entre IN est de type REAL, l'entre RESET de type BOOL et la sortie OUT de nouveau de type
REAL.
Ce bloc fonctionnel calcule la variance des valeurs d'entre. VARIANCE est rinitialis lorsque
RESET=TRUE.
L'cart type peut tre calcul facilement partir de la racine carre de VARIANCE.
10.18.4
Rgulateurs
PD
Le bloc fonctionnel de rgulateur PD (util.lib) :
ACTUAL (valeur effective) et SET_POINT (valeur de consigne), ainsi que KP, le coefficient de
proportionnalit, sont des valeurs d'entre de type REAL. TV est de type DWORD et contient la dure
d'action drive, exprime en sec (p. ex. 0,5 pour 500 msec). Y_OFFSET, Y_MIN et Y_MAX sont
du type REAL et servent la transformation de la valeur de rglage en une plage prdfinie.
MANUAL, de type BOOL, permute en mode manuel. RESET est de type BOOL et permet de
rinitialiser le rgulateur.
La sortie, savoir la valeur de rglage (Y), est de type REAL, et est calcule comme suit :
Y = KP ( + TV /t) + Y_OFFSET dans laquelle =SET_POINT-ACTUAL
En outre, Y est restreint la plage autorise fixe par Y_MIN et Y_MAX. Lorsque Y dpasse ces
limites, la variable de sortie boolenne LIMITS_ACTIVE obtient la valeur TRUE. Si vous ne souhaitez
pas attribuer de limites la valeur de rglage, Y_MIN et Y_MAX doivent tre rgls sur 0.
Si MANUAL a la valeur TRUE, le rgulateur interrompt son fonctionnement, c.--d. Y nest pas
chang (par le rgulateur), tant que MANUAL nobtient pas la valeur FALSE, ce qui aurait pour effet
de rinitialiser le rgulateur.
Un rgulateur P est facilement cr, en rglant TV de manire fixe sur 0.
CoDeSys V2.3
10-61
Bibliotheque Util.lib
PID
Le bloc fonctionnel de rgulateur PID (util.lib) :
La diffrence avec le rgulateur PD rside dans le fait que ce bloc fonctionnel comporte une entre
supplmentaire DWORD TN destine la dure de rajustage en sec (p. ex 0,5 pour 500 msec).
La sortie, savoir la valeur de rglage (Y), est galement de type REAL, et comporte linverse du
rgulateur PD, une partie intgrale supplmentaire :
Y = KP ( + 1/TN ?(t)dt + TV /t) + Y_OFFSET
Le rgulateur PID peut facilement tre converti en un rgulateur PI, en entrant TV=0.
De par la partie intgrale supplmentaire, un dpassement peut survenir, en cas de paramtrage
incorrect du rgulateur, lorsque lintgrale devient trop grande d lerreur . Par mesure de scurit,
une variable boolenne de sortie OVERFLOW est disponible, et celle-ci obtient dans ce cas la valeur
TRUE. En mme temps, le rgulateur interrompt son fonctionnement et il est ractiv par une
rinitialisation.
10.18.5
Gnrateurs de signaux
BLINK
Le bloc fonctionnel BLINK (util.lib) gnre un signal pulsatoire. BLINK comporte les entres ENABLE,
de type BOOL, ainsi que TIMELOW et TIMEHIGH, de type TIME. La sortie OUT est de type BOOL.
Si la valeur TRUE est affecte l'entre ENABLE, alors BLINK est activ, ce qui signifie que la valeur
TRUE sera affecte la sortie pendant la dure TIMEHIGH et ensuite la valeur FALSE sera affecte
la sortie pendant la dure TIMELOW.
Exemple dans l'diteur CFC :
FREQ_MEASURE
Ce bloc fonctionnel (util.lib) mesure la frquence (moyenne) (Hz) dun signal dentre boolen
(frquence = 1/intervalle de mesure). Ce faisant, on a la possibilit dindiquer le nombre dintervalles
de mesure sur lesquels la moyenne est calcule. Un intervalle de mesure correspond la dure qui
stend entre deux fronts montants du signal dentre.
10-62
CoDeSys V2.3
10 - APPENDICE
Variables dentre :
Variable
Type de
donne
Description
IN
BOOL
Signal dentre
PERIODS
INT
RESET
BOOL
Variables de sortie :
Variable
Type de
donne
Description
OUT
REAL
VALID
BOOL
GEN
Le gnrateur de fonctions (util.lib) cre des fonctions priodiques typiques :
Au niveau des entres, on trouve MODE, qui est du type d'numration prdfini GEN_MODE, BASE,
de type BOOL, PERIOD, de type TIME, CYCLES et AMPLITUDE, deux valeurs de type INT, ainsi que
RESET, une entre de type BOOL. Il existe une sortie OUT, de type INT.
MODE dfinit le type de fonction crer. Les valeurs d'numration TRIANGLE et TRIANGLE_POS
fournissent deux fonctions triangulaires, SAWTOOTH_RISE et SAWTOOTH_FALL correspondent
respectivement une fonction en dents de scie montante et descendante, RECTANGLE donne un
signal rectangulaire tandis que SINUS et COSINUS permettent d'obtenir un signal sous forme de
sinus et de cosinus :
CoDeSys V2.3
TRIANGLE :
TRIANGLE_POS :
SAWTOOTH_RISE :
SAWTOOTH_FALL :
RECTANGLE :
SINUS :
10-63
Bibliotheque Util.lib
COSINUS :
BASE indique si la dure de la priode se rapporte bien un temps prdfini (dans ce cas,
BASE=TRUE) ou plutt un nombre dtermin de cycles, c'est--dire d'appel du bloc fonctionnel
(dans ce cas, BASE=FALSE).
PERIOD ou CYCLES dfinissent la dure de la priode correspondante.
AMPLITUDE permet de dfinir simplement l'amplitude de la fonction crer.
Le gnrateur de fonctions est rinitialis sur 0 ds que RESET=TRUE.
Exemple dans l'diteur CFC :
10.18.6
Manipulateurs de fonctions
CHARCURVE
Ce bloc fonctionnel (util.lib) permet de reprsenter des valeurs l'aide d'une fonction compose de
segments linaires :
IN, de type INT, est alimente par la valeur manipuler. N, de type BYTE, dsigne le nombre de
points dfinissant la fonction de transformation. Cette courbe caractristique est ensuite dfinie dans
ARRAY P[0..10], o P est de type POINT, une structure compose de deux valeurs INT (X et Y).
Au niveau de la sortie, on trouve OUT, de type INT, la valeur manipule et ERR, de type BYTE, qui
signale des erreurs ventuelles.
Les points P[0]..P[N-1] dans ARRAY doivent tre tris d'aprs leur valeur en X, sinon la valeur 1 est
affecte ERR. Si l'entre IN n'est pas comprise entre P[0].X et P[N-1].X, alors on obtient ERR=2 et
OUT prend la valeur limite P[0].Y ou P[N-1].Y, selon le cas.
Si N se situe en dehors des valeurs admises comprises entre 2 et 11, alors on obtient ERR=4.
Exemple en langage ST :
Dans un premier temps, il faut dfinir ARRAY P au niveau de l'en-tte :
VAR
...
COURBE:CHARCURVE;
KL:ARRAY[0..10] OF POINT:=(X:=0,Y:=0),(X:=250,Y:=50),
(X:=500,Y:=150),(X:=750,Y:=400),7((X:=1000,Y:=1000));
10-64
CoDeSys V2.3
10 - APPENDICE
COMPTEUR:INT;
...
END_VAR
Ensuite nous alimentons CHARCURVE avec une valeur qui, par exemple, va croissant :
COMPTEUR:=COMPTEUR+10;
COURBE(IN:=COMPTEUR,N:=5,P:=KL);
Le trac ci-dessous permet d'illustrer cela:
RAMP_INT
RAMP_INT (util.lib) permet de limiter la monte ou la descente de la fonction alimente.
Au niveau des entres, on trouve trois valeurs INT : IN, l'entre pour la fonction, ainsi que ASCEND et
DESCEND, qui correspondent respectivement l'augmentation et la diminution maximale par
priode. La priode est dfinie par TIMEBASE, qui est de type TIME. Si la valeur TRUE est affecte
RESET, alors RAMP_INT est rinitialise.
La sortie OUT, de type INT, contient la valeur de la fonction, dont la monte et la descente sont
limites.
Notez que des problmes peuvent survenir lorsque TIMEBASE est plus petit que la dure dun cycle
complet.
Si t#0s est affect TIMEBASE, alors les limitations ascendante et descendante se rapportent un
cycle et donc un appel de bloc fonctionnel.
Exemple dans l'diteur CFC :
CoDeSys V2.3
10-65
Bibliotheque Util.lib
RAMP_REAL
RAMP_REAL (util.lib) fonctionne exactement comme RAMP_INT si ce n'est que IN, ASCEND,
DESCEND ainsi que la sortie OUT sont de type REAL.
10.18.7
HYSTERESIS
En ce qui concerne les entres, ce bloc fonctionnel (util.lib) comporte trois valeurs de type INT,
savoir IN, HIGH et LOW. La sortie OUT est de type BOOL.
Si IN dpasse la valeur limite LOW, alors la valeur TRUE est affecte OUT. Si IN dpasse la limite
suprieure HIGH, alors la sortie OUT fournit comme valeur FALSE.
Exemple explicatif:
LIMITALARM
Ce bloc fonctionnel (util.lib) indique si la valeur d'entre est comprise dans un intervalle prdfini et
fournit la limite qui fait l'objet d'un dpassement, le cas chant.
Les valeurs d'entre IN, HIGH et LOW sont de type INT alors que les sorties O, U et IL sont de type
BOOL.
Si la limite suprieure HIGH est dpasse par IN, alors la valeur TRUE est affecte O. Si LOW est
dpasse vers le bas, alors la valeur TRUE est affecte U. En revanche, si IN est compris entre
LOW et HIGH, alors la valeur TRUE est affecte IL.
Exemple dans l'diteur CFC :
10-66
Rsultat:
CoDeSys V2.3
10 - APPENDICE
Les fonctions :
AnalyzeExpression affiche dans une chane de caractres les composants de l'expression qui ont
provoqu la valeur globale FALSE. Pour ce faire, on utilise la fonction AppendErrorString, pour que
les composants individuels soient spars par le symbole "|" dans la chane de caractres de sortie.
OutString: STRING, rsultat de l'analyse, succession des composants concerns de
l'expression (p.ex. y < x | d)
AnalyseExpressionTable crit dans un array les composants de l'expression qui ont provoqu la
valeur globale FALSE, et ExpressionResult donne les informations ci-dessous pour chaque
composant de sa structure: Nom (name), adresse (address), commentaire (comment), valeur actuelle
(value).
OutTable: ARRAY [0..15] OF ExpressionResult;
par exemple:
AnalyseExpressionCombined
AnalyseExpressionTable
CoDeSys V2.3
contient
les
fonctionnalits
de
AnalyzeExpression
et
de
10-67
Bibliothques de systme
10-68
CoDeSys V2.3
10 - APPENDICE
pour JMPC, CALC, RETC : l'instruction est excute uniquement si l'expression prcdente
fournit le rsultat FALSE.
Une mise entre parenthses restreint loprateur, et lopration comprise entre les parenthses
nest excute que lorsque la deuxime parenthse est atteinte
Pour une description dtaille relative lutilisation, reportez-vous aux annexes correspondantes des
oprateurs dans CoDeSys ou dans les bibliothques.
en langage IL :
Mod. IL
Signification
'
..
[]
:=
LD var1
ST var1
S boolvar
R boolvar
JMP marke
CoDeSys V2.3
CN
10-69
10-70
en langage ST :
en langage IL :
Mod. IL
Signification
<Nom du programme>
CAL prog1
CN
<Nom d'instance>
CAL inst1
CN
en langage ST :
en langage IL :
Mod. IL Signification
<Nom de fonction>(vx,
vy,...)>
<Nom de fonction>
vx, vy
CN
RETURN
RET
CN
AND
AND
N,(
OR
OR
N,(
OR bit bit
XOR
XOR
N,(
NOT
NOT
ADD
Addition
SUB
Soustraction
MUL
Multiplication
DIV
Division
>
GT
Plus grand
>=
GE
EQ
gal
<>
NE
Diffrent
<=
LE
<
LT
Plus petit
MOD(in)
MOD
Division Modulo
INDEXOF(in)
INDEXOF
SIZEOF(in)
SIZEOF
SHL(K,in)
SHL
SHR(K,in)
SHR
ROL(K,in)
ROL
ROR(K,in)
ROR
CoDeSys V2.3
10 - APPENDICE
en langage ST :
en langage IL :
Mod. IL
Signification
SEL
MAX(in0,in1)
MAX
MIN(in0,in1)
MIN
LIMIT(MIN,in,Max)
LIMIT
MUX(K,in0,...in_n)
MUX
ADR(in)
ADR
ADRINST()
ADRINST()
BOOL_TO_<type>(in)
BOOL_TO_<type>
<type>_TO_BOOL(in)
<type>_TO_BOOL
INT_TO_<type>(in)
INT_TO_<type>
REAL_TO_<type>(in)
REAL_TO_<type>
LREAL_TO_<type>(in)
LREAL_TO_<type>
TIME_TO_<type>(in)
TIME_TO_<type>
TOD_TO_<type>(in)
TOD_TO__<type>
DATE_TO_<type>(in)
DATE_TO_<type>
DT_TO_<type>(in)
DT_TO_<type>
STRING_TO_<type>(in)
STRING_TO_<type>
TRUNC(in)
TRUNC
ABS(in)
ABS
SQRT(in)
SQRT
LN(in)
LN
CoDeSys V2.3
10-71
en langage ST :
en langage IL :
Mod. IL
Signification
LOG(in)
LOG
EXP(in)
EXP
SIN(in)
SIN
Sinus de loprande
COS(in)
COS
Cosinus de loprande
TAN(in)
TAN
Tangente de loprande
ASIN(in)
ASIN
Arcsinus de loprande
ACOS(in)
ACOS
Arccosinus de loprande
ATAN(in)
ATAN
Arctangente de loprande
EXPT(in,expt)
EXPT expt
Exponentation de loprande la
exptme puissance
10-72
en langage ST :
en langage IL :
Signification
LEN(in)
LEN
LEFT(str,size)
LEFT
RIGHT(str,size)
RIGHT
MID(str,size,pos)
MID
CONCAT('str1','str2')
CONCAT 'str2'
INSERT('str1','str2',pos)
INSERT 'str2',p
DELETE('str1',len,pos)
DELETE len,pos
REPLACE('str1','str2',
len,pos)
REPLACE
'str2',len,pos
FIND('str1','str2')
FIND 'str2'
SR
SR
RS
RS
SEMA
SEMA
R_TRIG
R_TRIG
CoDeSys V2.3
10 - APPENDICE
en langage ST :
en langage IL :
Signification
F_TRIG
F_TRIG
CTU
CTU
CTD
CTD
CTUD
CTUD
TP
TP
TON
TON
TOF
TOF
RTC
RTC
BCD_TO_INT
INT_TO_BCD
EXTRACT(in,n)
PACK
PUTBIT
UNPACK
DERIVATIVE
Drivation
INTEGRAL
Intgrale
LN_TRAFO
STATISTICS_INT
STATISTICS_REAL
VARIANCE
Calcul de variance
PD
Rgulateurs PD
PID
Rgulateurs PID
BLINK
Signal pulsatoire
FREQ_MEASURE
GEN
Fonctions priodiques
CHARCURVE
Fonctions linaires
CoDeSys V2.3
10-73
Signification
10-74
RAMP_INT
RAMP_REAL
HYSTERESIS
Hystrsis
LIMITALARM
CoDeSys V2.3
10 - APPENDICE
CoDeSys tente de basculer avec le projet actuel vers le mode En Ligne, aprs le
dmarrage.
/run
/out <outfile>
Tous les messages sont crits en sortie dans le fichier <outfile>, tout en tant
affichs dans la fentre de messages.
/noinfo
/userlevel
<group>
Le niveau d'accs peut tre dfini (p.ex. "/userlevel 0" pour le niveau d'accs 0)
/password
<password>
/openfromplc
/visudownload
Lorsque CoDeSys HMI est dmarr en mme temps qu'un projet qui ne concide
pas avec celui se trouvant sur l'automate programmable, un tlchargement peut
tre effectu. (dialogue de confirmation auquel il faut rpondre par OUI ou NON)
/notargetchange Un changement de systme cible ne peut tre effectu que par le biais dun fichier de
commande. Voir commande target... .
/cmd <cmdfile> Les instructions dansle fichier de commande <cmdfile> sont excutes aprs le
dmarrage.
La saisie d'une ligne de commande est structure comme suit :
"<Chemin du fichier exe CoDeSys>" "<Chemin du projet>" /<Commande1> /<Commande2> ....
Exemple de ligne de commande:
"D:\dir1\codesys" "C:\projects\ampel.pro" /show hide /cmd command.cmd
CoDeSys V2.3
10-75
Le fichier signal.pro s'ouvre sans que la fentre ne s'affiche. Le contenu du fichier de commande
(cmdfile) command.cmd est excut.
onerror break
online logout
online run
online sim
online bootproject
online
sourcecodedownload
online stop
sur
l'automate
/readpwd:<readpassword> Le mot de passe pour l'accs en lecture est donn, de sorte que le
dialogue de saisie de mot de passe n'apparaisse plus
automatiquement avec les projets protgs par mot de passe.
/writepwd:<writepassword> Le mot de passe pour l'accs complet est donn, de sorte que le
dialogue de saisie de mot de passe n'apparaisse plus.
file close
10-76
CoDeSys V2.3
10 - APPENDICE
file save
Le projet actuel complet est archiv dans un fichier ZIP avec comme
nom <filename>. ('Fichier' 'Enregistrer l'archive/Envoyer')
file printersetup
<filename>.dfr
Peut tre complt en option
par : pageperobject ou
pagepersubobject
file quit
project expmul
project documentation
CoDeSys V2.3
10-77
out close
out clear
echo off
echo <texte>
Remplacer
replace no
Ne pas remplacer
replace yesall
Remplacer tout
replace noall
Ne rien remplacer
partir de V2.3 :
replace yesall
Remplacer tout (Il nest pas tenu compte dun 'query on' ventuellement
positionn, pas de demande de confirmation)
replace noall
Ne rien remplacer (Il nest pas tenu compte dun 'query on'
ventuellement positionn, pas de demande de confirmation)
replace query
Instructions pour contrler le comportement par dfaut des botes de dialogue CoDeSys:
10-78
query on
query off ok
query off no
CoDeSys V2.3
10 - APPENDICE
Instruction de dbogage:
debug
Instructions pour dfinir les rpertoires utiliss par CoDeSys: (-> catgorie Gnral dans la bote de
dialogue des options du projet pour 'Rpertoires' : si plusieurs rpertoires sont dsigns par une seule
commande, ceux-ci doivent tre spars par un point-virgule suivi dun espace et toute la srie doit
tre place entre deux apostrophes;
Exemple, deux rpertoires :
dir lib ODQ\codesys\Libraries\StandardR DQ\codesys\Libraries\NetVarO
dir lib <libdir>
Attendre 5 secondes
watchlist read
watchlist write
Intgration de bibliothques :
library add
<Fichier de bibliothque1>
<Fichier de bibliothque2> ..
<Fichier de bibliothqueN>
library delete
[<Bibliothque1>
<Bibliothque2> ..
<BibliothqueN>]
CoDeSys V2.3
10-79
Copie dobjets :
object copy
<Fichier projet source>
<Chemin source>
<Chemin cible>
setreadonly
<TRUE|FALSE> <Type
d'objet>| <Nom d'objet>
Avec la valeur TRUE, l'objet n'est accessible qu'en lecture. Pour les
types d'objets pou, dut, gvl, vis, il faut en outre indiquer le nom de
l'objet.
Types d'objets possibles : pou (module), dut (type de donnes), gvl
(liste des variables globales), vis (visualisation), cnc (objet CNC), liblist
(bibliothques, rglages cible (configuration du systme cible),
toolinstanceobject (instance dans les outils), toolmanagerobject (toutes
les instances dans les outils), customplconfig (configuration de
l'automate), projectinfo (informations sur le projet), taskconfig
(configuration des tches), trace, watchentrylist (gestionnaire d'espion
et de recettes), alarmconfig (configuration d'alarme)
P.ex. seul un accs en lecture est possible aprs "object setreadonly
TRUE pou plc_prg" dans PLC_PRG
device name<nom
dappareil>
device parameter
<Id>|<nom de paramtre>
<valeur>
Appel du systme :
system <commande>
10-80
CoDeSys V2.3
10 - APPENDICE
eni set local <nom du module> Classe le module dans la catgorie 'Local', il nest alors pas gr
dans la base de donnes du projet
(Dialogue 'Projet' 'Objet' 'Proprits' 'Liaison au contrle de
ressources')
eni set shared <nom du
module>
CoDeSys V2.3
10-81
Commandes du menu 'Projet' 'Liaison avec la base de donnes' pour travailler avec la base de
donnes :
10-82
Les objets indiqus dans une liste et spars par des espaces
sont attribus la catgorie de base de donnes. ('Dfinition
multiple')
Exemple:
"eni set project pou:as_fub pou:st_prg"
(les modules (pou) as_fub und st_prg sont attribus la catgorie
de base de donnes)
'eni <categorie>get
<type dobjet>:<nom du
module> <type dobjet>:<nom
du module>
eni <categorie>checkinall
"<commentaire>"
CoDeSys V2.3
10 - APPENDICE
Les objets indiqus dans une liste par type dobjet:nom du module
et spars par des espaces subissent un check-in dans la base
de donnes du projet. La procdure de check-in est
accompagne dun <commentaire>.
$EXE_DIR$
CoDeSys V2.3
10-83
10-84
CoDeSys V2.3
10 - APPENDICE
10-85
Aprs avoir effectu l'importation SEQ, vous pouvez prsent importer des blocs STEP5 ou 7. Vous
pouvez aussi ds prsent insrer les entres et sorties utilises dans la configuration de l'automate.
Celles-ci ne sont pas requises pour l'importation STEP5, mais les adresses utilises sont vrifies ds
que vous compilez nouveau votre projet, et sont signales comme erreurs, le cas chant.
Importer un fichier S5
Il est possible de lire des blocs partir de fichiers programme Siemens S5 (*.s5d). Le code contenu
est le code MC-5, qui peut tre excut par l'automate programmable S5. Le code MC5 correspond
en gnral directement la liste d'instructions STEP5 (sans noms symboliques). De plus, le SD5
contient les commentaires relatifs aux lignes de la liste d'instruction STEP5. Etant donn qu'un fichier
S5D ne contient aucun nom symbolique, mais uniquement des adresses absolues, CoDeSys cherche
le nom symbolique correspondant l'adresse dans les variables existant dj au sein du projet
CoDeSys. Si CoDeSys ne trouve aucun nom, alors l'adresse absolue reste inchange. Par
consquent, si vous attachez de l'importance aux noms symboliques, importez le fichier SEQ avant
d'importer le fichier S5.
L'utilisateur choisit dans une bote de dialogue Windows standard le fichier S5D. Ensuite une autre
bote de dialogue propose la liste des blocs pouvant tre slectionns. Il est prfrable de choisir la
totalit des blocs. Vous pouvez galement choisir de laisser les blocs en langage STEP5-IL ou de les
convertir en langage IL, LD ou FBD.
Dans la mesure du possible, on utilise, au cours de l'importation, des noms symboliques en lieu et
place des adresses absolues. Lorsque CoDeSys trouve une instruction telle que "U M12.0" pendant
l'importation, alors il cherche une variable globale qui est dfinie sur le mmento M12.0. La premire
dclaration qui convient est retenue et l'instruction est importe sous forme de "U Nom" et non sous
la forme "U M12.0" (Nom est ici l'identificateur symbolique du mmento M12.0).
Parfois, l'importation ou la conversion du code ncessite des variables supplmentaires. Celles-ci
sont dclares globalement. Par exemple, pour reproduire des entres actives par un front montant
ou descendant (p.ex. pour un compteur S5), on doit faire appel des instances R_TRIG.
Conversion de S5 vers CEI 61131-3
Si, pour l'importation STEP5, vous avez choisi un langage CEI comme langage cible, vous devez
tabler sur le fait que votre projet n'est pas convertible intgralement d'aprs la norme CEI 61131-3. Si
une partie d'un bloc S5 contient un code qui n'est pas convertible d'aprs la norme CEI 61131-3, alors
un message d'erreur appropri est affich et le code STEP5 IL d'origine qui pose problme est intgr
dans le module CEI sous forme de commentaire. En rgle gnrale, ce code doit tre remplac par
vous mme, c.--d. que vous devez le rcrire. Les commandes systme qui ne fonctionnent que sur
un systme S5 donn ne sont pas convertible en CEI. Le "jeu de commandes de base STEP5" peut
tre converti en code CEI en appuyant sur un bouton, bien que STEP5 prsente des diffrences de
principe considrables.
Le jeu de commandes de base, convertible d'aprs la norme CEI 61131-3, comprend toutes les
commandes d'un systme de programmation STEP5 convertibles en langage LD ou FBD, ainsi que
toutes les commandes qui sont autorises dans un PB-STEP5 (bloc de programme). De plus, parmi
les commandes STEP5 qui sont autorises uniquement en langage IL ou dans des FB (blocs
fonctionnels), celles qui sont rellement disponibles sur tous les systmes S5, comme par exemple
les sauts absolus ou conditionnels, les commandes de dcalage, etc., sont gnralement convertibles
en CEI.
La seule exception ou restriction au niveau de la conversion concerne la remise zro des
temporisateurs, qui est possible en STEP5 mais pas avec la norme CEI 61131-3.
Commandes convertibles, dans le dtail:
U, UN, O, ON, S, R, = avec les oprandes binaires suivants: E (entres), A (sorties), M
(mmentos), S (mmentos S), D (donnes dans des blocs de donnes)
U, UN, O, ON avec les oprandes suivants: T (temporisateurs), Z (compteurs)
S, R avec les oprandes suivants: Z
SU, RU, P, PN avec les oprandes suivants: E, A, M, D
O, O(, U(, )
10-86
CoDeSys V2.3
10 - APPENDICE
10-87
CoDeSys V2.3
10 - APPENDICE
10-89
modification ces blocs lors du transfert vers un automate programmable qui n'est pas fabriqu par
Siemens.
A la fin de l'importation vous devez rechercher les erreurs signales par des messages et effectuer
aux endroits correspondants les corrections, les ajouts ou les remplacements ncessaires. Ces
endroits sont signals par un commentaire, qui commence par:
(*ATTENTION! Code STEP5 non convertible affich en commentaire:*)
Le commentaire contient ensuite le code non convertible.
Pour terminer, il faut prendre en considration les adresses. Lors de l'importation, des adresses
Siemens d'origine sont gnres. En voici la structure:
Bits: Byte-Offset.Bit-Numro
Autres que des bits:Byte-Offset
De plus, les adresses WORD qui se suivent immdiatement se recoupent (car les nombres dans les
adresses sont des bytes-offsets). C'est pourquoi un byte de %MW32 et un byte de %MW33 se
recoupent, en l'occurrence %MB33 (cela n'est vrai que pour un automate programmable Siemens).
Sur votre automate programmable, %MW32 et %MW33 sont compltement indpendant l'un de
l'autre.
Votre automate programmable possde ventuellement plusieurs niveaux de hirarchie, les lments
autres que des bits ayant par exemple plusieurs niveaux d'embotement ("%MW10.0.0" sous forme de
WORD). Vous pouvez, soit complter les adresses de faon les rendre compatibles avec votre
automate programmable, soit renoncer compltement aux adresses. Dans ce cas, vous devez tre
trs prudent !! Dans les programmes Siemens d'origine, on rencontre souvent, dans la mme zone de
mmoire, tantt un accs WORD et tantt un accs binaire ou byte. Lors de l'importation dans
CoDeSys, ces accs sont compils correctement seulement dans le cas de blocs de donnes. Dans
ce cas, CoDeSys cre des variables WORD pour les mots l'intrieur les DB. L'accs WORD au mot
X l'intrieur du DB Y s'effectue alors sans problme. Les accs au byte gauche ou droit du mot X,
les accs mot double ou les accs binaires sont compils sous forme d'expressions complexes. Cela
n'est pas possible dans le cas de mmentos, d'entres ou de sorties, tant donn qu'on ne peut pas
tabler sur un type d'accs standard (p.ex. accs WORD). Par consquent, si le programme travaille
tantt avec %MX33.3, tantt avec %MB33, %MW32 ou %MD30, alors vous devez convertir cela par
vous mme, non sans peine. Sinon, le programme CEI gnr par CoDeSys lors de l'importation
comportera coup sr des erreurs.
Faites sortir une liste des rfrences croises pour l'ensemble des entres, sorties et mmentos, pour
dtecter les accs problmatiques. Ecartez les accs qui interfrent.
10-90
CoDeSys V2.3
10 - APPENDICE
Aprs un changement, vous pouvez revenir aux valeurs de la configuration par dfaut par le biais du
bouton Par dfaut.
La description du contenu possible des catgories de botes de dialogue Rpartition de la mmoire,
Gnralits et Fonctions rseau valent pour toutes les plates-formes. Les points de la catgorie du
dialogue Plate-forme cible varient quant eux en fonction des diffrents systmes cibles.
Les plates-formes suivantes sont actuellement supportes :
Intel 386 et compatibles
Motorola 68k
Infineon C16x
PowerPC
Intel StrongARM
MIPS III ISA
Hitachi SH
8051
CoDeSys V2.3
10-91
Point du dialogue
Signification
Plate-forme
Options de processeur
virgule flottante
Les commandes FPU sont gnres sur la plate-forme x86 pour les
oprations virgule flottante
Oprations optimes avec Oprations amliores avec des constantes (A = A + 1, A < 500 etc.);
Code plus rapide et plus court (particulirement sur 386/486); les
des constantes
constantes apparaissent en gris dans le Flowcontrol
Oprations de chargement Les oprations de chargement sont omises en cas daccs multiple
une variable / une constante ; Code plus rapide et plus court
optimes
10-92
CoDeSys V2.3
10 - APPENDICE
10.27.2
Point du dialogue
Signification
Plate-forme
CPU :
Processeur virgule
flottante
Utiliser dcalages de
sauts 16 bits
Registre rserv 1 :
Registre rserv 2 :
Mode de sortie
CoDeSys V2.3
10-93
10.27.3
10-94
Point du dialogue
Signification
Plate-forme
Code / Compilateur :
Code / Donnes
Type
de
mise
en
mmoire
Valeurs valides : Huge, Far, Near
Code / Fonctions
Type
de
mise
en
Valeurs valides : Huge, Near
Init. fonctions
Optimer
Sortie HEX
Sortie BIN
Sortie MAP
Sortie LST
Bibliothques /
Code
Tableaux
Donnes
Longueur des donn
Bloc Fonctionels
pour
mmoire
pour
les
donnes
le
code
CoDeSys V2.3
10 - APPENDICE
Rfrences
DPPs / DPP0..DPP2
Dans les instances
10.27.4
Point du dialogue
Signification
Plate-forme
Processeur virgule
flottante
activ : Les commandes FPU sont gnres pour les oprations virgule
flottante
Premier registre de
paramtres (Integer)
Dernier registre de
paramtres (Integer)
Premier registre de
paramtre (virgule
flottante)
Dernier registre de
paramtre (virgule
flottante)
CoDeSys V2.3
10-95
10.27.5
10-96
Point du dialogue
Signification
Plate-forme
Premier registre de
paramtres (Integer)
Dernier registre de
paramtre (Integer)
CoDeSys V2.3
10 - APPENDICE
10.27.6
Point du dialogue
Signification
Plate-forme
Premier registre de
paramtre (Entier)
Dernier registre de
paramtre (Entier)
Processeur virgule
flottante
activ : Les commandes FPU sont gnres pour les oprations virgule
flottante
Premier registre de
paramtres (flottant)
Dernier registre de
paramtres (flottant)
CoDeSys V2.3
10-97
10.27.7
10-98
Point du dialogue
Signification
Plate-forme
CoDeSys V2.3
10 - APPENDICE
Point du dialogue
Signification
Code (Base)
Global (Base)
Mmoire (Base)
Entre (Base)
Sortie (Base)
Maintenir (Base)
Zone (Code)
Numro du domaine de
Valeurs valides : 1, 2, 3, 4, 5, 6
CoDeSys V2.3
la
zone
des
donnes
(Code)
10-99
10-100
Zone (Global)
Zone (Mmoire)
Zone (Entre)
Zone (Sortie)
Zone (Maintenir)
Base (Code)
Base (Global)
Base (Mmoire)
Base (Entre)
Base (Sortie)
Base (Maintenir)
Taille (Code)
Taille (Mmoire)
Taille (Entre)
Taille (Sortie)
Taille (Maintenir)
Propre sgment de
maintenance:
activ : les donnes rmanentes sont gres dans leur propre segment
Taille du mmoire de
donnes entier:
Nombre max. de
segments de donnes
globales:
CoDeSys V2.3
10 - APPENDICE
Point du dialogue
Signification
Configurable
Supporter configuration
CANopen
Supporter configuration
Profibus
Tlchargement sous
forme de fichier
Multi-tches premptives
Pas de vrification
dadresse
Online Change
activ : CoDeSys cre une tche qui, dans le monitoring, met jour et
visualise les entres et sorties, mme lorsquelles ne sont actuellement
pas utilises.
Initialiser zro
Envoyer fichier de
CoDeSys V2.3
10-101
Catgorie: Gnral
symboles
Configuration des
symboles du fichier INI
PLC-Browser
Histogramme
VAR_IN_OUT comme
rfrence
( partir de SP4 de V2.2)
10-102
Softmotion
Continuer de forcer
Enregistrer
Forage indpendant du
cycle
CoDeSys V2.3
10 - APPENDICE
Point du dialogue
Signification
Supporter variables du
rseau
Noms d'interfaces rseau Liste des types de rseaux supports (p.ex. CAN; UDP;)
supports
Zones d'index pour les
paramtres
Zone de sub-index
Zone d'index pouvant tre utilise pour les sub-index au sein des zones
d'index ci-dessus pour paramtres ou variables
CoDeSys V2.3
Manager des
10-103
Catgorie: Visualisation
Point du dialogue
Signification
Largeur d'affichage en
pixel
Hauteur d'affichage en
pixel
Une limitation optique selon les valeurs indiques ici sera affiche lors
de la cration d'une visualisation dans la fentre d'diteur, afin par
exemple de marquer la surface de l'cran sur lequel la visualisation
devra ultrieurement tre affiche.
Traitement d'alarme dans La tche de Traitement de l'alarme est automatiquement cre dans la
Configuration des tches. Elle excute de manire implicite un code ST
l'automate
qui value l'tat de chaque alarme et accomplit le cas chant les
actions s'y rapportant. Pour ce code ST, on a besoin des fonctions
d'aide de la bibliothque SysLibAlarmTrend.lib, et cette dernire est
automatiquement
charge.
(En
outre,
les
bibliothques
SysLibSockets.lib, SysLibMem.lib, SysLibTime.lib, SysLibFile.lib dont
on a galement et implicitement besoin sont charges. Celles-ci doivent
tre supportes par le systme cible !)
Si cette option n'est pas active alors que la Visualisation Web et/ou la
Visualisation Cible le sont, un avertissement sera donn lors de
l'ouverture de session.
Remarque: 'Traitement d'alarme dans l'automate' peut galement tre
utilise lorsque aucune Visualisation Web ou Visualisation Cible n'est
active (voir plus bas). Un code ST est galement cr de manire
implicite, lequel reprend l'valuation de l'alarme.
Enregistrement des
donnes de tendance
dans l'automate
10-104
10 - APPENDICE
Traitement de requte
simplifi
Utiliser
VISU_INPUT_TASK
(ne peut tre active que si Visualisation cible l'est) Si cette option est
active, deux tches sont automatiquement cres pour la Visualisation
cible (VISU_INPUT_TASK, VISU_TASK); sinon, seul VISU_TASK sera
cr, comprenant galement les tches de VISU_INPUT_TASK
Dsactiver gnration
des taches
(ne peut tre activ que lorsque la Visualisation sur la cible est active,
voir ci-dessus
Si loption est active, alors les tches VISU_INPUT_TASK et
VISU_TASK (voir ci-dessus au point 'Utiliser VISU_INPUT_TASK') ne
sont pas cres. De cette faon, les deux modules mentionns cidessus,
ou
respectivement
seulement
le
module
MAINTARGETVISU_PAINT_CODE
si
loption
Utiliser
VISU_INPUT_TASK nest pas active, peuvent tre appels
CoDeSys V2.3
10-105
Catgorie: Visualisation
10-106
CoDeSys V2.3
10 - APPENDICE
Appendice I
Utilisation du clavier
<F6>
<Alt>+<F6>
Menu contextuel
<Maj>+<F10>
<Ctrl>+<F6>
<Ctrl>+<Maj>+<F6>
<Ctrl>+<Entre>
<Entre>
<Entre>
<Entre>
<Touches directionnelles>
<Tabulation>
CoDeSys V2.3
10-107
Combinaisons de touches
<F1>
Commandes usuelles
'Fichier' 'Enregistrer'
<Ctrl>+<S>
'Fichier' 'Imprimer'
<Ctrl>+<P>
'Fichier' 'Quitter'
<Alt>+<F4>
<Suppr>
<Inser>
<Barre d'espacement>
<Entre>
'Editer' 'Annuler'
<Ctrl>+<Z>
'Editer' 'Refaire'
<Ctrl>+<Y>
'Editer' 'Couper'
<Ctrl>+<X> ou <Maj>+<Suppr>
'Editer' 'Copier'
<Ctrl>+<C>
'Editer' 'Coller'
<Ctrl>+<V>
'Editer' 'Supprimer'
<Suppr>
<F3>
<F2>
<F4>
<Maj>+<F4>
<F5>
<F9>
<F10>
<F8>
<Ctrl>+<F5>
<Ctrl>+<F7>
<F7>
<Maj>+<F7>
'Fentre' 'Messages'
<Maj>+<Echap>
10-108
<Maj>+<T>
'Insrer' - 'Affectation'
<Ctrl>+<A>
'Insrer' 'Saut'
<Ctrl>+<L>
'Insrer' 'Return'
<Ctrl>+<R>
'Insrer' 'Oprateur'
<Ctrl>+<O>
'Insrer' 'Fonction'
<Ctrl>+<F>
CoDeSys V2.3
10 - APPENDICE
<Ctrl>+<B>
'Insrer' 'Entre'
<Ctrl>+<U>
'Extras' 'Ngation'
<Ctrl>+<N>
'Extras' 'Zoom'
<Alt>+<Entre>
<Maj>+<T>
'Insrer' 'Contact'
<Ctrl>+<O>
<Ctrl>+<R>
<Ctrl>+<B>
'Insrer' 'Bobinage'
<Ctrl>+<L>
<Ctrl>+<U>
'Extras' 'Ngation'
<Ctrl>+<N>
<Ctrl>+<T>
<Ctrl>+<E>
<Ctrl>+<A>
<Ctrl>+<L>
<Ctrl>+<U>
<Alt>+<Entre>
<Entre>
<Entre>
<Barre d'espacement>
<F6>
<Ctrl>+<Suppr>, <Maj>+<Suppr>
<Suppr>
CoDeSys V2.3
10-109
Combinaisons de touches
10-110
CoDeSys V2.3
10 - APPENDICE
10.33.1
Avertissements
1100
"Service est inconnu '<nom>' dans la bibliothque."
Vous utilisez une bibliothque externe. Vrifiez si toutes les fonctions donnes dans le fichier en format
hexadcimal (.hex) sont galement dfinies dans le fichier .lib.
1101
"Symbole pas rsolu '<Symbol>'."
Le gnrateur de codes attend un module du nom <Symbol>. Celui-ci nest pas dfini dans le projet. Veuillez
dfinir une fonction/un programme avec le nom adquat.
1102
"Interface invalide pour symbole '<Symbol>'."
Le gnrateur de codes attend une fonction du nom <Symbol> avec prcisment une entre scalaire ou un
programme du nom <Symbol> sans entre ou sortie.
1200
"Tche '<nom>', appel '<nom>': Les variables d'accs dans la liste de paramtres n'ont pas t mises
jour."
Les variables qui ne sont utilises que lors dun seul appel de bloc fonctionnel dans la configuration des tches
ne sont pas reprises dans la liste des rfrences croises.
1300
"Le fichier '<nom>' n'a pas t trouv"
Le fichier auquel renvoie lobjet de variable globale nexiste pas. Vrifiez le chemin daccs.
1301
"La bibliothque d'analyse n'a pas t trouve! Le code pour l'analyse n'est pas gnr."
Vous utilisez la fonction danalyse, mais la bibliothque analyzation.lib nest pas disponible.
Insrez cette bibliothque dans le gestionnaire des bibliothques.
1400
"La directive du compilateur '<nom>' est ignore!"
Cette pragma nest pas supporte par le compilateur. Reportez-vous au mot-cl 'Pragma' pour les directives
supportes.
1401
"La structure '<nom>' ne contient pas d'lments."
La structure ne contient aucun lment, mais les variables de ce type occupent un octet dans la mmoire.
1410
"'RETAIN' et 'PERSISTENT' n'ont pas d'effet dans les fonctions"
Les variables dclares rmanentes au sein dune fonction ne sont pas sauvegardes dans la zone mmoire
rmanente, mais sont traites comme des variables locales normales.
CoDeSys V2.3
10-111
Combinaisons de touches
1411
"Variable '<nom>': La variable '<nom>' dans la configurations des variables n'est pas actualis dans
aucune tche"
Linstance suprieure de la variable nest rfrence par un appel dans aucune tche et nest de ce fait pas
copie dans limage du processus.
Exemple:
Configuration des variables:
VAR_CONFIG
plc_prg.aprg.ainst.in AT %IB0 : INT;
END_VAR
plc_prg:
index := INDEXOF(aprg);
Le programme aprg est bien rfrenc mais pas appel. Ds lors, plc_prg.aprg.ainst.in ne contiendra jamais la
valeur relle de %IB0.
1412
"Token '<nom>' inattendu dans pragma {nom du pragma}"
Vous utilisez un nom de programme incorrect ou un pragma qui nest pas applicable cet endroit. Pour une
correction, appelez au besoin laide en ligne et rfrez-vous aux descriptions figurant au mot-cl "Pragma" ou
consultez le manuel CoDeSys.
1413
"'<nom>' n'est pas de cl valide pour liste '<nom>' . La cl sera ignoreVous indiquez dans le pragma une
liste des paramtres inexistante. Vrifiez le nom de la liste ou consultez les listes disponibles dans le
gestionnaire des paramtres.
1414
"Trop de dfinitions de composants dans pragme '<nom du pragma>'."
Le pragma contient plus de dfinitions (entre crochets) que dans larray ou le bloc fonctionnel concern ou plus
de dfinitions que dlments contenus dans la structure.
1500
"Cette expression ne contient pas dassignement. Aucun code nest gnr."
Le rsultat de cette expression nest pas utilis. Ainsi, aucun code nest gnr pour la totalit de lexpression.
1501
"La constrante de chane est passe comme 'VAR_IN_OUT': '<nom>' ne doit pas tre cras!"
On ne peut crire la constante dans le corps du module puisque aucune vrification de taille ny a lieu.
1502
"La variable '<nom>' porte le mme nom qu'un module. Le module ne sera pas appel!"
Vous utilisez une variable qui porte le mme nom quun module.
Exemple :
PROGRAM a
...
VAR_GLOBAL
a: INT;
END_VAR
...
a; (* Le module a nest pas appel, mais la variable a est charge. *)
10-112
CoDeSys V2.3
10 - APPENDICE
1503
"Le module '<nom>' n'a pas de sorties. Le rsultat est mis 'TRUE'."
Vous continuez de lier le pin de sortie dun module sans sorties en langage FBD ou LD. La liaison se voit
automatiquement attribuer la valeur TRUE.
1504
"L'instruction ne sera probablement pas excute cause de l'expression logique."
Toutes les branches de lexpression logique ne sont pas ventuellement excutes.
Exemple :
IF a AND funct(TRUE) THEN ....
Si a a la valeur FALSE, funct ne sera plus appel.
1505
"Effet latral dans '<nom>'! Probablement, la branche n'est pas calcule!"
La premire entre du module a la valeur FALSE, il se peut ds lors que la branche latrale dbouchant la
seconde entre ne soit plus value.
1506
"La variable '<nom>' a le mme nom qu'une action locale. L'action ne sera pas appele!"
Renommez la variable ou laction de faon ce que le mme nom ne soit pas utilis plusieurs fois.
1507
"La variable '<nom>' a le mme nom qu'une fonction locale. L'instance ne sera pas appele!"
En ST une instance est utilise, que le mme nom comme une fonction. La fonction sera appele ! Donnez
noms diffrents!
1600
"Pas d'vidence quel bloc de donnes vous voulez ouvrir (le code gnr contient ventuellement des
erreurs)."
Le programme original Siemens ne permet pas de dterminer quel module de donnes est ouvert.
1700
"L'entre n'est pas lie."
Vous utilisez une bote dentre en CFC qui na pas de liens conscutifs. Aucun code nest alors cr.
1750
"Etape '<nom>': Le temps minime est plus grand que le temps maximum."
Ouvrez la bote de dialogue Attributs dtape de ltape indique et corrigez les donnes de temps.
1751
"Attention l'utilisation de la variable '<nom>'. Cette variable est utilise par code gnr implicitement et
influence le droulement du Diagramme Fonctionnel en Squence."
Renommez la variable par mesure de prcaution, de manire ce quelle contienne un identificateur univoque.
1800
"'<nom>' (Elemente #<Nombre elemente>): Expression d'espion invalide '<nom>'"
Llment de visualisation contient une expression qui ne peut tre espionne. Vrifiez le nom de variable et le
remplacement despaces rservs.
1801
"Entre sur l'expression '<nom>' pas possible."
Dans la configuration de lobjet de visualisation, vous utilisez une expression compose comme cible dune
action dentre. Remplacez cette expression par une variable individuelle.
1802
"<object de visualisation>(nombre dlment): Bitmap '<nom>' pas trouv"
Assurez-vous que le fichier image bitmap externe correspondant au chemin daccs dfini dans la visualisation
existe.
CoDeSys V2.3
10-113
Combinaisons de touches
1803
"'<nom>'('<nombre>') : L'action ""Imprimer"" n'est pas supporte pour la visualisation target et web."
Une alarme configure dans la visualisation est lie laction Imprimer. Cet tat de fait est ignor dans la
visualisation Web ou Cible.
1804
"'<nom>'('<nombre>'): Le font '<nom>' n'est pas support par le systme cible."
Vous utilisez une police de caractre qui nest pas supporte par le systme cible. Les jeux de caractres
actuellement supports par le systme cible sont affichs dans la configuration du systme cible dans la
catgorie Visualisation.
1806
"'<nom>'('<nombre>'): Les paramtres du systme cible pour le traitement de l'alarme dans la'automate
doivent tre actives."
Vous utilisez dans la visualisation un lment de visualisation dalarmes. Lautomate nen tient toutefois pas
compte, tant donn que loption 'Traitement dalarme dans lautomate nest pas active dans la configuration
du systme cible, catgorie Visualisation.
1807
"'<nom>'('<nombre>'): Pas de fentre dinformation pour lalarme dans la visualisation cible."
Notez que laction "Fentre dinformation" nest pas supporte dans la visualisation Cible !
1850
"La variable d'entre sur %IB<nombre> est utilise dans la tche <nom><nom>, mais actualise
dans une autre tche."
Vrifiez quelles tches utilisent les variables indiques et si la programmation actuelle noccasionne pas des
effets indsirables. La mise jour de la valeur de variable est habituellement effectue par la tche de plus
haute priorit.
1851
"La variable de sortie sur %IB<nombre> est utilise dans la tche <nom><nom>, mais actualise
dans une autre tche."
Vrifiez quelles tches utilisent les variables indiques et si la programmation actuelle noccasionne pas des
effets indsirables. La mise jour de la valeur de variable est habituellement effectue par la tche de plus
haute priorit.
1852
"Le Matre CanOpen n'est ventuellement pas appel cycliquement dans la tche d'vnement <nom>!
Veuillez mettre le paramtre de module 'mise jour de la tche'!"
Momentanment, le Matre CanOpen est appel par la tche dvnement susmentionne. Si vous souhaitez
effectuer un appel cyclique, dfinissez une tche correspondante via le paramtre UpdateTask dans la
configuration de l'automate programmable, dans la bote de dialogue 'Paramtres de module'.
1853
"n PDO (Index: <nombre>) n'est ventuellement pas actualis cycliquement dans la tche d'vnement
<nom>."
Momentanment, le PDO susmentionn est appel par la tche dvnement susmentionne. Si vous
souhaitez cependant effectuer un appel cyclique, attribuez au PDO une tche correspondante en dplaant des
rfrences ES dans cette tche.
1900
"L'unit de programmation '<nom>' (routine principale) n'est pas disponible dans la bibliothque."
Le module dentre (p.ex.PLC_PRG) ne sera pas disponible lors de lutilisation de la bibliothque.
1901
"Les variables d'accs et de configuration ne sont pas enregistres dans la bibliothque!"
Les variables daccs et la configuration de variables ne seront pas sauvegardes dans la bibliothque.
10-114
CoDeSys V2.3
10 - APPENDICE
1902
"'<nom>': Bibliothque n'est pas appropri pour le type de machine ou errone!"
Le fichier .obj de la bibliothque a t cr pour un autre type de machine.
1903
"<nom>: n'est pas de bibliothque valide."
Le fichier ne correspond pas au format requis de fichier du systme cible.
1904
"La constante '<nom>' cache une constante du mme nom dans la bibliothque."
Vous avez dclar dans le projet une constante qui porte le mme nom quune constante contenue dans une
bibliothque associe. La variable de bibliothque va tre crase !
1970
"Manager de paramtres: Liste '<nom>', colonne '<nom>', valeur '<nom>' ne pouvait pas tre importe!"
Vrifiez si le fichier dimportation *.prm contient des saisies qui ne correspondent pas la configuration actuelle
(valeurs standard ou fichier de description XML) du gestionnaire des paramtres.
1980
"Variables de rseau globales nom>, <nom>: Lire et crire en mme temps peut mener une perte de
donnes!"
Dans la configuration des listes de variables de rseau (slectionnez la liste dans longlet Ressources et ouvrez
la bote de dialogue Liste de variables globales par le biais de la commande 'Caractristiques de lobjet dans le
menu contextuel), vous avez activ simultanment les options 'Lire' et 'Ecrire'. Notez que ceci peut
ventuellement causer des pertes de donnes lors de la communication.
1990
"Pas de 'VAR_CONFIG' pour '<nom>' "
Aucune configuration dadresse nest disponible pour cette variable dans VAR_CONFIG. Ouvrez dans longlet
'Ressources' la fentre VAR_CONFIG et insrez-la (commande Insrer 'Tous les chemins dinstance').
2500
"Tache '<nom>' : non temps de cycle dfine pour la tache cyclique."
Une tche cyclique pour laquelle aucun temps de cycle na t dfini a t cre dans la configuration des
tches. Entrez un intervalle de temps correspondant dans la bote de dialogue Attributs des tches, dans
Intervalle .
10.33.2
Erreurs
3100
"Programme trop grand. Volume max: '<Nombre>' Byte (<Nombre>K)"
La taille maximale du programme est dpasse. Veuillez rduire le programme.
3101
"Volume de donnes trop grand. Volume max: '<Nombre>' Byte (<Nombre>K)"
Lespace mmoire est compltement utilis. Rduisez les besoins en fichiers de votre application.
3110
"Erreur dans le fichier de la bibliothque '<nom>'."
Le fichier .hex ne correspond pas au format INTEL Hex.
3111
"Bibliotheque '<nom>' trop grand. Volume max: 64K"
Le fichier .hex dpasse la taille maximale admissible.
CoDeSys V2.3
10-115
Combinaisons de touches
3112
"Instruction ne peut pas dplacer dans la bibliothque."
Le fichier .hex contient une instruction non relocalisable. Le code de bibliothque ne peut tre li.
3114
"La bibliothque utilise plus qu'un sgment."
Les tableaux et le code compris dans le fichier .hex utilisent plus quun segment.
3113
"Le code de la bibliothque crase les tableaux de fonctions."
Les domaines du code et des tableaux dinformation se recoupent.
3115
"La constante ne peut pas tre assigne VAR_IN_OUT. Types de donnes incompatibles."
Le format interne de pointeur pour les constantes de chanes de caractres ne peut tre converti au format
interne de VAR_IN_OUT, car les donnes sont dfinies comme "near" et les constantes de chanes comme
"huge" ou "far". Modifiez si possible cette configuration du systme cible.
3121
"L'unit de programmation est trop grand."
Un module ne peut dpasser la taille de 64K.
3122
"Initialisation trop grande. Dim. max.: 64K"
Le code dinitialisation pour un bloc fonctionnel ou une structure ne peut dpasser la taille de 64K.
3120
"Le sgment de code actuel excde 64K."
Le code systme gnr linstant est plus grand que 64K. Il se peut quil y ait trop de code dinitialisation
requis.
3123
"Sgment de donnes trop grand: Sgment '<nom>' a '<nombre>' octets (max. '<nom>' octets)"
Veuillez vous adresser au fabricant du matriel.
3124
Constante String trop grande: <Nombre> caractres (au maximum 253 caractres)
La constante correspondante doit au moins tre rduite 253 caractres.
3130
"Stack d'application trop petit: <Anzahl> 'DWORD' ncessaire, <Anzahl> 'DWORD' disponible."
Le niveau dimbrication de lappel de module est trop grand. Augmentez la taille de pile dans la configuration du
systme cible ou compilez le programme sans utiliser loption de compilation de projet 'Dbogage'.
3131
"Stack d'utilisateur trop petit: <Nombre> 'DWORD' ncessaire, <Nombre> 'DWORD' disponible."
Veuillez vous adresser au fabricant de lautomate.
3132
"Stack du systeme trop petit: <Nombre> 'DWORD' ncessaire, <Nombre> 'DWORD' disponible."
Veuillez vous adresser au fabricant de lautomate.
3150
"Paramtre '<nom>' de la fonction '<nom>': Le rsultat d'une fonction CEI ne peut pas tre pass
comme paramtre de chane d'une fonction C."
Utilisez une variable intermdiaire qui recevra le rsultat de la fonction CEI.
10-116
CoDeSys V2.3
10 - APPENDICE
3161
"La bibliothque '<nom>' ne contient pas de sgment de code."
Un fichier .obj de bibliothque doit contenir au moins une fonction C. Insrez dans le fichier .obj une fonction
fictive qui nest pas dfinie dans le fichier .lib.
3160
"Ne peut pas ouvrir '<nom>'."
Le fichier '<Nom>' requis pour une bibliothque ne peut tre trouv.
3163
"Type de rfrence inconnu dans la bibliothque '<nom>' (Symbol '<nom>' , Class '<nom>' , Type
'<nom>' )"
Le fichier .obj contient un type de rfrence que le gnrateur de code ne peut rsoudre. Vrifiez la
configuration du compilateur C.
3200
"<nom>: Expression logique trop complexe."
Lespace mmoire temporaire du systme cible nest pas suffisant pour la taille de lexpression. Divisez
lexpression en plusieurs expressions partielles avec attribution des variables intermdiaires.
3162
"Ne peut pas rsoudre la rfrence dans la bibliothque (Symbole '<nom>' , Class '<nom>' , Type
'<nom>' )"
Le fichier .obj contient une rfrence non rsoluble un autre symbole. Vrifiez la configuration du compilateur
C.
3201
"<nom>: Un rseau ne doit produire plus que 512 bytes de code"
Les sauts internes ne peuvent tre rsolus. Activez loption "Utiliser des dcalages de saut 16 bit" dans la
configuration cible 68K.
3202
"Dbordement de la pile en cas d'appels de fonction cordon/zone/structure trop complexes"
Vous utilisez un appel de fonction imbriqu de la forme CONCAT(x, f(i)). Ceci peut provoquer une perte de
donnes. Divisez lappel en deux expressions.
3203
"Seulement deux variables de systme par affectation"
Divisez laffectation en plusieurs parties.
3204
"Un saut excde 32k octets."
La distance dun saut ne peut tre suprieure 32767 octets.
3205
"Erreur interne: Trop de chanes constantes"
Un maximum de 3000 constantes de chanes de caractres peut tre utilis dans un module.
3206
"Le bloc fonctionnel est trop grand."
Un bloc fonctionnel se compose dun maximum de 32767 octets de code.
3207
"Optimation du tableau."
Loptimisation de laccs au tableau a chou car une action a t appele au sein du calcul de lindex.
CoDeSys V2.3
10-117
Combinaisons de touches
3208
"La conversion n'est pas encore implmente."
Vous utilisez une fonction de conversion qui nest pas implmente pour le gnrateur de code actuel.
3209
"Oprateur pas implment."
Vous utilisez un oprateur qui nest pas implment pour le gnrateur de code actuel pour ce type de
donnes : MIN(string1,string2).
3210
"Fonction '<nom>' pas trouve."
Vous appelez une fonction qui nest pas disponible au sein du projet.
3211
"Usage maximum de la variable de chane excd."
Une variable de type STRING ne peut tre utilise que dix fois dans une expression et dans le cas dun
gnrateur de code 68K.
3250
"Real n'est pas accept sur les automates 8 bits."
Le systme cible nest pas support pour linstant.
3251
"Types 'date du jour' ne sont pas accepts pour les automates 8 bits."
Le systme cible nest pas support pour linstant.
3252
"Taille du stack excde <number> Bytes"
Le systme cible nest pas support pour linstant.
3253
"Ne pouvait pas trouver le fichier hex: '<nom>' "
Le systme cible nest pas support pour linstant.
3254
"L'appel d'une fonction de bibliothque externe ne pouvait tre rsolu."
Le systme cible nest pas support pour linstant.
3255
"Pointeurs ne sont pas supporte sur ordinateurs 8 Bits."
Pour pouvoir mettre ce programme en marche sur un ordinateur 8 bits, vous devez contourner lutilisation de
pointeurs.
3260
Fonction <nom> a trop d'arguments, agrandissez le stack des arguments dans les paramtres
de cible."
Dans la mesure du possible, modifiez la taille de la pile dans la bote de dialogue Plate-forme de la cible de la
configuration du systme cible (valeur par dfaut : 40), voir chap. 10.27.4. Si le rglage nest pas modifiable
dans CoDeSys, veuillez contacter votre fabricant dautomate programmable.
3400
"Erreur l'importation des variables d'accs"
Le fichier .exp contient une rubrique incorrecte de variables daccs.
3401
"Erreur l'importation de la configuration des variables"
Le fichier .exp contient une rubrique incorrecte de variables de configuration.
10-118
CoDeSys V2.3
10 - APPENDICE
3402
"Erreur l'importation des variables globales"
Le fichier .exp contient une rubrique incorrecte de variables globales.
3403
"<nom> ne pouvait tre import"
La rubrique relative lobjet donn dans le fichier .exp est incorrecte.
3404
"Erreur l'importation de la configuration des tches"
La rubrique relative la configuration de tche dans le fichier .exp est incorrecte.
3405
"Erreur l'importation de la configuration de l'automate"
La rubrique relative la configuration de lautomate dans le fichier .exp est incorrecte.
3406
"Deux pas nomms '<nom>'! Le deuxime pas n'a pas t import"
La rubrique du module SFC dans le fichier .exp comprend deux tapes portant le mme nom. Renommez une
de ces deux tapes dans le fichier dexportation.
3407
"Pas d'ntre '<nom>' pas trouv"
Ltape nomme nexiste pas dans le fichier .exp.
3408
"Pas suivant '<nom>' pas trouv"
Ltape nomme nexiste pas dans le fichier .exp.
3409
"Pas de transition suivante pour le pas '<nom>' "
La transition requise par ltape indique comme tape dentre, nexiste pas dans le fichier .exp.
3410
"Pas de pas suivant pour la transition '<nom>' "
La transition indique, requise par ltape, nexiste pas dans le fichier .exp.
3411
"Le pas '<nom>' n'est pas accessible du pas init"
Le lien entre ltape indique et ltape dinitialisation nexiste pas dans le fichier .exp.
3450
"PDO <nom>: <nom du module> <nom du dialogue configuration>-<nom PDO> COB-Id manque!"
Cliquez sur le bouton Caractristiques dans la bote de dialogue de configuration <nom de la bote de dialogue
de configuration> du module <nom du module>, et entrez une COB ID pour le PDO <nom de PDO>.
3451
"Erreur en chargeant: Le fichier EDS '<nom>' n'a pas t trouv, mais est utilis dans la configuration!"
Le fichier dappareil ncessit par la configuration CAN nest probablement pas dans le rpertoire correct.
Vrifiez ce point par le biais de lentre de rpertoire pour les fichiers de configuration dans 'Projet' 'Options'
'Rpertoires'.
3452
"Le module '<nom>' ne pouvait tre cre!"
Le fichier dappareil pour le module <Nom> ne correspond pas la configuration prsente. Il a t
probablement modifi depuis la cration de la configuration ou le fichier est corrompu.
CoDeSys V2.3
10-119
Combinaisons de touches
3453
"Le canal '<nom>' ne pouvait tre cre!"
Le fichier dappareil pour le canal <Nom> ne correspond pas la configuration prsente. Il a t probablement
modifi depuis la cration de la configuration ou le fichier est corrompu.
3454
"L'adresse '<adresse>' renvoie une plage de mmoire occupe!"
Vous avez activ loption 'Vrifier superposition dadresses' dans la bote de dialogue de la configuration de
lautomate, et une superposition a t constate. Veuillez noter que la base de la vrification est la taille
rsultant du type de donnes et non la valeur de 'size' dans le fichier de configuration.
3455
"Erreur en chargeant: Le fichier GSD '<nom>' n'a pas t trouv, mais est utilis dans la configuration!"
Le fichier dappareil ncessit par la configuration Profibus nest probablement pas dans le rpertoire correct.
Reportez-vous lentre pour les fichiers de configuration dans 'Projet' 'Options' 'Rpertoires'.
3456
"L'appareil Profibus '<nom>' n'a pas pu tre cre!"
Le fichier d'appareil pour l'appareil <nom> ne correspond pas la configuration prsente. Il a t probablement
modifi depuis la cration de la configuration ou le fichier est corrompu.
3457
"Erreur dans la description du module!"
Vrifiez le fichier d'appareil appartenant au module.
3458
"La configuration de l'automate ne pouvait pas tre tablie! Veuillez vrifier les fichiers de
configuration."
Vrifiez si tous les fichiers ncessaires de configuration et d'appareil se trouvent dans le rpertoire des fichiers
de configuration ('Projet' 'Options' /Rpertoires).
3459
"Le dbit en bauds slectionn n'est pas support!"
Modifiez la configuration dans la bote de dialogue des paramtres CAN. Veuillez tenir compte des indications
relatives au taux de baud dans le fichier GSD.
3460
"3S_CanDrv.lib a une fausse version."
Veuillez vous assurer que vous avez intgr la version actuelle de la librairie 3S_CanDrv.lib dans le projet.
3461
"3S_CanOpenMaster.lib a une fausse version."
Veuillez vous assurer que vous avez intgr la version actuelle de la librairie 3S_CanOpenMaster.lib dans le
projet.
3462
"3S_CanOpenDevice.lib a une fausse version."
Veuillez vous assurer que vous avez intgr la version actuelle de la librairie 3S_CanOpenDevice.lib dans le
projet.
3463
"3S_CanOpenManager.lib a une fausse version."
Veuillez vous assurer que vous avez intgr la version actuelle de la librairie 3S_CanOpenManager.lib dans le
projet.
3464
"3S_CanNetVar.lib a une fausse version."
Veuillez vous assurer que vous avez intgr la version actuelle de la librairie 3S_CanNetVar.lib dans le projet.
10-120
CoDeSys V2.3
10 - APPENDICE
3465
"CanDevice: Les sous-indices doivent tre numrots squentiellement!"
Dans les listes de paramtres utilises dans CanDevice, les sous-index des donnes introduites doivent tre
numrots de faon suivie et sans lacunes. Vrifiez la liste concerne dans le gestionnaire des paramtres.
3466
"Variables de rseau CAN: Pas de contrleur CAN trouv dans la configuration de l'automate."
Vous avez configur des variables de rseau pour un rseau CAN (Ressources, Variables globales),
cependant aucun contrleur CAN nest disponible dans la configuration de l'automate programmable.
3468
"CanDevice: Nom de la tche de mise jour n'existe pas dans la configuration des taux"
La tche de mise jour (pour lappel du CanDevice) dfinie dans la configuration de l'automate dans la bote de
dialogue Paramtres de base pour le CANDevice doit tre configure dans la configuration des tches du
projet.
3469
"Le module Matre CanOpen ne peut pas tre appel. Veuillez assigner la tche manuellement."
Attribuez une tche au Matre dans la configuration de l'automate par le biais de laquelle celui-ci doit tre
appel, et utilisez pour ce faire le paramtre de la tche de mise jour dans la bote de dialogue des
paramtres du module.
3470
"Nom invalide dans le paramtre 'mise jour de la tche'."
Ouvrez la bote de dialogue Paramtres du module de la configuration de l'automate CoDeSys pour le Matre
CAN. Vrifiez le nom de la tche indiqu pour le paramtre UpdateTask. La tche indique doit tre disponible
dans le projet. Il suffit ventuellement de slectionner une autre tche, mais il se peut quil faille vrifier
galement les valeurs prescrites par le fichier de priphrique.
3500
"Pas de VAR_CONFIG pour '<nom>' "
Insrez une dclaration dans la liste des variables globales (contenant la 'Configuration de variables') pour la
variable nomme.
3501
"Pas d'adresse dans VAR_CONFIG pour '<nom>' "
Insrez une adresse dans la liste des variables globales (contenant la 'Configuration de variables') pour la
variable nomme.
3502
"Faux type de donnes de '<nom>' dans VAR_CONFIG"
La variable nomme est dclare avec un autre type de donnes dans la liste des variables globales contenant
la configuration des variables que dans le bloc fonctionnel.
3503
"Faux type d'adresse de '<nom>' dans VAR_CONFIG"
La variable nomme est dclare avec un autre type d'adresse dans la liste des variables globales contenant la
configuration des variables que dans le bloc fonctionnel.
3504
" Valeurs initiales pour les variables 'VAR_CONFIG' ne sont pas supportes"
Une variable de la configuration des variables est dclare avec adresse et valeur initiale. Une valeur initiale ne
peut cependant tre dfinie que dans le cas d'une variable d'entre sans attribution dadresse.
3505
"<nom> n'est pas de chemin d'instance valable "
Une variable nexistant pas est indique dans la configuration des variables.
CoDeSys V2.3
10-121
Combinaisons de touches
3506
"Chemin daccs est attendu "
Dans la liste globale des variables pour les variables daccs, il manque le chemin correct daccs pour une
variable :
<Identificateur> : <Chemin daccs> : <Type> <Type daccs>
3507
"nonc de l`adresse n`est pas admis pour 'VAR_ACCESS'"
Dans la liste globale des variables pour les variables daccs, il existe une affectation d'adresse pour une
variable :
Dfinition correcte : <Identificateur> : <Chemin daccs> : <Type> <Type daccs>
3550
"Le nom de tche '<nom>' a t utilis deux fois"
Vous avez dfini deux tches avec le mme nom. Renommez-en une.
3551
"La tche '<nom>' doit contenir au moins un appel de programme "
Insrez un appel de programme ou effacez la tche.
3552
"La variable d'vnement '<nom>' dans la tche '<nom>' n'est pas dfinie. "
Vous avez utilis dans la configuration de la tche nomme une variable vnementielle qui nest pas dclare
globalement dans le projet. Utilisez une autre variable ou dfinissez la variable en question de manire globale.
3553
"La variable d'vnement '<nom>' dans la tche '<nom>' doit tre du type 'BOOL' "
Utilisez une variable de type BOOLene comme variable vnementielle.
3554
"L'entre de tche '<nom>' doit tre un programme ou une instance de bloc fonctionnel globale. "
Vous avez entr une fonction ou un module non dfini dans le champ Appel de programme.
3555
"L'entre de tche '<nom>' contient des paramtres faux. "
Vous avez entr dans le champ Appel de programme des paramtres qui ne correspondent pas la dclaration
du module.
3556
"Les tches ne sont pas acceptes par la cible slectionne."
La configuration de tches prsente dans le projet nest pas possible pour le systme cible actuellement rgl.
Rglez le systme cible correspondant ou modifiez la configuration des tches en consquence.
3557
"Le nombre maximum de tches (<nombre>) a t excd."
Le systme cible rgl actuellement ne permet pas le nombre actuellement prsent dans la configuration des
tches. Rglez le systme cible correspondant ou modifiez la configuration des tches en consquence.
3558
"La priorit de la tche <nom> est hors de la zone valide entre <nombre> et <nombre>"
Le systme cible rgl actuellement ne permet pas la priorit actuellement dfinie pour la tche dans la
configuration des tches. Rglez le systme cible correspondant ou modifiez la configuration des tches en
consquence.
10-122
CoDeSys V2.3
10 - APPENDICE
3559
"Tche <nom>: Tche d'intervalle n'est pas supporte par la cible actuelle"
Le systme cible rgl actuellement ne permet pas les intervalles de tches actuellement prsents dans la
configuration des tches. Rglez le systme cible correspondant ou modifiez la configuration des tches en
consquence.
3560
"Tche <nom>: Les tches rptition automatique ne sont pas supportes par la cible actuelle."
Le systme cible rgl actuellement ne permet pas les tches spontanes actuellement prsentes dans la
configuration des tches. Rglez le systme cible correspondant ou modifiez la configuration des tches en
consquence.
3561
"Tche <nom>: Les tches d'vnement ne sont pas supporte de la cible actuelle."
Le systme cible rgl actuellement ne permet pas les tches vnementielles actuellement prsentes dans la
configuration des tches. Rglez le systme cible correspondant ou modifiez la configuration des tches en
consquence.
3562
"Task <nom>: Les tches d'vnement externes ne sont pas supportes de la cible actuelle."
Le systme cible rgl actuellement ne permet pas les tches dclenches par vnement externe
actuellement dfinies dans la configuration des tches. Rglez le systme cible correspondant ou modifiez la
configuration des tches en consquence.
3563
"L'intervalle de la tche <nom> est hors de la zone valide de <nombre> <nombre>"
Corrigez lintervalle dans la bote de dialogue des caractristiques pour cette tche dans la configuration des
tches.
3564
"L'vnement externe de la tche <nom> n'est pas support du systme cible actuel."
Le systme cible rgl actuellement ne permet pas lvnement externe actuellement dfini pour la tche.
Modifiez la configuration des tches en consquence.
3565
"Le nombre maximum des tches d'vnement de <nombre> a t excd."
Le systme cible rgl actuellement ne permet pas autant de tches vnementielles telles que
momentanment dfinies. Rglez le systme cible correspondant ou modifiez la configuration des tches en
consquence.
3566
"Le nombre maximum de tches d'intervalle de <nombre> a t excd."
Le systme cible rgl actuellement ne permet pas autant de tches dintervalle telles que momentanment
dfinies. Rglez le systme cible correspondant ou modifiez la configuration des tches en consquence.
3567
"Le nombre maximum de tches rptition automatique de <nombre> a t excd."
Le systme cible rgl actuellement ne permet pas autant de tches spontanes telles que momentanment
dfinies. Rglez le systme cible correspondant ou modifiez la configuration des tches en consquence.
3568
"Le nombre maximum de tches d'vnement externes de <nombre> a t excd."
Le systme cible rgl actuellement ne permet pas autant de tches vnementielles externes telles que
momentanment dfinies. Rglez le systme cible correspondant ou modifiez la configuration des tches en
consquence.
CoDeSys V2.3
10-123
Combinaisons de touches
3569
"Le module <nom> n'a pas t dfini pour l'vnement <nom>"
Le module appeler de l'vnement systme dfini dans la configuration des tches nest pas disponible dans
le projet. Modifiez la configuration des tches en consquence ou assurez-vous que le module appeler soit
bien disponible dans le projet sous ce nom.
3570
"Le tches <nom> et '<nom>"" ont la mme priorit <nombre>."
Modifiez la configuration des tches de faon ce que la mme priorit ne soit pas accorde deux tches.
3571
" La bibliothque 'Syslibcallback' n'est pas incluse dans le projet. Les vnements du systme ne
peuvent pas tre gnrs."
La bibliothque SysLibCallback.lib est ncessaire pour lutilisation de tches commandes par les vnements
(tches dclenches par vnement). Intgrez la bibliothque ou nutilisez pas de tche du type Dclenche
par vnement dans la configuration des tches (Attributs des tches).
3572
" L'intervalle de surveillance de la tche <nom> se trouve hors de la zone valide de <nombre> s
jusqu' <nombre> s"
Dans la bote de dialogue 'Attributs des tches' de la configuration des tches, une valeur en microsecondes
est donne pour lintervalle de surveillance qui se trouve en dehors de la plage dfinie dans le fichier de
description XML.
3573
"L'intervalle de surveillance de la tche <nom> se trouve hors de la zone valide de <nombre> %
jusqu' <nombre> %"
Dans la bote de dialogue 'Attributs des tches' de la configuration des tches, une valeur en pourcent est
donne pour lintervalle de surveillance qui se trouve en dehors de la plage dfinie dans le fichier de description
XML.
3574
"La variable d'vnement <nom> resp. son adresse directe ne peut pas tre utilise comme vnement
qu'une seule fois."
Un vnement Singleton est utilis plusieurs fois dans la configuration des tches. Veuillez vous rfrer ce
propos la description dans 'Insrer' 'Insrer' tche' or ''Insrer' 'Ajouter tche'.
3575
"Task <nom>: Le temps de cycle doit tre un multiple de <nombre> s."
Corrigez le temps de cycle de la tche de faon ad hoc dans la bote de dialogue des proprits de la tche. Le
systme cible dfinit un temps de base et exige que le temps de cycle corresponde celui-ci ou un multiple
de celui-ci.
3600
"Variable implicite non trouve!"
Appliquez tout dabord la commande 'Compiler tout'. Si le message derreur apparat nouveau, veuillez vous
adresser au fabricant de lautomate.
3601
"<nom> est un nom de variable rserv"
Vous avez dclar une variable au sein du projet qui est dj rserve pour le gnrateur de code. Renommez
cette variable.
3610
" '<nom>' n'est pas support"
La caractristique donne nest pas supporte par cette version.
10-124
CoDeSys V2.3
10 - APPENDICE
3611
"Le rpertoire de compilation '<nom>' est non valide."
Vous avez entr un rpertoire incorrect pour les fichiers de compilation dans les options de projet / rpertoires.
3612
"Le nombre maximum de modules ('<numro>') a t excd! La compilation sera abandonne."
Vous utilisez trop de modules et de types de donnes dans le projet. Changez le nombre maximal de modules
dans la configuration du systme cible / Rpartition de la mmoire.
3613
"Compilation abandonne "
La compilation a t interrompue par lutilisateur.
3614
"Le projet doit contenir un module avec le nom '<nom>' (routine principale) ou une configuration de
tche."
Un projet ncessite une entre au programme du type programme (p.ex. PLC_PRG) ou une configuration de
tches.
3615
"<nom>' (Einsprungfunktion) doit tre de type programme "
Vous utilisez une entre au programme(p.ex. PLC_PRG) qui nest pas du type programme.
3616
"Les programmes contenant des donnes ne sont pas accepts par les bibliothques externes. "
La bibliothque enregistrer contient un programme. Ce dernier ne sera pas disposition lors de lutilisation de
la bibliothque.
3617
"Trop peu de mmoire "
Augmentez la mmoire virtuelle de votre calculateur.
3618
" Les accs de bits ne sont pas accepts du gnrateur de code actuelle. "
Le gnrateur de code pour le systme cible actuellement rgl ne supporte pas les accs bit bit aux
variables.
3619
"Fichier d'objet <nom> et bibliothque <nom> ont des versions diffrentes!"
Assurez-vous quune version compatible des fichiers *.lib et *.obj ou *.hex est disponible pour la bibliothque
Ces fichiers doivent porter exactement le mme chronotimbre.
3620
Le module '<nom>' ne doit pas se trouver dans une bibliothque"
Vous souhaitez enregistrer le projet en tant que bibliothque de la version 2.1 Dans cette version, une
bibliothque ne doit pas contenir de module PLC_PRG. Utilisez un autre nom de module.
3621
" Le fichier de traduction <nom> ne peut pas tre dcrit."
Dans le chemin d'accs (voir options de projet, rpertoires) prvu pour le fichier de traduction susmentionn se
trouve probablement dj un fichier de mme nom lecture seule. Supprimez le fichier ou modifiez-en les
droits daccs.
3622
" Le fichier de symbole '<nom>' ne pouvait pas tre cr. "
Dans le chemin d'accs (rpertoire de projet habituel) prvu pour le fichier de symbole susmentionn se trouve
probablement dj un fichier de mme nom lecture seule. Supprimez le fichier ou modifiez-en les droits
daccs.
CoDeSys V2.3
10-125
Combinaisons de touches
3623
" Le fichier avec le projet d'initialisation <nom> ne peut pas tre dcrit."
Dans le chemin d'accs (en fonction du systme cible) prvu pour le fichier de symbole susmentionn se trouve
probablement dj un fichier de mme nom lecture seule. Supprimez le fichier ou modifiez-en les droits
daccs.
3624
"Configuration de la cible'<nombre'>='<valeur>' n'est pas compatible avec '<nombre>'=<valeur>"
Vrifier et corrigez les rglages slectionns dans la bote de dialogue Configuration du systme cible (onglet
Ressources). Si les rglages ne saffichent pas cet endroit ou ny sont pas ditables, veuillez contacter votre
fabricant dautomate programmable.
3700
" Un module appel '<nom>' existe dj dans la bibliothque '<nom>' "
Vous utilisez un nom de module qui est dj attribu un module de bibliothque. Renommez le module.
3701
"Le nom du module dans le nom de dclaration ne correspond pas au nom dans la liste des objets"
Renommez votre module au moyen de la commande de menu "Projet" + "Renommer objet" ou modifiez le
nom du module au niveau de sa partie de dclaration. Le nom doit suivre immdiatement les mots-cls
PROGRAM, FUNCTION ou FUNCTIONBLOCK.
3702
" Trop d'idenfificateurs "
Un maximum de 100 identificateurs peut tre attribu pour chaque dclaration de variable.
3703
" Plusieurs dclarations possdent des identificateurs identiques '<nom>' '"
Plusieurs identificateurs portant le mme nom existent dans la partie dclaration de lobjet.
3704
" Rcursion de donnes: <module 0> -> <module 1> -> .. -> <module 0>"
Une instance de bloc fonctionnel se ncessitant elle-mme a t utilise.
3705
"'<nom>': 'VAR_IN_OUT' n'est pas admis dans les modules de haut niveau quand il n'y a pas de
configuration des tches"
tablissez une configuration de tches ou assurez-vous quaucune variable VAR_IN_OUT ne soit utilise dans
PLC_PRG.
3706
"Dans le modificateur 'CONSTANT', seulement 'VAR', 'VAR_INPUT', 'VAR_OUTPUT', 'VAR_EXTERNAL'
et 'VAR_GLOBAL' sont admis."
Aucune constante ne peut tre dclare pour cette catgorie de variable.
3720
" Adresse attendue aprs 'AT' "
Insrez une adresse valide aprs le mot cl AT ou changez le mot cl AT.
3721
" Seulement 'VAR' et 'VAR_GLOBAL' peuvent tre placs sur des adresses "
Copiez la dclaration dans une zone VAR ou VAR_GLOBAL.
3722
" Sur une adresse de bit, seulement des variables 'BOOL' sont admises "
Changez ladresse ou le type de variable donn dans la dclaration.
10-126
CoDeSys V2.3
10 - APPENDICE
3726
" Une constante ne peut pas tre pose sur une adresse directe. "
Modifiez l'affectation dadresse en consquence.
3727
"Tableaus ne peuvent pas mettre cette adresse "
Modifiez l'affectation dadresse en consquence.
3728
"Adresse inadmissible: '<Adresse>'"
Cette adresse nest pas supporte par la configuration de lautomate. Vrifiez la configuration ou corrigez
ladresse.
3729
"Type interdit '<nom>' sur l'adresse: '<nom>'"
Le type de cette variable ne peut tre plac ladresse indique. Exemple : pour un systme cible qui travaille
avec un alignement de 2 octets (Alignment 2), la dclaration suivante est non valide : var1 AT %IB1:WORD;
3740
" Type inconnu: '<nom>' "
Vous utilisez un type non valide pour la dclaration de variables.
3741
" Identificateur de type attendu "
Vous utilisez un mot cl ou un oprateur la place dun identificateur de type valide.
3742
" Valeur d'numration attendue "
Dans la dfinition du type dnumration, il manque un identificateur aprs la parenthse ouvrante ou aprs une
virgule dans la zone dlimite par les parenthses.
3743
"Nombre entier attendue "
Les valeurs numratives ne peuvent tre initialises quavec des nombres entiers du type INT.
3744
"La constante enum '<nom>' est dj dfinie."
Vrifiez si vous avez respect les rgles suivantes lors de lattribution de valeurs numratives :
- toutes les valeurs doivent tre univoques au sein dune dfinition dnumration.
- toutes les valeurs doivent tre univoques au sein des dfinitions globales dnumration.
- toutes les valeurs doivent tre univoques au sein des dfinitions locales dnumration dun module.
3745
"Les limites de plage ne sont admises que pour les types de donnes intgres!"
Les types domaines partiels ne peuvent tre dfinis que sur base de types de donnes entires.
3746
"La limite de plage '<nom>' n'est pas compatible au type de donnes '<nom>'."
Une des limites donnes pour le type domaine partiel est situe en dehors des limites autorises pour le type
de base.
3747
"Longueur de chane de caractres inconnue: '<nom>''"
Vous utilisez une constante inconnue pour la dfinition de la longueur de la chane de caractres.
CoDeSys V2.3
10-127
Combinaisons de touches
3748
"Un tableau ne doit avoir plus de trois dimensions."
Vous utilisez plus que les trois dimensions autorises pour un tableau. Utilisez le cas chant un ARRAY OF
ARRAY.
3749
"La limite infrieure '<nom>' est inconnue."
Vous utilisez une constante non dfinie comme limite infrieure dun type domaine partiel ou d'un type tableau
(ARRAY).
3750
"La limite suprieure '<nom>' est inconnue."
Vous utilisez une constante non dfinie comme limite suprieure dun type domaine partiel ou d'un type tableau
(ARRAY).
3751
"Longueur de cordon <nombre> invalide"
La longueur de chane de caractres (nombre de caractres) autorise par le systme cible configur est
dpasse dans la prsente dclaration.
3752
"Un tableau ne doit avoir plus de trois dimensions."
Un tableau ne peut avoir que 3 dimensions au maximum. La dimensionnalit obtenue par limbrication de
tableaux (p. ex arr: ARRAY [0..2,0..2,0..2] OF ARRAY [0..2,0..2,0..2] OF ARRAY [0..2,0..2,0..2, 0..2] OF
DINT ne doit pas dpasser 9 et dpasse dans le cas prsent la valeur maximale. Veuillez rduire cette valeur
de faon approprie sur un maximum de neuf dimensions.
3760
"Valeur d'initiale fausse"
Utilisez une valeur initiale qui corresponde la dfinition du type. Vous pouvez vous aider de la bote de
dialogue de dclaration de variables (Maj/F2 ou 'Editer' 'Dclaration de variables').
3761
"Variables 'VAR_IN_OUT' ne doivent pas avoir de valeur initiale."
Enlevez linitialisation dans la dclaration de variables.
3780
"'VAR', 'VAR_INPUT', 'VAR_OUTPUT' ou 'VAR_IN_OUT' attendu"
La premire ligne qui suit le nom dun module, doit contenir un de ces mots-cls.
3781
"'END_VAR' ou identificateur attendu"
Ecrivez un identificateur valide ou END_VAR au dbut de la ligne de dclaration.
3782
"Fin inattendue"
Dans la partie de dclaration : insrez le mot-cl END_VAR la fin de la partie de dclaration.
Dans lditeur littraire : insrez des instructions qui compltent la dernire squence dinstructions (par
exemple END_IF).
3783
"'END_STRUCT' ou identificateur attendu"
Assurez-vous que la dclaration de type soit correctement termine.
3800
"Les variables globales occupent trop de mmoire. Veuillez augmenter le mmoire disponible dans les
options de projet."
Augmentez le nombre de segments rgl pour les options de compilation dans les options de projet.
10-128
CoDeSys V2.3
10 - APPENDICE
3801
"La variable '<nom>' est trop grande ('<nombre>' Bytes)"
La variable utilise un type qui est plus grand quun segment de donne. Vous pouvez rgler la longueur de
segment, selon le systme cible, dans la Configuration du systme cible / Rpartition de la mmoire. Si vous
ny trouvez aucune possibilit de saisie, veuillez vous adresser au fabricant de lautomate.
3802
"Le mmoire pour la variable de retain est puis. Variable '<nom>', octets."
Lespace mmoire disponible pour les variables rmanentes est puis. Vous pouvez rgler cet espace, selon
le systme cible, dans la Configuration du systme cible / Rpartition de la mmoire. Si vous ny trouvez
aucune possibilit de saisie, veuillez vous adresser au fabricant de lautomate. (Veuillez galement noter cet
effet, que dans le cas dinstances de blocs fonctionnels dans lesquels une variable rmanente est utilise,
linstance complte est gre dans la zone de mmoire rmanente !)
3803
"Le mmoire pour les variables globales est puis. "
Lespace mmoire disponible pour les variables globales est puis. Vous pouvez rgler cet espace, selon le
systme cible, dans la Configuration du systme cible / Rpartition de la mmoire. Si vous ny trouvez aucune
possibilit de saisie, veuillez vous adresser au fabricant de lautomate.
3820
"'VAR_OUTPUT' et 'VAR_IN_OUT' ne sont pas admis dans les fonctions."
Vous ne pouvez dfinir aucun paramtre de rfrence / de sortie dans une fonction.
3821
"Au moins une entre est ncessaire pour une fonction"
Insrez au moins un paramtre dentre pour la fonction.
3840
"Variable globale inconnue '<nom>'!"
Vous utilisez dans le module une variable VAR_EXTERNAL pour laquelle aucune variable globale
correspondante nest dclare.
3841
"Dclaration de '<nom>' ne correspond pas la dclaration globale!"
La dfinition du type dans la dclaration de la variable de type VAR_EXTERNAL ne correspond pas la
dfinition dans la dclaration globale.
3850
"Dclaration d'une structure 'unpacked' <nom> dans une structure 'packed' <nom> est interdit!"
La dfinition de structure indique mne un misalignment (mauvais alignement) dans la mmoire.
Modifiez la dfinition de structure de faon approprie.
3900
"Soulignes multiples dans l'identificateur"
Enlevez les caractres de soulignement multiples dans lidentificateur.
3901
"Un maximum de 5 zones numriques est admis dans les adresses"
Vous utilisez une affectation directe dadresse pour une adresse qui contient plus de quatre niveaux (p.ex.
%QB0.1.1.0.1).
3902
"Des mots cl s'crivent en majuscules"
crivez le mot cl en majuscules ou activez loption 'Formater automatique'.
CoDeSys V2.3
10-129
Combinaisons de touches
3903
"Constante de temps inadmissible"
La constante nest pas donne conformment au format IEC61131-3.
3904
"Constante de temps dpasse valeur maximum"
Vous utilisez une valeur pour la constante de temps qui ne peut plus tre reprsente en format interne. La
valeur maximale reprsentable est t#49d17h2m47s295ms.
3906
"Constante d'heure du jour inadmissible"
La constante nest pas donne conformment au format IEC61131-3.
3907
"Constante date/temps inadmissible"
La constante nest pas donne conformment au format IEC61131-3.
3908
"Chane de caractres non valid "
La constante de chane contient un caractre non valide.
4000
"Identificateur attendu "
Introduisez un identificateur valide cet endroit.
4001
"Variable '<nom>' non dclare"
Dclarez la variable locale ou globale.
4010
"Types incompatibles: Ne peut pas convertir '<nom>' en '<nom>'."
Vrifiez les types requis par loprateur (recherchez pour cela loprateur dans votre fichier daide) et remplacez
le type de la variable qui a gnr lerreur par un type admis ou choisissez une autre variable.
4011
"Type inadmissible dans paramtre '<nombre>' de '<nom>': Ne peut pas convertir '<nom>' en '<nom>'."
Le type du paramtre actuel ne peut tre converti celui du paramtre formel. Utilisez une conversion de type
ou un type de variable correspondant.
4012
"Type inadmissible pour paramtre '<nom>' de '<nom>': Ne peut pas convertir '<nom>' en '<nom>'."
Une valeur du type inadmissible <type2> est affecte la variable '<nom>'. Remplacez la variable ou la
constante par une variable ou une constante de type <type1>, ou utilisez une conversion de type ou une
constante avec prfixe de type.
4013
"Type inadmissible pour sorties '<nom>' de '<nom>': Ne peut pas convertir '<nom>' en '<nom>'."
Une valeur du type inadmissible <type2> est affecte la variable '<nom>'. Remplacez la variable ou la
constante par une variable ou une constante de type <type1>, ou utilisez une conversion de type ou une
constante avec prfixe de type.
4014
" Constante avec prfixe de type: '<nom>' ne peut pas tre converti en '<nom>'. "
Le type de la constante nest pas compatible avec le type du prfixe.
Exemple : SINT#255
10-130
CoDeSys V2.3
10 - APPENDICE
4015
" Type de donnes non valide <'<nom>'> pour accs de bit direct. "
Ladressage direct de bits nest autoris que pour les types de donnes entires (Integer) et chanes de bits
(Bitstring) et nest pas autoris pour les variables directes. Vous utilisez dans laccs bit bit <var1>.<bit> une
variable var1 de type REAL/LREAL ou une constante ou essayez un accs de bit sur une variable directe.
4016
" L'index de bit '<numro>' est hors de la plage valide pour variables du type <nom>'. '"
Vous essayez daccder un bit qui nest pas dfini pour le type de donne de la variable.
4017
" 'MOD' n'est pas defini pour 'REAL' "
Loprateur MOD ne peut tre utilis que pour les types de donnes entires (Integer) et chanes de bit
(Bitstring).
4020
" Les oprandes 'ST', 'STN', 'S', 'R' doivent tre des variables modifiables"
Remplacez le premier oprande par une variable laquelle l'on peut accder en criture.
4021
" Pas de permission de modification pour '<nom>' "
Remplacez la variable par une variable avec accs en criture.
4022
"Oprande attendu"
Ajoutez un oprande derrire la commande existante.
4023
" Aprs '+' ou '-', un nombre est attendue "
Entrez un chiffre.
4024
"Erwarte <Operator 0> oder <Operator 1> oder ... vor '<nom>'"
Entrez un oprateur valide lendroit indiqu.
4025
"Erwarte ':=' oder '=>' vor '<nom>'"
Entrez un des deux oprateurs lendroit indiqu.
4026
" 'BITADR' attend une adresse de bit ou une variable sur une adresse de bit. "
Utilisez une adresse de bit correcte (p.ex. %IX0.1).
4027
" Nombre entier ou constante symbolique attendu "
Insrez un nombre entier ou lidentificateur dune constante correcte.
4028
" L'oprateur 'INI' requiert une instance de bloc fonctionnel ou une variable structure "
Vrifiez le type des variables sur lesquelles vous appliquez loprateur INI.
4029
" Des appels imbriqus de la mme fonction ne sont pas possibles."
Dans le cas de systmes cibles non-rentrants et en mode simulation, un appel de fonction ne peut contenir
comme paramtre un appel lui-mme.
Exemple : fun1(a,fun1(b,c,d),e);
Utilisez une variable intermdiaire.
CoDeSys V2.3
10-131
Combinaisons de touches
4030
" 'ADR' requiert une variable comme paramtre et pas une expression ou une constante "
Remplacez la constante ou lexpression par une variable ou une adresse directe.
4031
" L'oprateur d'adresse n'est pas admis sur les bits! Veuillez utiliser 'BITADR'."
Utilisez BITADR. Veuillez noter : BITADR ne rend pas dadresse mmoire physique.
4032
"' '<numro>' d'oprandes sont trop peu pour '<nom>'. Un minimum de '<numro>' est ncessaire "
Vrifiez combien doprandes sont requis par loprateur '<Nom>', et insrez les oprandes manquants.
4033
"' '<numro>' oprandes sont trop pour '<nom>'. Le nombre exact de '<numro>' est ncessaire "
Vrifiez combien doprandes sont requis par loprateur '<Nom>', et supprimez les oprandes superflus.
4034
" Division par '0'"
Vous utilisez une division par 0 dans une expression constante. Utilisez le cas chant une variable avec la
valeur 0 pour forcer une erreur dexcution.
4040
" L'tiquette '<nom>' n'est pas dfinie "
Dfinissez une tiquette nomme <tiquette> ou bien remplacez <tiquette> par une tiquette dfinie.
4041
" Dfinition multiple de l'tiquette '<nom>' '"
Ltiquette de saut '<Nom>' est dfinie plusieurs fois dans le module. Renommez en consquence ou enlevez
une dfinition.
4042
" Il peut seulement tre au maximum '<numro>' renvoi de saut successivement "
Le nombre dtiquettes par instruction est limit '<nombre>'. Insrez une instruction fictive.
4043
"Le format du label est invalide. Un label doit tre un nom qui peut tre suivi par deux points. "
Soit le nom utilis pour ltiquette nest pas un identificateur valide, soit il manque un signe deux-points dans la
dfinition.
4050
" L'unit '<nom>' n'existe pas dans le projet "
Dfinissez un module nomm <Nom> au moyen de la commande de menu "Projet" + "Insrer objet" ou
remplacez <Nom> par le nom dun module dfini.
4051
" '<nom>' n'est pas de fonction "
Utilisez pour le '<Nom>' un des noms de fonction dfinis dans le projet ou les bibliothques.
4052
" '<nom>' doit tre une instance dclare du bloc fonctionnel '<nom>"
Utilisez pour le '<Nom dinstance>' une des instances de type '<Nom>' dfinies dans le projet ou modifiez le
type de <Nom dinstance> en '<Nom>'.
4053
"<nom>' n'est pas de module ou oprateur valide"
Remplacez '<Nom>' par le nom dun des modules dfinis dans le projet ou le nom dun oprateur.
10-132
CoDeSys V2.3
10 - APPENDICE
4054
"Bausteinname als Parameter von 'INDEXOF' erwartet"
Le paramtre indiqu nest pas un nom de module valide.
4060
"'VAR_IN_OUT' Paramtre '<nom>' de '<nom>' requiert variable avec permission de modification
comme entre. "
Il faut transmettre aux paramtres VAR_IN_OUT des variables avec accs en criture, car celles-ci peuvent
tre modifies au sein du module.
4061
"'VAR_IN_OUT' Paramtre '<nom>' de '<nom>' doit tre occup. "
Les paramtres VAR_IN_OUT doivent tre affects des variables avec accs en criture, car celles-ci
peuvent tre modifies au sein du module.
4062
"Pas d'accs au paramtre 'VAR_IN_OUT' '<nom>' de '<nom>' de l'extrieur."
Les paramtres VAR_IN_OUT ne peuvent tre lus ou crits quau sein du module car il sagit dun transmission
par rfrence.
4063
"Vous ne pouvez pas attribuer des adresses de bit au paramtre 'VAR_IN_OUT' '<nom>' de '<nom>'. "
Une adresse de bit nest pas une adresse physique correcte. Transmettez une variable ou une non-adresse
directe de bit.
4064
"'VAR_IN_OUT' ne doit pas tre cras dans un appel d'action local! "
Effacez l'assignation des variables VAR_IN_OUT pour lappel local daction.
4070
"Le module contient une expression trop complexe. "
Rduisez le niveau d'imbrication en divisant lexpression en plusieurs expressions laide daffectations des
variables intermdiaires.
4071
"Le rseau est trop grand "
Divisez le rseau en plusieurs rseaux.
4100
" '^' ncessite un type de pointer "
Vous essayez de drfrencer une variable qui nest pas dclare comme POINTER TO.
4110
" '[<index>]' seulement admis pour les variables de tableau "
Vous utilisez [<index>] pour une variable qui nest pas dclare comme ARRAY OF.
4111
"L'expression dans l'index d'un tableau doit avoir un rsultat du type 'INT' "
Utilisez une expression de type correspondant ou une conversion de type.
4112
"Le tableau a trop d'indices "
Vrifiez le nombres dindices (1, 2 ou 3) spcifis dans la dclaration du tableau et supprimez les indices en
surnombre.
CoDeSys V2.3
10-133
Combinaisons de touches
4113
" Le tableau a trop peu d'indices "
Vrifiez le nombres dindices (1, 2 ou 3) spcifis dans la dclaration du tableau et compltez les indices
manquants.
4114
" Il n'y a pas d'index constant dans la zone du tableau "
Assurez-vous que les indices utiliss se trouvent dans les limites du tableau.
4120
" Une variable structure doit tre place devant '.' "
Lidentificateur gauche du point doit tre une variable de type STRUCT ou un bloc fonctionnel
FUNCTION_BLOCK ou encore le nom dune FONCTION ou dun PROGRAMME.
4121
"'<nom>' n'est pas de composant de '<nom>' "
Le composant '<Nom>' nest pas contenu dans la dfinition de lobjet <Objet>.
4122
'<nom>' n'est pas de paramtre d'entre du bloc fonctionnel appel "
Vrifiez les variables dentre du bloc fonctionnel appel et remplacez '<Nom>' par une de ces variables.
4200
" 'LD' attendu "
Insrez au moins une instruction LD dans la fentre dditeur du langage IL ou aprs ltiquette.
4201
" Oprateur IL attendu "
Toute instruction IL doit dbuter avec un oprateur ou une tiquette.
4202
" Fin inattendue de l'expression entre parenthses "
Insrez une parenthse droite (fermante).
4203
"'<nom>' ne doit pas tre entre parenthses "
Loprateur indiqu nest pas autoris au sein dune expression IL entre parenthses.
(non autoriss : 'JMP', 'RET', 'CAL', 'LDN', 'LD', 'TIME')
4204
" Parenthse de fermeture sans parenthse d'ouverture correspondante "
Insrez une parenthse gauche (ouvrante) ou effacez la parenthse droite (fermante).
4205
" Une virgule est inadmissible aprs ')' "
Enlevez la virgule aprs la parenthse droite (fermante).
4206
" Pas d'tiquettes dans des expressions entre parenthses "
Dplacez ltiquette en dehors de lexpression entre parenthses.
4207
" Modificateur 'N' demande un oprande du type 'BOOL','BYTE','WORD' ou 'DWORD' "
Le modificateur 'N' ncessite un type de donnes pour lequel une ngation boolenne peut tre effectue.
10-134
CoDeSys V2.3
10 - APPENDICE
4208
" L'expression devant un oprateur doit livrer un rsultat du type 'BOOL' "
Assurez-vous que lexpression donne un rsultat boolen ou utilisez une conversion de type.
4209
" Pas de nom de fonction admis ici "
Remplacez lappel de fonction par une variable ou par une constante.
4210
" 'CAL', 'CALC' ou 'CALN' requirent une instance de bloc fonctionnel comme oprande "
Dclarez une instance du bloc fonctionnel que vous souhaitez appeler.
4211
" Commentaire dans IL seulement admis la fin de la ligne "
Dplacez le commentaire la fin de la ligne ou dans une ligne propre.
4212
" L'accumulateur est invalide devant un nonc li la valeur de l'accu "
Le contenu de laccumulateur nest pas dfini. Ceci se produit aprs des instructions qui ne donnent pas de
rsultat (p.ex. 'CAL').
4213
" 'S' et 'R' demande un oprande du type 'BOOL' "
Utilisez une variable boolenne cet endroit.
4250
" Le module n'est pas termine proprement: Insrez 'ST' ou effacez la dernire expression. "
La ligne ne commence pas avec une instruction ST valide.
4251
" La fonction '<nom>' a trop de paramtres "
Vous avez indiqu plus de paramtres que ce qui est dclar dans la dfinition de la fonction.
4252
" La fonction '<nom>' a trop peu de paramtres "
Vous avez indiqu moins de paramtres que ce qui est dclar dans la dfinition de la fonction.
4253
" 'IF' et 'ELSIF' demandent une condition de type boolen "
Assurez-vous que la condition suivant un 'IF' ou 'ELSEIF' soit une expression boolenne.
4254
" 'WHILE' requiert une condition boolenne"
Assurez-vous que la condition suivant un 'WHILE' soit une expression boolenne.
4255
" 'UNTIL' requiert une condition boolenne "
Assurez-vous que la condition suivant un 'UNTIL' soit une expression boolenne.
4256
" 'NOT' requiert un oprande boolen "
Assurez-vous que la condition suivant un 'NOT' soit une expression boolenne.
4257
" Le compteur de l'nonc 'FOR' doit tre du type 'INT' "
Assurez-vous que la variable de comptage soit un type de donnes entires (Integer) ou chanes de bits
(Bitstring) (p.ex. DINT, DWORD).
CoDeSys V2.3
10-135
Combinaisons de touches
4258
" Le compteur dans l'nonc 'FOR' n'est pas de variable avec permission de modification "
Remplacez la variable de comptage par une variable avec accs en criture.
4259
" La valeur initiale de l'nonc 'FOR' doit tre du type 'INT' "
La valeur initiale de l'nonc FOR doit tre compatible avec le type de la variable de comptage.
4260
" La valeur finale de l'nonc 'FOR' doit tre du type 'INT' "
La valeur finale de l'nonc FOR doit tre compatible avec le type de la variable de comptage.
4261
" La valeur incrmentale de l'nonc 'FOR' doit tre du type 'INT' "
La valeur dincrmentation de l'nonc FOR doit tre compatible avec le type de la variable de comptage.
4262
" 'EXIT' n'est admis que dans une boucle "
Nutilisez 'EXIT' quau sein dnoncs 'FOR', 'WHILE' ou 'UNTIL'.
4263
" Nombre, 'ELSE' ou 'END_CASE' attendus"
Vous ne pouvez indiquer au sein dun 'CASE' quun nombre ou un nonc 'ELSE' ou encore lnonc final
'END_CASE'.
4264
" Le slecteur de l'nonc CACE doit tre du type 'INT' "
Assurez-vous que le slecteur soit un type de donnes entires (Integer) ou chanes de bits (Bitstring) (p.ex.
DINT, DWORD).
4265
" Aprs ',' nombre attendu "
Dans l'numration des slecteurs CASE, un autre slecteur doit tre plac aprs une virgule.
4266
" Un enonc au minimum est demand "
Entrez une instruction, au moins un point-virgule.
4269
" Aprs la branche 'ELSE', 'END_CASE' est attendu "
Fermez lnonc 'CASE' aprs la branche 'ELSE' au moyen de 'END_CASE'.
4270
" Constante de 'CASE' '%ld' dj utilis" "
Un slecteur 'CASE' ne peut tre utilis quune fois dans un nonc 'CASE'.
4271
" Le minimum indiqu est plus grand que le maximum. "
Corrigez les limites des slecteurs de manire ce que la limite infrieure ne soit pas plus grande que la limite
suprieure.
4272
" Expectant paramtre '<nom>' au lieu de '<numro>' dans l'appel de '<nom>'!"
Lorsque vous procdez au paramtrage des fonctions dans lappel de fonctions avec le nom des paramtres, la
position des paramtres (ordre) doit toujours et encore correspondre la position des paramtres dans la
dfinition des fonctions.
10-136
CoDeSys V2.3
10 - APPENDICE
4300
"Saut ou Return requiert une entre boolenne"
Assurez-vous que lentre pour un saut ou linstruction de retour soit une expression boolenne.
4301
" Le module '<nom>' requiert exactement '<numro>' entres "
Le nombre dentres ne correspond pas au nombre de variables VAR_INPUT et VAR_IN_OUT indiqu dans la
dfinition du module
4302
" Le module '<nom>' requiert exactement '<numro>' sorties "
Le nombre de sorties ne correspond pas au nombre de variables VAR_OUTPUT indiqu dans la dfinition du
module
4303
"'<nom>' n'est pas d'oprateur "
Remplacez '<Nom>' par un oprateur valide.
4320
" Expression non-boolenne '<nom>' avec contact "
Le signal de commutation dun contact doit tre une expression boolenne.
4321
" Expression non-boolenne '<nom>' avec bobinage "
La variable de sortie dun bobinage doit tre de type BOOL.
4330
"Une expression est attendue l'entre 'EN' de la bote '<nom>'
Brancher lentre EN du module '<Nom>' sur une entre ou une expression.
4331
" Une expression est attendue l'entre '<numro>' de la bote '<nom>' "
Lentre du module doprateur nest pas cbl.
4332
"Une expression est attendue l'entre '<nom>' du module '<nom>'"
Lentre du module est du type VAR_IN_OUT et nest pas cbl.
4333
" Identificateur attendu dans saut "
La destination du saut indiqu nest pas un identificateur valide.
4334
" Une expression est attendue l'entre du saut "
Cblez lentre du saut avec une expression boolenne. Lorsque celle-ci a la valeur TRUE, le saut est excut.
4335
" Une expression est attendue l'entre de Return eturn"
Cblez lentre de linstruction de retour avec une expression boolenne. Lorsque celle-ci a la valeur TRUE, le
saut est excut.
4336
"Une expression est attendue l'entre de la sortie "
Reliez la sortie une expression laquelle cette sortie peut tre affecte.
CoDeSys V2.3
10-137
Combinaisons de touches
4337
" Identificateur attendu pour cette entre "
Insrez dans la bote dentre une expression ou un identificateur valide.
4338
" La bote '<nom>' n'a pas d'entres relles "
Aucune des entres du module doprateur '<Nom>' n'est cbl avec une expression valide. F
4339
"Types incompatibles l'entre: Ne peut pas convertir '<nom>' en '<nom>'"
Lexpression dans la bote de sortie nest pas de type compatible avec lexpression qui devrait lui tre affecte.
4340
"Saut requiert une entre boolenne"
Assurez-vous que lentre pour le saut soit une expression boolenne.
4341
" Return requiert une entre boolenne "
Assurez-vous que lentre pour linstruction de retour soit une expression boolenne.
4342
" L'entre 'EN' de la bote requiert une entre boolenne. "
Associez lentre EN du module avec une expression boolenne valide.
4343
" Affectation de la constante: <nom>"
Vous avez dclar lentre '<Nom>' du module '<Nom>' comme VAR_INPUT CONSTANT. Vous lui avez
cependant affect, dans la bote de dialogue 'Editer paramtres', une expression qui nest pas de type
compatible.
4344
"'S' et 'R' demande un oprande du type 'BOOL' "
Insrez une expression boolenne valide derrire linstruction Set (positionner) ou Reset (remettre zro).
4345
"Unzulssiger Typ fr Parameter '<nom>' von '<nom>': Kann '<Typ>' nicht in '<Typ>' konvertieren."
Vous avez affect lentre '<Nom>' du module '<Nom>' une expression qui nest pas de type compatible.
4346
" Une sortie ne doit pas tre une constante. "
La cible dune affectation doit tre une variable ou une adresse directe avec accs en criture.
4347
" Le paramtre 'VAR_IN_OUT' a besoin d'une variable avec accs criture comme entre. "
Il faut transmettre aux paramtres VAR_IN_OUT des variables avec accs en criture, car celles-ci peuvent
tre modifies au sein du module.
4348
"Nom de programme '<nom>' invalide."
Vous avez insr une bote de programme dans lditeur CFC qui porte le mme nom quune variable (globale)
dj existante. Renommez-la de faon approprie.
4349
"Entre ou sortie efface dans le module '<nom>': Vrifier le lien avec la boite. Ce message derreur
disparait aprs ldition du CFC."
Corrigez le module CFC de faon approprie.
10-138
CoDeSys V2.3
10 - APPENDICE
4350
"Une action de SFC ne peut pas tre appele de dehors!"
Des actions SFC ne peuvent tre appeles quau sein du module SFC dans lequel elles ont t dfinies.
Toutefois, le message d'erreur est galement dit si vous appelez une action au sein du module SFC de faon
autorise, mais que vous nutilisez pas dtapes CEI et que la bibliothque iecsfc.lib est cependant encore
intgre dans le projet. Dans ce cas, veuillez supprimer la bibliothque du projet dans le gestionnaire des
bibliothques et procder une nouvelle fois la compilation.
4351
" Le nom de l'tape n'est pas d'identificateur admissible: '<nom>' '"
Renommez ltape et choisissez comme nom un identificateur valide.
4352
" Des caractres inadmissibles suivent le nom de l'tape admissible:'<nom>' '"
Effacez les caractres non autoriss dans le nom de ltape.
4353
" Noms d'tape doubles: '<nom>' >'"
Renommez une des tapes.
4354
" Saut sur une tape non dfinie: '<nom>' '"
Choisissez comme destination du saut un nom dtape disponible ou insrez une tape avec le nom non
encore dfini.
4355
"Eine Transition darf keine Seiteneffekte (Zuweisungen, FB-Aufrufe etc.) haben"
Une transition ne peut contenir quune expression boolenne.
4356
" Saut sans nom d'tape valid: '<nom>' "
Utilisez un identificateur valide comme destination de saut.
4357
" La bibliothque CEI n'a pas t trouve "
Vrifiez si la bibliothque iecsfc.lib a t associe dans le gestionnaire de bibliothques et si les chemins
daccs saisis dans les options de projet sont corrects.
4358
" Action pas dclare: '<nom>' '"
Assurez-vous que laction de ltape CEI soit insre dans lOrganisateur dobjets en dessous du module SFC
et que le nom de laction soit entr dans la case droite du qualificateur.
4359
" Qualificateur interdit: '<nom>' "
Entrez un qualificateur pour laction CEI dans la case situe gauche du nom de laction.
4360
" Constante de temps attendue aprs qualificateur: '<nom>' >'"
Entrez une constante de temps pour laction CEI dans la case situe gauche du nom de laction, derrire le
qualificateur.
4361
" '<nom>' n'est pas le nom d'une action "
Entrez une action dfinie dans le projet ou une variable boolenne pour laction CEI dans la case situe droite
du qualificateur.
CoDeSys V2.3
10-139
Combinaisons de touches
4362
" Expression pas boolen dans l'action: '<nom>'"
Entrez une variable boolenne ou un nom daction valide.
4363
" Le nom du pas CEI a dj t utilis pour une variable: '<nom>'"
Renommez soit ltape, soit la variable.
4364
" Expression pas boolen dans une transition "
Le rsultat de l'expression de transition doit tre de type BOOLenne.
4365
"L'etape '<nom>' a une valeur limite de temps fausse"
Ouvrez la bote de dialogue des Attributs dtape pour ltape '<Nom>' et entrez une variable ou une constante
de temps valide.
4366
" La marque pour l'tape parallle n'est pas d'identificateur valide: '<nom>' '"
Entrez un identificateur autoris ct du triangle qui indique ltiquette.
4367
" La marque '<nom>'existe dj. "
Vous avez dj dsign une tiquette ou une tape avec ce nom. Renommez-la en consquence.
4368
" L'action '<nom>' est utilise dans plusiers niveaux de SFC embots! "
Vous utilisez laction '<Nom>' dans le module et galement dans une ou plusieurs actions de ce module.
4369
" Exactement un rseau ncessaire pour les transitions "
Vous avez utilis pour la transition plusieurs rseaux FBD ou LD. Rduisez un seul rseau.
4370
" Trouv les lignes en trop aprs transition IL correcte "
Effacez les lignes non utilises la fin de la transition.
4371
" Des caractres inadmissibles suivent le nom de l'tape admissible:'<nom>' '"
Effacez les caractres non utiliss la fin de la transition.
4400
" Le module '<nom>' est incomplet / a t import ou converti en contenant des erreurs. "
Le module ne peut tre entirement converti en CEI 61131-3.
4401
" La constante de temps S5 est trop grand de %lu secondes (max. 9990s)."
Laccumulateur ne comporte pas de temps cod BCD valide.
4402
" L'accs direct n'est pas admis que sur les entres et les sorties. "
Assurez-vous que vous naccdez qu une variable dfinie comme entre ou sortie.
4403
" Ordre STEP5 invalide ou pas convertible en CEI 61131-3. "
Toute commande STEP5 nest pas convertible en CEI 61131-3, par exemple des commandes CPU comme
MAS.
10-140
CoDeSys V2.3
10 - APPENDICE
4404
" Oprande STEP5 invalide ou pas convertible en CEI 61131-3."
Toute oprande STEP5 nest pas convertible en CEI 61131-3, ou il manque un oprande.
4405
"Le dverrouillage d'un timer STEP5/7 ne peut tre converti en CEI 61131-3.."
Les temporisateurs CEI correspondants nont pas dentre de remise zro.
4406
" La constante de comptage STEP5 est trop grande (max. 999)"
Laccumulateur ne comporte pas de constante de comptage code BCD valide.
4407
" L'instruction STEP5 n'est pas convertible en CEI 61131-3 "
Toute instruction STEP5/7 nest pas convertible en CEI 61131-3, par exemple DUF.
4408
" L'accs de bit sur des mots timer/compteur n'est pas convertible en CEI 61131-3. "
Les commandes spciales de temporisation / de comptage ne sont pas convertibles en CEI 61131-3.
4409
" Le contenu de Accu1 ou Accu2 n'est pas dfini et ne peut tre convertie en CEI 61131-3. "
Une commande qui associe deux accumulateurs nest pas convertible car les contenus des accumulateurs sont
inconnus.
4410
" Le module appel n'existe pas dans le projet. "
Importez tout dabord le module appel.
4411
" Erreur dans la liste de variables globales. "
Veuillez vrifier le fichier SEQ.
4412
" Erreur interne No.11 "
Veuillez vous adresser au fabricant de lautomate.
4413
" Format erron d'une ligne dans l'unit de donnes. "
Le code importer contient une donne errone.
4414
" Nom FB/FX manque "
Il manque le nom symbolique dun bloc fonctionnel (tendu) dans le fichier de sortie S5D.
4415
" Cette commande n'est pas permise aprs la fin du bloc "
Un module protg ne peut tre import.
4416
" Commande invalide "
La commande S5 ne peut tre dsassemble.
4417
" Commentaire pas termin "
Terminez le commentaire avec "*)".
CoDeSys V2.3
10-141
Combinaisons de touches
4418
" Nom FB/FX trop long (max. 8 caractres) "
Le nom symbolique dun bloc fonctionnel (tendu) est trop long.
4419
"Format des lignes attendu ""(* Name: <FB/FX-Name> *)"" "
Corrigez la ligne en consquence.
4420
"Nom du paramtre FB/FX manque"
Vrifiez les blocs fonctionnels.
4421
"Indication du type de paramtre FB/FX invalide"
Vrifiez les blocs fonctionnels.
4422
" Type de paramtre FB/FX pas indiqu"
Vrifiez les blocs fonctionnels.
4423
"Oprande actuel invalide "
Vrifiez linterface du bloc fonctionnel.
4424
" Warning: Le bloc appel n'existe pas ou le header est faux ou sans params. "
Le bloc fonctionnel appel na pas encore t import ou est incorrect ou ne possde pas de paramtres (vous
pouvez dans ce dernier cas ignorer le message).
4425
" Etiquette pas dfinie "
La destination dun saut nest pas indique.
4426
" Le module n'a pas de nom STEP5 valide comme p.ex. PB10 "
Modifiez le nom du module.
4427
" Le type de timer n'a pas t indiqu "
Insrez une dclaration du temporisateur dans la liste des variables globales.
4428
" Nombre de parenthses permis dans STEP 5 excd "
Il nest pas permis dutiliser plus de sept parenthses gauches (ouvrantes).
4429
" Erreur dans le nom formel du paramtre "
Le nom du paramtre ne peut comporter plus de quatre caractres.
4430
" Ce type de paramtre formel n'est pas convertible en CEI "
Des temporisateurs, compteurs et modules ne peuvent tre convertis en tant que paramtres formels en CEI
61131-3.
4431
" Trop de paramtres 'VAR_OUTPUT' pour un appel dans STEP5-IL "
Un module ne peut compter comme sorties plus de seize paramtres formels.
10-142
CoDeSys V2.3
10 - APPENDICE
4432
" Les tiquettes au milieu d'une expression sont interdites "
Les tiquettes ne peuvent pas tre places nimporte o dans CEI 61131-3.
4434
" Trop de labels "
Un module ne peut compter plus de 100 tiquettes.
4435
" Aprs saut/appel, vous ne pouvez plus continuer la liaison "
Aprs un saut ou un appel, il doit y avoir une commande de chargement.
4436
" Le contenu du rsultat de liaison n'est pas dfini et pas convertible en CEI 61131-3."
Une commande qui utilise le rsultat de la liaison nest pas convertible car la valeur du rsultat de la liaison est
inconnue.
4437
" Les types de la commande et de l'oprande ne correspondent pas "
Une commande bit bit a t applique un oprande de type mot ou vice-versa.
4438
" Pas de bloc de donnes ouvert (ajoutez 'A DB') "
Insrez un bloc de donnes A (A DB).
4500
" Variable ou adresse inconnue "
Cette variable despion nest pas dclare dans le projet. En appuyant sur la touche <F2> vous obtenez une
liste de slection pour ldition relative la variable dclare.
4501
" Des caractres inadmissibles suivent une expression d'espion valide "
Supprimez les caractres en surnombre.
4520
" Erreur dans la directive pour le compilateur: Flag attendu devant '<nom>'! "
La pragma nest pas saisie correctement. Vrifiez si '<Nom>' est un drapeau valide.
4521
" Erreur dans la directive pour le compilateur: Elment inattendu '<nom>'! "
Vrifiez la composition correcte de la pragma.
4522
" Directive 'flag off' attendue! "
La dsactivation de la pragma manque, insrez une instruction 'flag off'.
4550
" Indice indfiniss : Variable LdO '<numro>', ligne '<numro>' "
Assurez-vous que lindex soit situ dans la zone dfinie dans la configuration du systme cible / Fonctions
rseau.
4551
" Subindice indfiniss : Variable LdO '<numro>', ligne '<numro>'"
Assurez-vous que le sous-index soit situ dans la zone dfinie dans la configuration du systme
cible / Fonctions rseau.
CoDeSys V2.3
10-143
Combinaisons de touches
4552
"Indice indfiniss : Parameter LdO '<numro>', ligne '<numro>'"
Assurez-vous que lindex soit situ dans la zone dfinie dans la configuration du systme cible / Fonctions
rseau.
4553
"Subindice indfiniss : Parameter LdO '<numro>', ligne '<numro>'"
Assurez-vous que le sous-index soit situ dans la zone dfinie dans la configuration du systme
cible / Fonctions rseau.
4554
" Nome de variable invalide: Variable LdO '<numro>', ligne '<numro>' "
Entrez une variable de projet valide dans le champ Variable. Utilisez le format dcriture <Nom du module>
<Nom de la variable> ou <Nom de la variable> pour les variables globales.
4555
Insrez un valeur, n'est pas optional: Parameter OD '<numro>', ligne '<numro>'
Vous devez procder une saisie dans ce champ.
4556
" Insrez un valeur, n'est pas optional: Variable OD <nom>, ligne <nom>"
Vous devez procder une saisie dans ce champ.
4557
"Le mmoire de paramtres ncessaire est trop long."
La taille maximale dfinie par le systme cible pour les donnes de type paramtre pouvant tre charges via
la liste des paramtres de type a t dpasse. Une dition de la taille des donnes saffiche dans la fentre
dinformation lors de la compilation du projet. Rduisez le volume des listes de paramtres.
4558
"Le mmoire de variables ncessaire est trop grand."
La taille maximale dfinie par le systme cible pour les donnes de type paramtre pouvant tre charges via
la liste des paramtres de type a t dpasse. Une dition de la taille des donnes saffiche dans la fentre
dinformation lors de la compilation du projet. Rduisez le volume des listes de paramtres.
4560
" Valeur invalide: Rpertoire '<nom>', colonne '<nom>', ligne '<nombre>'"
Contrlez la saisie. Les donnes autorises pour ce champ dpendent de la dfinition de la colonne (attribut)
dans le fichier de description XML spcifique au systme cible du gestionnaire des paramtres, respectivement
des rglages standard utiliss lorsquaucun fichier de description nest disponible.
4561
"Colonne pas dfinie: '<nom>'"
Des saisies entres dans la colonne de la liste des paramtres se rapportent la colonne mentionne, qui nest
toutefois pas dfinie. Les dfinitions de colonne sont contenues dans le fichier de description (XML) du
gestionnaire des paramtres pour le systme cible actuel. Si un tel fichier nest pas disponible, les rglages
standard sappliquent.
4562
"L'index/sous-index '<nom>' est dj en utilisation: rpertoire '<nom>', ligne '<nombre>'"
Un appariement index/sous-index doit tre univoque au sein de toutes les listes des paramtres, tant donn
quil peut tre utilis pour laccs. Modifiez lindexation de faon approprie.
4563
"Le nom '<nom>' est dj en utilisation: rpertoire '<nom>', ligne '<nombre>'"
Le nom dune donne introduite doit tre univoque au sein de toutes les listes des paramtres, tant donn quil
peut tre utilis pour laccs. Utilisez un autre nom.
10-144
CoDeSys V2.3
10 - APPENDICE
4564
"Index <nom> nicht in erlaubtem Bereich: Verzeichnis <nom> , Zeile '<Zeilennummer>' "
Entrez dans ce champ un index se trouvant lintrieur de la plage dfinie dans Paramtres de la cible,
catgorie 'Fonctions de rseau' dans les Zones dindex' pour le prsent type de liste (variables, paramtres,
mappages).
4565
"Subindice indfiniss : Variable LdO <nombre>, ligne <nombre>"
Entrez dans ce champ un sub-index se trouvant lintrieur de la plage dfinie dans Paramtres de la cible,
catgorie 'Fonctions de rseau' comme 'Zones de sub-index'.
4566
"Erreur en important le manager des paramtres"
Vous avez import un fichier dexportation dans le projet qui contient des informations errones sur le
gestionnaire des paramtres. Vrifiez le fichier *.exp dans cette optique.
4600
"Variables de rseau: '<nom>' n'est pas d'expression boolenne!"
Assurez-vous que la variable indique dans loption 'Transmission dclenche par vnement' de la bote de
dialogue des caractristiques dune liste de variables rseau, soit de type BOOL.
4620
Des variables non utilises ont t trouves dans le projet. Veuillez vous rfrer ce propos la description de
la commande 'Projet' 'Vrifier' 'Variables inutilises' dans le chapitre 4.3.
4621
Des chevauchements ont t constats dans certaines zones de mmoire lors de lattribution de variables au
moyen de la dclaration AT . Veuillez vous rfrer ce propos la description de la commande 'Projet'
'Vrifier' 'Zones de mmoire imbriques' dans le chapitre 4.3.
4622
Des adresses CEI renvoyant la mme zone de mmoire sont rfrences dans plus dune tche. Veuillez
vous rfrer ce propos la description de la commande 'Projet' 'Vrifier' 'Accs concurrant' dans le chapitre
4.3.
4623
Plusieurs accs criture ont lieu sur plus dun emplacement de la mme zone de mmoire. Veuillez vous
rfrer ce propos la description de la commande 'Projet' 'Vrifier' 'Ecriture multiple sur la sortie' dans le
chapitre 4.3.
4650
"AxisGroup '<nom>': Tche '<nom>' n'existe pas. "
Un nom inconnu dans la configuration des tches est donn dans la configuration de l'automate, dans la
dfinition du groupe daxes (bote de dialogue 'Module parameters', colonne Value) pour la tche qui
commande le transfert des donnes du groupe daxes. Corrigez la configuration de la tche ou de l'automate
de faon approprie.
4651
"AxisGroup '<nom>': Temps de cycle (dwCycle) pas ajust."
Introduisez une valeur dans la configuration de l'automate pour le temps de cycle (dwCycle) dans la bote de
dialogue 'Paramtre de module' du groupe daxes.
4670
"Programme CNC '<nom>': Variable globale '<nom>' pas trouve."
Une variable globale (p. ex. $glob_var$) qui nest pas dfinie dans le projet est utilise dans le programme
CNC. Dclarez lattribution de la variable ou corrigez-la de faon approprie dans le programme CNC.
CoDeSys V2.3
10-145
Combinaisons de touches
4671
"Programme CNC '<nom>': Variable '<nom>' a un faux type."
Vous utilisez dans le programme CNC une variable pour un ordre de dplacement qui est dclare avec un
type non autoris cet endroit. Corrigez lutilisation ou la dclaration de type.
4685
"Came '<nom>': Type de donnes du tableau de points d'appui inconnu."
Vrifiez le type de donnes introduit dans la bote de dialogue 'Option de traduction' de lditeur CAM pour le
tableau de points dappui quidistant ou optimis en fonction des lments.
4686
" Came '<nom>': Point d'appui excde zone des types de donnes"
Des points dappui dpassant la plage de donnes dfinie pour le tableau de points dappui sont utiliss dans la
came. Veuillez voir ce propos la dfinition dans la bote de dialogue 'Options de traduction' dans lditeur
CAM.
4700
"'<Nombre>' ('<nom>'): Expression d'espionnage '<nom>' n'est pas de variable numrique."
Vous utilisez dans la configuration de la visualisation une variable qui nest dfinie par aucun chiffre, bien que ce
soit exig cet endroit (p. ex. lors de la configuration de la variable XOffset ou dangle, etc.)
4701
"'<nom>' ('<nombre>'): L'expression d'espion '<nom>' n'est pas de type boolen"
Vous utilisez dans la configuration de la visualisation une variable qui nest pas de type BOOL, bien que ceci
soit exig cet endroit.
4702
"<nom> ('<nombre>'): L'expression d'espion '<nom>' nest pas de type STRING."
Vous utilisez dans la configuration de la visualisation une variable qui nest pas de type STRING, bien que ceci
soit exig cet endroit.
4703
"'<nom>' ('<nombre>' ): Expression d'espionnage invalide '<nom>' "
La visualisation contient une variable invalide.
4704
"<nom>(<nombre>): Valeur initiale errone dans la liste d'espionnage <nom>."
Une valeur initiale errone est contenue dans une liste despionnage visualise (ordre INTERNE dans la
catgorie Entre). Vrifiez la liste utilise.
4705
"<nom> (<nombre>): Le tableau dalarmes nest pas un groupe dalarmes ordonn <nom>."
Dfinissez un groupe dalarmes valable dans la bote de dialogue de la configuration du tableau dalarmes,
dans la catgorie 'Tableau dalarmes'.
4900
"Type invalide pour conversion"
Une conversion de type qui n'est pas supporte par le gnrateur de code configur a t utilise.
4901
"Erreur interne: dpassement de capacit dans 'array access'!"
Les limites du tableau sont trop leves pour une variable de 32 bits. Rduisez la zone dindex de larray.
10-146
CoDeSys V2.3
11 - Index
11 Index
3
3S Licensing Manager 9-1
8
8051 et compatibles 10-98
A
ABS 10-20
Accder au systme 4-70
Accepter lment chang 4-44
Accepter les caractristiques 4-44
Accepter les droits d accs 4-44
Accepter les parties changes 4-44
Accs concurrent 4-13, 4-48
ACOS 10-23
Action 2-6, 2-17, 4-62
Action de sortie 2-18, 5-58
Action d'entre 2-18, 5-58
Actions cachent les programmes
Actions pour alarmes 6-12
Actions synchrones 6-79
Activer la variable du systme 'CurrentVisu' 10-105
Activer/Dsactiver tche 6-62
Actualiser le statut 4-55
ADD 10-1
ADR 10-13
Adressage de bits au sein de variables 10-30
Adressage par octets 10-101
Adresse
Esclave DeviceNet 6-51
Fonction 10-14
Matre DeviceNet 6-50
Adresse 10-101
Adresse dentre
Matre DeviceNet 6-50
Adresse dune instance 10-13
Adresse de diagnose 6-29
Adresse de diagnostic
Matre DeviceNet 6-50
Adresse de sortie
Matre DeviceNet 6-50
Adresse de sortie 6-29
Adresse d'entre 6-29
Adresses
Changer automatiquement 6-29
Adresses 10-32
ADRINST 10-13
Affectation 2-11, 5-32
Affichage 5-34
Afficher curseur 6-69
Afficher hirarchie d appel 6-62
Afficher l histoire de la version 4-52
Afficher la zone d'impression 4-8
Afficher les diffrences 4-52
Afficher les messages de diagnose 6-55
Afficher les symboles des units de programmation 4-6
Aide adapte au contexte 4-88
Ajouter appel de programme 6-59
Ajouter au module 5-40
Ajouter fichier de configuration 6-26
Ajouter sous-lment 6-57
CoDeSys V2.3
B
Barre de fractionnement 4-2
Barre de menus 4-1
Barre d'tat 4-3, 4-8
Barre d'outils 4-2, 4-8
Base 10-98
Base de donnes de projet
Catgories 7-3
Travailler avec 7-2
Base de donnees du projet
Fonctions automatiques 4-19
Options pour les Objects communs 4-19
Options pour les Objets de Projet 4-19
Base de donnes du projet
Options pour les fichiers de compilation 4-21
Base de donnes du projet 4-17, 4-21
BCD_TO_INT 10-57
Bibliothque
Insrer 6-20
I
Index
Bibliothque
Dfinir 6-20
Bibliothque 2-8, 4-26
Bibliothque
Licence 6-21
Bibliothque
Enlever 6-21
Bibliothque
Information de License 6-21
Bibliothque des macros 4-23
Bibliothque externe 4-26, 6-20
Bibliothque interne 4-26, 6-20
Bibliothque SFC 2-19
Bibliothque soumise licence 9-1
Bibliothque standard 6-20
bibliothques 6-19
Bibliothques
Modules 10-69
BITADR 10-14
Bits 4-6
BLINK 10-62
Bloc avec EN 5-40
Bloc fonctionnel
dans le rseau LD 2-24
instance 2-3
Bloc fonctionnel 2-2
Bloc fonctionnel en LD 5-39
Bobinage 2-24, 5-38, 5-39
Bobinage SET/RESET 2-24, 2-25
Bote de dialogue de la configuration du systme cible 683
BOOL 10-35
Boucle 2-11, 2-12
Branche parallele 5-59
BY 2-15
BYTE 10-35
C
CAL 10-14
Calcule les adresses 6-27
Calculer les adresses automatiquement 6-27
CAN
Service Data Objects 6-45
CAN 6-49
CAN environnement 6-5
Canal
Paramtre de base 6-32
Paramtre voie 6-32
Canal 6-32
Canal de Gateway 4-83
Canal Gateway 4-84
Canaux binaires 6-32
CAN-Configuration 6-40
CANDevcice
Dfault PDO-Mapping CANDevice 6-48
CANDevice
Configuration CAN 6-47
Configuration de base 6-46
CANDevice 6-46
CAN-Matre
Paramtres de base 6-40
CANopen 10-101
CANopen Esclave 6-46
Caractres 4-6
Caractristiques CFC 5-48
Caractristiques d objet
Outils 6-88
II
11 - Index
Commandes
PLC-Browser 6-84
Commentaire
Module 6-29
Commentaire 5-10, 5-26, 5-30, 5-38, 5-60
Commentaire de rseau 5-26, 5-30, 5-38
Commentaire en CFC 5-45
Commentaires 5-1
Communication
paramtres 4-8
Commutation vers une autre langue 4-34
Commuter traduction 4-37
Comparaison de projets
Ignorer les caractristiques 4-40
Prochaine diffrence 4-44
Raliser 4-40
Travailler en mode de comparaison 4-43
Visualisation des rsultats 4-41
Comparaison de projets 4-40
Comparer au projet ENI 4-40
Compiler 4-31
Compiler LREAL comme REAL 4-13
Compiler tout 4-32
Composition de la mmoire 10-98
Compresser 6-71
CONCAT 10-47
Concatnation 10-47
Configurable 10-101
Configurateur de tches
Travailler avec 6-56
Configurateur de tches 6-56
Configuration dexpert pour un Esclave DeviceNet 6-51
Configuration de l automate
Calcule les adresses 6-27
Calculer les adresses automatiquement 6-27
Convertir 6-27
Settings 6-27
Vrifier superposition d'addresses 6-27
Configuration de lautomate V2.1 6-24
Configuration de l'alarme
Classes d'alarme 6-12
Date/Temps 6-18
Enregistrement de l'alarme 6-17
Groupes d'alarme 6-16
Langage 6-18
Configuration de l'alarme 6-10
Configuration de l'alarme 6-16
Configuration de l'alarme 6-17
Configuration de l'automate
canal 6-32
Canaux binaires 6-32
Custom Parameters 6-28
Exporter module 6-27
Importer le module 6-27
Insrer les lments 6-26
mode en ligne 6-54
nom symbolique 6-26
Remplacer lment 6-26
Retour la configuration par dfaut 6-27
Slection 6-25
Configuration de l'automate configurable 6-24
Configuration de l'automation
Canal 6-32
Configuration de symbole 4-16
Configuration des symboles du fichier INI 10-102
Configuration des tches
Afficher hirarchie d appel 6-62
en mode En Ligne 6-60
CoDeSys V2.3
Index
D
DATE 10-36
DATE_AND_TIME 10-36
DCF 6-40
DDE 8-1, 8-2, 8-4
Dbogage 2-26, 4-12, 5-21, 5-29
Dcalage 10-6
Dclaration
Array 5-9
tableau 5-9
Dclaration AT 5-7
Dclaration de fonction 2-1
Dclaration de variables 5-6
Dclaration variables 4-70
Dclarations sous forme de tableau 5-10
Dclarer automatiquement 4-6, 5-8
Dclencheur 6-66
Dfault PDO-Mapping CANDevice 6-48
Dfinir 4-51
Dfinir des rpertoires 10-79
Dfinir tche de dbogage 6-62
Dfinition multiple 4-53
DELETE 10-47
Dmarrer 4-73
Dplacer dans CFC 5-48
DERIVATIVE 10-59
Dernire version 4-51
Dernires versions 4-53
Dsactiver la gnration de tches 10-105
Dtection de fronts descendants dans LD 5-40
Dtection de fronts montants dans LD 5-40
Dvelopper 4-57
DeviceNet 6-49
IV
E
Echelles d'affectation 5-33
Ecrire DCF 6-42
Ecrire des valeurs 6-80
Ecrire des valeurs de default 6-80
Ecrire la recette 6-65
Ecrire le fichier dans l automate 4-86
Ecrire liste 6-80
crire valeurs des variables 4-76
Ecrire/Forcer Dialogue 4-79
Ecriture multiple sur la sortie 4-13, 4-48
Editer listes de paramtres
Editer 6-79
Editer objet 4-60
Editeur 4-6
Editeur de dclaration 5-3
Editeur du langage contacts 5-36
Editeur du langage FBD 5-30
Editeur pour langage IL 5-24
Editeur pour langage ST 2-11, 5-25
Editeur SFC 5-57
Editeurs
Structure dun diteur 5-1
CoDeSys V2.3
11 - Index
Editeurs 5-1
Editeurs 5-3
Editeurs 5-24
Editeurs 5-25
Editeurs graphiques 5-26
Editeurs littraux 5-20, 5-26
dition des listes de variables globales 6-7
EDS 6-40
Effacer ligne 6-79
Effacer une action 5-60
Effacer une tape et une transition 5-57
Effacer une tiquette d'un saut 5-59
Effacer une transition 5-60
ELSE 2-14
ELSIF 2-14
Emergency Telegram 6-42
En ligne
Paramtres de communication 4-82
En ligne 1-1, 1-2, 3-12
En ligne 5-21
En ligne 5-29
En ligne 6-63
En ligne 6-64
EN/ENO en CFC 5-47
END_CASE 2-14
END_FOR 2-15
END_FUNCTION_BLOCK 2-2
END_IF 2-14
END_PROGRAM 2-5
END_REPEAT 2-16
END_TYPE 10-40, 10-41
END_VAR 5-3, 5-5
END_WHILE 2-15
Engineering Interface ENI 4-17, 4-19, 4-21
ENI
Catgorie dobjet 7-3
ENI 4-40, 4-49, 7-2
ENI Base de donnes du projet
Options 4-17
ENI Server 7-1
ENI Server Suite 7-1
Enlever une bibliothque 6-21
Enonc 2-11, 2-12
Enonc CASE 2-14
Enonc d'itration FOR 2-11, 2-15
Enonc d'itration REPEAT 2-16
Enonc d'itration WHILE 2-11, 2-15
Enonc IF 2-11, 2-14
Enregistrement automatique 4-4
Enregistrement de l'alarme 6-17
Enregistrement des donnes de tendance dans
l'automate 10-104
Enregistrement des donnes de tendance dans
l'automate 10-104
Enregistrement des histogrammes 6-65
Enregistrer 4-25, 10-102
Enregistrer archive/envoyer 4-26
Enregistrer avant compilation 4-12
Enregistrer dans le fichier 6-72
Enregistrer histogramme 6-72
Enregistrer la configuration de l'histogramme 6-66
Enregistrer les valeurs de l'histogramme 6-71
Enregistrer les valeurs de l'histogramme' 6-71
Enregistrer liste d'espion 6-64
Enregistrer une bibliothque 6-20
Entre de module en CFC 5-33, 5-45
Entre EN 2-25, 5-39
Entre en CFC 5-45
CoDeSys V2.3
F
F_TRIG 10-51
F4 4-8
F4 ignore les avertissements 4-8
FBD 2-23
Fentre 4-87
Fentre de messages 4-3
Fentre rubriques d'aide 4-88
Fermer fichier 4-25
Fichier 4-23
Fichier *.tnf 6-82
Fichier asl 4-5
V
Index
G
Gateway 4-81
Gateway DDE 8-2, 8-4
Gateway-Server 4-83
GE 10-11
GEN 10-63
Gnral 10-101
Gnrer des entres de symboles 4-16
Gnrer un tableau XML 4-16
Gestion de version 7-1
Gestion des bibliothques 3-3
Gestionnaire d'Aide
Image non structure 4-68
Image structure 4-68
Gestionnaire de bibliothques 6-19
Gestionnaire de bibliothques
Proprits d une bibliothque 6-21
Gestionnaire de recettes 6-62
Gestionnaire des tches 6-55
Gestionnaire d'espion et de recettes 6-62
Gestionnaire d'espion et de recettes en mode En Ligne
6-63, 6-64
VI
Glisser-Dplacer 4-56
Graduation Y 6-70
Grille 6-70
Groupe d'alarme 6-10
Groupes d'alarme 6-16
GT 10-11
H
Hauteur d'affichage en pixel 10-104
heartbeat 6-48
Heartbeat 6-42
Hirarchie d'appel 4-80
Histogramme
Charger de l'automate 6-72
Charger du fichier 6-72
Enregistrer les valeurs 6-71
Histogramme 6-65
Histogramme 10-102
Histogramme en fichier ASCII 6-71
Historique 6-17
Hitachi SH 10-97
HYSTERESIS 10-66
I
ID de nud 6-42
identifier
offline tooltip 5-2
IF 2-14
Ignorer les caractristiques 4-40
IL 2-2, 2-3, 2-9, 4-74, 5-24
Image non structure 4-68
Image structure 4-68
Importation dun module 6-27
Importation de fichiers Siemens 10-85
Importer 4-39, 6-81
Importer module 6-27
Importer un fichier S5 10-86
Importer un fichier SEQ 10-85
Importer un fichier Siemens 4-39
Imprimer 4-29
Index/Sub-index pour les paramtres 10-103
INDEXOF 10-4
Infineon C16x 10-94
Info
Esclave DeviceNet 6-51
Info-bulle 4-2, 5-21, 5-29, 5-35, 5-42
informations de download 4-33
Informations du systme cible 6-54
Informations sur le projet 4-4, 4-44
Informations utilisateur 4-6
Infos relatives la licence 4-46
Inhibit Time 6-44
Initialisation 5-6
Initialisation de variables rmanentes 10-25
Initialiser les entres 10-102
Initialiser zro 10-101
Insrer
Timer (TON) dans LD 5-40
Insrer
Reset-Bobinage 5-39
'Bobinage 5-39
Commentaire 5-27
Dtection de fronts descendants dans LD 5-40
Dtection de fronts montants dans LD 5-40
Nouvelle dclaration 5-10
Insrer appel de programme 6-59
CoDeSys V2.3
11 - Index
J
Journal
Enregistrer 6-23
Menu 6-23
Journal 6-21
Journal du projet 6-23
L
Lancer 4-73
Lancer l'histogramme 6-68, 6-69
Langage 6-18
Langage contacts (LD) 2-23, 4-74, 5-36
Langage CFC 2-23
Langage FBD 2-3, 2-23, 4-74, 5-30
Langage IL 2-2, 2-3
Langage LD 2-23, 4-74, 5-36
Langage ST 2-3, 2-11, 4-74, 5-25
Langue 4-9
Largeur d'affichage en pixel 10-104
Largeur de tabulation 4-6
L'attribution de licences
Cration d'une bibliothque soumise licence 9-1
Editer les informations sur lattribution dune licence 91
L'attribution de licences 9-1
LD
CoDeSys V2.3
adresse 5-28
Ajouter au module 5-40
Bloc avec EN 5-40
Bloc fonctionnel 5-39
Bobinage 5-38
Commentaires par contact 5-27, 5-28
Contact 5-37, 5-38
Contact parallle 5-38
Dplacer des lments 5-37
Entre EN 5-39
Insrer ci-dessous 5-41
Insrer ci-dessus 5-41
Insrer un commentaire 5-27
Ngation 5-41
Positions du curseur 5-36
LD 5-36
LE 10-11
lecsfc.lib 2-19
Lecture automatique de l'histogramme 6-68
LEFT 10-45
LEN 10-45
Liaison la base de donnes 4-49
Liaison au contrle de ressources
Proprits de lobjet 4-61
Librarie
SysTaskInfo.lib 6-60
SysTime.lib 6-60
Licence
Bibliothque 6-21
Licence 9-1
Licence 9-1
Licence info 4-46
Life Time Factor 6-42
Ligne aprs 6-79
LIMIT 10-10
LIMITALARM 10-66
LIN_TRAFO 10-59
Lire la recette 6-65
Lire l'histogramme 6-66, 6-68
Lire liste 6-80
Liste de slection pour l'dition 4-67
Liste de variables globales 6-3
Liste des rfrences croises 4-63
Liste d'espion 6-62
Liste d'instructions-IL 2-9, 4-74, 5-24
Lister les composants 4-6
Listes de paramtres
Appliquer des valeurs 6-80
Copier 6-79
Couper 6-79
Download 6-80
Ecrire des valeurs 6-80
Ecrire des valeurs de default 6-80
Ecrire liste 6-80
Effacer 6-79
Effacer ligne 6-79
Exporter 6-82
Importer 6-82
Insrer 6-78
Insrer ligne 6-79
Insrer rpertoire 6-79
Instance 6-75
Ligne aprs 6-79
Lire liste 6-80
Mappage 6-75
Modele 6-75
Nouvelle ligne 6-79
Paramtres 6-75
VII
Index
M
Macro 4-13
Macro aprs la compilation 4-13
Macro avant la compilation 4-13
Macro en CFC 5-53, 5-54, 5-55
Macros
Bibliothque 4-23
Macros 4-22
Macros 4-70
Macros en PLC-Browser 6-86
Matre CAN
Paramtre CAN 6-41
Matre DeviceNet
Paramtre de base 6-50
Paramtres 6-50
Paramtres de module 6-50, 6-54
Manager des paramtres
Editeur 6-75
Manager des paramtres
Activer 6-74
Attributes 6-73
Liste des paramtres 6-73
Mappages pour CAN device PDO 6-74
Manager des paramtres
Mode en ligne 6-80
Manager des paramtres
Download et Upload 6-80
Manager des paramtres 10-103
Mappage 6-49, 6-75
Mappage PDO 6-75
Mappages pour CAN device PDO 6-74
Marquage 4-6
Matrice 6-70
MAX 10-9
Mmento 10-32
Mmoire 10-98
Menu Aide
Sommaire et Index 4-88
Menu contextuel 4-3
Menu Editer
Coller 4-66, 5-35, 5-42
Copier 4-65
Couper 4-65, 5-35, 5-42
Dclaration variables 4-70
Erreur prcdente 4-70
VIII
11 - Index
Index
N
NE 10-12
Ne pas changer les adresses automatiquement 6-29
Ngation CFC 5-46
Ngation en langage FBD 5-34
Ngation en langage LD 5-41
Niveau d'accs 4-48
Niveau du dclencheur 6-66
Nodeguarding 6-42
Node-ID
Matre DeviceNet 6-50
Nom d'instance 2-3
Nom symbolique 6-26
Nombre de segments de donnes 4-13
Nombre max. de blocs fonctionnels 10-98
Nombre max. de segments de donnes globales 10-98
X
nonpersistante
Pragma 5-20
NOT 10-6
notargetchange (ligne de commande) 10-75
Nouveau dossier 4-57
Nouveau fichier 4-23
Nouvelle dclaration 5-10, 5-11
Nouvelle ligne 6-79
Nouvelle liste d'espion 6-63
Numriser la configuration du module 6-55
Numro Sync's 6-44
Numros de ligne 5-10
Numros de ligne de l'diteur littral 5-24
O
Objet 2-1, 4-56
Objet de visualisation
Proprits 4-61
Objet Proprits 4-60
OF 2-14
Online Change 4-31, 4-70, 10-101
Oprande 2-1, 5-21
Oprande du langage ST 2-11
Oprateur dinitialisation 10-25
Oprateur d'affectation 2-13
Oprateur de contenu 10-14, 10-38
Oprateur du langage ST 2-11
Oprateur en langage IL 2-9
Oprateur INI 10-25
Oprateurs
Aperu 10-69
Oprateurs 5-20
Oprateurs et modules de bibliothques 10-69
Opration en ligne en mode scurit 4-8
Options
Base de donnes du projet 4-17
Compilation 4-12
Configuration de symbole 4-16
Couleurs 4-9
d'diteur 4-6
Download Sourcecode 4-15
Editeur 4-6
Environnement de travail 4-8
Informations utilisateur 4-6
Macros 4-22
Mots de passe 4-14
Ouvrir & Fermer 4-4
Rpertoires 4-10
Options 4-3
Options 4-9
Options SFC 5-61
OR 10-5
Ordre d'excution dans l'diteur CFC 5-50
Ordre initial 5-11
Organisateur d'objets 4-2
Outils
Caractristiques d objet 6-88
Enregistrement de liens 6-92
Excution de liens 6-92
nouveaux liens 6-91
Supprimer des liens 6-91
Outils 6-87
Ouvrir & Fermer 4-4
Ouvrir fichier 4-23
Ouvrir linstance 5-2
Ouvrir l'intance 4-62
CoDeSys V2.3
11 - Index
P
PACK 10-58
Paramtrage spcifique l'application 6-28
Paramtre CAN d un CAN-Esclave 6-42
Paramtre CAN d un Matre CAN 6-41
Paramtre de base
Matre DeviceNet 6-50
Paramtre de base d un canal 6-32
Paramtre de base d un DP-Matre 6-33
Paramtre de bus dun DP-Matre 6-35
Paramtre de module d un DP-Esclave 6-40
Paramtre DP d un DP-Matre 6-33
Paramtre voie d un canal 6-32
Paramtres
Esclave DeviceNet 6-54
Matre DeviceNet 6-50
Paramtres de base
Esclave DeviceNet 6-50
Paramtres de base d un CAN-Matre 6-40
Paramtres de base d un module CAN 6-42
Paramtres de base d un module E/S 6-29
Paramtres de communication
Canal Gateway 4-84
Check 4-85
Indications pour l'diter 4-85
Slection de Gateway-Server 4-83
Paramtres de communication 4-8, 4-81, 4-82
Paramtres de module
Matre DeviceNet 6-50, 6-54
Partie de dclaration 2-1, 5-3, 5-24, 5-25, 5-36, 5-57
Pas pas 2-26, 4-75, 5-21, 5-29, 5-62
Pas de vrification dadresse 10-101
Pas initialiser 6-42
PD 10-61
PDO 6-44
persist.dat 5-20
persistante 5-20
PID 10-62
PLC_PRG 2-6
PLC-Browser
Annuler la commande 6-87
commandes 6-84
Enregistrer la liste du protocole 6-87
Imprimer la dernire commande 6-87
Macros 6-86
PLC-Browser 6-83
Protocole en sens avant 6-87
Protocole en sens inverse 6-87
PLC-Browser 6-83
PLC-Browser 10-102
Point d'arrt 1-1, 2-26, 4-74, 5-21, 5-23, 5-29, 5-62
POINTER 10-38
Pointeur
Contrle dadresse 10-39
Contrle dalignement 10-39
Pointeur 10-38
Position du dclencheur 6-66
Position point d'arrt 4-74
Positions des points d'arrt dans l'diteur littral 5-22
Power PC 10-95
Pragma
Gestionnaire des paramtres 5-15
nonpersistante 5-20
Pragma 4-17, 5-12
Pragma 6-73
Pragma {nonpersistante} 5-20
CoDeSys V2.3
Q
Qualificatif 2-20
Qualificatif pour tapes CEI 2-20
Quitter 4-31
Quitter le systme 4-73
R
R_TRIG 10-50
Racine carre 10-21
RAMP_INT 10-65
RAMP_REAL 10-66
REAL 10-35
Raliser un Comparaison de projets 4-40
Recevoir mappage PDO 6-44
Recherche globale 4-46
Rechercher
Bibliothque 6-21
Rechercher 4-66
Rduire 4-57
Refaire 4-65
Rfrences 10-41
Relier action en SFC 5-62
Remettre le squencement par un 5-52
Remplacer 4-47, 4-67
Remplacer lment 6-26
Renommer liste d'espion 6-64
Renommer listes de paramtres 6-79
Renommer objet 4-59
Rorganiser tout 4-32
REPEAT 2-11, 2-16
Rpertoire 4-10
Rpertoire de bibliothques 6-20
Rpertoire des fichiers de visualisation 4-10
Rpertoires des fichiers gnral 4-10
Rpertoires du Projet 4-10
Rpertoires du System cible 4-10
REPLACE 10-48
Reprsentation MDI 4-8
Rseau 5-26, 5-30, 5-38
Reseau (aprs) 5-37
Reseau (devant) 5-37
XI
Index
S
Saut 2-23, 5-32
Saut en CFC 5-45
Saut en LD 5-41
Saut en SFC 5-57, 5-58
Sauvegarde de fichier 4-14
Schma en blocs fonctionnels 2-3, 2-23, 4-74, 5-30
SEL 10-9
Slctionner dans CFC 5-48
Slectionner en SFC 5-57
Slectionner fichier cadre pour la documentation 6-10
Slectionner fichier dexportation 6-27
Slectionner tout en CFC 5-48
SEMA 10-50
Squence alternative en rseau SFC 2-22, 5-57, 5-58
Squence parallle en rseau SFC 5-58
Squence parallle gauche en rseau SFC 5-58
Squence simultane en rseau SFC 2-22
Serveur Gateway 4-83
Service Data Objects 6-45
Set sortie 5-34, 5-41
Set/Reset en CFC 5-46
SFC
Effacer une tape et une transition 5-57
Effacer une tiquette d'un saut 5-59
Mode en ligne 5-62
Options 5-61
SFC 2-1, 2-3, 2-17, 4-74, 5-57
SFCCurrentStep 2-21
SFCEnableLimit 2-21
SFCError 2-21
SFCErrorAnalyzation 2-21
SFCErrorPOU 2-21
SFCErrorStep 2-21
SFCInit 2-21
SFCPause 2-21
SFCQuitError 2-21
SFCReset 2-21
SFCTip 2-21
SFCTipMode 2-21
SFCTrans 2-21
XII
SHL 10-6
SHR 10-7
Siemens 10-85
Siemens Import 4-39
Simulation 2-27, 4-70, 4-80
SIN 10-22
SINT 10-35
Sinus 10-22
SIZEOF 10-4
Softmotion 10-102
Sortie en CFC 5-45
Sortie en langage FBD 5-33
Sourcedownload 4-15
Sous-tat d'alarme 6-11
SQRT 10-21
SR 10-49
ST
Appel de module avec paramtres de sortie 5-21
ST 5-21
standard.lib 6-20
STATISTICS_INT 10-60
STATISTICS_REAL 10-60
Statistique 4-44
STRING 10-35
STRUCT 10-40
Structure 2-1
Structures 10-40
SUB 10-2
Supporter manager des paramtres 6-74, 10-103
Supporter variables du rseau 10-103
Suppression de la rfrence 10-14, 10-38
Supprimer 4-66, 5-35, 5-42
Supprimer des liaisons dans l'diteur CFC 5-49
Supprimer le monitoring de types complexes 4-6
Supprimer liste 6-80
Supprimer un objet 4-57
Surveillance 2-26
Surveillance des temps dans l'diteur SFC 5-61
Symbole 4-16
Symboles 10-102
SysTaskInfo.lib 6-60
Systme cible
8051 et compatibles 10-98
Composition de la mmoire 10-98
Fonctions rseau 10-103
Gnral 10-101
Hitachi SH 10-97
Infineon C16x 10-94
Intel 386 et compatibles 10-92
Intel StrongARM 10-95
MIPS III ISA 10-96
Motorola 68K 10-93
Power PC 10-95
Visualisation 10-104
Systme cible 6-82, 6-83
SysTime.lib 6-60
T
Tableau
CheckBounds 10-37
Tableau 10-37
Tableau de dclaration 5-10
Tabulation 4-6
Tche
Ajouter appel de programme 6-59
vnements dans le systme 6-59
Insrer 6-57
CoDeSys V2.3
11 - Index
U
UCMM 6-51
UDINT 10-35
UDP environnement 6-5
UINT 10-35
UNPACK 10-58
UNTIL 2-16
USINT 10-35
Util.lib 10-57
CoDeSys V2.3
V
Valeur absolue 10-20
Valeur des bits 4-6
Valeurs dans le fichier ASCII 6-71
VAR 5-4, 5-8
VAR EXTERNAL 5-6
VAR_ACCESS 6-2
VAR_CONFIG 6-2
VAR_GLOBAL 5-8, 6-2, 6-7
VAR_IN_OUT 5-4
VAR_IN_OUT comme rfrence 10-102
VAR_INOUT 5-8
VAR_INPUT 5-3, 5-8
VAR_INPUT CONSTANT 5-48
VAR_OUTPUT 5-4, 5-8
Variable Configuration 6-8
Variable d'histogramme 6-68
Variable locale 5-4
Variable rmanente 5-5
Variables 5-3, 10-29
Variables de sortie 5-4
Variables d'entre 5-3
Variables d'entre-sortie 5-4
Variables du rseau 10-103
Variables externes 5-6
Variables globales
Configurer 6-3
Cration 6-3
Objets 6-2
Variables globales 6-2
Variables globales 6-3
Variables globales 6-3
Variables globales rmanentes 6-7
Variables implicites en SFC 2-20
Variables inutilises 4-13, 4-47
Variables rseau 6-3
Variables rseau globales 6-7
VARIANCE 10-61
Vendeur ID 9-1
Vrifier automatiquement 4-13
Vrifier ID du vendeur pour un Esclave DeviceNet 6-51
Vrifier superposition d'addresses 6-27
Vrifier tout 4-47
Verrouillage/Dverouillage 5-34
Version 2.1 4-25
Version 2.2 4-25
Version compilateur 4-13
VISU_INPUT_TASK 10-105
Visualisation
Mise en page matre 4-61
Visualisation 2-8, 4-2
Visualisation 10-104
Visualisation des rsultats de la comparaison 4-41
Visualisation sur la cible
Proprits de lobjet 4-61
Visualisation sur la cible 10-105
Visualisation sur le web
Proprits de lobjet 4-61
Visualisation sur le Web 10-105
XIII
Index
W
WHILE 2-15
WORD 10-35
X
XML-Encoding 4-9
XOR 10-5
xyz 4-12
XIV
Z
Zone d'impression 4-8, 5-1
Zones de mmoire superposes 4-13, 4-47
Zoom 5-26
Zoom action 5-59
Zoom sur module appel 5-2, 5-34, 5-42, 5-56
Zoom transition 5-59
CoDeSys V2.3