§T-ydée

246 vues

Publié le

0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
246
Sur SlideShare
0
Issues des intégrations
0
Intégrations
12
Actions
Partages
0
Téléchargements
4
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

§T-ydée

  1. 1. File: R&D-SW§T-ydée.doc Révision: 0.9 Les objectifs S.M.A.R.T. de la norme S88 Computer Crash Test Emulation (www.kinetics.co.nz)
  2. 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. 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. 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. 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. 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). AB 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. 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. 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 delaProduction Gestion desRecettes Gestiondes 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. 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 t2dT 0 1 t1 t2dT 0 1 t1 t2dT 0 1 t1 t2dT 0 1 t1 t2dT Acc Dec 0 1 t1 t2dT Acc Dec
  10. 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 InputEmulateDone Reset Entry Fault Xtatus Reset Output Input EmulatedT.DN UU Fault LL TON dT TON dT FaultdT.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 InputEmulateDone 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. 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 t2dT 0 1 t1 t2dT 0 1 t1 t2dT 0 1 t1 t2dT 0 1 t1 t2dT Acc Dec 0 1 t1 t2dT Acc Dec
  12. 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 %InputEmulateDone Ë dT %Entry & %XtatusReset &╖ ╙ &╖ ╙ %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 FaultReset UU LL 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. 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. 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 ( )( ) PickHoriz. [ / ][ / ] [ ][ ] Vert. ( )( ) Down ( )( ) UpVert. [ / ][ / ] [ ][ ] Grip ( )( ) Close ( )( ) OpenGrip 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 . . NextMode"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 . . NextMode"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 . . NextMode"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 . . NextMode"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
  15. 15. Software Study : Page 15 / 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.2.3. Tableau des séquences Le tableau ci-dessous tend à respecter IEC-61512 en présentant les étapes ("Kase paires"), les transitions ("Kase impaires"), les ressources ("Horizontal", "Vertical" + "Gripper") et les stratégies ("Request"). J.01 J.02 J.03 J.04 J.05 End J.06 J.07 J.08 J.09 J.10 J.11 J.12 J.13 J.14 J.15 J.00 [nop] [nop] [nop] [nop] Done.On Cycle.No End.No Done.Off [nop] Cycle.Off [nop] [nop] [nop] [nop] [nop] [nop] [nop] Open.On Open.Yes [nop] [nop] [nop] [nop] [nop] [nop] Grip.On Grip.Yes [nop] [nop] [nop] [nop] [nop] [nop] [nop] [nop] Up.On Up.Yes [nop] [nop] Down.On Down.Yes [nop] [nop] Up.On Up.Yes [nop] [nop] Down.On Down.Yes [nop] [nop] [nop] [nop] Pick.On Pick.Yes [nop] [nop] [nop] [nop] [nop] [nop] Place.On Place.Yes [nop] [nop] K.00 K.01 K.02 K.03 K.04 K.05 K.06 K.07 K.08 K.09 K.10 K.11 K.12 K.13 K.14 K.15 JumpRequest"Gripper""Vertical""Horizontal"Kase J.01 J.02 J.03 J.04 J.05 End J.06 J.07 J.08 J.09 J.10 J.11 J.12 J.13 J.14 J.15 J.00 [nop] [nop] [nop] [nop] Done.On Cycle.No End.No Done.Off [nop] Cycle.Off [nop] [nop] [nop] [nop] [nop] [nop] [nop] Open.On Open.Yes [nop] [nop] [nop] [nop] [nop] [nop] Grip.On Grip.Yes [nop] [nop] [nop] [nop] [nop] [nop] [nop] [nop] Up.On Up.Yes [nop] [nop] Down.On Down.Yes [nop] [nop] Up.On Up.Yes [nop] [nop] Down.On Down.Yes [nop] [nop] [nop] [nop] Pick.On Pick.Yes [nop] [nop] [nop] [nop] [nop] [nop] Place.On Place.Yes [nop] [nop] K.00 K.01 K.02 K.03 K.04 K.05 K.06 K.07 K.08 K.09 K.10 K.11 K.12 K.13 K.14 K.15 JumpRequest"Gripper""Vertical""Horizontal"Kase 4.3. Codage d'une station 4.3.1. Séquences en code ladder JumpRequest"Gripper""Vertical""Horizontal"Kase JumpRequest"Gripper""Vertical""Horizontal"Kase Grip [ ][ ] (U)(U)[nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] (U)(U) [ ][ ] (U)(U) [ ][ ] (L)(L) [ ][ ] (L)(L) [ ][ ] (U)(U) [ ][ ] (L)(L) [ ][ ] (L)(L) [ ][ ] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] (U)(U) [nop][nop] [nop][nop] [nop][nop] [nop][nop] (L)(L) [/][/] (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) Grip Vert. Vert. Vert. Vert. Horiz. Horiz. Opened Closed Up Down Up Down Placed Picked [nop][nop] (U)(U) Cycle Done Done End J.01 J.02 J.03 J.05 J.07 J.09 J.11 J.13 J.15 J.04 End J.06 J.08 J.10 J.12 J.14 J.00 K.00 K.02 K.04 K.06 K.08 K.10 K.12 K.14 K.01 K.03 K.05 K.07 K.09 K.11 K.13 K.15 [/][/] Cycle [nop][nop] Une analogie entre le document du "Tableau des séquences" et le "Ladder des séquences" induit quelques compromis de part et d'autre.
  16. 16. Software Study : Page 16 / 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.2. Séquences en ladder détaillé [ ][ ] [ ][ ] (U)(U)(L)(L) K.00End [ ][ ] Home Cycle End Jump CLR HeaderStepperFooter (U)(U) Home Cycle (U)(U)Kase CLR Grip [ ][ ] (U)(U)[nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] [ ][ ] (U)(U) [ ][ ] (U)(U) [ ][ ] (L)(L) [ ][ ] (L)(L) [ ][ ] (U)(U) [ ][ ] (L)(L) [ ][ ] (L)(L) [ ][ ] [nop][nop] [nop][nop] [nop][nop] [nop][nop] [nop][nop] (U)(U) [nop][nop] [nop][nop] [nop][nop] [nop][nop] (L)(L) [/][/] (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) (L)(L) Grip Vert. Vert. Vert. Vert. Horiz. Horiz. Opened Closed Up Down Up Down Placed Picked [nop][nop] (U)(U) Cycle Done Done End J.01 J.02 J.03 J.05 J.07 J.09 J.11 J.13 J.15 J.04 End J.06 J.08 J.10 J.12 J.14 J.00 K.00 K.02 K.04 K.06 K.08 K.10 K.12 K.14 K.01 K.03 K.05 K.07 K.09 K.11 K.13 K.15 [/][/] Cycle Jump 00 NEQ Jump Kase MOV (L)(L) K.03 [ ][ ] End [ ][ ] Free [ ][ ] Free [nop][nop] [nop][nop] Horizontal [ / ][ / ] Grip [ ][ ] I_Op [ ][ ] Reset [ ][ ] Grip [ ][ ] I_Cl [ ][ ] Reset ( )( ) O_Op ( )( ) O_Cl [ / ][ / ] Horiz. [ ][ ] I_Pk [ ][ ] Reset [ ][ ] Horiz. [ ][ ] I_Pl [ ][ ] Reset ( )( ) O_Pk ( )( ) O_Pl [ / ][ / ] Vert. [ ][ ] I_Up [ ][ ] Reset [ ][ ] Vert. [ ][ ] I_Dn [ ][ ] Reset ( )( ) O_Up ( )( ) O Dn VerticalGripper [ / ][ / ] I_Pk [ / ][ / ] I_Pl [ / ][ / ] [ / ][ / ] I_Dn [ / ][ / ] I_Op [ / ][ / ] I_Cl I_Up ( L )( L ) Fault_Op ( )( ) Fault_Cl ( )( ) Fault_Up ( )( ) Fault_Dwn ( )( ) Fault_Pk ( )( ) Fault_Pl Open Output dT Done Eμ Xtatus Rst Fault γδέε Close Output dT Done Eμ Xtatus Rst Fault γδέε Up Output dT Done Eμ Xtatus Rst Fault γδέε Down Output dT Done Eμ Xtatus Rst Fault γδέε Pick Output dT Done Eμ Xtatus Rst Fault γδέε Place Output dT Done Eμ Xtatus Rst Fault γδέε ( )( ) Opened ( )( ) Closed ( )( ) Up ( )( ) Down ( )( ) Picked ( )( ) Placed
  17. 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. 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 stationsencapsulé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 delaProduction Gestion desRecettes Gestiondes Informations Semi-Auto Automatique Eμulation Manuel du général au spécifique dugénéralauspécifiquedugénéralauspé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 dugénéralauspécifique dugénéralauspécifique Modèle d'activité Komax ...
  19. 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. 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ésStation 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. 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éeCommentaire Message Nbr Message sur activation Type de messageStation 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 CommentaireType CaractéristiquesIntitulé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. 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éalisationValidation 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. 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. 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. 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. 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. 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. 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. 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 ZIntUniv. 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 baseclasse de baseclasse de base classe de base
  30. 30. Software Study : Page 30 / 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.2. Diagramme d'objets Mn0000 : Module Mn0001 : Module Mn00yy : Module Mn0100 : Module Mn0101 : Module Mn01yy : Module Mn0200 : Module Mn0201 : Module Mn02yy : Module MnXx00 : Module MnXx01 : Module MnXxyy : Module Mn0000 : Module Mn0001 : Module Mn00yy : Module Mn0100 : Module Mn0101 : Module Mn01yy : Module Mn0200 : Module Mn0201 : Module Mn02yy : Module MnXx00 : Module MnXx01 : Module MnXxyy : Module Mn00 : StationMn00 : Station Mn01 : StationMn01 : Station Mn02 : StationMn02 : Station MnXx : StationMnXx : Station MnCP : CtrlPanel Mn : MachineMn : Machine ~Sys~ ~Sys~ ~Sys~ ~Sys~ ~Sys~ ~Sys~ ~Sys~ ~Sys~ ~Sys~ ~Sys~ ~Sys~ ~Sys~ ~Sys~ Mn?? : Use Mn?? : Tag Mn?? : Cter Mn?? : Nest ~Sys~ Mn?? : Use Mn?? : Tag Mn?? : Cter Mn?? : Nest 6.3.3. Diagramme d'états MnXx : Station MnXx00 : Module MnXx01 : Module MnXxyy : Module _E.Off _E.On _X.Yes _F.Dis _F.En _X.No _E.Off _E.On _X.Yes _F.Dis _F.En _X.No _E.Off _E.On _X.Yes _F.Dis _F.En _X.No _E.Off _E.On _X.Yes _F.Dis _F.En _X.No _E.Off _E.On _X.Yes _F.Dis _F.En _X.No _E.Off _E.On _X.Yes _F.Dis _F.En _X.No MnCP : CtrlPanel Mn : Machine OFF Homing Abort Restart Idle Running HoldON Manual OFF Homing Abort Restart Idle Running HoldON Manual _Reset _Cycle _Done _Abort _Home _End _Reset _Cycle _Done _Abort _Home _End 6.3.4. Diagramme de séquences MnXx : Station MnXx00 : Module MnXx01 : Module MnXxyy : Module Mn : Machine Cycle.On End.No Done.Yes End.Yes Cycle.On End.No Done.Yes End.Yes _E.On _X.Yes _E.Off _X.No _E.On _X.Yes _E.Off _X.No _E.Off _X.No _E.On _X.Yes _E.On _X.Yes _E.Off _X.No _E.On _X.Yes _E.Off _X.No _E.Off _X.No _E.On _X.Yes
  31. 31. Software Study : Page 31 / 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.5. Diagramme fonctionnel équivalent "KDC" Zn : ZoneMgr St00 : StationMgr St00 : Sequencer St00 : Seq_00 St00 : Seq_nn Sys : MainMgr St00 : Secu St00 : Transport Sys : OpInt Sys : CountersSys : PView St00 : "Physic_C" St00 : Seq_01 St00 : "Physic_B"St00 : "Physic_A" St00 : Sequencer St00 : Seq_00 St00 : Seq_nn St00 : Seq_01 Sys : ZPower Sys : MainSeq Sys : Seq_00 Sys : Seq_01 Sys : OpIntSeq Sys : Seq_00 Sys : Seq_01 AV : AlarmEvent St00 : Counters St01 : StationMgr St01 : Sequencer St01 : Seq_00 St01 : Seq_nn St01 : Secu St01 : FailNestPR St01 : "Physic_C" St01 : Seq_01 St01 : "Physic_B"St01 : "Physic_A" StXx : StationMgr StXx : Sequencer StXx : Seq_00 StXx : Seq_nn StXx : Secu StXx : FailNestPR StXx : "Physic_C" StXx : Seq_01 StXx : "Physic_B"StXx : "Physic_A"

×