▼
Scroll to page 2
of
346
Automates Modicon Premium Warm Standby Premium Manuel utilisateur W915905820101A11 Edition Juin 2009 © Copyright Schneider Automation SAS 2005. Toute reproduction de cet ouvrage est interd ite. Toute copie ou reproduction, même partielle, par quelque procédé que ce soi t, photographique, magnétique ou autre de même que toute transcription totale ou parti elle lisible sur machine électronique est interdite. Les exemples de programmati on sont décrits, dans ce ma nuel, à titre didactique. Leur utilisation dans des programmes d’applications industrielles nécessitent des adaptations spécifiques selon l’automatis me concerné et en fonction du niveau de sécurité demandé. © Copyright Schneider Automation SAS 2005 logiciel PL7. Ce logiciel est la propriété de Schneider Automation SAS. Chaque vente d’un exemplaire mémorisé de ce logiciel confère à l’ acquéreur une licence non exclusive strictement limitée à l’utilisati on dudit exemplaire sur un terminal de programmation Telemecanique/Square D compatible. Toute reproduction du logiciel autre que la copie de sauvegarde est interdite. Toute adaptation du logiciel est interdite. La garantie Schneider Automation SAS se limite à la conformi té des produits de ces marques Square D et Telemecanique , ainsi qu'à leurs caractéristiques de fonctionnement annoncées. Schneider Automation SAS ne peut, en aucun cas, être tenue responsable ni de l’usage effect ué ni des conséquences qui en découlent. Les produits logiciels relèvent d’un doma ine complexe, ils ne peuvent pas faire matériellement l’objet de tests couvrant toutes les possibilités d’utilisation. Les automates Telemecanique Modicon Mi cro, Telemecanique Modicon Premium, Telemecanique Modicon Atrium, Telemec anique Modicon Quantum, Telemecanique Modicon Momentum sont respectivement appel és Micro, Premium, Atrium, Quantum et Momentum. PL7 est une marque déposée de Schneider Automation SAS. Windows est une marque dépos ée de Microsoft Corporation. HIRSCHMANN est une marque déposée de HIRSCHMANN. 2 Structure de la documentation Structure de la documentation Présentation Ce manuel regroupe la mise en oeuvre matérielle et logicielle d’une architecture Warm Standby Premium. 3 Structure de la documentation 4 Table des matières Consignes de sécurité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 A propos de ce manuel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Partie I Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Présentation de l’intercalaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Chapitre 1 Définitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Contexte de sûreté de fonctionnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Chapitre 2 Présentation de l’architecture Warm Standby Premium. . . . . 25 L’architecture Premium redondant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Chapitre 3 Fonctionnement type Normal/Secours. . . . . . . . . . . . . . . . . . . 27 Principe du fonctionnement de type Normal/Secours . . . . . . . . . . . . . . . . . . . . . 27 Chapitre 4 Présentation des éléments redondés et des éléments partagés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Eléments redondés et partagés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Exemple d’une architecture Warm Standby Premium. . . . . . . . . . . . . . . . . . . . . 31 Chapitre 5 Description fonctionnelle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fonctions des automates Normal et Secours . . . . . . . . . . . . . . . . . . . . . . . . . . . Gestion des entrées/sorties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gestion des modes Normal/Secours. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Partage de la base de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Transparence d’adressage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Surveillance et diagnostic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 34 35 36 39 40 41 5 Partie II Matériel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Chapitre 6 Besoin matériel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 Offre Warm Stanby Premium. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 Configuration minimale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 Compatibilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 Exemple d’architecture avec bus FIPIO entièrement en armoire . . . . . . . . . . . . 51 Exemple d’architecture avec bus FIPIO électrique . . . . . . . . . . . . . . . . . . . . . . . 53 Exemple d’architecture avec bus FIPIO optique . . . . . . . . . . . . . . . . . . . . . . . . . 55 Chapitre 7 Mise en oeuvre matérielle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 Généralités. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 Câblage des contacts des relais alarme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 Capteurs/actionneurs câblés aux modules en rack . . . . . . . . . . . . . . . . . . . . . . . 60 Capteurs/actionneurs câblés aux modules sur bus FIPIO. . . . . . . . . . . . . . . . . . 62 Liaison Modbus Esclave sur RS485, 2 fils. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 Liaison Modbus Maître sur RS485, 2 fils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 Module de communication TSX ETY 110 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Module de communication TSX ETY 210 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Transmetteur optique OZD FIP G3 Hirschmann . . . . . . . . . . . . . . . . . . . . . . . . . 68 Partie III Mise en oeuvre logicielle . . . . . . . . . . . . . . . . . . . . . . . . . 71 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Chapitre 8 Pack logiciel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 Description du pack logiciel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 Installation du pack logiciel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 Chapitre 9 Développement d’une application . . . . . . . . . . . . . . . . . . . . . . 81 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 Principe de programmation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 Comment programmer une application Warm Standby Premium . . . . . . . . . . . . 83 Comment configurer une application Warm Standby Premium . . . . . . . . . . . . . . 84 Configuration du processeur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 Configuration des sorties des modules en rack . . . . . . . . . . . . . . . . . . . . . . . . . . 89 Configuration des sorties des équipements sur bus FIPIO . . . . . . . . . . . . . . . . . 90 Paramètrage du module TSX ETY 210 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 Structure de la Base de Données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 Structuration du programme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 Exécution des sections du programme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 Ajout de la fonction redondance à une application . . . . . . . . . . . . . . . . . . . . . . 103 6 Chapitre 10 Préconisations de développement . . . . . . . . . . . . . . . . . . . . . 105 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Utilisation des EF temporisation (FTON, FTOF, FTP) . . . . . . . . . . . . . . . . . . . Utilisation du Grafcet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Utilisation de la régulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Actionneurs à commandes impulsionnelles . . . . . . . . . . . . . . . . . . . . . . . . . . . Les EF de régulation PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Les EF de dialogue sous protocole Modbus . . . . . . . . . . . . . . . . . . . . . . . . . . . Les EF de dialogue sous protocole Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . Les fonctions DFB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . La commutation volontaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Agents FIPIO Premium et Micro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sorties TOR du bus FIPIO avec repli à 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Les éléments interdits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Les éléments déconseillés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Réglage des périodes des tâches. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapitre 11 11.1 11.2 11.3 11.4 11.5 105 106 107 108 110 114 116 117 120 121 122 127 129 130 131 Les DFB du pack logiciel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Présentation et mise en oeuvre des DFB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Présentation des DFB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mise en oeuvre des DFB dans l’application . . . . . . . . . . . . . . . . . . . . . . . . . . . DFB d’échange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Présentation du DFB d’échange Ha_db_basic . . . . . . . . . . . . . . . . . . . . . . . . . Fonctions du DFB d’échange Ha_db_basic . . . . . . . . . . . . . . . . . . . . . . . . . . . DFB d’extension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Présentation du DFB d’extension Ha_db_cycle_opt . . . . . . . . . . . . . . . . . . . . . Fonctions du DFB d’extension Ha_db_cycle_opt . . . . . . . . . . . . . . . . . . . . . . . Présentation du DFB d’extension Ha_db_size_opt. . . . . . . . . . . . . . . . . . . . . . Fonctions du DFB d’extension Ha_db_size_opt . . . . . . . . . . . . . . . . . . . . . . . . Diagnostic des DFB. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Description des codes de diagnostic des DFB . . . . . . . . . . . . . . . . . . . . . . . . . Exemples de programmation avec les DFB . . . . . . . . . . . . . . . . . . . . . . . . . . . Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Présentation des exemples de programmation avec les DFB . . . . . . . . . . . . . Programmation en langage à contacts (LD) . . . . . . . . . . . . . . . . . . . . . . . . . . . Programmation en langage littéral structuré (SL) . . . . . . . . . . . . . . . . . . . . . . . Programmation en langage liste d’instructions (IL) . . . . . . . . . . . . . . . . . . . . . . Programmation avancée en langage littéral structuré (ST). . . . . . . . . . . . . . . . 133 134 134 135 138 140 140 141 143 147 147 148 149 153 154 158 158 159 159 160 161 162 163 164 7 Chapitre 12 Les EF du pack logiciel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 Présentation des EF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 Paramètres d’entrées/sorties des EF du contexte Grafcet . . . . . . . . . . . . . . . . 170 Procédures de mise en oeuvre des EF du contexte Grafcet . . . . . . . . . . . . . . . 171 Conseil d’utilisation des EF du contexte Grafcet . . . . . . . . . . . . . . . . . . . . . . . . 172 Ordre de rangement des bits d’étapes dans les bits de mots . . . . . . . . . . . . . . 173 Paramètres d’entrées/sorties des EF dédiés au transfert régulation . . . . . . . . . 174 Conseil d’utilisation des EF dédiés au transfert régulation . . . . . . . . . . . . . . . . 176 Utilisation d’une application contenant les EF . . . . . . . . . . . . . . . . . . . . . . . . . . 177 Chapitre 13 13.1 13.2 13.3 13.4 Chapitre 14 Spécificités de la régulation . . . . . . . . . . . . . . . . . . . . . . . . . . 179 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 Objets transférés et fréquence des transferts . . . . . . . . . . . . . . . . . . . . . . . . . . 180 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180 Objets à transférer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 Mot double "Ordre de commande". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 Fréquence des échanges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 Exemple de régulation redondante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 Description de l’exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 Comment utiliser les DFB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 Comment paramétrer les DFB d’échange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 Comment configurer le dialogue opérateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 Modes de marche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 Programmation de la section Init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 Programmation de la section Api_vers_bdd . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 Programmation de la section Bdd_vers_api . . . . . . . . . . . . . . . . . . . . . . . . . . . 198 Programmation de la section Regulation_pid . . . . . . . . . . . . . . . . . . . . . . . . . . 200 Cas particulier du programmateur de consigne . . . . . . . . . . . . . . . . . . . . . . . . . 202 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 Le programmateur de consigne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 Programmation de la section Api_vers_bdd . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 Programmation de la section Bdd_vers_api . . . . . . . . . . . . . . . . . . . . . . . . . . . 206 Exemples complémentaires. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 Exemple de sauvegarde des paramètres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 Exemple d’utilisation d’un Magelis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 Mise au point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 Introduction et mise au point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 8 Partie IV Exploitation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 Chapitre 15 Démarrage du Warm Standby Premium . . . . . . . . . . . . . . . . . 215 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Démarrage des deux automates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chargement du programme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Arrêt du Warm Standby Premium . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapitre 16 215 216 217 218 Modification du programme en mode connecté . . . . . . . . . . 219 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 Modifications mineures de l’application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220 Modifications majeures de l’application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 Chapitre 17 Commutation volontaire du Warm Standby Premium . . . . . 223 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conditions de prise en compte dans l’automate Normal et Secours. . . . . . . . . Information "Automate Secours Inapte à devenir Normal" . . . . . . . . . . . . . . . . Chapitre 18 223 224 225 226 Comportement sur premier événement . . . . . . . . . . . . . . . . . 227 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Evénement : passage en Stop de l’automate Normal . . . . . . . . . . . . . . . . . . . . Evénement : passage en Halt de l’automate Normal . . . . . . . . . . . . . . . . . . . . Evénement : passage en Erreur de l’automate Normal . . . . . . . . . . . . . . . . . . Evénement : perte de l’alimentation de l’automate Normal. . . . . . . . . . . . . . . . Evénement : défaillance du module TSX ETY 210 de l’automate Normal . . . . Evénement : défaut grave du bus FIPIO détecté par l’automate Normal . . . . . Evénement : défaillance de la communication entre les deux automates. . . . . Evénement : commutation Normal/Secours volontaire . . . . . . . . . . . . . . . . . . . 227 228 229 231 233 235 237 239 241 243 Partie V Maintenance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 Chapitre 19 Diagnostic visuel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 Identification visuelle de l’automate Normal . . . . . . . . . . . . . . . . . . . . . . . . . . . 248 Identification visuelle du mode de fonctionnement Nominal . . . . . . . . . . . . . . . 249 Chapitre 20 20.1 Informations de diagnostic . . . . . . . . . . . . . . . . . . . . . . . . . . . 251 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mots systèmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Presentation: Mots systèmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Détail des bits et mots %SW de la redondance . . . . . . . . . . . . . . . . . . . . . . . . 251 252 252 253 254 9 20.2 Chapitre 21 Echange des mots de diagnostic entre automates . . . . . . . . . . . . . . . . . . . . . . 258 Mots d’état . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259 Mot d’état %MWp.v.2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260 Mot de commande %MWp.v.0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263 Diagnostic d’un fonctionnement correct. . . . . . . . . . . . . . . . 265 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265 Fonctionnement correct après reprise à chaud ou à froid . . . . . . . . . . . . . . . . . 266 Fonctionnement correct en exploitation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 Chapitre 22 Méthode de recherche d’une défaillance. . . . . . . . . . . . . . . . 269 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269 Recherche de l’origine de la défaillance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 Défaillance de la communication entre les deux automates . . . . . . . . . . . . . . . 272 Défaillance grave du bus Fipio. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 Automate en arrêt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275 Défaillance de communication TCP-IP (module TSX ETY 210) . . . . . . . . . . . . 276 Partie VI Performances et Limites . . . . . . . . . . . . . . . . . . . . . . . . . 279 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 Chapitre 23 Temps de commutation Normal/Secours . . . . . . . . . . . . . . . 281 Temps de commutation Normal/Secours. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281 Chapitre 24 24.1 24.2 24.3 Chapitre 25 Performances des échanges de la Base de Données . . . . . 283 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283 Echanges de la Base de Données. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284 Presentation des échanges de la Base de Données . . . . . . . . . . . . . . . . . . . . . 284 Echange du bloc de base par le DFB Ha_db_basic . . . . . . . . . . . . . . . . . . . . . 285 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285 Ecart entre deux mises à jour dans l’automate Secours . . . . . . . . . . . . . . . . . . 286 Nombre de mises à jour de la Base de Données . . . . . . . . . . . . . . . . . . . . . . . 288 Ecart sur la mise à jour des sorties redondées en rack . . . . . . . . . . . . . . . . . . . 289 Echanges du bloc base et des blocs d’extension . . . . . . . . . . . . . . . . . . . . . . . 291 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291 Ecart entre deux mises à jour dans l’automate Secours . . . . . . . . . . . . . . . . . . 292 Nombre de mises à jour de la Base de Données . . . . . . . . . . . . . . . . . . . . . . . 296 Ecart sur la mise à jour des sorties redondées en rack . . . . . . . . . . . . . . . . . . . 299 Temps d’exécution et occupation mémoire . . . . . . . . . . . . . 303 Présentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303 Temps d’exécution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304 Occupation mémoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 10 Chapitre 26 Limites d’utilisation des différents DFB d’échange . . . . . . . 307 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rappel du rôle des différents DFB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Calcul du nombre maximal de DFB. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Incidence de la commutation et de la redondance des sorties . . . . . . . . . . . . . 307 308 309 310 Partie VII Module de communication TSX ETY 210 . . . . . . . . . . . 311 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311 Chapitre 27 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Généralités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Particularités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modes de marche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapitre 28 313 314 315 316 Communication Ethernet TCP/IP . . . . . . . . . . . . . . . . . . . . . . 317 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317 Principes généraux de communication Ethernet TCP/IP . . . . . . . . . . . . . . . . . 318 Communication Ethernet TCP/IP avec l’architecture Warm Standby Premium . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 Chapitre 29 Caractéristiques du module . . . . . . . . . . . . . . . . . . . . . . . . . . 323 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323 Rappel sur l’adressage TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324 Adresses du module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326 Chapitre 30 Interface langage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Objets langage %KW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Objets de status explicites. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Objets de status implicites. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapitre 31 Fonctions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fonctions de communication. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fonctions dans une architecture Warm Standby Premium . . . . . . . . . . . . . . . . Diagnostic de l’architecture Warm Standby Premium . . . . . . . . . . . . . . . . . . . . Chapitre 32 333 334 335 336 Mise en oeuvre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mise en oeuvre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Evolution de la communication sur incident . . . . . . . . . . . . . . . . . . . . . . . . . . . Limites de la communication du module TSX ETY 210 . . . . . . . . . . . . . . . . . . Performances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Index 329 330 331 332 339 340 341 342 343 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345 11 12 Consignes de sécurité § Consignes générales de sécurité à l’attention de l’utilisateur Généralités La présente documentation s’adresse à des personnes qualifiées sur le plan technique pour mettre en oeuvre, exploiter et maintenir les produits qui y sont décrits. Elle contient les informations nécessaires et suffisantes à l’utilisation conforme des produits. Toutefois, une utilisation "avancée" de nos produits peut vous conduire à vous adresser à l’agence la plus proche pour obtenir les renseignements complémentaires. Le contenu de la documentation n’est pas contractuel et ne peut en aucun cas étendre ou restreindre les clauses de garantie contractuelles. Qualification des personnes Seules des personnes qualifiées sont autorisées à mettre en oeuvre, exploiter ou maintenir les produits. L’intervention d’une personne non qualifiée ou le non-respect des consignes de sécurité contenues dans ce document ou apposées sur les équipements, peut mettre en cause la sécurité des personnes et/ou la sûreté du matériel de façon irrémédiable. Sont appelées "personnes qualifiées", les personnes suivantes : l avec les concepts de sécurité de l’automatisme (par exemple, un ingénieur d’études, ...), l au niveau de la mise en oeuvre des équipements, les personnes familiarisées avec l’installation, le raccordement et la mise en service des équipements d’automatisme (par exemple, un monteur ou un câbleur pendant la phase d’installation, un technicien de mise en service, ...), l au niveau de l’exploitation, les personnes initiées à l’utilisation et à la conduite des équipements d’automatisme (par exemple, un opérateur, ...), l au niveau de la maintenance préventive ou corrective, les personnes formées et habilitées à régler ou à réparer les équipements d’automatisme (par exemple, un technicien de mise en service, un technicien de S.A.V, ...). 13 Consignes de sécurité Avertissements Les avertissements servent à prévenir les risques particuliers encourus par les personnels et/ou le matériel. De par leur importance, ils sont donc signalés dans la documentation et sur les produits par une marque d’avertissement : l Danger ou Attention : signifie que la non application de la consigne ou la non prise en compte de l’avertissement conduit ou peut conduire à des lésions corporelles graves, pouvant entraîner la mort ou/et à des dommages importants du matériel. l Note ou Remarque : met en exergue une information importante relative au produit, à sa manipulation ou à sa documentation d’accompagnement. Conformité d’utilisation Les produits décrits dans la présente documentation sont conformes aux Directives Européennes (*) auxquelles ils sont soumis (marquage CE). Toutefois, ils ne peuvent être utilisés de manière correcte, que dans les applications pour lesquelles ils sont prévus dans les différentes documentations et en liaison avec des produits tiers agréés. En règle générale, si toutes les prescriptions de manipulation, de transport et de stockage et si toutes les consignes d’installation, d’exploitation et de maintenance sont respectées, les produits seront utilisés d’une manière correcte, sans danger pour les personnes ou les matériels. (*) Directives DCEM et DBT concernant la Compatibilité Electromagnétique et la Basse Tension. 14 Consignes de sécurité Installation et mise en oeuvre des équipements Il est important de respecter les règles suivantes, lors de l’installation et de la mise en service des équipements. De plus, si l’installation contient des liaisons numériques, il est impératif de respecter les règles élémentaires de câblage, présentées dans le guide utilisateur ou dans le manuel de référence. l Respecter scrupuleusement les consignes de sécurité, contenues dans la documentation ou sur les équipements à installer et mettre en oeuvre. l Le type d’un équipement définit la manière dont celui-ci doit être installé : l un équipement encastrable (par exemple, un pupitre d’exploitation ou un contrôleur de cellules) doit être encastré, l un équipement incorporable (par exemple, un automate programmable) doit être placé dans une armoire ou un coffret, l un équipement "de table" ou portable (par exemple, un terminal de programmation) doit rester avec son boîtier fermé. l Si l’équipement est connecté à demeure, il sera nécessaire d’intégrer dans son installation électrique, un dispositif de sectionnement de l’alimentation et un coupe circuit de protection sur surintensité et de défaut d’isolement. Si ce n’est pas le cas, la prise secteur sera mise à la terre et facilement accessible. Dans tous les cas, l’équipement doit être raccordé à la masse de protection PE par des fils vert/jaune (NFC 15 100). l Pour permettre de détecter une tension dangereuse, les circuits BT (bien que Basse Tension) doivent être obligatoirement raccordés à la terre de protection. l Avant de mettre sous tension un équipement, il est nécessaire de vérifier que sa tension nominale est réglée en conformité avec la tension d’alimentation du réseau. l Si l’équipement est alimenté en 24 ou en 48 V continu, il y a lieu de protéger les circuits basse tension. N’utiliser que des alimentations conformes aux normes en vigueur. l Vérifier que les tensions d’alimentation restent à l’intérieur des plages de tolérance définies dans les caractéristiques techniques des équipements. l Toutes les dispositions doivent être prises pour qu’une reprise secteur (immédiate, à chaud ou à froid) n’entraîne pas d’état dangereux pour les personnes ou pour l’installation. l Les dispositifs d’arrêt d’urgence doivent rester efficaces dans tous les modes de fonctionnement de l’équipement, même anormal (par exemple, coupure d’un fil). Le réarmement de ces dispositifs ne doit pas entraîner des redémarrages non contrôlés ou indéfinis. l Les câbles véhiculant des signaux doivent être placés de telle manière que les fonctions d’automatismes ne soient pas perturbées par des influences capacitives, inductives, électromagnétiques, ... l Les équipements d’automatisme et leurs dispositifs de commande doivent être installés de façon à être protégés contre des manoeuvres inopinées. l Afin d’éviter qu’un manque de signaux n’engendre des états indéfinis dans l’équipement d’automatisme, les mesures de sécurité adéquates doivent être prises pour les entrées et les sorties. 15 Consignes de sécurité Fonctionnement des équipements La sûreté de fonctionnement d’un dispositif représente son aptitude à éviter l’apparition de défaillances et à minimiser leurs effets lorsqu’elles se sont produites. Un système est dit de sécurité totale si l’apparition de défaillances ne conduit jamais à une situation dangereuse. Un défaut interne à un système de commande sera dit de type : l passif, s’il se traduit par un circuit de sortie ouvert (aucun ordre n’est donné aux actionneurs). l actif, s’il se traduit par un circuit de sortie fermé (un ordre est envoyé aux actionneurs). Du point de vue de la sécurité, un défaut d’un type donné sera dangereux ou non selon la nature de la commande effectuée en fonctionnement normal. Un défaut passif est dangereux si la commande normale est une opération d’alarme; un défaut actif est dangereux s’il maintient ou active une commande non désirée. Il est important de noter la différence fondamentale de comportement d’un relais électromécanique et d’un composant électronique (par exemple un transistor) : l la probabilité est grande, environ 90 cas sur 100, pour que la défaillance d’un relais conduise à un circuit ouvert (circuit de commande hors tension). l la probabilité est de l’ordre de 50 cas sur 100, pour que la défaillance d’un transistor conduise soit à un circuit ouvert, soit à un circuit fermé. C’est pourquoi il est important de bien mesurer la nature et la conséquence des défauts lorsque l’on aborde une automatisation à partir de produits électroniques tels que les automates programmables, y compris dans le cas d’utilisation sur ceux-ci de modules de sorties à relais. Le concepteur du système devra se prémunir, par des dispositifs extérieurs à l’automate programmable, contre les défauts actifs internes à cet automate, non signalés et jugés dangereux dans l’application. Leur traitement peut faire appel à des solutions de technologies variées telles que mécanique, électromécanique, pneumatique, hydraulique (par exemple, câblage direct du détecteur de fin de course et des arrêts d’urgence sur la bobine du contacteur de commande d’un mouvement). Pour se prémunir contre les défauts dangereux susceptibles d’intervenir au niveau des circuits de sortie et des pré-actionneurs, on pourra mettre à profit des principes généraux mettant en oeuvre la grande capacité de traitement de l’automate, comme par exemple " le contrôle par les entrées de la bonne exécution des ordres demandés par le programme". Caractéristiques électriques et thermiques 16 Le détail des caractéristiques électriques et thermiques des équipements figure dans les documentations techniques associées (manuels de mise en oeuvre, instructions de service). Consignes de sécurité Conditions d’environnement Dans l’industrie, les conditions de micro-environnement autour des équipements électroniques peuvent avoir une grande variabilité. C’est pour cela qu’il faut se conformer pour les automates programmables et leurs modules associés aux deux types d’installation suivants : l installation en enveloppe (armoire, coffret) au degré de protection IP54, protégeant notamment l’équipement des poussières métalliques. A ce mode d’installation en enveloppe fermée, on associe deux consignes : l l’accès direct aux modules électroniques est strictement réservé au personnel de maintenance (voir paragraphe 2), disposant de clé d’accès, l le choix, en priorité, d’une enveloppe métallique doit être examiné, car il constitue un blindage supplémentaire vis à vis des risques latents d’interférence électromagnétique, l installation directe sans protection particulière des automates Premium et des systèmes associés (modules alimentation, ...) qui présentent par eux même un indice de protection IP20. Ce mode d’installation se réalise dans des locaux à accès réservé et à faible degré de pollution, ne dépassant pas 2, tels que stations ou salles de contrôle commande ne comportant ni machine, ni activité générant poussières ou autres particules métalliques. Les murs extérieurs constituent alors l’enveloppe de l’automate. 17 Consignes de sécurité Maintenance préventive ou corrective l l l 18 Disponibilité La disponibilité d’un système représente son aptitude, sous les aspects combinés de sa fiabilité, de sa maintenabilité et de sa logistique de maintenance, à être en état d’accomplir une fonction requise, à un instant donné et sur un intervalle de temps déterminé. La disponibilité est donc propre à chaque application puisqu’elle est la combinaison de : l l’architecture du système automatique, l la fiabilité et la maintenabilité : caractéristiques intrinsèques des matériels (automates, capteurs, machine, etc...), l la logistique de maintenance : caractéristique intrinsèque à l’utilisateur de l’automatisme (structure des logiciels, signalisation des défauts, process, pièces de rechange sur place, formation du personnel). Conduite à tenir pour le dépannage l les réparations sur un équipement d’automatisme ne doivent être effectuées que par du personnel qualifié (technicien S.A.V ou technicien agréé par Schneider Automation S.A.S.). Lors de remplacement de pièces ou de composants, n’utiliser que des pièces d’origine. l vant d’intervenir sur un équipement (par exemple ouvrir un boîtier), couper dans tous les cas son alimentation (débrancher sa prise de courant ou ouvrir le dispositif de sectionnement de son alimentation). l avant d’intervenir sur site sur un équipement "mécanique", couper son alimentation de puissance et verrouiller mécaniquement les pièces susceptibles de mouvements. l avant d’extraire un module, une cartouche mémoire, une carte PCMCIA, ..., vérifier dans la documentation si cette opération doit s’effectuer hors tension ou s’il est possible de l’effectuer sous tension. Suivre rigoureusement les consignes données par la documentation. l sur des sorties à logique positive ou des entrées à logique négative, prendre toutes les précautions pour ne pas qu’un fil déconnecté vienne en contact avec la masse mécanique (risque de commande intempestive). Remplacement et recyclage des piles usagées l en cas de remplacement, utiliser des piles de même type et éliminer les piles défectueuses comme des déchets toxiques. Ne pas jeter au feu, ouvrir, recharger ou effectuer des soudures sur les piles au lithium ou au mercure (risque d'explosion). A propos de ce manuel Présentation Objectif du document Ce manuel s’adresse aux utilisateurs souhaitant mettre en oeuvre une architecture Warm Standby Premium. Champ d'application La mise à jour de cette publication prend en compte les fonctionnalités de PL7 V4.5. Elle permet néanmoins de mettre en oeuvre les versions antérieures de PL7. Document à consulter Commentaires utilisateur Titre Référence Manuel de mise en oeuvre matérielle TSX DM 57 F Manuel de mise en oeuvre métiers communication sous PL7 TLX DS COM PL7 Manuel de référence communication X-Way TSX DR NET Compatibilité électromagnétique des réseaux et bus de terrain industriels TSX DG KRL Envoyez vos commentaires à l'adresse e-mail [email protected] 19 A propos de ce manuel 20 Présentation I Présentation de l’intercalaire Objet de cet intercalaire Cet intercalaire présente les concepts généraux de redondance et la solution proposée par l’offre Warm Standby Premium. Contenu de cette partie Cette partie contient les chapitres suivants : Chapitre Titre du chapitre Page 1 Définitions 23 2 Présentation de l’architecture Warm Standby Premium 25 3 Fonctionnement type Normal/Secours 27 4 Présentation des éléments redondés et des éléments partagés 29 5 Description fonctionnelle 33 21 Présentation 22 Définitions 1 Contexte de sûreté de fonctionnement Concepts de sureté La sûreté de fonctionnement associe plusieurs concepts : l Au sens large, c'est la science des défaillances et des pannes. l Au sens strict, c'est l’ensemble des propriétés qui décrivent la disponibilité et les facteurs qui la conditionnent : fiabilité, maintenabilité et logistique de maintenance conforme à la norme CEI 50 (191). Concept de disponibilité La disponibilité caractérise l’aptitude d’un système ou d’un dispositif à assurer sa fonction (ou sa mission, ou son service) dans des conditions données, à un instant donné ou pour une durée déterminée, en supposant que la fourniture des moyens nécessaires est assurée. Concept de sécurité La sécurité caractérise l’aptitude d’un dispositif à ne présenter aucun danger pour les personnes, pour les biens ou pour l’environnement. 23 Définitions Définitions L’illustration suivante rappelle les principales définitions à connaître. Sûreté de fonctionnement dans les automatismes Aptitude à assurer un service spécifié pendant le cycle de vie. Disponibilité Sécurité Aptitude d'une entité à ne présenter aucun danger pour les personnes, les biens et l'environnement. Aptitude d'une entité à être en état de marche, à un instant donné, ou pendant un intervalle de temps donné. Fiabilité Aptitude d'une entité à assurer un service dans une durée donnée. Maintenabilité Aptitude d'une entité à être maintenue ou rétablie en état de service dans une durée donnée. Logistique de maintenance Aptitude d'une organisation à fournir les moyens nécessaires à la maintenance. Rechercher une solution à un problème de sûreté dans le domaine des automatismes consiste à choisir et implémenter l’architecture type répondant au besoin global. 24 Présentation de l’architecture Warm Standby Premium 2 L’architecture Premium redondant Objectif de l’architecture Le Warm Standby Premium s’adresse à tous les automatismes qui requièrent un haut niveau de disponibilité. C’est notamment le cas lorsque la mission de l’automate est : l de surveiller une installation en service continu, l signaler les incidents à un poste de contrôle, l et transmettre les ordres de commande du responsable de conduite à différents endroits d’un site étendu. L’objectif est de garantir la continuité de mission des fonctions de l’automatisme, quelque soit la première défaillance d’un constituant du système. Exemples d’application l l l Gestion technique centralisée d’un ouvrage public (tunnel, aéroport,...). Contrôle/commande d’une station de traitement ou distribution d’eau. Gestion technique électrique. 25 Architecture Warm Standby Premium Réponse aux besoins de disponibilité L’objectif est de garantir la continuité de mission des fonctions de l’automatisme, quelque soit la première défaillance d’un constituant du système. Le Warm Standby Premium permet de répondre à différents besoins de disponibilité : l Disponibilité uniquement des fonctions centrales de traitement et de communication de l'automate pour des applications dont la perte des entrées ou sorties de l'automate permettent un fonctionnement dégradé tolérable pour l'application. l Disponibilité des fonctions centrales et des entrées/sorties de l'automate pour des applications où la disponibilité des fonctions centrales et la disponibilité des entrées/sorties sont nécessaires au fonctionnement de l'application. La plupart des applications réclament un mixte des deux besoins précédents avec une répartition variable entre entrées/sorties simples et entrées/sorties redondantes. L'Architecture Warm Standby Premium couvre l'ensemble de ces besoins avec la redondance complète des fonctions principales de traitement et communication, l'utilisation d'entrées/sorties simples sur FIPIO et/ou la redondance des entrées/ sorties en rack. 26 Fonctionnement type Normal/Secours 3 Principe du fonctionnement de type Normal/Secours Présentation Le Warm Standby Premium met en oeuvre une redondance physique de l'automate et un fonctionnement de type Normal/Secours. Cette architecture utlise 2 automates (identifiés par les lettres A et B dans la suite du document). En fonctionnement normal Seul l'automate avec l'état Normal traite l'application et élabore les sorties. Sur défaillance Sur défaillance de l'automate en mode Normal, l'automate en mode Secours prend le contrôle et devient à son tour Normal, l'automate en mode Normal devient alors Secours. L'automate en mode Secours applique les sorties élaborées par l'automate Normal, s'autodiagnostique et diagnostique en permanence l'automate en mode Normal. Ce double basculement est appelé commutation Normal/Secours. Pour assurer une disponibilité optimale de l'application, la commutation s'effectue sans à-coup sur les sorties et sans perturber les systèmes qui communiquent avec l'architecture redondante. 27 Fonctionnement Normal/Secours 28 Présentation des éléments redondés et des éléments partagés 4 Présentation Objet de ce chapitre Ce chapitre décrit les éléments qui doivent être redondés et ceux qui doivent être partagés. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Eléments redondés et partagés 30 Exemple d’une architecture Warm Standby Premium 31 29 Eléments redondés et partagés Eléments redondés et partagés Généralités Dans l’architecture Premium redondant, les automates redondés sont identifiés par les lettres A et B. Certains de leurs éléments doivent être obligatoirement redondés. Les éléments sur bus FIPIO sont partagés par les 2 automates. Description des éléments redondés Les éléments suivants sont redondés : Elémént redondé Obligatoire Optionnel Rack principal X - Alimentation du rack principal X - Module de communication Ethway dédié à la liaison inter-automates X - Processeur automate X - Module(s) d'entrées TOR - X Module(s) de sorties TOR - X Rack(s) d’extension - X Module(s) de communication Ethernet TCP-IP - X Module(s) de communication Modbus - X Légende : X : oui - : non Note : Les modules analogiques ne sont pas autorisés en rack car ils doivent être exclusivement utilisés comme éléments partagés. Description des éléments partagés 30 Les éléments du bus FIPIO sont partagés entre les 2 automates. l un ou des module(s) d'entrées TOR, l un ou des module(s) de sorties TOR, l un ou des module(s) d’entrées analogiques, l un ou des module(s) de sorties analogiques, l un ou des agent(s) Premium. Eléments redondés et partagés Exemple d’une architecture Warm Standby Premium Illustration L’illustration suivante présente une architecture Warm Standby Premium. Réseau Ethernet TCP-IP optionnel Réseau Modbus optionnel Rack principal Automate A Automate B Alimentation Processeur TSX ETY 110 TSX ETY 210 TSX SCY 21601 Alimentation Processeur TSX ETY 110 TSX ETY 210 TSX SCY 21601 Alimentation Modules d’entrées/sorties Alimentation Modules d’entrées/sorties Rack d’extension Eléments redondés obligatoires Eléments redondés optionnels Eléments partagés du bus FIPIO TBX Momentum TBX FIPIO Premium agent 31 Eléments redondés et partagés 32 Description fonctionnelle 5 Présentation Objet de ce chapitre La fonction principale du Warm Standby Premium est de garantir la continuité du contrôle/commande du procédé. Pour cela, l'architecture doit assurer les fonctions décrites dans ce chapitre. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Fonctions des automates Normal et Secours Page 34 Gestion des entrées/sorties 35 Gestion des modes Normal/Secours 36 Partage de la base de données 39 Transparence d’adressage 40 Surveillance et diagnostic 41 33 Description fonctionnelle Fonctions des automates Normal et Secours Généralités Les automates A et B sont physiquement et fonctionnellement identiques. Mais leur rôle est différencié par leur mode de fonctionnement Normal/Secours. Fonctions de l’automate normal L’automate en mode Normal : l exécute l'application, l met à jour les sorties en rack et FIPIO, l acquiert les entrées en rack et FIPIO, l assure les fonctions de communication avec les périphériques, l envoie sa Base de Données à l'automate Secours, l récupère des informations de diagnostic de l'automate Secours, l élabore ses propres informations de diagnostic ainsi que celles de l'architecture Warm Standby Premium. Fonctions de l’automate secours L’automate en mode Secours : l exécute en partie l'application, l acquiert les entrées en rack, l applique les sorties en rack de l'automate Normal sur ses propres sorties en rack, l récupère des informations de diagnostic de l'automate Normal, l élabore ses propres informations de diagnostic ainsi que celles de l'architecture Warm Standby Premium. 34 Description fonctionnelle Gestion des entrées/sorties Gestion des entrées/sorties redondées Pour les entrées redondées, l’information capteur est transmise simultanément aux automates A et B via les deux modules d'entrées. Les valeurs des sorties sont élaborées uniquement par le traitement applicatif de l’automate Normal. Ce dernier envoie les commandes aux modules de sorties correspondants. A chaque cycle, l’automate Secours reçoit les valeurs des sorties de l'automate Normal via la liaison Ethway inter-automates et les applique sur ses propres sorties. Cette mise à jour permet une commutation Normal/Secours sans à-coup par le maintien de l'état des sorties durant le temps de la commutation. Gestion des entrées/sorties FIPIO Le bus FIPIO gère les échanges entrées/sorties des équipements FIPIO. L’automate Normal est un arbitre de bus FIPIO actif et l’automate Secours est un arbitre de bus FIPIO passif. De par les caractéristiques du réseau FIPIO, seul l’automate Normal acquiert les entrées physiques sur le bus FIPIO et commande les sorties physiques sur le bus FIPIO. L'automate Secours n'accède pas au bus FIPIO. A chaque cycle, l’automate Secours reçoit les valeurs des entrées/sorties sur bus FIPIO de l'automate Normal via la liaison Ethway inter-automates et les applique sur ses propres sorties. Cette mise à jour de la mémoire permet une commutation Normal/Secours sans à-coup par le maintien de l'état des sorties durant le temps de la commutation. 35 Description fonctionnelle Gestion des modes Normal/Secours Principe La défaillance de l’un des éléments suivants provoque automatiquement une commutation Normal/Secours : l alimentation du rack principal, l processeur, l module de communication TSX ETY 210, l bus FIPIO relié à la prise intégrée du processeur. Pour tous les autres éléments, la commutation Normal/Secours peut être personnalisée en fonction des besoins de disponibilité (commutation volontaire). Première détermination des modes Normal/Secours Le choix des états Normal/Secours est fait automatiquement par le système via le bus FIPIO et la liaison Ethway inter-automates. Mode de fonctionnement nominal Le mode de fonctionnement nominal correspond à la situation où : l les automates A et B sont en RUN, l aucune défaillance de communication n’est présente entre les automates A et B, l aucune défaillance n’est présente sur les modules de communication TSX ETY 210, l aucune défaillance grave du bus FIPIO n’est présente. Le premier automate mis sous tension est l’automate Normal. L’utilisation d’un relais temporisé sur l’un des automates permet de garantir l’élection Normal/Secours des automates lors d’une mise sous tension simultanée de ceux-ci. Note : Une défaillance du bus FIPIO est considérée grave, dans le contexte du Warm Standby Premium, lorsque l’arbitre de bus ne peut plus être actif (exemple, déconnexion du bornier FIPIO de la liaison intégrée d’une unité centrale). 36 Description fonctionnelle Mode de fonctionnement dégradé Le mode de fonctionnement dégradé correspond à au moins l’une des situations suivantes : l présence d’une défaillance de communication entre les automates A et B, l présence d’une défaillance grave du bus FIPIO, l l’un des racks principaux, A ou B est hors tension, l l’une des alimentations des racks principaux, A ou B est défaillante, l l’un des automates, A ou B n’est pas dans l’état "Automate en fonctionnement". mais dans un des états suivants : l "automate à l’arrêt", l "automate en défaut logiciel ou HALT", l "automate en erreur", l "automate non configuré". l présence d’une défaillance sur l’un des modules de communication TSX ETY 210. Pour chaque situation, le contrôle/commande du procédé ainsi que la communication avec les équipements tiers sont assurés par l’automate Normal de l’architecture Warm Standby Premium. Les informations de diagnostic permettent de localiser les éléments défaillants. Une opération rapide de maintenance est indispensable pour replacer le Warm Standby Premium dans le mode de fonctionnement nominal. En cas de problème de mise à jour de la Base de Données, l’automate Secours ne peut assurer la disponibilité du contrôle/commande. La fonction redondance le place dans une position de repli en arrêtant son fonctionnement (STOP automate). 37 Description fonctionnelle Commutation Normal/Secours La commutation correspond à la permutation des états Normal/Secours entre les automates A et B. Celle-ci peut être automatique ou volontaire. Commutation automatique En fonctionnement nominal, il y a commutation automatique de l’automate Normal vers l’automate Secours lors d’un des évènements suivants : l mise en arrêt de l’automate Normal, l apparition d’une défaillance du processeur de l’automate Normal (Etat HALT ou ERREUR), l perte de l’alimentation ou mise hors tension du rack principal de l’automate Normal, l apparition d’une défaillance de l’un des modules de communication TSX ETY 210 de l’automate Normal, l apparition d’une défaillance de la connexion RJ45 entre l’un des modules de communication TSX ETY 210 et un équipement tiers, l apparition d’une défaillance de la communication TCP-IP entre l’un des modules de communication TSX ETY 210 et un équipement tiers, l apparition d’une défaillance grave du bus FIPIO de l’automate Normal (exemple : déconnexion du bornier FIPIO de la prise intégrée de l’unité centrale). Commutation volontaire Il est possible de provoquer une commutation sur défaillances de modules entrées/ sorties ou perte d’un rack d’entrées/sorties. Elle est réalisée sur passage à 1 du bit %S60. Cette commutation volontaire peut être réalisée par programme ou à partir d’un équipement tiers dialoguant avec l’automate Normal. Note : Avant de procéder à une commutation volontaire, il est nécessaire de s’assurer du bon fonctionnement de l’automate Secours. Note : le temps de commutation Normal/Secours est le temps séparant la disparition de l’état normal (%SW60:X0) sur un automate de l’apparition de cet état sur le second automate. Le temps moyen de commutation Normal/Secours est d’une seconde pour le processeur TSX P57 452. 38 Description fonctionnelle Partage de la base de données Généralités Pour que l'automate Secours puisse prendre le contrôle/commande du procédé sans à-coup lors de la commutation, il doit connaître à tout moment l'état du procédé. Cet état est donné par : l les valeurs des entrées sur bus FIPIO, l les valeurs des sorties sur bus X et sur bus FIPIO, l les étapes actives des Grafcets, l les données internes de l'automate Normal. Pour cela, les deux automates partagent une Base de Données. Fonctionnement L'automate Normal élabore la Base de Données et l'envoie périodiquement à l'automate Secours. Cet échange est réalisé par l'intermédiaire de la liaison Ethway inter-automates. Cette liaison utilise deux modules de communication TSX ETY 110. La figure suivante illustre l’échange de la base de données entre les automates. Base de données Automate Normal Automate Secours 39 Description fonctionnelle Transparence d’adressage Principe La fonction de transparence d’adressage permet à tout équipement tiers dialoguant avec l’architecture de gérer un seul point de connexion correspondant à une adresse de communication unique. Il y a ainsi communication avec l’automate Normal, et ceci quel que soit l’automate, A ou B. Le dialogue pour les fonctions Serveur s’effectue comme pour un seul automate. Modules assurant la fonction La fonction est supportée par les modules : l TSX ETY 210 pour le protocole Ethernet TCP/IP, l TSX SCP 114 pour le protocole Modbus Esclave. La fonction de transparence d’adressage rend aisée la gestion et l’exploitation du Warm Standby Premium. 40 Description fonctionnelle Surveillance et diagnostic Généralités La vérification du bon fonctionnement de l'automate Normal et de l'automate Secours est un point capital des architectures à haute disponibilité. Le Warm Standby Premium offre de base un taux élevé de détection des défaillances par la vérification mutuelle des deux automates. Principe Sur les deux automates sont élaborés, quelque soit leur état Normal ou Secours, les diagnostics suivants : l diagnostic standard de l'automate, l diagnostic spécifique à la redondance qui comprend la description de l'état des deux automates et des défauts présents, l diagnostic global du Warm Standby Premium qui fournit une synthèse des modes de fonctionnement et de la présence éventuelle d'un défaut. Fonctionnement La figure ci-après illustre le fonctionnement de la fonction surveillance et diagnostic dans l’architecture Warm Standby Premium. Automate Normal Automate Secours Diagnostic standard Diagnostic standard Diagnostic spécifique à la redondance de l’automate Normal Diagnostic spécifique à la redondance de l’automate Secours Diagnostic spécifique à la redondance de l’automate Secours Diagnostic spécifique à la redondance de l’automate Normal Diagnostic global de l’architecture Warm Standby Premium Diagnostic global de l’architecture Warm Standby Premium 41 Description fonctionnelle Utilisation Ces informations sont élaborées en temps réel et accessibles par programme ou équipements tiers via les mots systèmes. Les diagnostics du Warm Standby Premium permettent de détecter et localiser rapidement les éléments défaillants. Elles fournissent au personnel de maintenance les indications indispensables à une intervention sûre. 42 Matériel II Présentation Objet de cet intercalaire Cet intercalaire présente la mise en oeuvre matérielle de l’architecture Warm Standby Premium. Contenu de cette partie Cette partie contient les chapitres suivants : Chapitre Titre du chapitre Page 6 Besoin matériel 45 7 Mise en oeuvre matérielle 57 43 Matériel 44 Besoin matériel 6 Présentation Objet de ce chapitre Ce chapitre décrit les éléments matériels nécessaires pour réaliser une architecture Warm Stanby Premium. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Offre Warm Stanby Premium 46 Configuration minimale 47 Compatibilité 48 Exemple d’architecture avec bus FIPIO entièrement en armoire 51 Exemple d’architecture avec bus FIPIO électrique 53 Exemple d’architecture avec bus FIPIO optique 55 45 Besoin matériel Offre Warm Stanby Premium Constitution de l’offre L’architecture Warm Standby Premium est constituée : l de produits standards de la gamme Premium (rack, alimentation, unité centrale, modules d’Entrées/Sorties, module de communication TSX ETY 110, etc.), l d’un pack logiciel d’enrichissement PL7, référencé TXT L BKP PREM• , l de modules de communication TSX ETY 210, l des embases ABE7 ACC10 et ABE7 ACC11, l du présent manuel de référence. Certains de ces constituants sont indispensables au Warm Standby Premium, les autres dépendent des besoins de contrôle/commande du procédé. Note : pour réaliser une architecture redondante qui comporte de la régulation il est nécessaire d’utiliser le pack logiciel d’une version V4.0 minimum avec des processeurs Premium de version supérieure ou égale à 5.0. 46 Besoin matériel Configuration minimale Illustration La configuration minimale est la configuration indispensable pour réaliser la fonction Redondance. La liaison FIPIO doit comporter au moins un équipement. Exemple de configuration minimale : Composition Le tableau suivant décrit la composition minimale d’une configuration Warm Standby Premium. Désignation Fonction Référence Quantité Processeur Premium avec liaison FIPIO intégrée Exécution du programme applicatif Accueil éventuel d'une voie Modbus Esclave (TSX SCP 114) TSX P57 353 TSX P57 452 TSX P57 453 2 Module alimentation Alimentation du rack TSX PSY •••• 2 Rack extensible Communication entre les modules sur le rack TSX RKY •EX 2 Terminaison de ligne Obligatoire sur les deux racks d'extrémité TSX RKY •EX TSX TLY EX 2 Module de communication Ethway Liaison Ethway inter-automates entre les automates A et B TSX ETY 110 2 Equipement de Connexion en point à point entre les raccordement entre les deux deux modules de communication coupleurs TSX ETY 110 Matériel du commerce décrit dans le tome 3 du manuel de mise en oeuvre Premium Communication Interface Bus et réseaux Version 2.7 min. 1 Câble de raccordement sur bus FIPIO Etablissement de la liaison FIPIO indispensable TSX FP •• 1 Relais de temporisation Désynchroniser le démarrage des deux automates lors d'une mise sous tension simultanée LA4 DT2U 1 47 Besoin matériel Compatibilité Généralités 48 La configuration minimale de l’architecture Warm Standby Premium peut être complétée par des modules compatibles en fonction des besoins du procédé à automatiser. Besoin matériel Eléments compatibles Les modules suivants sont compatibles. Ce sont des éléments redondés, ils sont multiples de 2. Désignation Référence Fonction Quantité TSX REY 200 Connexion de racks à des distances élevées 2xn Module de communication Ethernet TCP/IP TSX ETY 210 Version 1.1 min. Communication Ethernet TCP/IP avec transparence de l’adressage pour les équipements tiers 2xn Module de communication Modbus TSX SCY 21601 Version 2.1 min. Communication Modbus Maître et Accueil de la carte PCMCIA TSX SCP 114 2xn Carte multiprotocole TSX SCP 114 Version 1.7 min. Communication Modbus Esclave avec transparence d’adressage pour les équipements tiers 2xn Modules d’entrées TOR TSX DEY •K Module d’entrées TOR à connecteurs HE10 2xn Modules de sorties TOR TSX DSY •K Module de sorties TOR à connecteurs HE10 2xn Modules d’entrées/sorties TOR TSX DMY •K Module d’entrées/sorties TOR à connecteurs HE10 2xn Modules d’entrées TOR TSX DEY • 2xn Module d’entrées TOR à bornier à vis (modules compatibles sous conditions de câblage) Modules de sortiesTOR TSX DSY • 2xn Module de sorties TOR à bornier à vis (modules compatibles sous conditions de câblage) Embases d’entrées de modularité 16 voies ABE7 ACC11 Faciliter le câblage des modules d’entrées TOR redondés 1xn Embases de sorties de modularité 16 voies ABE7 ACC10 Faciliter le câblage des modules de sorties TOR redondés 1xn Déport Module de déport bus X Communication Entrées/Sorties TOR 49 Besoin matériel Eléments FIPIO Le tableau suivant donne la liste des éléments FIPIO partagés, ils sont par quantité unitaire. Désignation Référence Fonction Quantité Modules de communication TBX LEP 030 - 1xn Modules d’entrées/sorties TOR TBX D • Module d’entrées/sorties TOR 1xn Modules d’entrées/sorties analogiques TBX A • Module d’entrées/sorties analogiques 1xn TSX E • Module d’entrées/sorties étanches IP67 1xn TBX modulaires Modules étanches Modules d’entrées/sorties Modules Momentum Communicateur FIPIO 170 FNT 110 01 Communicateur FIPIO pour 1 x n Momentum Modules d’entrées/sorties 170 A • Module d’entrées/sorties Momentum 1xn Premium TSX P57 • Automates 1xn Micro TSX P37 • Automates 1xn Répéteur électrique TSX FP ACC6 Répéteur électrique FIPIO 1xn Transmetteur optique OZD FIP G3 Transmetteurs optiques FIPIO 2+n (1) Automates agent FIPIO Répéteurs Légende (1) : la quantité est fonction du nombre d’équipements sur le bus FIPIO, 2 équipements maximum par transmetteur (pour plus de détails, voir le manuel spécifique Hirschman). 50 Besoin matériel Exemple d’architecture avec bus FIPIO entièrement en armoire Illustration de l’exemple Cette figure présente un exemple d’architecture en armoire. 51 Besoin matériel Eléments Le tableau ci-après repère les éléments de cet exemple. Repère Références 52 Eléments 0 AA3-E•••••• Armoire électrique 1 TSX RKY •EX Rack extensible 2 TSX PSY •••• Module alimentation 3 TSX P57 453 Processeur Premium avec liaison FIPIO intégrée 4 TSX ETY 210 Coupleur réseau sous protocole Ethernet TCP-IP 5 TSX ETY 110 Coupleur réseau sous protocole Ethway 6 TSX SCY 21601 Module de communication Modbus Maître 7 TSX DSY ••K Module Sorties TOR 8 TSX DEY ••K Module Entrées TOR 9 TBX LEP 030 Module de communication FIPIO 10 TBX DES 1622 16 Entrées TOR partagées 11 TBX DSS 1625 16 Sorties TOR partagées 12 ABE-7 ACC11 (/10) Embases Entrées (/Sorties) 13 ABE-7•16••• Embases de câblage TELEFAST 14 LA4 DT2U Relais de temporisation 15 TSX SCP 114 Carte PCMCIA type III pour communication Modbus Esclave 16 Commerce Equipement de raccordement RJ45 entre deux TSX ETY 110 17 TSX FP •• Câble de raccordement sur bus FIPIO 18 TLX CDP x53 Câble de raccordement (x = 1, 2, 3 et 5 m) 19 ABF-H20H008 Câble de raccordement de 0,08 m Besoin matériel Exemple d’architecture avec bus FIPIO électrique Illustration Cette figure présente un exemple d’architecture avec bus FIPIO électrique. 53 Besoin matériel Eléments 54 Le tableau ci-après repère les éléments de cet exemple. Repère Référence Eléments 0 AA3-E•••••• Armoire électrique 1 TSX RKY •EX Rack extensible 2 TSX PSY •••• Module alimentation 3 TSX P57 353 Processeur Premium avec liaison FIPIO intégrée 4 TSX ETY 210 Coupleur réseau sous protocole Ethernet TCP-IP 5 TSX ETY 110 Coupleur réseau sous protocole Ethway 6 TSX FP ACC12 Connecteur SUB-D 9 points 7 TSX FP CCxxx Câble de dérivation 8 TSX FP ACC4 Boîtier de dérivation 9 TSX FP ACC6 Répéteur électrique 10 TSX FP ACC7 Terminaison de ligne 11 170 FNT 110 01 Communicateur FIPIO pour Momentum 12 170 ADM 350 10 Momentum E/S TOR 13 TBX ••• Modules d’entrées/sorties distantes 14 LA4 DT2U Relais de temporisation Besoin matériel Exemple d’architecture avec bus FIPIO optique Illustration Cette figure présente un exemple d’architecture avec bus FIPIO optique. 55 Besoin matériel Eléments 56 Le tableau ci-après repère les éléments de cet exemple. Repère Référence Eléments 0 AA3-E•••••• Armoire électrique 1 TSX RKY •EX Rack extensible 2 TSX PSY •••• Module alimentation 3 TSX P57 353 Processeur Premium avec liaison FIPIO intégrée 4 TSX ETY 210 Coupleur réseau sous protocole Ethernet TCP-IP 5 TSX ETY 110 Coupleur réseau sous protocole Ethway 6 TSX FP ACC12 Connecteur SUB-D 9 points 7 TSX FP CCxxx Câble de dérivation 8 TSX FP ACC4 Boîtier de dérivation 9 TSX P57 ••• Premium agent FIPIO 10 TSX FP ACC7 Terminaison de ligne 11 TSX FP CG 0•0 Câble paire torsadée 12 TSX FPP 10 Carte FIPIO agent 13 OZD FIP G3 Transmetteur optique HIRSCHMANN 14 LA4 DT2U Relais de temporisation Mise en oeuvre matérielle 7 Présentation Objet de ce chapitre Ce chapitre décrit la mise en oeuvre matérielle de l’architecture Warm Standby Premium. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Généralités 58 Câblage des contacts des relais alarme 59 Capteurs/actionneurs câblés aux modules en rack 60 Capteurs/actionneurs câblés aux modules sur bus FIPIO 62 Liaison Modbus Esclave sur RS485, 2 fils 63 Liaison Modbus Maître sur RS485, 2 fils 64 Module de communication TSX ETY 110 66 Module de communication TSX ETY 210 67 Transmetteur optique OZD FIP G3 Hirschmann 68 57 Mise en oeuvre matérielle Généralités Montage et câblage Le montage et le câblage d’une architecture Warm Standby Premium sont semblables à ceux d’une architecture Premium simple décrits dans le manuel de mise en oeuvre des automates Premium TSX DM 57 40 (Voir Manuel de mise en oeuvre Tome 1). Emplacement des modules Les automates A et B sont matériellement identiques. L’emplacement de chaque type de module dans les racks doit être le même pour les deux automates. Alimentation des automates Les alimentations des automates A et B doivent être indépendantes pour éviter un mode commun de défaillance. Un relais temporisé câblé sur l’alimentation de l’un des automates assurera la désynchronisation de démarrage, en cas de mise sous tension simultanée des deux automates. Ceci garantit à la mise sous tension, l’exclusivité des états Normal/Secours. Note : Le relais temporisé doit être câblé sur l’alimentation de l’automate qui a été choisi pour devenir l’automate Secours lors de la mise sous tension. 58 Mise en oeuvre matérielle Câblage des contacts des relais alarme Principe Le manuel de mise en oeuvre des automates Premium présente l'utilisation des contacts relais alarme pour l'asservissement des alimentations capteurs et pré-actionneurs. Pour le Warm Standby Premium, la station est constituée de deux racks principaux et éventuellement de plusieurs paires de racks d'extension. Pour garantir la disponibilité à la première défaillance, il convient de câbler les deux séries de relais alarme en parallèle. Illustration La figure suivante décrit le câblage des contacts des relais alarme. Contacts relais alarme RAL0A RAL0B RAL1A RAL1B RAL0A relais alarme du rack 0 de l'automate A RAL1A relais alarme du rack 1 de l'automate A RAL0B relais alarme du rack 0 de l'automate B RAL1B relais alarme du rack 1 de l'automate B Note : Ce câblage des relais alarme est à utiliser pour asservir les alimentations des pré-actionneurs pilotés par les sorties en rack et les sorties FIPIO. 59 Mise en oeuvre matérielle Capteurs/actionneurs câblés aux modules en rack Montage et interfaces préconisées Chaque capteur et actionneur est connecté en parallèle sur deux modules d'entrées ou de sorties. Module Sorties automate A Module Entrées Module Entrées automate B automate A (2) Embase TELEFAST (2) Embase ABE7 ACC11 (1) (2) Module Sorties automate B (2) Embase ABE7 ACC10 Capteurs Embase TELEFAST (1) Actionneurs (1) ABF-H20H008 (0,08 m) (2) TLX CDP 053 ou TLX CDP •03 Description des embases ABE7 ACC1• Le câblage du capteur ou actionneur est standard et se réalise suivant l'embase TELEFAST choisie. Les embases ABE7 ACC10 et ABE7 ACC11 ont une modularité de 16 voies. Elles sont entièrement passives et équipées de diodes anti-retour sur chacune des voies. Les modules d'entrées/sorties préconisés sont des modules à logique positive équipés de connecteurs HE 10. 60 Mise en oeuvre matérielle Autres montages Il est possible d'utiliser d'autres modules d'entrées/sorties TOR sans embase ABE7 ACC11 et ABE7 ACC10. Par exemple, quand des modules avec bornier à vis ou à logique négative sont mis en oeuvre. Dans ces cas, il est nécessaire de s'assurer de l'indépendance des voies, en utilisant par exemple des diodes anti-retour. 61 Mise en oeuvre matérielle Capteurs/actionneurs câblés aux modules sur bus FIPIO Principe Les capteurs et actionneurs reliés à des équipements sur bus FIPIO peuvent être de type analogique ou TOR (Tout ou Rien). Ces équipements ne sont pas redondés mais partagés. Le câblage des capteurs et actionneurs sur les Entrées/Sorties est standard au câblage préconisé pour les équipements de la gamme TBX et Momentum. 62 Mise en oeuvre matérielle Liaison Modbus Esclave sur RS485, 2 fils Principe La fonction Modbus Esclave se réalise à partir de la carte PCMCIA (TSX SCP 114). Cette carte peut être localisée soit dans l'unité centrale, soit dans le module TSX SCY 21601. Il est préférable que la polarisation du réseau soit réalisée par l'équipement Maître Modbus. Cette carte se raccorde avec le cordon TSX SCP CM 4030, dont le manuel de mise en oeuvre des automates Premium présente la description. Illustration La figure ci-après illustre une liaison Modbus Esclave sur RS485, 2 fils. TSX SCP 114 TSX SCA50 TSX SCP CM 4030 63 Mise en oeuvre matérielle Liaison Modbus Maître sur RS485, 2 fils Principe La fonction Modbus Maître se réalise à partir de la voie intégrée du module TSX SCY 21601. La liaison est de type RS485, 2 fils. Les modules étant redondés (un dans chaque automate), la polarisation du réseau devra être réalisée à partir des deux voies. De ce fait, le changement d’un module sera possible sans perturbation de la communication. Le cordon à utiliser est le TSX SCY CM 6030. L’adaptation de ligne est réalisée en positionnant sur ON le cavalier correspondant dans les boîtiers TSX SCA 50 d’extrémité de la ligne RS485. Illustration La figure suivante montre la liaison Modbus Maître sur RS485. Warm Standby Premium TSX SCY CM 6030 Equipement tiers TSX SCA 050 64 Automate A Automate B TSX SCY CM 6030 Mise en oeuvre matérielle Connexion Pour chacun des deux automates, le cordon TSX SCY CM 6030 est connecté ainsi : J1 470 Ω 0V 5 V 470 Ω Vert/Blanc 21 9 6 24 EMI- D(A) EMI+ D(B) Connecteur sur module TSX SCY 21601 Blanc/Vert 1 Orange/Blanc Blanc/Orange 4 D(A) 5 D(B) TSX SCA 050 65 Mise en oeuvre matérielle Module de communication TSX ETY 110 Règle Pour un fonctionnement optimal des modes de marches, il est impératif que le module TSX ETY 110 soit installé dans le même rack que le processeur. Identification des automates A et B A l'aide des roues codeuses des modules de communication TSX ETY 110, définir les adresses réseau NET et station STA des automates A et B. L'adresse réseau étant la même, c'est l'adresse station qui différencie les deux automates. Par exemple, configurer 1 pour la station A (automate A) et 2 pour la station B (automate B). Note : l'adresse réseau attribuée à la liaison inter-automates d'une architecture Warm Standby Premium doit être unique. Raccordement entre les deux modules de communication 66 Le raccordement point à point entre les deux modules de communication TSX ETY 110 peut s'effectuer au travers de l'interface AUI ou RJ45 des modules. Note : dans le cas d'un raccordement RJ45, il est possible d'utiliser un cordon de type "cascade". Ce dernier permet de raccorder directement les deux modules de communication TSX ETY 110 sans utiliser de concentrateur (HUB). Ce choix est à conditionner par la longueur du cordon et la sévérité électromagnétique requise. Mise en oeuvre matérielle Module de communication TSX ETY 210 Généralités La mise en oeuvre de la fonction Transparence d’adressage est réalisée par le module de communication TSX ETY 210 (Voir Module de communication TSX ETY 210, p. 311) sous protocole Ethernet TCP/IP. La mise en oeuvre et le câblage sont identiques à ceux du module de communication TSX ETY 110. Règle Lorsque le module TSX ETY 210 dialogue sur un même réseau physique avec des équipements tiers possédant des adresses logiques réseau (au sens X-Way) différentes, il est indispensable de placer le module TSX ETY 210 avant le module TSX ETY 110 (position la plus proche du processeur). Le module TSX ETY 210 doit être considéré par le processeur comme le module réseau principal. 67 Mise en oeuvre matérielle Transmetteur optique OZD FIP G3 Hirschmann Généralités L’alimentation des deux transmetteurs reliés aux automates Normal et Secours doit impérativement être secourue. Le manuel de mise en oeuvre des transmetteurs Hirschmann (TDM OZD 01•) explique comment raccorder une alimentation de secours sur un transmetteur. Sans cette précaution, la mise hors tension simultanée de ces deux transmetteurs provoque une situation où les deux automates deviennent arbitres du bus FIPIO actifs. Une défaillance simultanée de la communication interautomates ne garantirait plus l’unicité de l’état Normal. Cette précaution est optionnelle pour les autres transmetteurs de la boucle optique. Note : il est impératif de consulter le manuel de mise en oeuvre des transmetteurs Hirschmann (TSX DM OZD 01•) pour la modification des propriétés logicielles du bus FIPIO. Relais d’alarme 68 Le relais d’alarme qui équipe les transmetteurs indique les défauts suivants : l alimentation défectueuse, l dépassement des timings sur la communication FIPIO, l dépassement des timings sur la transmission optique. Cette information peut être câblée et utilisée par le programme applicatif. Lors d’une commutation Normal/Secours, le relais de chaque transmetteur peut se déclencher fugitivement. Mise en oeuvre matérielle Préconisations L’utilisation d’un transmetteur OZD dans une architecture WSBY nécessite les préconisations suivantes : l L’alimentation des deux transmetteurs reliés aux automates A et B doit impérativement être secourue. Sans cette précaution, sur défaillance de l’alimentation, les deux UC ont un arbitre de bus en RUN et la led FIP clignote à la fois sur l’automate Normal et l’automate Secours. l Lors d’une reconnexion d’une fibre optique (intervention de maintenance), vous devez raccorder les connecteurs RECEPTION avec les connecteurs EMISSION. Sans cette précaution, il peut se produire une commutation intempestive Normal/Secours. l Utilisez la vis de fixation du bornier d’alimentation des OZD pour éviter une déconnexion accidentelle. l Utilisez un chemin de câble différent pour les deux ports des fibres optiques afin d’éviter une coupure simultanée des 4 fibres. l Respectez le câblage des fibres optiques TSX FPJF 020 : l connecteur jaune sur le connecteur bleu et l connecteur bleu sur le connecteur jaune. l Les OZD reliés aux UC doivent être situées dans les mêmes armoires électriques. l Avant d’intervenir sur le bus FIPIO, vous devez "isoler" l’automate Secours. Ceci est réalisé soit en mettant hors tension cet automate, soit en déconnectant la prise intégrée FIPIO côté UC. Si cette précaution est respectée, la seconde préconisation devient inutile. 69 Mise en oeuvre matérielle 70 Mise en oeuvre logicielle III Présentation Objet de cet intercalaire Cet intercalaire décrit la mise en oeuvre logicielle d’une architecture Warm Standby Premium. Contenu de cette partie Cette partie contient les chapitres suivants : Chapitre Titre du chapitre Page 8 Pack logiciel 73 9 Développement d’une application 81 10 Préconisations de développement 105 11 Les DFB du pack logiciel 133 12 Les EF du pack logiciel 167 13 Spécificités de la régulation 179 14 Mise au point 211 71 Mise en oeuvre logicielle 72 Pack logiciel 8 Présentation Objet de ce chapitre Ce chapitre décrit le contenu du pack logiciel et son installation. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Description du pack logiciel 74 Installation du pack logiciel 75 73 Pack logiciel Description du pack logiciel Présentation du pack logiciel Le pack logiciel Enrichissement PL7 pour Warm Standby Premium contient tous les éléments PL7 nécessaires au fonctionnement et à l'exploitation d'un Warm Standby Premium. Il est présenté sous la forme d'un CD-ROM de référence TLX CD WSBY P40F. Contenu du pack logiciel Le CD pack logiciel contient : l trois fonctions d'échange entre les deux automates pour la mise à jour de la base de données (fournies sous la forme de DFB), l une famille Redondance proposant des fonctions élémentaires (EF) pour la mise à jour du contexte Grafcet et la régulation sur les automates TSX P57 353 et TSX P57 453, l la documentation du produit. Compatibilité logicielle Le pack logiciel V 4.0 s'installe et s'exécute sur une version égale ou supérieure à V4.0 de PL7 PRO. Ce pack logiciel permet d’utiliser les processeurs suivants : l TSX P57 353 et TSX P57 453 l TSX P57 452 (sans les EF régulation) Note : si vous utilisez le pack logiciel Warm Standby V1.1 avec un PL7 PRO V3.4 patch B, vous ne pourrez utiliser que le TSX P57 452 . 74 Pack logiciel Installation du pack logiciel Marche à suivre Etape La procédure d’installation est la suivante : Actions 1 Mettez le CD dans le lecteur de CD, D: par exemple 2 Dans le menu Démarrer choisissez la commande Exécuter. 3 Tapez D:SETUP et validez 4 Validez les écrans de choix 5 La procédure d’installation du pack logiciel est lancée. L’écran suivant est visualisé : Installation du Pack Logiciel Warm Standby Premium V4.0 Bienvenue... Bienvenue au programme d’installation du pack logiciel pour Warm Standby Premium. Ce programme enrichira les ateliers PL7 compatibles avec ce pack logiciel. Avant de démarrer l’installation,il est fortement recommandé de quitter les applications actives. Cliquez sur Annuler pour quitter temporairement l’installation et fermez les applications actives.Cliquez sur Suivant pour continuer l’installation. ATTENTION: Ce programme est protégé par copyright et par traités internationnaux. Toute reproduction ou distribution totale ou partielle de ce programme effectuée sans autorisation est illicite et expose le contrevenant à des poursuites judiciaires maximales. Suivant > Annuler 75 Pack logiciel Etape 6 Actions Dans la première boîte de dialogue choisissez la langue des composants logiciels liés à la redondance. Choix de la langue Choisissez une des langues ci dessous: Anglais Français <Précédent 76 Suivant > Annuler Pack logiciel Etape 7 Actions Une fois la langue d’installation choisie, la procédure d’installation recherche le dernier PL7 PRO installé sur le poste, de version 4.0 ou supérieure. S’il n’y en a aucun, la procédure d’installation est interrompue et la fenêtre suivante est affichée : Installation impossible ! x Il n’y a pas de PL7PRO V4.0 ou supérieur installés sur votre poste. L’installation est interrompue. OK Par contre, si les versions sont compatibles, une boîte de dialogue permet de visualiser le PL7 sur lequel la procédure d’installation va être lancée. Sélection des ateliers à enrichir... Le Pack Logiciel va enrichir l’atelier PL7 suivant. La version de cet atelier PL7 est V4.0 ou supérieure. PL7PRO Espace nécessaire: 37K Espace disponible: 289728K <Précédent Suivant > Annuler 77 Pack logiciel Etape 8 Actions Pour le PL7 sélectionné, la procédure d’installation recherche, dans le fichier Pl7.ini du PL7, l’emplacement du répertoire Pl7user. De même, elle recherche, dans le fichier Pl7sys.ini, l’emplacement du répertoire Oflib32 pour l’installation des EF. Le récapitulatif est alors affiché. Warm Standby Premium V4.0 Récapitulatif des choix avant l’installation des fichiers. Composants Chemins EF Redondance DFB Redondance [D:\OFLIB32] [D:\PL7USER] Attention ! si vous choisissez “Suivant”, vous ne pourrez plus revenir en arrière. <Précédent 78 Suivant > Annuler Pack logiciel Etape 9 Actions La procédure d’installation est ensuite lancée pour enrichir le logiciel PL7. Lorsque la procédure d’installation est terminée, la boîte de dialogue suivante est affichée. Installation terminée L’installation du pack logiciel pour Warm Standby Premium s’est correctement déroulée. Toute application ayant utilisée une fonction Redondance d’une version précédente doit être mise à jour. <Précédent Terminer 79 Pack logiciel 80 Développement d’une application 9 Présentation Objet de ce chapitre La mise en oeuvre d'une application pour le Warm Standby Premium doit respecter certaines règles de développement. Ce chapitre a pour objectif de décrire ces règles de développement. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Principe de programmation 82 Comment programmer une application Warm Standby Premium 83 Comment configurer une application Warm Standby Premium 84 Configuration du processeur 88 Configuration des sorties des modules en rack 89 Configuration des sorties des équipements sur bus FIPIO 90 Paramètrage du module TSX ETY 210 92 Structure de la Base de Données 93 Structuration du programme 98 Exécution des sections du programme 101 Ajout de la fonction redondance à une application 103 81 Développement d’une application Principe de programmation Généralités Les principes de programmation d'un Warm Standby Premium sont proches de ceux utilisés pour le développement d'une application d'un automate nonredondant. Néanmoins, la redondance introduit certaines particularités qui, si elles sont prises en compte dès le début de la programmation, restent négligeables dans la charge du développement. Note : Le programme est identique pour les automates A et B. Spécificités de programmation Les particularités de base d'un Warm Standby Premium concernent : l la prise en compte des états Normal/Secours dans l'exécution du programme, l le partage de la Base de Données entre les deux automates A et B, l la gestion des Entrées/Sorties redondées en rack, l la gestion des Entrées/Sorties partagées FIPIO. Préconisations de développement Des préconisations de développement existent lors de l'utilisation : l d'actionneurs à commandes impulsionnelles, l du Grafcet, l des fonctions de régulation, l des EF de régulation PID, l des EF de dialogue sous protocole Modbus Maître ou Ethernet TCP-IP, l de DFB, l de la commutation volontaire. 82 Développement d’une application Comment programmer une application Warm Standby Premium Marche à suivre Afin d’optimiser le développement d’une application, nous vous proposons de suivre la démarche suivante : Etape 1 Action Configurez la redondance. 2 Structurez la Base de Données. 3 Structurez le programme. 4 Installez les DFB d'échange. 5 Prenez en compte les préconisations de développement. 6 Développez l'application contrôle/commande du procédé. 7 Mettez au point l'application contrôle/commande du procédé. 8 Démarrez le Warm Standby Premium. 83 Développement d’une application Comment configurer une application Warm Standby Premium Marche à suivre Etape 1 Le tableau suivant donne la marche à suivre pour configurer une application Warm Standby Premium. Action A partir de la configuration matérielle de l'application PL7 : ajoutez le module de communication TSX ETY 110 utilisé pour la communication entre les deux automates. Ce module doît être installé dans le rack 0, pour un fonctionnement optimal des modes de marche. Configuration XMWI XTI.. TSX 57453 V5.0... 0 0 1 84 2 P S Y T S X 2 6 0 0 5 7 4 5 3 3 4 E T Y 1 1 0 >> Développement d’une application Etape 2 Action La configuration du module de communication TSX ETY 110 est la configuration proposée par défaut. TSX ETY 110 [RACK 0 POSITION 3] Configuration Désignation : COUPLEUR TCP/IP Ethway Configuration connexions Connexions ouvrables 8 Contrôle d’accès Res.Sta Adresse IP Protocol Accès 1 2 3 4 5 Configuration adresses IP Adresse IP par défaut Configurée Adresse IP Données Ethway 0 0 0 0 Masque sous-réseau 0 0 0 0 Adresse du Gateway 0 0 0 0 Bridge... Aucun Mots communs lecture Mots communs lecture/écriture Nb. mots/station 4 8 16 32 64 Configuration servie Configuration Ethernet Ethernet II Adresse réseau Avancé 802.3 0 SNMP ... Note : les adresses réseau/station sont établies par les roues codeuses en face avant du module. 3 Sur l'écran de configuration positionnez-vous sur le processeur. 85 Développement d’une application Etape 4 Action Double cliquez sur l'interface métier intégrée "comm" et l'écran suivant apparaît : TSX 57453 [RACK 0 POSITION 0] Configuration Désignation: PROCESSEUR TSX P 57453 VOIE 0 : VOIE 0 VOIE 0 VOIE 1 VOIE 99 Prise Terminal MAST Vitesse de Transmission 19200 Bits/s Type Maître Maître Délai d’Attente Données evénementielles 8 Nombre d’esclaves Esclave Adresse Serveur (AD0) 8 1 Nombre d’adresses Boucle de courant (PSR) Multipoint 5 Point à Point Données 7 bits 8 bits Parité Paire ms Stop 1 bit 2 bits Impaire Retard RTS/CTS X100 ms 0 Sans Porteuse (DCD) Sélectionnez la voie 99, spécifique au Warm Standby Premium pour un TSX P57 453 ou TSX P57 353 (voie 14 pour un TSX P57 452). TSX 57453 [RACK 0 POSITION 0] Configuration Désignation: PROCESSEUR TSX P 57453 VOIE 99 : VOIE 99 Communication pour la Redondance (Voie non configurée) 86 30 Par défaut 0 octet MAST Développement d’une application Etape 6 Action Configurez la voie 99 sur REDONDANCE. TSX 57453 [RACK 0 POSITION 0] Configuration Désignation: PROCESSEUR TSX P 57453 VOIE 99 : Communication pour la Redondance VOIE 99 REDONDANCE MAST Emplacement des coupleurs de communication Rack : 0 Position : 0 Adresse station des coupleurs de communication 7 Adresse station de l’automate A 0 Adresse station de l’automate B 0 Indiquez l'emplacement, dans le rack principal, du module de communication TSX ETY 110 utilisé pour la communication entre les deux automates. Cet emplacement est identique pour les automates A et B. Note : Pour un fonctionnement optimal des modes de marches de l'Architecture, il est nécessaire que le module TSX ETY 110 soit installé dans le même rack que le processeur. 8 Renseignez les adresses des stations A et B avec les mêmes adresses station que celles définies par les roues codeuses. 87 Développement d’une application Configuration du processeur Principe La tâche MAST doit obligatoirement être définie en mode "Périodique". La période devra tenir compte des temps pour les besoins de la redondance. 88 Développement d’une application Configuration des sorties des modules en rack Principe Les sorties TOR en rack doivent être paramétrées en repli à 0 pour assurer la continuité du pilotage actionneur sur défaillance d'un des deux automates. Le tableau suivant indique l’état dans lequel doivent être configurés les paramètres des modules de sorties. Paramètre Valeur Mode repli Repli Val. repli 0 Ce sont les valeurs par défaut. Illustration L’écran suivant montre un exemple de configuration de modules de sorties. TBX DSY 32T2K [RACK 0 POSITION 3] Configuration Désignation : 32S 24VCC, 0.1A CONN Voie 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Symbole S. Déf. Alim Actif Tâche MAST Réarmement Mode repli Programmé Repli MAST Programmé Repli Val. repli 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 89 Développement d’une application Configuration des sorties des équipements sur bus FIPIO Principe Les sorties des équipements FIPIO doivent être paramétrées en Maintien pour assurer la continuité du pilotage actionneur sur défaillance de l’un des deux automates. Le tableau suivant indique l’état dans lequel sont configurés les paramètres des modules de sorties. Configuration des sorties TBX TOR Paramètre Valeur Mode repli Maintien L’écran suivant montre un exemple de configuration de modules de sorties TBX TOR. TBX DSS 1622 [FIPIO 1 MODULE 0] Configuration Désignation : TBX7 EMB. 16SS 0,5A Voie 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Symbole Tâche MAST Réarmement Mode repli Automatique Maintien Automatique Val. repli Maintien Note : Pour certaines applications, le repli à zéro sur des sorties est plus judicieux que le repli à "maintien de la dernière valeur". 90 Développement d’une application Configuration des TBX analogiques L’écran suivant montre un exemple de configuration de modules de sorties des TBX analogiques. TBX ASS 200 [FIPIO7 MODULE 0] Configuration Désignation : 2 SORTIES ANALOG. ISOLEES Voie Tâche 0 MAST 1 Symbole Gamme +/- 10 V +/- 10 V Repli Valeur Note : Pour certaines applications, le repli à zéro sur des sorties est plus judicieux que le repli à "maintien de la dernière valeur". Configuration des sorties Momentum et IP67 Dans le cas des sorties TOR des Momentum et des sorties TOR des modules étanches IP67 le repli à zéro est le seul choix possible. Les sorties ainsi configurées seront à 0 durant le temps de la commutation. Un à-coup peut survenir sur les actionneurs correspondants. 91 Développement d’une application Paramètrage du module TSX ETY 210 Principe Le module TSX ETY 210 est un module optionnel dans une architecture Warm Standby Premium. Il permet la connexion : l à un réseau de profil Ethway supportant les services : l de mots communs, l de messages Uni-TE. l à un réseau de profil TCP/IP supportant les services : l de messagerie Uni-TE et Modbus, l de gestion SNMP. Si le module de communication est utilisé dans votre architecture, il nécessite un paramètrage particulier (Voir Module de communication TSX ETY 210, p. 311). 92 Développement d’une application Structure de la Base de Données Principe Pour une reprise correcte des commandes du procédé par l'automate Secours, la Base de Données doit contenir les informations suivantes : l les valeurs des sorties TOR des modules en rack, l les valeurs des entrées et des sorties TOR des embases sur bus FIPIO, les valeurs des entrées et des sorties analogiques des embases sur bus FIPIO, l les étapes Grafcet, l les états des données de temporisation, comptage et régulation, l les variables d'état, encore appelées variables rémanentes, propres à l'application. Une variable d'état est une variable dont la valeur dépend des cycles antérieurs (exemple : consignes diverses, modes de marche, télémesure, télésignalisation, ...). Illustration La figure suivante montre les informations élaborées par l’automate Normal. Automate Secours Automate Normal Valeurs des sorties TOR en rack Valeur des entrées/sorties sur bus FIPIO Etapes Grafcet actives Temporisations, comptages et régulation Variables d’état 93 Développement d’une application Echanges Les échanges s’effectuent par bloc de 507 mots de 16 bits maximum. La structure de la Base de Données est par conséquent, basée sur des blocs de 507 mots maximum contigus ou non. Mémoire automate Blocs constituant la Base de Données Nous distinguerons deux types de blocs : l le bloc de base, l les blocs d’extensions. 94 Développement d’une application Bloc de base Le bloc de base est indispensable pour le fonctionnement de l'architecture Warm Standby Premium. Il doit impérativement contenir les valeurs de l'ensemble des sorties élaborées par l'application à chaque cycle automate (sorties TOR en rack, sorties TOR et analogiques sur bus FIPIO) ainsi que l'image de l'ensemble des entrées du bus FIPIO. Dans le cas de l'utilisation du Grafcet, ce bloc de base doit contenir les états des étapes du Grafcet à chaque cycle automate. Le reste des mots inutilisés de ce bloc de base est libre pour l'échange des données de temporisation, comptage, régulation et des variables d'état. Valeurs des sorties TOR en rack Valeur des entrées/sorties TOR du bus FIPIO Bloc de base Valeur des entrées/sorties analogiques du bus FIPIO Etats des étapes Grafcet Valeurs des temporisations, de comptage et de régulation Valeurs des variables d’état 95 Développement d’une application Exemple de structuration d'un bloc de base Ce bloc est structuré en 4 parties : l La première contient les valeurs de sorties TOR en rack (128 mots réservés pour une configuration théorique maximale sur Premium de 2048 sorties). l La deuxième contient des états des étapes Grafcet (64 mots réservés pour une configuration théorique maximale Grafcet de 1024 étapes). l La troisième contient les valeurs des sorties TOR sur bus FIPIO (30 mots (un mot de 16 bits pour 16 sorties TOR) réservés pour une configuration avec 30 embases de 16 sorties, type bits pour TBX DSS 1625). l La quatrième contient les valeurs des entrées/sorties analogiques sur bus FIPIO (120 + 40 = 160 mots (un mot de 16 bits par voie analogique) réservés pour une configuration avec 20 embases de 6 entrées/2 sorties, type TBX AMS 620). Il n'y a qu'un seul bloc de base dans la structure de la Base de Données. Le DFB Ha_db_basic est utilisé dans l'application pour échanger ce bloc de base de l'automate Normal vers l'automate Secours. Note : La mise à jour, à chaque cycle automate, des données du bloc de base est à la charge de l'utilisateur. Blocs d’extensions Ces blocs contiennent les données applicatives (données devant être échangées entre les deux automates). Les blocs d'extension sont optionnels. Le nombre de blocs d'extension dans la structure de la Base de Données dépend de la quantité de données à échanger ; la limite étant entre 4 et 8 blocs. Cette limite est fonction du type d'échange utilisé pour chaque bloc. Les DFB Ha_db_cycle_opt et Ha_db_size_opt sont utilisés dans l'application pour échanger ces blocs d'extension. Pour sélectionner les données à échanger, il suffit d'indiquer à l'instance du DFB d'échange la zone de mots %MW à échanger en renseignant : l l'adresse du début du tableau, l l'adresse du début du tableau, sa longueur en nombre de mots et l'adresse destinataire (identique à l'adresse du début de tableau). 96 Développement d’une application Précautions Les données suivantes ne doivent pas se retrouver en chevauchement sur deux blocs : l les données de temporisation, de comptage ou de régulation, l les mots de longueur double %MD et les mots flottants %MF de la base de données, l les données Batch correspondant à une même recette. Parmi les variables d'état de l'application, il peut exister des données batch. Le batch dans un processus continu est un changement de paramètres de production. Pour éviter de mélanger des anciens et des nouveaux paramètres, la totalité des nouveaux paramètres devra être contenue dans un seul bloc de 507 mots maximum. Restrictions La Base de Données ne peut pas contenir plus de 4563 mots (507 mots dans le bloc de base et 8 blocs d'extension de 507 mots). Exemple de structuration de la Base de Données Valeurs des sorties TOR : 128 mots Etats des étapes Grafcet : 64 mots Bloc de base Valeurs des sorties TOR sur bus Fipio : 30 mots Valeurs des E/S analogiques sur bus FIPIO : 120/40 mots Zone libre utilisateur : 125 mots Temporisation : 300 mots Bloc d’extension Données de comptage : 307 mots Consignes : 307 mots Bloc d’extension Données batch : 200 mots 97 Développement d’une application Structuration du programme Principe Le programme de la tâche MAST est structuré selon les spécificités de l’atelier logiciel PL7. Suivre les instructions suivantes : Etape 1 Action Structurer le programme en sections : l Fonct_procédé_1...n : pour le programme applicatif qui doit se dérouler avant la section Grafcet "Graphes". l Graphes : pour le Grafcet (Chart, Prl, Post et Macro-étapes). l Fonct_procédé_m ... x : pour le programme applicatif qui doit se dérouler après la section Grafcet. 2 3 Conditionner les sections précédentes de l’application avec l’état Normal de l’unité de traitement (%SW60:X0). Créer une section Cdes_sorties : l L’objectif est de ne pas positionner directement les sorties à plusieurs endroits de l’application mais uniquement dans la section Cdes_sorties. l Le principe est d’associer à chaque Sortie une variable intermédiaire. l Cette variable intermédiaire est de type binaire pour les sorties TOR et correspond à un bit de mot du bloc de base. l Cette variable intermédiaire est de type mot de 16 bits pour les sorties analogiques et correspond à un mot de 16 bits du bloc de base. l Le programme applicatif positionnera les variables intermédiaires. En fin de programme, ces variables intermédiaires positionneront les sorties. Remarque : cette section n’est pas conditionnée. 98 Développement d’une application Etape 4 Action Créer les sections suivantes, spécifiques à la redondance : l Entrées_fipio qui associe à chaque entrée sur bus FIPIO une variable l l l l intermédiaire. l Cette variable intermédiaire est de type binaire pour les entrées TOR et correspond à un bit de mot du bloc de base. l Cette variable intermédiaire est de type mot de 16 bits pour les entrées analogiques et correspond à un mot de 16 bits du bloc de base. L’objectif est de prendre en compte dans l’automate Normal la valeur de l’entrée sur bus FIPIO que si cette entrée ne présente pas de défaut. L’application doit utiliser uniquement cette variable intermédiaire. Remarque : cette section est conditionnée par l’état Normal. Exemple : pour un TBX AMS 620 positionné au point de connexion 6, %MW1400 est le mot de la Base de données associé à l’entrée %IW\1.2.6\0.0. L’équation de prise en compte de la valeur de l’entrée sera de la forme suivante IF NOT %IW\1.2.6\0.0.err THEN %MW1400 :=%IW\1.2.6\0.0; END_IF; Bdd_vers_api qui doit regrouper les instructions de positionnement des variables de l’automate à partir des informations de la Base de Données (BDD). Remarque : cette section est conditionnée par l’état Secours. Api_vers_bdd qui doit regrouper les instructions de positionnement de la Base de Données (BDD) à partir des variables de l’automate. Remarque : cette section est conditionnée par l’état Normal. Les sections Bdd_vers_api et Api_vers_bdd sont nécessaires seulement dans les cas ou du Grafcet (ou de la régulation) est utilisé ou si certaines informations de la Base de Données doivent être mises en correspondance avec d’autres variables de l’application. Remarque : cette section est conditionnée par l’état Secours. Si de la régulation est utilisée dans l’application (soit par les EF, soit par les voies de régulation du processeur), il sera nécessaire de créer une section complémentaire "Régulation_pid" exécutée avant la section "Dfb_redondance". Cette section régulation permettra de transférer certains mode de marche ou cas particuliers. Remarque : cette section n’est pas conditionnée. Dfb_redondance qui doit contenir les DFB d’échange pour la redondance. La section Dfb_redondance est obligatoire pour permettre l’échange de la Base de Données. Remarque : cette section n’est pas conditionnée. 99 Développement d’une application Remarque La seule section obligatoire, pour l’architecture Warm Standby Premium, est Dfb_redondance pour permettre l’échange de la Base de Données. Les sections Bdd_vers_api et Api_vers_bdd sont nécessaires dans les cas : l d’utilisation Grafcet, l d’utilisation de la régulation, l ou si certaines informations de la Base de Données doivent être associées à des variables de l’application. L’ordre de scrutation des sections spécifiques à la redondance et de la section Cdes_sorties est à respecter. Note : Pour les sections Api_vers_bdd et Bdd_vers_api, un mot %MW de la BDD peut être une compilation d’un ensemble d’informations binaires correspondant à des variables n’appartenant pas à la BDD. Il est nécessaire dans ce cas de mettre en correspondance celles-ci. Par exemple, dans le cas de temporisation (FTON) l’EF utilise comme bit d’activation le bit %M0. L’information correspond dans la BDD au bit %MW1300:X0. On écrira dans la section Api_vers_bdd : %MW1300:X0:=%M0 ; On écrira dans la section Bdd_vers_api : %M0:=%MW1300:X0; Exemple La figure suivante montre un exemple des sections de programme PL7. Warm Standby Premium Configuration Programme Tâche Mast Sections Entrées_fipio Bdd_vers_api Fonct_procédé_1 Fonct_procédé_2 Fonct_procédé_3 Fonct_procédé_n Graphes Prl G7 Chart LD LD Post Fonct_procédé_m Fonct_procédé_... Fonct_procédé_x Api_vers_bdd Dfb_redondance Cdes_sorties 100 Développement d’une application Exécution des sections du programme Mode Normal En respectant les préconisations, l'état des sections sur l'automate en mode Normal est le suivant : Warm Standby Premium Configuration Programme Tâche Mast Sections Entrées_fipio Bdd_vers_api Fonct_procédé_1 Fonct_procédé_2 Fonct_procédé_3 Fonct_procédé_n Graphes Prl G7 Chart LD LD Post Fonct_procédé_m Fonct_procédé_... Fonct_procédé_x Api_vers_bdd Dfb_redondance Cdes_sorties section inactive section active 101 Développement d’une application Mode Secours En respectant les préconisations, l'état des sections sur l'automate en mode Secours est le suivant : Warm Standby Premium Configuration Programme Tâche Mast Sections Entrées_fipio Bdd_vers_api Fonct_procédé_1 Fonct_procédé_2 Fonct_procédé_3 Fonct_procédé_n Graphes Prl G7 Chart LD Post Fonct_procédé_m Fonct_procédé_... Fonct_procédé_x Api_vers_bdd Dfb_redondance Cdes_sorties section inactive section active 102 Développement d’une application Ajout de la fonction redondance à une application Présentation L'application et l'atelier logiciel PL7 doivent être de version V3.4 patch B pour le pack logiciel V1.1 et de version 4.0 ou supérieure pour le pack logiciel V4.0. Opérations préalables Si votre configuration logicielle n’est pas à jour, il est possible de mettre à jour l'application par : l l'installation de l'atelier logiciel PL7 de version V4.0, l la mise à jour du catalogue des Entrées/Sorties de l'application "cette opération est proposée automatiquement par l'atelier logiciel PL7 lorsqu'elle est nécessaire", l la reconstitution des références croisées de l'application "cette opération est faite automatiquement par l'atelier logiciel PL7 lorsqu'elle est nécessaire". Ajout de la fonction redondance Cette opération se fait par : l l'installation du pack logiciel redondance V4.0 sur un PL7 V4.0, l la mise à jour des fonctions en bibliothèque (menu Outils/Bibliothèques/ Onglet EF et sur chaque famille signalée en rouge, cliquez sur le bouton "Mettre à jour la famille"), l la vérification de la version du processeur (V3.3), ou le changement du type du processeur pour un processeur de version V5.0 ou supérieure, l la vérification de la version logicielle du processeur : V3.5 IE 85 ou supérieure (avec OS Loader par exemple). Ces points étants vérifiés, l'ajout de la fonction redondance est possible : paramétrage de la voie 14 ou 99 selon le type de processeur, l installation des DFB d’échange, l ajout et conditionnement des sections spécifiques. l 103 Développement d’une application 104 Préconisations de développement 10 Présentation Objet de ce chapitre Ce chapitre décrit les préconisations de développement du Warm Standby Premium. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Utilisation des EF temporisation (FTON, FTOF, FTP) 106 Utilisation du Grafcet 107 Utilisation de la régulation 108 Actionneurs à commandes impulsionnelles 110 Les EF de régulation PID 114 Les EF de dialogue sous protocole Modbus 116 Les EF de dialogue sous protocole Ethernet 117 Les fonctions DFB 120 La commutation volontaire 121 Agents FIPIO Premium et Micro 122 Sorties TOR du bus FIPIO avec repli à 0 127 Les éléments interdits 129 Les éléments déconseillés 130 Réglage des périodes des tâches 131 105 Préconisations de développement Utilisation des EF temporisation (FTON, FTOF, FTP) Présentation 106 Deux préconisations sont à suivre lors de l’utilisation des EF temporisation : l Les variables ET et PRIV de ces EF doivent correspondre à des variables de la Base de Données. Ces variables seront échangées de l’automate Normal vers l’automate Secours pour assurer une mise à jour de ce dernier. l La scrutation de ces EF doit être conditionnée par l’état Normal : l soit une section conditionnée par l’état Normal regroupant toutes les EF Temporisation de l’application, l soit chaque ligne de programme EF Temporisation conditionnée par l’état Normal. Préconisations de développement Utilisation du Grafcet Présentation Pour une commutation sans à-coup d’un automate à l’autre, l’automate Normal doit envoyer au Secours les étapes actives du Grafcet à chaque cycle. Deux EF, Get_stat_chart et Set_stat_chart, sont fournies avec le pack logiciel "Warm Standby Premium" pour : l récupérez les étapes actives de l’automate Normal et les sauvegarder dans la Base de Données avec la fonction Get_stat_chart, l prépositionnez le Grafcet de l’automate Secours à partir des informations sauvegardées dans la Base de Données avec la fonction Set_stat_chart. L’appel de l’EF Get_stat_chart est à réaliser dans la section Api_vers_bdd. L’appel de l’EF Set_stat_chart est à réaliser dans la section Bdd_vers_api. 107 Préconisations de développement Utilisation de la régulation Présentation 108 L’utilisation des boucles de régulation intégrées des processeurs TSX P57 453 et TSX P57 353 dans une architecture Warm Standby Premium 4.0 demande de respecter les conseils suivants : l Les objets analogiques utilisés par le boucles de régulation sont obligatoirement situés sur le bus FIPIO, c’est la seule manière de partager ces voies entre les deux automates. l Les voies de régulation doivent être déclarées avant l’écriture du programme mettant en oeuvre les EF Get_param_clc et Set_param_clc car ces deux fonctions utilisent les objets langage des voies. l Les EF Get_param_clc et Set_param_clc ne sont utilisables que pour les fonctions de régulation intégrées dans les processeurs TSX P57 353 et TSX P57 453 V5.0 ou supérieure. l Attention : en régulation, la voie 4 correspond au régulateur 1, la voie 5 au régulateur 2 ... l Attention également à la notion de voie de régulation et de boucle de régulation. Pour une voie de régulation il peut y avoir 3 boucles (3 boucles simples par exemple) ; soit au maximum 60 boucles pour un processeur TSX P57 453 et 45 boucles pour un TSX P57 353. Par conséquent, au maximum 720 variables périodiques peuvent être échangées. Pour préserver l’intégrité des données entre les deux automates, une table de données ne doit pas être envoyée par deux DFB. l Les paramètres du Programmateur de consigne sont transférables mais il n’existe pas de mot de commande pour cette fonction. Le restant de la mise en oeuvre est à la charge de l’applicatif pour un fonctionnement correct : basculement de profil, des modes de marche et de suivi. l La fonction Consigne suiveuse n’est pas utilisable car alors la consigne de l’automate Secours est instable. l Le report des modes de marche (lancement, arrêt et acquittement) de l’autoréglage sur toutes les boucles n’est pas assuré sur l’automate Secours. l L’utilisation des commandes Simulation Mesure et Simulation Feed Forward est déconseillée dans une architecture Warm Standby. Les commandes ne sont pas transmises à l’UC Secours. l L’utilisation de la fonction Sauvegarde paramètres n’est pas reportée automatiquement dans l’automate Secours. l L’utilisation des sorties TOR Raise, Lower et PWM sur des cartes de sortie en rack peut provoquer une différence de comportement si les durées d’activation sont très courtes (Voir Actionneurs à commandes impulsionnelles, p. 110). l La synchronisation des segments d’un programmateur de consigne n’est assurée que si les deux UC de l’architecture sont en RUN avant le déclenchement du profil ou si une commande INIT a été lancée auparavant. Dans tous les autres cas, la synchronisation n’est pas assurée. Préconisations de développement l L’utilisation d’un Magelis sur FIPIO dans une architecture Warm Standby est possible. Lors de la commutation d’architecture, on peut éventuellement observer une perte de dialogue momentanée de 4 à 5 secondes. Note : en mode connecté, il est déconseillé de modifier la configuration des régulateurs. Note : si une commutation Normal/Secours intervient lors d’une phase d’autoréglage sur un correcteur, les résultats fournis peuvent être incohérents. Note : pour obtenir une commutation Normal/Secours sans à-coup sur les régulateurs, l’option SANS A COUP doit avoir été sélectionnée sur chacun d’eux. Note : la fonction Tracking provoque le retour au mode de marche précédent. Si une commutation Normal/Secours survient en cours de Tracking, les boucles concernées devront être mises en mode Auto après l’arrêt de la fonction. Note : Le plus grand soin doit être apporté à l’indication des adresses des tables de paramètres de régulation. En cas d’erreur, des risques de dysfonctionnement de l’application peuvent survenir. Utilisation des EF Pour mettre à jour les paramètres des voies de régulation transférés entre les deux automates par les DFB, il existe deux EF : Get_param_clc et Set_param_clc. l Get_param_clc récupère les paramètres de la voie de régulation précisée et les stocke dans une table de mots %MW. l Set_param_clc recopie la zone de mots %MW dans les paramètres de la voie précisée. L’appel de l’EF Get_param_clc s’effectue dans la section Api_vers_bdd. L’appel de l’EF Set_param_clc s’effectue dans la section Bdd_vers_api. 109 Préconisations de développement Actionneurs à commandes impulsionnelles Présentation Pour les modules en rack, les sorties TOR sont redondées de façon massive par le câblage d’un OU logique des sorties de l’automate Normal et des sorties de l’automate Secours. Le résultat d’une commande impulsionnelle est fonction du temps de l’impulsion et du retard d’application par l’automate Secours des sorties TOR envoyées par l’automate Normal. Les différentes situations sont illustrées ci-dessous. Illustration 1 Pour une commande impulsionnelle à logique positive, avec le retard inférieur à Timpulsion. L’impulsion est modifiée ainsi : Timpulsion Sur automate Normal retard Timpulsion Sur automate Secours Timpulsion+retard Résultat “OU logique” des sorties 110 Préconisations de développement Illustration 2 Pour une commande impulsionnelle à logique positive, avec le retard supérieur à Timpulsion. L’impulsion est modifiée ainsi : Timpulsion Sur automate Normal retard Timpulsion Sur automate Secours Timpulsion Timpulsion Résultat “OU logique” des sorties 111 Préconisations de développement Illustration 3 Pour une commande impulsionnelle à logique négative, avec le retard inférieur à Timpulsion. L’impulsion est modifiée ainsi : Sur automate Normal Timpulsion retard Timpulsion Sur automate Secours Résultat “OU logique” des sorties 112 Timpulsion -retard Préconisations de développement Illustration 4 Pour une commande impulsionnelle à logique négative, avec le retard supérieur à Timpulsion. L’impulsion est modifiée ainsi : Sur automate Normal Timpulsion retard Sur automate Secours Timpulsion Résultat “OU logique” des sorties Si des sorties TOR en rack sont utilisées pour des commandes impulsionnelles, il est nécessaire de déterminer le résultat effectif de la commande en fonction du temps de l’impulsion et du retard d’application des sorties. La valeur du retard dépendra des performances globales de l’architecture Warm Standby Premium (Voir Performances et Limites, p. 279). Si le résultat n’est pas tolérable (double-impulsion ou masquage de l’impulsion), il est conseillé d’utiliser une sortie sur bus FIPIO pour réaliser la commande impulsionnelle. 113 Préconisations de développement Les EF de régulation PID Présentation Pour une commutation sans à-coup d'un automate à l'autre, les EF de régulation PID doivent être exécutées dans les deux automates. Dans l'automate Secours, les EF de régulation PID sont alors forcées en mode manuel. Les données mises à jour sont : l OUT : Sortie analogique du PID, l AUTO : Mode de marche du PID (0 = manuel, 1 = automatique), l OUT_MAN : Valeur de la Sortie du PID, l PV : Valeur de la mesure du PID, l SP : Valeur de la consigne du PID. Procédure La procédure est la suivante : Phase Description 1 Créer une section Regulation_pid non conditionnée. Cette section contiendra l'ensemble des équations des EF de régulation PID. 2 Pour chaque EF de Régulation PID : Réserver 4 variables de la Base de Données : %MWX (mesure), %MWY (consigne) et %MWz (OUT) et %MWT:Xi (mode de marche du PID). 3 Développer les instructions suivantes : l L’automate Normal recopie la Sortie de son PID (OUT) dans la variable %MWz de la Base de Données, la mesure dans la variable %MWX et la consigne dans la variable %MWy. l L'automate Secours recopie la variable %MWz de la Base de Données sur le paramètre OUT_MAN de l’EF PID (2ème mot du tableau PARA), la variable %MWx sur l'entrée mesure (%MWPV), la variable %MWY sur le paramètre SP (1er mot du tableau PARA). 4 Conditionner l’entrée AUTO de l’EF PID par l’état Normal. Exemple : IF Secours THEN %MWPV:=%MWX;%MWSP:=%MWY;%MWSP+1:=%MWz;Mode_op:=%MWT:Xi; END_IF; Mode:=Mode_op AND Normal; PID ('TC100','Degres',%MWPV,%MWOUT, Mode, %MWSP:43); IF Normal THEN %MWx:=%MWPV;%MWY:=%MWSP;%MWz:=%MWOUT;%MWT:Xi:=Mode_op; END_IF; 114 Préconisations de développement Note Si vous désirez que la modification des paramètres de réglage du PID (Kp, Ti,...) soit propagée dans l'automate Secours, il suffit de réserver davantage de variables dans la Base de Données en gérant la mise à jour de la même manière que pour le paramètre SP. 115 Préconisations de développement Les EF de dialogue sous protocole Modbus Maître Modbus Dans une architecture Warm Standby Premium, seul l’automate en état Normal a le droit d’émettre des requêtes. Dans ce but, il est nécessaire de conditionner l’émission des requêtes avec l’état Normal de l’automate (%SW60:X0:=1). Le temps du time out de l’EF doit être supérieur à : (nombre de réitération + 1) x délai de réponse. La configuration par défaut d’une voie Modbus est de 3 réitérations et 1 seconde de délai de réponse. Le time out de l’EF doit donc être supérieur ou égal à 4 secondes. Exemple : IF %SW60:X0 THEN (* Etat NORMAL *) IF NOT %MW100:X0 THEN (* Bit d’activité *) %MW102:=50; (* Time out de l’EF = 5s. *) READ_VAR(ADR#6.0.1,’%MW’,150,4,%MW150:4,%MW100:4); END_IF; END_IF; Maître Modbus hors Warm Standby Premium Un automate qui émet des requêtes Modbus vers un Warm Standby Premium doit respecter certaines contraintes de configuration. En effet, lors de la commutation du Warm Standby Premium, le maître Modbus peut voir disparaître l’esclave du Warm Standby Premium pendant un certain temps. Pour ne pas avoir d’erreur de communication, il est nécessaire d’ajuster le délai de réponse en fonction de la durée de cette absence. Cet ajustement doit tenir compte du temps nécessaire à la commutation Normal/ Secours du Warm Standby Premium. Exemple : Pour un temps de commutation du Warm Standby Premium de 1 seconde, il faut paramétrer le délai de réponse à 2 secondes et le nombre de réitérations à 3. Ce qui donne un time out de l’EF égal à 8 secondes. IF NOT %MW100:X0 THEN(* Bit d’activité *) %MW102:=80; (* Time out de l’EF = 8s. *) READ_VAR(ADR#6.0.1,’%MW’,150,4,%MW150:4,%MW100:4); END_IF; END_IF; Esclave Modbus 116 Dans une architecture Warm Standby Premium, la fonction MODBUS esclave est inhibée dans le SECOURS. Préconisations de développement Les EF de dialogue sous protocole Ethernet Client Ethernet dans une architecture Warm Standby Premium Dans une architecture redondante, seul l’automate en état NORMAL a le droit d’émettre des requêtes. Il est donc nécessaire de conditionner l’émission des requêtes avec l’état Normal de l’automate (%SW60:X0:=1). Dans ce cas, il n’y a pas de contraintes à respecter pour attribuer la valeur du Time out de l’EF Client Ethernet. Exemple IF %SW60:X0 THEN (* Etat NORMAL *) IF NOT %MW100:X0 THEN (* Bit d’activité *) %MW102:=20; (* Time out de l’EF = 2s. *) READ_VAR(ADR#{2.3}SYS,’%MW’,150,4,%MW150:4,%MW100:4); END_IF; END_IF; 117 Préconisations de développement Client Ethernet hors Warm Standby Premium Un automate qui émet des requêtes vers un Warm Standby Premium doit respecter certaines contraintes de programmation. En effet, lors de la commutation du Warm Standby Premium, le client Ethernet peut voir disparaître le serveur du Warm Standby Premium pendant un certain temps. Pour éviter de bloquer la pile TCP-IP du client, il est nécessaire d’arrêter les échanges pendant la durée de l’absence du serveur du Warm Standby Premium. Deux cas sont possibles : l Le coupleur Serveur a pris en compte une requête, puis il commute. Cette requête est perdue par le Serveur lors de sa commutation. Le Client ne reçoit jamais de réponse et l’EF client détecte alors un Time Out. l Le coupleur Client émet une requête vers le coupleur Serveur qui a déjà débuté sa commutation. L’EF client reçoit alors une réponse immédiate indiquant une erreur "connexion non opérationnelle" (le bit d’activité de l’EF repasse à 0). Dans ce cas, Il est nécessaire de gérer une temporisation avant de relancer l’émission de la requête suivante. La valeur du time out de l’EF et de la temporisation doit tenir compte des 3 éléments suivants : l Temps nécessaire à la commutation Normal/Secours du Warm Standby Premium. l Temps de fermeture des connexions TCP-IP (5 secondes maximum). l Temps de commutation de l’adresse IP du TSX ETY 210 (2,5 secondes maximum). Exemple : IF NOT %MW100:X0 AND NOT %M101 THEN %MW101:=TRUE %MW102:=85; (* Time out de l’EF = 8,5s. *) READ_VAR(ADR#{2.3}SYS,’%MW’,150,4,%MW150:4,%MW100:4); END_IF; 118 Préconisations de développement (* Recopie du bit d’activité pour la gestion du front descendant *) %M102:=%MW100:X0; (* Si on a un code réponse différent de 16#0000 et de 16#0001, on lance une temporisation de 8,5s (temps de basculement) avant de renvoyer une nouvelle requête. *) IF FE %M102 AND (%MW101=16#0000 OR %MW101=16#0001) THEN (* CR OK *) %M101:=FALSE; (* On valide le prochain échange *) ELSE IF FE %M102 AND %MW101>16#0001 THEN(* toutes les autres erreurs *) %M0:=1; (* Validation d'une temporisation de 8,5s *) END_IF; (* Temporisation *) FTON (%M0,850,%M1,%MW1,%MD2); IF %M1 THEN (* En fin de temporisation, les échanges sont relancés *) %M0:=FALSE; %M101:=FALSE; END_IF; 119 Préconisations de développement Les fonctions DFB Présentation Pour le développement de vos DFB, vous pouvez utiliser sans aucune contrainte : l Les variables de type Entrée, Entrée/Sortie et Publique. l Les variables de type Privé lorsqu'elles sont calculées avant d'être utilisées. l Les variables de type Sortie lorsque la valeur calculée lors de l'exécution précédente n'est pas utilisée pour le calcul de la nouvelle valeur. Les variables d'état propres à l'algorithme implémenté devront faire partie de la Base de Données. 120 Préconisations de développement La commutation volontaire Présentation Le bit système %S60 commande la commutation volontaire. Pour activer la commande, il est nécessaire de positionner à 1 le bit %S60. La fonction Redondance remet automatiquement à 0 le bit %S60 après prise en compte de la commande. Cette dernière peut être activée soit par dialogue opérateur soit par applicatif. Dans ce dernier cas, il est recommandé de positionner le bit %S60 par une commande impulsionnelle dans une section non conditionnée. Pour éviter une commutation volontaire alors que le Secours se trouve dans un état plus dégradé que le Normal, des contrôles sont effectués en permanence. Ces contrôles permettent : l De positionner une variable diagnostic "Automate Secours Inapte à devenir Normal" (%SW60:X11) dans les cas suivants : l automate Secours en STOP ou HALT, l problème de communication entre un module TSX ETY 210 du Normal et le module TSX ETY 210 redondé du Secours, l défaillance d'au moins un des modules TSX ETY 210 du Secours, l problème de communication entre les deux automates (impossibilité du Normal de récupérer le diagnostic du Secours et/ou d'échanger la Base de Données), l défaillance grave du bus FIPIO sur le Secours. L'information "Automate Secours Inapte à devenir Normal" est élaborée uniquement dans l'automate Normal. Elle peut conditionner l'équation de demande de commutation volontaire. l D'empêcher l'action de commuter sur une demande de commutation volontaire dans les cas suivants : l problème de communication entre les deux automates (impossibilité du Normal à récupérer le diagnostic du Secours), l défaillance grave du bus FIPIO sur le Secours, l défaillance d'un module TSX ETY 210 du Secours, l automate Secours est dans un mode de fonctionnement dégradé par rapport à celui du Normal (exemple : Normal en RUN, Secours en Stop ou Halt). Note : La demande de commutation peut être réalisée soit dans l'automate Normal soit dans l'automate Secours. Dans ce dernier cas, en plus des conditions citées ci-dessus, la commutation sera effective si la communication entre les deux automates est correcte (l'automate Secours récupérant le diagnostic du Normal). 121 Préconisations de développement Agents FIPIO Premium et Micro Introduction Un automate agent FIPIO est un automate disposant d’une carte PCMCIA TSX FPP 10 installée dans l’emplacement de communication du processeur et reliée à un bus FIPIO. Pour l’automate Normal qui est le gestionnaire du bus FIPIO, l’automate agent est géré comme un module d’entrées/sorties TBX. L’automate agent est ainsi repéré par une adresse sur le bus FIPIO définie lors de la configuration du bus FIPIO. Il est accédé par une syntaxe spécifique à ce type d’équipement. Note : le comportement des agents FIPIO Micro est identique à celui des agents FIPIO Premium. Toutes les remarques et préconisations concernant les agents FIPIO Premium sont applicables aux agents FIPIO Micro. Configuration de l’agent FIPIO Pour l’automate agent, l’adresse est définie lors de la configuration de l’application de l’agent, par l’intermédiaire de l’écran de communication de la voie 1. TSX 57253 [RACK 0 POSITION 0] Configuration Désignation: PROCESSEUR TSX P 57253 VOIE 1 : TSX FPP 10 CARTE PCMCIA FIPIO VOIE 1 FIPIO AGENT MAST Adresse du point de raccordement 1 Adresse de début de table 0 %MW Cet écran permet la saisie : l de l’adresse du point de raccordement (identique à celui défini dans la configuration du bus FIPIO de l’automate gestionnaire), l de l’adresse de début d’une table de 64 mots %MW consécutifs de l’automate agent, permettant l’échange de données. 122 Préconisations de développement Syntaxe des données échangées Chaque automate agent utilise 64 mots %MW consécutifs pour échanger les données périodiques. Les 32 premiers mots sont utilisés pour transmettre les informations de l’agent vers le gestionnaire. Pour l’agent, ce sont les mots de %MW x à %MW x+31 (avec x adresse de début de la table d’échange). Ils sont vus par le gestionnaire comme les mots d’entrées %IW \ p.2.c \ 0.0.i avec : l i de 0 à 31, l p : position du processeur dans le rack (0 ou 1), l c : numéro du point de connexion FIPIO. Les 32 suivants sont utilisés pour recevoir les informations provenant du gestionnaire. Pour l’agent, ce sont les mots de %MW x+32 à %MW x+63. Ils sont vus par le gestionnaire comme les mots de sorties %QW \ p.2.c \ 0.0.i avec : l i de 0 à 31, l p : position du processeur dans le rack (0 ou 1), l c : numéro du point de connexion FIPIO. 123 Préconisations de développement Exemple Sur le bus FIPIO d’une architecture Warm Standby Premium se trouve un automate agent au point de connexion 7. Pour cet automate agent, l’adresse de début de table est %MW0. La correspondance entre les mots de l’architecture et ceux de l’automate agent est la suivante : Automate Normal du Warm Standby Premium Bus FIPIO 124 %IW\0.2.7\0.0.0 %MW0 ... ... %IW\0.2.7\0.0.31 %MW31 %QW\0.2.7\0.0.0 %MW32 ... ... %QW\0.2.7\0.0.31 %MW63 Automate agent 7 Préconisations de développement Programmation pour les automates Normal/Secours Recommandations l Il est recommandé de stocker les valeurs à échanger avec l’automate agent dans la Base de Données. l La lecture des équipements doit être conditionnée par l’absence d’erreur FIPIO pour ce point de connexion. l Le procédé doit utiliser en permanence la dernière valeur correcte lue pour obtenir un maintien. Exemple Ecriture de l’automate Normal vers l’automate agent Le mot %MW1264 de la Base de Données contient la valeur à envoyer vers l’automate agent. L’envoi est réalisé par cette instruction localisée dans la section Cdes_sorties : %QW\0.2.7\0.0.0:=%MW1264; l Lecture de l’automate agent par l’automate Normal. La valeur en provenance de l’automate agent est stockée dans le mot %MW1267 de la Base de Données. La lecture se fait par cette séquence localisée dans la section Entrées_FIPIO : (* SI pas d’erreur pour ce point de connexion *) IF NOT %I\0.2.7\0.0.ERR THEN (* ALORS lecture du %MW0 de l’agent n°1 et stockage dans %MW1267 *) %MW1267:=%IW\0.2.7\0.0; END_IF; (* Ce procédé utilise en permanence la dernière valeur correcte lue pour le module n°9*) %QW9.0:=%MW1267; l 125 Préconisations de développement Programmation pour l’automate agent FIPIO Recommandation La mise à disposition de valeurs pour l’automate Normal doit être faite en permanence. Exemple La mise à disposition de valeurs se fait par l’instruction : %MW0:=%IW3.0; (* Initialisation du mot %MW0 mis à disposition avec l’entrée analogique du module n°3 de l’automate agent *) l l 126 La réception de valeurs transmises par l’automate Normal doit être conditionnée par le contrôle de validité des valeurs transmises. Ce contrôle se fait par examen du mot système %IW0.1 de l’automate agent : l l’octet de poids faible indique l’état de la fonction agent (16#01 pour Idle, 16#02 pour marche, 16#03 pour stop) l l’octet de poids fort indique la stratégie à appliquer aux sorties (Sécurité, Valide ou Repli) Cet octet de poids fort est mis à disposition de l’utilisateur pour l’informer que les valeurs des 32 mots à récupérer sont valides ou non : l 16#01 : état de sécurité l 16#02 : les valeurs des %MW de la table d’échange sont valides. l 16#03 : les valeurs des %MW de la table d’échange ne sont pas valides. Quand cet octet indicateur de stratégie à appliquer aux sorties prend la valeur 16#03 le programme applicatif gère la valeur qui doit être utilisée : maintien ou repli. Le maintien se fait en utilisant la dernière valeur correcte lue. Le repli se fait en utilisant une valeur définie préalablement par le programmeur. La réception de valeurs provenant de l’automate Normal se fait par la séquence suivante dans l’automate agent : (* Réception de la valeur *) (* SI valeur valide *) IF(%IW0.1 AND 16#FF00)=16#0200 THEN (* ALORS la valeur est stockée en %MW200 *) (%MW200:=%MW32; END_IF. (* L’agent utilise la dernière valeur correcte lue, (maintien) pour le module n°4*) %QW4.0:=%MW200; Préconisations de développement Sorties TOR du bus FIPIO avec repli à 0 Recommandations Certains équipements du bus FIPIO peuvent avoir leur sorties en repli à zéro (configuré par paramétrage ou imposé par le type de l’équipement ; Momentum sorties TOR et modules étanches IP 67). Pour ces sorties, une impulsion peut apparaître pendant un cycle automate sur changement d’état de la sortie lors de la commutation. Ensuite, leur valeur est celle calculée par le nouvel automate Normal. S’il y a changement d’état pendant la commutation, une impulsion apparaît pendant un cycle. Note : Il est indispensable de forcer ces sorties à zéro dans l’automate Secours. Ce forçage doit être réalisé par une section conditionnée par l’état secours placée après la section Cdes_sorties. 127 Préconisations de développement Exemple La configuration comporte un Momentum E/S relais TOR de type 170 ADM 390 30 au point 13 du bus FIPIO. Pour réaliser le forçage, la section "Momentum" conditionnée par l’état secours est placée après la section Cdes_Sorties. TSX 57252 [RACK 0 POSITION 0] Section Nom : Momentum Langage : ST Protection Aucune Condition Repère : Localisation Tâche : MAST Module fonctionnel : %SW60:X1 Forçable Symbole : < Aucun > Etat_secours Commentaire : Commentaire OK Annuler Appliquer Aide Dans cette section, le forçage de la sortie n° 18 est réalisé par l’instruction : RESET %Q\1.2.13\0.18; 128 Préconisations de développement Les éléments interdits Généralités PL7 ne vérifie pas la présence de ces éléments interdits dans une application Warm Standby Premium. Blocs fonctions Prédéfinis avancés Les Blocs Fonctions Prédéfinis suivants ne devront pas être utilisés dans l'application : Les éléments Grafcet Blocs fonctions Prédéfinis Type Timer %Tmi Temporisateur Série 7 %Ti Monostable %Mni Compteur/décompteur %Ci Registre %Ri Programmateur cyclique (DRUM) %DRi Ces fonctions et objets du langage Grafcet suivants ne devront pas être utilisés dans l'application : Désignation Adresse Actions à l’activation et à la désactivation des étapes Grafcet Temps d’activité liés aux étapes Grafcet EF PULSOR %Xi.T %Xj.i.T%Xj.IN.T %Xj.OUT.T Cette EF ne peut pas être utilisée dans une application Warm Standby Premium. Sa base de temps n'est pas synchronisée entre le Normal et le Secours. 129 Préconisations de développement Les éléments déconseillés Les fronts PL7 Dans l’application, l'utilisation des fronts PL7 est déconseillée (front sur les objets de type %IXxy.i.r, %QXxy.i.r, %Mi). Il n'est pas possible d'assurer leur prise en compte lors d'une commutation. Exemple : IF RE %M3 THEN ...............................END_IF; Les tâches événementielles Dans l'application, l'utilisation des tâches événementielles est déconseillée. Il n'est pas possible d'assurer ni leur prise en compte ni leur intégrité d'exécution lors d'une commutation. Bit système %S13 L'utilisation du bit système %S13 est déconseillé dans le cadre du Warm Standby Premium. Ce bit est à 1 pendant le premier cycle après mise en Run de l'automate. Durant ce premier cycle, le Warm Standby Premium peut être en phase de détermination Normal/Secours. A ce moment les informations %SW60:X0 (état Normal) et %SW60:X1 (état Secours) ne sont pas encore disponibles. 130 Préconisations de développement Réglage des périodes des tâches Réglage de la période de la tâche FAST Les éléments de la redondance (EF Grafcet, EF Régulation, DFB d'échange) ne doivent pas être utilisés dans la tâche FAST. L'utilisation d'une tâche FAST avec une période inférieure à 10 ms est préjudiciable à l'échange correct et performant de la Base de Données. Réglage de la période de la tâche MAST L'automate doit être obligatoirement paramétré en périodique pour un fonctionnement correct du Warm Standby Premium. La méthode pour régler la période de la tâche MAST est la suivante : l Recherche du temps d'exécution hors redondance. l Calcul du temps d'exécution de la redondance. l Calcul du temps de transfert de la Base de Données. L'addition de ces trois temps donne la valeur de la période MAST. Le temps d'exécution hors redondance C'est le temps d'exécution maximal de l'application hors redondance. L'application hors redondance est obtenue en dévalidant les fonctions spécifiques à la redondance (DFB d'échange, EF Grafcet) et en scrutant tous les éléments de programme associés au mode Normal de l'automate. Il faut supprimer la configuration de la voie 14 (fonction Redondance) dans cette application et positionner à 1 le bit %SW60:X0. Le temps d'exécution de la redondance C'est l'addition du temps consommé par la fonction Redondance, du temps consommé par l'exécution des DFB d'échange et l'exécution des EF nécessaires pour le Grafcet et des EF nécessaires pour la régulation. Le temps de transfert de la Base de Données C'est l'addition d'un temps de 7 ms par DFB d'échange et d'un temps supplémentaire à prévoir pour les modifications en mode connecté. 131 Préconisations de développement Temps d’exéction hors redondance Temps de la fonction redondance Temps d’exécution des DFB d’échange Période de la tâche MAST Temps d’exécution des EF pour Grafcet et régulation Temps supplémentaire Temps libre pour le transfert de la Base de données 132 Temps global de l’application Les DFB du pack logiciel 11 Présentation Objet de ce chapitre Ce chapitre décrit les DFB du pack logiciel permettant d’assurer les fonctions d’échanges de la Base de Données entre les deux automates. Contenu de ce chapitre Ce chapitre contient les sous-chapitres suivants : Sous-chapitre Sujet Page 11.1 Présentation et mise en oeuvre des DFB 134 11.2 DFB d’échange 140 11.3 DFB d’extension 147 11.4 Diagnostic des DFB 158 11.5 Exemples de programmation avec les DFB 159 133 Les DFB du pack logiciel 11.1 Présentation et mise en oeuvre des DFB Présentation Objet de ce sous-chapitre Ce sous-chapitre décrit les DFB du pack logiciel et la mise en oeuvre des DFB dans l’application. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : 134 Sujet Page Présentation des DFB 135 Mise en oeuvre des DFB dans l’application 138 Les DFB du pack logiciel Présentation des DFB Généralités Les DFB du pack logiciel sont utilisables uniquement dans la tâche MAST de l’automate. L’utilisateur n’a pas accès au code des fonctions. Les DFB proposés sont décrits ci-dessous. DFB de base Le DFB de base : Ha_db_basic, (High availability database basic) permet l’échange des mots du bloc de base de la Base de Données. Il est optimisé pour provoquer des échanges à chaque cycle automate. L’échange du bloc de base est indispensable au fonctionnement du Warm Standby Premium. Des contrôles sont intégrés dans le DFB pour s’assurer de son exécution et du transfert du bloc de base du Normal vers le Secours. Le DFB Ha_db_basic influe sur le mode de fonctionnement nominal du Warm Standby Premium. Une fonction diagnostic avancée est aussi proposée par ce DFB. Elle permet, optionnellement, de contrôler l’échange des blocs d’extension ainsi que la communication Ethernet TCP-IP fonction client. La présence dans l’application et l’exécution à chaque cycle automate du DFB Ha_db_basic sont obligatoires. Ce bloc DFB est unique dans l’application. Automate Secours Automate Normal Ha_db_basic Bloc de base Bloc de base 135 Les DFB du pack logiciel DFB d’extension Les DFB d’extension : Ha_db_cycle_opt (High availability cycle optimized) et Ha_db_size_opt (High availalibity size optimized) qui permettent l’échange des mots d’un bloc extension de la Base de Données. Ha_db_cycle_opt est optimisé pour permettre des échanges du bloc d’extension le plus souvent possible (de l’ordre d’un échange par cycle automate). Ha_db_size_opt est optimisé pour permettre une dimension maximale de la Base de Données. La fréquence d’échange d’un bloc extension par ce DFB est de l’ordre d’un cycle sur deux. Des contrôles sont intégrés dans ces DFB pour s’assurer du transfert d’un bloc d’extension du Normal vers le Secours. Le résultat de ceux-ci n’influence pas directement le mode de fonctionnement nominal du Warm Standby Premium. Le nombre de ces DFB dépend de la taille de la Base de Données. Automate Secours Automate Normal Bloc de base Bloc de base 136 Bloc d’extension Ha_db_cycle_opt ou Ha_db_size_opt Bloc d’extension Bloc d’extension Ha_db_cycle_opt ou Ha_db_size_opt Bloc d’extension Les DFB du pack logiciel Pour réaliser les échanges, les DFB s’appuient sur une fonction élémentaire (EF) Write_Asyn de l’atelier PL7. Les caractéristiques principales de cette fonction sont : l d’utiliser les mécanismes de la messagerie auxiliaire du Premium, l de permettre l’écriture de 507 mots en une seule requête, l d’assurer l’intégrité (la cohérence) des données transmises. Toutes les valeurs des données transmises sont prises dans un cycle unique et sont écrites, après transmission, en une seule fois en mémoire automate. Pour augmenter la fréquence d’échange, les DFB Ha_db_basic et Ha_db_cycle_opt utilisent deux EF Write_Asyn pour échanger un même bloc. 137 Les DFB du pack logiciel Mise en oeuvre des DFB dans l’application Procédure Dans PL7, suivre la procédure suivante : Etape 1 Action Sélectionnez le menu Types DFB Navigateur Application STATION Configuration Configuration matérielle Configuration logicielle Programme Tâche Mast Evènements Types DFB Créer... Variables Tables d’animation Importer... Dossier Importer binaire... Propriétés 2 A partir du menu contextuel, choisissez Importer binaire, PL7 pointe par défaut sur le répertoire PL7user 3 Sélectionnez le répertoire PL7user, des fichiers de type UFB sont présentés Importer binaire Chercher : ? Pl7user Ha_db_basic.UFB Ha_db_cycle_opt.UFB Ha_db_size_opt.UFB Nom : Type : Importer Fichiers Dfb (*.UFB) Informations Dfb Nom : Version : Dernière modif : Commentaire : 138 Annuler Les DFB du pack logiciel Etape Exemple Action 4 Importez le DFB Ha_db_basic, et éventuellement les DFB Ha_db_cycle_opt et Ha_db_size_opt dans l'application . 5 Créez les instances des fonctions d'échange DFB : l une instance pour Ha_db_basic, l une ou plusieurs instances pour les DFB d'extension. 6 Ajoutez dans la section prévue, l’appel de ces instances de DFB et renseignez les valeurs d'entrées. Chaque instance de DFB a sa propre adresse de début de zone. La valeur initiale est préchargée pour l'adresse de Fi_ad, soit 1000 pour Ha_db_basic et 1507 pour le premier Ha_db_cycle_opt et Ha_db_size_opt. L’enchaînement des instances s'effectue avec la variable publique "DFB.End_ad". Cette variable, présente dans chaque DFB, indique la prochaine adresse disponible. La "câbler" sur l’adresse de début de l'instance DFB suivante, soit "l'Instance DFB+1.Fi_ad". Le tableau suivant donne les adresses utilisées pour chaque DFB. Dans cet exemple le début de zone est %MW1000 et la longueur est maximale. Adresse DFB en charge du transfert %MW1000 Ha_db_basic %MW1507 Ha_db_size_opt instance 1 %MW2014 Ha_db_size_opt instance 2 %MW2521 Ha_db_size_opt instance 3 %MW3028 Ha_db_size_opt instance 4 %MW3535 Ha_db_size_opt instance 5 %MW4042 Ha_db_size_opt instance 6 %MW4549 Ha_db_size_opt instance 7 %MW5056 Ha_db_size_opt instance 8 139 Les DFB du pack logiciel 11.2 DFB d’échange Présentation Objet de ce sous-chapitre Ce sous-chapitre décrit le DFB d’échange obligatoire dans l’architecture Warm Standby Premium et ses fonctions. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : 140 Sujet Page Présentation du DFB d’échange Ha_db_basic 141 Fonctions du DFB d’échange Ha_db_basic 143 Les DFB du pack logiciel Présentation du DFB d’échange Ha_db_basic Généralités Le DFB d’échange est obligatoire dans l’architecture Warm Standby Premium. Il est utilisé pour permettre l’échange contrôlé d’informations avec l’automate Secours. Le DFB met à un le bit %SW61:X4, bit qui signale qu’un premier échange correct de la base de Données a eu lieu. Information diagnostic Le DFB Ha_db_basic élabore aussi une information diagnostic (%SW61:X0) pour signaler un problème d’écriture du bloc de base dans l’automate Secours. Cette information peut être aussi positionnée par les DFB d’échange des blocs d’extension en utilisant l’entrée Err_dfb pour signaler un problème d’écriture d’un bloc. Ces entrées ne sont prises en compte que si le DFB est validé et l’automate en mode Normal. Une défaillance sur l’écriture de la Base de Données dans l’automate Secours positionnera l’information %SW61:X0. Le maintien à 1 de cette information pendant un temps supérieur à 2 secondes provoque l’arrêt de l’automate Secours. Note : Le "câblage" des bits D_er de chaque DFB d’extension sur l’entrée Err_dfb est nécessaire pour assurer le maximum de surveillance de l’échange de la Base de Données. Il est interdit de raccorder le bit D_er du DFB Ha_db_basic sur son entrée Err_dfb. Ceci est réalisée en interne du DFB. Dans le cas où le Warm Standby Premium est client de la communication TCP/IP, le DFB Ha_db_basic élabore une information diagnostic pour signaler un éventuel problème de dialogue avec les équipements tiers. Cette défaillance positionnera %SW61:X1. L’apparition de cette défaillance provoque une commutation immédiate et automatique Normal/Secours. Calcul dynamique Le DFB Ha_db_basic réalise aussi le calcul dynamique du time-out des fonctions de communication utilisées pour l’échange de la Base de Données. Ce calcul est le suivant : Time-out = ((contrôle nombre de cycle d’échange Base de Données + 1) x Temps périodique MAST)/100. La valeur calculée possède une valeur minimale de 1s. Eventuellement adaptable au moyen du paramètre Exmin_to. 141 Les DFB du pack logiciel Contrôle du nombre de cycles maximum 142 Le DFB Ha_db_basic réalise aussi le contrôle du nombre de cycles maximum entre deux échanges du bloc de base. Le mécanisme utilisé permet de contrôler que le bloc de base a été correctement mis à jour dans l’automate Secours. Pour cela, à chaque scrutation du DFB, un compteur est incrémenté (variable de sortie C_nbcyc). Ce compteur n’est remis à zéro que si l’échange de la Base de Données a abouti sans erreur. Si ce compteur dépasse la valeur paramétrée sur la variable d’entrée Ctlcycdb, le bit D_er du DFB est positionné. Par défaut, le nombre de cycles est dix. Toutefois, un réglage peut s’avérer nécessaire en fonction de la sévérité du contrôle souhaité. Les DFB du pack logiciel Fonctions du DFB d’échange Ha_db_basic Entrées/sorties Entrées/sorties du DFB Ha_db_basic DFB Ha_db_basic BOOL Enable BOOL En_ok DWORD Fi_ad BOOL D_ip AR_W Buf_ar BOOL D_er WORD Ctlcycdb BOOL Err_conf BOOL Err_dfb BOOL Max_ef WORD C_nbcyc BOOL To_user Entrées obligatoires Entrées Type Signification Enable Bit Validation/dévalidation générale du DFB. Enable = 1, validation du traitement. Enable = 0, dévalidation de tous les traitements effectués dans le DFB. La ou les requêtes en cours se terminent. Buf_ar Tableau de mots Adresse et taille du tableau à échanger sous la forme : %MWAdresse_1erMot:Longueur_du_tableau par exemple : %MW1000:507. Entrées facultatives Entrées Type Signification Fi_ad Mot double Adresse de destination du tableau à échanger sous la forme : %MDAdresse_1erMot. Cette valeur doit correspondre à l'adresse du premier mot du tableau de Buf_ar. La valeur par défaut est 1000. 143 Les DFB du pack logiciel Entrées Type Signification Ctlcycdb Mot Valeur pour le contrôle du nombre de cycle sans mise à jour de la Base de Données. La valeur par défaut est 10. Err_dfb Bit Regroupement des erreurs de communication fournis par les autres DFB de la redondance. Ce bit agit sur %SW61:X0. Err_dfb = 0, absence d'erreur. La Base de Données s'échange correctement. Err_dfb = 1, il y a au moins une erreur sur l'un des DFB d'échange de la Base de Données. Il faut contrôler l'ensemble des bits D_er des DFB d'extension. To_user Bit Regroupement des time-out erreurs de communication applicatif fournis par les EF Write_Var dans le cas où le TSX ETY 210 de liaison avec le niveau 2 est en mode client (agit sur %SW61:X1). Dans ce cas, c’est la supervision qui est serveur. Dans le cas où le TSX ETY 210 est en mode serveur, c’est le client supervision qui détecte le problème de time-out. To_user = 1 signifie qu’il y a au moins un time-out sur les EF de dialogue avec le niveau 2. Le client doit effectuer un OU de tous les Time-out sur cette entrée. To_user = 0 absence de time-out, et donc aucun problème sur le dialogue avec le niveau 2. Entrées Type Signification En_ok Bit Enable DFB : utile pour le "chaînage" des DFB En_ok = 1 lorsque l'information est vraie. D_ip Bit D_ip = 1 Echange en cours D_er Bit D_er = 1 Défaut d’échange Err_conf Bit Err_conf = 1 Erreur de configuration. Ce bit bloque l'exécution du DFB. Il faut alors consulter le mot Diag pour connaître le détail de l'erreur. Max_ef Bit Max_ef = 1 erreur due aux ressources système insuffisantes pour ce DFB. Le nombre d'EF est trop grand. C_nbcyc Mot Compteur du nombre de cycle sans mise à jour de la Base de Données. Sorties 144 Les DFB du pack logiciel Variables publiques Variables publiques du DFB Ha_db_basic Editeur type DFB : Ha_db_basic Interface d’appel Entrées + Entrées/Sorties : 6 Interface et variables publiques 6 : Sorties + Entrées/Sorties Etat Protégé en savoir faire. Code... (ST) Fiche descriptive Variables publiques Entrées/Sorties Sorties Entrées Nom Type Commentaire + Status AR_W:13 Status dialog External mini value for Time Out 0 Exmin_to WORD Diagnostic Word Diag WORD 0 End_ad End address for exchange area 0 DWORD Valeur init. Droits PROG. R/W R/W R R S Noms Type Signification Status Tableau de 13 mots Status du DFB. Exmin_to Mot Valeur minimale du time-out des EF de communication. Cette valeur qui doit être positive et non nulle est multipliée par la base de temps de 100 ms pour obtenir la valeur minimale du time-out des EF de communication. Par défaut, cette valeur minimale est 1000 ms si Exmin_to=0. Diag Mot Code de diagnostic de la configuration du DFB Significatif que si Bit Err_conf = 1 ou D_er = 1 End_ad Mot double Adresse début de la zone d'échange suivante : adresse fin de la zone d'échange précédente + 1. Cette valeur sera mise dans Fi_ad du DFB d'échange suivant pour avoir l'Adresse_1erMot de la zone suivante. 145 Les DFB du pack logiciel Zone de status Détail de la zone de status du DFB Ha_db_basic Editeur type DFB : Ha_db_basic Interface d’appel Entrées + Entrées/Sorties 6 6 : Sorties + Entrées/Sorties Interface et variables publiques Fiche descriptive Variables publiques Entrées Entrées/SorSorties Nom Type Commentaire Status AR_W:13 Status dialog [0] WORD WORD [1] [2] WORD [3] WORD [4] WORD [5] WORD [6] WORD [7] WORD [8] WORD [9] WORD [10] WORD [11] WORD [12] WORD Ordre du mot Etat Protégé en savoir faire. Code... (ST) Valeur init. Droits PROG. R/W 0 0 0 0 0 0 0 0 0 0 0 0 0 Octet poids fort Octet poids faible %MWk Numéro d’échange EF1 Bit d’activité EF1 %MWk + 1 Compte rendu d’opération EF1 Compte rendu de communication EF1 %MWk + 2 Time-out EF1 %MWk + 3 Longueur buffer EF1 émise %MWk + 4 Numéro d’échange EF2 Bit d’activité EF2 %MWk + 5 Compte rendu d’opération EF2 Compte rendu de communication EF2 %MWk + 6 Time-out EF2 %MWk + 7 Longueur buffer EF2 émise %MWk + 8 Dernière erreur mémorisée sur EF1 %MWk + 9 Dernière erreur mémorisée sur EF2 %MWk + 10 Valeur maximale atteinte sur C_nbcyc %MWk + 11 Réservé %MWk + 12 Réservé Note : La remise à zéro des mots %MWk+8, %MWk+9 et %MWk+10 est à la charge de l'utilisateur. Les codes des compte rendus sont ceux de l'EF Write_Asyn. 146 S Les DFB du pack logiciel 11.3 DFB d’extension Présentation Objet de ce sous-chapitre Ce sous-chapitre décrit les DFB d’extension optionnels dans l’architecture Warm Standby Premium et leurs fonctions. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet Page Présentation du DFB d’extension Ha_db_cycle_opt 148 Fonctions du DFB d’extension Ha_db_cycle_opt 149 Présentation du DFB d’extension Ha_db_size_opt 153 Fonctions du DFB d’extension Ha_db_size_opt 154 147 Les DFB du pack logiciel Présentation du DFB d’extension Ha_db_cycle_opt Généralités Le DFB d’échange est optionnel dans l’architecture Warm Standby Premium. Il est utilisé pour permettre l’échange contrôlé d’informations avec l’automate Secours. Il est optimisé pour permettre l’échange à chaque cycle. Calcul dynamique Le DFB Ha_db_cycle_opt réalise le calcul dynamique du time-out des fonctions de communication utilisées pour l’échange de la Base de Données. Ce calcul est le suivant : Time-out = ((contrôle nombre de cycle d’échange Base de Données+1) x Temps périodique MAST) /100. La valeur calculée possède une valeur minimale de 1s. Eventuellement adaptable au moyen du paramètre Exmin_to. Contrôle du nombre de cycles maximum Le DFB réalise aussi le contrôle du nombre de cycles maximum entre deux échanges du bloc d’extension. Le mécanisme utilisé permet de contrôler que le bloc d’extension a été correctement mis à jour dans l’automate Secours. Pour cela, à chaque scrutation du DFB, un compteur est incrémenté (variable de sortie C_nbcyc). Ce compteur n’est remis à zéro que si l’échange de la Base de Données a abouti sans erreur. Si ce compteur dépasse la valeur paramétrée sur la variable d’entrée Ctlcycdb, le bit D_er du DFB est positionné. Par défaut, le nombre de cycles est dix. Toutefois, un réglage peut s’avérer nécessaire en fonction de la sévérité du contrôle souhaité. 148 Les DFB du pack logiciel Fonctions du DFB d’extension Ha_db_cycle_opt Entrées/sorties Entrées/sorties du DFB Ha_db_cycle_opt DFB Ha_db_cycle_opt BOOL Enable BOOL En_ok DWORD Fi_ad BOOL D_ip AR_W Buf_ar BOOL D_er BOOL Err_conf WORD Ctlcycdb BOOL Max_ef WORD C_nbcyc Entrées obligatoires Entrées Type Signification Enable Bit Validation/dévalidation générale du DFB. Enable = 1, validation du traitement. Enable = 0, dévalidation de tous les traitements effectués dans le DFB. La ou les requêtes en cours se terminent. Buf_ar Tableau de mots Adresse et taille du tableau à échanger sous la forme : %MWAdresse_1erMot:Longueur_du_tableau par exemple : %MW1507:507. 149 Les DFB du pack logiciel Entrées facultatives Entrées Type Signification Fi_ad Mot double Adresse de destination du tableau à échanger sous la forme : %MDAdresse_1erMot. Cette valeur doit correspondre à l’adresse du premier mot du tableau de Buf_ar. La valeur par défaut est 1507. Ctlcycdb Mot Valeur pour le contrôle du nombre de cycle sans mise à jour de la Base de Données. La valeur par défaut est 10. Entrées Type Signification En_ok Bit Enable DFB : utile pour le chaînage des DFB En_ok = 1 lorsque l’information est vraie D_ip Bit D_ip = 1 Echange en cours D_er Bit D_er = 1 Défaut d’échange Err_conf Bit Err_conf = 1 Erreur de configuration. Ce bit bloque l’exécution du DFB. Il faut alors consulter le mot Diag pour connaître le détail de l’erreur. Max_ef Bit Max_ef = 1 erreur due aux ressources système insuffisantes pour ce DFB. Le nombre d’EF est trop grand. C_nbcyc Mot Compteur du nombre de cycle sans mise à jour de la Base de Données. Sorties 150 Les DFB du pack logiciel Variables publiques Variables publiques du DFB Ha_db_cycle_opt Editeur type DFB : Ha_db_cycle_opt Interface d’appel Entrées + Entrées/Sorties : 4 Interface et variables publiques Entrées + Entrées/Sorties Nom Status Exmin_to Diag End_ad Type AR_W:13 WORD WORD DWORD 6 : Sorties + Entrées/Sorties Etat Protégé en savoir faire. Code... (ST) Fiche descriptive Sorties Variables publiques Commentaire Status dialog External mini value for Time Out Diagnostic Word End address for exchange area Valeur init. 0 0 0 Droits PROG. R/W R/W R R S Noms Type Signification Status Tableau de 13 mots Status du DFB. Exmin_to Mot Valeur minimale du time-out des EF de communication. Cette valeur qui doit être positive et non nulle est multipliée par la base de temps de 100 ms pour obtenir la valeur minimale du time-out des EF de communication. Par défaut, cette valeur minimale est 1000 ms si Exmin_to = 0. Diag Mot Code de diagnostic de la configuration du DFB Significatif que si Bit Err_conf = 1 ou D_er = 1 End_ad Mot double Adresse début de la zone d’échange suivante : adresse fin de la zone d’échange précédente + 1. Cette valeur sera mise dans Fi_ad du DFB d’échange suivant pour avoir l’Adresse_1erMot de la zone suivante. 151 Les DFB du pack logiciel Zone de status Détail de la zone de status du DFB Ha_db_cycle_opt Editeur type DFB : Ha_db_cycle_opt Interface d’appel Entrées + Entrées/Sorties : 4 Interface et variables publiques 6 : Sorties + Entrées/Sorties Etat Protégé en savoir faire. Code... (ST) Fiche descriptive Variables publiques Entrées/Sorties Sorties Entrées Nom Type Commentaire Status AR_W:13 Status dialog WORD [0] WORD [1] [2] WORD [3] WORD WORD [4] [5] WORD [6] WORD [7] WORD [8] WORD [9] WORD [10] WORD [11] WORD [12] WORD Valeur init. Droits PROG. R/W S 0 0 0 0 0 0 0 0 0 0 0 0 0 Ordre du mot Octet poids fort Octet poids faible %MWk Numéro d’échange EF1 Bit d’activité EF1 %MWk + 1 Compte rendu d’opération EF1 Compte rendu de communication EF1 %MWk + 2 Time-out EF1 %MWk + 3 Longueur buffer EF1 émise %MWk + 4 Numéro d’échange EF2 Bit d’activité EF2 %MWk + 5 Compte rendu d’opération EF2 Compte rendu de communication EF2 %MWk + 6 Time-out EF2 %MWk + 7 Longueur buffer EF2 émise %MWk + 8 Dernière erreur mémorisée sur EF1 %MWk + 9 Dernière erreur mémorisée sur EF2 %MWk + 10 Valeur maximale atteinte sur C_nbcyc %MWk + 11 Réservé %MWk + 12 Réservé Note : La remise à zéro des mots %MWk+8, %MWk+9 et %MWk+10 est à la charge de l’utilisateur. Les codes des compte rendus sont ceux de l’EF Write_Asyn. 152 Les DFB du pack logiciel Présentation du DFB d’extension Ha_db_size_opt Généralités Le DFB d’échange est optionnel dans l’architecture Warm Standby Premium. Il est utilisé pour permettre l’échange contrôlé d’informations avec l’automate Secours. Le DFB Ha_db_size_opt est optimisé pour permettre une dimension maximale de la Base de Données. La fréquence d’échange d’un bloc extension par ce DFB est de l’ordre d’un cycle sur deux. Calcul dynamique Le DFB Ha_db_size_opt réalise le calcul dynamique du time-out des fonctions de communication utilisées pour l’échange de la Base de Données. Ce calcul est le suivant : Time-out = ((contrôle nombre de cycle d’échange Base de Données + 1) x Temps périodique MAST)/100. La valeur calculée possède une valeur minimale de 1s. Eventuellement adaptable au moyen du paramètre Exmin_to. Contrôle du nombre de cycles maximum Le DFB réalise aussi le contrôle du nombre de cycles maximum entre deux échanges du bloc d’extension. Le mécanisme utilisé permet de contrôler que le bloc d’extension a été correctement mis à jour dans l’automate Secours. Pour cela, à chaque scrutation du DFB, un compteur est incrémenté (variable de sortie C_nbcyc). l Ce compteur n’est remis à zéro que si l’échange de la Base de Données a abouti sans erreur. l Si ce compteur dépasse la valeur paramétrée sur la variable d’entrée Ctlcycdb, le bit D_er du DFB est positionné. l Par défaut, le nombre de cycles est dix. Un réglage peut s’avérer nécessaire en fonction de la sévérité du contrôle souhaité. 153 Les DFB du pack logiciel Fonctions du DFB d’extension Ha_db_size_opt Entrées/sorties Entrées/sorties du DFB Ha_db_size_opt DFB Ha_db_size_opt BOOL Enable BOOL En_ok DWORD Fi_ad BOOL D_ip AR_W Buf_ar BOOL D_er BOOL Err_conf WORD Ctlcycdb BOOL Max_ef WORD C_nbcyc Entrées obligatoires Entrées Type Signification Enable Bit Validation/dévalidation générale du DFB. Enable = 1, validation du traitement. Enable = 0, dévalidation de tous les traitements effectués dans le DFB. La ou les requêtes en cours se terminent. Buf_ar Tableau de mots Adresse et taille du tableau à échanger sous la forme : %MWAdresse_1erMot:Longueur_du_tableau par exemple : %MW1507:507. Entrées facultatives 154 Entrées Type Signification Fi_ad Mot double Adresse de destination du tableau à échanger sous la forme : %MDAdresse_1erMot. Cette valeur doit correspondre à l’adresse du premier mot du tableau de Buf_ar. La valeur par défaut est 1507. Ctlcycdb Mot Valeur pour le contrôle du nombre de cycle sans mise à jour de la Base de Données. La valeur par défaut est 10. Les DFB du pack logiciel Sorties Entrées Type Signification En_ok Bit Enable DFB : utile pour le chaînage des DFB En_ok = 1 lorsque l’information est vraie D_ip Bit D_ip = 1 Echange en cours D_er Bit D_er = 1 Défaut d’échange Err_conf Bit Err_conf = 1 Erreur de configuration. Ce bit bloque l’exécution du DFB. Il faut alors consulter le mot Diag pour connaître le détail de l’erreur. Max_ef Bit Max_ef = 1 erreur due aux ressources système insuffisantes pour ce DFB. Le nombre d’EF est trop grand. C_nbcyc Mot Compteur du nombre de cycle sans mise à jour de la Base de Données. 155 Les DFB du pack logiciel Variables publiques Variables publiques du DFB Ha_db_size_opt Editeur type DFB : Ha_db_size_opt Interface d’appel 6 : Sorties + Entrées/SorEntrées + Entrées/Sorties 4 Interface et variables pub- Code... (ST) Fiche descriptive Variables publiques Entrées Entrées/SorSorties Nom Type Commentaire + Status AR_W:8 Status dialog External mini value for Time Exmin_to WORD Diagnostic Word Diag WORD End_ad End address for exchange DWORD 156 Etat Protégé en savoir faire. Valeur init. 0 0 0 Droits PROG. R/W R/W R R S Noms Type Status Tableau de 8 mots Status du DFB. Signification Exmin_to Mot Valeur minimale du time-out des EF de communication. Cette valeur qui doit être positive et non nulle est multipliée par la base de temps de 100 ms pour obtenir la valeur minimale du time-out des EF de communication. Par défaut, cette valeur minimale est 1000 ms si Exmin_to = 0. Diag Mot Code de diagnostic de la configuration du DFB Significatif que si Bit Err_conf = 1 ou D_er = 1 End_ad Mot double Adresse début de la zone d’échange suivante : adresse fin de la zone d’échange précédente + 1. Cette valeur sera mise dans Fi_ad du DFB d’échange suivant pour avoir l’adresse _1erMot de la zone suivante. Les DFB du pack logiciel Zone de status Détail de la zone de status du DFB Ha_db_size_opt Editeur type DFB : Ha_db_size_opt Interface d’appel 6 : Sorties + Entrées/SorEntrées + Entrées/Sorties 4 Interface et variables pub- Etat Protégé en savoir faire. Code... (ST) Fiche descriptive Variables publiques Entrées/SorSorties Entrées Nom Type Commentaire AR_W:8 Status dialog Status [0] WORD WORD [1] [2] WORD [3] WORD [4] WORD [5] WORD [6] WORD [7] WORD Valeur init. Droits PROG. R/W S 0 0 0 0 0 0 0 0 Ordre du mot Octet poids fort Octet poids faible %MWk Numéro d’échange EF Bit d’activité EF %MWk + 1 Compte rendu d’opération EF Compte rendu de communication EF %MWk + 2 Time-out EF %MWk + 3 Longueur buffer EF émise %MWk + 4 Dernière erreur mémorisée sur EF %MWk + 5 Valeur maximale atteinte sur C_nbcyc %MWk + 6 Réservé %MWk + 7 Réservé Note : La remise à zéro des mots %MWk+4 et %MWk+5 est à la charge de l’utilisateur. Les codes des compte rendus sont ceux de l’EF Write_Asyn. 157 Les DFB du pack logiciel 11.4 Diagnostic des DFB Description des codes de diagnostic des DFB Description 158 Quand les bits Err_conf = 1 ou D_er = 1, le mot Diag donne la signification de l'erreur. Code Signification 16#0000 Absence d’erreur. 16#FF0F Dépassement du nombre de cycle pour la mise à jour de la Base de Données. 16#FFFA La variable de contrôle du nombre de cycle (Ctlcycdb) contient une valeur invalide. 16#FFFB Le processeur de l'automate n’est pas au niveau requis. 16#FFFC Le DFB n'est pas validé. 16#FFFD L’environnement logiciel n’est pas compatible avec le DFB (adresse réseau/ station de l'automate dual inconnue, configuration redondance incorrecte, …). 16#FFFE Longueur de la table échangée trop courte. 16#FFFF Longueur de la table échangée trop grande. Les DFB du pack logiciel 11.5 Exemples de programmation avec les DFB Présentation Objet de ce sous-chapitre Ce sous-chapitre décrit des exemples de programmation avec les DFB. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet Page Présentation des exemples de programmation avec les DFB 160 Programmation en langage à contacts (LD) 161 Programmation en langage littéral structuré (SL) 162 Programmation en langage liste d’instructions (IL) 163 Programmation avancée en langage littéral structuré (ST) 164 159 Les DFB du pack logiciel Présentation des exemples de programmation avec les DFB Présentation Les exemples présentés traitent le cas suivant : échange d’une Base de Données de 2028 mots en utilisant une instance du DFB Ha_db_basic et 3 instances du DFB Ha_db_size_opt. Les DFB d’échange doivent être installés dans la section Dfb_redondance. La table d’échange a pour adresse de début %MW1000 et chaque instance a une longueur de table de 507 mots. Automate Secours Automate Normal Ha_db_basic Bloc de base Bloc de base Bloc d’extension Bloc d’extension Ha_db_size_opt Bloc d’extension Bloc d’extension Ha_db_size_opt Bloc d’extension Bloc d’extension Ha_db_size_opt 160 Les DFB du pack logiciel Programmation en langage à contacts (LD) Exemple (* Exemple de programmation en langage à contacts *) Ext1 Base DFB Ha_db_size_opt DFB Ha_db_basic 1000 %MW1000:507 Ext1.D_er Ext2.D_er BOOL Enable BOOL En_ok DWORD Fi_ad BOOL D_ip Base End_ad AR_W Buf_ar BOOL D_er %MW1507:507 BOOL Enable BOOL En_ok DWORD Fi_ad BOOL D_ip AR_W Buf_ar BOOL D_er BOOL Err_conf WORD Ctlcycdb WORD Ctlcycdb BOOL Err_conf BOOL Err_dfb BOOL Max_ef BOOL Max_ef WORD C_nbcyc WORD C_nbcyc BOOL To_user Ext3.D_er Ext3 Ext2 DFB Ha_db_size_opt Ext1.En_ok Ext1.End_ad %MW2014:507 DFB Ha_db_size_opt BOOL Enable BOOL En_ok DWORD Fi_ad BOOL D_ip Ext2.End_ad AR_W Buf_ar BOOL D_er %MW2521:507 WORD Ctlcycdb BOOL Err_conf BOOL Enable BOOL En_ok DWORD Fi_ad BOOL D_ip AR_W Buf_ar BOOL D_er WORD Ctlcycdb BOOL Err_conf BOOL Max_ef BOOL Max_ef WORD C_nbcyc WORD C_nbcyc 161 Les DFB du pack logiciel Programmation en langage littéral structuré (SL) Exemple (* Exemple d’échange d’une base de données *) (* Echange de 1014 mots en 2 blocs dont le bloc de base (* 1014 mots en 2 blocs dont le bloc de base *) %M100:=Ext1.D_er OR Ext2.D_er OR Ext3.D_er; Base(,1000,%MW1000:507,,%M100,,,,,,,); Ext1(Base.En_ok,Base.End_ad,%MW1507:507,,,,,,,); (* Echange de 1014 mots en 2 blocs *) (* 1014 mots en 2 blocs *) Ext2(Ext1.En_ok,Ext1.End_ad,%MW2014:507,,,,,,,); Ext3(Ext2.En_ok,Ext2.End_ad,%MW2521:507,,,,,,,); 162 *) Les DFB du pack logiciel Programmation en langage liste d’instructions (IL) Exemple (* Exemple d’échange d’une base de données *) (* Echange de 1014 mots en 2 blocs dont le bloc de base *) (* 1014 mots en 2 blocs dont le bloc de base *) LD Ext1.D_er OR Ext2.D_er OR Ext3.D_er ST %M100 LD TRUE [Base(,1000,%MW1000:507,,%M100,,,,,,,)] [Ext1(Base.En_ok,Base.End_ad,%MW1507:507,,,,,,,)] (* Echange de 1014 mots en 2 blocs *) LD TRUE [Ext2(Ext1.En_ok,Ext1.End_ad,%MW2014:507,,,,,,,)] [Ext3(Ext2.En_ok,Ext2.End_ad,%MW2521:507,,,,,,,)] 163 Les DFB du pack logiciel Programmation avancée en langage littéral structuré (ST) Généralités 164 Pour éviter la saisie de nombreuses informations sur les DFB d'échange, on peut développer quelques conseils complémentaires de mise en oeuvre : l définir une variable %MW contenant l'adresse de début de la zone d'échange, l utiliser comme adresse de tableau sur le paramètre Buf_ar, un tableau indexé, l calculer automatiquement l'index du tableau en utilisant la variable End_ad du DFB précédent. Les DFB du pack logiciel Exemple L’instance du DFB Ha_db_basic est B1, les instances des DFB Ha_db_size_opt sont E1...E8. On échange 500 mots par DFB. Le mot %MW120 contient l’adresse de début d’échange et est initialisé à 1000. Le bit %M1 est un bit "poubelle", le mot %MW50 est un mot "poubelle". Détail de la section "Dfb_redondance" : (* Conversion en mot double de l’adresse de début de la zone d’échange *) %MD130:=%MW120; (* Regroupe les bits d’erreurs DFB *) %M1:= E1.D_er OR E2.D_er OR E3.D_er OR E4.D_er OR E5.D_er OR E6.D_er OR E7.D_er OR E8.D_er; (* DFB Base *) B1(,%MD130,%MW0[%MW120]:500,,%M1,,,,);%MW50:=B1.End_ad; (* DFB Extension *) E1(B1.En_ok,B1.End_ad,%MW0[%MW50]:500,,,,,,);%MW50:=E1.End_ad; E2(E1.En_ok,E1.End_ad,%MW0[%MW50]:500,,,,,,);%MW50:=E2.End_ad; E3(E2.En_ok,E2.End_ad,%MW0[%MW50]:500,,,,,,);%MW50:=E3.End_ad; E4(E3.En_ok,E3.End_ad,%MW0[%MW50]:500,,,,,,);%MW50:=E4.End_ad; E5(E4.En_ok,E4.End_ad,%MW0[%MW50]:500,,,,,,);%MW50:=E5.End_ad; E6(E5.En_ok,E5.End_ad,%MW0[%MW50]:500,,,,,,);%MW50:=E6.End_ad; E7(E6.En_ok,E6.End_ad,%MW0[%MW50]:500,,,,,,);%MW50:=E7.End_ad; E8(E7.En_ok,E7.End_ad,%MW0[%MW50]:500,,,,,,); On constate que les seules informations à adapter sont : l le contenu de la valeur de %MW120 (adresse de début de zone d’échange), l la longueur des tableaux à échanger pour chaque DFB. Cette valeur de 500 dans l’exemple ci-dessus ne peut pas être remplacée par un mot %MW, l éventuellement le paramètre Ctlcycdb en fonction de l’application. 165 Les DFB du pack logiciel 166 Les EF du pack logiciel 12 Présentation Objet de ce chapitre Ce chapitre décrit les fonctions des EF du pack logiciel. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Présentation des EF 168 Paramètres d’entrées/sorties des EF du contexte Grafcet 170 Procédures de mise en oeuvre des EF du contexte Grafcet 171 Conseil d’utilisation des EF du contexte Grafcet 172 Ordre de rangement des bits d’étapes dans les bits de mots 173 Paramètres d’entrées/sorties des EF dédiés au transfert régulation 174 Conseil d’utilisation des EF dédiés au transfert régulation 176 Utilisation d’une application contenant les EF 177 167 Les EF du pack logiciel Présentation des EF Généralités Les fonctions élémentaires fournies (EF) dans le pack logiciel permettent de compléter la base de données échangée par les DFB. Ces EF permettent de manipuler des éléments du langage Grafcet ou des voies de régulation. A chaque cycle automate, les EF dédiées au Grafcet positionnent les étapes actives Grafcet de l’automate Secours comme celles de l’automate Normal. Ainsi, lors de la commutation une transition sans à-coup est assurée. Les EF de la régulation mettent à jour les paramètres des voies de régulation à partir de la base de données et vice-versa. EF du contexte Grafcet Les EF du contexte Grafcet sont les suivantes : l EF Get_stat_chart Elle permet de récupérer à chaque cycle de l’automate Normal les étapes actives pour les ranger dans une zone d’échange de 64 mots. l EF Set_stat_chart Elle permet de repositionner à chaque cycle de l’automate Secours les étapes actives à partir de la zone d’échange de 64 mots. Chaque EF sauvegarde ou restitue l’ensemble d’un contexte Grafcet, depuis les étapes Chart jusqu’aux macro-étapes. L’EF Get_stat_chart doit être activée quand l’automate est Normal et l’EF Set_stat_chart quand l’automate est Secours. Il ne doit y avoir qu’un seul exemplaire de chaque EF du contexte Grafcet dans une application. Note : Ces EF ne concernent que les états des étapes. Les autres informations relatives au Grafcet ne sont pas transmises entre les automates A et B. 168 Les EF du pack logiciel EF de transfert de la régulation Les EF de transfert de la régulation sont les suivantes : l EF Get_param_clc Elle récupère les paramètres de la voie de régulation précisée et les stocke dans une table de mots %MW. l EF Set_param_clc Elle recopie une zone de mots %MW dans les paramètres de la voie de régulation précisée. L’EF Get_param_clc doit être activée quand l’automate est Normal et l’EF Set_param_clc quand l’automate est Secours. Il ne doit y avoir qu’un seul exemplaire de ce type d’EF par boucle de régulation dans une application. 169 Les EF du pack logiciel Paramètres d’entrées/sorties des EF du contexte Grafcet Eléments d’entrées/sorties des EF Les éléments d’Entrées/Sorties des EF du contexte Grafcet EF Get_stat_chart Paramètre Nature Type Signification F_AD Entrée Mot ou valeur numérique Adresse de début de zone d'échange des étapes actives Grafcet (rangement des données Grafcet dans une table de mots %MW). RESU Sortie Mot Compte rendu de l’exécution de l’EF (quantité de données Grafcet mises dans une table de mots %MW). Paramètre Nature Type Signification F_AD Entrée Mot ou valeur numérique Adresse de début de zone d'échange des étapes actives Grafcet (récupération des numérique données Grafcet depuis la table de mot %MW) RESU Sortie Mot Compte rendu de l’exécution de l’EF (quantité de données Grafcet récupérées) EF Set_stat_chart Codes de retour des EF Signification des codes de retour des EF Code Signification 16#FFFF Paramètre d'entrées hors bornes : l'adresse de début de la zone des %MW n'existe pas dans la configuration de l'application. 16#FFFE Longueur de la zone à traiter hors bornes : la longueur de la zone des %MW configurés n'est pas assez longue (64 mots maximum). 16#FFFD Grafcet non configuré dans l'application. 16#FFFC Erreur interne d'exécution de la fonction Get_stat_chart. 16#FFFB Erreur interne d'exécution de la fonction Set_stat_chart. 16#FFFA L’unité centrale de l'automate n’est pas au niveau requis. Note : Si le contenu du code retour est différent des valeurs ci-dessus, il indique alors le nombre d'étapes Grafcet. 170 Les EF du pack logiciel Procédures de mise en oeuvre des EF du contexte Grafcet Généralités L'utilisation des EF du contexte Grafcet est nécessaire uniquement si une section Grafcet est présente dans l'application. Dans les exemples présentés ci-dessous, les EF sont placées dans des sections non conditionnées. Procédure La procédure de mise en oeuvre est la suivante : Etape Action 1 Insérez l’EF en tapant SHIFT + F8 ou en cliquant sur le bouton de la barre d’outils. 2 Dans la famille Redondance choisissez l’EF et renseignez son paramètre F_AD par l'adresse de début de zone d'échange : 1128*. * Valeur préconisée par défaut avec une table d'échange qui débute avec %MW1000. A adapter si besoin à la structure de votre base de données. 3 Affectez le résultat de l’EF à un mot de diagnostic : l Exemple en langage à contacts (LD) %SW60:X0 OPERATE %MW0:=GET_STAT_CHART(1128) %SW60:X1 OPERATE %MW1:=SET_STAT_CHART(1128) l En langage littéral structuré (ST) IF %SW60:X0 THEN %MW0 : =GET_STAT_CHART (1128) ; END_IF; IF %SW60:X1 THEN %MW1 : =SET_STAT_CHART (1128) ; END_IF; l En langage liste d'instructions (IL) ! LD %SW60:X0 [ %MW0 : =GET_STAT_CHART (1128) ] ! LD %SW60:X1 [ %MW1 : =SET_STAT_CHART (1128) ] Le bit système %SW60:X0 signifie "Etat Normal" et %SW60:X1 signifie "Etat Secours". Remarque Le conditionnement de l'exécution des EF peut être réalisé au niveau des sections. Dans ce cas, la section sera différente pour chaque EF. L’exécution de ces EF est synchrone du cycle automate et réalisée en un cycle automate. 171 Les EF du pack logiciel Conseil d’utilisation des EF du contexte Grafcet Généralités 172 Les points suivants sont des conseils de mise en oeuvre des EF pour une utilisation optimale : l n’utilisez pas les EF Grafcet dans la tâche FAST, l utilisez l'EF Set_Stat_chart dans une section scrutée avant la section Grafcet. Ceci est impératif pour que le mot système %SW20 (qui indique le nombre d'étapes actives du Grafcet) soit positionné correctement lors de l'activation de l'EF, l si l'utilisation du bit système %S23 (figeage des graphes) est nécessaire dans l'application, tenez compte du fait que la section Grafcet est conditionnée (et donc non scrutée dans certains cas), l l'argument fourni dans l'appel des EF (qui indique l'adresse de la table) peut être soit une valeur immédiate (1000 par exemple, dans ce cas la table commence en %MW1000), soit une adresse mot (%MW1000 par exemple, dans ce cas c'est la valeur de %MW1000 qui indique l'adresse du début de table). Les EF du pack logiciel Ordre de rangement des bits d’étapes dans les bits de mots Généralités Chaque EF dédiée au Grafcet, sauvegarde ou restitue l’ensemble d’un contexte Grafcet, constitué de l'état des étapes et des macro-étapes. Le contexte Grafcet est stocké dans des bits contigus des mots %MW choisis. L'état d'une macro-étape constituée de n étapes est stockée sur n+2 bits, deux bits étant réservés pour l'état du IN et du OUT de la macro-étape. L’emplacement n’est donc pas figé dans la table et dépend de la configuration. Par contre la table comporte toujours 64 mots. Dans le cas où une étape n'est pas utilisée dans l’application, son bit d'état est positionné à 0 dans le bit du %MW correspondant. Le rangement dans la zone mémoire de 64 mots commence par l'état de la première étape. Cet état est stocké dans le bit X15 du premier mot %MW choisi. Les états suivants sont stockés dans les bits suivants. Exemple L'application du centre de traitement comporte 19 étapes configurées et une macroétape contenant 20 étapes. La zone d'échange choisie commence au mot %MW1128. Le stockage se fait suivant ce tableau : Bit Objet %MW1128:X15 Etat de l'étape %X0 %MW1128:X14 Etat de l'étape %X1 %MW1128:X13 Etat de l'étape %X2 %MW1128:X12 Etat de l'étape %X3 de %MW1128:X11 à %MW1128:X0 Etat de l'étape %X4 à %X15 %MW1129:X15 Etat de l'étape %X16 %MW1129:X14 Etat de l'étape %X17 %MW1129:X13 Etat de l'étape %X18 %MW1129:X12 Etat de %X0.IN %MW1129:X11 Etat de l'étape %X0.1 de %MW1129:X10 à %MW1129:X0 Etat de l'étape %X0.2 à %X0.12 %MW1130:X15 Etat de l'étape %X0.13 de %MW1130:X14 à %MW1130:X9 Etat de l'étape %X0.14 à %X0.19 %MW1130:X8 Etat de l'étape %X0.OUT de %MW1130:X7 à %MW1191:X0 0 173 Les EF du pack logiciel Paramètres d’entrées/sorties des EF dédiés au transfert régulation Eléments d’entrées/sorties des EF Les éléments d’Entrées/Sorties des EF dédiés au transfert régulation. EF Get_param_clc Paramètre Nature Type TYPE_REG Entrée Mot Signification Type de régulation : l 1 : Process, l 2 : 3 boucles simples l 3 : Cascade, l 4 : Autosélective l 5 : Programmateur de consigne INDEX Entrée Mot Index de la voie de régulation OFFSET Entrée Mot Offset dans la table de régulation PARAM_REG Entrée Mot Adresse du début des paramètres de la voie de régulation TABLE_TRANSFERT Sortie Mot Adresse de la table de transfert et longueur Note : Les informations qui ne sont pas des paramètres (variables calculées et mises à jour par l’algorithme) ne sont pas recopiés dans la table de transfert (exemple : PV, OUT, SQRT_OUT...). Il en est de même pour les %KW. EF Set_param_clc Paramètre Nature Type Signification PARAM_REG Entrée Mot Adresse du début des paramètres de la voie de régulation TABLE_TRANSFERT Entrée Mot Adresse de la table de transfert et longueur Note : La table de transfert ne contient que les paramètres de réglage. 174 Les EF du pack logiciel Table de transfert Codes de retour des EF Détail de la structure de la table de transfert. Code Signification %MWn Index %MWn+1 Type %MWn+2 Offset %MWn+3 Premier paramètre %MWn+4 Second paramètre ... ... Signification des codes de retour des EF Code Signification 16#FFFE Offset négatif ou offset plus longueur de transfert supérieur longueur maximum du type 16#FFFD Longueur négative ou longueur de transfert supérieure longueur maximum du type 16#FFFC Type de régulateur inexistant : type différent de 1,2,3,4 ou 5 16#FFFA Unité centrale pas au niveau requis 16#0000 Pas d’erreur 175 Les EF du pack logiciel Conseil d’utilisation des EF dédiés au transfert régulation Généralités 176 Les points suivants sont des conseils de mise en oeuvre des EF pour une utilisation optimale : l déclarez les voies de régulation avant d’écrire le programme contenant l’utilisation des EF, l utilisez l’EF Set_param_clc dans la section Bdd_vers_api, l utilisez l’EF Get_param_clc dans la section Api_vers_bdd. Les EF du pack logiciel Utilisation d’une application contenant les EF Généralités L'ouverture d'une application contenant les EF du contexte Grafcet ou les EF du transfert régulation par un PL7 non enrichi avec le pack logiciel est possible et n'affecte pas le fonctionnement de l'application. Les seules limitations sont : l l’accès aux fonctions en bibliothèque, une famille "23" apparaît au lieu de "Redondance", l il n'y a aucun commentaire associé aux EF ou aux paramètres. 177 Les EF du pack logiciel 178 Spécificités de la régulation 13 Présentation Objet de ce chapitre Ce chapitre indique les spécificités d’une architecture Warm Standby Premium qui intègre de la régulation puis propose un exemple de mise en oeuvre. Contenu de ce chapitre Ce chapitre contient les sous-chapitres suivants : Sous-chapitre Sujet Page 13.1 Objets transférés et fréquence des transferts 180 13.2 Exemple de régulation redondante 188 13.3 Cas particulier du programmateur de consigne 202 13.4 Exemples complémentaires 207 179 Spécificités de la régulation 13.1 Objets transférés et fréquence des transferts Présentation Objet de ce sous-chapitre Ce sous-chapitre présente les notions spécifiques à la redondance d’une application contenant des boucles de régulation. l Le type et le nombre d’objets transférés entre les deux automates. l La fréquence et les moyens de transfert de ces données. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet Objets à transférer 180 Page 181 Mot double "Ordre de commande" 184 Fréquence des échanges 187 Spécificités de la régulation Objets à transférer Présentation Lorsqu’une architecture Warm Standby Premium comprend de la régulation, il est nécessaire de partager les données de chaque voie de régulation. Ces données sont échangées par les DFB d’échange, elles sont de deux types : l Les tables périodiques. l Les paramètres. Les tables périodiques Une table périodique est composée de 6 flottants (12 mots) pour chaque boucle. Cette table contient les informations suivantes : Symbole Description OUT_MAN Sortie de la boucle PV Mesure SP Consigne OUT1 Sortie 1 OUT2 Sortie 2 STATUS Etat de la boucle Note : cette table périodique doit être déclarée dans le paramétrage du DOP (écran régulation). Note : le nombre maximum de mots à transférer est donc de 12 fois 60 boucles possibles (pour un TSX P57 453) soient 720 mots. Note : la mise à jour des tables du dialogue opérateur et des tables d’ouverture par la fonction régulation n’est réalisée que sur l’automate en état Normal. Sur l’UC en état Secours, ces tables ne sont pas rafraîchies et contiennent des valeurs quelconques. 181 Spécificités de la régulation Les paramètres Les paramètres sont récupérés et mis à jour par les 2 EF de la famille Redondance : Get_param_clc et Set_param_clc. Pour chaque voie de régulation, le nombre maximum de paramètres est défini dans le tableau ci-dessous. Type Désignation Nombre de mots 1 Boucle process 12 %MW + 1 %MD + 2 %MW + 89 %MF = 194 Mots 2 3 boucles simples 14 %MW + 1 %MD + 117 %MF + 3 %MW = 253 Mots 3 Boucle cascade 12 %MW + 1 %MD + 117 %MF + 3 %MW = 251 Mots 4 Boucle autosélective 12 %MW + 1 %MD + 117 %MF + 3 %MW = 251 Mots 5 Programmateur de consigne 8 %MW + 1 %MD + 10 %MW + 112 %MF = 244 Mots Certains paramètres sont recalculés par la boucle sur l’automate Secours. Toutes les informations d’état fournies dans ces tables et les mots de commande ne doivent pas être échangés dans une architecture Warm Standby. Pour chaque voie de régulation, les données à échanger donnent les nombres de mots suivants : Type Désignation Nombre de mots 1 Boucle process 2 %MW + 89 %MF = 180 Mots 2 3 boucles simples 117 %MF + 3 %MW = 237 Mots 3 Boucle cascade 117 %MF + 3 %MW = 237 Mots (1) 4 Boucle autosélective 117 %MF + 3 %MW = 237 Mots (1) 5 Programmateur de consigne 10 %MW + 112 %MF = 234 Mots (1) Légende : (1) : Sur ces types de boucles, il est impératif de ne transférer que cette quantité de paramètres pour un fonctionnement correct. La quantité de paramètres étant réduite, le champ Offset doit être adapté dans l’appel de l’EF. 182 Spécificités de la régulation Exemples de syntaxe (* Pour une boucle Process *) %MW100:=GET_PARAM_CLC(1,Index,14,%MWp.4.1.0,%MW4500:180); (* Pour la fonction 3 boucles Simples *) %MW100:=GET_PARAM_CLC(2,Index,16,%MWp.4.0,%MW4500:237); (* Pour une boucle Cascade *) %MW100:=GET_PARAM_CLC(3,Index,14,%MWp.4.0,%MW4500:237); (* Pour une boucle Auto-Sélective *) %MW100:=GET_PARAM_CLC(4,Index,14,%MWp.4.0,%MW4500:237); (* Pour un programmateur de consigne *) %MW100:=GET_PARAM_CLC(5,Index,10,%MWp.4.0,%MW4500:234); Note : L’appel de l’EF Set_param_clc doit être adapté avec la même dimension de paramètres que l’EF Get_Param_clc. (* Pour une boucle process *) %MW100:=SET_PARAM_CLC(%MWp.4.0,%MW4500:180); Les modes de marche Pour assurer un fonctionnement correct des régulateurs, le mode de marche de chaque régulateur est piloté par le mot "Ordre de commande". Ce mot est positionné par le mot "Etat de la boucle" qui est contenu dans la table périodique. 183 Spécificités de la régulation Mot double "Ordre de commande" Présentation Le mot double ordre de commande, défini dans la configuration de chaque boucle, permet d’envoyer une ou plusieurs commandes de changement de mode de marche. Le mot double %MD désiré est saisi avec les paramètres boucles de l’écran de configuration. Les 16 premier bits de X0 à X15 sont les mêmes que ceux du mot d’état (mot de status) de la table des données périodiques. Ce mot simple est recopié dans la première partie du mot double ordre de commande. Note : si l’option RAZ des %MWi sur reprise à froid est cochée dans l’écran de configuration du processeur, le bit X28 du double mot ordre de commande sera remis à 0 lors du premier tour de cycle suivant la reprise à froid. Il est donc impératif que le bit X28 soit mis à 1 par l’application dans la section de traitement de la reprise à froid (gestion des modes de marche de l’application). 184 Spécificités de la régulation Description Ce tableau décrit chaque bit du double mot ordre de commande. Bit du double mot Bit du mot simple associé Description Indication Commande (1) %MDi:X0 %MWi:X0 0 : Manu, 1 : Auto X X %MDi:X1 %MWi:X1 Tracking X X %MDi:X2 %MWi:X2 Autoréglage X X %MDi:X3 %MWi:X3 0 : Remote, 1 : Local X X %MDi:X4 %MWi:X4 Sortie 1 du ON OFF ou du SERVO X X(2) %MDi:X5 %MWi:X5 Sortie 2 du ON OFF3 ou du SERVO X X(2) %MDi:X6 %MWi:X6 Sortie 1 du SERVO2 X - %MDi:X7 %MWi:X7 Sortie 2 du SERVO2 X - %MDi:X8 %MWi:X8 Sélection SP1 ou SP2 X X %MDi:X9 %MWi:X9 Autosélecteur en mode autosélection X X %MDi:X10 %MWi:X10 Autosélecteur en mode boucle principale en direct X X X %MDi:X11 %MWi:X11 Autosélecteur en mode boucle contrainte en direct X %MDi:X12 %MWi:X12 Sortie PID1 ou PID2 sélectionnée X %MDi:X13 %MWi:X13 Réservé - - %MDi:X14 %MWi:X14 Réservé - - %MDi:X15 %MWi:X15 Réservé - - %MDi:X16 %MWi+1:X0 0 : non utilisation de la recopie, 1 : utilisation de la recopie X X %MDi:X17 %MWi+1:X1 0 : dégel de la totalisation, 1 : gel de la totalisation X X %MDi:X18 %MWi+1:X2 Réinitialisation de la totalisation X(3) %MDi:X19 %MWi+1:X3 Retour aux réglages précédents - X(3) %MDi:X20 %MWi+1:X4 Acquittement des diagnostics de l’autoréglage - X(3) %MDi:X21 %MWi+1:X5 Réinitialisation du SERVO1 - X(3) %MDi:X22 %MWi+1:X6 Réinitialisation du SERVO2 - X(3) - %MDi:X23 %MWi+1:X7 Sauvegarde des paramètres - X(3) %MDi:X24 %MWi+1:X8 Réservé - - %MDi:X25 %MWi+1:X9 Réservé - - %MDi:X26 %MWi+1:X10 Réservé - - %MDi:X27 %MWi+1:X11 Réservé - - %MDi:X28 %MWi+1:X12 0 : Interdiction d’écriture du mot de commande, 1 : autorisation d’écriture du mot de commande X X %MDi:X29 %MWi+1:X13 Réservé - - 185 Spécificités de la régulation Bit du double mot Bit du mot simple associé Description Indication Commande (1) %MDi:X30 %MWi+1:X14 Réservé - - %MDi:X31 %MWi+1:X15 Réservé - - Légende X : Oui - : Non (1) : la commande n’est prise en compte que si le bit X28 est à 1 (2) : pour la fonction, il n’y a pas de commande associée, c’est une simple indication (3) : le bit est remis automatiquement à zéro 186 Spécificités de la régulation Fréquence des échanges Principe Les éléments de la table périodique sont les plus critiques pour le fonctionnement de la régulation. Ils sont également succeptibles d’être modifiés souvent (commande opérateur, mesure et calcul effectué par la boucle). Il est conseillé d’utiliser un DFB de type Ha_db_cycle_opt ou le DFB de type Ha_db_basic si le nombre de mots à échanger est faible (nombre de boucles inférieur à 10). Note : le DFB Ha_db_basic dispose d’une zone libre utilisateur de 125 mots maximum en configuration par défaut. Pour les tables de paramètres qui seront échangées plus lentement car leurs éléments sont modifiés moins souvent, il est conseillé d’utiliser les DFB Ha_db_size_opt. 187 Spécificités de la régulation 13.2 Exemple de régulation redondante Présentation Objet de ce sous-chapitre Ce sous-chapitre présente un exemple de redondance Warm Standby Premium dont l’application contient des boucles de régulation. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : 188 Sujet Page Description de l’exemple 189 Comment utiliser les DFB 190 Comment paramétrer les DFB d’échange 191 Comment configurer le dialogue opérateur 192 Modes de marche 193 Programmation de la section Init 194 Programmation de la section Api_vers_bdd 196 Programmation de la section Bdd_vers_api 198 Programmation de la section Regulation_pid 200 Spécificités de la régulation Description de l’exemple Présentation Cet exemple consiste à mettre en oeuvre une architecture redondante Warm Standby Premium dont l’application comporte 16 boucles de régulation de type process. D’autre part, des tables d’ouverture seront utilisées pour un Magelis connecté sur FIPIO. Ce Magelis pourra alors piloter les 16 boucles de l’architecture redondante. 189 Spécificités de la régulation Comment utiliser les DFB Présentation Pour effectuer les mises à jour des informations de régulation sur les deux automates Normal et Secours, il est nécessaire d’utiliser les DFB de transfert de la Base de Données. Marche à suivre Ce tableau décrit les étapes à respecter pour utiliser les DFB de transfert. Etapes 190 Action 1 Utilisez un DFB Ha_db_basic pour transférer les sorties TOR, les étapes Grafcet, les sorties TOR FIPIO et les E/S analogiques FIPIO. 2 Utilisez un DFB de type Ha_db_cycle_opt pour échanger les valeurs périodiques des 16 boucles soient 16 x 12 = 192 mots %MW. 3 Utilisez un DFB de type Ha_db_size_opt pour échanger les valeurs des paramètres des 16 boucles. Remarque : la table des paramètres de chaque boucle occupe 194 mots %MW et 3 mots %MW d’entête qui permettent d’identifier chaque table par rapport aux voies de régulation, soient 197 mots. Un multiplexage applicatif permet l’utilisation d’un seul DFB, ainsi, les autres DFB d’échange sont disponibles pour le reste du process. En conséquence, la mise à jour des 16 boucles de régulation prend 32 cycles automate, ce délai est correct pour une grande majorité de cas. Spécificités de la régulation Comment paramétrer les DFB d’échange Présentation Pour chaque DFB d’échange, il est nécessaire de définir la zone de mots qui sera transférée entre les deux automates. Marche à suivre Ce tableau décrit les étapes à suivre pour définir les zones de mots associées aux DFB. Etape Action 1 Configurez le DFB Ha_db_basic avec les adresses %MW4000 à %MW4499 soit 500 mots. 2 Configurez le DFB Ha_db_size_opt avec les adresses %MW4500 à %MW4696 soit 197 mots. 3 Configurez le DFB Ha_db_cycle_opt avec les adresses %MW3500 à %MW3691 soit 192 mots. Remarque : cette table correspond à l’adresse par défaut de la table périodique indiquée dans le paramétrage du dialogue opérateur sur l’écran de configuration de la régulation. 191 Spécificités de la régulation Comment configurer le dialogue opérateur Présentation Le dialogue opérateur permet d’utiliser un Magelis XBT-F afin de piloter les boucles de régulation. (Voir Manuel Métiers Automates Premium Régulation) Marche à suivre Ce tableau décrit les étapes à respecter afin de configurer le dialogue opérateur. Etape 192 Action 1 Cliquez sur le bouton Configuration du DOP de l’écran de configuration de la régulation. 2 Sélectionnez les 16 régulateurs à exploiter. 3 Cliquez sur le bouton Détails afin d’accéder à l’écran étendu de sélection des tables. Remarque : les tables Programmateur de consigne sont inhibées. 4 Utilisez les valeurs par défaut définies pour la table d’échange périodique : %MW3500. Remarque : c’est la zone définie également pour le DFB. 5 Conservez également les valeurs par défaut pour la table multiplexée, la table XBT et la table des alarmes afin de pouvoir utiliser l’application de dialogue opérateur fournie en standard pour le Magelis. Spécificités de la régulation Modes de marche Principes de fonctionnement Pour assurer la gestion correcte des modes de marche des régulateurs et une commutation sans à-coup entre les automates Normal et Secours, les correcteurs des régulateurs doivent être forcés en mode manuel. Ceci est valable pour tous les régulateurs sauf la boucle Maître d'un correcteur Cascade qui doit suivre complètement le mode de marche imposé par l'automate Normal. Note : pour obtenir une commutation Normal/Secours sans à-coup sur les régulateurs, l’option SANS A COUP doit avoir été sélectionnée sur chacun d’eux. Les traitement des régulations sont toujours exécutés dans l’automate Secours. Les autres modes de marche reçus par l’automate Secours suivent les ordres exécutés dans l’automate Normal renseignés par le mot d’état. Note : pour gérer les changements de mode de marche d’une boucle, le mot Ordre de commande est utilisé. L’utilisation de ce mot permet de s’affranchir des contraintes du WRITE_CMD usuel. Ce mot de commande ne doit pas faire partie des mots échangés entre les deux automates. Le mot échangé est le mot d’état dont la structure est identique au mot de commande. 193 Spécificités de la régulation Programmation de la section Init Présentation La section Init effectue le prépositionnement des éléments de la redondance, elle ne doit être exécutée qu’une seule fois au lancement de l’automate. Le contenu minimum de cette section est donné ci-dessous. Programme (*initialisation des transferts des paramètres de régulation*) %MW100 := 1 ; (*Index du premier régulateur à traiter*) %MW4500:183 := 0 ; (*RAZ de la table de transfert des paramètres de régulation*) %MW101 := GET_PARAM_CLC(1,%MW100,14,%MWp.4.0,%MW4500:180); Commentaires L'adresse %MW4500 correspond à l'adresse du DFB Ha_db_size_opt défini précédemment pour l'échange des informations. Le lancement de l'instruction GET_PARAM_CLC permet de déclencher les cycles de transfert (activation du bit %SW61:X15 sur l'automate Secours). Le mot %MW101 contient le code d'exécution de l'EF et permet l'analyse des erreurs éventuelles. La lettre "p" pour l’adresse de la voie de régulation correspond à l’emplacement du processeur de l’automate. Dans une architecture Warm Standby Premium, le mot de commande doit être autorisé en écriture. Ceci est fait automatiquement par la fonction régulation. Pour vérification, c'est le bit X28 du mot de commande qui est positionné à 1 sur le principe suivant : mis à 1 lors du 1er tour de cycle programme quelque soit l'état de l'automate (Normal ou Secours), mis à 1 systématiquement si l'automate est en état Secours. Note : Si l'option "RAZ des %MWi sur reprise à froid" est cochée sur la configuration de l'UC automate, l'initialisation automatique à 1 (par la fonction régulation) du bit X28 du mot de commande sera remise à zero lors du 1er tour de cycle automate et avec une action Reset. Dans ce cas, il est nécessaire de programmer dans la section Init la mise à 1 du bit pour chaque mot de commande utilisé. Cette mise à 1 ne doit se faire que pendant l'exécution du 1er tour de cycle automate. 194 Spécificités de la régulation Exemple IF NOT %M0 THEN %MW201:X12:=TRUE;(* Le mot de commande de cette boucle est %MD200 *) %MW203:X12:=TRUE;(* Le mot de commande de cette boucle est %MD202 *) ... SET %M0;(* Init terminée *) END_IF; 195 Spécificités de la régulation Programmation de la section Api_vers_bdd Présentation La section Api_vers_bdd est conditionnée par le bit état Normal (%SW60:X0). Cette section récupère les paramètres de chaque boucle et les positionne dans la table d’échange du DFB Ha_db_size_opt. Programme (* Gestion des demandes d'envoi d'une nouvelle table. *) IF (%SW64:X15 AND NOT %SW61:X15) OR (NOT %SW64:X15 AND %SW61:X15) THEN (* Si régulateur N°1, recopier tous les paramètres dans la table d'échange *) IF %MW100 = 1 THEN %MW102:=GET_PARAM_CLC(1,%MW100,14,%MWp.4.0,%MW4500:180); END_IF; (* Si régulateur N°2, recopier tous les paramètres dans la table d'échange *) IF %MW100 = 2 THEN %MW102:=GET_PARAM_CLC(1,%MW100,14,%MWp.5.0,%MW4500:180); END_IF; (* Si régulateur N°3, recopier tous les paramètres dans la table d'échange *) IF %MW100 = 3 THEN %MW102:=GET_PARAM_CLC(1,%MW100,14,%MWp.6.0,%MW4500:180); END_IF; (* Si régulateur N°4, recopier tous les paramètres dans la table d'échange *) IF %MW100 = 4 THEN %MW102:=GET_PARAM_CLC(1,%MW100,14,%MWp.7.0,%MW4500:180); END_IF; ... (* Si régulateur N°X, recopier tous les paramètres dans la table d'échange *) IF %MW100 = X THEN %MW102:=GET_PARAM_CLC(1,%MW100,14,%MWp.X+3.0,%MW4500:180); END_IF; ... (* Si régulateur N°16, recopier tous les paramètres dans la table d'échange *) IF %MW100 = 16 THEN %MW102:=GET_PARAM_CLC(1,%MW100,14,%MWp.19.0,%MW4500:180); END_IF; (* Changer de régulateur pour la prochaine demande *) IF %MW100 < 16 THEN INC %MW100; ELSE %MW100 := 1; END_IF; END_IF; 196 Spécificités de la régulation Commentaires Les bits %SW61:X15 et %SW64:X15 sont gérés par l'EF GET_PARAM_CLC et font partie de la zone système réservée à la fonction Warm Standby. Le mot %MW102 contient le code d'execution de l'EF et permet l'analyse des erreurs éventuelles. 197 Spécificités de la régulation Programmation de la section Bdd_vers_api Présentation La section Bdd_vers_api est conditionnée par le bit état Secours (%SW60:X1). Cette section recopie les mots de la table d’échange du DFB Ha_db_size_opt dans les paramètres de chaque boucle. Note : le premier mot de la table d’échange indique la voie de régulation concernée. 198 Spécificités de la régulation Programme (* Si régulateur N°1, recopier les valeurs à partir de l'adresse %MW4500 vers l'adresse %MWp.4 des paramètres du régulateur *) IF %MW4500 =1 THEN %MW103:=SET_PARAM_CLC (%MWp.4, %MW4500 : 180); END_IF; (* Si régulateur N°2, recopier les valeurs à partir de l'adresse %MW4500 vers l'adresse %MWp.5 des paramètres du régulateur *) IF %MW4500 =2 THEN %MW103:=SET_PARAM_CLC (%MWp.5, %MW4500 : 180); END_IF; (* Si régulateur N°3, recopier les valeurs à partir de l'adresse %MW4500 vers l'adresse %MWp.6 des paramètres du régulateur *) IF %MW4500 =3 THEN %MW103:=SET_PARAM_CLC (%MWp.6, %MW4500 : 180); END_IF; (* Si régulateur N°4, recopier les valeurs à partir de l'adresse %MW4500 vers l'adresse %MWp.7 des paramètres du régulateur *) IF %MW4500 =4 THEN %MW103:=SET_PARAM_CLC (%MWp.7, %MW4500 : 180); END_IF; ... (* Si régulateur N°X, recopier les valeurs à partir de l'adresse %MW4500 vers l'adresse %MWp.X+3 des paramètres du régulateur*) IF %MW4500 = X THEN %MW103:=SET_PARAM_CLC (%MWp.X+3, %MW4500 :180); END_IF; ... (* Si régulateur N°16, recopier les valeurs à partir de l'adresse %MW4500 vers l'adresse %MWp.19 des paramètres du régulateur *) IF %MW4500 =16 THEN %MW103:=SET_PARAM_CLC (%MWp.19, %MW4500 : 180); END_IF; Commentaires Le mot %MW103 contient le code d'execution de l'EF et permet l'analyse des erreurs éventuelles. 199 Spécificités de la régulation Programmation de la section Regulation_pid Présentation La section Regulation_pid est non conditionnée. Elle peut exister également lorsque l’application utilise des EF PID . Dans cet exemple, elle gère les changements de mode de marche des régulateurs. Note : les modes de marche sont gérés avec les mots de commande qui doivent obligatoirement être déclarés dans chaque boucle de régulation. Ce tableau fournit les adresses des mots de commande et d’état de chaque boucle de régulation. 200 Boucle de régulation Mot de commande Mot d’état 1 %MD200 %MW3510 2 %MD202 %MW3522 3 %MD204 %MW3534 4 %MD206 %MW3546 5 %MD208 %MW3558 6 %MD210 %MW3570 7 %MD212 %MW3582 8 %MD214 %MW3594 9 %MD216 %MW3606 10 %MD218 %MW3618 11 %MD220 %MW3630 12 %MD222 %MW3642 13 %MD224 %MW3654 14 %MD226 %MW3666 15 %MD228 %MW3678 16 %MD230 %MW3690 Spécificités de la régulation Programme (* Boucle 1 *) %MW200:=%MW3510;(* Récupère tous les états de l'API dual *) %MW200:X0:=%MW3510:X0 AND %SW60:X0;(* Force boucle en Manu *) (* Boucle 2 *) %MW202:=%MW3522;(* Récupère tous les états de l'API dual *) %MW202:X0:=%MW3522:X0 AND %SW60:X0;(* Force boucle en Manu *) ... (* Boucle 16 *) %MW230:=%MW3690;(* Récupère tous les états de l'API dual *) %MW230:X0:=%MW3690:X0 AND %SW60:X0;(* Force boucle en Manu *) Commentaires Le bit %SW60:X0 indique l’état normal de l’UC. Certains éléments du programme ci-dessus sont indexables et peuvent être traités par une boucle. Pour une meilleure compréhension de l’exemple, ce principe n’a pas été appliqué. 201 Spécificités de la régulation 13.3 Cas particulier du programmateur de consigne Présentation Objet de ce sous-chapitre Ce sous chapitre décrit les particularités d’une application Warm Standby dont l’applicatif gère un programmateur de consigne. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : 202 Sujet Page Le programmateur de consigne 203 Programmation de la section Api_vers_bdd 205 Programmation de la section Bdd_vers_api 206 Spécificités de la régulation Le programmateur de consigne Présentation La mise en oeuvre d’un programmateur de consigne dans une architecture Warm Standby Premium diffère des autres boucles de régulation. Les EF de transfert des paramètres sont en mesure de traiter tous les paramètres d’un programmateur de consigne, cependant les modes de marche ne sont pas assignés à un mot de commande comme pour les autres boucles. Par conséquence, son fonctionnement nécessite une mise en oeuvre applicative pour le basculement, le changement de profil et la gestion des modes de marche. Sur le même principe que pour les autres boucles de régulation, le mot d’état du programmateur de consigne de l’automate Normal sert à positionner le mot de commande du programmateur de consigne de l’automate Secours. Pour assurer la cohérence de l’information en sortie du programmateur de consigne, il est nécessaire d’échanger cette information calculé (SP) en même temps que les informations d’état. Note : pour un programmateur de consigne, il n’y a pas de zone spécifique dans la table périodique. ATTENTION Risques de dysfonctionnement de la redondance En mode connecté, il est formellement interdit d’intervenir sur l’automate Secours à l’aide des écrans métier (exemple : la mise en stop du programmateur de consigne sur l’automate Secours fait qu’il ne prend plus en compte les informations du Normal). Le non-respect de ces précautions peut entraîner des lésions corporelles ou des dommages matériels. Exemple de mise en oeuvre Un exemple simple de mise en oeuvre d’un SPP avec 1 profil est détaillé dans les chapitres suivants. 203 Spécificités de la régulation Eléments utilisés Deux éléments par programmateur de consigne sont utilisés : l le mot d’état du profil, l la valeur de la consigne calculée (SP). L’accès aux mots d’état et de commande s’effectue par la table d’ouverture du programmateur de consigne. Cette table possède une structure équivalente à la table multiplexée du programmateur de consigne, de plus elle est disponible en permanence. Note : La valeur de la consigne calculée est située dans l’objet %[email protected] Données transférées Les transferts de données entre les deux automates Normal/Secours s’effectue à l’aide du DFB Ha_db_base avec 4 mots par programmateur de consigne. Le tableau suivant est un exemple de 4 mots associés à un programmateur de consigne. Type de mot Description %MW Index : sa valeur indique le numéro du programmateur de consigne concerné par les mots suivants. %MW Mot d’état : il provient de la table d’ouverture, c’est la recopie de l’équivalent du mot %MW3359 de la table des paramètres multiplexés du programmateur de consigne. %MF Valeur SP calculée : recopie du %[email protected]. Note : la table d’ouverture est à paramétrer dans la configuration DOP des écrans régulation. Chaque table d’ouverture occupe 125 mots %MW. Dans l’exemple qui suit, cette table commence à l’adresse %MW6350. Le second mot de cette table, celui qui donne l’autorisation d’écriture, doit être initialisé à zéro. 204 Spécificités de la régulation Programmation de la section Api_vers_bdd Présentation La section Api_vers_bdd est conditionnée par le bit état Normal (%SW60:X0). Cette section récupère les paramètres du programmateur de consigne et les positionne dans la table d’échange du DFB Ha_db_base. Cet exemple peut s’insérer dans une application de redondance existante, pour cela il suffit d’insérer la ligne de programme suivante dans la boucle de mise à jour de la base de données échangée. Puis pour chaque programmateur de consigne, ajouter hors de la boucle les lignes décrites au paragraphe Programme 2. Programme 1 (* Transfert paramètres à partir de l’offset 20 *) IF %MW100 = 6 THEN %MW102:=GET_PARAM_CLC(5,%MW100,20,%MWp.8.0,%MW4500:224); END_IF; Commentaires Dans ce cas, l’index vaut 6 et la voie de régulation qui contient le programmateur de consigne est la voie 8. Ces éléments sont à adapter à chaque configuration. Programme 2 (* Transfert Status et SP calculé du SPP vers l'UC Secours *) (* On prend les paramètres du 1er programmateur de consigne dans la table d'ouverture *) IF %MW6353=0 THEN (* Indique le numéro du programmateur de consigne :*) (* 0 pour le premier) (* Les 2 mots utilisés font partie du DFB Base *) %MW4450:=1;(* Indique que le status est pour le 1er *) %MW4451:=%MW6359;(* Mot d’état *) %MF4452:=%MF1.8.20;(* Mot SP de sortie *) END_IF; 205 Spécificités de la régulation Programmation de la section Bdd_vers_api Présentation La section Bdd_vers_api est conditionnée par le bit état Secours (%SW60:X1). Cette section recopie les mots de la table d’échange dans les paramètres du programmateur de consigne. Programme (* Si régulateur N° 6, recopier les valeurs à partir de l’adresse %MW4500 vers l’adresse %MWp.8.0 des paramètres du régulateur *) IF %MW4500=6 THEN %MW103:=SET_PARAM_CLC(%MWp.8.0,%MW4500:224); END_IF; Ajoutez également les lignes suivantes pour chaque programmateur de consigne. Ceci permet de positionner les modes de marche (via la table d’ouverture) et le SP calculé. (* Positionne le mot de commande SPP en fonction du status reçu de l’UC Normal *) (* Test pour quel SPP on à les paramètres périodiques *) IF %MW4450=1 THEN %MW6375:X8:=%MW4451:X9;(* Init *) %MW6375:X9:=%MW4451:X10;(* Run / Stop *) %MW6375:X10:=%MW4451:X8;(* Hold PF *) %MW6375:X13:=%MW4451:X12;(* Hold PAG *) %MF1.8.20:=%MF4452;(* SP calculé *) END_IF; 206 Spécificités de la régulation 13.4 Exemples complémentaires Présentation Objet de ce sous-chapitre Ce sous chapitre décrit des exemples qui mettent en oeuvre des fonctionnalités du double mot ordre de commande. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet Page Exemple de sauvegarde des paramètres 208 Exemple d’utilisation d’un Magelis 209 207 Spécificités de la régulation Exemple de sauvegarde des paramètres Présentation La sauvegarde des paramètres d’une boucle de régulation peut s’effectuer de plusieurs manières, dans tous les cas il est nécessaire d’utiliser le double mot ordre de commande (Voir Mot double "Ordre de commande", p. 184) décrit dans le manuel de régulation. Deux cas sont traités dans les paragraphes qui suivent : l Sauvegarde provoquée par une action depuis le terminal Magelis. l Sauvegarde provoquée par une autre commande. Sauvegarde par le Magelis l l l L’application présente dans le Magelis actionne le bit %MW3707:X15. Le double mot ordre de commande est %MD2050. La table des paramètres multiplexés pour une boucle est par défaut située à l’adresse %MW3700. Ce tableau donne le contenu à ajouter aux deux sections de transfert Sauvegarde par une autre commande 208 Section Contenu Api_vers_bdd (*Recopie commande*) %MW1481:X0:=%MW3707:X15; (N° boucle concernée*) %MW1482 := %MW3700; Commentaire : recopie dans la zone d’échange (%MW1000 à %MW1499) des deux paramètres. Bdd_vers_api IF %MW1482=0 THEN %MW2051:X7:=%MW1481:X0; END_IF; Commentaire : récupère la commande et la recopie dans l’ordre de commande de la boucle concernée (le mot %MW2051 est la deuxième partie du mot double ordre de commande). L’applicatif à mettre en oeuvre est similaire à celui de la sauvegarde par Magelis. Au lieu d’utiliser le bit %MW3707:X15, transférez dans la zone d’échange, le bit de commande utilisé dans l’application. Spécificités de la régulation Exemple d’utilisation d’un Magelis Présentation Un terminal Magelis connecté sur le bus FIPIO de l’architecture permet de contrôler les boucles de régulation. Le numéro de la boucle sélectionnée par le Magelis doit être recopié sur l’automate Secours. Cette recopie permet, en cas de commutation, de continuer à visualiser la même boucle sur le terminal. l Le numéro de la boucle visualisée est indiquée par le mot %MW3700. La table des paramètres multiplexés pour une boucle est configurée par défaut en %MW3700. l La table spécifique XBT est configurée par défaut en %MW3810. Pour mettre en oeuvre l’utilisation du terminal, vous devez rajouter deux lignes de programme dans les sections : l Section Api_vers_bdd l Section Bdd_vers_api Ce tableau donne le contenu à ajouter aux deux sections de transfert l Section Contenu Api_vers_bdd %MW1482:=%MW3700; (*N° de boucle visualisée*) Commentaire : recopie du numéro de boucle visualisée dans la zone d’échange (%MW1000 à %MW1499) Bdd_vers_api %MW3810:=%MW1482; Commentaire : récupère et recopie le numéro de boucle visualisée dans le mot de la table spécifique XBT 209 Spécificités de la régulation 210 Mise au point 14 Introduction et mise au point Introduction Une application pour une architecture Warm Standby Premium intègre la partie contrôle/commande du procédé et la partie spécifique à la redondance (DFB d’échange de la Base de Données, EF Grafcet et régulation, préconisations de développement). Pour la mise au point de l’application, nous distinguerons ces deux parties et procéderons en deux étapes. Mise au point du Contrôle/ Commande du procédé La mise au point de l’application doit être effectuée sur un seul automate. Ce dernier est automatiquement Normal. Cette mise au point est identique à celle d’une application pour automate simple. Tous les outils proposés par PL7 sont utilisables. 211 Mise au point Mise au point de la Partie Redondance La mise au point de l’application doit être effectuée avec le Warm Standby Premium. Les outils de mise au point proposés par PL7 ne doivent pas être utilisés (exemple : le "pas à pas"). Ils introduisent des dysfonctionnements dans l’architecture Warm Standby Premium. Nous vous conseillons de procéder comme suit : l Vérification statique l les préconisations de développement ont été appliquées, l les variables d’état de l’application sont dans la Base de Données échangée entre les deux automates, l lors de l’utilisation de Grafcet, les deux EF Get_Stat_Chart et Set_Stat_Chart sont utilisées, l lors de l’utilisation des boucles de régulation, les deux EF Get_param_clc et Set_param_clc sont utilisées. l Vérification dynamique l Suite à la mise sous tension de chaque automate (application déjà transférée), vérifiez que la fonction de redondance s’exécute correctement dans chaque automate : le bit %SW61:X7 est égal à 1. Le Warm Standby Premium étant dans le mode de fonctionnement Nominal, vérifiez que : l les sections conditionnées par l’état Normal sont exécutées dans l’automate Normal, l les sections conditionnées par l’état Secours sont exécutées dans l’automate Secours, l sur l’automate Normal : l absence d’erreur sur les DFB d’échange (sortie D_er sur chaque instance des DFB), l absence d’erreur sur le mot de diagnostic de chaque DFB d’échange (sortie Diag sur chaque instance des DFB). 212 Exploitation IV Présentation Objet de cet intercalaire Cet intercalaire présente l’architecture Warm Standby Premium en exploitation Contenu de cette partie Cette partie contient les chapitres suivants : Chapitre Titre du chapitre Page 15 Démarrage du Warm Standby Premium 215 16 Modification du programme en mode connecté 219 17 Commutation volontaire du Warm Standby Premium 223 18 Comportement sur premier événement 227 213 Exploitation 214 Démarrage du Warm Standby Premium 15 Présentation Objet de ce chapitre Ce chapitre décrit le démarrage et l’arrêt d’une architecture du Warm Standby Premium. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Démarrage des deux automates 216 Chargement du programme 217 Arrêt du Warm Standby Premium 218 215 Démarrage du Warm Standby Premium Démarrage des deux automates Applications invalides Les automates n'ont pas d'application valide. A la mise sous tension, les automates sont en attente d'un transfert d'application, il n'y a pas d'élection Normal/Secours. Le premier automate recevant l'application deviendra l'automate Normal, l'autre automate sera l'automate Secours après chargement de l'application. Applications valides Le relais temporisé sur l'alimentation du rack principal d'un des deux automates permet de respecter l'unicité du Normal lors d'une mise sous tension simultanée. Lors de celle-ci, l'automate qui possède ce relais temporisé dans le câblage de son alimentation sera l'automate Secours. 216 Démarrage du Warm Standby Premium Chargement du programme Principe Le programme d'une architecture Warm Standby Premium est identique pour les deux automates. Le transfert de ce programme doit être réalisé dans les deux automates. La procédure de transfert est semblable à celle d'un automate simple. Note : A des fins de maintenance, un processeur préchargé peut être mis indifféremment dans l'automate A ou B. Lors d'une reprise à froid, suite à un transfert de programme, la fonction Redondance entraîne un retard de la fermeture du relais alarme. Ce retard est dû aux contrôles supplémentaires réalisés par la fonction Redondance lors d'un démarrage. Il est déconseillé de transférer un programme dans un automate Normal. Cette procédure mettant à l'arrêt l'automate, la disponibilité du contrôle/commande du procédé peut ne plus être assurée dans certaines situations (exemple : l'automate Secours est lui aussi à l'arrêt au moment du transfert). 217 Démarrage du Warm Standby Premium Arrêt du Warm Standby Premium Principe L'arrêt d'une architecture Warm Standby Premium est identique à l'arrêt d'un automate simple en respectant l'ordre d'arrêt suivant : l arrêt de l'automate Secours, l arrêt de l'automate Normal. L'arrêt de l'automate Secours avant l'arrêt de l'automate Normal évite une commutation inutile lors de l'arrêt de l'automate Normal. 218 Modification du programme en mode connecté 16 Présentation Objet de ce chapitre Ce chapitre décrit les modifications mineures et majeures du programme dans une architecture Warm Standby Premium. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Modifications mineures de l’application 220 Modifications majeures de l’application 221 219 Modification du programme en mode connecté Modifications mineures de l’application Généralités Une modification du programme en mode connecté est possible. Il faut suivre les précautions indispensables et les procédures de sécurité adaptées pour s'affranchir des dommages sur les biens, les équipements et les personnes. Aucune vérification d'application identique n'est réalisée entre les deux automates. Des applications différentes dans les automates Normal/Secours peuvent engendrer des dysfonctionnements Principe Le Warm Standby Premium étant en mode Nominal de fonctionnement, il est conseillé de suivre les étapes suivantes : l Modifiez l'application dans l'automate Normal. l Sauvegardez l'application. l Transférez l'application dans l'automate Secours. Ce transfert entraînant l'arrêt de l'automate Secours, il y a un passage temporaire du Warm Standby Premium en mode de fonctionnement dégradé. l Passez l'automate Secours en exécution afin de retrouver le mode de fonctionnement Nominal du Warm Standby Premium. Note : Une commutation Normal/Secours avec des applications différentes peut engendrer des aléas sur le procédé. Exemple Pour une modification engendrant un passage à 1 d'un bit ou d'une sortie, la commutation Normal/Secours empêchera le retour à 0.Le retour à une situation antérieure ne doit pas se faire par une commutation mais par suppression de la modification. Toutefois, la disponibilité étant privilégiée, une commutation est possible. Pour minimiser le risque d'apparition d'un aléa sur le procédé, il faut minimiser la taille et la durée des modifications. Pour effectuer une modification en ligne dans l'automate Secours, il est conseillé de mettre cet automate à l'arrêt. Cette précaution permet d'éviter tout risque lié à une défaillance de l'automate Normal pendant la modification en ligne de l'automate Secours. 220 Modification du programme en mode connecté Modifications majeures de l’application Principe L'architecture Warm Standby Premium étant en mode Nominal de fonctionnement, il est préférable de réaliser ces modifications en respectant les étapes suivantes : l Modifiez l'application en mode local (déconnecté). l Transférez l'application dans l'automate Secours. l Provoquez une commutation pour tenir compte des modifications. l Transférez l'application dans le second automate. 221 Modification du programme en mode connecté 222 Commutation volontaire du Warm Standby Premium 17 Présentation Objet de ce chapitre Ce chapitre décrit une commutation volontaire du Warm Standby Premium. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Introduction 224 Conditions de prise en compte dans l’automate Normal et Secours 225 Information "Automate Secours Inapte à devenir Normal" 226 223 Commutation volontaire du Warm Standby Premium Introduction Généralités Il est possible de provoquer une commutation à partir d'un superviseur ou d'un terminal en positionnant à 1 le bit système %S60. Cette demande est possible aussi bien dans l'automate Normal que dans l'automate Secours. Elle est possible pour les modes de fonctionnement Run, Stop et Halt de l'automate. Une prise en compte plus rapide sera obtenue dans l'automate Normal. Une fois la commutation effectuée, le système remet le bit %S60 à 0. 224 Commutation volontaire du Warm Standby Premium Conditions de prise en compte dans l’automate Normal et Secours Conditions dans l’automate Normal Les conditions de prise en compte de la demande de commutation volontaire dans l’automate Normal sont les suivantes : l Absence de défaillance de communication inter-automates. l Aucune défaillance grave du bus FIPIO pour l’automate Secours. l Pas de module TSX ETY 210 en défaut dans l’automate Secours. l Si l’automate Normal est en Run, l’automate Secours doit être aussi en Run ; la Base de Données doit être mise à jour. l Si l’automate Normal est en Stop, l’automate Secours doit être aussi en Stop. l Si l’automate Normal est en Halt, l’automate Secours doit être aussi en Halt. Conditions dans l’automate Secours Pour que la demande de commutation volontaire soit prise en compte dans l’automate Secours, la communication inter-automates doit être correcte et les conditions de prise en compte dans l’automate Normal doivent être remplies. 225 Commutation volontaire du Warm Standby Premium Information "Automate Secours Inapte à devenir Normal" Généralités Des contrôles sont effectués en permanence pour avertir de l'inaptitude de l'automate Secours à devenir Normal. L'information "Automate Secours Inapte à devenir Normal" est élaborée uniquement dans l'automate Normal. Cette information est à titre indicatif et ne conditionne pas implicitement une demande de commutation volontaire. L’information "Automate Secours Inapte à devenir Normal" est activée (%SW60:X11=1) si au moins une des conditions suivantes est vraie : %SW60:X6 = 1 indique un problème de communication entre un module TSX ETY 210 du Normal et le module TSX ETY 210 redondé du Secours %SW60:X9 =1 indique un problème de communication entre les deux automates ; ce qui entraîne l'impossibilité du Normal à récupérer le diagnostic du Secours %SW61:X0 =1 indique un problème sur l'échange de la Base de Données du Normal vers le Secours %SW63:X0=0 et %SW63:X1=0 indique que l'automate Normal dialogue avec un automate qui n'est ni Secours, ni Normal. La fonction redondance n'est pas active %SW63:X5 =1 indique une défaillance détectée par le Secours sur un module TSX ETY 210 %SW63:X7 =1 indique une défaillance grave du bus FIPIO sur le Secours %SW63:X9 =1 indique un problème de communication entre les deux automates ; ce qui entraîne l'impossibilité du Secours de récupérer le diagnostic du Normal %SW63:X14 =1 indique que l'automate Secours est arrêté par STOP %SW63:X15 =1 indique que l'automate Secours est arrêté par HALT SW63:X13=0 et %SW63:X14=0 et %SW63:X15=0 226 indique que l'automate Secours est en INIT Comportement sur premier événement 18 Présentation Objet de ce chapitre Ce chapitre décrit le comportement d’un premier événement à partir d’un fonctionnement nominal. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Introduction 228 Evénement : passage en Stop de l’automate Normal 229 Evénement : passage en Halt de l’automate Normal 231 Evénement : passage en Erreur de l’automate Normal 233 Evénement : perte de l’alimentation de l’automate Normal 235 Evénement : défaillance du module TSX ETY 210 de l’automate Normal 237 Evénement : défaut grave du bus FIPIO détecté par l’automate Normal 239 Evénement : défaillance de la communication entre les deux automates 241 Evénement : commutation Normal/Secours volontaire 243 227 Comportement sur premier événement Introduction Généralités L'architecture Warm Standby Premium est en fonctionnement nominal si les conditions suivantes sont remplies : l les deux automates sont en Run, l aucune défaillance n'est présente sur les communications entre les deux automates, l l'échange de la Base de Données et la lecture mutuelle des diagnostics sont corrects, l aucune défaillance n'est présente sur les modules de communication TSX ETY 210, l aucune défaillance grave du bus FIPIO n'est présente sur les deux automates. Les chapitres suivants précisent les conséquences d'un premier événement à partir d'un fonctionnement nominal. La disponibilité du contrôle/commande du procédé et de la communication TCP/IP est assurée pour chaque situation décrite. Tout événement sur l'automate Secours est sans influence sur le contrôle/ commande et la communication. Un diagnostic précis et clair est fourni pour une intervention efficace et rapide de l'équipe de maintenance. 228 Comportement sur premier événement Evénement : passage en Stop de l’automate Normal Phase 1 Le Warm Standby Premium est en fonctionnement nominal. Normal Phase 2 Secours L’arrêt de l’automate Normal provoque une commutation Normal/Secours. STOP de l’automate Normal Normal Secours 229 Comportement sur premier événement Phase 3 Au final, l’automate Secours est en Stop. L’automate Normal est en exécution et assure la disponibilité du contrôle/commande du procédé et de la communication. Secours 230 Normal Comportement sur premier événement Evénement : passage en Halt de l’automate Normal Phase 1 Le Warm Standby Premium est en fonctionnement nominal. Normal Phase 2 Secours Le passage en Halt de l’automate Normal provoque une commutation Normal/Secours. HALT de l’automate Normal Normal Secours 231 Comportement sur premier événement Phase 3 Au final, l’automate Secours est en Halt. L’automate Normal est en exécution et assure la disponibilité du contrôle/commande du procédé et de la communication. Secours 232 Normal Comportement sur premier événement Evénement : passage en Erreur de l’automate Normal Phase 1 Le Warm Standby Premium est en fonctionnement nominal. Normal Phase 2 Secours Le passage en Erreur de l’automate Normal provoque une commutation Normal/Secours. ERREUR de l’automate Normal Normal Secours 233 Comportement sur premier événement Phase 3 Au final, l’automate Secours est en Erreur. L’automate Normal est en exécution et assure la disponibilité du contrôle/commande du procédé et de la communication. Secours 234 Normal Comportement sur premier événement Evénement : perte de l’alimentation de l’automate Normal Phase 1 Le Warm Standby Premium est en fonctionnement nominal. Normal Phase 2 Secours La perte de l’alimentation de l’automate Normal provoque une commutation Normal/Secours. Perte de l’alimentation Normal Secours 235 Comportement sur premier événement Phase 3 Au final, l’automate Secours est hors tension. L’automate Normal est en exécution et assure la disponibilité du contrôle/commande du procédé et de la communication. Secours 236 Normal Comportement sur premier événement Evénement : défaillance du module TSX ETY 210 de l’automate Normal Phase 1 Le Warm Standby Premium est en fonctionnement nominal. Normal Phase 2 Secours Le module TSX ETY 210 de l’automate Normal détecte un défaut lors de ses autotests. Une commutation Normal/Secours s’effectue. Défaillance du TSX ETY 210 Normal Secours 237 Comportement sur premier événement Phase 3 Au final, la communication TCP/IP via le module TSX ETY 210 de l’automate Secours n’est plus possible. L’automate Normal est en exécution et assure la disponibilité du contrôle/commande du procédé et de la communication. Secours 238 Normal Comportement sur premier événement Evénement : défaut grave du bus FIPIO détecté par l’automate Normal Phase 1 Le Warm Standby Premium est en fonctionnement nominal. Normal Phase 2 Secours L’apparition d’un défaut grave sur le bus FIPIO provoque une commutation Normal/Secours. Défaut FIPIO Normal Secours 239 Comportement sur premier événement Phase 3 Au final, l’automate Secours n’a plus accès au bus FIPIO. L’automate Normal est en exécution et assure la disponibilité du contrôle/commande du procédé et de la communication. Secours 240 Normal Comportement sur premier événement Evénement : défaillance de la communication entre les deux automates Phase 1 Le Warm Standby Premium est en fonctionnement nominal. Normal Phase 2 Secours Il y apparition d’une défaillance sur la liaison Ethway inter-automates. Il n’y a pas de commutation Normal/Secours. Normal Secours Défaillance 241 Comportement sur premier événement Phase 3 Au final, l’automate Normal est en exécution et assure la disponibilité du contrôle/ commande du procédé et de la communication. L’automate Secours passe en arrêt. Normal 242 Secours Comportement sur premier événement Evénement : commutation Normal/Secours volontaire Phase 1 Le Warm Standby Premium est en fonctionnement nominal. Normal Phase 2 Secours Une commutation Normal/Secours est déclenchée. Commutation volontaire Normal Secours 243 Comportement sur premier événement Phase 3 Au final, l'automate Normal est en exécution et assure la disponibilité du contrôle/ commande du procédé et de la communication. Secours 244 Normal Maintenance V Présentation Objet de cet intercalaire Cet intercalaire présente les outils de diagnostic associés à une architecture Warm Standby Premium. Contenu de cette partie Cette partie contient les chapitres suivants : Chapitre Titre du chapitre Page 19 Diagnostic visuel 247 20 Informations de diagnostic 251 21 Diagnostic d’un fonctionnement correct 265 22 Méthode de recherche d’une défaillance 269 245 Maintenance 246 Diagnostic visuel 19 Présentation Objet de ce chapitre Ce chapitre décrit les différentes interprétations du diagnostic visuel d’une architecture Warm Standby Premium. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Identification visuelle de l’automate Normal 248 Identification visuelle du mode de fonctionnement Nominal 249 247 Diagnostic visuel Identification visuelle de l’automate Normal Généralités Face à l'architecture Warm Standby Premium, il est possible de distinguer visuellement l'automate Normal de l'automate Secours. Cette distinction est possible par le clignotement du voyant FIP indiquant une activité sur le bus FIPIO. Description Selon le tableau suivant : 248 Voyant FIP de l'automate A Voyant FIP de l'automate B Interprétation clignotant éteint l'automate A est l'automate Normal l'automate B est l'automate Secours éteint clignotant l'automate A est l'automate Secours l'automate B est l'automate Normal éteint éteint l'identification visuelle est impossible l'identification doit se faire par les mots de diagnostic clignotant clignotant cette situation est impossible avec une architecture Warm Standby Premium Diagnostic visuel Identification visuelle du mode de fonctionnement Nominal Généralités Le mode de fonctionnement Nominal fait apparaître l'état suivant sur les blocs de visualisation des processeurs et des modules TSX ETY 110. Description Selon le tableau suivant : Automate Normal Automate Secours Blocs de visualisation des processeurs Voyant RUN vert fixe vert fixe Voyant FIP jaune en clignotement régulier éteint Voyant I/O éteint rouge fixe Voyant ERR éteint éteint Blocs de visualisation des modules TSX ETY 110 Voyant RUN vert fixe vert fixe Voyant RX et TX jaune en clignotement régulier ou jaune fixe jaune en clignotement régulier ou jaune fixe Remarque : Cet état sur les blocs de visualisation des processeurs et des modules TSX ETY 110 n'implique pas forcément un mode de fonctionnement Nominal. Ainsi, cet état peut être observé sans échange de la Base de Données. Le voyant I/O rouge fixe sur l’automate Secours signale le fait que l’administrateur du bus FIPIO est inactif, ceci est un état normal dans cette architecture. 249 Diagnostic visuel 250 Informations de diagnostic 20 Présentation Objet de ce chapitre Ce chapitre décrit les différentes informations de diagnostic d’une architecture Warm Standby Premium. Contenu de ce chapitre Ce chapitre contient les sous-chapitres suivants : Sous-chapitre Sujet Page 20.1 Mots systèmes 252 20.2 Mots d’état 259 251 Informations de diagnostic 20.1 Mots systèmes Présentation Objet de ce sous-chapitre Ce sous-chapitre décrit les mots systèmes élaborés dans les automates d’une architecture Warm Standby Premium. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : 252 Sujet Page Presentation: Mots systèmes 253 Détail des bits et mots %SW de la redondance 254 Echange des mots de diagnostic entre automates 258 Informations de diagnostic Presentation: Mots systèmes Fonctionnement Les informations (mots systèmes de %SW60 à %SW69, mots %MWp.14.0, %MWp.99.0 et mots %MWp.14.2, %MWp.99.2) ne doivent pas être écrites par l'application ou par le dialogue opérateur. Le fonctionnement correct de l'architecture Warm Standby Premium n'est plus assuré si une telle écriture survient. Note : attention aux numéros de voie de redondance :14 pour les processeurs TSX P57 452 et 99 pour les processeurs TSX P57 353 et TSX P57 453. Description Dix mots systèmes sont élaborés dans chacun des automates d'une architecture Warm Standby Premium. Ce sont les mots %SW60 à %SW69. Le diagnostic spécifique à la redondance pour un automate local est disponible dans les mots %SW60 à %SW62. Dans chacun des automates, un diagnostic global de l'architecture Warm Standby Premium est élaboré à partir des diagnostics redondance des deux automates. Ce diagnostic global est stocké en %SW66. Le mot %SW67 contient l'adresse réseau et l'adresse station de l'automate dual, permettant d'établir la communication inter-automates. Ce mot doit être visualisé en hexadécimal. Les mots %SW68 et %SW69 contiennent une base de temps utilisée par les EF Tempo. Elle est transférée de l'automate Normal vers l'automate Secours pour mise à jour et synchronisation. 253 Informations de diagnostic Détail des bits et mots %SW de la redondance Signification des bits du mot %SW60 %SW60:X0=1 indique que l'automate est en état 'Normal' %SW60:X1=1 indique que l'automate est en état 'Secours' %SW60:X2=1 indique que l'automate est dans un état transitoire %SW60:X3=0 indique un défaut d'entrées/sorties sur FIPIO dans l'automate Normal ; c'est l'image du bit %S118 %SW60:X4=0 indique un défaut d'entrées/sorties en rack ; c'est l'image du bit %S119 %SW60:X5=1 indique un défaut détecté par autotests sur au moins l'un des TSX ETY 210 %SW60:X6=1 indique un défaut sur au moins l'une des liaisons entre un module TSX ETY 210 et son module dual %SW60:X7=1 indique un défaut grave du réseau FIPIO, par exemple un court-circuit ou un bornier débranché %SW60:X8=1 indique un défaut sur le module TSX ETY 110 utilisé pour la liaison interautomates %SW60:X9=1 indique un défaut de la communication inter-automates, il y a impossibilité de récupérer le diagnostic de l'automate dual %SW60:X10 est un bit réservé %SW60:X11=1 indique que l'automate Secours est inapte à devenir automate Normal, cette information est élaborée uniquement dans l'automate Normal, elle n'est pas significative dans l'automate Secours %SW60:X12=0 indique que l'automate est la station A %SW60:X12=1 indique que l'automate est la station B %SW60:X13=1 indique le mode Run de l'automate %SW60:X14=1 indique le mode Stop de l'automate %SW60:X15=1 indique le mode Halt de l'automate 254 Informations de diagnostic Signification des bits du mot %SW61 %SW61:X0=1 indique un problème sur l'échange de la Base de Données par la liaison Ethway inter-automates, cette information est élaborée uniquement pour l'automate Normal en Run %SW61:X1=1 indique un problème sur des communications entre un module TSX ETY 210 client TCP/IP avec un équipement tiers. Cette information est élaborée uniquement pour l'automate Normal en Run. Quand ce bit passe à 1, une commutation est provoquée si l'automate Secours est apte à devenir Normal %SW61:X2 est un bit réservé %SW61:X3 est un bit réservé %SW61:X4=1 indique un premier échange correct de la Base de Données %SW61:X5=1 indique que le processeur a été mis en Stop par la fonction redondance, le diagnostic est donné dans le mot %MWp.v.2 %SW61:X6=1 est un bit réservé %SW61:X7=0 indique un problème de configuration ou de fonctionnement de la fonction redondance, le diagnostic est donné dans le mot %MWp.v.2 %SW61:X7=1 indique que la fonction redondance est correctement configurée %SW61:X8 à %SW61:X14 sont des bits résérvés %SW61:X15=1 bit de séquencement d’échange pour les paramètres des boucles de régulation p désigne l'emplacement du processeur. v désigne le numéro de la voie redondance, 14 ou 99 selon le processeur (Voir Presentation: Mots systèmes, p. 253). 255 Informations de diagnostic Signification des octets du mot %SW62 Ce mot est la visualisation de la fonction arbitre de bus et producteur/consommateur du bus FIPIO. L'octet de poids faible indique l'état de la fonction producteur/consommateur. L'octet de poids fort indique l'état de la fonction arbitre de bus (BA). Valeur de l'octet : 256 16#00 la fonction n'existe pas (pas d'application FIPIO) 16#07 la fonction est en cours de STOP BA (l'ordre de STOP BA est envoyé, la commande n'est pas terminée) 16#0F la fonction est en cours de RUN BA (l'ordre de RUN BA est envoyé, la commande n'est pas terminée) 16#70 la fonction est initialisée mais pas opérationnelle (en STOP BA) 16#F0 la fonction est en cours d'exécution normale (en RUN BA) Informations de diagnostic Signification des bits du mot %SW66 Le diagnostic global %SW66:X0=0 indique un fonctionnement Dégradé du Warm Standby Premium %SW66:X0=1 indique un fonctionnement Nominal du Warm Standby Premium %SW66:X1=1 indique que l'automate A est l’automate Normal %SW66:X2=1 indique que l'automate B est l’automate Normal %SW66:X3=1 indique une défaillance de communication inter-automate Informations pour l’automate A %SW66:X4=1 indique une défaillance grave du réseau FIPIO sur l’automate A %SW66:X5=1 indique que l’automate A est en STOP %SW66:X6=1 indique que l'automate A est en Halt %SW66:X7=1 indique une défaillance de communication Ethernet TCP/IP de l’automate A (module TSX ETY 210 ou fonction client) %SW66:X8=1 indique une défaillance sur au moins l’un des modules en rack de l’automate A %SW66:X9=1 indique une défaillance sur au moins l’un des équipements FIPIO de l’automate A Informations pour l’automate B %SW66:X10=1 indique une défaillance grave du réseau FIPIO sur l’automate B %SW66:X11=1 indique que l’automate B est en STOP %SW66:X12=1 indique que l'automate B est en Halt %SW66:X13=1 indique une défaillance de communication Ethernet TCP/IP de l’automate B (module TSX ETY 210 ou fonction client) %SW66:X14=1 indique une défaillance sur au moins l’un des modules en rack de l’automate B %SW66:X15=1 indique une défaillance sur au moins l’un des équipements FIPIO de l’automate B 257 Informations de diagnostic Echange des mots de diagnostic entre automates Généralités Le diagnostic redondance de l'automate dual est disponible dans les mots %SW63 à %SW65. Les mots %SW63, %SW64 et %SW65 de l'automate Normal contiennent respectivement les mots %SW60, %SW61 et %SW62 de l'automate Secours. De même, les mots %SW63, %SW64 et %SW65 de l'automate Secours contiennent respectivement les mots %SW60, %SW61 et %SW62 de l'automate Normal. Illustration Cette illustration décrit l’échange de mots réalisé par la liaison Ethway interautomates (module TSX ETY 110). Automate Normal 258 Automate Secours Diagnostic standard %SWxx %SWxx Diagnostic redondance de l’automate %SW60, %SW61 et %SW62 %SW60, %SW61 et %SW62 Diagnostic redondance de l’automate dual %SW63, %SW64 et %SW65 %SW63, %SW64 et %SW65 Diagnostic global du Warm Standby Premium %SW66 %SW66 Informations de diagnostic 20.2 Mots d’état Présentation Objet de ce sous-chapitre Ce sous-chapitre décrit les mots d’état d’une architecture Warm Standby Premium. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet Page Mot d’état %MWp.v.2 260 Mot de commande %MWp.v.0 263 259 Informations de diagnostic Mot d’état %MWp.v.2 Généralités Dans les paragraphes qui suivent, nous utiliserons la notation %MWp.v.i ou %Ip.v.ERR afin de simplifier la lecture avec : l p vaut 0 ou 1 selon l’emplacement du processeur dans le rack de base. l v vaut 14 ou 99 selon le type de processeur utilisé : 14 pour un TSX P57 452 et 99 pour un TSX P57 353 ou un TSX P57 453. l i est le numéro du mot. Les bits %SW61:X7, %SW61:X5 et le mot %MWp.v.2 sont à interpréter ainsi : Après démarrage : si le bit %SW61:X7 = 1 et le bit %Ip.v.err =0, la fonction redondance a correctement démarré. Problème de configuration ou de fonctionnement de la fonction redondance Si %SW61:X7 = 0 et %SW61:X5 = 0 les valeurs prises par %MWp.v.2 peuvent être : Suite à une reprise à froid l 16#0180 indique que le processeur n'est pas au niveau requis 16#0280 indique un problème de récupération de l’adresse Réseau/Station à l’emplacement spécifié. Dans ce cas, le mot %SW67= 16#FFFF 16#0380 indique qu'aucune correspondance entre l’adresse Station récupérée et les adresses station paramètrées dans la fonction redondance n'a été trouvée 16#0480 indique que l’adresse de la station A est égale à l’adresse de la station B 16#0580 indique un problème d’exécution des fonctions de lecture et d’écriture des mots diagnostic en mémoire système 16#0680 indique un problème de mise en file d’abonnement 16#0780 indique que le module TSX ETY 110 de la liaison inter-automates n'est pas en Run Suite à une reprise à chaud 16#0280 indique un problème de récupération de l’adresse Réseau/Station à l’emplacement spécifié. Dans ce cas, le mot %SW67= 16#FFFF 16#0380 indique qu'aucune correspondance entre l’adresse Station récupérée et les adresses station paramètrées dans la fonction redondance n'a été trouvée 16#0480 indique que l’adresse de la station A est égale à l’adresse de la station B 16#0580 indique un problème d’exécution des fonctions de lecture et d’écriture des mots diagnostic en mémoire système En cours d’exécution 16#0580 260 indique un problème d’exécution des fonctions de lecture et d’écriture des mots diagnostic en mémoire système Informations de diagnostic L'automate est mis à l'arrêt par la fonction redondance l Si %SW61:X7 = 0 et %SW61:X5 = 1 les valeurs prises par %MWp.v.2 peuvent être : Suite à une reprise à froid ou une reprise à chaud 16#0280 indique un problème de récupération de l’adresse Réseau/Station à l’emplacement spécifié. Dans ce cas, le mot %SW67= FFFF 16#0380 indique qu'aucune correspondance entre l’adresse Station récupérée et les adresses station paramètrées dans la fonction redondance n'a été trouvée 16#0480 indique que l’adresse de la station A est égale à l’adresse de la station B L'automate est mis à l'arrêt par la fonction redondance Si %SW61:X7 = 1 et %SW61:X5 = 1 les valeurs prises par %MWp.v.2 peuvent être : En cours d’exécution l 16#0880 indique qu'il est impossible de récupérer les mots de diagnostic de l’automate dual (%SW) car pas de porte système 16#0980 indique qu'il est impossible de récupérer les mots de diagnostic de l’automate dual (%SW) car pas de socket 16#0A80 indique qu'il est impossible de récupérer les mots de diagnostic de l’automate dual (%SW) car mauvais code de réponse à la requête 16#0B80 indique qu'il est impossible de récupérer les mots de diagnostic de l’automate dual (%SW) car Time-Out sur requête 16#0C80 indique un problème de mise à jour de la Base de Données dans le secours (Bloc de Base et optionnellement les blocs d’extension) 16#0D80 indique que le bloc de base de la Base de Données n’a jamais été mis à jour dans le secours 16#0E80 indique un problème de lecture des mots %SW par le Normal Suite à un problème de communication Si %SW60:X9 = 1 les valeurs prises par %MWp.v.2 peuvent être : En cours d’exécution l 16#0880 indique qu'il est impossible de récupérer les mots de diagnostic de l’automate dual (%SW) car pas de porte système 16#0980 indique qu'il est impossible de récupérer les mots de diagnostic de l’automate dual (%SW) car pas de socket 16#0A80 indique qu'il est impossible de récupérer les mots de diagnostic de l’automate dual (%SW) car mauvais code de réponse à la requête 16#0B80 indique qu'il est impossible de récupérer les mots de diagnostic de l’automate dual (%SW) car Time-Out sur requête 16#0F80 indique que l’automate dual n’est ni Normal ni Secours 261 Informations de diagnostic l Causes de la commutation Normal/Secours En plus de valeurs mentionnées précédemment, le mot %MWp.v.2 consigne les causes du passage Normal/Secours, la valeurs peuvent être : 16#1080 Mise en STOP de l’automate 16#1180 Mise en HALT de l’automate 16#1280 Défaillance d’un modeule TSX ETY210 (%Iy.mod.err) 16#1380 Time-out sur EF de communication TCP/IP client (%SW61:X1) 16#1480 Demande de commutation volontaire 16#1580 Défaillance grave du bus FIPIO Note : la lecture de ce mot dans l’automate Secours permet de déterminer la raison de la commutation dans le cas où une commutation a au lieu. Si une commutation intempestive a eu lieu et que le mot ne contient aucune des valeurs mentionnée ci-dessus, la cause de la commutation peut être une mise hors tension. 262 Informations de diagnostic Mot de commande %MWp.v.0 Présentation Le mot de commande %MWp.v.0 est la tolérance sur le nombre de cycles entre deux lectures des mots diagnostic redondance de l'automate dual (%SW60, %SW61 et %SW62). Ce mot ne doit être modifié que dans des cas exceptionnels de problème de communication. Si la tolérance sur le nombre de cycles entre 2 lectures est dépassée, l'automate en état Secours est mis en Stop automatiquement. Contenu du mot Tolérance en nombre de cycles 0 10 cycles (valeur interne utilisée par défaut) x>0 x cycles 263 Informations de diagnostic 264 Diagnostic d’un fonctionnement correct 21 Présentation Objet de ce chapitre Ce chapitre décrit le fonctionnement correct d’une architecture Warm Standby Premium. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Fonctionnement correct après reprise à chaud ou à froid 266 Fonctionnement correct en exploitation 267 265 Diagnostic d’un fonctionnement correct Fonctionnement correct après reprise à chaud ou à froid Généralités Suite à un démarrage de l'automate, le bit diagnostic %SW61:X7 est égal à 1 pour indiquer une initialisation correcte de la fonction Redondance. Le mot d’état %MWp.v.2 (ou "p" est l'emplacement du processeur et "v" le numéro de la voie redondance) fournit le compte rendu de cette initialisation %MWp.v.2=0 indique une initialisation correcte. 266 Diagnostic d’un fonctionnement correct Fonctionnement correct en exploitation Généralités L'architecture Warm Standby Premium fonctionne correctement lorsque son mode de fonctionnement est Nominal. Le bit %SW61:X4 est égal à 1 dans l'automate Normal. Le bit %SW66:X0 est égal à 1 dans chaque automate. Les bits X3 à X7 et de X10 à X13 du mot de diagnostic global %SW66 doivent être à 0 dans chaque automate. 267 Diagnostic d’un fonctionnement correct 268 Méthode de recherche d’une défaillance 22 Présentation Objet de ce chapitre Ce chapitre décrit les différents algorithmes de recherche d'une défaillance. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Recherche de l’origine de la défaillance 270 Défaillance de la communication entre les deux automates 272 Défaillance grave du bus Fipio 274 Automate en arrêt 275 Défaillance de communication TCP-IP (module TSX ETY 210) 276 269 Méthode de recherche d’une défaillance Recherche de l’origine de la défaillance Présentation Pour rechercher l’origine d’une défaillance, nous vous conseillons de respecter la marche à suivre ci-dessous. Marche à suivre Ce tableau décrit les étapes de la recherche de l’origine d’une défaillance. Etape 270 Si ... Alors ... 1 %SW66:X0 = 1 (Fonctionnement nominal de l’architecture Warm Standby Premium) L’architecture Warm Standby Premium est en mesure d’assurer la disponibilité du contrôle/commande du procédé sur première défaillance : l %SW66:X1 = 1 indique que l’automate est l’automate A l %SW66:X2 = 1 indique que l’automate est l’automate B Passez à l’étape 9 2 %SW66:X0 = 0 (fonctionnement dégradé de l’architecture Warm Standby Premium) Recherchez la cause de cette dégradation en passant à l’étape 3 3 %SW66:X3=0 (la communication inter automate est correcte) Passez à l’étape 5 4 %SW66:X3=1 (la communication inter automate est défectueuse) Déterminez le type de défaillance (Voir Défaillance de la communication entre les deux automates, p. 272) 5 %SW66:X4=1 OU %SW66:X10=1 (défaillance grave sur FIPIO de l’automate A ou B) Déterminez le type de défaillance sur FIPIO (Voir Défaillance grave du bus Fipio, p. 274) 6 %SW66:X5=1 ou %SW66:X11=1 (automate A ou B en arrêt) Déterminez la cause de l’arrêt (Voir Automate en arrêt, p. 275) 7 %SW66:X6=1 ou %SW66:X12=1 (automate A ou B en HALT) Déterminez la cause du passage en HALT (Voir Manuel de Référence Tome 1) Remédiez à la cause sur HALT et passez l’automate en RUN 8 %SW66:X7=1 ou %SW66:X13=1 ou %SW60:X6=1 ou %SW63:X6=1 (problèmes de communication TCP-IP du module TSX ETY 210) Déterminez la cause de la défaillance (Voir Défaillance de communication TCP-IP (module TSX ETY 210), p. 276) Méthode de recherche d’une défaillance Etape 9 10 Si ... Alors ... %SW66:X9=1 ou %SW66:X15=1 (défaut FIPIO de l’automate A ou B) Au moins un équipement du bus FIPIO est en défaut. Connectez la console sur l’automate Normal et identifiez le défaut à l’aide du logiciel PL7. La réparation sera confirmée par les bits %SW66:X9 et %SW66:X15 à zéro. %SW66:X8=1 ou %SW66:X14=1 Au moins un module en rack est en (défaut du Rack de l’automate A ou B) défaut. Connectez la console sur l’automate Normal et identifiez le défaut à l’aide du logiciel PL7. La réparation sera confirmée par les bits %SW66:X8 et %SW66:X14 à zéro. 271 Méthode de recherche d’une défaillance Défaillance de la communication entre les deux automates Présentation En cas de défaillance de la communication entre les deux automates, le bit %SW66:X3 = 1 et il est nécessaire de déterminer les causes de ce dysfonctionnement. Marche à suivre Ce tableau décrit les étapes de la recherche de l’origine d’une défaillance. Etape 272 Si ... Alors ... 1 Le rack principal de l’automate Secours est hors tension. Mettez l’automate Secours sous tension puis en RUN. 2 L’alimentation du rack principal de l’automate Secours est défaillante. Changez l’alimentation du rack principal de l’automate Secours puis passez l’automate Secours en RUN. 3 Le processeur de l’automate Secours est en erreur. Effectuez la réparation en suivant les indications du manuel de référence puis passez l’automate Secours en RUN. 4 %SW60:X8=1 (Problème sur l’un des modules TSX ETY 110 dans l’un des deux automates). Effectuez la réparation en suivant les indications du manuel de communication Tome 3. La communication doit se rétablir automatiquement après remise en état du module. 5 La connectique entre les deux Vérifiez la connectique et remédiez au modules TSX ETY 110 est défaillante. problème. La communication doit se rétablir automatiquement. 6 %SW61:X0=1 ou %SW61:X4=0 dans Allez à l’étape 8. l’automate normal et/ou %SW64:X0=1 ou %SW64:X4=0 dans l’automate Secours. (Problème d’écriture de la base de données.) 7 Il n’y a pas de problème d’écriture de la Allez à l’étape 10. base de données. 8 %SW60:X9=0 et %SW63:X9=0 (Pas de problème de lecture des mots de diagnostic de l’automate dual.) Vérifiez que les DFB d’échange de la Base de données sont exécutés dans l’automate Normal. Vérifiez que la tolérance sur le nombre de cycles entre deux écritures d’un bloc de données est respectée : comparez les mots C_nbcyc et Ctlcycdb de chaque DFB d’échange pour vérifier un éventuel dépassement. Méthode de recherche d’une défaillance Etape Remarque Si ... Alors ... 9 %SW60:X9=1 ou %SW63:X9=1 (Problème de lecture des mots de diagnostic de l’automate dual.) Vérifiez la correspondance des adresses réseau/station en face avant des TSX ETY 110 et le paramétrage de la fonction Redondance. %MWp.v.2 contient le code du problème. Un problème simultané sur la messagerie principale (lecture du diagnostic) et la messagerie auxiliaire (échange de la base de données) a pour cause une défaillance physique mentionnée ci-dessus. Reprendre le diagnostic à l’étape 1. 10 %SW60:X9=1 ou %SW63:X9=1 (Problème de lecture des mots de diagnostic de l’automate dual.) Un problème de lecture du diagnostic isolé est peu probable. Il est alors conseillé de mettre en RUN l’automate Secours. En cas de répétition, augmentez la tolérance sur le nombre de cycles entre deux lectures de mots %SW en indiquant le nombre de cycles désiré dans %MWp.v.0. Par défaut, la valeur de ce mot est 0, ce qui correspond à 10 cycles. 11 %SW60:X9=0 et %SW63:X9=0 Reprendre l’analyse à l’étape 1. Lors d'une défaillance de communication entre les deux automates, la Base de Données ne peut plus être échangée. Si cette défaillance dure plus de deux secondes, l'automate Secours est placé dans un état d'arrêt avec l'impossibilité de devenir Normal. Le diagnostic et la maintenance d'une défaillance de communication entre les deux automates sont à analyser avec ceux d'un arrêt automate. La disponibilité du contrôle/commande du procédé est assurée lors d'une défaillance de la communication entre les deux automates. Toutefois, cette communication étant déterminante pour le fonctionnement de l'architecture Warm Standby Premium, il est impératif de réparer dans les plus brefs délais. 273 Méthode de recherche d’une défaillance Défaillance grave du bus Fipio Généralités Une défaillance FIPIO est considérée grave, dans le cadre de l'architecture Warm Standby Premium, lorsque l'arbitre de bus ne peut plus être en RUN. Cette défaillance est signalée à partir des informations diagnostic bus FIPIO suivantes : l %SW153:X4 signale un défaut de couche physique ; correspond à une absence prolongée de transmission au niveau couche physique. l %SW153:X7=1 signale un défaut de courant qui correspond à un défaut pour lequel l'émetteur produit sur la ligne, lorsqu'il est sollicité, un courant inférieur à la limite minimale de fonctionnement définie. Ce défaut est par exemple provoqué par une élévation de l'impédance de ligne (ligne ouverte ...). Sur apparition de l'un de ces défauts, la défaillance grave du bus FIPIO est signalée par %SW60:X7=1. Ces défauts correspondent à des erreurs physiques de type : bornier FIPIO déconnecté du processeur, l court-circuit sur la ligne, l ouverture de la ligne, l impédance de ligne défaillante. l Dans la majorité des cas, la réparation est rapide car l'erreur est évidente (exemple : bornier déconnecté). Lorsque cette erreur n'est pas détectable rapidement, il est conseillé de changer systématiquement les bouchons de terminaison. Une défaillance de ceux-ci peut entraîner un dysfonctionnement dont l'effet dépend de la topologie du bus et des conditions électromagnétiques. Le bit %SW60:X7 repasse à 0 environ 30 secondes après la réparation. Ce temps est nécessaire pour s'assurer d'un retour au bon fonctionnement du bus FIPIO. Note : La disponibilité du contrôle/commande du procédé est assurée lors d'une défaillance grave du bus FIPIO à partir du mode Nominal de fonctionnement du bus FIPIO. Toutefois, la fonction arbitre de bus FIPIO étant déterminante pour le fonctionnement de l'architecture Warm Standby Premium, il est impératif de réparer dans les plus brefs délais. Note : Les défaillances FIPIO sont traitées dans le manuel Métier communication Tome 2 : TLX DS COM V40. 274 Méthode de recherche d’une défaillance Automate en arrêt Généralités Une défaillance de communication inter-automates empêche soit l'échange des mots diagnostic %SW, soit l'échange de la Base de Données, soit ces deux échanges. Si cette défaillance dure plus de deux secondes, l'automate Secours passe automatiquement à l'arrêt. Le bit %SW61:X5 de cet automate est positionné à 1. Si ce bit est à 0, l'arrêt n'a pas été provoqué par la fonction Redondance. Quand le bit %SW61:X5 = 1, le mot %MWp.v.2 lu dans l'automate Secours en Stop, indique la cause de l’arrêt. l l l l %MWp.v.2=16#0880, %MWp.v.2=16#0980, %MWp.v.2=16#0A80 ou %MWp.v.2=16#0B80 indique que l'automate Secours n'a pas pu récupérer les mots diagnostic %SW de l'automate Normal. ( absence de porte, absence de socket, mauvais code retour à la requête ou time-out sur la requête). %MWp.v.2=16#0C80 indique un problème de mise à jour de la Base de Données dans l'automate Secours (Bloc de Base et optionnellement les blocs d’extension). Il faut consulter les bits D_er de chaque DFB exécuté dans l'automate Normal. %MWp.v.2=16#0D80 indique que le bloc de base de la Base de Données n’a jamais été mis à jour dans l'automate Secours. Il faut consulter le bit D_er du DFB Ha_db_basic dans l'automate Normal. %MWp.v.2=16#0E80 indique un problème de lecture des mots diagnostic %SW de l'automate Secours. 275 Méthode de recherche d’une défaillance Défaillance de communication TCP-IP (module TSX ETY 210) Présentation 276 L’analyse décrite dans la marche à suivre de cette page est à utiliser pour diagnostiquer un défaut de communication TCP-IP. Cette analyse est à mener sur un automate en défaut. Méthode de recherche d’une défaillance Marche à suivre Ce tableau décrit les étapes de la recherche de l’origine d’une défaillance. Etape Si ... Alors ... 1 Dans l’automate A %SW60:X5=1 Dans l’automate B %SW60:X5=1 (défaillance d’un module TSX ETY 210) Déterminez le module concerné, c’est celui dont le bit %Ixy.mod.err =1. 2 Pour le module en erreur %MWp.0.2:X6=1 (Problème de connectique entre le TSX ETY 210 et le Hub ou le transceiver) Vérifiez la connectique, le Hub et le transceiver. Procédez au remplacement de l’équipement défaillant. Environ 3 secondes après la réparation, la disparition du problème est confirmée par la mise à 0 des informations : l %MWp.0.2:X6, l %SW60:X5 l %SW66:X7 ou %SW66:X13 3 Pour le module en erreur %MWp.0.2:X6=1 Déterminez la cause de la défaillance comme pour un TSX ETY 110 (Voir Manuel Métiers communication Tome 3). 4 %SW60:X6=1 ou %SW63:X6=1 (Problème sur la fonction PING entre les modules TSX ETY 210) Vérifiez que le réseau est correct audelà du Hub et du transceiver. La disparition du problème est confirmée par la mise à 0 des bits %SW60:X6 et %SW63:X6 sur reprise du dialogue. 5 %SW60:X6=0 et %SW63:X6=0 et %SW61:X1=1 (Problème de time-out d’une requête de communication envoyée par l’automate Normal) Vérifiez que le réseau est correct audelà du Hub et du transceiver. Vérifiez que l’équipement serveur fonctionne. La disparition du problème est confirmée par la mise à 0 de %SW61:X1 sur reprise du dialogue. Remarque : la détection d’une défaillance de la fonction client nécessite un paramétrage du DFB Ha_db_basic. 277 Méthode de recherche d’une défaillance 278 Performances et Limites VI Présentation Objet de cet intercalaire Cet intercalaire présente les performances et limites associées à une architecture Warm Standby Premium. Contenu de cette partie Cette partie contient les chapitres suivants : Chapitre Titre du chapitre Page 23 Temps de commutation Normal/Secours 281 24 Performances des échanges de la Base de Données 283 25 Temps d’exécution et occupation mémoire 303 26 Limites d’utilisation des différents DFB d’échange 307 279 Performances et Limites 280 Temps de commutation Normal/Secours 23 Temps de commutation Normal/Secours Présentation Le temps de commutation Normal/Secours est le temps séparant la disparition de l’état Normal (%SW60:X0) sur un automate, de l’apparition de cet état sur l’autre automate. Le temps moyen de commutation Normal/Secours est d’une seconde pour les processeurs TSX P57 452, TSX P57 353 et TSX P57 453. Suivant la complexité de la configuration matérielle de l’application, principalement le nombre d’équipements et/ou de voies sur le bus FIPIO, le temps de commutation varie. Exemples de temps de commutation Ce tableau donne des exemples de temps de commutation selon la configuration utilisée. Description de la configuration Temps de commutation Normal/Secours Configuration sans TBX analogique ni agent Premium 1 seconde Configuration avec TBX analogique, sans agent Premium, le nombre de voies analogiques est inférieur à 168 Entre 1 et 2 secondes Configuration avec agent Premium, sans TBX analogique, le nombre d’agents Premium est inférieur à 10 Entre 1 et 2 secondes Configuration avec TBX analogique et agent Premium Entre 2 et 5 secondes 281 Temps de commutation Normal/Secours 282 Performances des échanges de la Base de Données 24 Présentation Objet de ce chapitre Ce chapitre décrit les échanges de la Base de Données Contenu de ce chapitre Ce chapitre contient les sous-chapitres suivants : Sous-chapitre Sujet Page 24.1 Echanges de la Base de Données 284 24.2 Echange du bloc de base par le DFB Ha_db_basic 285 24.3 Echanges du bloc base et des blocs d’extension 291 283 Performances des échanges de la Base de Données 24.1 Echanges de la Base de Données Presentation des échanges de la Base de Données Généralités L'échange de la Base de Données est réalisé par la messagerie auxiliaire du réseau Ethway de la liaison inter-automates. Les performances de l'échange ne dépendent pas du nombre de variables évoluant à chaque cycle mais elles dépendent des facteurs suivants : l type du processeur : TSX P57 452, TSX P57 353 ou TSX P57 453, l période paramétrée de la tâche MAST, l taille de la Base de Données échangées (de 507 mots à 4563 mots). A titre indicatif, les graphiques suivants donnent les performances d'échange de la Base de Données en fonction de ces différents facteurs pour les processeurs TSX P57 452, TSX P57 353 et TSX P57 453. Note : Dans la plupart des architectures, la liaison Ethway inter-automates est entièrement dédiée à la redondance. Si des équipements tiers sont connectés à ce réseau, il faut veiller à ce que le surcroît de charges ne dégrade pas les performances d'échange de la Base de Données. 284 Performances des échanges de la Base de Données 24.2 Echange du bloc de base par le DFB Ha_db_basic Présentation Objet de ce sous-chapitre Ce sous-chapitre décrit les échanges du bloc de base par le DFB Ha_db_basic. Les valeurs indiquées concernent uniquement les variables du bloc de base. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet Page Ecart entre deux mises à jour dans l’automate Secours 286 Nombre de mises à jour de la Base de Données 288 Ecart sur la mise à jour des sorties redondées en rack 289 285 Performances des échanges de la Base de Données Ecart entre deux mises à jour dans l’automate Secours Diagramme Ce diagramme donne le nombre de cycles d'écart entre deux mises à jour du bloc de base dans l'automate Secours. Nombre de cycles entre deux mises à jour pour un TSX P57 452 3.5 3.0 2.5 2.0 1.5 1.0 0.5 0.0 0.5 75 100 125 150 175 200 Période paramétrée de la tâche MAST en ms Nombre de cycles entre deux mises à jour pour un TSX P57 353/453 3.5 3.0 2.5 2.0 1.5 1.0 0.5 0.0 0.5 75 100 125 150 175 Période paramétrée de la tâche MAST en ms écart moyen écart minimal écart maximal 286 200 Performances des échanges de la Base de Données Réalisation des mesures Processeur TSX P57 452, TSX P57 353, TSX P57 453 Méthode Sur l'automate Normal un compteur est incrémenté à chaque cycle. Ce compteur est recopié dans les variables du bloc de base de la Base de Données. Les échanges se font par le DFB Ha_db_basic. Les écarts minimum, maximum et moyen sont calculés dans l'automate Secours, en nombre de cycles, entre deux changements de valeur de la variable du bloc de base. Un changement correspond à une nouvelle mise à jour du bloc de base dans l'automate Secours. 287 Performances des échanges de la Base de Données Nombre de mises à jour de la Base de Données Diagramme Ce diagramme donne le nombre de mises à jour de la Base de Données dans l’automate Secours pour 1000 cycles de l'automate Normal. Nombre de mises à jour de la Base de Données pour 1000 cycles 1200 1000 800 600 400 200 0 50 75 100 125 150 175 200 Période paramétrée de la tâche MAST en ms P57452 P57 353 P57 453 Réalisation des mesures Processeur TSX P57 452, TSX P57 353, TSX P57 453 Méthode Sur l’automate Normal un compteur est incrémenté à chaque cycle. Ce compteur est recopié dans les variables du bloc de base de la Base de Données. Les échanges se font par le DFB Ha_db_basic pendant 1000 cycles. Dans l’automate Secours, le nombre de changements des variables du bloc de base est mesuré. 288 Performances des échanges de la Base de Données Ecart sur la mise à jour des sorties redondées en rack Diagramme Chaque automate applique ses sorties en parallèle sur le procédé. L’actionneur reçoit donc un ordre de commande dont la durée est légèrement augmentée. Ce diagramme présente les écarts pour un actionneur entre l'ordre reçu de l'automate Normal et l'ordre en provenance de l'automate Secours. Ecart en ms pour un TSX P57 452 140 120 100 80 60 40 20 0 50 75 100 125 150 175 200 Période paramétrée de la tâche MAST en ms Ecart en ms pour un TSX P57 353/453 140 120 100 80 60 40 20 0 50 75 100 125 150 175 200 Période paramétrée de la tâche MAST en ms écart moyen TSX P57 453 écart moyen TSX P57 353 écart maximal écart minimal 289 Performances des échanges de la Base de Données Réalisation des mesures Processeur TSX P57 452, TSX P57 353, TSX P57 453. Méthode Un bit du bloc de base est positionné dans l’automate Normal. Ce bit est recopié sur une sortie TOR de l’automate Normal. La Base de Données est échangée par le DFB Ha_db_basic. L’automate Secours recopie le bit de la Base de Données sur une sortie TOR. Les sorties TOR de chaque automate sont acquises par un automate de contrôle qui calcule les différents écarts. 290 Performances des échanges de la Base de Données 24.3 Echanges du bloc base et des blocs d’extension Présentation Objet de ce sous-chapitre Ce sous-chapitre décrit l’échange d’une Base de Données constituée d’un bloc de base et de blocs d’extension. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet Page Ecart entre deux mises à jour dans l’automate Secours 292 Nombre de mises à jour de la Base de Données 296 Ecart sur la mise à jour des sorties redondées en rack 299 291 Performances des échanges de la Base de Données Ecart entre deux mises à jour dans l’automate Secours Généralités Les diagrammes donnent le nombre de cycles d'écart moyen entre deux mises à jour du bloc de base dans l'automate Secours, pour différentes tailles de Base de Données échangée. Les DFB utilisés sont : l le DFB Ha_db_cycle_opt pour les blocs d’extension, l le DFB Ha_db_size_opt pour les blocs d’extension. Diagramme avec le DFB Ha_db_cycle_opt DFB utilisés : Ha_db_basic et 1 à 4 Ha_db_cycle_opt Moyenne des nombres de cycles entre deux mises à jour pour un TSX P57 452 2.5 2 1.5 1 0.5 0 1014 1521 2028 MAST = 50ms 2535 MAST = 75ms Nombre de mots de la Base de Données MAST =100ms Moyenne des nombres de cycles entre deux mises à jour pour un TSX P57 353/453 2.5 MAST = 125ms >< MAST = 150ms MAST = 175ms MAST = 200ms 2 1.5 1 0.5 0 1014 1521 2028 Nombre de mots de la Base de Données 292 >< 2535 Performances des échanges de la Base de Données Réalisation des mesures Processeur TSX P57 452, TSX P57 353, TSX P57 453. Méthode Sur l'automate Normal un compteur est incrémenté à chaque cycle. Ce compteur est recopié dans les variables du bloc de base de la Base de Données. Les échanges se font par le DFB Ha_db_basic et de 1 à 4 DFB Ha_db_cycle_opt dont l'activation est séparée pour augmenter la taille de la Base de Données. Les écarts moyens sont calculés dans l'automate Secours, en nombre de cycles, entre deux changements de valeur de la variable du bloc de base. Un changement correspond à une nouvelle mise à jour du bloc de base dans l'automate Secours. Diagramme avec le DFB Ha_db_size_opt DFB utilisés : Ha_db_basic et 1 à 8 Ha_db_size_opt Moyenne des nombres de cycles entre deux mises à jour pour un TSX P57 452 2.5 MAST = 50ms 2 MAST = 75ms 1.5 MAST =100ms 1 >< >< >< >< >< >< 0.5 >< MAST = 125ms >< MAST = 150ms MAST = 175ms MAST = 200ms 0 1014 1521 2028 2535 3042 3549 4056 4563 Nombre de mots de la Base de Données Moyenne des nombres de cycles entre deux mises à jour pour un TSX P57 353/453 2.5 2 1.5 1 >< >< 2028 2535 >< >< >< >< 3042 3549 4056 4563 0.5 0 1014 1521 Nombre de mots de la Base de Données 293 Performances des échanges de la Base de Données Réalisation des mesures Processeur TSX P57 452, TSX P57 353, TSX P57 453. Méthode Sur l'automate Normal un compteur est incrémenté à chaque cycle. Ce compteur est recopié dans les variables du bloc de base de la Base de Données. Les échanges se font par le DFB Ha_db_basic et de 1 à 8 DFB Ha_db_size_opt dont l'activation est séparée pour augmenter la taille de la Base de Données. Les écarts moyens sont calculés dans l'automate Secours, en nombre de cycles, entre deux changements de valeur de la variable du bloc de base. Un changement correspond à une nouvelle mise à jour du bloc de base dans l'automate Secours. 294 Performances des échanges de la Base de Données Nombre de mises à jour de la Base de Données Généralités Les diagrammes donnent le nombre de mises à jour de la Base de Données dans l'automate Secours pour 1000 cycles de l'automate Normal, pour différentes tailles de la Base de Données. Les DFB utilisés sont : l le DFB Ha_db_cycle_opt pour les blocs d’extension, l le DFB Ha_db_size_opt pour les blocs d’extension. Diagramme avec le DFB Ha_db_cycle_opt DFB utilisés : Ha_db_basic et de 1 à 4 Ha_db_cycle_opt Nombre de mises à jour de la Base de Données pour 1000 cycles pour un TSX P57 452 1200 1000 >< >< >< MAST = 50ms >< MAST = 75ms 800 MAST =100ms 600 >< MAST = 125ms 400 >< MAST = 150ms MAST = 175ms 200 MAST = 200ms 0 1014 1521 2028 2535 Nombre de mots de la Base de Données Nombre de mises à jour de la Base de Données pour 1000 cycles pour un TSX P57 353/453 1200 1000 >< >< >< >< 1014 1521 2028 2535 800 600 400 200 0 Nombre de mots de la Base de Données 295 Performances des échanges de la Base de Données Réalisation des mesures Processeur TSX P57 452, TSX P57 353, TSX P57 453. Méthode Sur l'automate Normal un compteur est incrémenté à chaque cycle. Ce compteur est recopié dans les variables du bloc de base de la Base de Données. Les échanges se font par le DFB Ha_db_basic et de 1 à 4 DFB Ha_db_cycle_opt dont l'activation est séparée pour augmenter la taille de la Base de Données, pendant 1000 cycles. Dans l'automate Secours, le nombre de changements des variables du bloc de base est mesuré. Diagramme avec le DFB Ha_db_size_opt DFB utilisés : Ha_db_basic et de 1 à 8 Ha_db_size_opt Nombre de mises à jour de la Base de Données pour 1000 cycles pour un TSX P57 452 1200 MAST = 50ms 1000 MAST =100ms 600 >< MAST = 125ms 400 >< MAST = 150ms MAST = 175ms 200 MAST = 200ms 0 1014 1521 2028 2535 3042 3549 4056 4563 Nombre de mots de la Base de Données Nombre de mises à jour de la Base de Données pour 1000 cycles pour un TSX P57 353/453 1200 1000 800 >< >< >< >< 3042 3549 4056 4563 600 400 200 0 1014 1521 2028 2535 Nombre de mots de la Base de Données 296 MAST = 75ms >< 800 Performances des échanges de la Base de Données Réalisation des mesures Processeur TSX P57 452, TSX P57 353, TSX P57 453. Méthode Sur l'automate Normal un compteur est incrémenté à chaque cycle. Ce compteur est recopié dans les variables du bloc de base de la Base de Données. Les échanges se font par le DFB Ha_db_basic et de 1 à 8 DFB Ha_db_size_opt dont l'activation est séparée pour augmenter la taille de la Base de Données, pendant 1000 cycles. Dans l'automate Secours, le nombre de changements des variables du bloc de base est mesuré. 297 Performances des échanges de la Base de Données Ecart sur la mise à jour des sorties redondées en rack Généralités Chaque automate applique ses sorties en parallèle sur le procédé. L'actionneur reçoit donc un ordre de commande dont la durée est légèrement augmentée.Les diagrammes présentent les écarts pour un actionneur entre l'ordre reçu de l'automate Normal et l'ordre en provenance de l'automate Secours. Pour chaque période paramétrée de la tâche MAST, les écarts sont compris entre l'écart minimal et maximal quelque soit la taille de la Base de Données. Les DFB utilisés sont : l le DFB Ha_db_cycle_opt pour les blocs d’extension, l le DFB Ha_db_size_opt pour les blocs d’extension. 298 Performances des échanges de la Base de Données Diagramme avec le DFB Ha_db_cycle_opt DFB utilisés : Ha_db_basic et de 1 à 4 Ha_db_cycle_opt Ecart (ms) pour un TSX P57 452 250 200 150 100 50 0 50 75 100 125 150 175 200 Période paramétrée de la tâche MAST en ms Ecart (ms) pour un TSX P57 353/453 350 300 250 200 150 100 50 0 50 75 100 125 150 175 200 Période paramétrée de la tâche MAST en ms écart maximal écart minimal Réalisation des mesures Processeur TSX P57 452, TSX P57 353, TSX P57 453. Méthode Un bit du bloc de base est positionné dans l'automate Normal. Ce bit est recopié sur une sortie TOR de l'automate Normal. La Base de Données est échangée par le DFB Ha_db_basic et de 1 à 4 DFB Ha_db_cycle opt. L'automate Secours recopie le bit de la Base de Données sur une sortie TOR. Les sorties TOR de chaque automate sont acquises par un automate de contrôle qui calcule les différents écarts. 299 Performances des échanges de la Base de Données Diagramme avec le DFB Ha_db_size_opt DFB utilisés : Ha_db_basic et de 1 à 8 Ha_db_size_opt Ecart (ms) pour un TSX P57 452 250 200 150 100 50 0 50 75 100 125 150 175 200 Période paramétrée de la tâche MAST en ms Ecart (ms) pour un TSX P57 353/453 350 300 250 200 150 100 50 0 50 75 100 125 150 175 200 Période paramétrée de la tâche MAST en ms écart maximal écart minimal Réalisation des mesures Processeur TSX P57 452, TSX P57 353, TSX P57 453. Méthode Un bit du bloc de base est positionné dans l'automate Normal. Ce bit est recopié sur une sortie TOR de l'automate Normal. La Base de Données est échangée par le DFB Ha_db_basic et de 1 à 8 DFB Ha_db_size_opt. L'automate Secours recopie le bit de la Base de Données sur une sortie TOR. Les sorties TOR de chaque automate sont acquises par un automate de contrôle qui calcule les différents écarts. 300 Temps d’exécution et occupation mémoire 25 Présentation Objet de ce chapitre Ce chapitre décrit le temps d’exécution et l’occupation mémoire. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Temps d’exécution 304 Occupation mémoire 305 303 Temps d’exécution et occupation mémoire Temps d’exécution Temps d’exécution des DFB d’échange Pour le processeur de type TSX P57 452, le temps d'exécution de chaque DFB d'échange est de 1 ms (Voir Réglage des périodes des tâches, p. 131). Temps de transfert de la Base de Données Pour le processeur de type TSX P57 452, le temps nécessaire à chaque DFB d'échange pour transférer les données est de 7 ms (Voir Réglage des périodes des tâches, p. 131). Temps d’exécution de la fonction Redondance Le temps d'exécution de la fonction redondance est de : l 2 ms en moyenne, l 4 ms au maximum pour les processeurs de type TSX P57 452. Les EF grafcet Le temps d'exécution des fonctions GET_STAT_CHART et SET_STAT_CHART est dépendant du nombre d'étapes configurées et du nombre d'étapes actives. Les règles suivantes sont applicables : Pour la fonction GET_STAT_CHART l 1,25 ms au maximum par multiple de 250 étapes configurées pour les processeurs de type TSX P57 452. l Pour la fonction SET_STAT_CHART, le temps d'exécution dépend du nombre d'étapes actives (état à 1). La formule d'approximation du temps maximum est : l ((nombre d'étapes actives +16)/ 16) x 2 ms, pour les processeurs de type TSX P57 452. l Les EF de transfert régulation 304 Le temps d’exécution d’un EF Get_param_clc est de : l 0,4 ms sur un processeur de type TSX P57 453. Le temps d’exécution d’un EF Set_param_clc est de : l 0,4 ms sur un processeur de type TSX P57 453. Temps d’exécution et occupation mémoire Occupation mémoire Occupation mémoire des DFB d’échange Le tableau ci-dessous donne le nombre de mots maximum occupés en mémoire de l'automate : Type de DFB Première instance Instance supplémentaire Ha_db_basic 4000 mots interdit Ha_db_cycle_opt 3720 mots 152 mots Ha_db_size_opt 3280 mots 120 mots Ces valeurs sont des valeurs individuelles. Des zones de codes communes existent. La somme théorique de ces valeurs sera toujours supérieure à l'occupation mémoire réelle. Occupation mémoire de la fonction Redondance Cette fonction occupe environ 4,5 Kmots en mémoire automate. Occupation mémoire des EF grafcet Chaque EF occupe environ 250 mots en mémoire automate. Occupation mémoire des EF transfert régulation Le tableau ci-dessous donne le nombre de mots maximum occupés en mémoire de l’automate : EF 1ère instance Instance supplémentaire Get_param_clc 336 mots 32 mots Set_param_clc 312 mots 32 mots 305 Temps d’exécution et occupation mémoire 306 Limites d’utilisation des différents DFB d’échange 26 Présentation Objet de ce chapitre Ce chapitre décrit les limites d’utilisation des différents DFB d’échange. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Rappel du rôle des différents DFB 308 Calcul du nombre maximal de DFB 309 Incidence de la commutation et de la redondance des sorties 310 307 Limites d’utilisation des différents DFB d’échange Rappel du rôle des différents DFB Généralités 308 Trois DFB d'échanges sont mis à disposition de l'utilisateur : l Ha_db_basic : ce DFB est obligatoire dans une architecture Warm Standby Premium. l Ha_db_cycle_opt : c'est un DFB d'échange de la zone complémentaire qui favorise le temps d'échange de la Base de Données au détriment de sa taille. Il réalise l'échange le plus rapidement possible. Il nécessite la diminution de la taille de la Base de Données. La quantité maximale de ce type de DFB est 4. l Ha_db_size_opt : c'est un DFB d'échange de la zone complémentaire qui favorise la taille de la Base de Données au détriment du rythme des échanges. Il permet une plus grande taille de la Base de Données. Le rythme de l'échange est d'un pour deux cycles automates. La quantité maximale de ce type de DFB est 8. Limites d’utilisation des différents DFB d’échange Calcul du nombre maximal de DFB Généralités Chaque DFB utilise des EF d'échange par la messagerie auxiliaire. Le nombre maximal de ces EF est 10. La consommation de ces EF par type de DFB est la suivante : l Ha_db_basic : consommation de 2 EF. l Ha_db_cycle_opt : consommation de 2 EF. l Ha_db_size_opt : consommation de 1 EF. Il est possible d'utiliser simultanément les différents DFB dans la limite d'une consommation maximale de 10 EF. Exemple 1 DFB utilisés Consommation d’EF Nombre de mots 1 Ha_db_basic 2 507 mots 8 Ha_db_size_opt 8 8 x 507 mots = 4056 mots consommation totale de 10 EF la Base de Données a une taille de 4563 mots DFB utilisés Consommation d’EF Nombre de mots 1 Ha_db_basic 2 507 mots 2 Ha_db_cycle_opt 4 2 x 507 mots = 1014 mots 4 Ha_db_size_opt 4 4 x 507 mots = 2028 mots consommation totale de 10 EF la Base de Données a une taille de 3549 mots DFB utilisés Consommation d’EF Nombre de mots 1 Ha_db_basic 2 507 mots 8 4 x 507 mots = 2028 mots consommation totale de 10 EF la Base de Données a une taille de 2535 mots Exemple 2 Exemple 3 4 Ha_db_cycle_opt 309 Limites d’utilisation des différents DFB d’échange Incidence de la commutation et de la redondance des sorties Incidence de la commutation Un maintien des sorties est réalisé pendant le temps de commutation pour les équipements dont les sorties sont maintenues en mode repli. Il n'est pas possible d'envoyer de nouveaux ordres aux actionneurs pendant la durée de commutation. Incidence de la redondance des sorties en rack L'automate Secours envoie sur les modules de sorties en rack les commandes élaborées par l'automate Normal. Ces commandes sont échangées par la Base de Données. Les temps d'échange et la désynchronisation des cycles des deux automates introduisent un retard d'application de ces commandes par l'automate Secours. Une des conséquences est de prolonger d'un temps équivalent à ce retard le fonctionnement d'un actionneur (sorties à 1). Ce type de redondance est donc déconseillé pour les procédés rapides. Les changements d'états risquent en effet d'être masqués par ce retard de fonctionnement. 310 Module de communication TSX ETY 210 VII Présentation Objet de cet intercalaire Cet intercalaire présente le module de communication TSX ETY 210 associé à une architecture Warm Standby Premium. Contenu de cette partie Cette partie contient les chapitres suivants : Chapitre Titre du chapitre Page 27 Présentation 313 28 Communication Ethernet TCP/IP 317 29 Caractéristiques du module 323 30 Interface langage 329 31 Fonctions 333 32 Mise en oeuvre 339 311 Module de communication TSX ETY 210 312 Présentation 27 Présentation Objet de ce chapitre Ce chapitre décrit les fonctions et caractéristiques du module TSX ETY 210. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Généralités 314 Particularités 315 Modes de marche 316 313 Présentation Généralités Module TSX ETY 210 Le module TSX ETY 210 est un module optionnel dans une architecture Warm Standby Premium. C'est un module de communication Ethernet qui présente des fonctions activées uniquement lorsqu’il est utilisé dans une architecture Warm Standby Premium. Le module TSX ETY 210 s’appuie sur l’architecture matérielle et logicielle du module standard Ethernet TSX ETY 110. La plupart des caractéristiques et fonctionnalités du module TSX ETY 110 existent sur le module TSX ETY 210 et sont strictement identiques. Les principes de fonctionnement du réseau Ethernet présentés dans le manuel de "Référence réseau Ethernet" pour le module TSX ETY 110 sont compatibles avecle module TSX ETY 210. Les principes de mise en oeuvre et de fonctionnement du module TSX ETY 110 (Voir Manuel Métiers communication Tome 3) présentés dans le manuel de «Métiers communication» sont compatibles avec le module TSX ETY 210. Note : Cet intercalaire développe uniquement les fonctions et caractéristiques typiques au module TSX ETY 210. 314 Présentation Particularités Caractéristiques Cette documentation développe exclusivement les fonctions et caractéristiques typiques au module TSX ETY 210. Par rapport aux caractéristiques du module TSX ETY 110, le module TSX ETY 210 possède les particularités suivantes : L’adresse MAC et l’adresse X-Way sont indépendantes : l L’adresse MAC est fixée en usine par SCHNEIDER AUTOMATION et indiquée en face avant du module. Elle est de la forme 00.80.F4.00.XX.YY avec XX >= 16#C8. l L’adresse X-Way du coupleur est de la forme <Réseau><Station>. Cette adresse est renseignée par les roues codeuses situées en face avant du module (mécanisme identique au module TSX ETY 110). Le service de messagerie X-Way Uni-TE sur le profil Ethway n'est pas supporté par le module TSX ETY 210. Le service de mots communs, sur le profil Ethway est supporté par le module. Toutefois son utilisation est très délicate et de ce fait déconseillée. Le module implémente une fonction de transparence de communication réseau qui est activée lorsque le module est utilisé dans une architecture redondante. 315 Présentation Modes de marche Illustration Arrêt du module Module hors-tension Mise sous tension Fonction de communication Module configuré Réception état architecture Module configuré avec des valeurs nulles l l l l 316 Communication N/S dans une architecture redondante Module en phase d’auto-tests Reset Auto-tests OK Module non configuré Configuration Après la mise sous tension, le module effectue ses auto-tests. Le module ne fonctionne pas avec une configuration par défaut. Celle-ci doit lui être obligatoirement transmise par l’application PL7 de l’automate local (en utilisant l’écran de configuration du module). l Les valeurs de la configuration sont données dans la liste des objets langage %KW. l L’adresse réseau, station est donnée par les roues codeuses de la face avant. Suite à la réception de la configuration, le module fait la remise à zéro de la communication en cours avant de se configurer (terminaison des échanges en cours, fermeture des connexions TCP) avant de se configurer avec des paramètres réseau nuls (adresse IP = 0.0.0.0, Masque de sous réseau = 0.0.0.0, adresse Gateway = 0.0.0.0). Lorsqu’il reçoit les informations qui lui indiquent les caractéristiques de l’architecture dans laquelle il fonctionne, le module se configure avec les paramètres réseaux définitifs. Communication Ethernet TCP/IP 28 Présentation Objet de ce chapitre Ce chapitre décrit les caractéristiques de la communication Ethernet TCP/IP via le module TSX ETY 210 utilisé dans une architecture Warm Sandby Premium. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Principes généraux de communication Ethernet TCP/IP 318 Communication Ethernet TCP/IP avec l’architecture Warm Standby Premium 319 317 Communication Ethernet TCP/IP Principes généraux de communication Ethernet TCP/IP Généralités Tout équipement connecté sur le réseau Ethernet TCP/IP possède 2 adresses : l une adresse MAC unique qui identifie physiquement l’équipement sur le réseau. Cette adresse est exploitée par la couche physique de la pile de communication. l une adresse IP qui identifie de façon unique l’application qui s’exécute sur l’équipement physique. Cette adresse est exploitée par les couches TCP/IP. Les applications qui dialoguent entre elles utilisent uniquement les adresses IP. Sur chaque équipement, la couche TCP/IP se charge de faire le lien entre adresses IP et adresses MAC en tenant à jour une table de correspondance, appelée cache ARP ("Address Resolution Protocol"). Pour communiquer entre elles, les applications établissent une connexion TCP/IP. Cette connexion est établie entre 2 couples uniques adresse IP1/adresse MAC1 et adresse IP2/adresse MAC2. Si une application (adresse IP1/adresse MAC1) ne connaît pas l’adresse MAC de l’application distante (adresse IP2/adresse MAC2) avec laquelle elle veut dialoguer, elle envoie au préalable sur le réseau une trame de reconnaissance des adresse MAC (protocole ARP). Cette trame permet de mettre à jour le cache ARP de l’application et de faire le lien entre l'adresse IP2 et l' adresse MAC2. D’autre part, toute application qui s’exécute sur un équipement donné, a la possibilité d’informer l’ensemble des équipements connectés sur le réseau de la valeur de son couple d’adresses (adresse IP/adresse MAC). Cette information se fait par diffusion d’une trame "ARP gratuit" sur le réseau. Cette diffusion permet la mise à jour automatique des caches ARP de tous les équipements connectés. 318 Communication Ethernet TCP/IP Communication Ethernet TCP/IP avec l’architecture Warm Standby Premium L’architecture Warm Standby Premium est vue par tout équipement extérieur comme un automate unique. DANGER Le transfert d’application par un réseau Ethernet TCP/IP ne peut s’effectuer que sur l’automate Secours. Le non-respect de ces précautions entraînerait la mort, des lésions corporelles ou des dommages matériels. 319 Communication Ethernet TCP/IP Exemple 1 L'état initial comporte un superviseur, un automate Normal et un automate Secours. Architecture Warm Standby Premium Superviseur Automate Normal @IPn/@Mac1 @IPs/@Mac2 @IPn @Mac1 Automate Secours @IPs=@IPn+1 @Mac2 Ouverture d’une connexion A la suite de l'ouverture d'une connexion par le superviseur, le cache ARP de ce superviseur contient le couple adresse IPn/adresse MAC1. 320 Communication Ethernet TCP/IP Il y a ensuite commutation Normal/Secours Architecture Warm Standby Premium Superviseur Automate Secours Automate Normal Automate Normal Automate Secours @IPn @IPs @IPs @IPn @Mac1 @Mac2 @IPn/@Mac2 @IPs/@Mac1 @IPn/@Mac1 @IPn/@Mac2 Fermeture de la connexion @IPn/@Mac1 @IPn/@Mac2 Réouverture d’une connexion par le superviseur A la suite de la commutation Normal/Secours, le cache ARP de ce superviseur contient le couple adresse IPn/adresse MAC2. Remarque : Le mécanisme d’émission d’ARP gratuit est compatible avec des équipements de type HUB et pont filtrant sur le réseau. Ces équipements sont en effet traversés par les trames ARP gratuit. Dans le cas d’une architecture Ethernet multiréseau avec routeurs (bridges), les trames ARP gratuit permettent de mettre à jour le cache ARP de ces routeurs. Ces derniers se chargent d’acheminer les messages vers les équipements distants finaux. Au sein d'une architecture Warm Standby Premium, le module TSX ETY 210 envoie un ARP gratuit à la suite d'une commutation Normal/ Secours et périodiquement toutes les trente secondes. 321 Communication Ethernet TCP/IP 322 Caractéristiques du module 29 Présentation Objet de ce chapitre Ce chapitre décrit les caractéristiques du module de communication TSX ETY 210. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Rappel sur l’adressage TCP/IP 324 Adresses du module 326 323 Caractéristiques du module Rappel sur l’adressage TCP/IP Adresse IP Chaque équipement connecté au réseau doit avoir une adresse IP unique. Cette adresse est constituée de deux identificateurs, l'un identifiant le réseau, l'autre identifiant la machine connectée. Lorsque l'environnement du réseau est du type ouvert, l'unicité de l'adresse est assurée par l'attribution d'un identificateur de réseau par l'organisme habilité du pays où se trouve le réseau. Si l'environnement est du type fermé, l'unicité de l'adresse est gérée par le gestionnaire de réseau de l'entreprise. Une adresse IP est définie sur 32 bits. Elle est constituée de 4 nombres, un pour chaque octet de l'adresse. Exemple Selon l'envergure du réseau, trois classes d'adresses sont utilisables : Classe A 0 7 bits 24 bits ID réseau ID machine 16 bits 14 bits Classe B 1 ID réseau 0 ID machine 21 bits Classe C 1 1 0 ID réseau 8 bits ID machine Espaces réservés pour les différentes classes d'adresses IP : Classe 0.0.0.0 à 127.255.255.255 B 128.0.0.0 à 191.255.255.255 C 192.0.0.0 à 223.255.255.255 l l l 324 Gamme A La classe A s'adresse à des réseaux de grande envergure ayant un grand nombre sites connectés. La classe B s'adresse à des réseaux de moyenne envergure ayant moins de sites connectés. La classe C s'adresse à des réseaux de petite envergure ayant peu de sites connectés. Caractéristiques du module Sous-adressage et masque de sous-réseau Une adresse IP est composée de deux identificateurs, l'un identifiant le réseau, l'autre la machine connectée. En réalité l'identificateur de machine peut également regrouper un identificateur de sous-réseau. Dans un environnement ouvert, après avoir obtenu un identificateur de réseau de l'organisme habilité, l'administrateur local du système a la possibilité de gérer plusieurs réseaux. Cela permet l'installation de réseaux locaux sans rien changer pour le monde extérieur qui a toujours la visibilité sur un seul réseau désigné par l'identificateur de réseau. Le masque de sous-réseau permet de connaître le nombre de bits attribués respectivement à l'identificateur de réseau et à l'indicateur de sous-réseau (bits à 1), et ensuite à l'identificateur de machine (bits à 0). Exemple Exemple : 140.186.90.3 8 bits 16 bits Classe B Masque de sous-réseau Identificateur de réseau = 140.186 24 bits à 1 Identificateur de sous-réseau = 90 8 bits Identificateur de machine = 3 8 bits à 0 Le découpage autorise 254 sous-réseaux possible avec 254 machines par sous-réseau. La valeur du masque de sous-réseau doit être choisie en cohérence avec la classe de l'adresse IP. Le masque de sous-réseau aura la valeur : l pour une adresse de classe A : 255.xxx.xxx.xxx, l pour une adresse de classe B : 255.255.xxx.xxx, l pour une adresse de classe C : 255.255.255.xxx, xxx est une valeur laissée au libre choix de l'utilisateur. Gateway Le terme gateway est employé dans ce manuel dans le sens de "routeur". Si la machine destinataire n'est pas connectée au réseau local, le message sera émis vers le "gateway par défaut" connecté au réseau local qui assurera le routage soit vers un autre gateway soit vers le destinataire final. 325 Caractéristiques du module Adresses du module Adresse physique (adresse Mac du coupleur) Le coupleur possède une adresse MAC unique, elle est fixée en usine et mémorisée dans la mémoire flash du coupleur. Elle est inscrite sur la face avant du module. Elle est de la forme 00.80.F4.00.xx.yy avec : l 00.80.F4 préfixe attribué par l’IEEE à Schneider Automation, l 00 Fixée par SCHNEIDER AUTOMATION, l xx.yy Numéro de série du coupleur avec xx >=16#C8. Adresse X-Way Cette adresse X-Way est fixée grâce aux roues codeuses situées en face avant du module. Conformément au standard d’adressage X-Way SCHNEIDER AUTOMATION, elle est de la forme <Réseau><Station>. Dans une architecture Warm Standby Premium, les 2 modules TSX ETY 210 doivent impérativement posséder la même adresse X-Way. Ceci est impératif pour assurer la transparence de communication du Warm Standby Premium vis-à-vis d’automates Premium extérieurs. En effet, tout automate Premium accède, via un module TSX ETY, au Warm Standby Premium par son adresse X-Way unique. Vous devez donc positionner les roues codeuses des 2 modules sur les mêmes positions. 326 Caractéristiques du module Adresse IP Conformément au standard TCP/IP c’est un ensemble de 3 paramètres qui définissent l’adressage réseau du module : l adresse IP du coupleur, l masque de sous réseau, l adresse Gateway par défaut. Vous devez paramétrer les coupleurs et attribuer des adresses IP conformes à l’organisation de son propre réseau. Ces paramètres réseau sont attribués au coupleur lors de sa configuration en utilisant l’écran de configuration PL7 du coupleur TSX ETY 210. Paramètres IP pris en compte : Soit a.b.c.d, l’ adresse IP renseignée dans l’écran de configuration par l’utilisateur. Les adresses a.b.c.0 et a.b.c.255 sont interdites sur les modules TSX ETY 210 Dans une architecture simple (non redondante) l’automate a l’adresse IP coupleur = adresse IP configurée = a.b.c.d Dans une architecture Warm Standby Premium,l’automate Normal a l’adresse IP coupleur = adresse IP configurée = a.b.c.d l’automate Secours a l’ adresse IP coupleur = adresse IP configurée+1 = a.b.c.(d+1). 327 Caractéristiques du module 328 Interface langage 30 Présentation Objet de ce chapitre Ce chapitre décrit les différents objets langages associés à la communication Ethernet. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Objets langage %KW 330 Objets de status explicites 331 Objets de status implicites 332 329 Interface langage Objets langage %KW Description Les différents objets langage associés à la communication Ethernet viennent en complément des objets langage communs à tous les modules de communication. Objet Fonction Signification %KWm.0.0 Type = 11 pour Ethway %KWm.0.1 Couche physique Octet 0 : réservé Octet 1 : réservé %KWm.0.2 Services supportés Octet 0 : Données communes (0 par défaut) bit 0 : activation des mots communs Ethway bit 1 : réservé bit 2 : mots communs lecture seule bit 3 : mots communs lecture et écriture bits 4 à 7 : réservés Octet 1 : réservé %KWm.0.3 %KWm.0.4 réservé Mots communs Octet 0 : taille des mots commun Octet 1 : réservé %KWm.0.5 Adresse réseau X-Way Octet 0 : numéro de réseau (0 par défaut) Octet 1 : réservé %KWm.0.6 Type de driver Octet 0 : 16#00 = AUI (valeur par défaut) Ethernet pour TCP/IP 16#01 = RJ45 Octet 1 : 16#00 = Ethernet II (valeur par défaut) 16#01 = 802.3 %KWm.0.7 Configuration TCP/IP : Octet 1 : adresse héritée (16#00 par défaut) type d’adresse 16#01 à partir de la fonction métier Adresse IP locale Octets 0 (poids faible) à octet 3 (poids fort) 16#03 à partir d’un serveur %KWm.0.8 %KWm.0.9 Adresse IP du gateway Octets 0 (poids faible) à octet 3 (poids fort) %KWm.0.11 par défaut (valeur par défaut = 0.0.0.0) %KWm.0.12 Masque de sous-réseau Octets 0 (poids faible) à octet 3 (poids fort) %KWm.0.13 (valeur par défaut = 0.0.0.0) %KWm.0.14 réservés à %KWm.0.46 330 (valeur par défaut = 0.0.0.0) %KWm.0.10 Interface langage Objets de status explicites Description Ces objets sont mis à jour par l’instruction READ_STS. Objet Fonction %MWm.0.2 Status standard voie Signification x0 à x3 = réservés à 0 x4 = module en défaut ou auto-tests en cours x5 = réservé à 0 x6 x6= défaut de communication sur RJ45 ou AUI (TSX ETY 210) x7 = défaut applicatif (erreur dans la configuration) %MWm.0.3 Status spécifique voie Octet 0 : x0 = 1 : si bridge X-Way (0 si non bridge) Octet 1 : nombre de connexions TCP ouvertes %MWm.0.4 Compteurs de défauts Messages non acquittés sur Ethway %MWm.0.5 X-Way sur Ethway Messages refusés sur Ethway %MWm.0.6 Adresse réseau X-Way Octet 0 = numéro de station Octet 1 = numéro de réseau %MWm.0.7 Infos mots communs ou table partagée Octet 0 = status activité : 16#00 = Service inactif 16#01 = Lecture/écriture des mots communs 16#02 = Lecture des mots communs Octet 1 = Taille des mots communs produits %MWm.0.8 Compteur de messages sur TCP/IP Messages refusés sur X-Way TCP/IP %MWm.0.9 Compteurs de %MWm.0.10 messages sur la couche Messages reçus sur la couche liaison liaison %MWm.0.11 %MWm.0.12 Messages émis sur la couche liaison %MWm.0.13 Adresse IP locale du %MWm.0.14 module TSX ETY 210 Informations spécifiques au module TSX ETY 210 %MWm.0.15 %MWm.0.16 331 Interface langage Objets de status implicites Description Objet Fonction %Im.0.ERR Etat liaison %NW{n.s}mot Valeurs des mots communs %IWm.0.0 Etat du réseau %IWm.0.1 Indicateur de rafraîchissement des mots communs des stations du réseau %IWm.0.2 %IWm.0.3 %IWm.0.4 %IWm.0.5 Signification x0 = 1 si réception de mots communs d’au-moins une station distante Stations 0 à 15 Stations 16 à 31 Stations 32 à 47 Stations 48 à 63 Diagnostic du module TSX ETY 210 dual Résultat du PING vers ce module 0 : présence 1 : absence 2 : swap en cours commandé par le processeur Note : Seul le mot %IWm.0.5 est spécifique au module TSX ETY 210. 332 Fonctions 31 Présentation Objet de ce chapitre Ce chapitre décrit les fonctions de communication. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Fonctions de communication 334 Fonctions dans une architecture Warm Standby Premium 335 Diagnostic de l’architecture Warm Standby Premium 336 333 Fonctions Fonctions de communication Profil Ethway Seul le service de mots communs est supporté sur le profil Ethway. Cette fonction est strictement identique à celle du module TSX ETY 110. Ce qui implique les comportements suivants : l En écriture, les 2 automates (Normal et Secours) produisent simultanément les mêmes mots communs. Les équipements tiers reçoivent alternativement les valeurs de l’automate Normal puis celles de l’automate Secours. L’utilisation du service mot commun, bien que possible est fortement déconseillée du fait qu’en l’absence de précaution applicative, les 2 automates peuvent produire des valeurs différentes. L’échange des mots communs entre N et S via la base de données ne permet de lever l’incohérence qu’en fonctionnement nominal. l En lecture, les 2 automates (Normal et Secours) reçoivent les valeurs produites par les équipements tiers. Profil TCP/IP Cette fonction est strictement identique à celle du module TSX ETY 110. 334 Fonctions Fonctions dans une architecture Warm Standby Premium Activation L’ensemble des fonctions décrites sont activées uniquement lorsque le module TSX ETY 210 se trouve dans une architecture Warm Standby Premium. Cette activation est alors automatique. Transparence de communication L’objectif de cette fonction est de rendre la redondance de l’architecture totalement transparente vis à vis de la communication TCP/IP entre cette architecture et les équipements tiers. Cette transparence se décline comme suit : l Accès à l’architecture redondante par une adresse IP unique (architecture vue comme un automate simple). l Commutation de l’architecture redondante sans aucun effet vis à vis des équipements tiers : pas de modification spécifique des applications qui s’exécutent sur les équipements tiers et rétablissement automatique de la communication après une commutation. 335 Fonctions Diagnostic de l’architecture Warm Standby Premium Autotests Au démarrage, le module TSX ETY 210 exécute les autotests pour vérifier le bon fonctionnement des composants matériels et logiciels. En cas de problème, le module réalise les actions suivantes : l Mise à 1 du %Im.0.ERR dans le status implicite. l Mise à 1 du bit x4 du %MWm.0.2 dans le status explicite. l Blocage en erreur (led "erreur" allumée : pour redémarrer, le module doit exécuter une phase complète de démarrage sans détection du problème). Contrôle de l’état de la ligne Dans une architecture Warm Standby Premium, le module TSX ETY 210 teste périodiquement l’état de la connexion Ethernet. Ce contrôle est effectué quelquesoit le type de connectique Ethernet utilisé (RJ45 ou AUI). Connectique RJ45 : Le module réalise un contrôle physique de l’état de la ligne («Link Test Function» du composant Ethernet). Ce contrôle de l’état du Link permet de vérifier le bon état de fonctionnement de la ligne (test de bon fonctionnement global du composant émetteur du module TSX ETY 210, de la ligne physique et du composant récepteur du HUB). Connectique AUI : Le module vérifie que l’émission d’une trame Ethernet jusqu’au transceiver s’est bien passée. Ce test permet simplement de vérifier la présence du transceiver et le bon fonctionnement de l’émission jusqu’à celui-ci. Remarque : le test fonctionne avec n’importe quel type de transceiver (avec ou sans la fonction Signal Quality Error (SQE) test (Heartbeat)). Tout problème de communication est détecté par le coupleur au bout d’un temps maximum de 3 secondes. Sur détection d’un dysfonctionnement, le module effectue les actions suivantes : l Mise à 1 du %Im.0.ERR dans le status implicite. l Mise à 1 du bit x6 du %MWm.0.2 du status explicite. l Allumage de la led "Erreur" en face avant (le module n’est pas bloqué, il redémarre automatiquement sur disparition du dysfonctionnement (sans phase de reset)). 336 Fonctions Envoi périodique d’un PING Dans une architecture Warm Standby Premium, chaque module TSX ETY 210 vérifie l’aptitude à communiquer du module TSX ETY 210 dual. Cette vérification consiste à envoyer un Ping au module dual. l Le module TSX ETY 210 Normal vérifie par PING la présence et le bon fonctionnement du stack TCP/IPTCP/IP du coupleur Secours. l Le module TSX ETY 210 Secours vérifie par PING la présence et le bon fonctionnement du stack TCP/IP du coupleur Normal. Ce PING est émis périodiquement toutes les 3 secondes. Le diagnostic du ping remonte par le module dans le mot %IWm.0.5 de son status implicite à destination du processeur de l’automate. Le bit %SW60:X6 du Warm Standby Premium est alors positionné à 1. 337 Fonctions "Maintenance" en mode secours Communication avec l’automate secours L’automate Secours doit maintenir la communication Ethernet TCP/IP opérationnelle avec l’extérieur. Pour cela, le module TSX ETY 210 de l’automate Secours se paramètre automatiquement avec l’adresse IP= adresse IPs= adresseIPn+1. Il est alors accessible par tout équipement tiers (autres automates ou superviseurs). Accès par PL7 à l’automate secours Il est possible, à partir d’une même console PL7, d’accéder par liaison Ethernet TCP/IP aux 2 automates de l’architecture Warm Standby Premium, et ceci sans modifier la configuration du driver XIP. Mode opératoire à respecter : Configurer le driver XIP01 en identifiant dans la liste des connexions installées les 2 coupleurs de l’architecture redondante : l ETY210_1 adresse X-Way=R.S.adresse IP=IPn=a.b.c.d. l ETY210_2 adresse X-Way=R.S.adresse IP=IPs=a.b.c.(d+1). Remarque : L’écriture d’un doublon d’adresse X-Way entraîne l’affichage à l’écran du message suivant : "Avertissement : une des valeurs de la nouvelle connexion est déjà utilisée par une connexion installée". Il s’agit d’un message d’avertissement sans aucune conséquence sur le fonctionnement du driver XIP. Définir l’adresse de l’automate à accéder en utilisant la syntaxe suivante : Pour l’automate Normal : Afficher l’écran "définir l’adresse de l’automate" de PL7 avec les informations suivantes :Driver : XIP01Adresse : "IP.a.b.c.d.R.S" Pour l’automate Secours : Driver : XIP01Adresse : "IP.a.b.c.d+1.R.S" 338 Mise en oeuvre 32 Présentation Objet de ce chapitre Ce chapitre décrit la mise en oeuvre du module TSX ETY 210. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Mise en oeuvre 340 Evolution de la communication sur incident 341 Limites de la communication du module TSX ETY 210 342 Performances 343 339 Mise en oeuvre Mise en oeuvre Mise en oeuvre matérielle La mise en œuvre est strictement identique à celle du module TSX ETY 110. Dans une architecture Warm Standby Premium, il est impératif de respecter la contrainte suivante : Le couple de modules TSX ETY 210 doit posséder une adresse X-Way identique. L’utilisateur doit donc positionner les roues codeuses des 2 modules sur les mêmes positions. Mode configuration Le service de messagerie X-Way Uni-TE n’étant pas supporté sur le profil Ethway, il est impératif de renseigner l’adresse IP du destinataire dans la fenêtre "Configuration des connexions". Ceci permet la sélection du canal TCP/IP pour tous les messages émis par l’automate Premium. Par ailleurs, le mode opératoire est strictement identique à celui du module TSX ETY 110. Remarque : pour une optimisation de la communication, paramétrer le nombre de connexions à 32. Mise au point 340 La fenêtre "test station" n’est pas significative pour le module TSX ETY 210. Les autres fenêtres de l’écran de mise au point sont strictement identique à celles du module TSX ETY 110. Mise en oeuvre Evolution de la communication sur incident Généralités Les incidents suivants entraînent l'établissement d'une nouvelle connexion entre l'équipement tiers et l'architecture Warm Standby Premium. l Commutation Normal/Secours. l Mise hors-tension ou blocage du module TSX ETY 210 Normal. l Rupture de connexion, Commutation Normal/Secours et rétablissement de la connexion. l Rupture de connexion, puis mise hors-tension ou blocage du module TSX ETY 210 Normal. 341 Mise en oeuvre Limites de la communication du module TSX ETY 210 Limites du module l l l l l 32 connexions maximum sur TCP/IP, messages Uni-TE de 256 octets maximum en messagerie synchrone, et de 1 Koctet en messagerie asynchrone, 16 messages maximum traités simultanément sur TCP/IP, capacité maximum du coupleur : 140 msg/s pour la messagerie X-Way sur TCP/IP, 100 msg/s pour la messagerie Modbus sur TCP/IP. Mots communs : Un message de mots communs est équivalent à 0,5 msg de données. Exemple de dimensionnement d'une application : 5 stations s'échangent des mots communs toutes les 100 ms et de la messagerie X-Way sur TCP/IP. Le débit des mots communs reçus par chaque coupleur est donc de 50 msg/s de mots communs soit environ 25 msg/s sur TCP/IP. La capacité maximale restante sur chaque coupleur sur TCP/IP est donc de : 140 - 25 = 115 msg/s. Recommandation : Sur Premium, les Mots Communs sont émis au début du cycle suivant leur mise à jour par l'application. Limites spécifiques du module 342 Il existe trois limites spécifiques : l Il est impossible de communiquer entre les deux modules TSX ETY 210 d'une architecture Warm Standby Premium (l'adresse X-Way des deux modules étant identique). l Il est nécessaire que les équipements tiers gèrent un time-out pour le dialogue avec l'architecture Warm Standby Premium. Le rétablissement automatique de la communication en cas de commutation Normal/Secours pourra alors être assuré. l Lorsque le module TSX ETY 210 dialogue sur un même réseau physique avec des équipements tiers possédant des adresses logiques (au sens X-Way) différentes, il est indispensable de placer le module TSX ETY 210 entre le module TSX ETY 110 et le processeur. Le module TSX ETY 210 doit être considéré par le processeur comme le module réseau principal. Par ailleurs on rappelle que l’utilisation du service de mots communs est fortement déconseillée. Mise en oeuvre Performances Performances de communication Les performances ci-dessous sont données pour une communication entre deux automates équipés de processeurs TSX 57-35. Les valeurs sont exprimées en ms et représentent une durée moyenne du temps décrit dans le tableau. Temps d'ouverture d'une connexion TCP/IP 10 ms Temps de transaction d'une requête Uni-TE de 150 ms 128 octets en mode périodique de 50 ms Performances spécifiques Temps de transfert des mots communs (aller/retour) en mode périodique de 50 ms 250 ms Temps de traversée du coupleur 15 à 30 ms Le temps de commutation nécessite la gestion d'une temporisation de 8,5 secondes sur les dialogues des équipements tiers avec l'architecture Warm Standby Premium. Temps de la commutation d’adressse IP 8,5 secondes maximum (dont 5 secondes pour la fermeture des sockets TCP/IP) Ce temps de commutation nécessite la gestion d’une temporisation de 8,5 secondes sur les dialogues des équipements tiers avec l’architecture Warm Standby Premium. Voir les EF de dialogue sous protocole Ethernet. (Voir Les EF de dialogue sous protocole Ethernet, p. 117) 343 Mise en oeuvre 344 Index B Base de données, 39 C Configuration, 84 M Mode normal, 27 Mode secours, 27 Modes Normal et Secours, 34 R Relais alarme, 59 BC W915905820101A11 Schneider Electric Industries SAS Headquarters 35, rue Joseph Monier F - 92506 Rueil Malmaison Cedex En raison de l’évolution des normes et du matériel, les caractéristiques indiquées par les textes et le s images de ce document ne nous engagent qu’après confirmation par nos services. http://www.schneider-electric.com Printed in Juin 2009