Schneider Electric Modicon M238 Logic Controller - Fonctions système et variables Mode d'emploi

Ajouter à Mes manuels
90 Des pages
Schneider Electric Modicon M238 Logic Controller - Fonctions système et variables Mode d'emploi | Fixfr
Modicon M238 Logic Controller
EIO0000000757 11/2015
Modicon M238 Logic
Controller
Fonctions et variables système
M238 - Guide de la bibliothèque
PLCSystem
EIO0000000757.09
11/2015
www.schneider-electric.com
Le présent document comprend des descriptions générales et/ou des caractéristiques techniques
des produits mentionnés. Il ne peut pas être utilisé pour définir ou déterminer l'adéquation ou la
fiabilité de ces produits pour des applications utilisateur spécifiques. Il incombe à chaque utilisateur
ou intégrateur de réaliser l'analyse de risques complète et appropriée, l'évaluation et le test des
produits pour ce qui est de l'application à utiliser et de l'exécution de cette application. Ni la société
Schneider Electric ni aucune de ses sociétés affiliées ou filiales ne peuvent être tenues pour
responsables de la mauvaise utilisation des informations contenues dans le présent document. Si
vous avez des suggestions, des améliorations ou des corrections à apporter à cette publication,
veuillez nous en informer.
Aucune partie de ce document ne peut être reproduite sous quelque forme ou par quelque moyen
que ce soit, électronique, mécanique ou photocopie, sans autorisation préalable de Schneider
Electric.
Toutes les réglementations de sécurité pertinentes locales doivent être observées lors de
l'installation et de l'utilisation de ce produit. Pour des raisons de sécurité et afin de garantir la
conformité aux données système documentées, seul le fabricant est habilité à effectuer des
réparations sur les composants.
Lorsque des équipements sont utilisés pour des applications présentant des exigences techniques
de sécurité, suivez les instructions appropriées.
La non-utilisation du logiciel Schneider Electric ou d'un logiciel approuvé avec nos produits
matériels peut entraîner des blessures, des dommages ou un fonctionnement incorrect.
Le non-respect de cette consigne peut entraîner des lésions corporelles ou des dommages
matériels.
© 2015 Schneider Electric. Tous droits réservés.
2
EIO0000000757 11/2015
Table des matières
Consignes de sécurité . . . . . . . . . . . . . . . . . . . . . . . . . .
A propos de ce manuel . . . . . . . . . . . . . . . . . . . . . . . . .
Chapitre 1 Variables système du contrôleur M238 . . . . . . . . . . . .
1.1 Variables système : définition et utilisation . . . . . . . . . . . . . . . . . . . . .
Présentation des variables système . . . . . . . . . . . . . . . . . . . . . . . . . .
Utilisation des variables système . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Structures PLC_R et PLC_W . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PLC_R : Variables système en lecture seule du contrôleur . . . . . . . . .
PLC_W : variable système en lecture/écriture de contrôleur . . . . . . . .
1.3 Structures SERIAL_R et SERIAL_W. . . . . . . . . . . . . . . . . . . . . . . . . .
SERIAL_R[0...1] : variables système en lecture seule de ligne série
SERIAL_W[0...1] : variables système en lecture/écriture de ligne
série. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapitre 2 Fonctions système de M238 . . . . . . . . . . . . . . . . . . . . .
2.1 Fonctions de lecture de M238 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
GetBatteryLevel : renvoie la charge électrique restante de la pile
GetEventsNumber : renvoie le nombre d'événements externes
détectés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
GetFirmwareVersion : renvoie des informations sur la version du
micrologiciel, du boot et du coprocesseur . . . . . . . . . . . . . . . . . . . . . .
GetHardwareVersion : renvoie la version du matériel. . . . . . . . . . . . .
GetLastStopCause : renvoie la cause du dernier arrêt. . . . . . . . . . . .
GetLastStopTime : renvoie la date et l'heure du dernier arrêt détecté.
GetLocalIOStatus : renvoie l'état des E/S intégrées . . . . . . . . . . .
GetPlcFault : renvoie les erreurs détectées sur les E/S du contrôleur
GetRightBusStatus : renvoie l'état du bus d'extension . . . . . . . . . . . .
GetSerialNumber : renvoie le numéro de série de l'automate. . . . . . .
GetShortCutStatus : renvoie l'état du court-circuit sur les sorties
intégrées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
IsFirstMastColdCycle : indique si le cycle est le premier cycle
MAST après un démarrage à froid . . . . . . . . . . . . . . . . . . . . . . . . . . .
IsFirstMastCycle : indique si le cycle est le premier cycle MAST
IsFirstMastWarmCycle : indique si le cycle est le premier cycle
MAST après un démarrage à chaud . . . . . . . . . . . . . . . . . . . . . . . . .
EIO0000000757 11/2015
5
7
11
12
13
15
16
17
19
20
21
22
23
24
25
26
27
28
29
30
31
33
34
38
39
40
41
43
3
2.2 Fonctions d'écriture de l'automate M238 . . . . . . . . . . . . . . . . . . . . . . .
InhibitBatLowLed : désactive ou réactive le voyant de la pile (Batt). . .
ResetEventsNumber : remise à zéro du nombre d'événements . . . . .
SetRTCDrift : Ajuster l'horodateur chaque semaine . . . . . . . . . . . .
Chapitre 3 Types de données de la bibliothèque PLCSystem
M238 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1 Types de données des variables système PLC_R/W . . . . . . . . . . . . .
PLC_R_STATUS : codes d'état du contrôleur . . . . . . . . . . . . . . . . . . .
PLC_R_APPLICATION_ERRORPLC_R_APPLICATION_ERROR :
Codes d'état des erreurs de l'application détectées. . . . . . . . . . . . . . .
PLC_R_BOOT_PROJECT_STATUS : codes d'état du projet de
démarrage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
types de donnéesPLC_R_IO_STATUS : codes d'état des E/S . . . . . .
PLC_R_STOP_CAUSE : codes expliquant le passage de l'état RUN à
un autre état . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PLC_W_COMMAND : codes de commande de contrôle. . . . . . . . . . .
3.2 Types de données des fonctions système . . . . . . . . . . . . . . . . . . . . . .
FIRMWARE_VERSION : type de sortie de la fonction
GetFirmwareVersion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
BOOT_PROJECT_STATUS : codes de sortie de la fonction
GetBootProjectStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
STOP_WHY : codes de sorties de la fonction GetLastStopCause .
LOCAL_IO_GET_STATUS : codes de paramètre de la fonction
GetLocalIOStatus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
LOCAL_IO_GEN_STATUS : GetLocalIOStatus Codes de sortie de
fonction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
RIGHTBUS_GET_STATUS : GetRightBusStatus Codes de
paramétrage de fonction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DAY_OF_WEEK : codes des paramètres de la fonction jour de
SetRTCDrift . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HOUR : type du paramètre d'heure de la fonction SetRTCDrift . . .
MINUTE : type de paramètre de la fonction minute de SetRTCDrift
Annexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Annexe A Représentation des fonctions et blocs fonction . . . .
Différences entre une fonction et un bloc fonction . . . . . . . . . . . . . . . .
Utilisation d'une fonction ou d'un bloc fonction en langage IL . . . . . . .
Utilisation d'une fonction ou d'un bloc fonction en langage ST . . . . . .
Glossaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
44
45
46
47
49
50
51
52
54
55
56
58
59
60
61
62
63
64
65
66
67
68
69
71
72
73
77
81
89
EIO0000000757 11/2015
Consignes de sécurité
Informations importantes
AVIS
Lisez attentivement ces instructions et examinez le matériel pour vous familiariser avec l'appareil
avant de tenter de l'installer, de le faire fonctionner, de le réparer ou d'assurer sa maintenance.
Les messages spéciaux suivants que vous trouverez dans cette documentation ou sur l'appareil
ont pour but de vous mettre en garde contre des risques potentiels ou d'attirer votre attention sur
des informations qui clarifient ou simplifient une procédure.
EIO0000000757 11/2015
5
REMARQUE IMPORTANTE
L'installation, l'utilisation, la réparation et la maintenance des équipements électriques doivent être
assurées par du personnel qualifié uniquement. Schneider Electric décline toute responsabilité
quant aux conséquences de l'utilisation de ce matériel.
Une personne qualifiée est une personne disposant de compétences et de connaissances dans le
domaine de la construction, du fonctionnement et de l'installation des équipements électriques, et
ayant suivi une formation en sécurité leur permettant d'identifier et d'éviter les risques encourus.
6
EIO0000000757 11/2015
A propos de ce manuel
Présentation
Objectif du document
Ce document est destiné à vous familiariser à l'utilisation des fonctions et variables disponibles
dans le Modicon M238 Logic Controller. La bibliothèque PLCSystem du M238 contient des
fonctions et des variables permettant d'obtenir des informations et d'exécuter des commandes
avec le système du contrôleur.
Ce document décrit les types de données, fonctions et variables de la bibliothèque PLCSystem du
M238.
Les connaissances de base requises sont les suivantes :
connaissances de base sur les fonctionnalités, la structure et la configuration du contrôleur
M238
 programmation en langages FBD, LD, ST, IL ou CFC
 variables système (variables globales)

Champ d'application
Ce document a été actualisé pour la version de SoMachine V4.1 SP2.
Document(s) à consulter
Titre de documentation
Référence
M238 Logic Controller - Guide de programmation
EIO0000000384 (ENG) ;
EIO0000000385 (FRE) ;
EIO0000000386 (GER) ;
EIO0000000387 (ITA) ;
EIO0000000388 (SPA) ;
EIO0000000389 (CHS)
Vous pouvez télécharger ces publications et autres informations techniques depuis notre site web
à l'adresse : http://download.schneider-electric.com
EIO0000000757 11/2015
7
Information spécifique au produit
AVERTISSEMENT
PERTE DE CONTROLE





Le concepteur d'un circuit de commande doit tenir compte des modes de défaillance potentiels
des canaux de commande et, pour certaines fonctions de commande critiques, prévoir un
moyen d'assurer la sécurité en maintenant un état sûr pendant et après la défaillance. Par
exemple, l'arrêt d'urgence, l'arrêt en cas de surcourse, la coupure de courant et le
redémarrage sont des fonctions de commande cruciales.
Des canaux de commande séparés ou redondants doivent être prévus pour les fonctions de
commande critiques.
Les liaisons de communication peuvent faire partie des canaux de commande du système.
Une attention particulière doit être prêtée aux implications des délais de transmission non
prévus ou des pannes de la liaison.
Respectez toutes les réglementations de prévention des accidents ainsi que les consignes de
sécurité locales.1
Chaque implémentation de cet équipement doit être testée individuellement et entièrement
pour s'assurer du fonctionnement correct avant la mise en service.
Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des
dommages matériels.
1
Pour plus d'informations, consultez le document NEMA ICS 1.1 (dernière édition), « Safety
Guidelines for the Application, Installation, and Maintenance of Solid State Control » (Directives de
sécurité pour l'application, l'installation et la maintenance de commande statique) et le document
NEMA ICS 7.1 (dernière édition), « Safety Standards for Construction and Guide for Selection,
Installation, and Operation of Adjustable-Speed Drive Systems » (Normes de sécurité relatives à
la construction et manuel de sélection, installation et opération de variateurs de vitesse) ou son
équivalent en vigueur dans votre pays.
AVERTISSEMENT
FONCTIONNEMENT INATTENDU DE L'EQUIPEMENT


N'utilisez que le logiciel approuvé par Schneider Electric pour faire fonctionner cet
équipement.
Mettez à jour votre programme d'application chaque fois que vous modifiez la configuration
matérielle physique.
Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des
dommages matériels.
8
EIO0000000757 11/2015
Terminologie utilisée dans les normes
Les termes techniques, la terminologie, les symboles et les descriptions correspondantes
employés dans ce manuel ou figurant dans ou sur les produits proviennent généralement des
normes internationales.
Dans les domaines des systèmes de sécurité fonctionnelle, des variateurs et de l'automatisme en
général, les termes employés sont sécurité, fonction de sécurité, état sécurisé, défaut, réinitialisation du défaut, dysfonctionnement, panne, erreur, message d'erreur, dangereux, etc.
Entre autres, les normes concernées sont les suivantes :
Norme
Description
EN 61131-2:2007
Automates programmables - Partie 2 : exigences et essais des équipements
ISO 13849-1:2008
Sécurité des machines - Parties des systèmes de commande relatives à la
sécurité Principes généraux de conception
EN 61496-1:2013
Sécurité des machines - Équipements de protection électro-sensibles Partie 1 : prescriptions générales et essais
ISO 12100:2010
Sécurité des machines - Principes généraux de conception - Appréciation du
risque et réduction du risque
EN 60204-1:2006
Sécurité des machines - Équipement électrique des machines - Partie 1 : règles
générales
EN 1088:2008
ISO 14119:2013
Sécurité des machines - Dispositifs de verrouillage associés à des protecteurs
- Principes de conception et de choix
ISO 13850:2006
Sécurité des machines - Fonction d'arrêt d'urgence - Principes de conception
EN/IEC 62061:2005
Sécurité des machines - Sécurité fonctionnelle des systèmes de commande
électrique, électronique et électronique programmable relatifs à la sécurité
IEC 61508-1:2010
Sécurité fonctionnelle des systèmes électriques/électroniques/électroniques
programmables relatifs à la sécurité - Exigences générales
IEC 61508-2:2010
Sécurité fonctionnelle des systèmes électriques/électroniques/électroniques
programmables relatifs à la sécurité - Exigences pour les systèmes
électriques/électroniques/électroniques programmables relatifs à la sécurité
IEC 61508-3:2010
Sécurité fonctionnelle des systèmes électriques/électroniques/électroniques
programmables relatifs à la sécurité - Exigences concernant les logiciels
IEC 61784-3:2008
Communications numériques pour les systèmes de mesure et de commande Bus de terrain de sécurité fonctionnelle
2006/42/EC
Directive Machines
2004/108/EC
Directive sur la compatibilité électromagnétique
2006/95/EC
Directive sur les basses tensions
EIO0000000757 11/2015
9
De plus, des termes peuvent être utilisés dans le présent document car ils proviennent d'autres
normes telles que :
Norme
Description
Série IEC 60034
Machines électriques rotatives
Série IEC 61800
Entraînements électriques de puissance à vitesse variable
Série IEC 61158
Communications numériques pour les systèmes de mesure et de commande Bus de terrain utilisés dans les systèmes de commande industriels
Enfin, le terme zone de fonctionnement utilisable pour décrire des dangers spécifiques correspond
aux termes zone dangereuse ou zone de danger employés dans la directive européenne
Machines (EC/2006/42) et la norme ISO 12100:2010.
NOTE : Les normes susmentionnées peuvent s'appliquer ou pas aux produits cités dans la
présente documentation. Pour plus d'informations sur chacune des normes applicables aux
produits décrits dans le présent document, consultez les tableaux de caractéristiques de ces
références de produit.
10
EIO0000000757 11/2015
Modicon M238 Logic Controller
Variables système du contrôleur M238
EIO0000000757 11/2015
Chapitre 1
Variables système du contrôleur M238
Variables système du contrôleur M238
Présentation
Ce chapitre :
fournit une introduction aux variables système (voir page 12) ;
 décrit les variables système (voir page 17) disponibles avec la bibliothèque PLCSystem de
M238.

Contenu de ce chapitre
Ce chapitre contient les sous-chapitres suivants :
Souschapitre
Sujet
Page
1.1
Variables système : définition et utilisation
12
1.2
Structures PLC_R et PLC_W
16
1.3
Structures SERIAL_R et SERIAL_W
20
EIO0000000757 11/2015
11
Variables système du contrôleur M238
Sous-chapitre 1.1
Variables système : définition et utilisation
Variables système : définition et utilisation
Présentation
Cette section définit les variables système et explique leur mise en œuvre dans le Modicon M238
Logic Controller.
Contenu de ce sous-chapitre
Ce sous-chapitre contient les sujets suivants :
Sujet
12
Page
Présentation des variables système
13
Utilisation des variables système
15
EIO0000000757 11/2015
Variables système du contrôleur M238
Présentation des variables système
Introduction
Cette section décrit comment les variables système sont mises en œuvre. Les variables système :
permettent d'accéder à des informations générales sur le système, de réaliser des diagnostics
système et de commander des actions simples ;
 sont des variables structurées selon les définitions et conventions de désignation de la norme
CEI 61131-3. Vous pouvez accéder aux variables système à l'aide du nom symbolique CEI
PLC_GVL. Certaines variables PLC_GVL sont en lecture seule (par exemple, PLC_R) et d'autres
sont en lecture-écriture (par exemple, PLC_W).
 sont déclarées automatiquement comme des variables globales. Elles s'appliquent à
l'ensemble du système et toute POU (unité organisationnelle de programme) d'une tâche peut
y accéder.

Convention de désignation
Les variables système sont identifiées par :
un nom de structure qui représente la catégorie de variables système. Par exemple, PLC_R
représente un nom de structure de variables en lecture seule utilisées pour le diagnostic du
contrôleur.
 un ensemble de noms de composant qui identifie le rôle de la variable. Par exemple,
i_wVendorID représente l'ID du fournisseur du contrôleur.

Vous pouvez accéder aux variables système en entrant leur nom de structure suivi du nom du
composant.
Voici un exemple de mise en œuvre de variables système :
VAR
myCtr_Serial : DWORD;
myCtr_ID : DWORD;
myCtr_FramesRx : UDINT;
END_VAR
myCtr_Serial := PLC_R.i_dwSerialNumber;
myCtr_ID := PLC_R.i_wVendorID;
myCtr_FramesRx := SERIAL_R[0].i_udiFramesReceivedOK;
NOTE : Dans l'exemple ci-dessus, le nom complet de la variable système est
PLC_GVL.PLC_R.i_wVendorID. Le PLC_GVL est implicite lors de la déclaration d'une variable
à l'aide de l'Aide à la saisie, mais vous pouvez aussi l'entrer en intégralité. Les bonnes pratiques
de programmation préconisent souvent d'utiliser le nom complet de la variable dans les
déclarations.
EIO0000000757 11/2015
13
Variables système du contrôleur M238
Emplacement des variables système
Deux sortes de variables système sont définies pour la programmation du contrôleur :
variables localisées
 variables non localisées

Les variables localisées :
 ont un emplacement fixe dans une zone %MW statique : %MW60000 à %MW60199 pour les
variables système en lecture seule ;
 sont accessibles par le biais d'une requête Modbus série dans les états RUNNING et
STOPPED ;
 sont utilisées dans des programmes SoMachine conformément à la convention
structure_name.component_name expliquée précédemment. Les adresses %MW de 0 to
59999 sont accessibles directement. Les adresses supérieures sont considérées hors plage
par SoMachine et sont uniquement accessibles via la convention
structure_name.component_name.
Les variables non affectées :
 ne se trouvent pas physiquement dans la zone %MW ;.
 ne sont pas accessibles par le biais de requêtes de bus de terrain ou de réseau, sauf si vous
les cherchez dans la table de réaffectation, et elles ne sont alors accessibles que dans les états
RUNNING et STOPPED ; La table de réaffectation utilise les zones %MW dynamiques
suivantes :
 %MW60200 à %MW61999 pour les variables système en lecture seule,
 %MW62200 à %MW63999 pour les variables en lecture/écriture.

14
sont utilisées dans des programmes SoMachine conformément à la convention
structure_name.component_name expliquée précédemment. Les adresses %MW de 0 à
59999 sont accessibles directement. Les adresses supérieures sont considérées hors plage
par SoMachine et sont uniquement accessibles via la convention
structure_name.component_name.
EIO0000000757 11/2015
Variables système du contrôleur M238
Utilisation des variables système
Introduction
Cette rubrique décrit la procédure de programmation et d'utilisation des variables système dans
SoMachine.
Les variables système ont un champ d'application global et vous pouvez les utiliser dans tous les
POU (unité organisationnelle de programme) de l'application.
Il n'est pas nécessaire de déclarer les variables système dans la liste des variables globales (GVL).
Elles sont déclarées automatiquement à partir de la bibliothèque système du contrôleur.
Utilisation des variables système dans un POU
SoMachine a une fonction de saisie automatique. Dans un POU, commencez par entrer le nom de
structure de la variable système (PLC_R, PLC_W, ...) suivi d'un point. Les variables système
s'affichent dans l'Aide à la saisie. Vous pouvez sélectionner la variable de votre choix ou entrer
manuellement son nom en intégralité.
NOTE : Dans l'exemple ci-dessus, une fois que le nom de structure PLC_R. a été entré,
SoMachine affiche un menu contextuel des noms de composants/variables possibles.
Exemple
L’exemple ci-dessous décrit l'utilisation de certaines variables système :
VAR myCtr_Serial : DWORD; myCtr_ID : WORD; myCtr_FramesRx : UDINT;
END_VAR
myCtr_Serial := PLC_R.i_dwSerialNumber; myCtr_ID := PLC_R.i_wVendorID;
myCtr_FramesRx := SERIAL_R[0].i_udiFramesReceivedOK;
EIO0000000757 11/2015
15
Variables système du contrôleur M238
Sous-chapitre 1.2
Structures PLC_R et PLC_W
Structures PLC_R et PLC_W
Présentation
Cette section répertorie et décrit les variables système incluses dans les structures PLC_R et
PLC_W.
Contenu de ce sous-chapitre
Ce sous-chapitre contient les sujets suivants :
Sujet
16
Page
PLC_R : Variables système en lecture seule du contrôleur
17
PLC_W : variable système en lecture/écriture de contrôleur
19
EIO0000000757 11/2015
Variables système du contrôleur M238
PLC_R : Variables système en lecture seule du contrôleur
Structure de la variable
Le tableau suivant décrit les paramètres de la variable système PLC_R (type PLC_R_STRUCT) :
Adresse
Nom de la variable
Type
Commentaire
60000
i_wVendorID
WORD
ID du fournisseur du contrôleur.
101A hex = Schneider Electric
60001
i_wProductID
WORD
ID de référence du contrôleur.
Modbus (1)
NOTE : L'ID du fournisseur et l'ID de
référence constituent l'ID cible du contrôleur,
indiqué dans l'écran des paramètres de
communication (ID cible = 101A XXXX hex).
60002
i_dwSerialNumber
DWORD
Numéro de série du contrôleur.
60004
i_byFirmVersion[0..3]
ARRAY[0..3] OF
BYTE
Version du micrologiciel du contrôleur
[aa.bb.cc.dd] :
 i_byFirmVersion[0] = aa
 ...
 i_byFirmVersion[3] = dd
60006
i_byBootVersion[0..3]
ARRAY[0..3] OF
BYTE
Version du démarrage du contrôleur
[aa.bb.cc.dd] :
 i_byBootVersion[0] = aa
 ...
 i_byBootVersion[3] = dd
60008
i_dwHardVersion
DWORD
Version du matériel du contrôleur.
60010
i_dwChipVersion
DWORD
Version du coprocesseur du contrôleur.
60012
i_wStatus
PLC_R_STATUS
(voir page 51)
Etat du contrôleur.
60013
i_wBootProjectStatus
PLC_R_BOOT_PRO
JECT_STATUS
(voir page 54)
Renvoie des informations sur l'application de
démarrage stockée dans la mémoire Flash.
60014
i_wLastStopCause
PLC_R_STOP_CAUSE
(voir page 56)
Cause du dernier passage du mode
d'exécution (RUN) à un autre état.
60015
i_wLastApplicationError
PLC_R_APPLICATION_ERROR
(voir page 52)
Cause de la dernière exception du
contrôleur.
60016
i_lwSystemFault_1
LWORD
Le champ de bits FFFF FFFF FFFF
FFFF hex indique qu'aucune erreur n'a été
détectée.
Si une erreur TM2 est détectée, le bit 1 prend
la valeur FALSE.
EIO0000000757 11/2015
17
Variables système du contrôleur M238
Adresse
Nom de la variable
Type
Commentaire
60020
i_lwSystemFault_2
LWORD
Non utilisé.
60024
i_wIOStatus1
PLC_R_IO_STATUS
(voir page 55)
Etat des E/S intégrées.
60025
i_wIOStatus2
PLC_R_IO_STATUS
(voir page 55)
Etat d'E/S TM2.
60026
i_wBatteryStatus
WORD
Charge restante de la batterie.
Cette variable système peut prendre les
valeurs significatives suivantes :
 FFFF hex = 100 % = 3,5 V
 7FFF hex = 50 % = 2,75 V
 0000 hex = 0 % = 2 V
Modbus
(1)
Seuils de clignotement du voyant Batt :
 100 % = toujours éteint
 50 % = clignotement périodique
 0 % = toujours allumé
60028
i_dwAppliSignature1
DWORD
Premier des 4 DWORD de la signature
(16 octets au total).
La signature de l'application est générée par
le logiciel pendant la construction.
60030
i_dwAppliSignature2
DWORD
Deuxième des 4 DWORD de la signature
(16 octets au total).
La signature de l'application est générée par
le logiciel pendant la construction.
60032
i_dwAppliSignature3
DWORD
Troisième des 4 DWORD de la signature
(16 octets au total).
La signature de l'application est générée par
le logiciel pendant la construction.
60034
i_dwAppliSignature4
DWORD
Quatrième des 4 DWORD de la signature
(16 octets au total).
La signature de l'application est générée par
le logiciel pendant la construction.
(1)
18
Inaccessible via l'application.
EIO0000000757 11/2015
Variables système du contrôleur M238
PLC_W : variable système en lecture/écriture de contrôleur
Structure de la variable
Ce tableau décrit les paramètres de la variable système PLC_W (type PLC_W_STRUCT) :
%MW
Nom de la variable
Type
Commentaire
s/o
q_uiOpenPLCControl
UINT
Lorsque la valeur passe de 0 à 6699, la
commande inscrite précédemment dans la
variable PLC_W.q_wPLCControl suivante
est exécutée.
s/o
q_wPLCControl
PLC_W_COMMAND
(voir page 58)
La commande RUN/STOP du contrôleur est
exécutée lorsque la valeur de la variable
système PLC_R.q_uiOpenPLCControl
passe de 0 à 6699.
NOTE : s/o signifie qu'aucun mappage %MW n'est prédéfini pour cette variable système.
EIO0000000757 11/2015
19
Variables système du contrôleur M238
Sous-chapitre 1.3
Structures SERIAL_R et SERIAL_W
Structures SERIAL_R et SERIAL_W
Présentation
Cette section répertorie et décrit les variables système des structures SERIAL_R et SERIAL_W.
Contenu de ce sous-chapitre
Ce sous-chapitre contient les sujets suivants :
Sujet
20
Page
SERIAL_R[0...1] : variables système en lecture seule de ligne série
21
SERIAL_W[0...1] : variables système en lecture/écriture de ligne série
22
EIO0000000757 11/2015
Variables système du contrôleur M238
SERIAL_R[0...1] : variables système en lecture seule de ligne série
Introduction
SERIAL_R est un tableau de 2 éléments de type SERIAL_R_STRUCT. Chaque élément du tableau
renvoie des variables système de diagnostic pour la ligne série correspondante.
Pour le M238 Logic Controller :
Serial_R[0] désigne la ligne série 1.
 Serial_R[1] désigne la ligne série 2 (uniquement pour TM238LFDC24DT et
TM238LFAC24DR).

Structure de la variable
Ce tableau décrit les paramètres des variables système SERIAL_R[0...1] :
%MW
Nom de la variable
Type
Commentaire
Ligne série
s/o
i_udiFramesTransmittedOK
UDINT
Nombre de trames transmises avec succès.
s/o
i_udiFramesReceivedOK
UDINT
Nombre de trames reçues sans aucune erreur
détectée.
s/o
i_udiRX_MessagesError
UDINT
Nombre de trames reçues avec erreurs
détectées (somme de contrôle, parité).
Spécifique Modbus
s/o
i_uiSlaveExceptionCount
UINT
Nombre de réponses d'exception Modbus
renvoyées par le Logic Controller.
s/o
i_udiSlaveMsgCount
UINT
Nombre de messages reçus du maître et
adressés au Logic Controller.
s/o
i_uiSlaveNoRespCount
UINT
Nombre de demandes de diffusion Modbus
reçues par le Logic Controller.
s/o
i_uiSlaveNakCount
UINT
Non utilisée
s/o
i_uiSlaveBusyCount
UINT
Non utilisée
s/o
i_uiCharOverrunCount
UINT
Nombre de débordements de caractères.
s/o signifie qu'aucun mappage %MW n'est prédéfini pour cette variable système.
Non utilisée signifie que la variable n'est pas gérée par le système et que si sa valeur est différente de zéro,
elle doit être considérée comme variable parasite.
Les compteurs SERIAL_R sont réinitialisés en cas de :
 téléchargement,
 réinitialisation du contrôleur ;
 commande SERIAL_W[x].q_wResetCounter ;
 commande de réinitialisation associée au code fonction n°8 de la requête Modbus.
EIO0000000757 11/2015
21
Variables système du contrôleur M238
SERIAL_W[0...1] : variables système en lecture/écriture de ligne série
Introduction
SERIAL_W est un tableau de 2 éléments de type SERIAL_W_STRUCT. Chaque élément du tableau
réinitialise les variables système SERIAL_R de la ligne série correspondante.
Pour le M238 Logic Controller :
Serial_W[0] désigne la ligne série 1.
 Serial_W[1] désigne la ligne série 2 (uniquement pour TM238LFDC24DT et
TM238LFAC24DR).

Structure de la variable
Ce tableau décrit les paramètres de la variable système SERIAL_W[0...1] :
%MW
Nom de la variable
Type
Commentaire
s/o
q_wResetCounter
WORD
Le passage de 0 à 1 réinitialise tous les
compteurs SERIAL_R[0...1].
Pour réinitialiser à nouveau les compteurs, il est
nécessaire de mettre ce registre à 0 de sorte
qu'un nouveau passage de 0 à 1 puisse
intervenir.
NOTE : s/o signifie qu'aucun mappage %MW n'est prédéfini pour cette variable système.
22
EIO0000000757 11/2015
Modicon M238 Logic Controller
Fonctions système de M238,
EIO0000000757 11/2015
Chapitre 2
Fonctions système de M238
Fonctions système de M238
Présentation
Ce chapitre décrit les fonctions système disponibles dans la bibliothèque PLCSystem de M238.
Contenu de ce chapitre
Ce chapitre contient les sous-chapitres suivants :
Souschapitre
Sujet
Page
2.1
Fonctions de lecture de M238
24
2.2
Fonctions d'écriture de l'automate M238
44
EIO0000000757 11/2015
23
Fonctions système de M238,
Sous-chapitre 2.1
Fonctions de lecture de M238
Fonctions de lecture de M238
Présentation
Cette section décrit les fonctions de lecture de la bibliothèque PLCSystem de M238.
Dans de nombreux cas, des informations identiques renvoyées par ces fonctions peuvent être
obtenues par l'intermédiaire de variables système (voir page 13). Les variables système sont
répandues dans les plates-formes de commande. II est donc recommandé de les utiliser afin de
favoriser la portabilité de vos applications. Bien que des dissemblances existent, les informations
contenues dans les variables système sont souvent identiques aux données renvoyées par les
fonctions. Si vous souhaitez remplacer les fonctions de votre programme afin d'utiliser des
variables système, veillez à prendre en compte les différences qui existent dans les informations
communiquées.
Dans les descriptions de fonction suivantes sont indiquées les variables système pouvant fournir
des informations identiques.
Contenu de ce sous-chapitre
Ce sous-chapitre contient les sujets suivants :
Sujet
Page
GetBatteryLevel : renvoie la charge électrique restante de la pile
24
25
GetEventsNumber : renvoie le nombre d'événements externes détectés
26
GetFirmwareVersion : renvoie des informations sur la version du micrologiciel, du boot et du
coprocesseur
27
GetHardwareVersion : renvoie la version du matériel.
28
GetLastStopCause : renvoie la cause du dernier arrêt.
29
GetLastStopTime : renvoie la date et l'heure du dernier arrêt détecté.
30
GetLocalIOStatus : renvoie l'état des E/S intégrées
31
GetPlcFault : renvoie les erreurs détectées sur les E/S du contrôleur
33
GetRightBusStatus : renvoie l'état du bus d'extension
34
GetSerialNumber : renvoie le numéro de série de l'automate.
38
GetShortCutStatus : renvoie l'état du court-circuit sur les sorties intégrées
39
IsFirstMastColdCycle : indique si le cycle est le premier cycle MAST après un démarrage
à froid
40
IsFirstMastCycle : indique si le cycle est le premier cycle MAST
41
IsFirstMastWarmCycle : indique si le cycle est le premier cycle MAST après un démarrage
à chaud
43
EIO0000000757 11/2015
Fonctions système de M238,
GetBatteryLevel : renvoie la charge électrique restante de la pile
Description de la fonction
Cette fonction renvoie la charge électrique restante de la pile de sauvegarde externe (en
pourcentage).
Pour plus d'informations sur les piles internes et externes, consultez le document M238 - Guide de
référence du matériel (voir M238 Logic Controller, Guide de référence du matériel).
NOTE : ces informations sont également disponibles dans la variable système
PLC_R.i_wBatteryStatus (voir page 17).
Représentation graphique
Représentation en IL et en ST
Pour voir la représentation générale en langage IL ou ST, reportez-vous au chapitre Représentation des fonctions et blocs fonction (voir page 71).
Description des variables d'E/S
Ce tableau décrit la variable de sortie :
Sortie
Type
Commentaire
GetBatteryLevel
WORD
Pourcentage de charge restant dans la pile.
Plage : 0 à 100 :
 100 % = 3,5 V
 50 % = 2,75 V
 0%=2V
Seuils de clignotement du voyant Batt :
 100 %= toujours éteint
 50 %= clignotement périodique
 0 %= toujours allumé
EIO0000000757 11/2015
25
Fonctions système de M238,
GetEventsNumber : renvoie le nombre d'événements externes détectés
Description de la fonction
Cette fonction renvoie le nombre d'événements qui se sont produits depuis le dernier démarrage
à froid, notamment ceux détectés sur les entrées et les événements de comparaison de seuil HSC.
Représentation graphique
Représentation en IL et en ST
Pour voir la représentation générale en langage IL ou ST, reportez-vous au chapitre Représentation des fonctions et blocs fonction (voir page 71).
Description des variables d'E/S
Le tableau suivant décrit la variable de sortie :
26
Sortie
Type
Commentaire
GetEventsNumber
DWORD
Valeur représentant le nombre d'événements qui se sont
produits depuis le dernier démarrage à froid. La remise à 0 est
effectuée avec un appel de la fonction ResetEventsNumber
(voir page 46).
EIO0000000757 11/2015
Fonctions système de M238,
GetFirmwareVersion : renvoie des informations sur la version du micrologiciel,
du boot et du coprocesseur
Description de la fonction
Cette fonction renvoie les informations suivantes sur le contrôleur :
Version du micrologiciel
 Version du boot (noyau pour la mise à jour du micrologiciel)
 Version du coprocesseur (ASIC réservé à la gestion des E/S intégrées)

NOTE : des informations similaires sont également disponibles dans les variables système
PLC_R.i_byFirmVersion, PLC_R.i_byBootVersion et PLC_R.i_byChipVersion
(voir page 17).
Représentation graphique
Représentation en IL et en ST
Pour voir la représentation générale en langage IL ou ST, reportez-vous au chapitre Représentation des fonctions et blocs fonction (voir page 71).
Description des variables d'E/S
Le tableau suivant décrit la variable de sortie :
Sortie
Type
Commentaire
GetFirmwareVersion
FIRMWARE_VERSION
(voir page 60)
Versions du micrologiciel, du boot et du
coprocesseur
Exemple
Cet exemple décrit comment utiliser la variable structurée pour obtenir les versions :
VAR
MyFirmwareVersion : FIRMWARE_VERSION;
MyFwVersion : DWORD;
MyBootVersion : WORD;
MyCoProcVersion : WORD;
END_VAR
MyFirmwareVersion := GetFirmwareVersion();
MyFwVersion := MyFirmwareVersion.FwVersion;
MyBootVersion := MyFirmwareVersion.BootVersion;
MyCoProcVersion := MyFirmwareVersion.AsicVersion;
EIO0000000757 11/2015
27
Fonctions système de M238,
GetHardwareVersion : renvoie la version du matériel.
Description de la fonction
Cette fonction renvoie la version du matériel de l'automate.
NOTE : Vous obtiendrez des informations similaires au moyen de la variable système
PLC_R.i_dwHardVersion (voir page 17)
Représentation graphique
Représentation en IL et en ST
Pour voir la représentation générale en langage IL ou ST, reportez-vous au chapitre Représentation des fonctions et blocs fonction (voir page 71).
Description des variables d'E/S
Le tableau suivant décrit la variable de sortie :
28
Sortie
Type
Commentaire
GetHardwareVersion
WORD
Version du matériel de l'automate.
EIO0000000757 11/2015
Fonctions système de M238,
GetLastStopCause : renvoie la cause du dernier arrêt.
Description de la fonction
Cette fonction renvoie la cause du dernier passage du mode d'exécution (RUN) à un autre état.
NOTE : Vous obtiendrez des informations similaires au moyen de la variable système
PLC_R.i_wLastStopCause (voir page 17).
Représentation graphique
Représentation en IL et en ST
Pour voir la représentation générale en langage IL ou ST, reportez-vous au chapitre Représentation des fonctions et blocs fonction (voir page 71).
Description des variables d'E/S
Le tableau suivant décrit la variable de sortie :
Sortie
Type
Commentaire
GetLastStopCause
STOP_WHY
(voir page 62)
Cause du dernier passage du mode
d'exécution (RUN) à un autre état.
EIO0000000757 11/2015
29
Fonctions système de M238,
GetLastStopTime : renvoie la date et l'heure du dernier arrêt détecté.
Description de la fonction
Cette fonction renvoie la date et l'heure du dernier passage du mode d'exécution (RUN) à un autre
état.
Représentation graphique
Représentation en IL et en ST
Pour voir la représentation générale en langage IL ou ST, reportez-vous au chapitre Représentation des fonctions et blocs fonction (voir page 71).
Description des variables d'E/S
Le tableau suivant décrit la variable de sortie :
30
Sortie
Type
Commentaire
GetLastStopTime
DWORD
Heure du dernier arrêt (STOP) détecté en secondes, en commençant
au 1er janvier 1970 à 00:00:00.
EIO0000000757 11/2015
Fonctions système de M238,
GetLocalIOStatus : renvoie l'état des E/S intégrées
Description de la fonction
Cette fonction renvoie l'état des E/S intégrées.
NOTE : des informations similaires sont également disponibles dans la variable système
PLC_R.i_wLocalIOStatus (voir page 17).
Représentation graphique
Représentation en IL et en ST
Pour voir la représentation générale en langage IL ou ST, reportez-vous au chapitre Représentation des fonctions et blocs fonction (voir page 71).
Description des variables d'E/S
Ce tableau décrit le paramètre d'entrée :
Entrée
Type
Commentaire
Mode
LOCAL_IO_GET_STATUS
(voir page 63)
Paramètre de la fonction : actuellement, seul
LOCAL_IO_GET_GEN_STATUS (00 hex) (voir page 63) est
disponible.
Ce tableau décrit la variable de sortie :
Sortie
Type
Commentaire
GetLocalIOStatus
LOCAL_IO_GEN_STATUS
(voir page 64)
Etat des E/S intégrées.
Exemple 1
Cet exemple illustre une utilisation directe de l'énumérateur LOCAL_IO_GET_GEN_STATUS
associé au type d'énumération LOCAL_IO_GET_STATUS pour le paramètre d'entrée Mode :
VAR
MyLocalIOStatus : LOCAL_IO_GEN_STATUS;
END_VAR
MyLocalIOStatus := GetLocalIOStatus(LOCAL_IO_GET_GEN_STATUS);
EIO0000000757 11/2015
31
Fonctions système de M238,
Exemple 2
Cet exemple illustre l'utilisation d'une variable intermédiaire pour le paramètre d'entrée Mode.
VAR
MyLocalIOStatus : LOCAL_IO_GEN_STATUS;
MyMode : LOCAL_IO_GET_STATUS;
END_VAR
MyMode := LOCAL_IO_GET_GEN_STATUS;
MyLocalIOStatus := GetLocalIOStatus(MyMode);
32
EIO0000000757 11/2015
Fonctions système de M238,
GetPlcFault : renvoie les erreurs détectées sur les E/S du contrôleur
Description de la fonction
Cette fonction renvoie un diagnostic générique des E/S de l'automate dans un champ de bits (la
valeur hexadécimale FFFF signifie qu'aucune erreur n'a été détectée) :
NOTE : des informations similaires sont également disponibles dans la variable système (bits 0 et
1) PLC_R.i_lwSystemFault_1 (voir page 17).
Représentation graphique
Représentation en IL et en ST
Pour voir la représentation générale en langage IL ou ST, reportez-vous au chapitre Représentation des fonctions et blocs fonction (voir page 71).
Description des variables d'E/S
Le tableau suivant décrit la variable de sortie :
Sortie
Type
Commentaire
GetPlcFault
WORD
Diagnostic des E/S d'un contrôleur dans un champ de bits (la valeur
hexadécimale FFFF signifie qu'aucune erreur n'a été détectée).
Le tableau suivant décrit les bits inclus dans le champ de bits de sortie :
Bit
Signification
0
FALSE = erreur détectée sur le bus d'extension des E/S.
Utilisez la fonction GetRightBusStatus (voir page 34) pour obtenir des informations de
diagnostic détaillées.
1
FALSE = erreur détectée sur les E/S intégrées.
Utilisez la fonction GetLocalIOStatus (voir page 31) pour obtenir des informations de
diagnostic détaillées.
2 à 15
Réservés, toujours 1
EIO0000000757 11/2015
33
Fonctions système de M238,
GetRightBusStatus : renvoie l'état du bus d'extension
Description de la fonction
Cette fonction renvoie l'état du bus d'extension des E/S dans un champ de bits. A la suite du
paramètre d'entrée (Masque), la fonction renvoie un diagnostic de configuration sur le bus
d'extension des E/S (configuration du bus d'extension des E/S différente de celle des modules
connectés) ou un diagnostic détaillé du module d'extension d'E/S analogiques demandé.
Représentation graphique
Représentation en IL et en ST
Pour voir la représentation générale en langage IL ou ST, reportez-vous au chapitre Représentation des fonctions et blocs fonction (voir page 71).
Description des variables d'E/S
Le tableau suivant décrit le paramètre d'entrée :
Entrée
Type
Commentaire
Masque
RIGHTBUS_GET_STATUS
(voir page 65)
Définit le type de diagnostic du bus d'extension d'E/S,
renvoyé par la fonction : configuration du bus ou l'un
des sept modules d'extension possibles.
Le tableau suivant décrit les variables de sortie :
34
Sortie
Type
Commentaire
GetRightBusStatus
WORD
Diagnostic de bus d'extension d'E/S.
Voir informations ci-après.
EIO0000000757 11/2015
Fonctions système de M238,
Diagnostic de configuration du bus d'extension d'E/S
Le tableau suivant décrit le champ de bits renvoyé par la fonction GetRightBusStatus lorsque
le paramètre d'entrée (Masque) est RIGHT_BUS_GET_GEN_STATUS (voir page 65) pour un
diagnostic de configuration du bus d'extension (hex 0000 si aucune erreur n'est détectée) :
Bit
Description
0
Réservé (toujours 0)
1
TRUE si la configuration 1 du module TM2 ne correspond pas au module connecté.
2
TRUE si la configuration 2 du module TM2 ne correspond pas au module connecté.
3
TRUE si la configuration 3 du module TM2 ne correspond pas au module connecté.
4
TRUE si la configuration 4 du module TM2 ne correspond pas au module connecté.
5
TRUE si la configuration 5 du module TM2 ne correspond pas au module connecté.
6
TRUE si la configuration 6 du module TM2 ne correspond pas au module connecté.
7
TRUE si la configuration 7 du module TM2 ne correspond pas au module connecté.
8
TRUE si le bus de droite est bloqué.
7 à 15
Réservé (toujours 0)
Diagnostic du module d'extension d'E/S analogiques TM2
Les tableaux ci-dessous décrivent le champ de bits renvoyé par la fonction GetRightBusStatus
lorsque le paramètre d'entrée (Masque) est RIGHTBUS_GET_STATUSx (voir page 65) (où x = 1 à
7) pour un diagnostic détaillé du module d'extension "x".
NOTE : le diagnostic détaillé est correct pour des modules d'E/S analogiques uniquement et la
signification du champ de bits dépend du type du module analogique concerné.
Lorsque le module associé est un module d'E/S analogiques standard (jusqu'à 2 voies d'entrée) :
TM2AMM3HT
 TM2ALM3LT
 TM2AMI2HT
 TM2AMI2LT
 TM2AVO2HT
 TM2AMO1HT

Bit
Description
0
Toutes les voies analogiques à l'état normal
1
Module à l'état d'initialisation
2
Dysfonctionnement de l'alimentation
3
Configuration incorrecte – analyse nécessaire
4
Processus de conversion de la voie d'entrée 0
5
Processus de conversion de la voie d'entrée 1
6
Paramètre non valide de la voie d'entrée 0
EIO0000000757 11/2015
35
Fonctions système de M238,
Bit
Description
7
Paramètre non valide de la voie d'entrée 1
8
Non utilisé
9
Non utilisé
10
Valeur de dépassement par le haut pour la voie d'entrée 0
11
Valeur de dépassement par le haut pour la voie d'entrée 1
12
Valeur de dépassement par le bas pour la voie d'entrée 0
13
Valeur de dépassement par le bas pour la voie d'entrée 1
14
Non utilisé
15
Paramètre de la voie de sortie non valide
Lorsque le module associé est l'un des modules à 4 ou 8 voies d'entrées analogiques :
 TM2ARI8HT
 TM2AMI8HT
 TM2ARI8LT
 TM2ARI8LRJ
 TM2AMI4LT
 TM2AMM6HT
Bit
Description
Signification
0, 1
Etat de la voie 0
00 : voie analogique à l'état normal
01 : paramètre non valide de la voie d'entrée
10 : valeur d'entrée indisponible (module en phase d'initialisation,
processus de conversion)
11 : valeur non valide de la voie d'entrée (valeur supérieure au seuil
maximal ou inférieure au seuil minimal)
2, 3
Etat de la voie 1
Voir bit 0, 1
4, 5
Etat de la voie 2
Voir bit 0, 1
6, 7
Etat de la voie 3
Voir bit 0, 1
8, 9
Etat de la voie 4
Voir bit 0, 1 (pour les modules à 8 voies d'entrée uniquement)
10, 11
Etat de la voie 5
Voir bit 0, 1 (pour les modules à 8 voies d'entrée uniquement)
12, 13
Etat de la voie 6
Voir bit 0, 1 (pour les modules à 8 voies d'entrée uniquement)
14, 15
Etat de la voie 7
Voir bit 0, 1 (pour les modules à 8 voies d'entrée uniquement)
NOTE : lorsque le module d'extension ciblé est un module d'E/S numériques, un compteur rapide
ou un module maître AS-Interface, le diagnostic renvoyé est incorrect (hex. 0000).
36
EIO0000000757 11/2015
Fonctions système de M238,
Pour obtenir un diagnostic sur les modules d'extension HSC et AS-Interface, vous pouvez utiliser :
 le bloc fonction HSCGetDiag (voir Modicon M238 Logic Controller, Comptage
rapide, Guide de la bibliothèque M238 HSC) pour le module TM200 HSC206D• ;
 le bloc fonction ASI_MasterStatusCheck (voir Modicon M238 Logic Controller,
Guide de programmation) pour le module TWDNOI10M3.
Exemple
L'exemple suivant décrit une méthode utilisant HMIGetRightBusStatus pour le diagnostic du
bus d'extension d'E/S et des modules analogiques :
VAR
(*diagnostic de conf des modules 1 à 7 = MyRightBusStatus bits 1 à 7*)
MyRightBusStatus: WORD;
(*Codes de diagnostic des modules 1 à 7*)
ModuleError:Array [1..7] of WORD;
END_VAR
(*Diagnostic de conf. sur le bus d'extension*)
MyRightBusStatus:=GetRightBusStatus(RIGHTBUS_GET_GEN_STATUS);
IF MyRightBusStatus<>0 THEN (*Non-correspondance de conf. détectée =>
déclencher une alarme, vérifier les valeurs de bit...*)END_IF;
(*Diagnostic des modules Get ; erreur détectée si diag <> 0*) (*Limiter
la liste aux modules analogiques configurés uniquement*)
ModuleError[1]:=GetRightBusStatus(RIGHTBUS_GET_STATUS1);
ModuleError[2]:=GetRightBusStatus(RIGHTBUS_GET_STATUS2);
ModuleError[3]:=GetRightBusStatus(RIGHTBUS_GET_STATUS3);
ModuleError[4]:=GetRightBusStatus(RIGHTBUS_GET_STATUS4);
ModuleError[5]:=GetRightBusStatus(RIGHTBUS_GET_STATUS5);
ModuleError[6]:=GetRightBusStatus(RIGHTBUS_GET_STATUS6);
ModuleError[7]:=GetRightBusStatus(RIGHTBUS_GET_STATUS7);
EIO0000000757 11/2015
37
Fonctions système de M238,
GetSerialNumber : renvoie le numéro de série de l'automate.
Description de la fonction
Cette fonction renvoie le numéro de série de l'automate.
NOTE : Vous obtiendrez des informations similaires au moyen de la variable système (bit0 et bit1)
PLC_R.i_dwSerialNumber (voir page 17).
Représentation graphique
p
Représentation en IL et en ST
Pour voir la représentation générale en langage IL ou ST, reportez-vous au chapitre Représentation des fonctions et blocs fonction (voir page 71).
Description des variables d'E/S
Le tableau suivant décrit la variable de sortie :
38
Sortie
Type
Commentaire
GetSerialNumber
DWORD
Numéro de série de l'automate.
EIO0000000757 11/2015
Fonctions système de M238,
GetShortCutStatus : renvoie l'état du court-circuit sur les sorties intégrées
Description de la fonction
Cette fonction renvoie le diagnostic de court-circuit ou de surcharge sur les sorties intégrées.
NOTE : pour plus d'informations sur la gestion des sorties intégrées, consultez le document
M238 - Guide de référence du matériel (voir M238 Logic Controller, Guide de référence du
matériel).
Représentation graphique
Représentation en IL et en ST
Pour voir la représentation générale en langage IL ou ST, reportez-vous au chapitre Représentation des fonctions et blocs fonction (voir page 71).
Description des variables d'E/S
Ce tableau décrit la variable de sortie :
Paramètre
Type
Commentaire
GetShortCutStatus
WORD
Voir la description du champ de bits ci-après.
Le tableau suivant décrit le champ de bits pour les modules TM238LDD24DT et
TM238LFDC24DT:
Bit
Description
0
TRUE = court-circuit sur le groupe de sorties 1 (Q0 à Q3).
1
TRUE = court-circuit sur le groupe de sorties 2 (Q4 à Q6).
2 blocs fonction
TRUE = court-circuit sur le groupe de sorties 3 (Q7 à Q9).
Le tableau suivant décrit le champ de bits pour les modules TM238LDA24DR et
TM238LFAC24DR:
Bit
Description
0
TRUE = court-circuit sur la catégorie de sorties 1 (Q0 à Q3).
EIO0000000757 11/2015
39
Fonctions système de M238,
IsFirstMastColdCycle : indique si le cycle est le premier cycle MAST après un
démarrage à froid
Description de la fonction
Cette fonction renvoie TRUE au cours du premier cycle MAST après un démarrage à froid (premier
cycle après téléchargement ou réinitialisation à froid).
Représentation graphique
Représentation en IL et en ST
Pour voir la représentation générale en langage IL ou ST, reportez-vous au chapitre Représentation des fonctions et blocs fonction (voir page 71).
Description des variables d'E/S
Ce tableau décrit la variable de sortie :
Sortie
Type
Commentaire
IsFirstMastColdCycle
BOOL
TRUE au cours du premier cycle de la tâche MAST après
un démarrage à froid.
Exemple
Reportez-vous à la description de la fonction IsFirstMastCycle (voir page 41).
40
EIO0000000757 11/2015
Fonctions système de M238,
IsFirstMastCycle : indique si le cycle est le premier cycle MAST
Description de la fonction
Cette fonction renvoie TRUE lors du premier cycle MAST après un démarrage.
Représentation graphique
Représentation en IL et en ST
Pour voir la représentation générale en langage IL ou ST, reportez-vous au chapitre Représentation des fonctions et blocs fonction (voir page 71).
Description des variables d'E/S
Sortie
Type
Commentaire
IsFirstMastCycle
BOOL
TRUE lors du premier cycle de la tâche MAST après un
démarrage.
Exemple
Cet exemple décrit les trois fonctions IsFirstMastCycle, IsFirstMastColdCycle et
IsFirstMastWarmCycle utilisées ensemble.
Utilisez cet exemple dans la tâche MAST. Sinon, il peut s'exécuter plusieurs fois ou jamais (une
tâche supplémentaire peut être appelée plusieurs fois ou éventuellement aucune fois pendant un
cycle de tâche MAST) :
VAR MyIsFirstMastCycle : BOOL; MyIsFirstMastWarmCycle : BOOL; MyIsFirstMastColdCycle : BOOL; END_VAR
MyIsFirstMastWarmCycle := IsFirstMastWarmCycle(); MyIsFirstMastColdCycle
:= IsFirstMastColdCycle(); MyIsFirstMastCycle := IsFirstMastCycle();
IF (MyIsFirstMastWarmCycle) THEN
(*Il s'agit du premier cycle MAST après un démarrage à chaud : toutes les
variables prennent sur leurs valeurs d'initialisation, à l'exception des
variables conservées.*)
(*=> initialisez les variables nécessaires pour que votre application
s'exécute comme prévu dans ce cas*)
END_IF;
IF (MyIsFirstMastColdCycle) THEN
EIO0000000757 11/2015
41
Fonctions système de M238,
(*Il s'agit du premier cycle MAST après un démarrage à froid : toutes les
variables prennent sur leurs valeurs d'initialisation, y compris les
variables conservées.*)
(*=> initialisez les variables nécessaires pour que votre application
s'exécute comme prévu dans ce cas*)
END_IF;
IF (MyIsFirstMastCycle) THEN
(*Il s'agit du premier cycle MAST après un démarrage, c'est-à-dire après
un démarrage à chaud ou à froid ou l'exécution de commandes STOP/RUN*)
(*=> initialisez les variables nécessaires pour que votre application
s'exécute comme prévu dans ce cas*)
END_IF;
42
EIO0000000757 11/2015
Fonctions système de M238,
IsFirstMastWarmCycle : indique si le cycle est le premier cycle MAST après un
démarrage à chaud
Description de la fonction
Cette fonction renvoie TRUE lors du premier cycle MAST après un démarrage à chaud.
Représentation graphique
Représentation en IL et en ST
Pour voir la représentation générale en langage IL ou ST, reportez-vous au chapitre Représentation des fonctions et blocs fonction (voir page 71).
Description des variables d'E/S
Ce tableau décrit la variable de sortie :
Sortie
Type
Commentaire
IsFirstMastWarmCycle
BOOL
TRUE au cours du premier cycle de la tâche
MAST après un démarrage à chaud.
Exemple
Reportez-vous à la description de la fonction IsFirstMastCycle (voir page 41).
EIO0000000757 11/2015
43
Fonctions système de M238,
Sous-chapitre 2.2
Fonctions d'écriture de l'automate M238
Fonctions d'écriture de l'automate M238
Vue d'ensemble
Cette section décrit les fonctions d'écriture de la bibliothèque PLCSystem de l'automate M238.
Dans de nombreux cas, des informations identiques renvoyées par ces fonctions peuvent être
obtenues par l'intermédiaire de variables système (voir page 13). Les variables système sont
répandues dans les plates-formes de commande. II est donc recommandé de les utiliser afin de
favoriser la portabilité de vos applications. Bien que des dissemblances existent, les informations
contenues dans les variables système sont souvent identiques aux données renvoyées par les
fonctions. Si vous souhaitez remplacer les fonctions de votre programme afin d'utiliser des
variables système, veillez à prendre en compte les différences qui existent dans les informations
communiquées.
Dans les descriptions de fonctions suivantes sont indiquées les variables système pouvant fournir
des informations identiques.
Contenu de ce sous-chapitre
Ce sous-chapitre contient les sujets suivants :
Sujet
44
Page
InhibitBatLowLed : désactive ou réactive le voyant de la pile (Batt).
45
ResetEventsNumber : remise à zéro du nombre d'événements
46
SetRTCDrift : Ajuster l'horodateur chaque semaine
47
EIO0000000757 11/2015
Fonctions système de M238,
InhibitBatLowLed : désactive ou réactive le voyant de la pile (Batt).
Description de la fonction
Cette fonction désactive ou réactive l'affichage de l'indicateur lumineux de décharge de la pile
(Batt).
Il peut service lorsque l'automate est utilisé sans pile externe, pour éviter d'afficher un signal
d'erreur en permanence. L'affichage de l'indicateur lumineux de décharge de la pile (Batt) est
rétabli automatiquement à la suite de la commande réinitialisation à l'origine ou d'un téléchargement à partir de la console de programmation vers l'automate.
NOTE : Pour plus d'informations sur la pile externe, consultez le Guide de référence du matériel
M238 (voir M238 Logic Controller, Guide de référence du matériel).
NOTE : Pour plus d'informations sur l'indicateur lumineux, consultez le Guide de référence du
matériel M238 (voir M238 Logic Controller, Guide de référence du matériel).
Représentation graphique
Représentation en IL et en ST
Pour voir la représentation générale en langage IL ou ST, reportez-vous au chapitre Représentation des fonctions et blocs fonction (voir page 71).
Description des variables d'E/S
Le tableau suivant décrit le paramètre d'entrée :
Entrée
Type
Commentaire
Inhiber
BOOL
VRAI = Désactive l'affichage du voyant Batt.
VRAI = Réactive l'affichage du voyant Batt.
Le tableau suivant décrit le paramètre de sortie :
Sortie
Type
Commentaire
InhibitBatLowLed
WORD
00 (hex) = opération réussie
autre = échec de l'opération
EIO0000000757 11/2015
45
Fonctions système de M238,
ResetEventsNumber : remise à zéro du nombre d'événements
Description de la fonction
Cette fonction remet à 0 le nombre d'événements qui se sont produits depuis le dernier démarrage
à froid, dont les événements détectés au niveau des entrées et les événements de comparaison
de seuil de comptage rapide.
NOTE : Le nombre d'événements détectés au niveau des entrées ou des seuils de comptage
rapide est envoyé par la fonction GetEventsNumber (voir page 26).
Représentation graphique
Représentation en IL et en ST
Pour voir la représentation générale en langage IL ou ST, reportez-vous au chapitre Représentation des fonctions et blocs fonction (voir page 71).
Description des variables d'E/S
Le tableau suivant décrit les variables de sortie :
46
Sortie
Type
Commentaire
ResetEventsNumber
BOOL
Prend la valeur TRUE si le compteur a été
remis à 0 correctement.
EIO0000000757 11/2015
Fonctions système de M238,
SetRTCDrift : Ajuster l'horodateur chaque semaine
Description de la fonction
Toutes les semaines, le jour et à l'heure spécifiés (heure:minute:), cette fonction ajoute ou soustrait
à l'horodateur (RTC) une durée spécifiée en secondes.
NOTE : La fonction SetRTCDrift doit être appelée au moins une fois pour mettre à jour les
paramètres.
Représentation graphique
Représentation en IL et en ST
Pour voir la représentation générale en langage IL ou ST, reportez-vous au chapitre Représentation des fonctions et blocs fonction (voir page 71).
Description des variables d'E/S
Le tableau suivant décrit les paramètres d'entrée :
Entrées
Type
Commentaire
RTCDrift
SINT(-59..59)
Correction en secondes (-59 ... +59)
Jour
DAY_OF_WEEK (voir page 66)
Jour du changement.
Heure
HOUR (voir page 67)
Heure du changement.
Minute
MINUTE (voir page 68)
Minute du changement.
NOTE : Si RTCDrift > 0, la modification est exécutée à Heure:Minute:00 secondes.
Si RTCDrift < 0, la modification est exécutée à Heure:Minute:59 secondes.
NOTE : Si les valeurs entrées pour RTCDrift, Day, Hour et Minute dépassent les limites, le
micrologiciel du contrôleur les remplace par les valeurs maximales.
Le tableau suivant décrit la variable de sortie :
Sortie
Type
Commentaire
SetRTCDrift
WORD
Renvoie 00 hex si la commande est correcte ou renvoie
le code d'identification de l'erreur détectée.
EIO0000000757 11/2015
47
Fonctions système de M238,
Exemple
Dans cet exemple, la fonction n'est appelée qu'une seule fois pendant le premier cycle de tâche
MAST, 20 secondes sont ajoutées à l'horodateur chaque mardi à 5:45:00 :
VAR
MyRTCDrift : SINT (-59..59) := 0;
MyDay : DAY_OF_WEEK;
MyHour : HOUR;
MyMinute : MINUTE;
END_VAR
IF IsFirstMastCycle() THEN
MyRTCDrift := 20;
MyDay := TUESDAY;
MyHour := 5;
MyMinute := 45;
SetRTCDrift(MyRTCDrift, MyDay, MyHour, MyMinute);
END_IF
48
EIO0000000757 11/2015
Modicon M238 Logic Controller
Types de données de la bibliothèque PLCSystem M238
EIO0000000757 11/2015
Chapitre 3
Types de données de la bibliothèque PLCSystem M238
Types de données de la bibliothèque PLCSystem M238
Présentation
Ce chapitre décrit les types de données de la bibliothèque PLCSystem de M238.
Deux types de données sont disponibles :
Les types de données de variable système sont utilisés par les variables système (voir page 11)
(PLC_R, PLC_W,...) de la bibliothèque PLCSystem de M238.
 Les types de données de fonction système sont utilisés par les fonctions système (voir page 23)
de lecture/écriture de la bibliothèque PLCSystem de M238.

Contenu de ce chapitre
Ce chapitre contient les sous-chapitres suivants :
Souschapitre
Sujet
Page
3.1
Types de données des variables système PLC_R/W
50
3.2
Types de données des fonctions système
59
EIO0000000757 11/2015
49
Types de données de la bibliothèque PLCSystem M238
Sous-chapitre 3.1
Types de données des variables système PLC_R/W
Types de données des variables système PLC_R/W
Présentation
Cette section répertorie et décrit les types de données de variable système, inclus dans les
structures PLC_R et PLC_W.
Contenu de ce sous-chapitre
Ce sous-chapitre contient les sujets suivants :
Sujet
50
Page
PLC_R_STATUS : codes d'état du contrôleur
51
PLC_R_APPLICATION_ERRORPLC_R_APPLICATION_ERROR : Codes d'état des erreurs
de l'application détectées
52
PLC_R_BOOT_PROJECT_STATUS : codes d'état du projet de démarrage
54
types de donnéesPLC_R_IO_STATUS : codes d'état des E/S
55
PLC_R_STOP_CAUSE : codes expliquant le passage de l'état RUN à un autre état
56
PLC_W_COMMAND : codes de commande de contrôle
58
EIO0000000757 11/2015
Types de données de la bibliothèque PLCSystem M238
PLC_R_STATUS : codes d'état du contrôleur
Description du type énuméré
Le type de données énuméré PLC_R_STATUS contient les valeurs suivantes :
Enumérateur
Valeur
PLC_R_EMPTY
0000 hex
Le contrôleur ne contient aucune application.
PLC_R_STOPPED
0001 hex
Le contrôleur est arrêté.
PLC_R_RUNNING
0002 hex
Le contrôleur fonctionne.
PLC_R_HALT
0004 hex
Le contrôleur est à l'état HALT. (Reportez-vous
au diagramme d'état du contrôleur dans le guide
de programmation de votre contrôleur.)
PLC_R_BREAKPOINT
0008 hex
Le contrôleur s'est interrompu au point d'arrêt.
EIO0000000757 11/2015
Commentaire
51
Types de données de la bibliothèque PLCSystem M238
PLC_R_APPLICATION_ERRORPLC_R_APPLICATION_ERROR : Codes d'état
des erreurs de l'application détectées
Description du type énumération
Le type de données énumération PLC_R_APPLICATION_ERROR contient les valeurs suivantes :
Enumérateur
Valeur
Commentaire
Que faire
PLC_R_APP_ERR_UNKNOWN
FFFF hex
Erreur indéfinie
détectée.
Contactez le service client le
plus proche.
PLC_R_APP_ERR_NOEXCEPTION
0000 hex
Aucune erreur
détectée.
–
PLC_R_APP_ERR_WATCHDOG
0010 hex
Tâche chien de
garde expirée.
Vérifiez votre application
Voir le chapitre . Une
réinitialisation est
nécessaire pour entrer en
mode Run.
PLC_R_APP_ERR_HARDWAREWATCHDOG
0011 hex
Chien de garde du
système expiré.
Si le problème se reproduit,
vérifiez la présence de ports
de communication
déconnectés. Si le problème
persiste, mettez à jour le
micrologiciel. Si le problème
persiste encore, contactez
votre service d'assistance
local.
PLC_R_APP_ERR_IO_CONFIG_ERROR
0012 hex
Paramètres de
configuration d'E/S
incorrects détectés.
Il est possible que votre
application soit
endommagée. Pour
résoudre ce problème,
utilisez l'une de ces
méthodes :
1. Run → Build → Clean
All
2. Exportez/Importez votre
application.
3. Mettez à niveau
SoMachine à la dernière
version.
PLC_R_APP_ERR_UNRESOLVED_EXTREFS
0018 hex
Fonctions indéfinies Supprimez les fonctions non
détectées.
résolues de l'application.
52
EIO0000000757 11/2015
Types de données de la bibliothèque PLCSystem M238
Enumérateur
Valeur
Commentaire
Que faire
PLC_R_APP_ERR_IEC_TASK_CONFIG_ERROR
0025 hex
Paramètres de
configuration de
tâche incorrects
détectés.
Il est possible que votre
application soit
endommagée. Pour
résoudre ce problème,
utilisez l'une des méthodes
suivantes :
1. Exécuter → Compiler →
Tout effacer
2. Exportez/Importez votre
application.
3. Mettez à niveau
SoMachine à la dernière
version.
PLC_R_APP_ERR_ILLEGAL_INSTRUCTION
0050 hex
Instruction indéfinie
détectée.
Procédez au débogage de
votre application pour
résoudre le problème.
PLC_R_APP_ERR_ACCESS_VIOLATION
0051 hex
Tentative d'accès à
la zone mémoire
réservée.
Procédez au débogage de
votre application pour
résoudre le problème.
PLC_R_APP_ERR_DIVIDE_BY_ZERO
0102 hex
Division d'un entier
par 0 détectée.
Procédez au débogage de
votre application pour
résoudre le problème.
PLC_R_APP_ERR_PROCESSORLOAD_WATCHDOG
0105 hex
Processeur
surchargé par les
tâches de
l'application.
Réduisez la charge de travail
de l'application en
améliorant son architecture.
Augmentez la durée du cycle
de tâche. Réduisez la
fréquence des événements.
PLC_R_APP_ERR_DIVIDE_REAL_BY_ZERO
0152 hex
Division d'un réel
par 0 détectée.
Procédez au débogage de
votre application pour
résoudre le problème.
EIO0000000757 11/2015
53
Types de données de la bibliothèque PLCSystem M238
PLC_R_BOOT_PROJECT_STATUS : codes d'état du projet de démarrage
Description du type énuméré
Le type de données énuméré PLC_R_BOOT_PROJECT_STATUS contient les valeurs suivantes :
54
Enumérateur
Valeur
Commentaire
PLC_R_NO_BOOT_PROJECT
0000 hex
Non utilisé
PLC_R_BOOT_PROJECT_CREATION_IN_PROGRESS
0001 hex
Le projet de démarrage est en cours
de création.
PLC_R_DIFFERENT_BOOT_PROJECT
0002 hex
Le projet de démarrage dans la
mémoire Flash est différent du projet
chargé dans la RAM ou n'existe pas.
PLC_R_VALID_BOOT_PROJECT
FFFF hex
Le projet de démarrage dans la
mémoire Flash est identique au projet
chargé dans la RAM.
EIO0000000757 11/2015
Types de données de la bibliothèque PLCSystem M238
types de donnéesPLC_R_IO_STATUS : codes d'état des E/S
Description du type énuméré
Le type de données énuméré PLC_R_IO_STATUS contient les valeurs suivantes :
Enumérateur
Valeur
Commentaire
PLC_R_IO_OK
FFFF hex
Les entrées/sorties sont opérationnelles.
PLC_R_IO_NO_INIT
0001 hex
Les entrées/sorties ne sont pas initialisées.
PLC_R_IO_CONF_FAULT
0002 hex
Paramètres de configuration d'E/S
incorrects détectés.
PLC_R_IO_SHORTCUT_FAULT
0003 hex
Court-circuit des entrées/sorties détecté.
RESERVE
0004 hex
Non utilisé
PLC_R_IO_COM_LOST
0005 hex
Erreur de communication avec le
coprocesseur détectée.
Les E/S embarquées ne sont pas mises à
jour.
EIO0000000757 11/2015
55
Types de données de la bibliothèque PLCSystem M238
PLC_R_STOP_CAUSE : codes expliquant le passage de l'état RUN à un autre état
Description du type énumération
Le type de données énumération PLC_R_STOP_CAUSE contient les valeurs suivantes :
Enumérateur
Valeur
Commentaire
Que faire
PLC_R_STOP_REASON_
UNKNOWN
00 hex
La valeur initiale ou la cause de l'arrêt ne
sont pas définies.
Contactez votre service
d'assistance local en cas
de raison d'arrêt non défini.
PLC_R_STOP_REASON_HW_
WATCHDOG
01 hex
Arrêté suite au timeout du chien de garde
matériel
Contactez votre service
d'assistance local.
PLC_R_STOP_REASON_
RESET
02 hex
Arrêté suite à une réinitialisation.
Voir les possibilités de
réinitialisation dans le
chapitre .
PLC_R_STOP_REASON_
EXCEPTION
03 hex
Arrêté suite à une exception.
Vérifiez votre application.
Voir le chapitre . Une
réinitialisation est
nécessaire pour entrer en
mode Run.
PLC_R_STOP_REASON_
USER
04 hex
Arrêté suite à une requête de l'utilisateur.
Voir le chapitre .
PLC_R_STOP_REASON_
IECPROGRAM
05 hex
Arrêté suite à une requête de commande
de programme (par exemple, commande
de contrôle avec le paramètre
PLC_W.q_wPLCControl:
=PLC_W_COMMAND.PLC_W_STOP;).
–
PLC_R_STOP_REASON_
DELETE
06 hex
Arrêté suite à une commande de
suppression d'application.
Voir le chapitre .
PLC_R_STOP_REASON_
DEBUGGING
07 hex
Arrêté suite au passage en mode de
débogage.
–
PLC_R_STOP_FROM_
NETWORK_REQUEST
0A hex
Arrêté suite à une requête du réseau, de la –
clé USB ou de la commande PLC_W
command.
PLC_R_STOP_FROM_ INPUT
0B hex
Arrêt requis par une entrée du contrôleur.
–
PLC_R_STOP_REASON_
RETAIN_MISMATCH
0C hex
Arrêté suite à un échec du test de
vérification du contexte lors du
redémarrage.
Les variables conservées
ont été supprimées car elle
n'étaient pas référencées
dans l'application. Si
l'application définit les
variables conservées sur
leur valeur initiale, la est
disponible.
56
EIO0000000757 11/2015
Types de données de la bibliothèque PLCSystem M238
Enumérateur
Valeur
Commentaire
PLC_R_STOP_REASON_
BOOT_APPLI_MISMATCH
0D hex
Arrêté suite à un échec de la comparaison Créez une application de
démarrage valide.
entre l'application de démarrage et celle
qui était en mémoire avant le redémarrage.
PLC_R_STOP_REASON_
POWERFAIL
0E hex
Arrêté suite à une coupure de courant.
EIO0000000757 11/2015
Que faire
–
57
Types de données de la bibliothèque PLCSystem M238
PLC_W_COMMAND : codes de commande de contrôle
Description du type énuméré
Le type de données énuméré PLC_W_COMMAND contient les valeurs suivantes :
58
Enumérateur
Valeur
Commentaire
PLC_W_STOP
0001 hex
Commande d'arrêt du contrôleur.
PLC_W_RUN
0002 hex
Commande d'exécution du contrôleur.
PLC_W_RESET_COLD
0004 hex
Commande de lancement d'une réinitialisation à froid du
contrôleur.
PLC_W_RESET_WARM
0008 hex
Commande de lancement d'une réinitialisation à chaud du
contrôleur.
EIO0000000757 11/2015
Types de données de la bibliothèque PLCSystem M238
Sous-chapitre 3.2
Types de données des fonctions système
Types de données des fonctions système
Présentation
Cette section décrit les différents types de données des fonctions système de la bibliothèque
PLCSystem de M238.
Contenu de ce sous-chapitre
Ce sous-chapitre contient les sujets suivants :
Sujet
Page
FIRMWARE_VERSION : type de sortie de la fonction GetFirmwareVersion
60
BOOT_PROJECT_STATUS : codes de sortie de la fonction GetBootProjectStatus
61
STOP_WHY : codes de sorties de la fonction GetLastStopCause
62
LOCAL_IO_GET_STATUS : codes de paramètre de la fonction GetLocalIOStatus
63
LOCAL_IO_GEN_STATUS : GetLocalIOStatus Codes de sortie de fonction
64
RIGHTBUS_GET_STATUS : GetRightBusStatus Codes de paramétrage de fonction
65
DAY_OF_WEEK : codes des paramètres de la fonction jour de SetRTCDrift
66
HOUR : type du paramètre d'heure de la fonction SetRTCDrift
67
MINUTE : type de paramètre de la fonction minute de SetRTCDrift
68
EIO0000000757 11/2015
59
Types de données de la bibliothèque PLCSystem M238
FIRMWARE_VERSION : type de sortie de la fonction GetFirmwareVersion
Description de la structure
La structure de données contient les variables suivantes :
60
Variable
Type
Description
FwVersion
DWORD
Contient la version du micrologiciel (par exemple, 2.0.20.4
= 02001404 hex).
BootVersion
WORD
Contient la version du boot (par exemple, 1.4 = 0104 hex).
AsicVersion
WORD
Contient la version du coprocesseur.
EIO0000000757 11/2015
Types de données de la bibliothèque PLCSystem M238
BOOT_PROJECT_STATUS : codes de sortie de la fonction
GetBootProjectStatus
Description du type énuméré
Le type de données énuméré contient les valeurs suivantes :
Enumérateur
Valeur
Description
VALID_BOOT_PROJECT
0000 hex
Le projet de démarrage dans la mémoire Flash est
identique au projet chargé dans la RAM.
INVALID_BOOT_PROJECT
0001 hex
Le projet de démarrage dans la mémoire Flash est différent
du projet chargé dans la RAM ou n'existe pas.
CREATE_BOOT_PROJECT_IN_
PROGRESS
0002 hex
Le projet de démarrage est en cours de création.
EIO0000000757 11/2015
61
Types de données de la bibliothèque PLCSystem M238
STOP_WHY : codes de sorties de la fonction GetLastStopCause
Description du type énuméré
Le type de données énuméré contient l'état avec les valeurs suivantes :
Enumérateur
Valeur
STOP_FROM_POWER_FAIL
00 hex
Arrêt suite à une coupure de courant.
STOP_FROM_INTERNAL_ERROR
01 hex
Arrêt dû à la détection d'une erreur interne.
STOP_FROM_APP_WATCHDOG
02 hex
Arrêt suite à un chien de garde
(voir Modicon M238 Logic Controller, Guide
de programmation) de tâche ou système.
STOP_FROM_STOP_REQUEST
03 hex
Arrêt sur demande de l'utilisateur.
STOP_FROM_POWER_FAIL_BAD_RETAINS
04 hex
Les variables conservées ont été perdues
suite à une coupure de courant.
Ce problème peut survenir si la pile interne
est déchargée, si la pile externe est
déchargée ou si celle-ci est absente.
STOP_FROM_POWER_FAIL_INVALID_BOOT_PROJECT
05 hex
Projet d'application de démarrage non
valide lorsque l'équipement est hors
tension, en raison d'un changement en
ligne sans mise à jour de l'application de
démarrage.
62
Description
EIO0000000757 11/2015
Types de données de la bibliothèque PLCSystem M238
LOCAL_IO_GET_STATUS : codes de paramètre de la fonction
GetLocalIOStatus
Description du type énuméré
Le type de données énuméré LOCAL_IO_GET_STATUS contient la valeur suivante :
Enumérateur
Valeur
Description
LOCAL_IO_GET_GEN_STATUS
00 hex
Valeur utilisée pour demander l'état général des E/S
intégrées.
EIO0000000757 11/2015
63
Types de données de la bibliothèque PLCSystem M238
LOCAL_IO_GEN_STATUS : GetLocalIOStatus Codes de sortie de fonction
Description du type énumération
Le type de données énumération LOCAL_IO_GEN_STATUS contient l'état des E/S locales avec les
valeurs suivantes :
64
Enumérateur
Valeur
Description
LOCAL_IO_OK
Hex 00
Les entrées/sorties sont opérationnelles.
LOCAL_IO_NO_INIT
Hex 01
Paramètres de configuration E/S erronés détectés.
LOCAL_IO_COM_LOST
Hex 02
Erreur de communication avec le coprocesseur.
Les E/S intégrées ne sont pas mises à jour.
LOCAL_IO_CONF_FAULT
Hex 03
Paramètres de configuration E/S erronés détectés.
EIO0000000757 11/2015
Types de données de la bibliothèque PLCSystem M238
RIGHTBUS_GET_STATUS : GetRightBusStatus Codes de paramétrage de
fonction
Type énumération - Description
Le type de données énumération contient les valeurs suivantes :
Enumérateur
Valeur
Description
RIGHTBUS_GET_GEN_STATUS
Hex 00
Paramètre de diagnostic de configuration de bus
d'extension
RIGHTBUS_GET_STATUS1
Hex 01
Paramètre de diagnostic du module 1 du bus d'extension
RIGHTBUS_GET_STATUS2
Hex 02
Paramètre de diagnostic du module 2 du bus d'extension
RIGHTBUS_GET_STATUS3
03 hex
Paramètre de diagnostic du module 3 du bus d'extension
RIGHTBUS_GET_STATUS4
04 hex
Paramètre de diagnostic du module 4 du bus d'extension
RIGHTBUS_GET_STATUS5
05 hex
Paramètre de diagnostic du module 5 du bus d'extension
RIGHTBUS_GET_STATUS6
06 hex
Paramètre de diagnostic du module 6 du bus d'extension
RIGHTBUS_GET_STATUS7
07 hex
Paramètre de diagnostic du module 7 du bus d'extension
NOTE : Pour plus d'informations sur l'utilisation du type de paramètre RIGHTBUS_GET_STATUS,
consultez la fonction GetRightBusStatus (voir page 34).
EIO0000000757 11/2015
65
Types de données de la bibliothèque PLCSystem M238
DAY_OF_WEEK : codes des paramètres de la fonction jour de SetRTCDrift
Description du type énuméré
Le type de données énuméré contient les valeurs suivantes :
66
Enumérateur
Valeur
Commentaire
MONDAY
01 hex
Règle le jour de la semaine sur lundi.
TUESDAY
02 hex
Règle le jour de la semaine sur mardi.
WEDNESDAY
03 hex
Règle le jour de la semaine sur mercredi.
THURSDAY
04 hex
Règle le jour de la semaine sur jeudi.
FRIDAY
05 hex
Règle le jour de la semaine sur vendredi.
SATURDAY
06 hex
Règle le jour de la semaine sur samedi.
SUNDAY
07 hex
Règle le jour de la semaine sur dimanche.
EIO0000000757 11/2015
Types de données de la bibliothèque PLCSystem M238
HOUR : type du paramètre d'heure de la fonction SetRTCDrift
Description du type de données
Ce type de données contient les valeurs horaires de 0 à 23.
EIO0000000757 11/2015
67
Types de données de la bibliothèque PLCSystem M238
MINUTE : type de paramètre de la fonction minute de SetRTCDrift
Description du type de données
Ce type de données contient les minutes de 0 à 59.
68
EIO0000000757 11/2015
Modicon M238 Logic Controller
EIO0000000757 11/2015
Annexes
EIO0000000757 11/2015
69
70
EIO0000000757 11/2015
Modicon M238 Logic Controller
Représentation des fonctions et blocs fonction
EIO0000000757 11/2015
Annexe A
Représentation des fonctions et blocs fonction
Représentation des fonctions et blocs fonction
Présentation
Chaque fonction peut être représentée dans les langages suivants :
IL : (Instruction List) liste d'instructions
 ST : (Structured Text) littéral structuré
 LD : (Ladder Diagram) schéma à contacts
 FBD : Function Block Diagram (Langage à blocs fonction)
 CFC : Continuous Function Chart (Diagramme fonctionnel continu)

Ce chapitre fournit des exemples de représentations de fonctions et blocs fonction et explique
comment les utiliser dans les langages IL et ST.
Contenu de ce chapitre
Ce chapitre contient les sujets suivants :
Sujet
Page
Différences entre une fonction et un bloc fonction
72
Utilisation d'une fonction ou d'un bloc fonction en langage IL
73
Utilisation d'une fonction ou d'un bloc fonction en langage ST
77
EIO0000000757 11/2015
71
Représentation des fonctions et blocs fonction
Différences entre une fonction et un bloc fonction
Fonction
Une fonction :
est une POU (Program Organization Unit ou unité organisationnelle de programme) qui renvoie
un résultat immédiat ;
 est directement appelée par son nom (et non par une instance) ;
 ne conserve pas son état entre deux appels ;
 peut être utilisée en tant qu'opérande dans des expressions.

Exemples : opérateurs booléens (AND), calculs, conversions (BYTE_TO_INT)
Bloc fonction
Un bloc fonction :
est une POU qui renvoie une ou plusieurs sorties ;
 doit être appelé par une instance (copie de bloc fonction avec nom et variables dédiées).
 Chaque instance conserve son état (sorties et variables internes) entre deux appels à partir
d'un bloc fonction ou d'un programme.

Exemples : temporisateurs, compteurs
Dans l'exemple, Timer_ON est une instance du bloc fonction TON :
72
EIO0000000757 11/2015
Représentation des fonctions et blocs fonction
Utilisation d'une fonction ou d'un bloc fonction en langage IL
Informations générales
Cette partie explique comment mettre en œuvre une fonction et un bloc fonction en langage IL.
Les fonctions IsFirstMastCycle et SetRTCDrift, ainsi que le bloc fonction TON, sont utilisés
à titre d'exemple pour illustrer les mises en œuvre.
Utilisation d'une fonction en langage IL
La procédure suivante explique comment insérer une fonction en langage IL :
Etape
Action
1
Ouvrez ou créez un POU en langage IL (Instruction List, ou liste d'instructions).
NOTE : La procédure de création d'un POU n'est pas détaillée ici. Pour plus d'informations,
reportez-vous à la section Ajout et appel de POU (voir SoMachine, Guide de programmation).
2
Créez les variables nécessaires à la fonction.
3
Si la fonction possède une ou plusieurs entrées, chargez la première entrée en utilisant
l'instruction LD.
4
Insérez une nouvelle ligne en dessous et :
 saisissez le nom de la fonction dans la colonne de l'opérateur (champ de gauche), ou
 utilisez l'Aide à la saisie pour choisir la fonction (sélectionnez Insérer l'appel de module dans
le menu contextuel).
5
Si la fonction a plusieurs entrées et que l'Aide à la saisie est utilisée, le nombre requis de lignes est
automatiquement créé avec ??? dans les champs situés à droite. Remplacez les ??? par la valeur
ou la variable appropriée en fonction de l'ordre des entrées.
6
Insérez une nouvelle ligne pour stocker le résultat de la fonction dans la variable appropriée :
saisissez l'instruction ST dans la colonne de l'opérateur (champ de gauche) et un nom de variable
dans le champ situé à droite.
Pour illustrer la procédure, utilisons les fonctions IsFirstMastCycle (sans paramètre d'entrée)
et SetRTCDrift (avec paramètres d'entrée) représentées graphiquement ci-après :
Fonction
Représentation graphique
sans paramètre d'entrée :
IsFirstMastCycle
EIO0000000757 11/2015
73
Représentation des fonctions et blocs fonction
Fonction
Représentation graphique
avec paramètres d'entrée :
SetRTCDrift
En langage IL, le nom de la fonction est utilisé directement dans la colonne de l'opérateur :
Fonction
Représentation dans l'éditeur IL de POU de SoMachine
Exemple IL d'une
fonction sans paramètre
d'entrée :
IsFirstMastCycle
Exemple IL d'une
fonction avec des
paramètres d'entrée :
SetRTCDrift
74
EIO0000000757 11/2015
Représentation des fonctions et blocs fonction
Utilisation d'un bloc fonction en langage IL
La procédure suivante explique comment insérer un bloc fonction en langage IL :
Etape
Action
1
Ouvrez ou créez un POU en langage IL (Instruction List, ou liste d'instructions).
NOTE : La procédure de création d'un POU n'est pas détaillée ici. Pour plus d'informations,
reportez-vous à la section Ajout et appel de POU (voir SoMachine, Guide de programmation).
2
Créez les variables nécessaires au bloc fonction (y compris le nom de l'instance).
3
L'appel de blocs fonction nécessite l'utilisation d'une instruction CAL :
 Utilisez l'Aide à la saisie pour sélectionner le bloc fonction (cliquez avec le bouton droit et
sélectionnez Insérer l'appel de module dans le menu contextuel).
 L'instruction CAL et les E/S nécessaires sont automatiquement créées.
Chaque paramètre (E/S) est une instruction :
 Les valeurs des entrées sont définies à l'aide de « := ».
 Les valeurs des sorties sont définies à l'aide de « => ».
4
Dans le champ CAL de droite, remplacez les ??? par le nom de l'instance.
5
Remplacez les autres ??? par une variable ou une valeur immédiate appropriée.
Pour illustrer la procédure, utilisons le bloc fonction TON représenté graphiquement ci-après :
Bloc fonction
Représentation graphique
TON
EIO0000000757 11/2015
75
Représentation des fonctions et blocs fonction
En langage IL, le nom du bloc fonction est utilisé directement dans la colonne de l'opérateur :
Bloc fonction
Représentation dans l'éditeur IL de POU de SoMachine
TON
76
EIO0000000757 11/2015
Représentation des fonctions et blocs fonction
Utilisation d'une fonction ou d'un bloc fonction en langage ST
Informations générales
Cette partie décrit comment mettre en œuvre une fonction ou un bloc fonction en langage ST.
La fonction SetRTCDrift et le bloc fonction TON sont utilisés à titre d'exemple pour illustrer les
mises en œuvre.
Utilisation d'une fonction en langage ST
La procédure suivante explique comment insérer une fonction en langage ST :
Etape
Action
1
Ouvrez ou créez un POU en langage ST (Structured Text ou Littéral structuré).
NOTE : La procédure de création d'un POU n'est pas détaillée ici. Pour plus d'informations,
reportez-vous à la section Ajout et appel de POU (voir SoMachine, Guide de programmation).
2
Créez les variables nécessaires à la fonction.
3
Utilisez la syntaxe générale dans l'éditeur ST de POU pour la représentation en langage ST d'une
fonction. La syntaxe générale est la suivante :
RésultatFonction:= NomFonction(VarEntrée1, VarEntrée2, … VarEntréex);
Pour illustrer la procédure, utilisons la fonction SetRTCDrift représentée graphiquement ciaprès :
Fonction
Représentation graphique
SetRTCDrift
La représentation en langage ST de cette fonction est la suivante :
Fonction
Représentation dans l'éditeur ST de POU de SoMachine
SetRTCDrift
PROGRAM MyProgram_ST
VAR myDrift: SINT(-29..29) := 5;
myDay: DAY_OF_WEEK := SUNDAY;
myHour: HOUR := 12;
myMinute: MINUTE;
myRTCAdjust: RTCDRIFT_ERROR;
END_VAR
myRTCAdjust:= SetRTCDrift(myDrift, myDay, myHour, myMinute);
EIO0000000757 11/2015
77
Représentation des fonctions et blocs fonction
Utilisation d'un bloc fonction en langage ST
La procédure suivante explique comment insérer un bloc fonction en langage ST :
Etape
Action
1
Ouvrez ou créez un POU en langage IL (Instruction List, ou liste d'instructions).
NOTE : La procédure de création d'un POU n'est pas détaillée ici. Pour plus d'informations
sur l'ajout, la déclaration et l'appel de POU, reportez-vous à la documentation (voir SoMachine,
Guide de programmation) associée.
2
Créez les variables d'entrée, les variables de sortie et l'instance requises pour le bloc fonction :
 Les variables d'entrée sont les paramètres d'entrée requis par le bloc fonction.
 Les variables de sortie reçoivent la valeur renvoyée par le bloc fonction.
3
Utilisez la syntaxe générale dans l'éditeur ST de POU pour la représentation en langage ST
d'un bloc fonction. La syntaxe générale est la suivante :
BlocFonction_NomInstance(Entrée1:=VarEntrée1, Entrée2:=VarEntrée2,…
Sortie1=>VarSortie1, Sortie2=>VarSortie2,…);
Pour illustrer la procédure, utilisons le bloc fonction TON représenté graphiquement ci-après :
Bloc fonction
Représentation graphique
TON
78
EIO0000000757 11/2015
Représentation des fonctions et blocs fonction
Le tableau suivant montre plusieurs exemples d'appel de bloc fonction en langage ST :
Bloc fonction
Représentation dans l'éditeur ST de POU de SoMachine
TON
EIO0000000757 11/2015
79
Représentation des fonctions et blocs fonction
80
EIO0000000757 11/2015
Modicon M238 Logic Controller
Glossaire
EIO0000000757 11/2015
Glossaire
!
%MW
Selon la norme IEC, %MW représente un registre de mots mémoire (par exemple, un objet
langage de type mot mémoire).
A
application
Programme comprenant des données de configuration, des symboles et de la documentation.
application de démarrage
(boot application). Fichier binaire qui contient l'application. En général, il est stocké dans le
contrôleur et permet à ce dernier de démarrer sur l'application que l'utilisateur a générée.
ARRAY
Agencement systématique d'objets de données d'un même type sous la forme d'un tableau défini
dans la mémoire d'un contrôleur logique. La syntaxe est la suivante : ARRAY [<dimension>]
OF <Type>
Exemple 1 : ARRAY [1..2] OF BOOL est un tableau à 1 dimension composé de 2 éléments de
type BOOL.
Exemple 2 : ARRAY [1..10, 1..20] OF INT est un tableau à 2 dimensions composés de
10 x 20 éléments de type INT.
ASIC
Acronyme de application specific integrated circuit. Processeur (puce) dont la conception est
personnalisée pour une application spécifique.
B
BOOL
(booléen) Type de données informatique standard. Une variable de type BOOL peut avoir l'une des
deux valeurs suivantes : 0 (FALSE), 1 (TRUE). Un bit extrait d'un mot est de type BOOL ; par
exemple, %MW10.4 est le cinquième bit d'un mot mémoire numéro 10.
bus d'extension
Bus de communication électronique entre des modules d'E/S d'extension et un contrôleur.
EIO0000000757 11/2015
81
Glossaire
C
CFC
Acronyme de continuous function chart, diagramme fonctionnel continu. Langage de
programmation graphique (extension de la norme IEC 61131-3) basé sur le langage de diagramme
à blocs fonction et qui fonctionne comme un diagramme de flux. Toutefois, il n'utilise pas de
réseaux et le positionnement libre des éléments graphiques est possible, ce qui permet les boucles
de retour. Pour chaque bloc, les entrées se situent à gauche et les sorties à droite. Vous pouvez
lier les sorties de blocs aux entrées d'autres blocs pour créer des expressions complexes.
chien de garde
Temporisateur spécial utilisé pour garantir que les programmes ne dépassent pas le temps de
scrutation qui leur est alloué. Le chien de garde est généralement réglé sur une valeur supérieure
au temps de scrutation et il est remis à 0 à la fin de chaque cycle de scrutation. Si le temporisation
chien de garde atteint la valeur prédéfinie (par exemple, lorsque le programme est bloqué dans
une boucle sans fin) une erreur est déclarée et le programme s'arrête.
configuration
Agencement et interconnexions des composants matériels au sein d'un système, ainsi que les
paramètres matériels et logiciels qui déterminent les caractéristiques de fonctionnement du
système.
contrôleur
Automatise des processus industriels. On parle également de contrôleur logique programmable
(PLC) ou de contrôleur programmable.
D
DWORD
Abréviation de double word, mot double. Codé au format 32 bits.
E
E/S
Entrée/sortie
E/S numérique
(Entrée/sortie numérique) Connexion de circuit individuelle au niveau du module électronique qui
correspond directement à un bit de table de données. Ce bit de table de données contient la valeur
du signal au niveau du circuit d'E/S. Il permet à la logique de contrôle un accès numérique aux
valeurs d'E/S.
élément
Raccourci pour l'élément d'un ARRAY.
82
EIO0000000757 11/2015
Glossaire
entrée analogique
Convertit les niveaux de tension ou de courant reçus en valeurs numériques. Vous pouvez stocker
et traiter ces valeurs au sein du contrôleur logique.
F
FB
Acronyme de function block, bloc fonction. Mécanisme de programmation commode qui consolide
un groupe d'instructions de programmation visant à effectuer une action spécifique et normalisée
telle que le contrôle de vitesse, le contrôle d'intervalle ou le comptage. Un bloc fonction peut
comprendre des données de configuration, un ensemble de paramètres de fonctionnement interne
ou externe et généralement une ou plusieurs entrées et sorties de données.
fonction
Unité de programmation possédant 1 entrée et renvoyant 1 résultat immédiat. Contrairement aux
blocs fonction (FBs), une fonction est appelée directement par son nom (et non via une instance),
elle n'a pas d'état persistant d'un appel au suivant et elle peut être utilisée comme opérande dans
d'autres expressions de programmation.
Exemples : opérateurs booléens (AND), calculs, conversion (BYTE_TO_INT).
G
GVL
Acronyme de global variable list, liste de variables globales. Gère les variables globales qui
peuvent être transmises entre contrôleurs sur un réseau Ethernet TCP/IP Modbus.
H
hex
(hexadécimal)
HSC
Abréviation de high-speed counter, compteur rapide
I
ID
(identificateur/identification)
IEC
Acronyme de International Electrotechnical Commission, Commission Electrotechnique
Internationale (CEI). Organisation internationale non gouvernementale à but non lucratif, qui
rédige et publie les normes internationales en matière d'électricité, d'électronique et de domaines
connexes.
EIO0000000757 11/2015
83
Glossaire
IEC 61131-3
Partie 3 d'une norme en 3 parties de l'IEC pour les équipements d'automatisation industriels. La
norme IEC 61131-3 traite des langages de programmation des contrôleurs. Elle définit 2 normes
pour la programmation graphique et 2 normes pour la programmation textuelle. Les langages de
programmation graphiques sont le schéma à contacts (LD) et le langage à blocs fonction (FBD).
Les langages textuels comprennent le texte structuré (ST) et la liste d'instructions (IL).
IL
Acronyme de instruction list, liste d'instructions. Un programme écrit en langage IL est composé
d'instructions textuelles qui sont exécutées séquentiellement par le contrôleur. Chaque instruction
comprend un numéro de ligne, un code d'instruction et un opérande (voir la norme IEC 61131-3).
INT
Abréviation de integer), nombre entier codé sur 16 bits.
L
langage en blocs fonctionnels
Un des 5 langages de programmation de logique ou de commande pris en charge par la norme
IEC 61131-3 pour les systèmes de commande. FBD est un langage de programmation orienté
graphique. Il fonctionne avec une liste de réseaux où chaque réseau contient une structure
graphique de zones et de lignes de connexion représentant une expression logique ou
arithmétique, un appel de bloc fonction ou une instruction de retour.
LD
Acronyme de ladder diagram, schéma à contacts. Représentation graphique des instructions d'un
programme de contrôleur, avec des symboles pour les contacts, les bobines et les blocs dans une
série de réseaux exécutés séquentiellement par un contrôleur (voir IEC 61131-3).
LED
Acronyme de light emitting diode, diode électroluminescente (DEL). Indicateur qui s'allume sous
l'effet d'une charge électrique de faible niveau.
LWORD
Abréviation de long word, mot long. Type de données codé sur 64 bits.
M
MAST
Tâche de processeur exécutée par le biais de son logiciel de programmation. La tâche MAST
comprend deux parties :
 IN : les entrées sont copiées dans la section IN avant exécution de la tâche MAST.
 OUT : les sorties sont copiées dans la section OUT après exécution de la tâche MAST.
mémoire flash
Mémoire non volatile qui peut être écrasée. Elle est stockée dans une puce EEPROM spéciale,
effaçable et reprogrammable.
84
EIO0000000757 11/2015
Glossaire
micrologiciel
Représente le BIOS, les paramètres de données et les instructions de programmation qui
constituent le système d'exploitation d'un contrôleur. Le micrologiciel est stocké dans la mémoire
non volatile du contrôleur.
Modbus
Protocole qui permet la communication entre de nombreux équipements connectés au même
réseau.
O
octet
Type codé sur 8 bits, de 00 à FF au format hexadécimal.
P
PLC
Acronyme de programmable logic controller, contrôleur logique programmable. Ordinateur
industriel utilisé pour automatiser des processus de fabrication et autres processus électromécaniques. Les PLCs diffèrent des ordinateurs courants par le fait qu'ils sont conçus pour utiliser
plusieurs tableaux d'entrées et de sorties et pour accepter des conditions de choc, de vibration, de
température et d'interférences électriques plus rudes.
POU
Acronyme de program organization unit, unité organisationnelle de programme. Déclaration de
variables dans le code source et jeu d'instructions correspondant. Les POUs facilitent la
réutilisation modulaire de programmes logiciels, de fonctions et de blocs fonction. Une fois
déclarées, les POUs sont réutilisables.
programme
Composant d'une application constitué de code source compilé qu'il est possible d'installer dans
la mémoire d'un contrôleur logique.
R
réseau
Système d'équipements interconnectés qui partageant un chemin de données et un protocole de
communications communs.
RTC
Acronyme de real-time clock, horloge en temps réel. Horloge horaire et calendaire supportée par
une batterie qui fonctionne en continu, même lorsque le contrôleur n'est pas alimenté, jusqu'à la
fin de l'autonomie de la batterie.
EIO0000000757 11/2015
85
Glossaire
run
Commande qui ordonne au contrôleur de scruter le programme d'application, lire les entrées
physiques et écrire dans les sorties physiques en fonction de la solution de la logique du
programme.
S
SINT
Abréviation de signed integer, entier signé. Valeur sur 15 bits plus signe.
ST
Acronyme de structured text, texte structuré. Langage composé d'instructions complexes et
d'instructions imbriquées (boucles d'itération, exécutions conditionnelles, fonctions). Le langage
ST est conforme à la norme IEC 61131-3.
STOP
Commande ordonnant au contrôleur de cesser d'exécuter un programme d'application.
T
tâche
Ensemble de sections et de sous-programmes, exécutés de façon cyclique ou périodique pour la
tâche MAST, ou périodique pour la tâche FAST.
Une tâche présente un niveau de priorité et des entrées et sorties du contrôleur lui sont associées.
Ces E/S sont actualisées par rapport à la tâche.
Un contrôleur peut comporter plusieurs tâches.
U
UINT
Abréviation de unsigned integer, entier non signé. Valeur codée sur 16 bits.
V
variable
Unité de mémoire qui est adressée et modifiée par un programme.
variable non localisée
Variable qui n'a pas d'adresse (voir variable localisée).
variable système
Variable qui fournit des données de contrôleur et des informations de diagnostic et permet
d'envoyer des commandes au contrôleur.
86
EIO0000000757 11/2015
Glossaire
W
WORD
Type de données codé sur 16 bits.
EIO0000000757 11/2015
87
Glossaire
88
EIO0000000757 11/2015
Modicon M238 Logic Controller
Index
EIO0000000757 11/2015
Index
Specials
B
BOOT_PROJECT_STATUS
types de données, 61
D
DAY_OF_WEEK
types de données, 66
F
FIRMWARE_VERSION
types de données, 60
fonctions
différences entre une fonction et un bloc
fonction, 72
GetBatteryLevel, 25
GetEventsNumber, 26
GetFirmwareVersion, 27
GetHardwareVersion, 28
GetLastStopCause, 29
GetLastStopTime, 30
GetLocalIOStatus, 31
GetPlcFault, 33
GetRightBusStatus, 34
GetSerialNumber, 38
GetShortCutStatus, 39
InhibitBatLowLed, 45
IsFirstMastColdCycle, 40
IsFirstMastCycle, 41
IsFirstMastWarmCycle, 43
ResetEventsNumber, 46
SetRTCDrift, 47
utilisation d'une fonction ou d'un bloc
fonction en langage IL, 73
utilisation d'une fonction ou d'un bloc
fonction en langage ST, 77
EIO0000000757 11/2015
G
GetBatteryLevel
fonctions, 25
GetEventsNumber
fonctions, 26
GetFirmwareVersion
fonctions, 27
GetHardwareVersion
fonctions, 28
GetLastStopCause
fonctions, 29
GetLastStopTime
fonctions, 30
GetLocalIOStatus
fonctions, 31
GetPlcFault
fonctions, 33
GetRightBusStatus
fonctions, 34
GetSerialNumber
fonctions, 38
GetShortCutStatus
fonctions, 39
H
HOUR
types de données, 67
I
InhibitBatLowLed
fonctions, 45
IsFirstMastColdCycle
fonctions, 40
IsFirstMastCycle
fonctions, 41
IsFirstMastWarmCycle
fonctions, 43
89
Index
L
LOCAL_IO_GEN_STATUS
types de données, 64
LOCAL_IO_GET_STATUS
types de données, 63
M
MINUTE
types de données, 68
P
PLC_R
variable système, 17
PLC_R_APPLICATION_ERROR
types de données, 52
PLC_R_BOOT_PROJECT_STATUS
types de données, 54
PLC_R_STATUS
types de données, 51
PLC_R_STOP_CAUSE
types de données, 56
PLC_W
variable système, 19
PLC_W_COMMAND
types de données, 58
R
ResetEventsNumber
fonctions, 46
RIGHTBUS_GET_STATUS
types de données, 65
STOP_WHY
types de données, 62
T
type de données
PLC_R_STOP_CAUSE, 56
types de données, 52
BOOT_PROJECT_STATUS, 61
DAY_OF_WEEK, 66
FIRMWARE_VERSION, 60
HOUR, 67
LOCAL_IO_GEN_STATUS, 64
LOCAL_IO_GET_STATUS, 63
MINUTE, 68
PLC_R_BOOT_PROJECT_STATUS, 54
PLC_R_IO_STATUS, 55
PLC_R_STATUS, 51
PLC_W_COMMAND, 58
RIGHTBUS_GET_STATUS, 65
STOP_WHY, 62
V
variable système
PLC_R, 17
PLC_W, 19
SERIAL_R, 21
SERIAL_W, 22
variables système
définition, 13
Variables système
Utilisation, 15
S
SERIAL_R
variable système, 21
SERIAL_W
variable système, 22
SetRTCDrift
fonctions, 47
90
EIO0000000757 11/2015

Manuels associés