2. Software Study : Page 2 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
1. OBJET
1.1. Nom
Modularisation élémentaire dynamiquement émulée encapsulable.
1.2. Description
Etude d'impacte de l'émulation dynamique des modules élémentaires d'une machine sur son automatisation. Ce
document résume d'abord le principe d'automation actuelle; ensuite il présente la modularisation élémentaire
dynamiquement émulée encapsulable, son fonctionnement de base, son fonctionnement sécurisé, son
implémentation et ses perspectives.
1.3. Domaine
Contrôle de processus et de mouvement.
1.4. Liens
1.4.1. Références
http://fr.wikipedia.org/wiki/Médée
http://fr.wikipedia.org/wiki/Temps_de_reponse
http://www.univ-fcomte.fr/ ... / Informatique-parallele.ppt
http://www.synqnet.org/ ... / How_To_Choose_A_Motion_Bus.pdf
http://www.cetim.fr/ ... / ConceptsISA88_Cetim_FR.ppt
http://www.controldraw.co.uk/ ... / S88-EMView.pdf
http://formation.cnam.fr/ ... / MOCN-124-125.pdf
http://www.plcopen.org/ ... / IEC-61131.pdf
http://www.isa.org/S88/ ... / WBF99.ppt
...
S88 Implementation Guide: Strategic Automation for the Process Industrie (Darrin W. Fleming - Velumni A. Pillai)
The Instrument Society of America (http://www.isa.org)
Beckhoff_Tc_OO_eng_1.pdf (www.beckhoff.com)
BatchControl.com (http://www.batchcontrol.com)
The World Batch Forum (www.wbf.org)
S88 Info (http://www.s88.info)
...
1.4.2. Issues
Perspectives d'architectures.
1.5. Intervenants / Contacts
• Jean-Claude Pourchet Software Dpt +41 329 257 430 jeanclaude.pourchet@komaxgroup.com
• Alain Kopp Software Dpt +41 329 257 430 alain.kopp@komaxgroup.com
•
1.6. Responsabilités & Historiques
Rév. Date Auteur Resp. Description
• 0.1 31.01.09 JCP AKo 1
ier
jet
• 0.2 30.03.09 JCP AKo 2
ième
1
ier
jet
• 0.3 31.03.09 JCP AKo §4.2. Codage d'une station, Steps X-02
• 0.4 15.04.09 JCP AKo Contraction de module élémentaire en upsilon, Υ
• 0.5 20.08.09 JCP AKo §2.2. Recommandations
§2.3. Bénéfices
§3.3. Automation alternative (complètement "remasterisée")
§4.2. Codage d'une station, gestion du "Free" (semi-auto)
§5. Conclusion (complètement "remasterisée")
• 0.6 09.09.09 JCP AKo §2.2.3. Recommandations à long terme
§3.1. Contraintes (complétées)
§5.2. Synthèse
§6. Annexes
• 0.7 12.10.09 JCP AKo §6.2. Keywords
§6.3.2. Diagramme d'objets (ajout de l'équivalent "~Sys~")
§6.3.5. Diagramme fonctionnel équivalent "KDC"
• 0.8 11.11.09 JCP AKo §6.4. Comparaison mémoire et vitesse
• 0.9 11.01.10 JCP AKo §4.4. Transposition de S88 par Komax
3. Software Study : Page 3 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
1.7. Index
1. OBJET ................................................................................................................................................2
1.1. NOM ................................................................................................................................................................... 2
1.2. DESCRIPTION..................................................................................................................................................... 2
1.3. DOMAINE ........................................................................................................................................................... 2
1.4. LIENS ................................................................................................................................................................. 2
1.4.1. Références............................................................................................................................................................................... 2
1.4.2. Issues....................................................................................................................................................................................... 2
1.5. INTERVENANTS / CONTACTS .............................................................................................................................. 2
1.6. RESPONSABILITES & HISTORIQUES .................................................................................................................. 2
1.7. INDEX................................................................................................................................................................. 3
2. SOMMAIRE.......................................................................................................................................4
2.1. PLAN .................................................................................................................................................................. 4
2.1.1. Automation actuelle ................................................................................................................................................................ 4
2.1.2. Automation alternative............................................................................................................................................................ 4
2.1.3. Temps de réponse.................................................................................................................................................................... 4
2.1.4. Modules autonomes ................................................................................................................................................................ 4
2.1.5. Automation induite.................................................................................................................................................................. 4
2.1.6. Perspectives............................................................................................................................................................................. 4
2.2. RECOMMANDATIONS.......................................................................................................................................... 4
2.2.1. A court terme .......................................................................................................................................................................... 4
2.2.2. A moyen terme........................................................................................................................................................................ 4
2.2.3. A long terme............................................................................................................................................................................ 4
2.3. BENEFICES ........................................................................................................................................................ 5
3. ETUDE................................................................................................................................................6
3.1. CONTRAINTES .................................................................................................................................................... 6
3.2. AUTOMATION ACTUELLE ................................................................................................................................... 7
3.3. AUTOMATION ALTERNATIVE.............................................................................................................................. 7
3.3.1. Objectif S88 ............................................................................................................................................................................ 7
3.3.2. Modèles S88............................................................................................................................................................................ 8
3.3.3. Modularisation induite ............................................................................................................................................................ 8
3.4. TEMPS DE REPONSE........................................................................................................................................... 9
3.4.1. Réponse indicielle................................................................................................................................................................... 9
3.4.2. Réponse impulsionnelle .......................................................................................................................................................... 9
3.4.3. Réponse analogique ................................................................................................................................................................ 9
3.5. MODULES AUTONOMES.................................................................................................................................... 10
3.5.1. Module binaire...................................................................................................................................................................... 10
3.5.2. Module analogique................................................................................................................................................................ 12
3.6. AUTOMATION INDUITE..................................................................................................................................... 13
3.6.1. Séquenceur simplifié............................................................................................................................................................. 13
3.6.2. Tableau de séquences............................................................................................................................................................ 13
4. PERSPECTIVES .............................................................................................................................14
4.1. MODELISATION D'UNE MACHINE..................................................................................................................... 14
4.2. MODELISATION D'UNE STATION ...................................................................................................................... 14
4.2.1. Architecture logique.............................................................................................................................................................. 14
4.2.2. Diagramme d'interactions...................................................................................................................................................... 14
4.2.3. Tableau des séquences .......................................................................................................................................................... 15
4.3. CODAGE D'UNE STATION.................................................................................................................................. 15
4.3.1. Séquences en code ladder...................................................................................................................................................... 15
4.3.2. Séquences en ladder détaillé.................................................................................................................................................. 16
4.3.3. Séquences en pseudo-code.................................................................................................................................................... 17
4.4. TRANSPOSITION DE S88 PAR KOMAX............................................................................................................... 18
4.4.1. Entre "Physique", "Arborescence" et "Activité" ................................................................................................................... 18
4.4.2. Entre "Spécifications", "Qualifications" et "Etats"................................................................................................................ 18
5. CONCLUSIONS ..............................................................................................................................19
5.1. PARADIGME ..................................................................................................................................................... 19
5.1.1. Outil de modélisation ............................................................................................................................................................ 19
5.1.2. Modèles de base.................................................................................................................................................................... 20
5.1.3. Déclarations .......................................................................................................................................................................... 21
5.2. SYNTHESE ........................................................................................................................................................ 22
5.2.1. Fondamentaux de l'automation.............................................................................................................................................. 22
5.2.2. Gains prédictibles.................................................................................................................................................................. 22
5.2.3. Perspectives........................................................................................................................................................................... 23
6. ANNEXES ........................................................................................................................................24
6.1. LEXIQUE .......................................................................................................................................................... 24
6.2. KEYWORDS....................................................................................................................................................... 27
6.2.1. For Tags ................................................................................................................................................................................ 27
6.2.2. For Logic............................................................................................................................................................................... 27
6.3. SYNTHESE UML .............................................................................................................................................. 29
6.3.1. Diagramme de classes........................................................................................................................................................... 29
6.3.2. Diagramme d'objets............................................................................................................................................................... 30
6.3.3. Diagramme d'états................................................................................................................................................................. 30
6.3.4. Diagramme de séquences...................................................................................................................................................... 30
6.3.5. Diagramme fonctionnel équivalent "KDC"........................................................................................................................... 31
6.4. COMPARAISON MEMOIRE ET VITESSE.............................................................................................................. 32
4. Software Study : Page 4 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
2. SOMMAIRE
2.1. Plan
2.1.1. Automation actuelle
L'automation actuelle est structurée, robuste et bien adaptée aux processus préalablement connus. Cependant
son lien direct avec les entrées-sorties et les messages d'alarme alourdit les modifications de processus et
bloque l'émulation de processus; l'automation actuelle n'est ni flexible ni émulable.
2.1.2. Automation alternative
Certaines théories en automation ont abouti à recommander d'isoler les éléments physiques (entrées-sorties)
de la gestion des processus afin de les rendre virtuels. Ceci passe par une modularisation élémentaire
dynamiquement émulée encapsulable; il s'agit d'insérer entre les séquenceurs en charge des processus et les
entrées-sorties physiques des modules logiciels autonomes aptes à gérer et à émuler le comportement des
modules mécatroniques liés à ces entrées-sorties.
2.1.3. Temps de réponse
Le cœur du module élémentaire est l'élément émulant dynamiquement le comportement du module
mécatronique associé; il gère temporellement des modèles de réponses "indicielle", "impulsionnelle" ou
"analogique".
2.1.4. Modules autonomes
Le module élémentaire peut aller au-delà du simple interfaçage ou de la simple émulation, il peut aussi intégrer
des éléments de sécurisation afin de procurer encore plus d'autonomie et de rendre la couche d'abstraction un
peu plus intelligente et permettre d'épurer toujours plus les couches procédurales supérieures (séquenceurs).
2.1.5. Automation induite
La représentation séquentielle n'étant pas forcément facile d'accès aux non-initiés, un autre avantage de
l'architecture logicielle basée sur la modularisation élémentaire est la représentation matricielle des processus.
Ces matrices de processus se prêtent particulièrement bien aux analyses pluridisciplinaires ( technologue /
constructeur / automaticien / metteur-au-point / valideur / rédacteur-technique / client / ... ) et peuvent constituer
le document transverse de référence non seulement lors de la conception d'une station sur une machine, mais
aussi lors de la réutilisation ou de l'amélioration d'un processus équivalent sur une autre machine.
2.1.6. Perspectives
L'usage des modules élémentaires autonomes entre les séquenceurs et les entrées-sorties physiques rend
l'automatisation flexible et émulable. Les séquenceurs, et par conséquent les processus, peuvent être évalués
et même pré-validés sans les éléments physiques. Une modification de processus n'implique qu'un changement
de numérotation de séquence; il n'est plus nécessaire de se préoccuper de la sortie, de l'entrée ou de la faute
en relation avec telle ou telle séquence. La couche d'abstraction matérialisée par les modules élémentaires
simplifie, flexibilise et émule l'automation.
Un "Time to Market" réduit de 20% grâce au code-machine SMART"
Simple, éMulable, Accessible, Rapide et Temporellement défini
2.2. Recommandations
2.2.1. A court terme
• Etablir des "ponts" entre le standard actuel et le concept "Ydée-S88".
• Créer une application "hybride" (i.e. le palletiseur PDS-HV).
2.2.2. A moyen terme
• Créer une application avec "Ydee-S88" exempt des faiblesses d'hybridation.
• Etablir un concept "Komax-S88" pour du matériel Rockwell.
2.2.3. A long terme
• Etablir un concept "Komax-S88" multiplateforme (Siemens, Rockwell, Beckhoff).
"1 seul HMI, 1 seul fieldbus, 3 Automates conformes !"
5. Software Study : Page 5 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
2.3. Bénéfices
Bénéfices Pourquoi Comment
Mises en service
accélérées
• S88 induit une réflexion modulaire
facilitant un ou des changements de
recettes ou de commandes
• Codes réutilisables
• Commandes flexibles
• Recettes réutilisables / modifiables
• Revalidations simplifiées ou non-requise
Eléments
plus performants
(de la conception
à l'utilisation)
• Modules S.M.A.R.T.
Simple, éMulable, Accessible,
Rapide et Temporellement défini.
• Processus segmentés
• Commandes flexibles
• Changements plus rapides
• "Refontes" plus rapides
Intervenants
plus performants
(de la conception
à l'utilisation)
• Simplification des recettes
• Recettes, processus et éléments
physiques cohérents
• Terminologies standardisées
• Visibilité des processus
• Connaissance de la commande non-requise
à la conception des processus
• Recettes et modules réutilisables
• Connaissance des recettes non-requise
pour la réalisation de la commande
• Améliorations des processus réalisables par
les opérateurs eux-mêmes.
Cohérence
entre processus et
éléments physiques
• Modules et recettes partagées • Recettes utilisables avec des commandes et
des éléments physiques différents
• Terminologies standardisées
• Moindre dépendance aux technologies ou
commandes particulières
Compatibilité avec les
fournisseurs
techniques
• Langages et objectifs partagés
• Intégrations multi-sources facilitées
• Philosophie de conception modulaire
• Terminologies standardisées
• Modules S.M.A.R.T.
Qualité améliorée • Localisation et traçage de tous les
éléments constitutifs d'un projet
• Focaliser sur la cohérence
• Plus de données temps réelles accessibles
• La cohérence globale fonde l'amélioration
• Améliorations continues des processus
depuis les recettes
Erreurs de base
évitées
• S88 est issu des travaux
d'ingénieurs, de fournisseurs et de
consultants fortement aguerris
• Bonnes pratiques induites
• Règles de base simples d'accès
Simplification des
recettes
• Induit par la cohérence du standard
et ses concepts modulaires
• La création de recettes est inhérente au
concept S88
Traitements des
erreurs facilités
• Traque des exceptions / singularités
induit par les règles de base
• Collection des données liées aux recettes et
aux étapes
Maintenance facilitée • Modularité
• Standards
• Eléments isolables pour les dépannages
• Réduction de la dépendance aux systèmes
propriétaires
• Règles de codages simples
Validation facilitée • Plus organisé et modulaire • Réutilisation de modules pré-validés
(gain de temps et d'argent)
http://www.rovisys.com/rovisys/Business/CSI/batch-control-systems-S88-benefits
• Délais de modélisation et de documentation réduits (forte analogie avec les "time diagram" du BT).
• Prévalidation des séquences grâce à l'émulation avec des temps de réponse théoriques.
• Retour d'expérience documentable et réutilisable avec des temps de réponse observés.
• Compatibilité entre Komax et S88-IEC61512 ("Komax-S88" multiplateforme).
• Un "Time to Market" réduit de 20% grâce au code-machine SMART".
• "1 seul HMI, 1 seul fieldbus, 3 Automates conformes !"
6. Software Study : Page 6 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
Automation
Architecture
Performance
Sécurité
Coûts
Standards
Interopérabilité
Normes
Références
Ouverture Modularité
Flexibilité
Evolutivité
Qualité
Fiabilité
Homogénéité
Technologie
Emulation
Maintenabilité
Délais
Matériel
3. ETUDE
3.1. Contraintes
• Contraintes en automation :
Les sujets potentiellement abordés lors d'un projet d'automation
sont multiples; dans cette figure, le cercle extérieur liste
les sujets les plus souvent cités.
Tous ces thèmes peuvent être regroupés sous cinq
familles ("coûts", "standards", '"architecture", "performance" et "sécurité"; le "graal" de
l'automaticien consiste à chercher le meilleur équilibre entre ces 5 familles sans trop les péjorer.
• Evaluation des modèles :
Les normes et les références définissent des modèles; la figure ci-dessous les catégorise selon 2 axes:
-l'axe horizontal mesure le niveau de conformité aux normes des modèles (de hors-norme à conforme).
-l'axe vertical indique le nombre de réalisations utilisant ces modèles (de prototype à référence).
A
B
Modèle
"Maison"
C
Modèle
"Initial"
D
Référence
réalisations multiples
Conforme
Hors-norme
Prototype
Modèle
"Standard"
Modèle
"Singulier"
En partant d'un prototype hors-norme (i.e. "modèle singulier" ou "anormal"), il faut prévoir deux étapes de mise-
en-oeuvre (conception-développement-intégration-validation) plutôt qu'une pour parvenir à une référence
conforme (i.e. "modèle standard" ou "normal") apte à réduire le plus grand nombre des contraintes citées
précédemment; partir d'un prototype conforme s'avère plus judicieux, hormis si le respect du standard n'est pas
requis.
7. Software Study : Page 7 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
Manual
Capabilité
Flexibilité
Complexité
Automatic
Automation
Traditionnelle
Automation
S88 - IEC61512
3.2. Automation actuelle
L'automation actuelle est structurée, robuste et bien adaptée aux processus préalablement connus.
#4 dT
#2 dT
#0 dT
Le lien direct entre les séquenceurs, les entrées-sorties et les messages d'alarme alourdit par contre toute
modification de processus et bloque de manière quasi rédhibitoire toute tentative d'émulation de processus;
l'automation actuelle n'est ni flexible ni émulable.
3.3. Automation alternative
3.3.1. Objectif S88
L'automation traditionnelle dissocie le fonctionnement manuel du fonctionnement automatique;
la capabilité est atteinte au prix d'une plus grande complexité.
L'objectif S88 est de parvenir au fonctionnement
automatique en se basant sur les fonctions manuelles;
la capabilité est issue de la flexibilité procurée par la réutilisation ou non des fonctions manuelles disponibles.
8. Software Study : Page 8 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
3.3.2. Modèles S88
Durant la fin des
années 1990s, des
propositions théoriques
(UML et ISA) ont abouti
à l'élaboration de
certains standards pour
l'automation,
notamment PlcOpen et
IEC-61512 (S88). La
principale
recommandation est de
respecter un modèle
procédural compatible
avec le modèle
physique qui est lui-
même dérivé du modèle
processus; le seconde
est d'isoler les
"modules" ou éléments
physiques (entrées-
sorties) de la gestion
des processus;
autrement dit, il s'agit de rendre les séquenceurs complètement virtuels.
3.3.3. Modularisation induite
L'orientation objet dans le
domaine de l'informatique
industrielle induit qu'un élément
de processus (Etape, Opération
ou Action) possède un
équivalent physique au sein
d'une zone associée (Cellule,
Unité, Equipement); le détail de
l'équipement est réalisé avec
des modules. De même qu'entre
le modèle processus et le
modèle physique existent des
liens parallèles, le modèle
procédural (ou informatique) est
une image du modèle physique;
ainsi on associe une recette à
une zone, une procédure à une
cellule, une opération à une
unité et une phase à un
équipement; le fait qu'il n'existe
pas d'équivalent procéduraux
aux modules induit que les
modules sont dans les phases.
En résumé, l'architecture informatique, le modèle procédural, possède une structure équivalente à la structure
physique de l'installation à automatiser; chaque routine du programme est "associée" à un élément physique;
dès lors qu'une routine informatique ne possède pas son pendant physique, on sort de la norme.
C'est la proposition de la modularisation élémentaire dynamiquement émulée encapsulable; il s'agit d'insérer
entre les séquenceurs en charge des processus et les entrées-sorties physiques des modules logiciels aptes à
gérer et émuler le comportement des modules mécatroniques liés à ces entrées-sorties.
Unité(s)
Zone
Cellule(s)
Equipements
Modules
Modèle
physique
Modèle
procédural
Opération(s)
Recette
Procédure(s)
Phases
Opération(s)
Processus
Etape(s)
Actions
Modèle
processus
Site(s)
Entreprise
Modèle
d’activité
Gestion Processus
Supervision d'unité(s)
Contrôles
d'équipements
Planification
Ordonnancement
de
la
Production
Gestion
des
Recettes
Gestion
des
Informations
Structure
procédurale
+
–
–
–
–
+
–
+
Site "Berne"
Site "Neuch"
Recette X
Recette Y
Procédure Y1
Procédure Y2
Opération Y2A
Opération Y2B
Opération Y2C
Phase Y2C1
Phase Y2C2
Phase Y2C3
Modèle
procédural
Opération(s)
Recette
Procédure(s)
Phases
Unité(s)
Zone
Cellule(s)
Equipements
Modules
Modèle
physique
Site(s)
Entreprise
encapsulés dans les phases
9. Software Study : Page 9 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
3.4. Temps de réponse
Le cœur du module élémentaire est l'élément procédural qui émule dynamiquement le comportement du
module mécatronique associé; il gère temporellement des modèles de réponses "indicielle", "impulsionnelle" ou
"analogique".
L'élément procédural "dT" peut être considéré comme un "TIMER" dont les caractéristiques propres sont
dédiées au module mécatronique associé; il a pour fonction d'émuler le temps de réponse de l'"INPUT"
relativement à un changement d'état de l'"OUTPUT".
3.4.1. Réponse indicielle
En automation la réponse indicielle est la réponse d'un système dynamique à une fonction marche de
Heaviside aussi appelée échelon; si le système est un système linéaire invariant, il est caractérisé ainsi:
• Dépassement, t1
• Temps de montée, t2
• Temps de réponse "dT"
Ses caractéristiques permettent de
déduire beaucoup d'informations
sur le système.
En ce qui nous concerne, la
grande majorité des modules
mécatroniques que nous
implémentons peuvent être
modélisés ainsi; une translation
pneumatique "tout-ou-rien", "avant-arrière", "haut-bas", "gauche-droite", etc...
3.4.2. Réponse impulsionnelle
Mathématiquement, cette impulsion est modélisée par une impulsion de
Dirac; la réponse impulsionnelle est alors la sortie du système en
réponse à cette impulsion.
Pour nous, un cycle de table rotative ou un cycle de pompage peut être
modélisé par ce biais.
3.4.3. Réponse analogique
Dès lors qu'un système mécatronique ne fonctionne pas en mode "tout-
ou-rien", il est considéré comme un module analogique; la régulation est l'ensemble des techniques qui
permettent de contrôler une grandeur physique (température, vitesse, pression, ...), sans intervention humaine,
pour l'amener et la maintenir à une valeur donnée, appelée consigne; la réponse temporelle peut se
décomposer en 3 composantes, une composante proportionnelle, une composante intégrale et une
composante dérivée (PID).
α
β
t1 t2
%T2
min
max
t3 t4 t5
γ
%T3 %T4 %T5
Dans notre cas, il s'agit d'utiliser ce modèle pour les axes de positionnement et les régulations de débit ou de
température. Le but aussi n'étant que d'émuler le délai écoulé entre 2 consignes, nous n'avons pas besoin de
déterminer les valeurs analogiques intermédiaires, seul les "%T" de "dT" nous intéressent.
%T =
( Setpoint – Getpoint )
Max – Min
Ï dT[Max-Min]
0
1
t1
t2
dT
0
1
t1
t2
dT
0
1
t1
t2
dT
0
1
t1
t2
dT
0
1
t1
t2
dT
Acc Dec
0
1
t1
t2
dT
Acc Dec
10. Software Study : Page 10 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
3.5. Modules autonomes
Le module élémentaire peut aller au-delà du simple interfaçage ou de la simple émulation, il peut aussi intégrer
des éléments de sécurisation afin de procurer encore plus d'autonomie et de rendre la couche d'abstraction un
peu plus intelligente et permettre d'épurer toujours plus les couches procédurales supérieures (séquenceurs).
dT
►
╓
╜
dT
►
╓
╜ &
Ë
& &
╖
╙ &
╖
╙
Entry Fault Xtatus
Output Input
Emulate
Done
Reset
Entry
Fault
Xtatus
Reset
Output
Input
Emulate
dT.DN
U
U
Fault
L
L
TON
dT
TON
dT
Fault
dT.DN Xtatus Reset
Ainsi la transmission du "ENTRY" est subordonnée à la détection préalable ou non d'une "FAULT". Le reste du
fonctionnement demeure le même que précédemment décrit, hormis le traitement du signal "FAULT" qui est
"TRIGGER", inhibant en cas de défaut le "ENTRY" (et par conséquent l'"OUTPUT"); pour redémarrer en cas de
"FAULT", un "RESET" est nécessaire.
3.5.1. Module binaire
Dès lors que la fonctionnalité d'un module élémentaire binaire est bien comprise, sa représentation en "boîte
blanche" n'est plus requise; une représentation en "boîte noire" peut suffire.
▼ ▼ ▲ ▲
En Flt Rst Xts
γδέε
Out Dn Eµ In
▼ ▲ ▼ ▲
▼ ▼ ▲ ▲
En Flt Rst Xts
γδέε
Out Dn Eµ In
▼ ▲ ▼ ▲
▼
▼
▼
▲
Rst Flt
En Out
γδέε
Xts Ιn
Eµ Dn
▲
▼
▼
▼
▼
▼
▼
▲
Rst Flt
En Out
γδέε
Xts Ιn
Eµ Dn
▲
▼
▼
▼
▼
▼
▼
▲
Rst
Flt Dn
En Out
Xts Ιn
Eµ
▲
▼
▼
▼
▼
▼
▼
▲
Rst
Flt Dn
En Out
Xts Ιn
Eµ
▲
▼
▼
▼
▼
▼
▼
▲
Flt Rst
En Out
γδέε
Xts Ιn
Eµ Dn
▼
▼
▼ ▲
▼
▼
▼
▲
Flt Rst
En Out
γδέε
Xts Ιn
Eµ Dn
▼
▼
▼ ▲
dT
►
╓
╜
dT
►
╓
╜ &
Ë
& &
╖
╙ &
╖
╙
Entry Fault Xtatus
Output Input
Emulate
Done
Reset
Les représentations ci-dessus ne prétendent pas être définitives; la meilleure représentation est celle qui
satisfera le plus grand nombre d'utilisateurs d'une part et d'autre part qui présentera une certaine cohérence ou
consistance avec le système de programmation cible.
11. Software Study : Page 11 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
• Exemple binaire typique:
Il s'agit évidemment d'un vérin avec deux fin-de-course:
dans cette hypothèse, la combinaison de deux modules
élémentaires permet de gérer l'équipement complet.
▼
▲
▼
▼
Flt Rst
En Out
γδέε
Xts Ιn
Eµ Dn
▼
▼
▼ ▲ ▲ ▼
•Open
•Close
•Opened
•Closed
•OpenErr
•ClosErr
▼
▼
Flt Rst
En Ιn
γδέε
Xts Out
Eµ Dn
▲
▼
▼
▼
▼
▲
▼
▼
Flt Rst
En Out
γδέε
Xts Ιn
Eµ Dn
▼
▼
▼ ▲ ▲ ▼
•Open
•Close
•Opened
•Closed
•OpenErr
•ClosErr
▼
▼
Flt Rst
En Ιn
γδέε
Xts Out
Eµ Dn
▲
▼
▼
▼
• Exemple binaire impulsionnel:
Relativement fréquent, cet exemple permet de décrire la commande d'une table
d'indexage rotative; cette fois, le recours à trois modules élémentaires avec
interactions est une façon de couvrir les besoins.
▼
▼
▼
▲
Flt Rst
En Out
γδέε
Xts Ιn
Eµ Dn
▼
▼
▼ ▲
▲
▼
▼
▼
▲
Flt Rst
En Out
γδέε
Xts Ιn
Eµ Dn
▼
▼ ▲
▼
▼
▼
Flt Rst
En Out
γδέε
Xts Ιn
Eµ Dn
▼
▼
▼ ▲
•Start
•Stopped
▼
•Stopping
•Accelerate
•Cruise
•Indexing
•Indexed
•Index
▼
▼
▼
▲
Flt Rst
En Out
γδέε
Xts Ιn
Eµ Dn
▼
▼
▼ ▲
▲
▼
▼
▼
▲
Flt Rst
En Out
γδέε
Xts Ιn
Eµ Dn
▼
▼ ▲
▼
▼
▼
Flt Rst
En Out
γδέε
Xts Ιn
Eµ Dn
▼
▼
▼ ▲
•Start
•Stopped
▼
•Stopping
•Accelerate
•Cruise
•Indexing
•Indexed
•Index
…
0
1
t1
t2
dT
0
1
t1
t2
dT
0
1
t1
t2
dT
0
1
t1
t2
dT
0
1
t1
t2
dT
Acc Dec
0
1
t1
t2
dT
Acc Dec
12. Software Study : Page 12 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
3.5.2. Module analogique
En matière d'émulation dynamique de module analogique, la référence temporelle est déterminée par le temps
de réponse nécessaire pour parcourir la totalité de l'échelle de l'équipement; autrement dit, le temps pour aller
de la position minimum à la position maximum.
α
β
t1
t2
%T2
min
max
t3 t4 t5
γ
%T3 %T4 %T5
Ensuite, des "%T" sont déterminés en fractions de "dT" fonction du parcours relatif déterminé par la position de
consigne et la position précédente.
%T
►
╓
╜
%T
►
╓
╜ &
Ë
Fault
%Output %Input
Emulate
Done
Ë
dT
%Entry
&
%Xtatus
Reset
&
╖
╙ &
╖
╙
%T =
( %Entry – %Input )
Max – Min
Ï dT[Max-Min]
▲
▼
▼
▼
Flt Rst
%En %Out
γ%έε
%Xts %Ιn
Eµ Dn
▼
▼
▼ ▲
▼ ▼ ▲ ▲
%En Flt Rst %Xts
γ%έε
%Out Dn Eµ %In
▼ ▲ ▼ ▲
▼ ▼ ▲ ▲
%En Flt Rst %Xts
γ%έε
%Out Dn Eµ %In
▼ ▲ ▼ ▲
Fault
TON
%T
Emulate
%T.DN
Fault
Reset
U
U
L
L
Fault
%T.DN Reset
Compute %T
dTx ABS(%Xtatus-%Entry) / Rng
Compare
%Xtatus # %Entry
Move %Output
%Entry
Move %Xtatus
%Entry
Move %Xtatus
%Input
• Exemple Analogique:
Un exemple analogique typique
consiste en un axe motorisé avec
deux fin-de-course et une position
zéro:
dans cette hypothèse, la
combinaison d'un module
élémentaire binaire associé à un
module élémentaire analogique
permet de gérer l'équipement
complet.
▼
▼
▼
▲
Flt Rst
En Out
γδέε
Xts Ιn
Eµ Dn
▼
▼
▼ ▲
•Home
•Setpoint
•Homed
▲
▼
▼
▼
Flt Rst
%En %Out
γ%έε
%Xts %Ιn
Eµ Dn
▼
▼
▼
•Getpoint
▲
▼
▼
▼
▲
Flt Rst
En Out
γδέε
Xts Ιn
Eµ Dn
▼
▼
▼ ▲
•Home
•Setpoint
•Homed
▲
▼
▼
▼
Flt Rst
%En %Out
γ%έε
%Xts %Ιn
Eµ Dn
▼
▼
▼
•Getpoint
▲
13. Software Study : Page 13 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
3.6. Automation induite
3.6.1. Séquenceur simplifié
Comme précédemment décrit, le lien direct entre les
séquenceurs, les entrées-sorties et les messages
d'alarme alourdit toute modification de processus et
bloque toute tentative d'émulation de processus.
Par contre, lorsqu'on insère ces modules élémentaires
autonomes entre les séquenceurs et les entrées-
sorties physiques, l'automation induite devient flexible
et émulable.
Les séquenceurs, et par conséquent les processus,
peuvent être évalués et même pré-validés sans les
éléments physiques.
Une modification de processus devient alors simple
car elle n'implique qu'un changement de numérotation
de séquence; il n'est plus nécessaire de se préoccuper
de la sortie, de l'entrée ou de la faute en relation avec
telle ou telle séquence.
La couche d'abstraction matérialisée par les modules
élémentaires simplifie, flexibilise et émule l'automation.
3.6.2. Tableau de séquences
La représentation séquentielle (Graphcet, SFC, ...) n'étant pas forcément facile d'accès aux non-initiés, un autre
avantage de l'architecture logicielle basée sur la modularisation élémentaire est la représentation matricielle des
processus; Il s'agit de définir un tableau spécifique à chaque processus à réaliser au sein d'une machine:
• chaque colonne est affectée à un
module élémentaire rappelant les
entrées-sorties physiques et les
messages opérateur qui le
caractérise sans oublier sa
constante de temps, "dT" !
• chaque ligne est affectée
alternativement à la matérialisation
des séquences de requête (unique
ou composite) à émettre vers les
modules élémentaires, puis à la
matérialisation des conditions de
passage d'une séquence à l'autre
en fonction des informations
("STATUS" ou "FAULT") retournées
par ces mêmes modules
élémentaires.
• De fait, chaque étape définissant les
requêtes émises vers les modules
élémentaires est suivie par une ou
des transitions de passages
analysant les états de ces modules.
Ces tableaux de séquences (ou
matrices de processus) se prêtent particulièrement bien aux analyses pluridisciplinaires ( technologue /
constructeur / automaticien / metteur-au-point / valideur / rédacteur-technique / client / ... ) et peuvent constituer
le document transverse de référence non seulement lors de la conception d'une station sur une machine, mais
aussi lors de la réutilisation ou de l'amélioration d'un processus équivalent sur une autre machine...
Ces tableaux de séquences ne constituent que la partie visible d'une architecture logicielle basée sur une
couche d'abstraction mettant en œuvre des modules élémentaires dynamiquement émulés encapsulables.
#4
#2
#0
▼
▼
▼
▲
Flt Rst
En Out
γδέε
Xts Ιn
Eµ Dn
▼
▼
▼ ▲
▼
▼
▼
▲
Flt Rst
En Out
γδέε
Xts Ιn
Eµ Dn
▼
▼
▼ ▲
▼
▼
▼
▲
Flt Rst
En Out
γδέε
Xts Ιn
Eµ Dn
▼
▼
▼ ▲
▼
▼
▼
▲
Flt Rst
En Out
γδέε
Xts Ιn
Eµ Dn
▼
▼
▼ ▲
▼
▼
▼
▲
Flt Rst
En Out
γδέε
Xts Ιn
Eµ Dn
▼
▼
▼ ▲
▼
▼
▼
▲
Flt Rst
En Out
γδέε
Xts Ιn
Eµ Dn
▼
▼
▼ ▲
#4
#3
#2
#1
#0
#5
dT1 dT2 dT3
14. Software Study : Page 14 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
4. PERSPECTIVES
L'usage des modules élémentaires autonomes entre les séquenceurs et les entrées-sorties physiques induit un
modèle d'implémentation en strates. Les séquenceurs, et par conséquent les processus sont cantonnés dans
les couches supérieurs alors que les modules élémentaires non-séquencés se chargent des accès bas-niveau
sans recourir à aucune logique séquentielle.
4.1. Modélisation
d'une machine
Dans ce paradigme, la
modélisation d'une machine
revient à modéliser une station
dont les modules élémentaires
sont des stations, tout
simplement !
4.2. Modélisation
d'une station
4.2.1. Architecture logique
Ou "Diagramme d'objets". Le
modèle procédurale proposé
à titre d'exemple décrit une
station de "Pick & Place"
incluant un bras horizontal, un
bras vertical et une pince de
préhension:
• le bras horizontal est en
position "Pick" au repos et
position "Place" en action.
• le bras vertical est en position "Up" au repos et en position "Down" en action.
• la pince "Gripper" est en position "Open" au repos et en position "Close" en action.
4.2.2. Diagramme d'interactions
Dans ce cas d'espèce, seule la couche dédiée à la "station" comporte un séquenceur; la couche libellée
"Modules composites" s'enquiert des relations entre les modules élémentaires associés en leur sein.
▼
▼
▲ ▲ ▼ ▼ ▲ ▲
▼ ▼
▲ ▲
▼ ▼ ▲ ▲
γδέε
Pick
▼ ▲ ▼ ▲
Modules
élémentaires
Sous
Stations
Station
γδέε
Place
▼ ▲ ▼ ▲
γδέε
Up
▼ ▲ ▼ ▲
γδέε
Down
▼ ▲ ▼ ▲
▼ ▼
▲ ▲
γδέε
Open
▼ ▲ ▼ ▲
▼ ▼
▲ ▲
γδέε
Close
▼ ▲ ▼ ▲
▼ ▲ ▼ ▲ ▼ ▲ ▼ ▲ ▼ ▲ ▼ ▲
▼ ▲
▼ ▲
•Home
•Cycle
•Done
•End
[ / ]
[ / ]
[ ]
[ ]
Horiz.
( )
( )
Place
( )
( )
Pick
Horiz.
[ / ]
[ / ]
[ ]
[ ]
Vert.
( )
( )
Down
( )
( )
Up
Vert.
[ / ]
[ / ]
[ ]
[ ]
Grip
( )
( )
Close
( )
( )
Open
Grip
Equipements
physiques
X-00
E-01
X-01
E-02
X-02
E-03
E-nd
.
[nop]
[nop]
[nop]
[nop]
(L) Done
[ ] Cycle
[ ] Home
.
(U) Grip
[ ] Opened
[nop]
[nop]
[nop]
[nop]
.
.
[nop]
[nop]
(U) Vert.
[ ] Up
[nop]
[nop]
.
.
[nop]
[nop]
[nop]
[nop]
(U) Horiz.
[ ] Picked
.
.
E-00
X-00
E-01
X-01
E-02
X-02
.
.
Next
Mode
"Gripper"
"Vertical"
"Horizontal"
Steps
X-00
E-01
X-01
E-02
X-02
E-03
E-nd
.
[nop]
[nop]
[nop]
[nop]
(L) Done
[ ] Cycle
[ ] Home
.
(U) Grip
[ ] Opened
[nop]
[nop]
[nop]
[nop]
.
.
[nop]
[nop]
(U) Vert.
[ ] Up
[nop]
[nop]
.
.
[nop]
[nop]
[nop]
[nop]
(U) Horiz.
[ ] Picked
.
.
E-00
X-00
E-01
X-01
E-02
X-02
.
.
Next
Mode
"Gripper"
"Vertical"
"Horizontal"
Steps
La couche des "Modules élémentaires" se charge de l'accès aux entrées-sorties, de la gestion des temps de
réponses, du management des défauts et évidemment de l'émulation des éléments mécaniques.
▼ ▼ ▲ ▲ ▼ ▼ ▲ ▲ ▼ ▼ ▲ ▲ ▼ ▼ ▲ ▲ ▼ ▼ ▲ ▲ ▼ ▼ ▲ ▲
... γδέε ... γδέε ... γδέε... γδέε ...
▼ ▼ ▲ ▲
Index
▼ ▲ ▼ ▲
Sous
Stations
Stations
Machine
▼ ▼ ▲ ▲
Conv.
▼ ▲ ▼ ▲
▼ ▼ ▲ ▲
Horiz.
▼ ▲ ▼ ▲
▼ ▼ ▲ ▲
Vert.
▼ ▲ ▼ ▲
▼ ▼ ▲ ▲
Grip
▼ ▲ ▼ ▲
▼ ▼ ▲ ▲
Glue
▼ ▲ ▼ ▲
Table
▼ ▲ ▼ ▲
P&P Glue
▼ ▲ ▼ ▲ ▼ ▲ ▼ ▲
Machine
▼ ▲
▼ ▲
•Home
•Cycle
•Done
•End
•Home
•Cycle
•Done
•End
•Home
•Cycle
•Done
•End
•Home
•Cycle
•Done
•End
X-00
E-01
X-01
E-02
X-02
E-03
E-nd
.
[nop]
[nop]
[nop]
[nop]
(L) Done
[ ] Cycle
[ ] Home
.
(U) Grip
[ ] Opened
[nop]
[nop]
[nop]
[nop]
.
.
[nop]
[nop]
(U) Vert.
[ ] Up
[nop]
[nop]
.
.
[nop]
[nop]
[nop]
[nop]
(U) Horiz.
[ ] Picked
.
.
E-00
X-00
E-01
X-01
E-02
X-02
.
.
Next
Mode
"Gripper"
"Vertical"
"Horizontal"
Steps
X-00
E-01
X-01
E-02
X-02
E-03
E-nd
.
[nop]
[nop]
[nop]
[nop]
(L) Done
[ ] Cycle
[ ] Home
.
(U) Grip
[ ] Opened
[nop]
[nop]
[nop]
[nop]
.
.
[nop]
[nop]
(U) Vert.
[ ] Up
[nop]
[nop]
.
.
[nop]
[nop]
[nop]
[nop]
(U) Horiz.
[ ] Picked
.
.
E-00
X-00
E-01
X-01
E-02
X-02
.
.
Next
Mode
"Gripper"
"Vertical"
"Horizontal"
Steps
Modules
élémentaires
▼ ▼ ▲ ▲
Pick
▼ ▲ ▼ ▲
Modules
élémentaires
Sous
Stations
Station
▼ ▼ ▲ ▲
Place
▼ ▲ ▼ ▲
▼ ▼ ▲ ▲
Up
▼ ▲ ▼ ▲
▼ ▼ ▲ ▲
Down
▼ ▲ ▼ ▲
▼ ▼ ▲ ▲
Open
▼ ▲ ▼ ▲
▼ ▼ ▲ ▲
Close
▼ ▲ ▼ ▲
Horizontal
▼ ▲ ▼ ▲
Vertical Gripper
▼ ▲ ▼ ▲ ▼ ▲ ▼ ▲
Pick & Place
▼ ▲
▼ ▲
•Home
•Cycle
•Done
•End
17. Software Study : Page 17 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
4.3.3. Séquences en pseudo-code
If Free*End>0 then
Jump:=0, K.00:=(Home>0),K.03:=(Cycle>0),End:=0; Header
IF K.00>0 then J.01:=1,void,void,Grip:=0;
IF K.01>0 then J.02:=(true*true*Opened);
IF K.02>0 then J.03:=1,void,Vert:=0,void;
IF K.03>0 then J.04:=(true*Up*true);
IF K.04>0 then J.05:=1,Horiz:=0,void,void,Done:=1;
IF K.05>0 then End:=(Picked*true*true*~Cycle),J.06:=(Picked*~End);
IF K.06>0 then J.07:=1,void,Vert:=1,void,Done:=0;
IF K.07>0 then J.08:=(true*Down*true);
IF K.08>0 then J.09:=1,void,void,Grip:=1,Cycle:=0;
IF K.09>0 then J.10:=(true*true*Closed);
IF K.10>0 then J.11:=1,void,Vert:=1,void;
IF K.11>0 then J.12:=(true*Up*true);
IF K.12>0 then J.13:=1,Horiz:=1,void,void;
IF K.13>0 then J.14:=(Placed*true*true);
IF K.14>0 then J.15:=1,void,Vert:=1,void;
IF K.15>0 then J.00=(true*Down*true);
Stepper
If Free*Jump>0 then Kase:=Jump;
If End>0 then Kase:=0,Home:=0,Cycle:=0; Footer
γδέε.Place(Horiz,I_Pl*~I_Pk,dTpl,Eμ,Rst,&O_Pl,&Placed,&Fault_Pl);
γδέε.Pick(~Horiz,I_Pk*~I_Pl,dTpk,Eμ,Rst,&O_Pk,&Picked,&Fault_Pk);
γδέε.Down(Vert,I_Dn*~I_Up,dTdn,Eμ,Rst,&O_Dn,&Down,&Fault_Dn);
γδέε.Up(~Vert,I_Up*~I_Dn,dTup,Eμ,Rst,&O_Up,&Up,&Fault_Up);
γδέε.Close(Grip,I_Cl*~I_Op,dTcl,Eμ,Rst,&O_Cl,&Closed,&Fault_Cl);
γδέε.Open(~Grip,I_Op*~I_Cl,dTop,Eμ,Rst,&O_Op,&Opened,&Fault_Op);
γδέε
Le flag "Free" permet de passer du mode Automatique au mode Semi-Automatique; la transition d'une
séquence à la suivante n'est réalisée que lorsque le flag "Free" est actif; le mode Semi-Automatique induit que
le flag "Free" est actif durant un seul scan après chaque requête de l'opérateur.
18. Software Study : Page 18 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
4.4. Transposition de S88 par Komax
4.4.1. Entre "Physique", "Arborescence" et "Activité"
Modèle
procédural
Komax
+
–
Site "Rockford"
Site "La-Chaux-de-Fonds"
+
–
Site "Rockford"
Site "La-Chaux-de-Fonds"
–
+ Machine Y1
Machine Y2
encapsulés dans les stations
encapsulés dans les stations
+ Station Y2.00
Station Y2.01
–
Station Y2.02
• Prog Tags
• Logic
–
Unité(s)
Zone
Cellule(s)
Equipements
Modules
Modèle
physique
Site(s)
Entreprise
Arborescence
procédurale
Komax
–
Zone X
Zone Y
+
–
Zone X
Zone Y
+
Sstation Y2.010
Sstation Y2.011
+
+
▼ ▼ ▲ ▲ ▼ ▼ ▲ ▲
... γδέε ...
▼ ▼ ▲ ▲ ▼ ▼ ▲ ▲
▼ ▲
▼ ▲
▼ ▲
▼ ▲
Sous-Stations
▼ ▲
▼ ▲
▼ ▲ ▼ ▲
Stations
▼ ▲ ▼ ▲
▼ ▲
▼ ▲
Machine
▼ ▲
▼ ▲
Modèle
d’activité
Komax
Planification
Ordonnancement
de
la
Production
Gestion
des
Recettes
Gestion
des
Informations
Semi-Auto
Automatique
Eμulation
Manuel
du général au spécifique
du
général
au
spécifique
du
général
au
spécifique
...
4.4.2. Entre "Spécifications", "Qualifications" et "Etats"
Modèle de
Spécification
Modèle
procédural
Komax
Modèle de
Qualification
Exploitation
Maintenance
User Requirements
Specification
▼ ▼ ▲ ▲ ▼ ▼ ▲ ▲
... γδέε ...
▼ ▼ ▲ ▲ ▼ ▼ ▲ ▲
▼ ▲
▼ ▲
▼ ▲
▼ ▲
Sous-Stations
▼ ▲
▼ ▲
▼ ▲ ▼ ▲
Stations
▼ ▲ ▼ ▲
▼ ▲
▼ ▲
Machine
▼ ▲
▼ ▲
Recette
▼ ▼ ▲ ▲ ▼ ▼ ▲ ▲
... γδέε ...
▼ ▼ ▲ ▲ ▼ ▼ ▲ ▲
▼ ▲
▼ ▲
▼ ▲
▼ ▲
Sous-Stations
▼ ▲
▼ ▲
▼ ▲ ▼ ▲
Stations
▼ ▲ ▼ ▲
▼ ▲
▼ ▲
Machine
▼ ▲
▼ ▲
Recette
Site(s)
Entreprise
Detailed
Specification
Functional
Specification
General
Specification
Integration
Qualification
Operational
Qualification
Performance
Qualification
"Design"
Qualification
Diagrammes
d'états
Komax
_Reset
_Home
_Cycle
_Abort
_Done
_End
_E.Off
_E.On
_X.Yes
_F.Dis
_F.En
_X.No
Manual
OFF
Homing
Abort
Idle/Stop
Hold
ON
Restart
Running
d
u
g
é
n
é
r
a
l
a
u
s
p
é
c
if
iq
u
e
d
u
g
é
n
é
r
a
l
a
u
s
p
é
c
if
iq
u
e
Modèle
d'activité
Komax
...
19. Software Study : Page 19 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
5. CONCLUSIONS
5.1. Paradigme
5.1.1. Outil de modélisation
Le paradigme induit propose de lier visuellement la modélisation structurelle (diagramme d'objets) et la
modélisation séquentielle (diagramme d'interactions et/ou diagramme d'activités) dans un seul et même fichier.
Avec MS-Excel, le premier onglet décompose une machine en stations alors que les suivants décomposent
chaque station en modules élémentaires; finalement les 2 derniers onglets récapitulent tous les tags relatifs aux
modules élémentaires déclarés au sein des onglets précédents.
20. Software Study : Page 20 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
5.1.2. Modèles de base
• Machine
_J.11
Home.Yes End 300
End.No _J.12
Start.On _J.13
Start.Yes _J.14 2000
Cycle.On Cycle.On Cycle.On _J.15
Done,Yes End.Yes End.Yes _J.16 2650
_J.17
End.Yes Stop.No Mty.No _J.14 330
End.Yes Stop.Yes End
End.Yes Mty.Yes End
S_10.Q=1 S_11.Q=1 S_12.Q=1 _J.14.Yes , Yes, No
End.Yes End.Yes End.Yes End.Yes _J.14.Yes , Yes, No
_F.No _F.No _F.No , Yes, No 2980
Qualif Qualif
End.Yes End.Yes End.Yes End.Yes
_K.10 Home.On
_K.11 End.Yes
End.Yes
_K.12
_K.13
_K.14 Cycle.On Cycle.On Cycle.On Cycle.On
_K.15 Done,Yes End.Yes Done,Yes End.Yes
_K.16 Cycle.On
_K.17 End.Yes End.Yes End.Yes
End.Yes End.Yes End.Yes
End.Yes End.Yes End.Yes
Mty.IIF S_01.Q=1 S_02.Q=1 S_03.Q=1 S_04.Q=1
QShift.IIF End.Yes End.Yes End.Yes End.Yes
Okay.IIF _F.No _F.No _F.No _F.No _F.No
Q_?? Qualif Qualif Qualif Qualif Qualif
Date 09-09-02
Made Komax
by SW
Version V9902
11 12 99 Reset _K.00
Store Scrap Clean Operator Home _K.06
Good Bad Nest Interface Cycle _K.12
2900 2650 2200 2000 Request Jump
Power.On _J.01
Power.Yes _J.02 2000
Reset.On Reset.On Reset.On _J.03
End.Yes End.Yes End.Yes _J.04 2980
_J.05
Reset.Yes End 300
End.No _J.06
Home.On _J.07
Table rotative asynchrone avec 12 stations; charge un "Body", ajoute un "Spare", assemble les deux, les retourne,
étale la colle, sèche l'ensemble, visionne le résultat, rejette ou palettise les pièces et enfin nettoie.
"Double-click" OR "Ctrl+Shift+D" -> Jump to selected item "Ctrl+Shift+U" -> Update All "Ctrl+Shift+Z" -> Update current sheet
Ma## Y2
komax
Jaηuς
dT#### 2960
St## 00 01 02 03
Base Body Body Item
Fibro Load Check Feed
dT#### 300 2800 1450 2800
_K.00
_K.01
_K.02 Reset.On Reset.On Reset.On Reset.On
_K.03 End.Yes End.Yes End.Yes End.Yes
_K.04 Reset.On
_K.05 End.Yes
End.Yes
_K.06
Station
Machine
Table rotative asynchrone avec 12 stations; charge un "Body", ajoute un "Spare", assemble les deux, les retourne,
étale la colle, sèche l'ensemble, visionne le résultat, rejette ou palettise les pièces et enfin nettoie.
"Double-click" OR "Ctrl+Shift+D" -> Jump to selected item "Ctrl+Shift+U" -> Update All "Ctrl+Shift+Z" -> Update current sheet
Intitulé Machine
Intitulé Station
Durée Station
Etape
Transition
Durée
Cumulée
Durée
Retenue
Durée
Indicative
Requête Station
Réponse Station
Transition
Suivante
Etape
Suivante
Déclarations
globales
Opérations conditionnelles
Conditions
de comptage
Colonne dédiée
Station #2
Liste des
Requêtes
Réponses Machine
Etape Finale
...
• Station
St## 02 Date 09-09-02
Body Made Komax
Check by SW
dT#### 1450 Version V9902
Yd## 01 02 03 04 05 Reset _K.00
Vert Vert Check Check Check Home _K.00
Up Down ProbeX ProbeY ProbeZ Cycle _K.04
dT#### 400 400 250 250 400 Request Jump
_K.00 _E.Off _E.Off _E.Off _J.01
_K.01 _X.No _X.No _X.No _J.02 400
_K.02 _E.On _E.Off _J.03
_K.03 _X.Yes _X.No Cycle.No End 400
_B.No End
_Q<02 End
End.No _J.04
_K.04 _E.Off _E.On _E.On _J.05
_K.05 _X.No _X.Yes _J.06 400
_K.06 _E.On _E.On Cycle.Off _J.07
_K.07 Done.Yes Done.Yes Done.Yes _J.00 250
_Q.IIF _X.Yes _X.Yes _X.Yes _J.00.Yes, +=1, +=0
Okay.IIF _F.No _F.No _F.No _F.No _F.No , Yes, No 1450
B_20 DryCycle DryCycle DryCycle
B_22 Bypass
B_23 Bypass
B_24 Bypass
V_11 Measure
V_12 Measure
V_13 Measure
Contrôle 3D des "Body" chargés
Station
Ydέε
Intitulé Station
Intitulé Module
Durée Module
Etape
Transition
Requête Module
Réponse Module
Déclarations
globales
Conditions
de comptage
Colonne dédiée Module #3
Durée Etape
- Transition
Durée
Cumulée
Transition Suivante
Etape Suivante
Opérations
conditionnelles
Bit Enable Module #5
Liste des Requêtes
Valeur mesurée Module #5
Etape Finale
Réponses Station
...
21. Software Study : Page 21 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
99.03 10 OperatorInterface Cycle_On YDEEb OperatorInterface, Cycle On F 05.16 Not ON F 05.17 Still ON O_99.03 I_99.03
99.04 10 OperatorInterface Stop_On YDEEb OperatorInterface, Stop On F 05.18 Not ON F 05.19 Still ON O_99.04 I_99.04
99.05 1970 OperatorInterface Buzzer_On YDEEb OperatorInterface, Buzzer On F 05.20 Not ON F 05.21 Still ON O_99.05 I_99.05
99.06 500 OperatorInterface Lamp_Red YDEEb OperatorInterface, Lamp Red F 05.22 Not ON F 05.23 Still ON O_99.06 I_99.06
99.07 500 OperatorInterface Lamp_Orange YDEEb OperatorInterface, Lamp Orange F 05.24 Not ON F 05.25 Still ON O_99.07 I_99.07
99.08 500 OperatorInterface Lamp_Green YDEEb OperatorInterface, Lamp Green F 05.26 Not ON F 05.27 Still ON O_99.08 I_99.08
99.09 500 OperatorInterface Lamp_Blue YDEEb OperatorInterface, Lamp Blue F 05.28 Not ON F 05.29 Still ON O_99.09 I_99.09
07.01 20 GlueDispense Robot_Mapper YDEEb GlueDispense, Robot Mapper F 03.08 Not ON F 03.09 Still ON O_07.01 I_07.01
07.02 1050 GlueDispense Robot_AxeX YDEEb GlueDispense, Robot AxeX F 03.10 Not ON F 03.11 Still ON O_07.02 I_07.02
07.03 1050 GlueDispense Robot_AxeY YDEEb GlueDispense, Robot AxeY F 03.12 Not ON F 03.13 Still ON O_07.03 I_07.03
07.04 300 GlueDispense Robot_AxeZ YDEEb GlueDispense, Robot AxeZ F 03.14 Not ON F 03.15 Still ON O_07.04 I_07.04
07.05 200 GlueDispense Disp_Glue YDEEb GlueDispense, Disp Glue F 03.16 Not ON F 03.17 Still ON O_07.05 I_07.05
07.06 300 GlueDispense Disp_Purge YDEEb GlueDispense, Disp Purge F 03.18 Not ON F 03.19 Still ON O_07.06 I_07.06
08.01 1000 GlueUVDry UV_Reset YDEEb GlueUVDry, UV Reset F 03.20 Not ON F 03.21 Still ON O_08.01 I_08.01
08.02 20000 GlueUVDry UV_Light YDEEb GlueUVDry, UV Light F 03.22 Not ON F 03.23 Still ON O_08.02 I_08.02
08.03 2200 GlueUVDry Curing_Time YDEEb GlueUVDry, Curing Time F 03.24 Not ON F 03.25 Still ON O_08.03 I_08.03
08.04 390 GlueUVDry Shutter_Toggle YDEEb GlueUVDry, Shutter Toggle F 03.26 Not ON F 03.27 Still ON O_08.04 I_08.04
09.01 400 VisionCheck Vert_Up YDEEb VisionCheck, Vert Up F 03.28 Not ON F 03.29 Still ON O_09.01 I_09.01
Ma## Y2 Date 09-09-02
komax Made Komax
Jaηuς by SW
dT#### 2960 Version V9902
Fault Hold Fault Hold
Msg Warn Msg Warn
Yd##.## dT#### Station Ydέε Type Comment Msg.En Msg.Dis Output Input
00.00 100 BaseFibro Doors_Unlock YDEEb BaseFibro, Doors Unlock F 00.10 Not ON F 00.11 Still ON O_00.00 I_00.00
00.01 100 BaseFibro Doors_Lock YDEEb BaseFibro, Doors Lock F 00.12 Not ON F 00.13 Still ON O_00.01 I_00.01
00.02 10 BaseFibro Fibro_Secu YDEEb BaseFibro, Fibro Secu F 00.14 Not ON F 00.15 Still ON O_00.02 I_00.02
00.03 60 BaseFibro Fibro_Accel YDEEb BaseFibro, Fibro Accel F 00.16 Not ON F 00.17 Still ON O_00.03 I_00.03
00.04 130 BaseFibro Fibro_Cruise YDEEb BaseFibro, Fibro Cruise F 00.18 Not ON F 00.19 Still ON O_00.04 I_00.04
00.05 100 BaseFibro Fibro_Index YDEEb BaseFibro, Fibro Index F 00.20 Not ON F 00.21 Still ON O_00.05 I_00.05
00.06 10 BaseFibro Nest_Shifter YDEEb BaseFibro, Nest Shifter F 00.22 Not ON F 00.23 Still ON O_00.06 I_00.06
D/F/H/M/W ##.## D/F/H/M/W ##.##
Machine Y d έ ε s D a t a C o l l e c t i o n
Defect Defect
ID Intitulé
Durée
Type d'Ydée
Message Nbr
Message sur
désactivation
Sortie
Entrée
Commentaire
Message Nbr
Message sur
activation Type de
message
Station
5.1.3. Déclarations
• Synthèses des modules
L'onglet "Ydées" liste tous les éléments associés aux modules déclarés dans les onglets "station" qui ont été
eux-mêmes préalablement déclarées dans l'onglet "machine".
• Synthèse des données globales
V_27 10.02 StoreGood Gantry_AxeX_Position_V DINT StoreGood, Gantry AxeX Position Values 0 -99999 999999
V_28 10.03 StoreGood Gantry_AxeY_Position_V DINT StoreGood, Gantry AxeY Position Values 0 -99999 999999
V_29 10.04 StoreGood Gantry_AxeZ_Position_V DINT StoreGood, Gantry AxeZ Position Values 0 -99999 999999
V_30 10.01 StoreGood Gantry_Mapper_Index_V DINT StoreGood, Gantry Mapper Index Values 0 -99999 999999
V_31 12.03 CleanNest Clean_Blow_Remain_V DINT CleanNest, Clean Blow Remain Values 0 -99999 999999
V_32 12.04 CleanNest Clean_Vacuum_Remain_V DINT CleanNest, Clean Vacuum Remain Values 0 -99999 999999
V_33 12.05 CleanNest Clean_Blast_Remain_V DINT CleanNest, Clean Blast Remain Values 0 -99999 999999
P_28 10.03 StoreGood Gantry_AxeY_Pallet_P DINT StoreGood, Gantry AxeY Pallet Parameters 0 -99999 999999
P_29 10.04 StoreGood Gantry_AxeZ_Pallet_P DINT StoreGood, Gantry AxeZ Pallet Parameters 0 -99999 999999
P_31 12.03 CleanNest Clean_Blow_Preset_P DINT CleanNest, Clean Blow Preset Parameters 0 -99999 999999
P_32 12.04 CleanNest Clean_Vacuum_Preset_P DINT CleanNest, Clean Vacuum Preset Parameters 0 -99999 999999
P_33 12.05 CleanNest Clean_Blast_Preset_P DINT CleanNest, Clean Blast Preset Parameters 0 -99999 999999
S_00 00.__ BaseFibro _Z ZTAG BaseFibro, Ztations 0 0 255
S_01 01.__ BodyLoad _Z ZTAG BodyLoad, Ztations 0 0 255
S_02 02.__ BodyCheck _Z ZTAG BodyCheck, Ztations 0 0 255
S_03 03.__ ItemFeed _Z ZTAG ItemFeed, Ztations 0 0 255
S_04 04.__ ItemCheck _Z ZTAG ItemCheck, Ztations 0 0 255
S_05 05.__ ItemStamp _Z ZTAG ItemStamp, Ztations 0 0 255
Ma## Y2 Date 09-09-02
komax Made Komax
Jaηuς by SW
dT#### 2960 Version V9902
Zt## Yd##.## Station Name Type Comment File Nominal Min Max
A_01 00.06 BaseFibro Nest_Shifter_Missed01_A DINT BaseFibro, Nest Shifter Missed01 Aborts 0 0 999999
A_02 00.06 BaseFibro Nest_Shifter_Missed02_A DINT BaseFibro, Nest Shifter Missed02 Aborts 0 0 999999
A_03 00.06 BaseFibro Nest_Shifter_Missed03_A DINT BaseFibro, Nest Shifter Missed03 Aborts 0 0 999999
A_04 00.06 BaseFibro Nest_Shifter_Missed04_A DINT BaseFibro, Nest Shifter Missed04 Aborts 0 0 999999
A_05 00.06 BaseFibro Nest_Shifter_Missed05_A DINT BaseFibro, Nest Shifter Missed05 Aborts 0 0 999999
A_06 00.06 BaseFibro Nest_Shifter_Missed06_A DINT BaseFibro, Nest Shifter Missed06 Aborts 0 0 999999
A_07 00.06 BaseFibro Nest_Shifter_Missed07_A DINT BaseFibro, Nest Shifter Missed07 Aborts 0 0 999999
Machine T h e T a g s C o l l e c t i o n
Tag ID Commentaire
Type Caractéristiques
Intitulé
Station Fichier
L'onglet "Ztags" liste toutes les déclarations globales effectuées tant dans l'onglet "machine" que dans les
onglets "station"; ces données globales peuvent être des compteurs (Cycles, Aborts), des flags binaires
(Beable), des registres de qualité (Good), des registres fonctionnels (Entries, Request et Xtatus).
22. Software Study : Page 22 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
5.2. Synthèse
5.2.1. Fondamentaux de l'automation
Le choix d'une architecture standard induit une approche simple, émulable, accessible, rapide et
temporellement défini, surtout grâce à la plus grande compatibilité avec les fournisseurs de matériels qui
finissent toujours par adopter les normes.
Simple
Mise-au-point
accélérées
Accessible Rapide
Programmes
concis
Debugs
anticipés
éMulable
Architecture Standard
S.M.A.R.T.
Performance Sécurité
Coûts
Temporellement
défini
La simplicité, l'émulabilité et l'accessibilité réduisent les coûts en raccourcissant les programmes, en anticipant
les debugs et en accélérant les mise-au-point. La rapidité améliore les performances mécatroniques et la
maîtrise temporelle de chaque module élémentaire fait progresser la sécurité.
5.2.2. Gains prédictibles
Emulation
Conception
-10%
Développement
Structure & Codage
Intégration
Config. & M-E-S
Conception
Analyse & Modélisation
Conception Développement Intégration
IEC
61512
IEC 61512
émulé
-20%
Développement
100%
Validation
Test & M-A-P
Validation
Réalisation
Validation
Un projet d'automation se divise en 4 étapes, la conception, le développement, l'intégration et la validation. Une
architecture standard caractérisée par la simplicité, l'émulabilité, l'accessibilité, la rapidité et le "time-bound"
permet de réduire les durées de développement, d'intégration et de validation surtout du fait de programmes
plus concis; un gain de temps de 10% est prévisible.
Pour aller plus loin en matiére de réduction du "time to market", il faut disposer d'une architecture émulable
afin de permettre un "chevauchement" des 3 dernières étapes du processus d'automation: ce moyen
supplémentaire apporte un gain de temps de 10% supplémentaire.
23. Software Study : Page 23 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
5.2.3. Perspectives
L'usage des modules élémentaires autonomes entre les séquenceurs et les entrées-sorties physiques rend
l'automatisation flexible et émulable. Les séquenceurs, et par conséquent les processus, peuvent être évalués
et même pré-validés sans les éléments physiques. Une modification de processus n'implique qu'un changement
de numérotation de séquence; il n'est plus nécessaire de se préoccuper de la sortie, de l'entrée ou de la faute
en relation avec telle ou telle séquence. La couche d'abstraction matérialisée par les modules élémentaires
simplifie, flexibilise et émule l'automation.
Un "Time to Market" réduit de 20% grâce au code-machine SMART"
Simple, éMulable, Accessible, Rapide et Temporellement défini
Only One Network
for HMI-SCADA
Only One Fieldbus
for Physical Items
Always the same
HMI-SCADA
Always the same
Physical devices
"1 seul HMI, 1 seul fieldbus, 3 Automates conformes !".
24. Software Study : Page 24 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
6. Annexes
6.1. Lexique
Automation "Industrielle", c'est l'art d'utiliser les machines afin de réduire la charge de travail du
travailleur tout en préservant la productivité et la qualité. Elle fait appel à des systèmes
électroniques qui englobent toute la hiérarchie de contrôle-commande depuis les capteurs
de mesure, en passant par les automates, les bus de communication, la visualisation,
l’archivage jusqu’à la gestion de production et des ressources de l’entreprise.
Autonome Qui se suffit à lui-même, dans le sens que l'entité peut prendre seule ses propres décisions
Comportement Pour tout type de systèmes, c'est la partie de son activité qui se manifeste à un
observateur. Le comportement peut être décrit comme l'ensemble des actions et réactions
(mouvements, modifications, messages, etc.) du système observé dans une situation
donnée.
Couche
d'abstraction
La couche d'abstraction matérielle (Hardware Abstraction Layer ou HAL) est un utilitaire
logiciel qui traque les périphériques du système informatique. Le but du HAL est d'éviter
aux développeurs d'implémenter manuellement le code spécifique à un périphérique. À la
place, ils peuvent utiliser une couche connectable qui fournit des informations à propos du
dit périphérique.
Cette couche implémente un certain nombre de fonctions spécifiques au matériel :
interfaces d'entrées-sorties, contrôleur d'interruptions, caches matériels, mécanismes de
communication multiprocesseur... Elle isole ainsi le noyau du système des spécificités des
plates-formes matérielles.
Les systèmes d'exploitation disposant du HAL (notamment : BSD, Linux et Windows NT)
ont une portabilité simplifiée à travers différents types de matériels tels que les systèmes
embarqués, ou encore les serveurs disposant de différentes architectures propres à leur
fonctionnement : Intel x86, DEC Alpha, MIPS, PowerPC, etc...
Diagramme de
séquences
A ne pas confondre avce le "tableau de séquences" !
Il s'agit de la représentation graphique des interactions entre les éléments d'un système
selon un ordre chronologique dans la formulation Unified Modeling Language. On montre
ces interactions dans le cadre d'un scénario d'un Diagramme des cas d'utilisation. Le but
étant de décrire comment se déroulent les actions entre les acteurs ou objets.
Diagramme
temporel (Gantt)
Dans un diagramme temporel (ou de Gantt), on représente en abscisse les unités de
temps et en ordonnée les différentes tâches. La durée d'éxécution d'une tâche est
matérialisée par une barre horizontale. Il est également fréquent de matérialiser par des
flèches, les liens de dépendance entre les tâches (la flèche relie la tâche précédente à la
tâche suivante). Dans la pratique, le diagramme de base est souvent complété en ligne par
la liste des ressources affectées à chacune des tâches ainsi que par divers indicateurs,
fonction de la charge ou du délai, permettant d'en suivre l'avancement.
Dynamiquement Un système dynamique est un système qui évolue au cours du temps de façon à la fois
causale (i.e. son avenir ne dépend que de phénomènes du passé ou du présent) et à la
fois déterministe (i.e. une "condition initiale" donnée à l'instant "présent" va correspondre à
chaque instant ultérieur à un et un seul état "futur" possible).
Elémentaire Qui ne contient que les notions premières ou essentielles (ex: particules élémentaires).
Elément
Procédural
c'est le déroulement d'un processus; en informatique, une procédure est aussi appelée
routine ou sous-routine; selon la norme ANSI/ISA88, en informatique industrielle, on
nomme procédure toute routine associée aux éléments issus du modèle physique dont le
fonctionnement requiert une mise en séquence.
Emuler Chercher à imiter; il faut voir dans l'émulation une imitation du comportement physique d'un
matériel par un logiciel et ne pas la confondre avec la simulation, laquelle vise à imiter un
modèle abstrait. L'émulateur reproduit le comportement d'un modèle dont toutes les
variables sont connues, alors que le simulateur tente de reproduire un modèle mais en
devant extrapoler une partie des variables qui lui sont inconnues. Le recours à un
émulateur, selon le contexte, permet de faciliter le développement ou le débogage d'un
système ou de remplacer un système obsolète ou inutilisable par un autre. Dans ce cadre,
il est possible de faire fonctionner le nouveau système, l'émulateur, de la même manière
que le système imité.
Encapsuler C'est mettre une chose dans une autre; en programmation, c'est une manière de masquer
l'information.
25. Software Study : Page 25 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
Entrées-Sorties Dans un système à base de processeur, de microprocesseur, de microcontrôleur ou
d'automate, on appelle Entrées-Sorties les échanges d'informations entre ce "cœur" et les
périphériques qui lui sont associés. De la sorte, le système peut réagir à des modifications
de son environnement, voire le contrôler. Elles sont parfois désignées par l'acronyme I/O,
issu de l'anglais Input/Output.
Flexible En automation, ce terme est associé à la norme ANSI/ISA88; c'est une norme US
développée par l'ISA au sein du comité SP88. Elle est également publiée comme norme
internationale IEC61512 par l'IEC au sein du comité SC65A. La mission initiale du comité
ISA SP88 était de "Définir des standards et pratiques recommandés pour la conception et
la spécification des systèmes de contrôle des procédés de fabrication par lots (batch) mis
en oeuvre dans les industries de process".
Le périmètre de la norme s'est depuis étoffé dans la pratique avec la définition de modèles
de données pour l'interopérabilité entre systèmes et la structuration des données de
production ainsi que la spécification des transformations physico-chimiques du produit,
établissant le lien avec le PLM (Product Lifecycle Management).
La pratique réelle, les évolutions en cours et l'absence de standards équivalents la
positionne comme référence universelle pour la conception fonctionnelle du contrôle de
tous les procédés industriels au delà des procédés de type "batch".
Interfaçage Liaison permettant l'échange d'informations entre deux systèmes matériels ou logiciels.
Matrice de
processus
Tableau de
séquences
A ne pas confondre avec le "diagramme de séquences" !
Il s'agit en l'occurrence d'un tableau au sein duquel les colonnes représentent les requêtes
émises vers un module élémentaire suivis des états issus du même module et où les lignes
représentent la succession des étapes et des transitions permettant de synchroniser tous
les modules (i.e. les colonnes) pour réaliser un processus donné.
C'est une forme de "diagramme temporel" où l'axe temporel est disposé verticalement; de
plus les graduations de cet axe temporel ne sont pas disposées linéairement mais selon
les transitions logiques et de manière équidistante.
Mécatronique C'est la combinaison synergique et systémique de la mécanique, de l'électronique et de
l'informatique temps réel. L'intérêt de ce domaine d'ingénierie interdisciplinaire est de
concevoir des systèmes automatiques puissants et de permettre le contrôle de systèmes
complexes. L'ingénierie de tels systèmes mécatroniques nécessite la conception
simultanée et pluridisciplinaire de 3 sous-systèmes :
• la partie opérative (squelette et muscle du système à dominante Mécanique et
Electromécanique)
• la partie commande (intelligence embarquée du système à dominante Electronique et
Informatique Temps Réel),
• la partie interface Homme/Machine (forme géométrique et dialogue du système à
dominante Ergonomique et Esthétique).
L'approche globale permet de réduire les coûts, d'augmenter la fiabilité et la modularité.
Modularisation La modularité est une approche structurante qui sépare un logiciel en petites unités
appréhendables.
Mouvement C'est le déplacement d'un corps par rapport à un point fixe de l'espace et à un moment
déterminé.
Norme Une norme, du latin norma (équerre, règle) désigne un état habituellement répandu ou
moyen considéré le plus souvent comme une règle à suivre. Ce terme générique désigne
un ensemble de caractéristiques décrivant un objet, un être, qui peut être virtuel ou non.
Tout ce qui entre dans une norme est considéré comme « normal », alors que ce qui en
sort est "anormal". Ces termes peuvent sous-entendre ou non des jugements de valeur.
Les normes contrarient la liberté individuelle tout en favorisant la réduction des risques.
Tout le monde est en quête de norme car un monde sans danger est un monde sain !
Processus Il peut-être considéré comme un système organisé d'activités qui utilise des ressources
(personnel, équipement, matériels et machines, matière première et informations) pour
transformer des éléments entrants (les intrants) en éléments de sortie (les eXtrants) dont le
résultat final attendu est un produit. Enfin, le processus a un propriétaire qui est garant de
la bonne fin et du bon fonctionnement de celui-ci.
Robustesse En automation, ce terme est associé à un temps de fonctionnement sans redémarrage
"Uptime" considéré dans certains cas comme un signe de robustesse et de stabilité du
produit informatique.
26. Software Study : Page 26 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
Sécurisation Action qui vise à apporter tranquillité et confiance par un sentiment bien ou mal-fondé
d'être à l'abri de tout danger et risque; ça associe calme, confiance, quiétude, sérénité,
tranquillité, assurance et sûreté.
Séquenceur Dispositif mécanique, électrique ou électronique qui commande une suite programmée
d'opérations et d'événements.
S.M.A.R.T. SMART (intelligent en anglais) est un moyen mnémotechnique pour se souvenir des
caractéristiques que devraient idéalement avoir un objectif pour permettre sa réalisation.
Les caractéristiques sont les suivantes pour un objectif :
• Spécifique, Mesurable, Atteignable, Réaliste, Temporellement défini.
Specific, Measurable, Achievable, Realistic, Time-bound.
Les caractéristiques sont les suivantes pour un code-machine :
• Simple, éMulable, Accessible, Rapide, Temporellement défini.
Simple, siMulable, Short learning, Rapid, Time-bound.
Les caractéristiques sont les suivantes pour un indicateur :
• Significatif, Mesurable, Réalisable, avec un Responsable, Temporellement défini.
Standard Les anglophones ne possédant qu'un seul mot pour désigner les deux concepts différents
que représentent la norme et le standard, les traductions des textes anglais sont souvent
sources de confusion, le mot standard étant fréquemment utilisé dans le sens de norme,
c'est un anglicisme.
En français un standard est un procédé ou un service qui est largement répandu par une
entreprise ou un groupe d'entreprise (organisme privé). Alors qu'une norme est un procédé
ou un service qui est défini par un groupe d'entreprises ou de scientifiques (organisme
public).
• Un standard peut être ou non une norme.
• Une norme peut devenir un standard.
• Un standard peut être normalisé.
Il existe des normes obligatoires aussi bien que des normes très peu utilisées.
On peut prendre l'exemple du mètre qui est un standard européen et une norme du
Système international. Mais le mètre n'est pas le standard international puisque même si
en Europe la quasi totalité des pays l'utilisent, aux États-Unis ou en Grande-Bretagne le
mile, le pied, le pouce sont toujours utilisés.
Un produit standard n'implique pas que ses interfaces soient connues. Quand elles le sont
entièrement, on peut parler d'interopérabilité.
On parle de standard ouvert lorsque le standard possède la particularité d'une norme mais
n'a pas été défini par un organisme de normalisation. Par exemple le format Pdf créé par
Adobe Systems est clairement réglementé par des documents accessibles à tous, il est
interopérable. Créé en 1993 et devenu rapidement un standard le format Pdf a été
normalisé par l'ISO en 2008
Structurée En automation, ce terme est associé au standard IEC61131-3 pour le développement
d’applications dans l’automation industrielle; les langages de programmation suivants sont
inclus dans ce standard:
• IL (liste d’instructions), une sorte de langage assembleur
• ST (Texte structuré, inspiré par PASCAL) pour la programmation structurée
• LD (Langage ladder), en français aussi "schéma à contacts"
• FBD (Function Block Diagram), en français "boîtes fonctionnelles“.
• SFC (Sequential Function Chart), proche du langage Grafcet
Langage supplémentaire au standard IEC :
• CFC (Continuous Function Chart) semblable aux boîtes fonctionnelles mais est
particulièrement approprié pour afficher un aperçu d’une application.
Temps de
réponse
C'est la durée qui s’écoule après une variation brusque (appelée : échelon) du mesurande
(ou consigne) jusqu’à ce que la variation de la sortie du capteur ne diffère plus que de ε %
de la valeur finale
27. Software Study : Page 27 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
6.2. Keywords
6.2.1. For Tags
Key Intitulé Description Type(s) Domaine
_A Aborts Compteur d'arrêts cycle avant terme DINT Machine, Station, Nid, ...
_B Beable Behavior enable (Dry, Purge, St03, ...) BOOL / DINT Machine, Station, Ydée, ...
_C Cycles Compteur de cycles démarrés DINT Machine, Station, Nid, ...
_D Defect Défaut intolérable (message HMI Classe 1) BOOL / DINT Machine, Station, Ydée, ...
_E Entry Etat entrant dans une routine BOOL / DINT Machine, Station, Ydée, ...
_F Fault Faute indésirable (message HMI Classe 2) BOOL / DINT Machine, Station, Ydée, ...
_G Good Compteur de cycles réussis DINT Machine, Station, Nid.
_H Hold Arrêt temporaire (Suspend, ... msg HMI Classe 4) BOOL / DINT Machine, Station, ...
_I Input Etat issu de la physique machine BOOL ou DINT Ydée.
_J Jump "Jump next" pour séquenceur BOOL / DINT Machine, Station, ...
_K Kase "Select case" pour séquenceur BOOL / DINT Machine, Station, ...
_L Local Status local ou "private" BOOL / DINT Machine, Station, ...
_M Message Message utilisateur (message HMI Classe 4) BOOL / DINT Machine, Station, Ydée, ...
_N Number Valeur locale ou "private" DINT Machine, Station, ...
_O Output Status activant la physique machine BOOL ou DINT Ydée.
_P Parameter Valeur analogique entrante DINT Machine, Station, Ydée, ...
_Q Qualifier Qualif. incrémenté à chaque processus DINT Machine, Station, Nid, ...
_R Request Requête activant une routine (i.e. Fonction) BOOL / DINT Machine, Station, ...
_S String Chaîne de caractères ASCII STRING Machine, Station, Nid, …
_T Timer Valeur entrante d'un temps de réponse DINT Ydée.
_U UMan Manager Procédural Universel UMan Machine, Station, ...
_V Value Valeur analogique sortante DINT Machine, Station, Ydée, ...
_W Warn Alerte tolérable (message HMI Classe 3) BOOL / DINT Machine, Station, Ydée, ...
_X Xtatus Status issu d'une routine BOOL / DINT Machine, Station, Ydée, ...
_Y Ydée Ypsilon Dynamiquement Emulé Encapsulable YBin,YNum,YCam Ydée binaire + analogique.
_Z ZInt Zone Interface du Manager Procédurale ZInt Machine, Station, ...
6.2.2. For Logic
Owner Intitulé Description Add-ons Type
UMan .Abort Indique qu'un "Reset" a eu lieu durant un "Cycle" Boolean_Output
" .Clean Indique qu'aucun message issu de modules associés n'est actif Boolean_Output
" .Done Indique que les séquences "critiques" sont échues Boolean_Output
" .dT Temps écoulé durant la dernière activation (Home ou Cycle) Numeric_Output
" .End Indique que toutes les séquences sont terminées Boolean_Output
" .Emu Indique si un des modules associés est en mode émulé Boolean_Output
" .Free Indique "Safe" Enable "Dfect" Disable et Modes "Step" Disable ou "Next-Step" Enable Boolean_Output
" .Jump Indique qu'une transition est en cours (ne dure qu'1 scan), en relation avec UKab ou UKan Boolean_Output
" .Ran Indique quelle est la dernière requête à avoir été activée Numeric_Output
" .Rons Indique sur 1 scan quelle requête vient d'être activée Numeric_Output
" .ZInt L'interface dont le management est assurée par cet UMan ZInt_Inout
YBin .DN Dès lors que le temps de réponse est écoulé Boolean_Output
" .E Etat de commande du module (Latch / Unlatch) Boolean_Input
" .Emu Active ou non le mode émulation du module Boolean_Input
YBin .FE / .FD _FE Faute sur état Enable et _FD faute sur état Disable Boolean_Output x 2
" .Free Signifie un fonctionnement "free of fault", c-à-d sans faute Boolean_Input
" .I Etat issu de la physique machine pour renseigner le module Boolean_Input
" .Live Signifie une mise à jour de l'état de commande relatif à l'état de l'input Boolean_Input
" .O Status activant la physique machine issu du module Boolean_Output
" .PRE La valeur du temps de réponse prédéfinie du module Numeric_Input
" .RST Mise-à-zéro de(s) faute(s) et Preset du temps de réponse Boolean_Input
" .X Status issu du module (Opened / Closed) Boolean_Output
YCam .DN Dès lors que le temps de réponse est écoulé Boolean_Output
" .Ecam Structure de consigne des angles (Start, Start-Ante, Stop, Stop-Ante) Struc_Cam_Input
" .Emu Active ou non le mode émulation du module Boolean_Input
" .FE / .FD _FE Faute si consigne pas atteinte et _FD si au-delà de l'angle .Post Boolean_Output
" .Free Signifie un fonctionnement "free of fault", c-à-d sans faute Boolean_Input
" .In Angle physique machine pour renseigner le module Numeric_Input
" .Live Signifie une mise à jour de l'état de commande relatif à l'état de l'input Boolean_Input
" .On Angle physique machine issue de la consigne d'entrée Numeric_Output
" .PRE La valeur du temps de réponse prédéfinie du module Numeric_Input
" .RNG Valeur d'angle maximum possible Numeric_Input
" .RST Mise-à-zéro de(s) faute(s) et Preset du temps de réponse Boolean_Input
28. Software Study : Page 28 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
" .Slow Signifie une vitesse lente ne nécessitant aucune Antecipation Boolean_Input
" .X Status activé lorsque la position est atteinte selon tolérance Boolean_Output
" .Xn Angle courant de retour du module [0, ..., RNG] Numeric_Output
" .Xante Status activé lorsque la position précède les angles de consigne Boolean_Output
" .Xpost Status activé lorsque la position succède aux angles de consigne Boolean_Output
YNum .DN Dès lors que le temps de réponse est écoulé Boolean_Output
" .En Consigne de commande du module [MIN, ..., MAX] Numeric_Input
" .Emu Active ou non le mode émulation du module Boolean_Input
" .FE _FE Faute sur état Enable (_FD n'est pas utilisé actuellement) Boolean_Output
" .Free Signifie un fonctionnement "free of fault", c-à-d sans faute Boolean_Input
" .In Position physique machine pour renseigner le module Numeric_Input
" .Live Signifie une mise à jour de l'état de commande relatif à l'état de l'input Boolean_Input
" .MAX Position maximale de la course totale Numeric_Input
" .MIN Position minimale de la course totale Numeric_Input
" .On Position physique machine issue de la consigne d'entrée Numeric_Output
" .PRE La valeur du temps de réponse prédéfinie du module Numeric_Input
" .RST Mise-à-zéro de(s) faute(s) et Preset du temps de réponse Boolean_Input
" .Slow Signifie une vitesse lente ne nécessitant aucune Antecipation Boolean_Input
" .TOL Tolérance de positionnement (pour "lever le Xtatus") Numeric_Input
" .X Status activé lorsque la position est atteinte selon tolérance Boolean_Output
" .Xn Position courante de retour du module [MIN, ..., MAX] Numeric_Output
ZInt .E _.nn "Entries" ou Indicateurs de contrôles entrants dans l'UMan Numeric_Inout
" _.00 Safe La zone dans laquelle l'UMan évolue est saine (portes fermées) Boolean_Input
" _.01 Dfect Au moins un défaut intolérable est actif dans la zone concernée Boolean_Input
" _.02 CStop Au moins un arrêt est actif dans la zone concernée Boolean_Input
" _.03 Emulate Demande d'émulation pour les modules associés à cet UMan Boolean_Input
" _.04 TestStep "Step-by-Step Test Mode" activé pour toutes les séquences de cet UMan Boolean_Input
" _.05 CycleStep "Step-by-Step Cycle Mode" activé jusqu'au prochain pas utilisant .X:Free Boolean_Input
" _.06 NextStep "Déclic" pour activer le pas suivant du séquenceur (pour les 2 modes "Step") Boolean_Input
" _.09 CtrsReset Demande de remise-à-zéro des compteurs liés à cet UMan Boolean_Input
" .J _.nn "Jump" ou Changement de pas de séquenceur requis Numeric_Inout
" .K _.nn "Kase" ou Pas actif de séquenceur Numeric_Inout
" .R _.nn "Run Request" ou stratégie de contrôle requise par l'UMan Numeric_Inout
" _.00 Reset Requête de remise à zéro du séquenceur et des modules liés Boolean_Input
" _.01 Home Requête de séquences de mise au repos mécanique Boolean_Input
" _.02 Cycle Requête de séquences de mise en oeuvre du processus Boolean_Input
" .X _.nn "Xtatus" ou Indicateurs extrants issus de l'UMan Numeric_Inout
" _.00 Clean Indique qu'aucun message issu de modules associés n'est actif Boolean_Output
" _.01 Done Indique que les séquences "critiques" sont échues Boolean_Output
" _.02 End Indique que toutes les séquences sont terminées Boolean_Output
" _.04 Jump Indique une transition en cours (scan unique), en relation avec UKab ou UKan Boolean_Output
" _.06 Free Indique des Modes "Step" Disable ou un "Next-Step" Enable Boolean_Output
" _.07 Abort Indique que le cycle n'a pas pu se terminer (valable sur 1 scan) Boolean_Output
" _.08 Cycle Indique que le cycle a vraiment commencé (valable sur 1 scan) Boolean_Output
" _.09 Qualif Indique que le cycle s'est qualifié, fini correctement (valable sur 1 scan) Boolean_Output
Z0_Zint _.30 ResetBut Indique une transition du "reset", portes fermées et issu du manager de zone Boolean_Output
" _.31 IODebug Indique qu'un skip d'Ypsilons élémentaires est requis par le manager de zone Boolean_Output
Counters Aborts Compteur mémorisant le nombre de cycles abandonnés Numeric_In-out
" Cycles Compteur mémorisant le nombre de cycles débutés Numeric_In-out
" Goods Compteur mémorisant le nombre de cycles gagnants Numeric_In-out
" Qualif Identifiant de la dernière station ayant qualifié le produit Numeric_In-out
29. Software Study : Page 29 / 32
Version : Janv. 2010
Project : X-YYYY-ZZZZZ
Customer : S/W Dpt.
Equipment : Automatisé avec du matériel Rockwell Phase : Etude
File: R&D-SW§T-ydée.doc Révision: 0.9
6.3. Synthèse UML
6.3.1. Diagramme de classes
• Classes spécialisées et classes de base
interface
Zone Interface ZInt
Univ. Manager UMan
YDEE YBin
YDEE YNum
classe de base
classe de base
classe de base
YDEE YCam
classe de base
Module numeric
spécialisation
Module binaric
spécialisation
Module cameric
spécialisation
Machine
spécialisation
1...∗
0...∗
1...∗
Station
0...∗
spécialisation
0...∗
0...∗
0...1
Univ. Counter UCTR
classe de base
Nest Counter UNST
classe de base
1...∗
• Classes de base et interfaces
UMan Manager
ZInt Emulate
Clean
Jump
Done
Abort
Free
End
Rons
Ran
dT
YBin Binaric
Entry Xtatus
Reset Faults
dTime Done
Input Output
Free Live
Emu.
YCam Cameric
Entry Xtatus
Reset Faults
dTime Done
Input Output
Free Live
Emu. Slow
Range
Anticipate
Posticipate
UNst - UCtr
Abortons Aborts[ ]
Cycleons Cycles[ ]
Qualifons Goods[ ]
Resetons Reset[ ]
Station
Offset
Index (UNst only)
Modulo (UNst only)
YNum Numeric
Entry Xtatus
Reset Faults
dTime Done
Input Output
Free Live
Emu. Slow
Min
Max
Tolerance
_Requests
Reset
Home
Cycle
Free
...
_Entries
Safe
Dfect
CStop
Emulate
TestStep
CycleStep
NextStep
CtrsReset
...
_Jmpteps _Kasteps
ZInt Interface
Request
Entries
Xtatus
Jmpteps
Kasteps
...
_Xtatus
Clean
Done
End
Abortons
Cycleons
Qualifons
...
_Qualif.
_Goods
_Cycles
_Aborts
interface
classe de base classe de base
classe de base
classe de base
classe de base