Schneider Electric PackML Mode d'emploi

Ajouter à Mes manuels
112 Des pages
Schneider Electric PackML Mode d'emploi | Fixfr
PackML
EIO0000002251 11/2015
PackML
Guide de la bibliothèque
EIO0000002251.00
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
EIO0000002251 11/2015
Table des matières
Consignes de sécurité . . . . . . . . . . . . . . . . . . . . . . . . . .
A propos de ce manuel . . . . . . . . . . . . . . . . . . . . . . . . .
Partie I Informations générales . . . . . . . . . . . . . . . . . . . . .
Chapitre 1 Informations spécifiques de sécurité . . . . . . . . . . . . .
Qualification du Personnel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instructions d’utilisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Informations relatives au produit . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapitre 2 Présentation de la bibliothèque . . . . . . . . . . . . . . . . . .
Informations générales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Modes de fonctionnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PackTags. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Partie II Énumérations et Structures . . . . . . . . . . . . . . . . .
Chapitre 3 Énumérations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ET_Cmd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ET_Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ET_Result . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ET_States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapitre 4 Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1 Structures Principales PackTags. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ST_Administration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ST_Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ST_Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 Autres Structures Principales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ST_InitAlarm. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ST_UnitModeDefinition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ST_VisInterface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3 Sous-Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ST_Alarm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ST_CountDescrip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ST_Descriptor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ST_Ingredient. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
EIO0000002251 11/2015
5
9
11
13
14
15
16
17
18
23
26
27
29
30
31
32
34
37
38
39
41
42
44
45
46
48
52
53
54
55
56
3
ST_Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ST_Product . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ST_StateInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ST_Timestamp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Partie III Variables globales . . . . . . . . . . . . . . . . . . . . . . . . .
Chapitre 5 Liste des constantes globales . . . . . . . . . . . . . . . . . . .
GCL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapitre 6 Liste des paramètres globaux . . . . . . . . . . . . . . . . . . .
GPL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Partie IV Unités d’organisation de programme (POU) . . . .
Chapitre 7 Blocs fonction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FB_DataManagement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FB_ModeManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FB_VisController. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapitre 8 Fonctions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FC_CheckCmd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FC_EtResultToString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FC_InitStateModelChangeStates. . . . . . . . . . . . . . . . . . . . . . . .
FC_InitStateModelExistingStates . . . . . . . . . . . . . . . . . . . . .
FC_SetAlarm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Partie V Visualisation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapitre 9 BackgroundFrames . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FR_<BackgroundFrame> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapitre 10 States Frames. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FR_<State> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chapitre 11 Cadres de Visualisation. . . . . . . . . . . . . . . . . . . . . . . . .
Généralités. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FR_Alarm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FR_AlarmHistory. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FR_CurrentModeAndStateTime . . . . . . . . . . . . . . . . . . . . . . . . . . .
FR_DynStateModel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FR_ModeAndStateTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FR_ProdConsumedCount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FR_ProdDefectiveCount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FR_ProdProcessedCount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
57
58
59
60
61
63
63
65
65
67
69
70
73
77
79
80
83
84
87
90
93
95
95
97
97
99
100
101
102
103
104
106
108
109
110
111
EIO0000002251 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.
EIO0000002251 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.
AVANT DE COMMENCER
N’utilisez pas ce produit sur les machines non pourvues de protection efficace du point de fonctionnement. L’absence de ce type de protection sur une machine présente un risque de blessures
graves pour l’opérateur.
AVERTISSEMENT
EQUIPEMENT NON PROTEGE
z
z
N’utilisez pas ce logiciel ni les automatismes associés sur des équipements non équipés de
protection du point de fonctionnement.
N’accédez pas aux machines pendant leur fonctionnement.
Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des
dommages matériels.
Cet automatisme et le logiciel associé permettent de commander des processus industriels divers.
Le type ou le modèle d’automatisme approprié pour chaque application dépendra de facteurs tels
que la fonction de commande requise, le degré de protection exigé, les méthodes de production,
des conditions inhabituelles, la législation, etc. Dans certaines applications, plusieurs processeurs
seront nécessaires, notamment lorsque la redondance de sauvegarde est requise.
Vous seul, en tant que constructeur de machine ou intégrateur de système, pouvez connaître
toutes les conditions et facteurs présents lors de la configuration, de l’exploitation et de la
maintenance de la machine, et êtes donc en mesure de déterminer les équipements automatisés,
ainsi que les sécurités et verrouillages associés qui peuvent être utilisés correctement. Lors du
choix de l’automatisme et du système de commande, ainsi que du logiciel associé pour une
application particulière, vous devez respecter les normes et réglementations locales et nationales
en vigueur. Le National Safety Council’s Accident Prevention Manual (reconnu aux États-Unis)
fournit également de nombreuses informations utiles.
Dans certaines applications, telles que les machines d’emballage, une protection supplémentaire,
comme celle du point de fonctionnement, doit être fournie pour l’opérateur. Elle est nécessaire si
les mains ou d’autres parties du corps de l’opérateur peuvent entrer dans la zone de point de
pincement ou d’autres zones dangereuses, risquant ainsi de provoquer des blessures graves. Les
produits logiciels seuls, ne peuvent en aucun cas protéger les opérateurs contre d’éventuelles
blessures. C’est pourquoi le logiciel ne doit pas remplacer la protection de point de fonctionnement
ou s’y substituer.
6
EIO0000002251 11/2015
Avant de mettre l’équipement en service, assurez-vous que les dispositifs de sécurité et de
verrouillage mécaniques et/ou électriques appropriés liés à la protection du point de fonctionnement ont été installés et sont opérationnels. Tous les dispositifs de sécurité et de verrouillage
liés à la protection du point de fonctionnement doivent être coordonnés avec la programmation des
équipements et logiciels d’automatisation associés.
NOTE : La coordination des dispositifs de sécurité et de verrouillage mécaniques/électriques du
point de fonctionnement n’entre pas dans le cadre de cette bibliothèque de blocs fonction, du
Guide utilisateur système ou de toute autre mise en œuvre référencée dans ces documents.
DÉMARRAGE ET TEST
Avant toute utilisation de l’équipement de commande électrique et des automatismes en vue d’un
fonctionnement normal après installation, un technicien qualifié doit procéder à un test de
démarrage afin de vérifier que l’équipement fonctionne correctement. Il est essentiel de planifier
une telle vérification et d’accorder suffisamment de temps pour la réalisation de ce test dans sa
totalité.
ATTENTION
RISQUES INHERENTS AU FONCTIONNEMENT DE L’EQUIPEMENT
z
z
z
Assurez-vous que toutes les procédures d’installation et de configuration ont été respectées.
Avant de réaliser les tests de fonctionnement, retirez tous les blocs ou autres cales
temporaires utilisés pour le transport de tous les dispositifs composant le système.
Enlevez les outils, les instruments de mesure et les débris éventuels présents sur
l’équipement.
Le non-respect de ces instructions peut provoquer des blessures ou des dommages
matériels.
Effectuez tous les tests de démarrage recommandés dans la documentation de l’équipement.
Conservez toute la documentation de l’équipement pour référence ultérieure.
Les tests logiciels doivent être réalisés à la fois en environnement simulé et réel.
Vérifiez que le système entier est exempt de tout court-circuit et mise à la terre temporaire non
installée conformément aux réglementations locales (conformément au National Electrical Code
des Etats-Unis, par exemple). Si un test diélectrique est requis, suivez les recommandations
figurant dans la documentation de l’équipement afin d’éviter d’endommager accidentellement
l’équipement.
Avant de mettre l’équipement sous tension :
z Enlevez les outils, les instruments de mesure et les débris éventuels présents sur l’équipement.
z Fermez la porte de l’enceinte de l’équipement.
z Retirez toutes les mises à la terre temporaires des câbles d’alimentation entrants.
z Effectuez tous les tests de démarrage conseillés par le fabricant.
EIO0000002251 11/2015
7
FONCTIONNEMENT ET REGLAGES
Les précautions suivantes sont extraites du document NEMA Standards Publication ICS 7.1-1995
(la version anglaise prévaut) :
z Malgré le soin apporté à la conception et à la fabrication de l’équipement ou au choix et à
l’évaluation des composants, des risques subsistent en cas d’utilisation inappropriée de
l’équipement.
z Il arrive parfois que l’équipement soit déréglé accidentellement, entraînant ainsi un fonctionnement non satisfaisant ou non sécurisé. Respectez toujours les instructions du fabricant pour
effectuer les réglages fonctionnels. Les personnes ayant accès à ces réglages doivent
connaître les instructions du fabricant de l’équipement et les machines utilisées avec
l’équipement électrique.
z Seuls ces réglages fonctionnels, requis par l’opérateur, doivent lui être accessibles. L’accès aux
autres commandes doit être limité afin d’empêcher les changements non autorisés des
caractéristiques de fonctionnement.
8
EIO0000002251 11/2015
A propos de ce manuel
Présentation
Objectif du document
Ce document décrit la bibliothèque PackML
La bibliothèque fournit des fonctions et des blocs fonctions, des structures, et des cadres de
visualisation, qui sont autant d’outils vous permettant de créer des applications en conformité avec
PackML et les PackTags, tels que définis par la norme ISA-TR88.00.02.
Cette bibliothèque n’est pas, et ne peut être, une implémentation complète de la norme ISATR88.00.02, étant donné qu’il vous incombe de faire en sorte que le code de l’application supporte
votre machine ou votre processus. En revanche, cette bibliothèque est un outil qui vous aidera à
implémenter la norme.
Champ d’application
Ce document a été actualisé pour la version de SoMachine V4.1 SP2.
Les caractéristiques techniques des équipements décrits dans ce document sont également
fournies en ligne. Pour accéder à ces informations en ligne :
Etape
Action
1
Accédez à la page d’accueil de Schneider Electric www.schneider-electric.com.
2
Dans la zone Search, saisissez la référence d’un produit ou le nom d’une gamme de produits.
z N’insérez pas d’espaces dans le numéro de modèle ou la gamme de produits.
z Pour obtenir des informations sur un ensemble de modules similaires, utilisez des
astérisques (*).
3
Si vous avez saisi une référence, accédez aux résultats de recherche Product datasheets et
cliquez sur la référence qui vous intéresse.
Si vous avez saisi une gamme de produits, accédez aux résultats de recherche Product Ranges
et cliquez sur la gamme de produits qui vous intéresse.
4
Si plusieurs références s’affichent dans les résultats de recherche Products, cliquez sur la
référence qui vous intéresse.
5
Selon la taille de l’écran, vous serez peut-être amené à faire défiler la page pour consulter la
fiche technique.
6
Pour enregistrer ou imprimer une fiche technique au format .pdf, cliquez sur Download XXX
product datasheet.
EIO0000002251 11/2015
9
Les caractéristiques présentées dans ce manuel devraient être identiques à celles fournies en
ligne. Toutefois, en application de notre politique d’amélioration continue, nous pouvons être
amenés à réviser le contenu du document afin de le rendre plus clair et plus précis. Si vous
constatez une différence entre le manuel et les informations fournies en ligne, utilisez ces
dernières en priorité.
10
EIO0000002251 11/2015
PackML
Informations générales
EIO0000002251 11/2015
Partie I
Informations générales
Informations générales
Contenu de cette partie
Cette partie contient les chapitres suivants :
Chapitre
Titre du chapitre
Page
1
Informations spécifiques de sécurité
13
2
Présentation de la bibliothèque
17
EIO0000002251 11/2015
11
Informations générales
12
EIO0000002251 11/2015
PackML
Informations spécifiques de sécurité
EIO0000002251 11/2015
Chapitre 1
Informations spécifiques de sécurité
Informations spécifiques de sécurité
Présentation
Cette rubrique contient les informations permettant de travailler avec la bibliothèque PackML. Le
personnel amené à travailler avec la bibliothèque PackML doit lire et observer ces informations .
Contenu de ce chapitre
Ce chapitre contient les sujets suivants :
Sujet
Page
Qualification du Personnel
14
Instructions d’utilisation
15
Informations relatives au produit
16
EIO0000002251 11/2015
13
Informations spécifiques de sécurité
Qualification du Personnel
Présentation
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 et du fonctionnement des équipements électriques et installations et
ayant bénéficié d’une formation de sécurité afin de reconnaître et d’éviter les risques encourus.
La personne qualifiée doit être capable de détecter d’éventuels dangers qui pourraient découler
du paramétrage, de modifications des valeurs de paramétrage et plus généralement des
équipements mécaniques, électriques ou électroniques. La personne qualifiée doit connaître les
normes, dispositions et régulations liées à la prévention des accidents de travail, et doit les
observer lors de la conception et de l’implémentation du système.
14
EIO0000002251 11/2015
Informations spécifiques de sécurité
Instructions d’utilisation
Présentation
Ce produit est une bibliothèque à utiliser avec un système de commande et des servoamplificateurs. La bibliothèque n’est conçue qu’en vue d’une utilisation telle que décrite dans la
présente documentation, appliquée au secteur industriel.
Observez en permanence les instructions applicables liées à la sécurité, les conditions spécifiques
et les données techniques.
Réalisez une analyse des risques en rapport avec l’utilisation spécifique avant d’utiliser ce produit.
Prenez les mesures de sécurité qui découlent des résultats.
Étant donné que ce produit est utilisé au sein d’un système qui l’englobe, vous devez vous assurer
de la sécurité du personnel par le biais du concept de ce système global (le concept de machine,
par exemple).
Aucune autre utilisation n’est prévue. Toute autre utilisation pourrait être dangereuse.
L’installation, l’utilisation, la réparation et la maintenance des appareils et équipements électriques
doivent être assurées par du personnel qualifié uniquement.
EIO0000002251 11/2015
15
Informations spécifiques de sécurité
Informations relatives au produit
Informations relatives au produit
Avant de tenter de fournir une solution (machine ou processus) pour une application spécifique en
utilisant les POU trouvés dans la bibliothèque, vous devez tenir compte de la réalisation et de
l’exécution des bonnes pratiques. La liste non exhaustive de ces pratiques liées à cette
bibliothèque inclut l’analyse des risques, la sécurité fonctionnelle, la compatibilité des composants,
les tests et la validation du système.
AVERTISSEMENT
MAUVAISE UTILISATION DES POU
z
z
z
z
z
z
Effectuez une analyse de la sécurité de l’application et des appareils installés.
Assurez-vous que les POU sont compatibles avec les appareils du système et n’ont pas
d’effets inattendus sur le bon fonctionnement du système.
Utilisez les paramètres appropriés, notamment les valeurs limites, et observez l’usure de la
machine et son comportement à l’arrêt.
Vérifiez que les capteurs et déclencheurs sont compatibles avec les POU sélectionnés.
Testez de manière approfondie toutes les fonctions durant la vérification et la mise en service
dans tous les modes de fonctionnement.
Indiquez des méthodes indépendantes pour les fonctions de commande critiques (arrêt
d’urgence, conditions de dépassement des valeurs limites, etc.) en fonction d’une analyse de
la sécurité, des règles correspondantes et des réglementations.
Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des
dommages matériels.
AVERTISSEMENT
FONCTIONNEMENT INATTENDU DE L’EQUIPEMENT
Actualisez votre programme d’application, si nécessaire, en portant une attention particulière aux
réglages de l’adresse d’E/S, dès que vous modifiez la configuration matérielle.
Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des
dommages matériels.
16
EIO0000002251 11/2015
PackML
Description
EIO0000002251 11/2015
Chapitre 2
Présentation de la bibliothèque
Présentation de la bibliothèque
Contenu de ce chapitre
Ce chapitre contient les sujets suivants :
Sujet
Page
Informations générales
18
Modes de fonctionnement
23
PackTags
26
EIO0000002251 11/2015
17
Description
Informations générales
Présentation de la bibliothèque
Cette bibliothèque fournit des fonctions et des blocs fonctions, des structures, et des cadres de
visualisation, qui sont autant d’outils vous permettant de créer des applications en conformité avec
PackML et les PackTags, tels que définis par la norme ISA-TR88.00.02.
Caractéristique
Valeur
Titre de la bibliothèque
PackML
Société
Schneider Electric
Catégorie
Application → Solution → Emballage/Conditionnement
Composant
Emballage/Conditionnement
Bibliothèques et modèles d’applications →
Emballage/Conditionnement
Espace de nom par défaut
PackML
Attribut du modèle de langage
qualified-access-only (voir SoMachine Motion, Functions and
Libraries User Guide)
Bibliothèque post-compatible
Oui (FCL (voir SoMachine Motion, Functions and Libraries User
Guide))
NOTE : Cette bibliothèque est paramétrée en qualified-access-only. Cela signifie que l’on ne peut
accéder aux POU, aux structures de données, aux énumérations, et aux constantes qu’en utilisant
l’espace de nom de la bibliothèque. L’espace de nom par défaut de la bibliothèque est PackML.
Exemple de projet
Le projet PackMLExample montre comment implémenter un programme de machine
d’emballage/conditionnement basé sur la norme ISA-TR88.00.02.
Il est possible que la configuration spécifique requise pour votre application diffère de celle
supposée dans les exemples, modèles, ou architectures décrits ici, quels qu’ils soient. Dans ce
cas, il vous faudra adapter à vos propres besoins les informations proposées dans ce document
et dans d’autres documents en rapport avec celui-ci. Pour ce faire, vous devrez consulter la
documentation spécifique aux composants matériels et/ou logiciels que vous pourriez ajouter ou
insérer à la place d’un autre pour obtenir les informations contenues dans cette documentation.
Portez une attention particulière à respecter toutes les informations de sécurité, exigences
électriques et normes obligatoires pouvant s’appliquer à vos adaptations.
18
EIO0000002251 11/2015
Description
AVERTISSEMENT
INCOMPATIBILITE REGLEMENTAIRE
Vérifiez que tous les équipements concernés et les systèmes conçus sont conformes à toutes
les normes et réglementations locales, régionales et nationales applicables.
Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des
dommages matériels.
Le chemin d’accès pour le projet est SoMachine Motion Central → Help Center → Learning
Center → Examples → Packaging.
Présentation des POU
Cette bibliothèque contient les blocs fonction et les fonctions suivants :
Bloc fonction / fonction
Utilisation
FB_DataManagement (voir page 70)
Enregistre les informations relatives aux durées, au datage et
à la production.
FB_ModeManager (voir page 73)
Vérifie si un changement de mode de fonctionnement est
possible dans l’état actuel et effectue des vérifications de
cohérence sur les définitions des modes de fonctionnement.
FB_VisController (voir page 77)
Traite les données fournies par les balises d’administration et
les balises d’état, et transmet ces données aux cadres de
visualisation, via l’interface de visualisation entrées/sorties
iq_stVisInterface de type ST_VisInterface.
FC_CheckCmd (voir page 73)
Vérifie si la commande transmise peut être acceptée dans
l’état actuel (selon la définition du mode de fonctionnement
indiqué). Si tel est le cas, cette fonction retourne l’état cible de
la transition déclenchée par cette commande.
FC_InitStateModelChangeStates
(voir page 84)
Initialise les états dans lesquels un changement de mode de
fonctionnement est autorisé, pour un mode de fonctionnement
donné.
FC_InitStateModelExistingStates
(voir page 87)
Initialise les états existants pour un mode de fonctionnement.
FC_SetAlarm (voir page 90)
Écrit des messages d’erreur et d’alarme dans les balises
d’administration Admin.Alarm[#] et
Admin.AlarmHistory[#].
EIO0000002251 11/2015
19
Description
Présentation des Énumérations
Énumération
Utilisation
ET_Cmd (voir page 30)
Contient les commandes de changement d’état au sein d’un
mode de fonctionnement donné. Les commandes sont
utilisées pour faire la transition d’un État d’attente à un autre
état (la commande Start, par exemple). Les commandes
Stop et Abort peuvent également être déclenchées durant
n’importe quel état (consultez le Diagramme des modèles
d’état (voir page 24)).
ET_Modes (voir page 31)
Contient les modes de fonctionnement prédéfinis
(Producing, par exemple).
ET_Result (voir page 32)
Contient les valeurs possibles qui donnent les résultats des
opérations exécutées par le bloc fonction.
ET_States (voir page 34)
Contient les états possibles qui composent un mode de
fonctionnement.
Présentation des Structures
20
Structure
Utilisation
ST_Administration (voir page 39)
Fournit les variables/balises qui contiennent des données
importantes d’OEE (Overall Equipment Effectiveness) (par
exemple : temps d’arrêt, motifs des temps d’arrêt, etc.). De
plus, cette variable peut fournir des informations relatives à la
production (par exemple, des informations sur les alarmes et
les états).
ST_Command (voir page 41)
Fournit les variables qui représentent principalement
l’interface de contrôle. En utilisant ces balises, on peut
sélectionner le mode de fonctionnement, forcer les transitions
d’état, et transmettre les recettes et les formats.
ST_InitAlarm (voir page 45)
Fournit les information pour paramétrer un message d’alarme
dans la fonction FC_SetAlarm.
ST_UnitModeDefinition (voir page 46)
Fournit les informations pour initialiser les modes de
fonctionnement dans le bloc fonction FB_ModeManager.
ST_Status (voir page 42)
Fournit les variables qui contiennent les informations d’état
(par exemple, quel mode de fonctionnement est actif, quel état
est actif, etc.).
ST_VisInterface (voir page 48)
Structure dédiée à la visualisation.
ST_Alarm (voir page 53)
Fournit le numéro de message de diagnostic de la machine.
ST_CountDescrip (voir page 54)
Fournit l’ID et les paramètres de comptage produits.
ST_Descriptor (voir page 55)
Fournit les informations du paramètre (id, nom, unité, et
valeur).
ST_Ingredient (voir page 56)
Fournit l’ID et les paramètres de l’ingrédient.
EIO0000002251 11/2015
Description
Structure
Utilisation
ST_Interface (voir page 57)
Fournit des informations relatives à la machine PackML en
aval (suivante).
ST_Product (voir page 58)
Fournit des informations sur un produit.
ST_StateInfo (voir page 59)
Fournit les informations indiquant si l’état existe et si un
changement de mode de fonctionnement est possible.
L’information est utilisée pour initialiser le gestionnaire des
modes de fonctionnement.
ST_Timestamp (voir page 60)
Fournit la date et l’heure.
Présentation des Cadres
Cadres d’arrière-plan
Les cadres de visualisation FR_<BackgroundFrame> (voir page 95) (FR_Control1024x768,
par exemple) sont des cadres d’arrière-plan qui permettent de grouper les autres cadres, et de
réaliser des fonctionnalités de contrôle et de navigation.
Cadre
FR_Control1024x768
FR_Nav1024x768
FR_NavControl1024x768
FR_Control800x600
FR_Nav800x600
FR_NavControl800x600
Cadres d’état
Les cadres de visualisation FR_<State> (voir page 97) (FR_Stopped, par exemple) sont des
cadres pour chaque état au sein d’un modèle.
Les cadres sont utilisés par le FR_DynStateModel (voir page 104) pour afficher chaque état du
modèle d’état pour les modes de fonctionnement.
Cadre
FR_Aborted
FR_Aborting
FR_Clearing
FR_Complete
FR_Completing
FR_Execute
FR_Held
EIO0000002251 11/2015
21
Description
Cadre
FR_Holding
FR_Idle
FR_Resetting
FR_Starting
FR_Stopped
FR_Stopping
FR_Suspended
FR_Suspending
FR_UnHolding
FR_UnSuspending
Cadres de visualisation
En plus de chaque balise, fonction, et bloc fonction, la bibliothèque contient certains cadres de
visualisation, qui génèrent dynamiquement un modèle à état approprié pour le mode de fonctionnement pendant le fonctionnement en ligne ou qui affichent des données importantes d’OEE
(Overall Equipment Effectiveness).
22
Cadre
Utilisation
FR_Alarm (voir page 101)
Affiche une liste d’alarmes des alarmes actives.
FR_AlarmHistory (voir page 102)
Affiche l’historique des alarmes.
FR_CurrentModeAndStateTime
(voir page 103)
Affiche la durée de fonctionnement de la machine dans le
mode de fonctionnement et l’état actuels.
FR_DynStateModel (voir page 104)
Affiche dynamiquement la visualisation du modèle d’état
pendant le fonctionnement en ligne.
FR_ModeAndStateTime (voir page 106)
Affiche la durée de fonctionnement des modes de
fonctionnement dt leurs états respectifs.
FR_ProdConsumedCount (voir page 108)
Affiche les chiffres de comptage produits des consommables.
FR_ProdDefectiveCount
(voir page 109)
Affiche les chiffres de comptage produits des marchandises
détectées comme non conformes.
FR_ProdProcessedCount
(voir page 110)
Affiche les chiffres de comptage produits des marchandises
produites.
EIO0000002251 11/2015
Description
Modes de fonctionnement
Présentation
Les recommandations PackML définissent des modèles d’état normalisés afin de présenter de
façon standardisée le comportement fondamental d’une machine d’emballage/conditionnement.
Selon les recommandations PackML, chaque machine d’emballage/conditionnement peut
supporter de nombreux modes de fonctionnement.
Chaque mode de fonctionnement peut comprendre jusqu’à 17 états (Aborted, Aborting,
Clearing, Complete, Completing, Execute, Held, Holding, Idle, Resetting, Starting, Stopped,
Stopping, Suspended, Suspending, Un-Holding et Un-Suspending).
Pour passer d’un état à un autre, il existe des transitions entre les états. Chaque transition est
déclenchée soit par une commande de transition d’état, soit par la condition de SC (State
Complete).
L’implémentation de la bibliothèque PackML se concentre sur le mode de contrôle de l’unité tel que
décrit dans la norme ISA-TR88.00.02. Dans tous les cas, lorsque ce document fait référence au
mode de fonctionnement, il s’agit spécifiquement du mode de contrôle de l’unité.
Utiliser les Modèles d’État
Les modèles d’état dans la bibliothèque PackML sont basées sur le modèle à 17 états, tel que
défini dans la norme ISA-TR88.00.02 : consultez le diagramme ci-après. Un modèle d’état doit
contenir ces états, ou un sous-ensemble de ces états.
Un modèle d’état se définit par la spécification des états existants pour le mode de fonctionnement.
Les transitions entre états sont créées automatiquement, et dépendent implicitement des états
sélectionnés.
ST_UnitModeDefinition est la structure qui représente le modèle d’état d’un mode de
fonctionnement donné.
FC_InitStateModelExistingStates initialise l’existence ou non des états.
FC_InitStateModelChangeStates initialise les états qui peuvent permettre un changement
de mode de fonctionnement.
FB_ModeManager vérifie que le modèle d’état est cohérent, vérifie qu’un changement de mode
de fonctionnement est possible, et trouve l’état cible dans ce mode de fonctionnement.
FC_CheckCmd vérifie la validité d’une commande de transition d’état et retourne l’état cible
correspondant.
Les cadres de visualisation et le FB_VisController sont utilisés pour visualiser le modèle d’état
et lui fournir une interface de mise en service.
Il vous incombe d’implémenter un flux correct dans le modèle d’état, en accord avec les transitions
définies dans le modèle d’état, ainsi que d’implémenter les changements de modes de fonctionnement. Les POU fournis dans la bibliothèque peuvent vous aider à implémenter cette logique
(FB_ModeManager et FC_CheckCmd).
EIO0000002251 11/2015
23
Description
Il vous incombe d’implémenter le suivi du mode de fonctionnement et d’état, ainsi que
d’implémenter un comportement de machine qui correspond aux états, aux transitions, et aux
modes de fonctionnement.
Diagramme de Modèle d’État
Le diagramme ci-dessous illustre le modèle d’état pour le mode de fonctionnement comportant les
17 états :
24
EIO0000002251 11/2015
Description
Types d’États
Dans le cadre du modèle d’état, on distingue trois types d’états :
Type d’état
Description
État d’attente
Ce type d’état reste actif jusqu’à ce qu’une commande de
transition d’état déclenche la transition vers un autre état
(par exemple : Start, Reset, Abort, Clear, etc.).
État d’action
Le but de ce type d’état est d’effectuer des activités de
traitement nécessaires au passage d’un État d’attente ou
d’un État mixte à un autre État d’attente ou État mixte.
En temps normal, lorsque l’activité de traitement est
terminée, la condition de SC est remplie, ce qui déclenche la
transition vers l’État d’attente suivant, ou le État mixte
suivant. Un État d’action peut également être interrompu
par une commande de Stop ou de Abort.
État mixte
Dans le modèle d’état, Execute est le seul État mixte.
Typiquement, l’état Execute représente le fonctionnement
normal d’une machine ou d’un processus. Par exemple, si le
mode de fonctionnement est Producting, cet état indique
que la machine est en train de produire ou d’emballer.
Exemple
Limites
La liste qui suit décrit les limites qui caractérisent les modes de fonctionnement basés sur le
modèle d’état :
z Nombre maximum d’états : 17
Les états du mode de fonctionnement peuvent être sélectionnés parmi les états prédéfinis du
modèle d’état. Chaque état ne peut apparaître qu’une fois, dans une position spécifiée par le
modèle d’état. Vous ne pouvez pas ajouter d’états supplémentaires, ni changer l’ordre
d’enchaînement des états.
z Le modèle d’état ne fonctionne que dans un sens.
z L’état qui suit un État d’attente doit être un État d’action ou un État mixte.
z De la logique peut être exécutée dans chaque état.
NOTE : D’autres règles s’appliquent également à la création de modes de fonctionnement avec la
bibliothèque PackML. Consultez FB_ModeManager (voir page 73).
EIO0000002251 11/2015
25
Description
PackTags
Présentation
Sur la base du modèle d’état, les variables PackML ont été identifiées, qui sont généralement
nécessaires aux programmes de machines d’emballage/conditionnement (structure de
communication normalisée). Ces variables ont des noms normalisés, que l’on appelle PackTags.
La bibliothèque fournit les PackTags, tels que définis par la norme ISA-TR88.00.02.
Variables
Les variables sont divisées en trois types :
Type de PackTags
Description
Dans la Bibliothèque
PackML
commande
Ces variables représentent principalement l’interface
de contrôle. En utilisant ces balises, on peut
sélectionner le mode de fonctionnement, forcer les
transitions d’état, et transmettre les recettes et les
formats.
ST_Command
état
Ces variables contiennent les informations d’état
(par exemple, quel mode de fonctionnement est actif,
quel état est actif, etc.).
ST_Status
administration
Ces variables contiennent des données importantes
d’OEE (par exemple : temps d’arrêt, motifs des temps
d’arrêt, etc.). De plus, des informations relatives à la
production.
ST_Administration
Chaque variable de chacun des trois types (commande, état, administration) peut être fournie au
contrôleur au sein des structures.
26
EIO0000002251 11/2015
PackML
Énumérations et Structures
EIO0000002251 11/2015
Partie II
Énumérations et Structures
Énumérations et Structures
Contenu de cette partie
Cette partie contient les chapitres suivants :
Chapitre
Titre du chapitre
Page
3
Énumérations
29
4
Structures
37
EIO0000002251 11/2015
27
Énumérations et Structures
28
EIO0000002251 11/2015
PackML
Énumérations
EIO0000002251 11/2015
Chapitre 3
Énumérations
Énumérations
Contenu de ce chapitre
Ce chapitre contient les sujets suivants :
Sujet
Page
ET_Cmd
30
ET_Modes
31
ET_Result
32
ET_States
34
EIO0000002251 11/2015
29
Énumérations
ET_Cmd
Présentation
Type :
Énumération
Disponible à partir de la version :
V1.0.1.0
Description
L’énumération inclut les commandes d’état utilisées pour effectuer une transition d’état. On ne
peut sortir d’un état d’Attente (voir page 23) qu’avec une commande de transition d’état (Start,
par exemple).
Éléments de l’énumération
Nom
Type de
données
Valeur
Description
Undefined
DINT
0
Reset
DINT
1
Les commandes de transition d’un état à un autre sont
décrites ici : FC_CheckCmd (voir page 80).
Start
DINT
2
Stop
DINT
3
Hold
DINT
4
UnHold
DINT
5
Suspend
DINT
6
UnSuspend
DINT
7
Abort
DINT
8
Clear
DINT
9
Utilisé par
Les valeurs de l’énumération peuvent être utilisées comme valeurs d’entrée pour i_diCmd de
FC_CheckCmd ou pour remplir la valeur de la variable CntrlCmd de ST_Command.
30
EIO0000002251 11/2015
Énumérations
ET_Modes
Présentation
Type :
Énumération
Disponible à partir de la version :
V1.0.1.0
Description
L’énumération inclut les modes de fonctionnement prédéfinis (production, par exemple). Un mode
de fonctionnement est un sous-ensemble ordonné d’états, de commandes, et de transitions qui
peut être initialisé via la structure ST_UnitModeDefinition.
Éléments de l’énumération
Nom
Type de
données
Valeur
Description
Undefined
DINT
0
Le mode de fonctionnement est indéfini ou non valide.
Producing
DINT
1
Mode de fonctionnement de production.
Maintenance
DINT
2
Mode de fonctionnement de maintenance.
Manual
DINT
3
Mode de fonctionnement manuel.
NOTE : Les modes 4...15 sont réservés, et les modes 16...n sont définis par l’utilisateur, mais ne
font pas partie de l’énumération ET_Modes. Si vous voulez utiliser l’un des modes définis par
l’utilisateur, utilisez la valeur DINT correspondante au lieu d’une valeur d’énumération.
Utilisé par
Les valeurs de l’énumération peuvent être utilisées pour remplir les valeurs des variables
UnitModeCurrent de ST_Status et UnitMode de ST_Command.
EIO0000002251 11/2015
31
Énumérations
ET_Result
Présentation
Type :
Énumération
Disponible à partir de la version :
V1.0.1.0
Description
L’énumération inclut les valeurs possibles qui donnent les résultats des opérations exécutées par
le bloc fonction.
Éléments de l’énumération
Nom
Type de
données
Valeur
Description
Si q_xError d’un bloc fonction (voir page 69) est FALSE, l’un des messages d’état suivants apparaît.
Ok
DINT
0
Le POU est intact, mais n’est pas en cours
d’exécution.
Disabled
DINT
1
Le POU est désactivé.
Initializing
DINT
2
Le POU est en cours d’initialisation.
Running
DINT
4
Le POU est en cours d’exécution.
ResettingTimerAndCounter
DINT
5
Le POU est en train de réinitialiser l’horloge
et le compteur.
Si q_xError d’un bloc fonction (voir page 69) est TRUE, l’un des messages d’erreur suivants apparaît.
UnitModeCurrentRange
DINT
11
La valeur de l’entrée
i_diUnitModeCurrent est hors plage. La
valeur de mode de fonctionnement doit être
comprise dans la plage 0Gc_uiMaxNumberOfModes.
StateCurrentRange
DINT
12
La valeur de l’entrée i_diStateCurrent
est hors plage. La valeur d’état doit être
comprise dans la plage 0Gc_uiMaxNumberOfStates.
NumberOfModesRange
DINT
13
Le nombre de modes de fonctionnement est
hors plage. Le nombre de modes de
fonctionnement doit être compris dans la
plage 0-Gc_uiMaxNumberOfModes.
PointerInitModeInvalid
DINT
14
Le pointeur de mode de fonctionnement
initial i_pstInitMode n’est pas valide.
PointerAdminInvalid
DINT
15
Le pointeur d’administration i_pstAdmin
n’est pas valide.
32
EIO0000002251 11/2015
Énumérations
Nom
Type de
données
Valeur
Description
PointerStatusInvalid
DINT
16
Le pointeur d’état i_pstStatus n’est pas
valide.
UnitModeRange
DINT
17
Le mode de fonctionnement est hors plage.
La plage devrait être :
0 < i_diUnitMode <= diNumberOfModes
InvalidStateModelNoExecuteState
DINT
20
Le modèle d’état du mode de fonctionnement
n’est pas valide : il n’y a pas d’état Execute.
InvalidStateModelNoStoppedState
DINT
21
Le modèle d’état du mode de fonctionnement
n’est pas valide : il n’y a pas d’état Stopped.
InvalidStateModelNoHeldState
DINT
22
Le modèle d’état du mode de fonctionnement
n’est pas valide : un état Held doit exister si
un état Holding ou un état Un-Holding
existe.
InvalidStateModelNoCompleteState
DINT
23
Le modèle d’état du mode de fonctionnement
n’est pas valide : si un état Completing
existe, un état Complete doit exister.
InvalidStateModelNoSuspendedState DINT
24
Le modèle d’état du mode de fonctionnement
n’est pas valide : un état Suspended doit
exister si un état Suspending ou un état UnSuspending existe.
InvalidStateModelNoAbortedState
DINT
25
Le modèle d’état du mode de fonctionnement
n’est pas valide : un état Aborted doit exister
si un état Aborting ou un état Clearing
existe.
InvalidStateModelNoIdleState
DINT
26
Le modèle d’état du mode de fonctionnement
n’est pas valide : l’état Resetting ne peut être
utilisé qu’en lien avec l’état Idle.
InvalidStateModelNoResettingState DINT
27
Le modèle d’état du mode de fonctionnement
n’est pas valide : l’état Idle ne peut être utilisé
qu’en lien avec l’état Resetting.
ModeChangeRequestRejected
DINT
28
La requête de changement de mode de
fonctionnement a été rejetée.
UnknownResult
DINT
30
La valeur de l’entrée i_etResult est hors
plage.
Utilisé par
z
z
z
z
FB_DataManagement
FB_ModeManager
FB_VisController
FC_EtResultToString
EIO0000002251 11/2015
33
Énumérations
ET_States
Présentation
Type :
Énumération
Disponible à partir de la version :
V1.0.1.0
Description
L’énumération inclut la liste des états de la machine. Un mode de fonctionnement peut être
composé d’un maximum de 17 états.
Éléments de l’énumération
Nom
Type de
données
Valeur
Description
Undefined
DINT
0
Aucun état n’est défini.
Clearing
DINT
1
État d’action Clearing
Stopped
DINT
2
État d’attente Stopped
Starting
DINT
3
État d’action Starting
Idle
DINT
4
État d’attente Idle
Suspended
DINT
5
État d’attente Suspended
Execute
DINT
6
État mixte Execute
Stopping
DINT
7
État d’action Stopping
Aborting
DINT
8
État d’action Aborting
Aborted
DINT
9
État d’attente Aborted
Holding
DINT
10
État d’action Holding
Held
DINT
11
État d’attente Held
UnHolding
DINT
12
État d’action Un-Holding
Suspending
DINT
13
État d’action Suspending
UnSuspending
DINT
14
État d’action Un-Suspending
Resetting
DINT
15
État d’action Resetting
Completing
DINT
16
État d’action Completing
Complete
DINT
17
État d’attente Complete
NOTE : Le contenu de tout état donné dépend de votre application.
34
EIO0000002251 11/2015
Énumérations
Utilisé par
z
z
z
z
z
FB_ModeManager
FB_VisController
i_diStateCurrent de FC_CheckCmd
StateCurrent de ST_Status
StateRequested de ST_Status
EIO0000002251 11/2015
35
Énumérations
36
EIO0000002251 11/2015
PackML
Structures
EIO0000002251 11/2015
Chapitre 4
Structures
Structures
Contenu de ce chapitre
Ce chapitre contient les sous-chapitres suivants :
Souschapitre
Sujet
Page
4.1
Structures Principales PackTags
38
4.2
Autres Structures Principales
44
4.3
Sous-Structures
52
EIO0000002251 11/2015
37
Structures
Sous-chapitre 4.1
Structures Principales PackTags
Structures Principales PackTags
Contenu de ce sous-chapitre
Ce sous-chapitre contient les sujets suivants :
Sujet
38
Page
ST_Administration
39
ST_Command
41
ST_Status
42
EIO0000002251 11/2015
Structures
ST_Administration
Présentation
Type
Structure de données
Disponible à partir de la version
V1.0.1.0
Description
La structure ST_Administration fournit les variables / balises qui contiennent des données
importantes d’OEE (par exemple, temps d’arrêt, motifs des temps d’arrêt , etc.). De plus, cette
variable peut fournir des informations relatives à la production (par exemple, des informations sur
les alarmes et les états).
Éléments de la structure
Pour les types de données GPL, consultez la section Paramètres Globaux (voir page 65).
NOTE : Pour plus d’informations sur les éléments de structure, consultez les normes en vigueur.
Variable
Type de données
Description
Parameter
ARRAY[0..GPL.Gc_iNumOfAdminParmeter] OF
ST_Destriptor
Tableau
de ST_Destriptor
(voir page 55)
Alarm
ARRAY[0.. GPL.Gc_uiNumberOfAlarms] OF
ST_Alarm
Tableau de ST_Alarm
(voir page 53)
AlarmExtent
DINT
Taille de tableau
d’alarmes
ModeCurrentTime
ARRAY[0..GPL.Gc_uiMaxNumberOfModes] OF UDINT
Durée de fonctionnement
dans ce mode de
fonctionnement.
ModeCummulativeTime ARRAY[0..GPL.Gc_uiMaxNumberOfModes] OF UDINT
Durée cumulée dans
chaque mode de
fonctionnement.
StateCurrentTime
ARRAY[0..GPL.Gc_uiMaxNumberOfModes,
0..GVL.Gc_uiMaxNumberOfStates] OF UDINT
Valeur de la dernière
horloge d’état dans
chaque mode de
fonctionnement/état
StateCumulativeTime ARRAY[0..GPL.Gc_uiMaxNumberOfModes,
0..GVL.Gc_uiMaxNumberOfStates] OF UDINT
Durée cumulée dans
chaque mode de
fonctionnement/état.
EIO0000002251 11/2015
39
Structures
Variable
Type de données
Description
ProdConsumedCount
ARRAY[1..GPL.Gc_uiNumberOfConsumedProducts]
OF ST_CountDescrip
Tableau de
ST_CountDescrip
(voir page 54)
(des consommables
utilisés dans la machine
de production)
ProdProcessedCount
ARRAY[1..GPL.Gc_uiNumberOfProcessedProducts]
OF ST_CountDescrip
Tableau de
ST_CountDescrip
(des produits traités dans
la machine de
production)
ProdDefectiveCount
ARRAY[1..GPL.Gc_uiNumberOfDefectiveProducts]
OF ST_CountDescrip
Tableau de
ST_CountDescrip
(des produits signalés
comme non conformes
dans la machine de
production)
AccTimeSinceReset
DINT
Durée cumulée depuis la
dernière commande
Reset
MachDesignSpeed
REAL
Vitesse nominale de la
machine
AlarmHistory
ARRAY[0.. GPL.Gc_uiNumberOfAlarmHistory] OF
ST_ALARM
Tableau de taille donnée
pour le code et le
message d’alarme des
erreurs détectées par la
machine (voir page 53)
AlarmHistoryExtent
DINT
Taille de tableau
d’historique d’alarmes
PACDateTime
ST_Timestamp
Horodatage (type de
données ISO de date et
d’heure, format ISO
8601:1988 format)
(voir page 60)
Utilisé par
z
z
40
FB_DataManagement
FB_VisController
EIO0000002251 11/2015
Structures
ST_Command
Présentation
Type
Structure de données
Disponible à partir de la version
V1.0.1.0
Description
La structure ST_Command fournit les variables qui représentent principalement l’interface de
contrôle. En utilisant ces variables / balises, on peut sélectionner le mode de fonctionnement,
forcer les transitions d’état, et transmettre les recettes et les formats.
Éléments de la structure
Pour les types de données GPL, consultez la section Paramètres Globaux (voir page 65).
NOTE : Pour plus d’informations sur les éléments de structure, consultez les normes en vigueur.
Variable
Type de données
Description
UnitMode
DINT
Le mode de fonctionnement cible
(consultez ET_Modes (voir page 31))
UnitModeChangeRequest BOOL
TRUE = requête de changement de
mode de fonctionnement de la machine
MachSpeed
REAL
Vitesse actuelle de la machine
MaterialInterlocks
ARRAY [0..31] OF BOOL
Matières prêtes
CntrlCmd
DINT
La valeur de l’état de commande
CmdChangeRequest
BOOL
TRUE = requête de changement d’état
de la machine
RemoteInterface
ARRAY [0..GPL.Gc_uiNumberOfInterface]
OF ST_Interface (voir page 57)
Machine PackML en aval (suivante)
Parameter
ARRAY [0..GPL.Gc_uiNumberOfParameter] Tableau de ST_Descriptor
OF ST_Descriptor (voir page 55)
(voir page 55)
Product
ARRAY [0.. GPL.Gc_uiNumberOfProducts]
OF ST_Product (voir page 58)
EIO0000002251 11/2015
Tableau de ST_Product
(voir page 58)
41
Structures
ST_Status
Présentation
Type
Structure de données
Disponible à partir de la version
V1.0.1.0
Description
La structure ST_Status fournit les variables qui contiennent les informations d’état (comme par
exemple : quel mode de fonctionnement et quel état sont actifs ?, etc).
Éléments de la structure
Pour les types de données GPL, consultez la section Paramètres globaux (voir page 65).
NOTE : Pour plus d’informations sur les éléments de structure, consultez les normes en vigueur.
Variable
Type de données
Description
UnitModeCurrent
DINT
Mode de fonctionnement utilisé
UnitModeRequested
BOOL
Modification demandée du mode
de fonctionnement
UnitModeChangeInProcess
BOOL
Modification demandée du mode
de fonctionnement en cours
StateCurrent
DINT
Etat actuel de la machine
StateRequested
DINT
Etat / état cible demandé
StateChangeInProgress
BOOL
Transition de l’état demandé en
cours
MachSpeed
REAL
Consigne de vitesse de la
machine PackML
CurMachSpeed
REAL
Vitesse actuelle de la machine
PackML
MaterialInterlocks
ARRAY [0..31] OF BOOL;
Tableau du matériel prêt
RemoteInterface
ARRAY [0.. GPL.Gc_uiNumberOfInterface]
OF ST_Interface
Machine PackML en aval / tableau
des nœuds ST_Interface
(voir page 57)
Parameter
ARRAY [0..GPL.Gc_uiNumberOfParameter]
OF ST_Descriptor
Tableau des paramètres de la
machine de ST_Descriptor
(voir page 55)
Product
ARRAY [0.. GPL.Gc_uiNumberOfProducts]
OF ST_Product
Tableau de ST_Product
(voir page 58).
42
EIO0000002251 11/2015
Structures
Utilisé par
z
FB_VisController
EIO0000002251 11/2015
43
Structures
Sous-chapitre 4.2
Autres Structures Principales
Autres Structures Principales
Contenu de ce sous-chapitre
Ce sous-chapitre contient les sujets suivants :
Sujet
44
Page
ST_InitAlarm
45
ST_UnitModeDefinition
46
ST_VisInterface
48
EIO0000002251 11/2015
Structures
ST_InitAlarm
Présentation
Type
Structure de données
Disponible à partir de la version
V1.0.1.0
Description
La structure ST_InitAlarm contient les informations nécessaires au paramétrage d’une alarme
dans la fonction FC_SetAlarm (voir page 90).
Éléments de la structure
Variable
Type de données
Description
diID
DINT
ID du message d’alarme
diValue
DINT
Valeur du message d’alarme
sMessage
STRING[80]
Message d’alarme
xIsInList
BOOL
L’alarme est dans la liste
xIsAck
BOOL
L’alarme est prise en compte
Utilisé par
z
FC_SetAlarm
EIO0000002251 11/2015
45
Structures
ST_UnitModeDefinition
Présentation
Type
Structure de données
Disponible à partir de la version
V1.0.1.0
Description
La structure ST_UnitModeDefinition fournit les informations pour initialiser les modes de
fonctionnement dans le bloc fonction FB_ModeManager (voir page 73).
Éléments de la structure
46
Variable
Type de données
Description
xModeExistent
BOOL
TRUE : le mode de fonctionnement est
défini.
stClearing
ST_StateInfo (voir page 59)
Structure de l’état Clearing
stStopped
ST_StateInfo
Structure de l’état Stopped
stStarting
ST_StateInfo
Structure de l’état Starting
stIdle
ST_StateInfo
Structure de l’état Idle
stResetting
ST_StateInfo
Structure de l’état Resetting
stExecute
ST_StateInfo
Structure de l’état Execute
stStopping
ST_StateInfo
Structure de l’état Stopping
stAborting
ST_StateInfo
Structure de l’état Aborting
stAborted
ST_StateInfo
Structure de l’état Aborted
stHolding
ST_StateInfo
Structure de l’état Holding
stHeld
ST_StateInfo
Structure de l’état Held
stUnHolding
ST_StateInfo
Structure de l’état Un-Holding
stSuspended
ST_StateInfo
Structure de l’état Suspended
stUnSuspending
ST_StateInfo
Structure de l’état Un-Suspending
stSuspending
ST_StateInfo
Structure de l’état Suspending
stCompleting
ST_StateInfo
Structure de l’état Completing
stComplete
ST_StateInfo
Structure de l’état Complete
EIO0000002251 11/2015
Structures
Utilisé par
z
z
z
FB_ModeManager
FB_VisController
FC_InitStateModelChangeStates
EIO0000002251 11/2015
47
Structures
ST_VisInterface
Présentation
Type :
Structure de données
Disponible à partir de la version :
V1.0.1.0
Description
Cette structure ST_VisInterface est utilisée pour communiquer avec les cadres de
visualisation.
Éléments de la structure
Variable
Type de
données
Description
vq_xBlink
BOOL
Variable utilisée pour flasher l’État d’action
actuel.
vq_diNumberOfModes
DINT
Nombre maximum de modes de
fonctionnement
vq_diUnitModeCurrent
DINT
Mode de fonctionnement utilisé
vq_diStateCurrent
DINT
État actuel
vq_diModeCurrentTimeActive
DINT
Durée actuelle dans le mode de
fonctionnement actif.
vq_diModeCumulativeTimeActive
DINT
Durée cumulée dans le mode de
fonctionnement actif.
vq_diStateCurrentTimeActive
DINT
Durée actuelle dans l’état actif.
vq_diStateCumulativetimeActive
DINT
Durée cumulée dans l’état actif.
vq_astAlarm
ARRAY [0..10]
OF ST_Alarm
Tableau de taille donnée pour le code et le
message des erreurs de la machine active
vq_astAlarmHistory
ARRAY [0..10]
OF ST_Alarm
Tableau de taille donnée pour le code et les
messages d’erreurs de la machine active
vq_diProdConsumedId
DINT
ID du consommable utilisé
vq_sProdConsumedName
STRING [80]
Nom du consommable utilisé
vq_sProdConsumedUnit
STRING [80]
Unité du consommable utilisé
vq_diProdConsumedCount
DINT
Quantité de consommables utilisés
vq_diProdConsumedAccCount
DINT
Quantité cumulée des consommables
utilisés
vq_diProdProcessedId
DINT
ID du produit traité
vq_sProdProcessedName
STRING [80]
Nom du produit traité
48
EIO0000002251 11/2015
Structures
Variable
Type de
données
vq_sProdProcessedUnit
STRING [80]
Unité du produit traité
vq_diProdProcessedCount
DINT
Quantité de produits traités
vq_diProdProcessedAccCount
DINT
Quantité cumulée de produits traités
vq_diProdDefectiveId
DINT
ID du produit non conforme
vq_sProdDefectiveName
STRING [80]
Nom du produit non conforme
vq_sProdDefectiveUnit
STRING [80]
Unité du produit non conforme
vq_diProdDefectiveCount
DINT
Quantité de produits non conformes
vq_diProdDefectiveAccCount
DINT
Quantité cumulée de produits non conformes
vq_diModeCurrentTime
DINT
Durée actuelle dans chaque mode de
fonctionnement.
vq_diModeCumulativeTime
DINT
Durée cumulée dans chaque mode de
fonctionnement.
vq_diStateCurrentTime
DINT
Durée actuelle dans chaque état.
vq_diStateCumulativetime
DINT
Durée cumulée dans chaque état .
vq_diTimeSinceLastReset
DINT
Durée depuis la dernière commande Reset
vq_diStateCurrentTimeUndefined
DINT
Durée actuelle dans un état non défini.
vq_diStateCurrentTimeClearing
DINT
Durée actuelle dans l’état Clearing
vq_diStateCurrentTimeStopped
DINT
Durée actuelle dans l’état Stopped
vq_diStateCurrentTimeStarting
DINT
Durée actuelle dans l’état Starting
vq_diStateCurrentTimeIdle
DINT
Durée actuelle dans l’état Idle
vq_diStateCurrentTimeSuspended
DINT
Durée actuelle dans l’étatSuspended
vq_diStateCurrentTimeExecute
DINT
Durée actuelle dans l’état Execute
vq_diStateCurrentTimeStopping
DINT
Durée actuelle dans l’état Stopping
vq_diStateCurrentTimeAborting
DINT
Durée actuelle dans l’état Aborting
vq_diStateCurrentTimeAborted
DINT
Durée actuelle dans l’état Aborted
vq_diStateCurrentTimeHolding
DINT
Durée actuelle dans l’état Holding
vq_diStateCurrentTimeHeld
DINT
Durée actuelle dans l’état Held
vq_diStateCurrentTimeUnholding
DINT
Durée actuelle dans l’état Un-Holding
vq_diStateCurrentTimeSuspending
DINT
Durée actuelle dans l’étatSuspending
vq_diStateCurrentTimeUnsuspending
DINT
Durée actuelle dans l’étatUn-Suspending
vq_diStateCurrentTimeResetting
DINT
Durée actuelle dans l’étatResetting
vq_diStateCurrentTimeCompleting
DINT
Durée actuelle dans l’étatCompleting
vq_diStateCurrentTimeComplete
DINT
Durée actuelle dans l’étatComplete
vq_diStateCumulativeTimeUndefined
DINT
Durée cumulée dans un état non défini.
EIO0000002251 11/2015
Description
49
Structures
Variable
Type de
données
Description
vq_diStateCumulativeTimeClearing
DINT
Durée cumulée dans l’état Clearing
vq_diStateCumulativeTimeStopped
DINT
Durée cumulée dans l’état Stopped
vq_diStateCumulativeTimeStarting
DINT
Durée cumulée dans l’état Starting
vq_diStateCumulativeTimeIdle
DINT
Durée cumulée dans l’état Idle
vq_diStateCumulativeTimeSuspended
DINT
Durée cumulée dans l’état Suspended
vq_diStateCumulativeTimeExecute
DINT
Durée cumulée dans l’état Execute
vq_diStateCumulativeTimeStopping
DINT
Durée cumulée dans l’état Stopping
vq_diStateCumulativeTimeAborting
DINT
Durée cumulée dans l’état Aborting
vq_diStateCumulativeTimeAborted
DINT
Durée cumulée dans l’état Aborted
vq_diStateCumulativeTimeHolding
DINT
Durée cumulée dans l’état Holding
vq_diStateCumulativeTimeHeld
DINT
Durée cumulée dans l’état Held
vq_diStateCumulativeTimeUnholding
DINT
Durée cumulée dans l’état Un-Holding
vq_diStateCumulativeTimeSuspending
DINT
Durée cumulée dans l’état Suspending
vq_diStateCumulativeTimeUnsuspending
DINT
Durée cumulée dans l’état Un-Suspending
vq_diStateCumulativeTimeResetting
DINT
Durée cumulée dans l’état Resetting
vq_diStateCumulativeTimeCompleting
DINT
Durée cumulée dans l’état Completing
vq_diStateCumulativeTimeComplete
DINT
Durée cumulée dans l’état Complete
vq_xStateClearingExistent
BOOL
TRUE : l’état Clearing existe
vq_xStateStoppedExistent
BOOL
TRUE : l’état Stopped existe
vq_xStateStartingExistent
BOOL
TRUE : l’état Starting existe
vq_xStateIdleExistent
BOOL
TRUE : l’état Idle existe
vq_xStateSuspendedExistent
BOOL
TRUE : l’état Suspended existe
vq_xStateExecuteExistent
BOOL
TRUE : l’état Execute existe
vq_xStateStoppingExistent
BOOL
TRUE : l’état Stopping existe
vq_xStateAbortingExistent
BOOL
TRUE : l’état Aborting existe
vq_xStateAbortedExistent
BOOL
TRUE : l’état Aborted existe
vq_xStateHoldingExistent
BOOL
TRUE : l’état Holding existe
vq_xStateHeldExistent
BOOL
TRUE : l’état Held existe
vq_xStateUnholdingExistent
BOOL
TRUE : l’état Un-Holding existe
vq_xStateSuspendingExistent
BOOL
TRUE : l’état Suspending existe
vq_xStateUnsuspendingExistent
BOOL
TRUE : l’état Un-Suspending existe
vq_xStateResettingExistent
BOOL
TRUE : l’état Resetting existe
vq_xStateCompletingExistent
BOOL
TRUE : l’état Completing existe
vq_xStateCompleteExistent
BOOL
TRUE : l’état Complete existe
50
EIO0000002251 11/2015
Structures
Variable
Type de
données
Description
viq_diIndexAlarm
DINT
Index de tableau des alarmes actives
viq_diIndexAlarmHistory
DINT
Index de tableau de l’historique des alarmes
actives
viq_diIndexProdConsumed
DINT
Index de consommable utilisé
viq_diIndexProdProcessed
DINT
Index de produit traité
viq_diIndexProdDefective
DINT
Index de produit non conforme
viq_diIndexAdminParameter
DINT
Index de paramètre d’administration
viq_diIndexMode
DINT
Index de mode de fonctionnement
Utilisé par
z
z
z
FB_VisController
FR_<State> frames
Cadres de visualisation
EIO0000002251 11/2015
51
Structures
Sous-chapitre 4.3
Sous-Structures
Sous-Structures
Contenu de ce sous-chapitre
Ce sous-chapitre contient les sujets suivants :
Sujet
52
Page
ST_Alarm
53
ST_CountDescrip
54
ST_Descriptor
55
ST_Ingredient
56
ST_Interface
57
ST_Product
58
ST_StateInfo
59
ST_Timestamp
60
EIO0000002251 11/2015
Structures
ST_Alarm
Présentation
Type
Structure de données
Disponible à partir de la version
V1.0.1.0
Description
La structure ST_Alarm contient le numéro de message de diagnostic de la machine.
Éléments de la structure
Variable
Type de données
Description
ID
DINT
ID du message d’alarme
Value
DINT
Valeur du message d’alarme
Message
STRING[80]
Message d’alarme
TimeEvent
ST_TimeStamp (voir page 60) Horodatage (en type de données ISO) de la
survenue de l’alarme
TimeAck
ST_TimeStamp
Horodatage de la prise en compte de
l’alarme
Utilisé par
z
z
z
FC_SetAlarm
ST_Administration
ST_VisInterface
EIO0000002251 11/2015
53
Structures
ST_CountDescrip
Présentation
Type
Structure de données
Disponible à partir de la version
V1.0.1.0
Description
La structure ST_CountDescrip contient l’ID et les paramètres de comptage produit
Éléments de la structure
Variable
Type de données
Description
ID
DINT
ID de CountDescrip
Name
STRING[80]
Nom de CountDescrip
Unit
STRING[5]
Chaîne d’unités de CountDescrip
Count
DINT
Valeur de comptage de CountDescrip
AccCount
DINT
Valeur de comptage cumulée de
CountDescrip
Utilisé par
z
54
ST_Administration
EIO0000002251 11/2015
Structures
ST_Descriptor
Présentation
Type
Structure de données
Disponible à partir de la version
V1.0.1.0
Description
La structure ST_Descriptor contient les informations relatives au paramètre (id, nom, unité, et
valeur).
Éléments de la structure
Variable
Type de données
Description
ID
DINT
ID du paramètre
Name
STRING[80]
Nom du paramètre
Unit
STRING[5]
Chaîne d’unités de paramètre
Value
REAL
Valeur du paramètre
Utilisé par
z
z
z
z
z
z
ST_Administration
ST_Commmand
ST_Status
ST_Ingredient
ST_Interface
ST_Product
EIO0000002251 11/2015
55
Structures
ST_Ingredient
Présentation
Type
Structure de données
Disponible à partir de la version
V1.0.1.0
Description
La structure ST_Ingredient contient l’id et le paramètre d’ingrédient.
Éléments de la structure
Variable
Type de données
Type de données
IngredientID
DINT
ID d’ingrédient
Parameter
ARRAY [0..Gc_uiNumberOfIngredientParameter
(voir page 65)] OF ST_Descriptor
Tableau de ST_Descriptor
(voir page 55)
Utilisé par
z
56
ST_Product
EIO0000002251 11/2015
Structures
ST_Interface
Présentation
Type
Structure de données
Disponible à partir de la version
V1.0.1.0
Description
La structure ST_Interface contient les informations relatives à la machine PackML en aval.
Éléments de la structure
Variable
Type de données
Type de données
Number
DINT
Numéro de nœud de machine PackML
ControlCmdNumber
DINT
Commande de contrôle pour nœud distant
PackML
CmdValue
DINT
Valeur de commande de contrôle
Parameter
ARRAY [0..GPL.Gc_uiNumOfParam Tableau de ST_Descriptor (voir page 55)
(voir page 65)] OF ST_Descriptor
Utilisé par
z
z
ST_Commmand
ST_Status
EIO0000002251 11/2015
57
Structures
ST_Product
Présentation
Type
Structure de données
Disponible à partir de la version
V1.0.1.0
Description
La structure ST_Product contient les informations relatives à un produit.
Éléments de la structure
Variable
Type de données
Type de données
ProductID
DINT
ID produit
ProcessVariable
ARRAY [0..GPL.Gc_uiNumberOfProcessVariable]
OF ST_DESCRIPTOR
Tableau de ST_Descriptor
(voir page 55)
Ingredients
ARRAY [0.. GPL.Gc_uiNumberOfIngredients
(voir page 65)] OF ST_Ingredient
Tableau de ST_Ingredient
(voir page 56)
Utilisé par
z
z
58
ST_Commmand
ST_Status
EIO0000002251 11/2015
Structures
ST_StateInfo
Présentation
Type
Structure de données
Disponible à partir de la version
V1.0.1.0
Description
La structure ST_StateInfo indique si l’état est défini pour un mode de fonctionnement donné et
si un changement de mode de fonctionnement est possible. L’information est utilisée pour
initialiser le gestionnaire des modes de fonctionnement.
Éléments de la structure
Variable
Type de données
Type de données
xStateExistent
BOOL
TRUE : Indique que l’état est défini pour le mode de
fonctionnement donné.
xModeChangePossible
BOOL
TRUE : Indique qu’un changement de mode de
fonctionnement est possible lorsque cet état est actif.
Utilisé par
z
ST_UnitModeDefinition
EIO0000002251 11/2015
59
Structures
ST_Timestamp
Présentation
Type
Structure de données
Disponible à partir de la version
V1.0.1.0
Description
La structure ST_TimeStamp contient la date et l’heure.
Éléments de la structure
Variable
Type de données
Type de données
AlmDate
DATE
Type de données ISO de date (format ISO
8601:1988)
AlmTime
TOD
Type de données ISO d’heure (format ISO
8601:1988)
Utilisé par
z
z
60
ST_Administration
ST_Status
EIO0000002251 11/2015
PackML
Variables globales
EIO0000002251 11/2015
Partie III
Variables globales
Variables globales
Contenu de cette partie
Cette partie contient les chapitres suivants :
Chapitre
Titre du chapitre
Page
5
Liste des constantes globales
63
6
Liste des paramètres globaux
65
EIO0000002251 11/2015
61
Variables globales
62
EIO0000002251 11/2015
PackML
Liste des constantes globales
EIO0000002251 11/2015
Chapitre 5
Liste des constantes globales
Liste des constantes globales
GCL
Présentation
Type :
Constantes globales
Disponible à partir de la version :
V1.0.1.0
Description
La liste des constantes globales contient les constantes globales de la bibliothèque PackML.
Constantes globales
Variable
Type de données
Gc_sLibraryVersion
STRING[80]
Vx.x.x.0
Version de bibliothèque
Gc_uiMaxNumberOfStates
UINT
17
Nombre maximum d’états
1
Valeur
Description
1
Cette valeur varie pour indiquer la version de la bibliothèque.
EIO0000002251 11/2015
63
Liste des constantes globales
64
EIO0000002251 11/2015
PackML
Liste des paramètres globaux
EIO0000002251 11/2015
Chapitre 6
Liste des paramètres globaux
Liste des paramètres globaux
GPL
Présentation
Type :
Paramètres globaux
Disponible à partir de la version :
V1.0.1.0
Description
La liste des paramètres globaux contient les paramètres globaux de la bibliothèque PackML qui
peuvent être remplacés pour s’adapter au projet dans le gestionnaire de bibliothèque.
Paramètres globaux
Variable
Type de
données
Valeur
Description
Gc_uiNumberOfInterface
UINT
2
Nombre d’interfaces distantes
Gc_uiNumOfParam
UINT
10
Nombre de paramètres dans
l’interface
Gc_uiNumOfAdminParmeter
UINT
100
Nombre de paramètres
d’administration
Gc_uiNumberOfParameter
UINT
50
Nombre de paramètres
Gc_uiNumberOfProducts
UINT
3
Nombre de produits
Gc_uiNumberOfConsumedProducts
UINT
10
Nombre de consommables
Gc_uiNumberOfProcessedProducts
UINT
10
Nombre de produits traités
Gc_uiNumberOfDefectiveProducts
UINT
10
Nombre de produits non
conformes
Gc_uiNumberOfProcessVariable
UINT
50
Nombre de variables de
processus
Gc_uiNumberOfIngredientParameter
UINT
50
Nombre de paramètres
d’ingrédient
Gc_uiNumberOfMaterial
UINT
10
Nombre de matières
Gc_uiNumberOfIngredients
UINT
10
Nombre d’ingrédients
Gc_uiMaxNumberOfAlarms
UINT
100
Nombre maximum d’alarmes
EIO0000002251 11/2015
65
Liste des paramètres globaux
66
Variable
Type de
données
Valeur
Description
Gc_uiNumberOfAlarmHistory
UINT
100
Nombre d’alarmes dans
l’historique
Gc_uiMaxNumberOfModes
UINT
10
Nombre maximum de modes
de fonctionnement
EIO0000002251 11/2015
PackML
Unités d’organisation de programme (POU)
EIO0000002251 11/2015
Partie IV
Unités d’organisation de programme (POU)
Unités d’organisation de programme (POU)
Contenu de cette partie
Cette partie contient les chapitres suivants :
Chapitre
Titre du chapitre
Page
7
Blocs fonction
69
8
Fonctions
79
EIO0000002251 11/2015
67
Unités d’organisation de programme (POU)
68
EIO0000002251 11/2015
PackML
Blocs fonction
EIO0000002251 11/2015
Chapitre 7
Blocs fonction
Blocs fonction
Contenu de ce chapitre
Ce chapitre contient les sujets suivants :
Sujet
Page
FB_DataManagement
70
FB_ModeManager
73
FB_VisController
77
EIO0000002251 11/2015
69
Blocs fonction
FB_DataManagement
Présentation de
Type :
Bloc fonction
Disponible à partir de la version :
V1.0.1.0
Tâche
La principale tâche du bloc fonction FB_DataManagement est de protéger les données
importantes d’OEE (Efficacité générale de l’équipement, comme défini par la norme ISATR88.00.02).
Description fonctionnelle
Le bloc fonction peut accomplir automatiquement les balises administratives suivantes :
Balise administrative
Commentaire
ModeCurrentTime
Voir ST_Administration (voir page 39)
ModeCummulativeTime
Voir ST_Administration
StateCurrentTime
Voir ST_Administration
StateCummulativeTime
Voir ST_Administration
ProdConsumedCount
Voir ST_CountDescrip (voir page 54)
ProdProcessedCount
Voir ST_CountDescrip
ProdDefectiveCount
Voir ST_CountDescrip
AccTimeSinceReset
Voir ST_Administration
AlarmExtent
Voir ST_Administration
AlarmHistoryExtent
Voir ST_Administration
PACDateTime
Voir ST_Administration
Le bloc fonction FB_DataManagement est activé par le biais de l’entrée i_xEnable. Le POU
enregistre chaque mode de fonctionnement, chaque heure d’état et peut servir au comptage des
produits.
70
EIO0000002251 11/2015
Blocs fonction
Interface
Entrée
Type de données
i_xEnable
BOOL
i_xResetTimerCounter BOOL
Description
Activation de POU.
Cette entrée répond à un front
montant. Le mode de
fonctionnement, les
temporisateurs d’état et les
compteurs de produits sont
réinitialisés.
i_diUnitModeCurrent
DINT
Le mode de fonctionnement
actif est transmis au POU par
le biais de cette entrée.
Status.UnitModeCurrent
doit s’appliquer à l’entrée.
i_diStateCurrent
DINT
L’état actif est transmis au
POU via cette entrée.
Status.StateCurrent doit
s’appliquer à l’entrée.
i_axConsumedProduct
ARRAY [1..GPL.Gc_uiNumberOfConsumedProducts] Ce tableau de type booléen
OF BOOL
BOOL permet de compter les
produits consommés (par
exemple, film, carton).
À chaque champ i du tableau
correspond un produit de la
balise administrative
ProdConsumedCount[i].
L’entrée répond aux fronts
montants.
i_axProcessedProduct ARRAY [1..GPL.Gc_uiNumberOfProcessedProducts]
OF BOOL
EIO0000002251 11/2015
Ce tableau de type booléen
BOOL permet de compter les
produits fabriqués.
À chaque champ i du tableau
correspond un produit de la
balise administrative
ProdProcessedCount[i].
L’entrée répond aux fronts
montants.
71
Blocs fonction
Entrée
Type de données
Description
i_axDefectiveProduct ARRAY [1..GPL.Gc_uiNumberOfDefectiveProducts]
OF BOOL
i_pstAdmin
72
POINTER TO ST_Administration
Ce tableau de type booléen
BOOL permet de compter les
produits marqués comme non
valides.
À chaque champ i du tableau
correspond un produit des
balises administratives
ProdDefectiveCount[i].
L’entrée répond aux fronts
montants.
À l’aide de ce pointeur,
l’adresse d’une structure de
type ST_Administration
peut être transmise au POU.
Sortie
Type de données
Description
q_xActive
BOOL
Si cette sortie est définie comme VRAIE, le POU
est actif.
q_xError
BOOL
Si TRUE est attribué à cette sortie, une erreur a
été détectée. Consultez ET_Result
(voir page 32).
q_etResult
ET_Result
Énumération avec le résultat.
q_sResultMsg
STRING[80]
Message de résultat supplémentaire.
EIO0000002251 11/2015
Blocs fonction
FB_ModeManager
Présentation
Type :
Bloc fonction
Disponible à partir de la version :
V1.0.1.0
Tâche
La tâche principale du FB_ModeManager est de vérifier si un changement de mode de fonctionnement est possible dans l’état actif.
Description fonctionnelle
Le bloc fonction doit être paramétré au démarrage d’une application.
Le gestionnaire des modes de fonctionnement a besoin des informations suivantes :
z
z
z
Quels modes de fonctionnement sont disponibles
Quels états sont inclus dans les différents modes de fonctionnement
Dans quels états un changement de mode de fonctionnement est possible
Par conséquent, on dispose d’une structure de données spécifique (ST_UnitModeDefinition).
En utilisant cette structure, les informations relatives aux mode de fonctionnement et aux états
existants sont transférées au bloc.
Le gestionnaire des modes de fonctionnement vérifie, pendant la phase d’initialisation, si un
modèle d’état conforme à PackML peut être créé pour les modes de fonctionnement.
Les conditions qui suivent doivent être remplies, et sont vérifiées :
Postulat d’entrée
Condition à remplir
Nombre d’états
≤ 17
États obligatoires :
z État Execute
z État Stopped
Si un état Holding est disponible...
Un état Held est obligatoire.
Si un état Un-Holding est disponible...
Un état Held est obligatoire.
EIO0000002251 11/2015
73
Blocs fonction
Postulat d’entrée
Condition à remplir
Si un état Completing est disponible...
Un état Complete est obligatoire.
Si un état Suspending est disponible...
Un état Suspended est obligatoire.
Si un état Un-Suspending est disponible...
Un état Suspended est obligatoire.
Si un état Aborting est disponible...
Un état Aborted est obligatoire.
Si un état Clearing est disponible...
Un état Aborted est obligatoire.
Si un état Resetting est disponible...
Un état Idle est obligatoire.
Si un état Idle est disponible...
Un état Resetting est obligatoire.
Après une initialisation réussie, le bloc fonction est prêt à fonctionner.
La requête de changement de mode de fonctionnement peut être lancée, via les entrées
i_udiUnitMode et i_xUnitModeChangeRequest.
Si un changement est possible, la valeur entière du mode de fonctionnement sélectionné est
affichée sur la sortie q_diEnterMode.
La valeur de cette sortie peut ensuite être utilisée comme condition de transition pour l’activation
d’un mode de fonctionnement.
Le bloc fonction obtient le retour d’information informant que le changement de mode de fonctionnement est terminé via l’entrée i_xModeChangeDone. Il peut ensuite mettre la sortie
iq_diUnitModeCurrent à jour.
Si le mode de fonctionnement doit être changé depuis l’état actif, la sortie
q_xUnitModeRequested le signale.
Interface
74
Entrée
Type de données
Description
i_xEnable
BOOL
Activation et initialisation du POU.
i_diNumberOfModes
DINT
Nombre de modes de fonctionnement.
Cette valeur est acceptée durant
l’initialisation et ne peut être modifiée que
lors d’une nouvelle initialisation.
i_diUnitMode
DINT
La valeur numérique du mode de
fonctionnement à activer doit être transmise
à cette entrée. Command.UnitMode devrait
être attribué à cette entrée.
i_xUnitModeChangeRequest
BOOL
Dans le cas d’un front montant à cette
entrée, la possibilité ou non d’un
changement de mode de fonctionnement
est vérifiée.
Command.UnitModeChangeRequest
devrait être attribué à cette entrée.
EIO0000002251 11/2015
Blocs fonction
Entrée
Type de données
Description
i_diStateCurrent
DINT
L’état actif est transmis au POU via cette
entrée. Status.StateCurrent devrait
être attribué à cette entrée.
i_xModeChangeDone
BOOL
En utilisant cette entrée, on peut informer le
POU que le changement de mode de
fonctionnement est terminé. Cette entrée
répond à un front montant.
i_pstInitMode
En utilisant ce pointeur, l’adresse d’un
POINTER TO
ST_UnitModeDefinition tableau de type
ST_UnitModeDefinition peut être
(voir page 46)
transmise au POU. L’index de tableau doit
commencer par 1.
In_Out
Type de données
Description
iq_diUnitModeCurrent
DINT
Fournit en sortie le mode de fonctionnement
actif. A chaque fois qu’un front montant est
détecté à l’entrée i_xModeChangeDone, la
valeur entière du mode de fonctionnement
sélectionné est fournie en sortie. Dans le
cas d’une désactivation du POU, cette
entrée/sortie conserve sa valeur active la
plus récente.
Status.UnitModeCurrent devrait être
attribué à cette entrée/sortie.
Sortie
Type de données
Description
q_xActive
BOOL
Si le POU est actif, le signal de sortie est
TRUE.
q_xError
BOOL
Si TRUE est attribué à cette sortie, une
erreur a été détectée. Consultez
ET_Result (voir page 32).
q_xReady
BOOL
Si l’initialisation est réussie, le signal de
sortie est TRUE.
q_etResult
ET_Result
Énumération avec le résultat.
q_sResultMsg
STRING[80]
Message de résultat supplémentaire.
q_xUnitModeRequested
BOOL
Renvoie l’entrée
i_xUnitModeChangeRequest.
Status.UnitModeRequested devrait être
attribué à cette sortie.
EIO0000002251 11/2015
75
Blocs fonction
76
Sortie
Type de données
Description
q_diEnterMode
DINT
Indique le mode de fonctionnement pour
lequel on veut changer. Si le POU est
désactivé, 0 est attribué à la sortie.
q_xModeChangeRequestRejected
BOOL
Si un changement de mode de
fonctionnement est impossible depuis l’état
actuel, la sortie délivre un signal TRUE.
Dans l’état désactivé, le POU fournit aussi
un TRUE.
FALSE n’est attribué à la sortie que si une
commande de changement de mode de
fonctionnement peut être exécutée.
EIO0000002251 11/2015
Blocs fonction
FB_VisController
Présentation
Type :
Bloc fonction
Disponible à partir de la version :
V1.0.1.0
Tâche
La tâche principale du bloc fonction FB_VisController est de traiter les données fournies par
les balises d’administration et les balises d’état, et de transmettre ces données aux cadres de
visualisation, via l’interface de visualisation entrées/sorties iq_stVisInterface de type
ST_VisInterface.
Description fonctionnelle
Une fois le bloc fonction FB_VisController activé, il traite les données fournies par les balises
d’administration et les balises d’état et fournit ces données à chaque cadre de visualisation à des
fins d’affichage, via l’interface de visualisation.
Interface
Entrée
Type de données
i_xEnable
BOOL
i_xEnable
i_pstStatus
POINTER TO ST_Status
Le pointeur a été utilisé pour transmettre
l’adresse d’une structure ST_Status vers
un POU.
i_pstAdmin
POINTER TO
ST_Administration
Le pointeur a été utilisé pour transmettre
l’adresse d’une structure
ST_Administration vers un POU.
EIO0000002251 11/2015
Description
77
Blocs fonction
78
Entrée
Type de données
Description
i_diNumberOfModes
DINT
Nombre de modes de fonctionnement.
Cette valeur est acceptée durant
l’initialisation et ne peut être modifiée que
lors d’une nouvelle initialisation.
i_pstInitMode
POINTER TO
ST_UnitModeDefinition
Le pointeur a été utilisé pour transmettre
l’adresse d’une structure
ST_UnitModeDefinition vers un POU.
L’index de tableau doit commencer par 1.
In_Out
Type de données
Description
iq_stVisInterface
ST_VisInterface
(voir page 48)
Interface vers le FB_VisController
Sortie
Type de données
Description
q_xActive
BOOL
Si le POU est actif, le signal de sortie est
TRUE.
q_xReady
BOOL
Si l’initialisation est réussie, le signal de
sortie est TRUE.
q_xError
BOOL
Si TRUE est attribué à cette sortie, une
erreur a été détectée.
q_etResult
ET_Result
Résultat. Consultez ET_Result
(voir page 32).
q_sResultMsg
STRING[80]
Message de résultat supplémentaire.
EIO0000002251 11/2015
PackML
Fonctions
EIO0000002251 11/2015
Chapitre 8
Fonctions
Fonctions
Contenu de ce chapitre
Ce chapitre contient les sujets suivants :
Sujet
Page
FC_CheckCmd
80
FC_EtResultToString
83
FC_InitStateModelChangeStates
84
FC_InitStateModelExistingStates
87
FC_SetAlarm
90
EIO0000002251 11/2015
79
Fonctions
FC_CheckCmd
Présentation
Type :
Fonction
Disponible à partir de la version :
V1.0.4.0
Tâche
La fonction FC_CheckCmd vérifie si la commande de transition peut être acceptée dans l’état
actuel, selon la définition du mode de fonctionnement donné. Si tel est le cas, cette fonction
retourne également l’état cible de la transition déclenchée par cette commande.
Description fonctionnelle
La fonction FC_CheckCmd vérifie et valide la commande via i_diCmd, afin de déterminer si cette
commande peut être acceptée dans l’état actuel (donné dans i_diStateCurrent) et le modèle
d’état donné (i_stUnitModeDefinition) pour le mode de fonctionnement.
Si la commande peut être acceptée, q_xCommandAcknowledge est TRUE et l’état cible de la
transition déclenchée par cette commande est affiché dans la sortie q_diStateRequested.
La définition du mode de fonctionnement donne les informations indiquant quels états sont définis.
Cette fonction suppose que le mode de fonctionnement fourni a été initialisé avec
FC_InitStateModelExistingStates, ainsi que validé (et considéré comme correct) par
FB_ModeManager.
La fonction FC_CheckCmd fait des contrôles de vraisemblance pour la transition d’état, en
supposant que les règles suivantes sont respectées :
z Le modèle d’état ne fonctionne que dans un sens.
z L’état qui suit un État d’attente doit être un État d’action ou un État mixte.
La vérification de plausibilité des transitions d’état en fonction de la commande donnée est
déterminée selon le tableau qui suit.
80
EIO0000002251 11/2015
Fonctions
Le tableau qui suit présente les combinaisons de commandes de transitions par état qui peuvent
être acceptées, ainsi que l’état cible de la transition :
État initial
Commande de
transition
État cible
-
Undefined
Non défini, la sortie q_xCommandAcknowledge est
FALSE.
Execute
Reset
Resetting, si ni Complete, ni Completing n’existe.
Complete
Reset
Resetting, ou
Starting, si ni Resetting, ni Idle n’existe, ou
Execute, si ni Resetting, ni Idle, ni Starting n’existe.
Idle
Start
Starting, ou
Execute, si Starting n’existe pas.
Stopped
Start
Starting, si ni Resetting, ni Idle n’existe, ou
Execute, si ni Resetting, ni Idle, ni Starting n’existe.
N’importe quel état, sauf
Aborted, Aborting, Clearing,
Stopping, et Stopped.
Stop
Stopping, ou
Stopped, si Stopping n’existe pas.
Execute
Hold
Holding, ou
Held, si Holding n’existe pas.
Held
UnHold
Un-Holding, ou
Execute, si Un-Holding n’existe pas.
Execute
Suspend
Suspending, ou
Suspended, si Suspending n’existe pas.
Suspended
UnSuspend
Un-Suspending, ou
Execute, si Un-Suspending n’existe pas.
N’importe quel état, sauf
Aborted et Aborting.
Abort
Aborting, ou
Aborted, si Aborting n’existe pas.
Aborted
Clear
Clearing, ou
Stopped, si Clearing n’existe pas.
Stopped
EIO0000002251 11/2015
81
Fonctions
Interface
Var
Type de données
Description
i_diCmd
DINT
La commande de transition d’état ; les
informations du
PackTagST_Command.CntrlCmd
i_diStateCurrent
DINT
L’état actuel ; les informations du
PackTagST_Status.StateCurrent
i_stUnitModeDefinition
ST_UnitModeDefinition
La définition du mode de fonctionnement
actuel ; les informations du
PackTagST_Status.UnitModeCurrent
Sortie
Type de données
Description
q_xCommandAcknowledge
BOOL
Indique si la commande donnée peut être
acceptée dans l’état et le mode de
fonctionnement donnés.
Cette sortie est FALSE si la commande est
refusée pour l’état et le mode de
fonctionnement ou si l’état n’existe pas.
q_diStateRequested
DINT
L’état cible de la transition (si la commande
peut être acceptée), ou 0 (si la commande ne
peut être acceptée).
Cette sortie ne devrait être utilisée que si la
sortie q_xCommandAcknowledge est TRUE.
82
EIO0000002251 11/2015
Fonctions
FC_EtResultToString
Présentation
Type :
Fonction
Disponible à partir de la version :
V1.0.1.0
Tâche
Convertir un élément d’énumération de type ET_Result en une valeur de chaîne.
Description fonctionnelle
En utilisant la fonction FC_EtResultToString, vous pouvez convertir un élément d’énumération
de type ET_Result en une valeur de chaîne.
Interface
Entrée
Type de données
Description
i_etResult
ET_Result
Énumération avec le résultat.
Sortie
Type de données
Description
q_etResult
ET_Result
Énumération avec le résultat.
Valeur retournée
Type de données
Description
STRING(80)
Le ET_Result converti en valeur de chaîne.
EIO0000002251 11/2015
83
Fonctions
FC_InitStateModelChangeStates
Présentation
Type :
Fonction
Disponible à partir de la version :
V1.0.1.0
Tâche
Utilisez la fonction FC_InitStateModelChangeStates pour définir, pour un mode de fonctionnement, de quel état un changement de mode de fonctionnement est possible.
Description fonctionnelle
A l’aide de l’entrée/sortie iq_stStateModel, une structure de type ST_UnitModeDefinition
est transmise à la fonction.
Utilisez les 17 entrées de type BOOL, qui reflètent les états d’un mode de fonctionnement, pour
définir les états desquels un changement de mode de fonctionnement est possible.
TRUE indique qu’un changement de mode de fonctionnement est possible ; FALSE indique que
cet état ne permet pas de tenter un changement de mode de fonctionnement.
Suite à l’initialisation réussie d’un mode de fonctionnement, la fonction fournit un TRUE.
84
EIO0000002251 11/2015
Fonctions
Interface
Entrée
Type de données
Description
i_xStopping
BOOL
Si TRUE est attribué à cette entrée, l’état
Stopping est autorisé à changer le mode de
fonctionnement.
i_xStopped
BOOL
Si TRUE est attribué à cette entrée, l’état
Stopped est autorisé à changer le mode de
fonctionnement.
i_xResetting
BOOL
Si TRUE est attribué à cette entrée, l’état
Resetting est autorisé à changer le mode
de fonctionnement.
i_xIdle
BOOL
Si TRUE est attribué à cette entrée, l’état
Idle est autorisé à changer le mode de
fonctionnement.
i_xStarting
BOOL
Si TRUE est attribué à cette entrée, l’état
Starting est autorisé à changer le mode de
fonctionnement.
i_xExecute
BOOL
Si TRUE est attribué à cette entrée, l’état
Execute est autorisé à changer le mode de
fonctionnement.
i_xHolding
BOOL
Si TRUE est attribué à cette entrée, l’état
Holding est autorisé à changer le mode de
fonctionnement.
i_xHeld
BOOL
Si TRUE est attribué à cette entrée, l’état
Held est autorisé à changer le mode de
fonctionnement.
i_xUnHolding
BOOL
Si TRUE est attribué à cette entrée, l’état
Un-Holding est autorisé à changer le mode
de fonctionnement.
i_xSuspending
BOOL
Si TRUE est attribué à cette entrée, l’état
Suspending est autorisé à changer le
mode de fonctionnement.
i_xSuspended
BOOL
Si TRUE est attribué à cette entrée, l’état
Suspended est autorisé à changer le mode
de fonctionnement.
i_xUnSuspending
BOOL
Si TRUE est attribué à cette entrée, l’état
Un-Suspending est autorisé à changer le
mode de fonctionnement.
i_xCompleting
BOOL
Si TRUE est attribué à cette entrée, l’état
Completing est autorisé à changer le mode
de fonctionnement.
EIO0000002251 11/2015
85
Fonctions
Entrée
Type de données
Description
i_xComplete
BOOL
Si TRUE est attribué à cette entrée, l’état
Complete est autorisé à changer le mode
de fonctionnement.
i_xAborting
BOOL
Si TRUE est attribué à cette entrée, l’état
Aborting est autorisé à changer le mode de
fonctionnement.
i_xAborted
BOOL
Si TRUE est attribué à cette entrée, l’état
Aborted est autorisé à changer le mode de
fonctionnement.
i_xClearing
BOOL
Si TRUE est attribué à cette entrée, l’état
Clearing est autorisé à changer le mode de
fonctionnement.
In_Out
Type de données
Description
iq_stStateModel
ST_UnitModeDefinition
Cette structure renvoie le mode de
fonctionnement qui doit être initialisé.
Valeur retournée
86
Type de données
Description
BOOL
TRUE si l’initialisation du mode de fonctionnement est un succès.
EIO0000002251 11/2015
Fonctions
FC_InitStateModelExistingStates
Présentation
Type :
Fonction
Disponible à partir de la version :
V1.0.1.0
Tâche
Utilisez la fonction FC_InitStateModelExistingStates pour initialiser le modèle d’état et
définir un mode de fonctionnement. En attribuant TRUE ou FALSE aux entrées, vous sélectionnez
les états qui feront partie de votre modèle d’état.
Description fonctionnelle
A l’aide de l’entrée/sortie iq_stStateModel, une structure de type ST_UnitModeDefinition
est transmise à la fonction.
Cette structure renvoie un mode de fonctionnement. En utilisant les 18 entrées de type BOOL qui
reflètent chacune l’existence d’un mode de fonctionnement et ses états, il est possible de définir
quels états constituent le mode de fonctionnement en question.
TRUE signifie que l’état existe ; FALSE signifie que l’état n’existe pas.
Suite à l’initialisation réussie d’un mode de fonctionnement, la fonction fournit un TRUE.
EIO0000002251 11/2015
87
Fonctions
Interface
88
Entrée
Type de données
Description
i_xModeExistent
BOOL
Si TRUE est attribué à cette entrée, le mode
de fonctionnement est disponible.
i_xStopping
BOOL
Si TRUE est attribué à cette entrée, l’état
Stopping est disponible.
i_xStopped
BOOL
Si TRUE est attribué à cette entrée, l’état
Stopped est disponible.
i_xResetting
BOOL
Si TRUE est attribué à cette entrée, l’état
Resetting est disponible.
i_xIdle
BOOL
Si TRUE est attribué à cette entrée, l’état
Idle est disponible.
i_xStarting
BOOL
Si TRUE est attribué à cette entrée, l’état
Starting est disponible.
i_xExecute
BOOL
Si TRUE est attribué à cette entrée, l’état
Execute est disponible.
i_xHolding
BOOL
Si TRUE est attribué à cette entrée, l’état
Holding est disponible.
i_xHeld
BOOL
Si TRUE est attribué à cette entrée, l’état
Held est disponible.
i_xUnHolding
BOOL
Si TRUE est attribué à cette entrée, l’état
Un-Holding est disponible.
i_xSuspending
BOOL
Si TRUE est attribué à cette entrée, l’état
Suspending est disponible.
i_xSuspended
BOOL
Si TRUE est attribué à cette entrée, l’état
Suspended est disponible.
i_xUnSuspending
BOOL
Si TRUE est attribué à cette entrée, l’état
Un-Suspending est disponible.
i_xCompleting
BOOL
Si TRUE est attribué à cette entrée, l’état
Completing est disponible.
i_xComplete
BOOL
Si TRUE est attribué à cette entrée, l’état
Complete est disponible.
i_xAborting
BOOL
Si TRUE est attribué à cette entrée, l’état
Aborting est disponible.
EIO0000002251 11/2015
Fonctions
Entrée
Type de données
Description
i_xAborted
BOOL
Si TRUE est attribué à cette entrée, l’état
Aborted est disponible.
i_xClearing
BOOL
Si TRUE est attribué à cette entrée, l’état
Clearing est disponible.
In_Out
Type de données
Description
iq_stStateModel
ST_UnitModeDefinition
Cette structure renvoie le mode de
fonctionnement qui doit être initialisé.
Valeur retournée
Type de données
Description
BOOL
TRUE si l’initialisation du mode de fonctionnement est un succès.
EIO0000002251 11/2015
89
Fonctions
FC_SetAlarm
Présentation
Type :
Fonction
Disponible à partir de la version :
V1.0.1.0
Tâche
Les balises Admin.Alarm[#] et Admin.AlarmHistory[#] peuvent être remplies avec des
messages d’alarmes spécifiques à la machine ou les ReasonCodes appropriés en utilisant la
fonction FC_SetAlarm.
Description fonctionnelle
La fonction FC_SetAlarm est une fonction auxiliaire servant à écrire des messages d’alarmes
(des ReasonCodes ISA-TR88.00.02, par exemple) dans les balises d’administration appropriées
ainsi qu’à les effacer. Cette fonction ne peut être utilisée que dans une seule tâche à la fois. En
utilisant la structure ST_InitAlarm, on peut transmettre à la fonction un message d’alarme
spécifique à la machine ou un ReasonCode.
Un TRUE à l’entrée i_xSetAlarm déclenche l’ajout d’un message à une liste d’alarmes
Admin.Alarm[#]. Les horodatages appropriés aux balises TimeEvent de Admin.Alarm sont
déterminés automatiquement. La balise TimeAck of Admin.Alarm[#] n’est remplie que si
l’entrée i_xAlarmAck est TRUE.
Si FALSE est à nouveau attribué à l’entrée i_xSetAlarm, le message est effacé de
Admin.Alarm[#] et ajouté à Admin.AlarmHistory[#].
Le message actif le plus récent est écrit ici en première position du tableau AlarmHistory. Si le
tableau est plein, le message obsolète correspondant est effacé à chaque fois qu’un nouveau
message est ajouté. Si l’heure n’a pas encore été indiquée dans Admin.Alarm[#].TimeAck au
moment où le message est effacé, l’heure où il est effacé est ajoutée à
Admin.AlarmHistory[#].TimeAck.
90
EIO0000002251 11/2015
Fonctions
Interface
Entrée
Type de données
Description
i_xSetAlarm
BOOL
z TRUE : le code motif ou l’alarme spécifique à la
machine transmis à l’entrée/sortie iq_stSetAlarm
est écrit dans la balise de l’entrée/sortie
iq_stActiveAlarm.
z FALSE : le message est effacé de
iq_stActiveAlarms et ajouté à
iq_stAlarmHistory.
i_xAlarmAck
BOOL
TRUE : le message a été détecté. L’horodatage approprié
à Admin.Alarm[#].TimeAck est déterminé.
In_Out
Type de données
Description
iq_stSetAlarm
ST_InitAlarm (voir page 45)
Le code motif ou l’alarme
spécifique à la machine est
transmis à cette
entrée/sortie.
iq_astActiveAlarms
ARRAY [1..Gc_uiMaxNumberOfAlarms
(voir page 65)] OF ST_Alarm
(voir page 53)
La balise d’administration
Admin.Alarm[#] devrait
être appliquée à cette
entrée/sortie.
iq_astAlarmHistory
ARRAY[ 1..Gc_uiNumberOfAlarmHistory La balise d’administration
Admin.AlarmHistory[#]
(voir page 65)] OF ST_Alarm
devrait être attribuée à cette
(voir page 53)
entrée/sortie.
iq_diNumberOfActiveAlarms DINT
Fournit le nombre de
messages d’alarme actifs.
Valeur retournée
Type de données
Description
BOOL
TRUE si le message d’alarme a été écrit avec succès dans la liste des
messages d’alarme actifs, ou effacé avec succès de cette liste.
EIO0000002251 11/2015
91
Fonctions
92
EIO0000002251 11/2015
PackML
Visualisation
EIO0000002251 11/2015
Partie V
Visualisation
Visualisation
Contenu de cette partie
Cette partie contient les chapitres suivants :
Chapitre
9
Titre du chapitre
Page
BackgroundFrames
95
10
States Frames
97
11
Cadres de Visualisation
99
EIO0000002251 11/2015
93
Visualisation
94
EIO0000002251 11/2015
PackML
Cadres d’Arrière-plan
EIO0000002251 11/2015
Chapitre 9
BackgroundFrames
BackgroundFrames
FR_<BackgroundFrame>
Présentation
Type :
Cadre de visualisation
Disponible à partir de la version :
V1.0.1.0
Implémenté :
VisuElems.IVisualization
Tâche
Afficher un cadre en arrière-plan.
Description fonctionnelle
Les cadres de visualisation FR_<BackgroundFrame> (voir page 95) (FR_Control1024x768,
par exemple) sont des cadres d’arrière-plan qui permettent de grouper les autres cadres, et de
réaliser des fonctionnalités de contrôle et de navigation. Voyez les exemples ci-après.
Les cadres d’arrière-plan suivants sont disponibles :
Cadre
Description
FR_Control1024x768
Cadre de contrôle, taille 1024x768 pixels
FR_Nav1024x768
Cadre de navigation, taille 1024x768 pixels
FR_NavControl1024x768
Cadre de navigation et de contrôle, taille 1024x768 pixels
FR_Control800x600
Cadre de contrôle, taille 800x600 pixels
FR_Nav800x600
Cadre de navigation, taille 800x600 pixels
FR_NavControl800x600
Cadre de navigation et de contrôle, taille 800x600 pixels
Interface
Entrée
Type de données
Description
i_sTitle
STRING(80)
Titre du cadre d’arrière-plan
EIO0000002251 11/2015
95
Cadres d’Arrière-plan
Exemples
FR_Control1024x768 avec les boutons de contrôles à gauche
FR_Nav1024x768 avec les boutons de navigation en bas
96
EIO0000002251 11/2015
PackML
Cadres d’État
EIO0000002251 11/2015
Chapitre 10
States Frames
States Frames
FR_<State>
Présentation
Type :
Cadre de visualisation
Disponible à partir de la version :
V1.0.1.0
Implémenté :
VisuElems.IVisualization
Tâche
Afficher les différents états du modèle d’état du mode de fonctionnement.
Description fonctionnelle
Les cadres de visualisation FR_<State> (FR_Stopped, par exemple) sont des cadres pour
chaque état au sein d’un modèle.
Les cadres sont utilisés par le FR_DynStateModel (voir page 104) pour afficher les différents
états d’un modèle d’état. Voyez l’exemple ci-après.
Les cadres d’états suivants sont disponibles :
Cadre
Description
FR_Aborted
État d’attenteAborted
FR_Aborting
État d’action Aborting
FR_Clearing
État d’action Clearing
FR_Complete
État d’attenteComplete
FR_Completing
État d’action Completing
FR_Execute
État mixteExecute
FR_Held
État d’attenteHeld
FR_Holding
État d’action Holding
FR_Idle
État d’attenteIdle
FR_Resetting
État d’action Resetting
FR_Starting
État d’action Starting
FR_Stopped
État d’attenteStopped
FR_Stopping
État d’action Stopping
EIO0000002251 11/2015
97
Cadres d’État
Cadre
Description
FR_Suspended
État d’attenteSuspended
FR_Suspending
État d’action Suspending
FR_UnHolding
État d’action Un-Holding
FR_UnSuspending
État d’action Un-Suspending
Interface
In_Out
Type de données
Description
iq_stVisInterface
ST_VisInterface
(voir page 48)
Interface vers le FB_VisController
(voir page 77)
Exemple
98
EIO0000002251 11/2015
PackML
Cadres de visualisation
EIO0000002251 11/2015
Chapitre 11
Cadres de Visualisation
Cadres de Visualisation
Contenu de ce chapitre
Ce chapitre contient les sujets suivants :
Sujet
Page
Généralités
100
FR_Alarm
101
FR_AlarmHistory
102
FR_CurrentModeAndStateTime
103
FR_DynStateModel
104
FR_ModeAndStateTime
106
FR_ProdConsumedCount
108
FR_ProdDefectiveCount
109
FR_ProdProcessedCount
110
EIO0000002251 11/2015
99
Cadres de visualisation
Généralités
Présentation
La bibliothèque fournit plusieurs cadres de visualisation.
Vous pouvez utiliser ces cadres pour afficher des informations portant sur :
Les alarmes
z Les modes de fonctionnement et les états d’une machine
z Les données de production
z
Bloc Fonction FB_VisController
La tâche principale du bloc fonction FB_VisController est de traiter les données fournies par
les balises d’administration et les balises d’état, et de transmettre ces données aux cadres de
visualisation, via l’interface de visualisation entrées/sorties iq_stVisInterface de type
ST_VisInterface.
Cadres de visualisation
z
z
z
z
z
z
z
z
100
FR_Alarm (voir page 101)
FR_AlarmHistory (voir page 102)
FR_CurrentModeAndStateTime (voir page 103)
FR_DynStateModel (voir page 104)
FR_ModeAndStateTime (voir page 106)
FR_ProdConsumedCount (voir page 108)
FR_ProdDefectiveCount (voir page 109)
FR_ProdProcessedCount (voir page 110)
EIO0000002251 11/2015
Cadres de visualisation
FR_Alarm
Présentation
Type :
Cadre de visualisation
Disponible à partir de la version :
V1.0.1.0
Implémenté :
VisuElems.IVisualization
Tâche
Afficher une liste d’alarmes des alarmes actives.
Description fonctionnelle
FR_Alarm est un cadre de visualisation qui sert à afficher la liste d’alarmes des alarmes actives
(Admin.Alarm[#]). Voyez l’exemple ci-après.
Interface
In_Out
Type de données
Description
iq_stVisInterface
ST_VisInterface
(voir page 48)
Interface vers le FB_VisController
(voir page 77)
Exemple
EIO0000002251 11/2015
101
Cadres de visualisation
FR_AlarmHistory
Présentation
Type :
Cadre de visualisation
Disponible à partir de la version :
V1.0.1.0
Implémenté :
VisuElems.IVisualization
Tâche
Afficher l’historique des alarmes.
Description fonctionnelle
FR_AlarmHistory est un cadre de visualisation qui sert à afficher l’historique des alarmes
(Admin.AlarmHistory[#]). Voyez l’exemple ci-après.
Interface
In_Out
Type de données
Description
iq_stVisInterface
ST_VisInterface
(voir page 48)
Interface vers le FB_VisController
(voir page 77)
Exemple
102
EIO0000002251 11/2015
Cadres de visualisation
FR_CurrentModeAndStateTime
Présentation
Type :
Cadre de visualisation
Disponible à partir de la version :
V1.0.1.0
Implémenté :
VisuElems.IVisualization
Tâche
Afficher la durée de fonctionnement de la machine dans le mode de fonctionnement et l’état
actuels.
Description fonctionnelle
FR_CurrentModeAndStateTime est un cadre de visualisation qui sert à afficher la durée de
fonctionnement de la machine dans le mode de fonctionnement (Admin.ModeCurrentTime[#]
& Admin.ModeCumulativeTime[#]) et l’état (Admin.StateCurrentTime[#,#] &
Admin.StateCumulativeTime[#,#]) actuels. Voyez l’exemple ci-après.
Interface
In_Out
Type de données
Description
iq_stVisInterface
ST_VisInterface
(voir page 48)
Interface vers le FB_VisController
(voir page 77)
Exemple
NOTE : Cet exemple ne montre que les informations de PackTag, qui, selon les normes en
vigueur, sont exprimés en secondes.
EIO0000002251 11/2015
103
Cadres de visualisation
FR_DynStateModel
Présentation
Type :
Cadre de visualisation
Disponible à partir de la version :
V1.0.1.0
Implémenté :
VisuElems.IVisualization
Tâche
Afficher dynamiquement la visualisation du modèle d’état pour le mode de fonctionnement
pendant le fonctionnement en ligne.
Description fonctionnelle
FR_DynStateModel fournit un cadre de visualisation qui sert à afficher les modèles d’état. Ce
cadre génère dynamiquement la visualisation du modèle d’état correspondant pendant le fonctionnement en ligne.
Interface
104
In_Out
Type de données
Description
iq_stVisInterface
ST_VisInterface
(voir page 48)
Interface vers le FB_VisController
(voir page 77)
EIO0000002251 11/2015
Cadres de visualisation
Exemple
EIO0000002251 11/2015
105
Cadres de visualisation
FR_ModeAndStateTime
Présentation
Type :
Cadre de visualisation
Disponible à partir de la version :
V1.0.1.0
Implémenté :
VisuElems.IVisualization
Tâche
Afficher la durée de fonctionnement de tous les modes de fonctionnement et leurs états respectifs.
Description fonctionnelle
FR_ModeAndStateTime est un cadre de visualisation qui sert à afficher la durée de fonctionnement de tous les modes de fonctionnement (Admin.ModeCurrentTime[#] &
Admin.ModeCumulativeTime[#]) et leurs états respectifs (Admin.StateCurrentTime[#,#] & Admin.StateCumulativeTime[#,#]).
Interface
106
In_Out
Type de données
Description
iq_stVisInterface
ST_VisInterface
(voir page 48)
Interface vers le FB_VisController
(voir page 77)
EIO0000002251 11/2015
Cadres de visualisation
Exemple
EIO0000002251 11/2015
107
Cadres de visualisation
FR_ProdConsumedCount
Présentation
Type :
Cadre de visualisation
Disponible à partir de la version :
V1.0.1.0
Implémenté :
VisuElems.IVisualization
Tâche
Afficher les chiffres de comptage produits des consommables.
Description fonctionnelle
FR_ProdConsumedCount est un cadre de visualisation qui sert à afficher les chiffres de
comptage produits des consommables (Admin.ProdConsumedCount[#]).
Interface
In_Out
Type de données
Description
iq_stVisInterface
ST_VisInterface
(voir page 48)
Interface vers le FB_VisController
(voir page 77)
Exemple
108
EIO0000002251 11/2015
Cadres de visualisation
FR_ProdDefectiveCount
Présentation
Type :
Cadre de visualisation
Disponible à partir de la version :
V1.0.1.0
Implémenté :
VisuElems.IVisualization
Tâche
Afficher les chiffres de comptage produits des marchandises détectées comme non conformes.
Description fonctionnelle
FR_ProdDefectiveCount est un cadre de visualisation servant à afficher les chiffres de
comptage produits des marchandises détectées comme non conformes
(Admin.ProdDefectiveCount[#]).
Interface
In_Out
Type de données
Description
iq_stVisInterface
ST_VisInterface
(voir page 48)
Interface vers le FB_VisController
(voir page 77)
Exemple
EIO0000002251 11/2015
109
Cadres de visualisation
FR_ProdProcessedCount
Présentation
Type :
Cadre de visualisation
Disponible à partir de la version :
V1.0.1.0
Implémenté :
VisuElems.IVisualization
Tâche
Afficher les chiffres de comptage produits des marchandises produites.
Description fonctionnelle
FR_ProdProcessedCount est un cadre de visualisation qui sert à afficher les chiffres de
comptage produits des marchandises produites (Admin.ProdProcessedCount[#]).
Interface
In_Out
Type de données
Description
iq_stVisInterface
ST_VisInterface
(voir page 48)
Interface vers le FB_VisController
(voir page 77)
Exemple
110
EIO0000002251 11/2015
PackML
Index
EIO0000002251 11/2015
Index
B
BackgroundFrames, 95
C
Cadres de Visualisation, 99
E
ET_Cmd, 30
Abort, 30, 81
Clear, 30, 81
Hold, 30, 81
Reset, 30, 81
Start, 30, 81
Stop, 30, 81
Suspend, 30, 81
Undefined, 30, 81
UnHold, 30, 81
UnSuspend, 30, 81
ET_Modes, 31
Maintenance, 31
Manual, 31
Producting, 31
Undefined, 31
EIO0000002251 11/2015
ET_Result, 32
Disabled, 32
Initializing, 32
InvalidStateModelNoAbortedState, 33
InvalidStateModelNoCompleteState, 33
InvalidStateModelNoExecuteState, 33
InvalidStateModelNoHeldState, 33
InvalidStateModelNoIdleState, 33
InvalidStateModelNoResettingState, 33
InvalidStateModelNoStoppedState, 33
InvalidStateModelNoSuspendedState, 33
ModeChangeRequestRejected, 33
NumberOfModesRange, 32
Ok, 32
PointerAdminInvalid, 32
PointerInitModeInvalid, 32
PointerStatusInvalid, 33
ResettingTimerAndCounter, 32
Running, 32
StateCurrentRange, 32
UnitModeCurrentRange, 32
UnitModeRange, 33
UnknownResult, 33
ET_States, 34
Aborting, 34, 34
Clearing, 34
Complete, 34
Completing, 34
Execute, 34
Held, 34
Holding, 34
Idle, 34
Resetting, 34
Starting, 34
Stopped, 34
Stopping, 34
Suspended, 34
Suspending, 34
Undefined, 34
UnHolding, 34
UnSuspending, 34
111
Index
F
FB_DataManagement, 70
FB_ModeManager, 73
FB_VisController, 77
FC_CheckCmd, 80
FC_EtResultToString, 83
FC_InitStateModelChangeStates, 84
FC_InitStateModelExistingStates, 87
FC_SetAlarm, 90
FR_<BackgroundFrame>, 95
FR_<State>, 97
FR_Alarm, 101
FR_AlarmHistory, 102
FR_CurrentModeAndStateTime, 103
FR_DynStateModel, 104
FR_ModeAndStateTime, 106
FR_ProdConsumedCount, 108
FR_ProdDefectiveCount, 109
FR_ProdProcessedCount, 110
ST_Ingredient, 56
ST_InitAlarm, 45
ST_Interface, 57
ST_Product, 58
ST_StateInfo, 59
ST_Status, 42
ST_Timestamp, 60
ST_UnitModeDefinition, 46
ST_VisInterface, 48
States frames, 97
G
GCL
PackML, 63
GPL
PackML, 65
P
PackML
GCL, 63
GPL, 65
Q
qualification du personnel, 14
S
ST_Administration, 39
ST_Alarm, 53
ST_Command, 41
ST_CountDescrip, 54
ST_Descriptor, 55
112
EIO0000002251 11/2015

Manuels associés