▼
Scroll to page 2
of
300
X Généralités PL7-2 A Le langage à contacts PL7-2 B Le langage grafcet PL7-2 C Aide à l'exploitation D Communication par prise terminal E Exemples d'application et annexes F G H X A Généralités PL7-2 Chapitre 1 2 4 5 Page Présentation du logiciel PL7-2 1.1 Présentation des langages PL7-2 1/1 1.2 Structure du logiciel PL7-2 1/4 Les objets adressables du logiciel PL7-2 2/1 1/2 2.1 Adressage 2/2 2.2 Objets bits 2/7 2.3 Objets mots 3 Intercalaire A 2/9 2.4 Objets blocs fonction 2/12 2.5 Indexation des objets 2/14 Structure mémoire utilisateur 3.1 Généralités 3/1 3.2 Mémoire TSX 17-20 3/3 3.3 Mémoire TSX 27/47 3/5 Structure logicielle monotâche 4/1 4.1 Description tâche maître 4/2 4.2 Traitement du programme 4/4 3/2 4.3 Fonctionnement structure monotâche 4/5 4.4 Gestion des bases de temps 4/6 Structure logicielle bitâche 5.1 Description de la tâche rapide 5/1 5.2 Tâche rapide du TSX 17-20 5/3 5.3 Tâche rapide des TSX 27/47 5/5 5.4 Gestion des bases de temps 5/6 5/2 1 A X Généralités PL7-2 Intercalaire A Chapitre 6 7 Rôle des bits et mots système 6.1 Bits système 6/1 6.2 Mots système 6/8 Coupures et reprises secteur 7/1 7.1 Principe 7/2 7.2 Comportement sur reprise secteur structure monotâche 7/4 7.3 Comportement sur reprise secteur en structure bitâche 7.4 Programmation de la reprise secteur 2 Page 6/2 7/8 7/10 X Présentation du logiciel PL7-2 1 A Présentation du logiciel PL7-2 Sous chapitre 1.1 Présentation des langages PL7-2 1.1-1 1.1-2 1.1-3 1.1-4 Le langage à contacts Le langage GRAFCET Avantages des langages graphiques Aide à l’exploitation Chapitre 1 Page 1/2 1/2 1/2 1/3 1.2 Structure du logiciel PL7-2 1/4 1.2-1 Structure Monotâche 1.2-2 Structure Bitâche 1/4 1/4 Ce chapitre se termine à la page 1/6 1/1 A 1.1 Présentation des langages PL7-2 Les langages PL7-2 sont des langages graphiques destinés à programmer les automates TSX 17-20, TSX 27, TSX 47-J et TSX 47-10/20. Les langages graphiques PL7-2 sont: 1.1-1 Le langage à contacts Ce langage est adapté à la programmation des traitements logiques. Les programmes écrits en langage à contacts se composent d’une succession de réseaux de contacts, véhiculant des informations logiques. Les principaux éléments de ce langage sont: ” æ {} {/} » … ◊t‘ ◊ | £ ç<∆ les contacts : qui permettent de LIRE (de tester) des niveaux logiques. les bobines : qui permettent d’ECRIRE (de définir) des niveaux logiques. Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST OBSERVATIONS " OØ4 I1,6 I1,7 B2 7 OØ,4 BØ BØ E D TB=10ms Klaxon Bit interne 3Ø impulsion toutes les 0,7s Temporisateur pour clignoter 0,7s C R les blocs fonctions: qui permettent de réaliser des fonctions d’automatismes pré-programmées. P=70 les blocs opérations : qui permettent d’effectuer des opérations arithmétiçOPER∆ ques, logiques, etc. 1.1-2 Le langage GRAFCET Issu d’une méthode d’analyse (conforme à la norme GRAFCET), ce langage est conçu pour décrire des fonctionnements séquentiels. Il comprend: “ le GRAFCET graphique qui se compose d’étapes, de transitions et de liaisons orientées définissant l’ossature du programme. Formulaire programmation Grafcet PL7-2 CØ1 CØØ LØØ ØØ LØ1 Ø1 CØ2 CØ3 CØ4 CØ5 CØ6 CØ7 COMMENTAIRES / OBSERVATIONS Etape attente I1,Ø LØ2 Ø2 Avance poussoir 1 LØ4 I1,1 LØ5 Ø3 13 Recul poussoir 1 Avance poussoir 2 Ø4 14 Ø5 15 LØ3 X I1,2 et I1,9 LØ6 Des réseaux de contacts définissent les réceptivités associées aux transitions et les actions associées à chaque étape. 1/2 LØ7 Recul poussoir 2 I1,4 LØ8 LØ9 L10 L11 Ø6 L12 L13 Ø1 N° Page Grafcet Mise à jour A B C Par Date Etude : Dessin : Date : T Folio Présentation du logiciel PL7-2 1 A 1.1-3 Avantages des langages graphiques • Programmation aisée car ces langages sont proches de l’analyse : transcription directe de l’étude. • Mise au point et maintenance facilitées grâce à la visualisation dynamique des réseaux de contacts et des étapes du GRAFCET. • Documentation application reflétant l’étude et la saisie. Grafcet Formulaire 1 dcy Formulaire programmation Grafcet PL7-2 2 A+ CØ1 CØØ a1 LØØ ØØ LØ1 Ø1 CØ2 CØ3 CØ4 CØ5 CØ6 CØ7 COMMENTAIRES / OBSERVATIONS Etape attente I1,Ø LØ2 3 B+ 13 LØ3 D+ cd1 cd1 B- 14 P X 13 Ø4 14 Ø5 15 Recul poussoir 1 Avance poussoir 2 I1,2 et I1,9 Recul poussoir 2 I1,4 LØ8 LØ9 bo I1,1 Ø3 LØ6 LØ7 4 Avance poussoir 1 LØ4 LØ5 b1 Ø2 L10 pl L11 Ø6 L12 5 15 D- do (s+f) 6 A- L13 Ø1 N° Page Grafcet Mise à jour A B C Par Date Etude : Dessin : Date : T Folio ao 1.1-4 Aide à l’exploitation Les langages PL7-2 proposent également une structure d’accueil (bits système, diagnostic...) permettant d’intégrer facilement et méthodiquement les modes de marches et d’arrêts de l’application. 1/3 A 1.2 Structure du logiciel PL7-2 1.2-1 Structure Monotâche La tâche exécutée de manière cyclique est appelée tâche maître. Elle est surveillée par un chien de garde logiciel, fixé à 150 ms. Le cycle automate dans le cas d’une structure monotâche est : • Acquisition des entrées • Scrutation du programme: scrutation des réseaux de contacts et des pages GRAFCET et exécution des instructions programmées • Mise à jour des sorties Acquisition des entrées Traitement séquentiel Mise à jour des sorties 1.2-2 Structure Bitâche La structure bitâche permet de gérer deux fonctions différentes auxquelles sont associées des programmes spécifiques: chaque programme est implanté dans une tâche. Ces tâches sont indépendantes et exécutées par le même processeur. Ce type de structure a pour but de répartir la conception et de simplifier la mise au point. Chaque programme est écrit et mis au point dans la tâche correspondante, indépendamment de l’autre. La structure bitâche des automates TSX 17-20, TSX 27/47 se présente comme suit : • Tâche Maître : voir structure monotâche • Tâche rapide : destinée aux traitements de courte durée. - Tâche rapide TSX 27/47 : tâche périodique, gérée par une base de temps (5 ou 10 ms). - Tâche rapide TSX 17-20 : tâche événementielle non périodique, activée soit par des événements externes, soit par des événements internes à l’automate. Cette tâche assure des temps de réponses courts et garantis (< 2 ms). 1/4 1 Présentation du logiciel PL7-2 A Structure Bitâche (suite) Cycle d'exécution de la tâche Maître Cycle d'exécution de la tâche rapide Acquisition des entrées Evénement (TSX 17-20) ou top d'horloge (TSX 27/47) Traitement séquentiel Acquisition des entrées configurées dans cette tâche Traitement Mise à jour des sorties configurées dans cette tâche Mise à jour des sorties 1/5 A 1/6 X Les objets adressables du logiciel PL7-2 2 A Les objets adressables du logiciel PL7-2 Chapitre 2 Sous chapitre 2.1 Adressage 2.1-1 Adressage des entrées/sorties du TSX 17-20 2.1-2 Adressage des entrées/sorties du TSX 27 2.1-3 Adressage des entrées/sorties des TSX 47-J, TSX 47-10/20 2.2 Objets bits 2.2-1 Généralités 2.2-2 Liste des objets bits 2.2-3 Définition des principaux objets bits 2.3 Objets mots 2.3-1 Généralités 2.3-2 Liste des objets mots et bits associés 2.3-3 Définition des différents objets mots 2.4 Objets blocs fonctions 2.4-1 Généralités 2.4-2 Liste des mots et bits des blocs fonctions 2.5 Indexation des objets 2.5-1 Adressage direct 2.5-2 Adressage indexé Ce chapitre se termine à la page Page 2/2 2/2 2/4 2/5 2/7 2/7 2/7 2/8 2/9 2/9 2/10 2/11 2/12 2/12 2/13 2/14 2/14 2/14 2/14 2/1 A 2.1 Adressage 2.1-1 Adressage des entrées/sorties du TSX 17-20 Le TSX 17-20 est un automate compact et modulaire. Aux entrées/sorties de l'automate de base peuvent s’ajouter les entrées/sorties des blocs ou modules d’extensions. L’adressage des entrées/sorties est géographique. Ces entrées/sorties sont adressées dans le programme par les instructions : I/Ox,i I: Entrée (Input) O: Sortie (Output) x : numéro du module (0 à 3) 0 automate de base 1 première extension connectée 2 deuxième extension connectée 3 troisième extension connectée 0 1 Automate de base Module d'extension i : numéro de la voie dans le module. 2 3 Bloc d'extension Nota : l’adressage des blocs ou modules d’extensions et des modules intelligents dépend de l’ordre de leur connexion. Configuration maximum Automate Blocs de base d'extension E/S TOR Modules d'extension E/S TOR ou/et modules intelligents 1 3 0 1 2 1 1 1 2 1 0 3(*) (*) modules intelligents TSX SCG 113 ou 116 : 2 modules maximum. (voir manuel de mise en œuvre TSX D 11000F pour associations possibles.) 2/2 Exemples d’associations 0 1 2 O1,05 I0,05 0 3 1 2 3 2 Les objets adressables du logiciel PL7-2 A Adressage des entrées/sorties du TSX 17-20 (suite) Types d’automates TSX 17-20 Type Nombre d'E/S Entrées Sorties Entrées événtielles automates de base TSX 17-20 20 (12E+8S) de I0,00 à I0,11 de O0,00 à O0,07 I0,24 I0,25 34 (22E+12S) de I0,00 à I0,21 de O0,00 à O0,11 I0,24 I0,25 40 (24E+16S) de I0,00 à I0,23 de O0,00 à O0,15 I0,24 I0,25 blocs d'extension pour automate de base TSX 17-20 34 (22E+12S) de Ix,00 à Ix,21 de Ox,00 à Ox,11 _ 40 (24E+16S) de Ix,00 à Ix,23 de Ox,00 à Ox,15 _ modules d'extension pour automate de base TSX 17-20 8 (8E) de Ix,00 à Ix,07 _ _ 6 (6S) _ de Ox,00 à Ox,05 _ Entrée I0,00 et sortie O0,00 Ces deux voies peuvent avoir chacune deux utilisations différentes: Voie Utilisation par défaut Utilisation après configuration Entrée I0,00 Entrée normale Entrée de commande "RUN/STOP" automate Sortie O0,00 Sortie normale Sortie "SECU" automate Adressage des mots registres d’entrées/sorties des modules intelligents IWx,i : mot d’entrée OWx,i : mot de sortie x : numéro de module (1 à 3) i : numéro du mot (0 à 7) Nota : Les modules intelligents possèdent également des bits d’entrées/sorties dont l’adressage est identique à celui des extensions d’entrées/sorties T.O.R. 2/3 A 2.1-2 Adressage des entrées/sorties du TSX 27 Le TSX 27 est un automate compact qui possède 1, 2, 3 ou 4 cartes d’entrées/ sorties. Chaque carte possède 20 entrées/sorties (12 entrées et 8 sorties). L’adressage d’une entrée ou d’une sortie est défini dans le programme par 4 caractères: I/Oy,i I: Entrée (Input) O: Sortie (Output) y : emplacement (0 à 7) , : virgule i : numéro de voie dans la carte 0 à 7 pour les sorties 0 à B pour les entrées Chaque carte d’entrées/sorties possède: • en partie supérieure un ensemble de 8 sorties repérées par les emplacements 0, 2, 4 ou 6 dans l’automate, et par leurs numéros de voies de 0 à 7. exemple : O4,5 = sixième voie de la carte de l’emplacement 4. • en partie inférieure un ensemble de 12 entrées repérées par les emplacements 1, 3, 5 ou 7 dans l’automate, et par leurs numéros de voies de 0 à B. exemple : I3,A = onzième voie de la carte de l’emplacement 3. Tableau récapitulatif Sorties (Output) Oy,i y = 0, 2, 4, 6 i = 0, 1, ..., 7 Entrées (Input) Iy,i y = 1, 3, 5, 7 i = 0, 1, ..., B 2/4 Sorties OUTPUT O0 X Entrées INPUT 0 1 2 3 4 5 6 7 O2 O4 O6 O4,3 0 I1 1 2 3 4 5 6 7 8 9 A B 20E/S 0 I3 I5 I7 60E/S 80E/S 13A 40E/S 2 Les objets adressables du logiciel PL7-2 A 2.1-3 Adressage des entrées/sorties des TSX 47-J, TSX 47-10/20 Le TSX 47 est un automate modulaire qui peut gérer jusqu’à 16 modules d’entrées/ sorties. Ces modules sont de 4, 8, 16, 24 ou 32 voies. L’adressage d’une entrée ou d’une sortie est défini dans le programme par les caractères suivants: I/Oxy,i I: Entrée (Input) x : numéro du bac 0 : bac de base 1 : bac d’extension O: Sortie (Output) y : emplacement du module dans le bac (0 à 7) , : virgule i : numéro de la voie dans le module (0 à F modules 4 à 16 voies) Cas des modules 24 ou 32 voies Pour adresser des entrées/sorties d’un module 24 ou 32 voies, il faut procéder de la façon suivante: • le module doit être obligatoirement dans le bac de base: x= 0 • les 16 premières voies sont adressées normalement: I/Oy,i i= 0 à F • les voies ≥ à 16 sont adressées par : I/O1y,i i = 0 à 7 modules 24 voies i = 0 à F modules 32 voies Cas du TSX 47-J Modules 0 4 8 16 24 32 voies voies voies voies voies Adresses I/O y,0 à y,3 y,0 à y,3 y,0 à y,F 0y,0 à 0y,F 0y,0 à 0y,F 1y,0 à 1y,7 1y,0 à 1y,F X 1 2 3 4 D S T 3 2 x Bac de base Le TSX 47-J peut gérer jusqu’à 5 modules dans le bac de base, il n'accepte pas de bac d'extension. 2/5 A Cas du TSX 47-10/20 Les modules 24 ou 32 voies doivent être implantés dans le bac de base. 0 1 2 3 4 5 6 7 D S T 3 2 X L’emplacement portant le même numéro dans le bac d’extension doit rester vide dans ce cas. x=0 Bac de base 0 1 2 3 4 5 6 7 x=1 Bac d'extension Modules Adresses I/O (x=0) Adresses I/O (x=1) 4 8 16 24 32 voies voies voies voies voies y,0 à y,3 y,0 à y,3 y,0 à y,F 1y,0 à 1y,3 1y,0 à 1y,7 1y,0 à 1y,F 0y,0 à 0y,F 0y,0 à 0y,F 1y,0 à 1y,7 1y,0 à 1y,F Adressage des mots registres d’entrées/sorties des coupleurs intelligents pour automate TSX 47-20 : IWy,i : mot d’entrée OWy,i : mot de sortie y : numéro d’emplacement du module (0 à 3*) i : numéro du mot (0 à 7) Nota : Les coupleurs possèdent également des bits d’entrées/sorties dont l’adressage est identique à celui des modules d’entrées/sorties T.O.R. d’entrées/sorties T.O.R. * Les coupleurs intelligents ne peuvent être implantés que dans les 4 premiers emplacements du bac 0. Le nombre de coupleurs est limité à 2. 2/6 2 Les objets adressables du logiciel PL7-2 A 2.2 Objets bits 2.2-1 Généralités Les langages accèdent au bit et au bit extrait de mot soit en lecture, soit en lecture/ écriture. 2.2-2 Liste des objets bits Les différentes notations utilisées sont : R pour lecture, W pour écriture, F pour forçage. Bits/Nature Adressage Possibilités TSX 17-20 TSX 27 TSX 47 Bits d’entrées/ sorties T.O.R. Ix,i (96) Ox,i (64) Iy,i (48) Oy,i (32) Ixy,i Oxy,i (256)* Bits entrées Evénementielles I0,24 I0,25 R/F R/W/F R R Bits internes Bi (256) Bi (256) Bi (256) R/W/F Bits système SYi (24) SYi (24) SYi (24) R/W selon i Bits d’étapes GRAFCET Xi (96) Xi (96) Xi (96) R/W Bits de blocs Fonctions Ti,D; Di,F; ... (voir objets blocs fonctions) Bits extraits de mots Wi,j; ... (voir page 2/10) Bits défauts Sx,i (4x8) Oy,S (4) Ixy,S (16) Oxy,S (16) R R Remarque : Lecture/écriture : s’effectue par programme ou par terminal. Forçage : entrées/sorties : le forçage est prioritaire sur l’acquisition des entrées et sur le positionnement des sorties défini par programme, et ce jusqu’à sa suppression. bits internes : le forçage est prioritaire sur l’état défini par le programme utilisateur. * 256 est le nombre maximum d’entrées et de sorties. 2/7 A 2.2-3 Définition des principaux objets bits • Bits d’entrées/sorties Ces bits sont les "images logiques" des états électriques des entrées/sorties des modules. Ils sont définis dans la mémoire de données et sont mis à jour à chaque tour de cycle. • Bits défauts des modules (bits Status) Chaque module dispose d’un bit adressable, de rang S, qui est positionné par le système à 1 lors de l’apparition d’un défaut sur le module concerné : TSX 17-20 : il possède 8 bits de Status pour chaque module: Si,j (i = 0 à 3 et j = 0 à 7). TSX 27/47 : Oy,S ; Ixy,S ; Oxy,S signalent un défaut sur le module correspondant lorsqu’ils sont à 1. Les définitions des bits status sont données dans "Aide à l’exploitation", chapitre 3 : Aide au diagnostic, intercalaire D. • Bits internes Les bits internes mémorisent des états intermédiaires durant l’exécution du programme. Nota : Les bits d’entrées/sorties non utilisés ne peuvent pas être employés comme bits internes. • Bits système Les bits système SY0 à SY23 surveillent le bon fonctionnement de l’automate ainsi que le déroulement du programme application. Le rôle et l’utilisation de ces bits sont développés dans le chapitre 6 du présent intercalaire. 2/8 2 Les objets adressables du logiciel PL7-2 A 2.3 Objets mots 2.3-1 Généralités Les objets mots sont adressés par le logiciel PL7-2 sous le format mots de longueur 16 bits, situés dans la mémoire de données, ils contiennent une valeur algébrique comprise entre -32768 et 32767. Valeurs immédiates Ce sont des valeurs algébriques de format homogène avec celui des mots 16 bits, qui permettent d’affecter des valeurs à ces mots. Elles sont stockées dans la mémoire programme et sont comprises entre -32768 et 32767. Format des mots F E D C B A 9 8 7 6 5 4 3 2 1 0 Rang des bits 0 ± 1 0 1 0 0 1 0 0 1 0 0 1 1 0 1 Etat des bits 16384 8192 4096 2048 1024 512 256 128 64 32 16 8 4 2 1 Le contenu des mots ou valeurs est rangé en mémoire utilisateur en code binaire, sur 16 bits, avec la convention illustrée ci-dessous : Poids des bits En binaire signé, le bit de rang "F" est attribué par convention au signe de la valeur codée: • bit "F" à 0 : le contenu du mot est une valeur positive, • bit "F" à 1 : le contenu du mot est une valeur négative. Le calcul du code binaire d’un nombre négatif s’effectue à partir du code binaire positif, moyennant les opération ci-dessous. Exemple : calcul du code binaire de –9 00001001 code binaire de 9 11110110 complément logique à 2 du code binaire de 9 + 00000001 addition logique : +1 11110111 résultat : code binaire de -9 Les mots et valeurs immédiates peuvent être saisis ou restitués sous forme : • décimale • binaire 1579 • BCD B’1439' maxi 32767 mini -32768 maxi B’9999' mini B’0000' L’0101001100011010' • message (ASCII) M’JM’ • hexadécimal H’A536' maxi H’FFFF’ mini H’0000' 2/9 A 2.3-2 Liste des objets mots et bits associés Les différentes notations utilisées sont : R pour lecture et W pour écriture Mots/Nature TSX 17-20 Adressage TSX 27 TSX 47 Mots internes Wi (1024) Wi (128) Wi (1024) R/W (1) Mots constants CWi (1024) CWi (1024) CWi (1024) R (1) Mots système SWi (64) SWi (4) R/W selon i Mots communs réseau COMi,j(16x4) FIPWAY COMi,j (16x4) TELWAY R/W (2) Mots de blocs Fonctions Mi,P; Di,S; ... (voir objets blocs fonctions) Temps d’activité d’étapes GRAFCET Xi,V (96) Mots registres d’entrées/sorties IWx,i (3x8) OWx,i (3x8) Bits extraits de mots/nature TSX 17-20 TSX 27 TSX 47 Bit j du mot interne i Wi,j(128x16) Wi,j(128x16) Wi,j(128x16) R/W Bit j du mot constant i CWi,j(128x16) CWi,j(128x16) CWi,j(128x16) R Bit j du mot système i SWi,j(64x16) SWi,j(4x16) R/W Bits k du mot commun j COMi,j,k(64x16) COMi,j,k(64x16) R/W (2) IWx,i,j (24x16) OWx,i,j (24x16) IWxy,i,j (32x16) OWxy,i,j (32x16) R/W (3) R/W (3) Xi,V (96) Possibilités Xi,V (96) R IWxy,i (8x4) OWxy,i (8x4) R R/W Adressage Possibilités de la station i Bit j du mot registre d’E/S i Remarque : A partir du rang 10 et jusqu’au rang 15, le bit j extrait de mot est adressé, en hexadécimal, par les lettres A (pour le rang 10) à F (pour le rang 15, voir page 2/9). Exemple : W100,B. (1) (2) (3) accès direct aux 128 premiers mots. Par transfert de table pour les mots suivants, écriture par le programme de la station i, et lecture de tous les bits, écriture uniquement par le programme. 2/10 Les objets adressables du logiciel PL7-2 2 A 2.3-3 Définition des différents objets mots • Mots internes Les mots internes sont destinés à stocker des valeurs en cours de programme Ils sont rangés dans la mémoire de données. Les mots W0 à W127 sont accessibles directement par programme (en lecture/écriture). Ils sont utilisés comme mots de travail. Les mots W128 à W1023 sont dits mots de stockage. Ils ne sont accessibles que par transfert de tables de mots(1). W0 16 bits W127 W128 W 1023 • Mots constants Les mots constants mémorisent des valeurs constantes ou des messages alphanumériques. Leur contenu ne peut être écrit ou modifié que par le terminal (en mode CONFIGURATION). Ces mots sont rangés dans la mémoire programme. Le nombre de CWi en exploitation, doit être défini par CONFIGURATION. Les mots constants CW0 à CW127 sont accessibles directement par programme (en lecture uniquement). Les mots CW128 à CW1023 ne sont pas accessibles directement, ils doivent être transférés par tables dans des mots internes(1). CW0 16 bits CW127 CW128 CW 1023 • Mots registres d’entrées/sorties Les mots registres sont des objets mots de 16 bits associés aux coupleurs intelligents. Chacun de ces coupleurs dispose de 8 mots registres d’entrées IW et de 8 mots registres de sorties OW. • Mots communs Les mots communs sont des objets mots de 16 bits communs à toutes les stations connectées au réseau de communication FIPWAY ou TELWAY. Ils constituent dans chaque automate une table de 64 mots pour un réseau composé de 16 stations. • Mots système Ces mots de 16 bits assurent plusieurs fonctions : - certains renseignent sur l’état du système par lecture des mots SWi (temps de fonctionnement système et application, etc...). - d’autres permettent d’agir sur l’application (gestion réseau, etc...). Les mots système sont décrits sous-chapitre 6.2 du présent intercalaire. (1) voir blocs opération transferts chapitre 5, intercalaire B. 2/11 A • Mots associés au Grafcet Ces mots représentent le temps d’activité des étapes Grafcet. La valeur maximale du temps est de 9999 incréments, la base de temps étant de 1s. • Objets bits extraits de mots Le logiciel PL7-2 permet d’extraire l’un des 16 bits de certains mots. Le repère du mot est alors complété par le rang du bit extrait séparé par une virgule. 2.4 Objets blocs fonctions 2.4.1 Généralités Le langage à contacts utilise une ressource appelée : blocs fonctions, lesquels se répartissent en deux groupes : • les blocs fonctions d’automatismes : ils mettent à disposition de l’utilisateur des fonctions pré-programmées telles que temporisateurs, monostables, compteurs, registres, etc... • le bloc fonction texte : il permet d’échanger des données entre programme utilisateur et coupleur intelligent, ou prise terminal, ou système, ou autre programme utilisateur. Ces communications peuvent s’effectuer localement ou à travers le réseau FIPWAY, TELWAY ou le bus UNI-TELWAY. Les autres types de blocs, comparaison et opérations portent sur les mots définis précédemment et ci-après. 2.4-2 Liste des mots et bits des blocs fonctions Les blocs fonctions mettent en oeuvre des objets bits de sortie et mots spécifiques. Les notations suivantes sont utilisées : R pour lecture, W pour écriture. Blocs fonction (Nb) Mots et bits associés adresses possibilités Temporisateur Ti TSX 17-20 (32) TSX 27/47 (16) mot valeur de présélection valeur courante bit temporisateur en cours temporisateur écoulé Ti,P Ti,V Ti,R Ti,D R/W (1) R R R Monostable Mi TSX 17-20 (8) TSX 27/47 (8) mot valeur de présélection Mi,P R/W (1) valeur courante Mi,V R monostable en cours Mi,R R (1) bit Si "YES" en mode CONFIGURATION, modification possible en mode REGLAGE. 2/12 Les objets adressables du logiciel PL7-2 2 A Blocs fonction (Nb) Compteur/décompteur Ci TSX 17-20 (31) TSX 27/47 (16) Registre Ri TSX 17-20 (4) TSX 27/47 (4) Texte TXTi TSX 17-20 (8) TSX 27/47 (8) Programmateur cyclique Di TSX 17-20 (8) TSX 27/47 (8) Compteur/ Temporisateur rapide FC TSX 17-20 (1) Horodateur H TSX 17-20 (illimité) Mots et bits associés mot valeur de présélection valeur courante bit débordement comptage présélection atteinte débordement décomptage mot mot d’entrée mot de sortie bit registre plein registre vide mot longueur de table en octets status adresse coupleur et n° voie code requête adresse station FIPWAY/TELWAY n° bloc texte en communic. compte rendu d’échange bit échange terminé échange erroné mot numéro du pas actif tps. activité pas courant 16 bits d’ordres bit dernier pas en cours mot valeur de présélection bit mot bit valeur courante remise à 0 externe présélection atteinte comptage en cours Type : "WEEK" ou "YEAR" sélection jours "LMMJVSD" consigne de début consigne de fin val. courante < consigne val. courante = consigne val. courante > consigne adresses Ci,P Ci,V Ci,E Ci,D Ci,F Ri,I Ri,O Ri,F Ri,E TXTi,L TXTi,S TXTi,M TXTi,C TXTi,A TXTi,T TXTi,R TXTi,D TXTi,E Di,S Di,V Di,Wj Di,F FC,P possibilités R/W (1) R R R R R/W R/W R R W R W W W W W R R R/W R R/W (2) R R/W(1) FC,V FC,E FC,D FC,F R/W R R R VD BGN END < = > W W W R R R Ces mots et bits ne sont pas indexables. (1) Si "YES" en mode CONFIGURATION, modification possible en mode REGLAGE, (2) Ecrit uniquement par configuration du bloc Di. 2/13 A 2.5 Indexation des objets 2.5-1 Adressage direct L’adressage des objets est dit direct, quand l’adresse de ces objets est fixe et définie à l’écriture du programme. Exemple : B126 (bit interne d'adresse 126) 2.5-2 Adressage indexé En adressage indexé, l’adresse directe de l’objet est complétée d’un index : à l’adresse de l’objet est ajouté le contenu de l’index. L’index est défini par un mot interne Wi. Le nombre de "mots index" n’est pas limité. Exemple : W108(W2) : mot d’adresse direct 108 + contenu du mot W2. Si le mot W2 a pour contenu la valeur 12, écrire W108(W2) équivaut donc à écrire W120. Ce type d’adressage permet de parcourir successivement une suite d’objets de même nature (mots internes, mots constants...), en modifiant par programme le contenu du mot index. Le contenu du mot utilisé comme index ne doit jamais être négatif. Le contenu du mot index ne doit jamais dépasser la valeur 127(1), diminuée de l’adresse du mot indéxé (mot interne ou mot constant). Exemple : W80(W100) : le contenu de W100 ne doit pas dépasser : 127 - 80 = 47. Les objets bits et mots indexables sont présentés dans les sous chapitres 2.2-2 et 2.3-2 du présent intercalaire. Débordement d’index, bit système SY20 Il y a débordement d’index dès que l’adresse d’un objet indexé dépasse les limites de la zone incluant ce même type d’objet, c’est-à-dire quand : • adresse objet + contenu de l’index inférieur à la valeur zéro, • adresse objet + contenu de l’index supérieur à 127(1). En cas de débordement d’index, le système provoque la mise à l’état 1 du bit système SY20. La surveillance du débordement est à la charge de l’utilisateur : le bit SY20 doit être lu par le programme utilisateur pour traitement éventuel. Sa remise à zéro est à la charge de l’utilisateur. SY20 (état initial = 0) : • sur débordement d’index : mise à 1 par le système, • acquittement débordement: mise à 0 par l’utilisateur, après modification de l’index. (1) 1023 pour TSX 17-20 VL > 2, si SY2=1 pour l'indexation des mots internes Wi. 2/14 X Structure mémoire utilisateur 3 A Structure mémoire utilisateur Chapitre 3 Sous chapitre 3.1 Généralités 3.1-1 Mémoire RAM on board 3.1-2 Mémoires cartouches utilisateur 3.2 Mémoires TSX 17-20 3.2-1 3.2-2 3.2-3 3.2-4 RAM on board TSX 17-20 Cartouches mémoire pour TSX 17-20 Fonctionnement de la cartouche EEPROM du TSX 17-20 Modes de Marches de la cartouche EEPROM à la mise sous tension 3.3 Mémoires TSX 27/47 3.3-1 RAM on board TSX 27/47 3.3-2 Cartouches mémoire pour TSX 27/47 Ce chapitre se termine à la page Page 3/2 3/2 3/2 3/3 3/3 3/3 3/4 3/4 3/5 3/5 3/5 3/6 3/1 A 3.1 Généralités L’espace mémoire des automates TSX 17-20/27/47, accessible à l’utilisateur est une mémoire RAM CMOS (Random Access Memory ou mémoire vive). Cet espace, est découpé en deux parties distinctes : • la mémoire programme, intégrée dans l’automate ou sur cartouche utilisateur (suivant automate), contient les instructions de programme et les données constantes définies par configuration (CWi, etc). • la mémoire de données, intégrée au module processeur (RAM on Board), est la mémoire de travail dans laquelle sont stockés les résultats intermédiaires de calculs et les états divers (états logiques de bits internes : Bi, mots internes : Wi, etc). 3.1-1 Mémoire RAM on board L’espace RAM on board est une mémoire intégrée au module processeur. Elle doit être maintenue sous tension pour conserver son contenu (tension secteur, pile , ...). 3.1-2 Mémoires cartouches utilisateur La cartouche mémoire permet de stocker le programme application et les données constantes uniquement, en dehors de l’espace mémoire automate (unité centrale). En programmation avec le terminal connecté, ou en exploitation, cette cartouche doit être insérée dans son emplacement réservé. Ces cartouches mémoire peuvent être du type : • RAM CMOS (Random Access Memory) : mémoire vive secourue par batterie Cadnium-nickel ou par pile (TSX 17-20), • EPROM (Erasable Programmable Read Only Memory) : mémoire morte effaçable uniquement par exposition aux rayons ultra-violet, • EEPROM (Erasable Electrical Programmable Read Only Memory) : mémoire morte effaçable électriquement par terminal. 3/2 Structure mémoire utilisateur 3 A 3.2 Mémoires TSX 17-20 3.2-1 RAM on board TSX 17-20 La RAM du TSX 17-20 est définie comme la mémoire de travail dans laquelle le processeur vient chercher ses instructions et ses données. C’est une mémoire de 32 K-octets, intégrée dans l’unité centrale. Elle se compose : Bus Entrées/sorties UNITE Unité de Traitement (Microprocesseur) • d’une zone mémoire programme configurable : (8 ou 24 K-octets), • d’une zone mémoire de données de 8 K-octets (dont une partie est réservée au système). Cette mémoire peut être sauvegardée lorsque l’automate est hors tension, grâce à une pile lithium (un condensateur assure une sauvegarde minimum d’une heure). CENTRALE Mémoire RAM Programme Mémoire RAM données 3.2-2 Cartouches mémoire pour TSX 17-20 Le programme sauvegardé dans la mémoire cartouche doit être transféré dans la RAM programme pour pouvoir être exécuté. En effet, le processeur du TSX 17-20 ne peut travailler qu’avec cette dernière. Deux types de cartouches sont destinés au TSX 17-20 : • EPROM : 8/24 K-octets référencées respectivement TSX MC70 E28/E224. A chaque mise sous tension et à condition que leurs contenus soient différents, un transfert EPROM vers RAM est automatiquement exécuté. • EEPROM : 8/24 K-octets réféCartouches EPROM et EEPROM rencées respectivement TSX MC70 E38/E324. Les cartouches EEPROM possèdent deux modes de fonctionnements définis par la position d’un commutateur placé à l’intérieur de celles-ci. Attention : Il est impératif de retirer ou d’enficher les cartouches mémoire uniquement lorsque le TSX 17-20 est hors tension. 3/3 A 3.2-3 Fonctionnement de la cartouche EEPROM du TSX 17-20 La mémoire de sauvegarde EEPROM possède deux modes de fonctionnement, définis par la position du commutateur placé à l’intérieur de la cartouche : Commutateur en position travail : WORK Les transferts de programme entre la mémoire interne RAM et la cartouche EEPROM sont MASTER (READ ONLY) RAM EEPROM autorisés dans les deux sens, et exécutés à WORK partir du terminal. Ce mode de fonctionnement EEPROM RAM permet entre autres : WORK • de sauvegarder un programme après l’avoir MASTER écrit, • de rappeler un programme sauvegardé, le modifier, puis le sauvegarder à nouveau (cas d’un programme non protégé(1)). A la mise sous tension, le transfert EEPROM vers RAM n’est pas automatique. Commutateur en position sauvegarde : MASTER Les transferts de programme ne sont plus autorisés que dans le sens mémoire EEPROM vers mémoire RAM. A chaque reprise secteur et si le contenu de la RAM automate est différent de celui de l'EEPROM, le contenu de celle-ci est transféré automatiquement en mémoire RAM automate. 3.2-4 Modes de Marches de la cartouche EEPROM à la mise sous tension Mise sous tension de l'automate N Mémoire RAM en état ? ? O Présence d'une cartouche déclarée en MASTER ? ? N Démarrage à chaud (cartouche absente ou présente et déclarée en WORK) O Identité RAM ↔ EEPROM ? ? O N Présence d'une cartouche déclarée en MASTER ? O N (1) Démarrage à chaud Démarrage à froid avec mise en RUN après transfert vers RAM Démarrage à froid avec mise en RUN après transfert vers RAM (cas d'une coupure pendant laquelle la RAM n'a pu être sauvegardée) Démarrage à froid avec passage en STOP et allumage voyant DEF MEM La protection d’un programme consiste, lors de sa sauvegarde, à le rendre inaccessible à la lecture et à la modification (voir "Aide à l’exploitation" - chapitre 4 - intercalaire D : Fonctions spécifiques au TSX 17-20). 3/4 Structure mémoire utilisateur 3 A 3.3 Mémoires TSX 27/47 3.3-1 RAM on board TSX 27/47 La RAM on board des automates TSX 27/47 contient uniquement une zone mémoire de données de 8 K-octets (dont une partie est réservée au système). La mémoire programme n’est pas intégrée dans l’unité centrale. Bus Entrées/sorties UNITE CENTRALE Unité de Traitement (Microprocesseur) Cette mémoire RAM on board est secourue par une batterie Cadnium-nickel lorsque l’automate est hors tension. Mémoire RAM données 3.3-2 Cartouches mémoire pour TSX 27/47 Le processeur vient obligatoirement chercher ses instructions de programme dans la mémoire cartouche. Cartouches utilisateur RAM CMOS ou EPROM Deux types de cartouches sont disponibles pour les automates TSX 27/47 : • RAM CMOS secourue par batterie : 8/16/32 K-octets, référencées respectivement TSX RAM 8 8/16 8/32 8. La durée de la sauvegarde est de 6 semaines en dehors de l’automate. Ne pas omettre de charger cette batterie en insérant préalablement la cartouche dans un automate sous tension pendant 24 heures. • EPROM 8/16/32 K-octets référencées respectivement TSX RPM 8 8/16 8/32 8. X 3/5 A Attention: Il est déconseillé de débrocher sous tension la cartouche utilisateur insérée dans l’automate. Toutefois le débrochage accidentel de la cartouche utilisateur sous tension ne provoque aucune détérioration de l’automate mais a nécessairement des conséquences sur l’application. 3/6 X Structure logicielle monotâche 4 A Structure logicielle monotâche Sous chapitre Chapitre 4 Page 4.1 Description tâche maître 4/2 4.2 Traitement du programme 4/4 4.3 Fonctionnement structure monotâche 4/5 4.3-1 Cycle de fonctionnement 4.3-2 Temps de réponse automate 4.3-3 Débordement de tâche 4/5 4/5 4/6 4.4 Gestion des bases de temps 4/6 Ce chapitre se termine à la page 4/6 4/1 A 4.1 Description tâche maître Le programme d’une application monotâche est contenu dans une seule tâche utilisateur: la tâche maître. L’exécution de la tâche maître est effectuée de manière cyclique, selon un temps fonction de la taille du programme (1). Durant ce cycle, sont réalisées les fonctions suivantes : Gestion système : Le système assure implicitement : • Prise en compte des bits et mots système et leur mise à jour. • Surveillance de l’automate: - contrôle de l’exécutabilité de la mémoire programme, - gestion du temps (mise à jour des valeurs courantes de l’horodateur et actualisation des mots SW50 à SW53 (sur TSX 17-20), - surveillance des modules d’entrées/sorties (bits de défauts, configuration modules, bits système SY10 et SY16, etc), - mise à jour des voyants: RUN, I/O, MEM et PROG (sur TSX 17-20), - détection des passages RUN/STOP, - surveillance d’autres paramètres système. • Traitement des requêtes du terminal. • Routage de la messagerie (messagerie transparente, blocs textes, etc) : - analyse des "buffers" d’entrées, contenant les messages reçus, - identification des destinataires (coupleurs, réseau, etc), - transfert des messages dans les "buffers" de sorties, associés aux destinataires. Acquisition des entrées : • Prise en compte en mémoire de données des messages, en provenance des coupleurs intelligents (3). • Ecriture en mémoire de données des messages FIPWAY/TELWAY (2) et mots communs (COMi,j). • Ecriture en mémoire de données des mots registres d’entrées (IW) des coupleurs (3). • Ecriture en mémoire des bits d’entrées (I) des modules d’entrées. Traitement du programme Le programme écrit par l’utilisateur est alors exécuté (1). Mise à jour des sorties • Ecriture des bits de sorties (O) dans les modules de sorties. • Ecriture des mots registres de sorties (OW) dans les coupleurs (3). • Emission vers le coupleur FIPWAY/TELWAY des messages (2) et des mots communs (COMi,j). • Emission des messages vers les coupleurs intelligents (3). (1) (2) (3) un chien de garde logiciel déclenche un défaut d'exécution programme si le temps d’exécution du programme dépasse 150 ms (voir page 4/6). Coupleur FIPWAY sur TSX 17-20 ou TELWAY sur TSX 47: à chaque cycle de la tâche maître, un message en réception et un en émission peuvent être traités à la fois. A chaque cycle de la tâche maître, sont traités alternativement: • l’acquisition et la mise à jour des mots de registres IW et OW, • l’émission et la réception de messages par bloc texte pour coupleurs intelligents. 4/2 Structure logicielle monotâche 4 A Synoptique du cycle de la tâche maître Gestion Système • Mise à jour des bits et mots système • Surveillance automate • Traitement des requêtes terminal • Routage des messages Acquisition des Entrées Prise en compte en mémoire de données : • Messages coupleurs intelligents • Messages réseau et/ou COMi,j • IWi,j • Bits d'entrées I Traitement du Programme Mise à jour des sorties • Ecriture des bits de sorties 0 • Ecriture OWi,j • Emission messages réseau et/ou COMi,j • Emission messages coupleurs intelligents 4/3 A 4.2 Traitement du programme Suivant le langage utilisé, le programme de la tâche maître sera structuré en modules distincts : Langage à contacts Langage Grafcet Module programme : LADDER (LAD) Module programme : Préliminaire (PRE) Séquentiel (SEQ) Postérieur (POS) Traitement Préliminaire " I N I T I A L I S A T I ON " B10 SYØ I N I T I A L I S A T I ON B10 SYØ 1 SY1 1 SY1 " B10 B10 O43 IØ6 2 " O43 IØ6 2 B7 B7 OPER OPER Traitement Séquentiel CØ1 CØØ LØØ 23 LØ1 10 CØ2 CØ3 CØ4 LØ2 LØ3 LØØ 17 LØ1 18 11 CØ5 CØ1 CØØ CØ6 CØ2 CØ7 CØ3 CØ4 CØ5 CØ6 CØ7 LØ4 LØ2 LØ5 12 19 LØ3 21 22 LØ6 LØ4 " 1 4 10 5 2 8 11 LØ7 12 LØ8 13 20 LØ5 LØ6 LØ9 14 16 10 LØ7 3 6 7 LØØ 5 LØ1 0 OPER L11 LØ8 LØ3 CØ3 CØ4 CØ5 CØ6 CØ7 LØ9 LØ4 L10 LØ5 1 17 L12 L13 CØ2 LØ2 L10 9 CØ1 CØØ 15 2 3 18 L11 " AC T I ON " D4,7 S L12 X Ø L13 " TRANS I T I ON " IØ,3 # X 1 9 0 0 Traitement Postérieur " SECUR I T E " " O7,S IB,Ø 9 0 0 " B10 IO,Ø 9 0 9 SECUR I T E " O7,S IB,Ø B10 R 9 0 0 " B10 IO,Ø 9 0 9 B10 R • Modules programme LADDER, Préliminaire, Postérieur : Ces modules sont écrits à l’aide du langage à contacts. Ils sont composés de réseaux de contacts successifs, repérés par des étiquettes (1 à 999). Les modules programmes préliminaire et postérieur sont associés au module programme séquentiel dans le langage GRAFCET. • Module programme Séquentiel : Il est réservé aux pages GRAFCET pour la saisie du graphe. Il fait appel pour l’écriture de chaque réceptivité ou action au langage à contacts. 4/4 4 Structure logicielle monotâche A 4.3 Fonctionnement structure monotâche 4.3-1 Cycle de fonctionnement Lorsque l’automate est en RUN, le cycle de fonctionnement est celui décrit en 4.1. Lorsque l’automate est en STOP, le cycle de fonctionnement comprend dans tous les cas la gestion du système. Suivant la nature de l’automate, il se décompose comme suit : Cycle en STOP des TSX 27/47 V≥3 : Le processeur effectue uniquement la gestion du système. Il n’y donc pas de mise à jour de la mémoire de données. Système RUN Cycle en STOP des TSX 17-20, 27/47 V<3 : Le processeur effectue la gestion du système, l’acquisition des entrées et la mise à jour des sorties décrites à la page 4/2. RUN STOP Traitement Programme TSX27/47 V ≥ V3.0 STOP TSX 27/47 V<3.0 TSX17-20 4.3-2 Temps de réponse automate Le temps de réponse automate (TR) est le temps qui sépare l’arrivée d’une information sur le module d’entrée et la mise à jour de la sortie correspondante. Ce temps dépend du temps d’immunité des entrées/sorties (TIE/TIS, environ 10 ms pour une prise en compte), et du temps de cycle automate (TC). Le temps de réponse de la tâche maître est aléatoire. Il est égal à : TR = TIE + (1 à 2)TC + TIS Entrées Traitement Sortie Entrées Traitement Sortie Entrées Imm. Entrée Imm. Sortie Evénement Temps de Réponse Action Imm. Entrée Evénement Imm. Sortie Temps de Réponse Action 4/5 A 4.3-3 Débordement de tâche L’exécution du programme utilisateur est contrôlée par un chien de garde logiciel, fixé à 150 ms. Si son exécution dépasse 150ms (ex. : boucle dans le programme), le débordement tâche entraîne un défaut logiciel bloquant soit : • arrêt immédiat de l’automate, • voyants STOP et PROG clignotants sur TSX 17-20, • voyant STOP clignotant et voyant MEM fixe sur TSX 27/47. La relance de l’automate nécessite une reprise secteur du type reprise à froid. Les phases : gestion système, acquisition des entrées et mise à jour des sorties ne sont pas contrôlées par le chien de garde. 4.4 Gestion des bases de temps Les bases de temps des automates TSX 17-20/27/47 sont gérées par une horloge interne qui fonctionne de manière asynchrone par rapport au temps de cycle. Les bits et mots système associés à la gestion du temps (SY5, SY6, SY7, les bits et valeurs courantes de temporisateurs et monostables, ainsi que les temps d’activité d’étapes GRAFCET et les temps enveloppes de programmateurs cycliques), sont rafraîchis sur interruption système, indépendamment de la position dans le cycle, et ceci à chaque unité de leur base de temps respective. 4/6 X Structure logicielle bitâche 5 A Structure logicielle bitâche Sous chapitre Chapitre 5 Pages 5.1 Description de la tâche rapide 5/2 5.2 Tâche rapide du TSX 17-20 5/3 5.2-1 Entrées événementielles 5.2-2 Entrées/sorties affectées à la tâche rapide 5.2-3 Temps de réponse de la tâche rapide 5.3 Tâche rapide des TSX 27/47 5.3-1 Bases de temps 5.3-2 Entrées/sorties affectées à la tâche rapide 5/4 5/4 5/4 5/5 5/6 5/6 5.4 Gestion des bases de temps 5/6 Ce chapitre se termine à la page 5/6 5/1 A 5.1 Description de la tâche rapide Pour répondre au besoin de prise en compte d'événements rapides et temporaires, les automates TSX 17-20, TSX 27/47 V≥3 intègrent en plus de la tâche maître, une tâche rapide : • événementielle pour le TSX 17-20, • périodique pour les TSX 27/47. Cette tâche prioritaire est réservée aux traitements de courte durée, nécessitant une rapidité d’exécution, incompatible avec les temps d’exécution de la tâche maître (voir temps de réponse page 4/5 du présent intercalaire). La tâche rapide ne peut être programmée qu’avec le langage à contacts (structure LADDER). Le programme de la tâche rapide ne doit pas excéder 20 réseaux de contacts (étiquettes admises: 1 à 20). Son temps de cycle doit être inférieur ou égal à 2 ms. Le bit système SY19 permet à l’utilisateur de valider ou d’inhiber cette tâche, en le positionnant respectivement à 0 ou 1. Le positionnement de ce bit doit être fait en tâche maître. Une fois cette tâche activée, le processeur lit l’état des entrées qui lui sont affectées, exécute son programme, puis met à jour les sorties qui lui sont aussi affectées, avant même de revenir dans la tâche maître. Tâche Rapide Lecture des entrées affectées à la tâche rapide Activation de la tâche rapide à partir de la tâche maître Réseaux de contacts Tâche Maître Retour dans la tâche maître après exécution de la tâche rapide 5/2 Scrutation du programme de la tâche rapide Mise à jour de l'état des sorties affectées à la tâche rapide Structure logicielle bitâche 5 A 5.2 Tâche rapide du TSX 17-20 La tâche rapide du TSX 17-20 offre des temps de réponse courts et garantis, pour des traitements de courte durée. Principe Si SY19 = 0, cette tâche est activée, après interruption de la tâche maître, dès l’apparition de l’un des événements suivants : • changement d’état physique : front montant ou front descendant sur l’une des entrées dédiées I0,24 ou I0,25 (appelées aussi entrées événementielles). • présélection atteinte : arrivée du compteur rapide FC à sa valeur de présélection (SY15 = 1). Une fois à 1, ce bit système doit être remis à 0 par programme, dans la tâche rapide. Si SY19 = 0 et si un événement est présent, l’interruption de la tâche maître et l’activation de la tâche rapide ne peuvent être effectuées que durant les phases suivantes : • gestion du système, • en fin descrutation d’un module d’entrées/sorties (après lecture ou écriture complète), • exécution du programme utilisateur: - après scrutation d’un réseau complet, - ou exécution d’une action (Grafcet), - ou évaluation d’une réceptivité (Grafcet). Tâche Maître (EV) Condition d'exécution de la Tâche Rapide : Changement d'état physique des variables événementielles Système * (EV) Module 0 (EV) Label 1 Label 2 * IO,24 ; I0,25 SY15 Présélection du compteur rapide (C31) atteinte * Programme (EV) Tâche Rapide Label i Utilisateur (EV) Exécution tâche rapide dès que l'une des 3 variables change d'état et SY19=Ø. Label n Module 0 * * (EV) : Evénement Important : Si un événement apparaît durant l’exécution de la tâche rapide, celleci termine son cycle et en relance un immédiatement, sans retour dans la tâche maître. Dans ce cas attention au déclenchement du chien de garde. 5/3 A 5.2-1 Entrées événementielles Les entrées I0,24 et I0,25 sont des entrées 24VCC ayant un temps d’immunité réduit (<1 ms). Elles sont : • Soient dédiées à la tâche rapide lorsqu’elles sont configurées en entrées événementielles, le changement d’état physique de l’une de ces deux entrées, lance le cycle de la tâche rapide (front montant ou front descendant). Le changement d’état commandé par programme ou par terminal n’entraîne pas l’exécution du cycle de la tâche rapide. • Soient des entrées T.O.R. normales lorsqu’elles ne sont pas configurées en entrées événementielles, elles peuvent être utilisées comme des entrées normales. Quelque soit l'utilisation de ces entrées, la faible immunité de celles-ci nécessite l'emploi d'un câble blindé pour leur raccordement. 5.2-2 Entrées/sorties affectées à la tâche rapide Seul un octet d’entrée (I0,00 à I0,07 ou I0,08 à I0,15 ou I0,16 à I0,23), et un octet de sortie (O0,00 à O0,07 ou O0,08 à O0,15) de l'automate de base peuvent être affectés à la tâche rapide. Les deux octets ne sont gérés par la tâche rapide que s’ils sont configurés à l'aide d'un terminal en mode CONFIGURATION. Lorsque la tâche rapide est activée, l’octet d’entrées et l’octet de sorties associés sont gérés par cette dernière. L'octet de sortie est géré par les 2 tâches. Lorsque la tâche rapide n’est pas activée, l’octet d’entrées et l’octet de sorties associés sont gérés uniquement par la tâche maître. 5.2-3 Temps de réponse de la tâche rapide Le temps de réponse de la tâche rapide (TRr) du TSX 17-20 est court et garanti. Il dépend de l’immunité de I0,24 et I0,25 "IM", du temps "FE" de désactivation de la tâche maître "Fin d’Exécution" d’un réseau,...), de son temps de cycle "T" et du temps de réponse des sorties "IMS" : TRr = IM + FE + 1T + IMS Sortie Entrées Traitement Sortie Entrées Traitement Sortie Entrées Imm. Entrée Imm. Sortie Evénement TR. Tâche Maître Action IM FE T IMS Tâche rapide Action IM FE T IMS Tâche rapide Action Evénement Evénement 5/4 Structure logicielle bitâche 5 A 5.3 Tâche rapide des TSX 27/47 La tâche rapide des automates TSX 27/47 est destinée à des traitements de courte durée et à fréquences élevées. Principe Si SY19 = 0, cette tâche est activée, après interruption de la tâche maître, à chaque période d’une base de temps définie (5 ou 10 ms). Si SY19 = 0 et si le top d’horloge est donné, l’interruption de la tâche maître et l’activation de la tâche rapide ne peuvent être effectuées que durant les phases suivantes : • gestion du système, • en fin de scrutation d’un module d’entrées/sorties (après lecture ou écriture complète), • exécution du programme utilisateur : - après scrutation d’un réseau complet, - ou exécution d’une action (Grafcet), - ou évaluation d’une réceptivité (Grafcet). Tâche Maître TB Condition d'exécution de la Tâche Rapide : Top d'horloge de la base de temps Système * TB Module 1 TB Label 1 Label 2 * TB * Programme Tâche Rapide Label i Utilisateur La tâche rapide est exécutée à chaque top d'horloge, si SY19 = Ø TB Label n TB Module 1 * * 5/5 A 5.3-1 Bases de temps La période d’exécution de la tâche rapide est définie par le bit système SY3 : • SY3 = 0 tâche rapide exécutée tous les 10 ms, • SY3 = 1 tâche rapide exécutée tous les 5 ms. Cette période ne doit pas être utilisée si l’automate gère aussi un coupleur intelligent ou un coupleur TELWAY. SY3 (1) Base de temps Temps d'exécution (1) Nombre de réseaux 1 5ms 1ms 10 maximum 0 10ms 2ms 20 maximum Temps maximum assurant un fonctionnement correct. 5.3-2 Entrées/sorties affectées à la tâche rapide L’affectation des entrées/sorties se définit par configuration : • TSX 27 : 12 entrées (I1,0 à I1,B) et 8 sorties (O0,0 à O0,7) peuvent être affectées à la tâche rapide par configuration. • TSX 47-J/47-10/20 : Seuls un module d’entrées et un module de sorties peuvent être affectés à la tâche rapide, par configuration. Lorsque la tâche rapide est activée, les entrées et les sorties associées sont gérées par cette dernière. Le module de sortie est géré par les 2 tâches. Lorsque la tâche rapide n’est pas activée, les entrées et les sorties associées sont gérées par la tâche maître. 5.4 Gestion des bases de temps Les bases de temps des automates TSX 17-20/27/47 sont gérées par une horloge interne qui fonctionne de manière asynchrone par rapport au temps de cycle, quelle que soit la structure du système (monotâche ou bitâche). Les bits et mots système associés à la gestion du temps (SY5, SY6, SY7, les bits et valeurs courantes de temporisateurs et monostables, ainsi que les temps d’activité d’étapes GRAFCET et les temps enveloppes de programmateurs cycliques), sont rafraîchies sur interruption système, indépendamment de la position dans le cycle, et ceci à chaque unité de leur base de temps respective. 5/6 X Rôle des bits et des mots système 6 A Rôle des bits et des mots système Sous chapitre Chapitre 6 page 6.1 Bits système 6/2 6.2 Mots système 6/8 6.2-1 Mots système TSX 47 6.2-2 Mots système TSX 17-20 Ce chapitre se termine à la page 6/8 6/9 6/12 6/1 A 6.1 Bits système Les automates TSX 17-20/27/47-J/47-10/20 disposent de 24 bits système (SY0 à SY23) qui indiquent les états de l’automate ou permettent d’agir sur le fonctionnement de celui-ci. Ces bits sont testés dans le programme utilisateur afin de détecter tout événement de fonctionnement devant entraîner une procédure particulière de traitement. Certains d’entre eux doivent être remis dans leur état initial ou normal par programme. Cependant, les bits système qui sont remis dans leur état initial ou normal par le système ne doivent pas l’être par programme ou par le terminal. Bits Fonction système Désignation SY0 Normalement à l’état 0, est mis à l’état 1 par : • changement d’une cartouche mémoire utilisateur, • reprise secteur avec perte des données (défaut batterie sur UC ou sur cartouche TSX 27/47. Défaut pile sur TSX 17-20 ou action sur verrou cartouche TSX 27/47 V<3) • programme utilisateur, • terminal (mode REGLAGE ou INIT), • changement. cartouche micro logiciel PL7-2 sur TSX 17-20. Reprise à froid Ce bit est mis à 1 durant le premier cycle complet. Il est remis à 0 avant le cycle suivant. Sur reprise à froid, l’automate repart toujours en exécution (RUN). Fonctionnement : voir sous chapitre 7.2-3 "comportement sur reprise à froid". SY1 Reprise à chaud Normalement à l’état 0, est mis à l’état 1 par : • action sur un verrou cartouche TSX 47 V>3, • reprise secteur avec sauvegarde des données, • programme utilisateur, • terminal (mode REGLAGE). Il est remis à 0 par le système à la fin du premier cycle complet et avant la mise à jour des sorties. Fonctionnement : voir sous chapitre 7.2-2 "comportement sur reprise à chaud" SY2 6/2 Extension adressage indexé 128 à 1024 Uniquement pour TSX 17-20 VL > 2.0 : SY2 = 0 : adressage indexé W0...W127 SY2 = 1 : adressage indexé W0...W1023 Rôle des bits et des mots système 6 A Bits Fonctions système Désignation SY3 Base de temps Tâche rapide TSX 27/47 V>3 Normalement à l’état 0 : • SY3 = 0 tâche rapide exécutée toutes les 10 ms, • SY3 = 1 tâche rapide exécutée toutes les 5 ms, Mise à l’heure Horodateur TSX 17-20 • SY3 = 0 rafraîchissement de l’heure validé • SY3 = 1 gel de l’horodateur pour mise à l'heure La gestion de ce bit est à la charge de l’utilisateur. Bases de temps : 100ms 1s 1mm Bits dont le changement d’état est cadencé par une horloge interne. Ils sont asynchrones par rapport au cycle de l’automate. SY8 Sécurité des sorties (général) Normalement à l’état 1, peut être mis à l'état 0 par programme ou par le terminal (mode REGLAGE) : • état 1 provoque la mise à zéro des sorties de l’automate, en cas de non exécution normale du programme ou sur STOP automate, • état 0 maintien les sorties dans l’état défini en cas de non exécution normale du programme ou sur STOP automate. SY9 Mise à zéro des sorties Normalement à l’état 0. Peut être mis à l'état 1 par programme ou par le terminal (mode REGLAGE) : • état 1 : provoque le forçage à l’état 0 des sorties de l’automate, même lorsque celui-ci est en RUN, • état 0 : les sorties sont mises à jour normalement. SY10 Défaut entrées/sorties (général) TSX 47 Normalement à l’état 1. Est mis à l’état 0 quand (le voyant I/O du processeur est également allumé) • défaut sur un module d’entrées/sorties d'un bac de base ou d’extension (configuration non conforme, défaut d’échange, absence bornier ou module, défaut module), • défaut sur un bac d’extension (coupure ou défaut alimentation, défaut liaison ou module d’extension). TSX 27 TSX 17-20 • Défaut d’un module d’entrées/sorties. • Défaut d’échange avec un module ou défaut de configuration. Les bits diagnostic des défauts d’entrées/sorties renseignent sur la nature du défaut (voir page 3.2 intercalaire D). Le bit SY10 est remis à 1 dès la disparition du défaut. SY5 SY6 SY7 6/3 A Bits Fonction système Désignation SY11 Rafraîchissement Normalement à l’état 0, est mis à l’état 1 dès qu'une stamots communs tion locale a reçu les mots communs d'au moins une FIPWAY/TSX 17-20 station distante. Ce bit doit être mis à 0 par programme. TELWAY/TSX 47 Il peut être mis à 0 par le terminal pour vérifier le cycle d’échange des mots communs SY12 Réseau en Normalement à l’état 0, est mis à l’état 1 fonctionnement dès que le coupleur de la station locale échange des FIPWAY/TSX 17-20 mots communs avec une autre station du réseau. TELWAY/TSX 47 N’indique pas que toutes les stations fonctionnent. Est mis à l’état 0 sur défaut du coupleur. SY13 Etat pile TSX 17-20 SY13 = 0 pile présente et en service SY13 = 1 pile absente ou hors service SY14 Visualisation mémoire Memory Display TSX 17-20 Selon l’état du bit, la signification des voyants de la face avant de l’automate de base est différente : SY14 = 0 voyant MD éteint visualisation des sorties, SY14 = 1 voyant MD allumé visualisation des 16 bits de SW16 (poids faible à droite, poids fort à gauche). SY15 Fin de cycle comptage rapide TSX 17-20 Normalement à l’état 0, ce bit est positionné par le système à 1 dès que la valeur courante de FC atteint la valeur de présélection. Il doit être remis à 0 par programme à la fin de la tâche rapide. SY16 Réarmement sorties statiques TSX 17-20 Normalement à l’état 0, est mis à l’état 1 par l'utilisateur pour une demande de réarmement toutes les 10 s, des sorties statiques déclenchées sur surintensité ou sur court-circuit. SY17 Dépassement de capacité (carry) Normalement à l’état 0, est mis à l'état 1 : • En cas de dépassement de capacité lors d’une opération en arithmétique non signé (retenue). • Lors d’un décalage circulaire, signale la sortie d’un bit à 1. Doit être testé, par le programme utilisateur, après chaque opération où il y a risque de dépassement puis remis à 0 en cas de dépassement. 6/4 6 Rôle des bits et des mots système A Bits Fonction système Désignation SY18 Débordement ou erreur arithmétique "Overflow" Normalement à l’état 0. Est mis à l’état 1 en cas de débordement de capacité lors d’une opération sur 16 bits soit : • résultat supérieur à + 32767 ou inférieur à - 32 768, • Division par 0. Doit être testé, par le programme utilisateur, après chaque opération où il y a risque de débordement puis remis à 0 en cas de débordement. SY19 Inhibition tâche rapide TSX 17-20 TSX 27/47 V≥3 Normalement à l’état 1: SY19 = 1 inhibition tâche rapide SY19 = 0 validation tâche rapide La gestion de ce bit est à la charge de l’utilisateur. SY20 Débordement index (tâche) TSX 17-20 TSX 27/47 V>3 Normalement à l’état 0, est mis à l’état 1 lorsque l'adresse de l’objet indexé devient inférieure à 0 ou supérieure à 127 (> à 1023 dans le cas d’un TSX 17-20 VL>2, avec SY2=1) Doit être testé, par le programme utilisateur, après chaque opération où il y a risque de débordement, puis remis à 0 en cas de débordement. Fonctionnement : voir sous chapitre 2.5-2 "débordement d’index". SY21 Initialisation GRAFCET (général) Normalement à l’état 0, est mis à l’état 1 par : • reprise à froid, SY0=1, • le programme utilisateur uniquement dans le traitement préliminaire (PRE), • le terminal (demande d’initialisation par la touche dynamique INIT) ou modification de programme en mode connecté. A l’état 1, provoque l’initialisation du GRAFCET. Les étapes actives sont désactivées et les étapes initiales sont activées Est remis à 0 par le système en début d’exécution du traitement séquentiel. SY22 Remise à zéro GRAFCET Normalement à l’état 0, ne peut être mis à l'état 1 par programme que dans le traitement préliminaire (PRE). A l’état 1, provoque la désactivation des étapes actives sur l’ensemble du GRAFCET. Est remis à l’état 0 par le système en début d’exécution du traitement séquentiel. 6/5 A Bits Fonction système Désignation SY23 Normalement à l’état 0, ne peut être mis à l'état 1 par le programme utilisateur que dans le traitement préliminaire (PRE). Prépositionnement et gel GRAFCET A l’état 1, il permet de valider le prépositionnement du GRAFCET. Maintenu à l'état 1, il permet de maintenir le GRAFCET dans un état donné (gel du graphe). Est remis à 0 par le système en début d'exécution du traitement séquentiel. 6/6 6 Rôle des bits et des mots système A Tableau récapitulatif Bit Fonction SY0 1 = démarrage à froid (reprise secteur avec perte des données) 1 = démarrage à chaud (reprise secteur sans perte des données) 0 = adres. indexé W0 à W127 1 = adres. indexé W0 à W1023 BT tâche rapide 0 = 10ms ; 1 = 5 ms 1 = gel de l'horodateur BT = 100ms BT = 1s BT = 1mn 0 = maintien des sorties sur STOP automate 1 = mise à zéro des sorties automate en RUN 0 = défaut E/S 1 = rafraîchissement variables COM réseau émises par station 1 = réseau et coupleur, station réseau OK 1 = pile absente ou défectueuse 1 = visualisation du contenu de SW16 1 = le compteur rapide C31 est égal à sa valeur de présélection 1 = demande de réarmement toutes les 10s sorties statiques déclenchées sur surintensité ou court-circuit 1 = débord. sur calcul non signé ou décal. circulaire 1 = débordement sur calcul (16 bits) 1 = inhibition tâche rapide 1 = débordement d'index 1 = initialisation du GRAFCET provoque la mise à 0 des étapes et la mise à 1 des étapes initiales 1 = RAZ de GRAFCET 1 = validation du prépositionnement du GRAFCET. Maintenu à 1 provoque le figeage du GRAFCET SY1 SY2 SY3 SY5 SY6 SY7 SY8 SY9 SY10 SY11 SY12 SY13 SY14 SY15 SY16 SY17 SY18 SY19 SY20 SY21 SY22 SY23 Etat init. 0 Gestion TSX (*) 17-20 27 47 S ou U → S x x x 0 S ou U → S x 0 U V≥2 0 U 0 1 U S S S U x x x x x x x x x x x x x 0 U x x x 1 0 S S→U x x x x 0 S 0 0 0 S U S→U x x x 0 U→S x 0 S→U x 0 1 0 0 S→U U S→U U→S x x x x V≥3 V≥3 x V≥3.1 V≥3.1 x x x 0 0 U→S U→S x x x x V≥3 V≥3 x x x x x x x (*) abréviations utilisées : S = mis à 1 ou 0 par le système, U = mis à 1 ou 0 par l'utilisateur, S → U = mis à 1 par le système, remis à 0 par l'utilisateur, U → S = mis à 1 par l'utilisateur, remis à 0 par le système. 6/7 A 6.2 Mots système Les automates TSX 17-20/47 disposent de 60 mots système (SW0 à SW59) décrits ci-après : 6.2-1 Mots système TSX 47 Mots Fonction système Désignation SW0 Mise à jour des mots communs TELWAY Chaque bit de ce mot (0 à F) représente une station du réseau (0 à 15). L’état 1 d’un bit indique que la station correspondante à émis ses mots communs. Ce mot permet de s’assurer que l’automate de cette station est en RUN. Ce mot est réinitialisé à la valeur 0 seulement par programme. SW1 ______ Mot système réservé. SW2 Numéro de station TELWAY Indique en décimal le numéro de la station codé sur le bornier de raccordement du coupleur TELWAY. SW3 Table des stations TELWAY Chaque bit (0 à F) de ce mot représente une station du réseau (0 à 15). L’état 1 d’un bit indique que le coupleur de la station correspondante fonctionne. Il est remis à jour par le système. 6/8 Rôle des bits et des mots système 6 A 6.2-2 Mots système TSX 17-20 Mots système Fonction Désignation SW0 Mise à jour des mots communs Chaque bit de ce mot (0 à 15) représente une station du réseau (0 à 15). L'état 1 d'un bit indique que la station correspondante a émis ses mots communs. Ceci permet de s'assurer que l'automate de cette station est en RUN. Ce mot est réinitialisé à 0 seulement par programme. SW1 SW1,15 = Présence coupleur (1 = coupleur présent) SW1,14 = Etat coupleur (1 = coupleur disponible. Ce bit n'est significatif que si SW1,15 = 1). SW1,13 = Echange des mots communs. (1 = fonction active. Significatif que si SW1,14 = 1). Autres bits SW1,● = réservés. SW2 Numéros de réseau et de station Ce mot indique le numéro de réseau et de station FIPWAY. Il correspond au codage effectué sur la partie avant du coupleur. Le numéro de réseau est indiqué par les bits de poids forts (8 à 15), le numéro de station est indiqué par les bits de poids faibles (0 à 7). SW3 SW4 SW5 SW6 Table des stations FIPWAY Chaque bit de ces mots représente une station du réseau. L'état 1 d'un bit indique que le coupleur de la station correspondante appartient au réseau. Ce mot, remis à jour par le système, n'indique pas que l'automate correspondant est en RUN. SW16 Mot visualisable en mode visualisation mémoire (MD) Si SY14 = 1, le contenu de SW16 est affiché en binaire par les voyants de la face avant du module de base. Lors de l’utilisation de l’afficheur numérique TSX 17 ACC2, le contenu de SW16 est affiché en BCD. SW17 Checksum RAM Contient le checksum de la RAM programme du TSX 17-20 SW18 Checksum cartouche EPROM ou EEPROM TSX 17-20 Contient le checksum (voir SW17) du programme utilisateur contenu dans la cartouche. Ce mot est mis à 0 si le commutateur de la cartouche EEPROM est en position "WORK". La gestion par programme de SW17 et SW18 permet de protéger le programme utilisateur contre les duplications, en imposant la présence de la cartouche automate en RUN (voir chapitre : Aide à l’exploitation – intercal. D). SW24 Adresse UNI-TELWAY prise terminal Adresse UNI-TELWAY de la prise terminal. Adresse définie par configuration et chargée dans SW24 lors d’une reprise à froid (SY0=1) 6/9 A Mots Fonction système Désignation SW40 Durée du dernier temps d’exécution programme Durée (multiple de la base de temps 10 ms) du dernier temps d’exécution programme application (sur TSX 17–20 VL>2). SW41 Durée du temps d’exécution programme le Durée (multiple de la base de temps 10 ms) du temps d’exécution du programme application le plus long, depuis le dernier "démarrage à froid". SW46 SW47 SW48 Codes modules d’extension code module d’extension 1 (0 si absent) code module d’extension 2 (0 si absent) code module d’extension 3 (0 si absent) SW50 SW51 SW52 SW53 Fonction Horodateur Mots système contenant les valeurs courantes de la date et de l’heure (en BCD) : SW50 : siècle et année, SW51 : mois et jour, SW52 : heure et minute, SW53 : secondes et jour de la semaine. SW54 SW55 SW56 SW57 Fonction Horodateur Mots système contenant la date et l’heure du dernier défaut secteur ou arrêt automate (en BCD) : SW54 : siècle et année, SW55 : mois et jour, SW56 : heure et minute, SW57 : secondes et code du défaut. SW58 Heure courante Contient l’heure courante en minute dans le jour courant (0 à 1439 en décimal) SW59 Date courante Contient le numéro du jour courant dans l’année courante (1 à 366 en décimal). Les mots SW58 et SW59 permettent d’effectuer des opérations de calcul de durées. 6/10 6 Rôle des bits et des mots système A Tableau récapitulatif Mot Fonction TSX 17-20 47 Gestion (*) Explication SW0 Mise à jour des mots communs x x S→U Bits 0 à F = N° station 1 = mise à jour effectuée SW1 Gestion du réseau x x S Réservé pour extension future SW2 N° de réseau et de station x x S Bits 8 à F : n° réseau Bits 0 à 7 : n° station SW3 SW4 SW5 SW6 Coupleur réseau OK x x x S bits 0 à F = N° station 1 = coupleur station OK SW16 Mot visualisable en face avant de l'automate x U Si SY14 = 1 affichage du contenu de SW16 sur visu automate SW17 Checksum RAM programme x S SW18 Checksum cartouche "back up" = 0 si pas de backup x S SW24 Adresse UNI-TELWAY prise terminal x S adresse définie par configuration. Chargée dans SW24 lors d'une reprise à froid (SY0 = 1) SW40 Durée (base 10ms) des derniers temps d'exécution programme application x S Sur TSX 17-20 VL ≥ 2 SW41 Durée (base 10ms) du temps de cycle le plus long depuis le dernier démarrage à froid x S SW46 SW47 SW48 Codes modules d'extension x S mod 1 (0 si absent) mod 2 (0 si absent) mod 3 (0 si absent) (*) abréviations utilisées : S = mot écrit par le système, U = mot écrit par l'utilisateur, S → U = bits du mot mis à 1 par le système, mise à 0 à charge de l'utilisateur. 6/11 A Tableau récapitulatif (suite) Mot Fonction TSX 17-20 47 Gestion (*) Explication si option horodateur contiennent la date et l'heure courante SW50 Contient le siècle et l'année en BCD x S SW51 Contient le mois et le jour en BCD x S SW52 Contient l'heure et la minutes en BCD x S SW53 Contient les secondes, et le jour de la semaine en BCD x S SW54 Contient le siècle et l'année en BCD x S SW55 contient le mois et le jour en BCD x S SW56 Contient l'heure et la minute en BCD x S SW57 Contient les secondes, et le code d'arrêt en BCD x S SW58 Heure courante en minutes dans le jour courant (0 à 1439 en décimal) x S SW59 Numéro du jour courant dans l'année (1 à 366 en décimal) x S si option horaodateur contiennent la date et l'heure de la dernière mise hors tension ou passage en STOP de l'automate si option horodateur SW58 et SW59 permettent de faire des opérations arithmétiques pour effectuer du calcul de durée (*) abréviations utilisées : S = mot écrit par le système, U = mot écrit par l'utilisateur, S → U = bits du mot mis à 1 par le système, mise à 0 à charge de l'utilisateur. 6/12 X Coupure et reprise secteur 7 A Coupure et reprise secteur Chapitre 7 Sous chapitre 7.1 Principe Page 7/2 7.1-1 Fonctionnement de l’automate à la coupure secteur 7.1-2 Sauvegarde du contexte système et application 7.1-3 Fonctionnement de l’automate à la reprise secteur 7/2 7/3 7/3 7.2 Comportement sur reprise secteur en structure monotâche 7/4 7.2-1 Comportement de l’automate sur reprise à chaud 7.2-2 Comportement de l’automate sur reprise à froid 7.3 Comportement sur reprise secteur en structure bitâche 7.3-1 Comportement sur reprise à froid 7.3-2 Comportement sur reprise à chaud après coupure en tâche maître 7.3-3 Comportement sur reprise à chaud après coupure en tâche rapide 7/4 7/6 7/8 7/8 7/8 7/8 7.4 Programmation de la reprise secteur 7/10 Ce chapitre se termine à la page 7/10 7/1 A 7.1 Principe Pour éviter tout aléa de fonctionnement de l’automatisme en cas de coupure secteur ou de sous tension anormale, les modules alimentation des automates TSX 17-20/27/47 disposent d’un ensemble détectant la présence de la tension secteur. L’alimentation du TSX 47 est équipée d’un dispositif de surveillance de la disparition secteur (dispositif au fonctionnement optionnel connecté sur le primaire des alimentations). Ce dispositif permet de traiter chaque coupure secteur en supprimant la prise en compte d’états d’entrées erronés suite à la disparition secteur (autonomie d’alimentation capteur inférieure à l’autonomie d’alimentation automate), et ceci tout en réduisant au maximum les délais de reprise de l’exécution du programme utilisateur. D’origine ce dispositif de surveillance secteur est en service. 7.1-1 Fonctionnement de l’automate à la coupure secteur Durée de la coupure secteur Comportement de l’automate Inférieur à 10 ms • Exécution normale du programme TSX 47 avec circuit de surveillance service Supérieur à 10ms (2 ms avec module d’alimentation 24/48 VCC), et inférieure à l’autonomie de l'alimentation (environ 200 ms) en • Arrêt de la scrutation du programme avant la disparition de la tension sur les entrées. • Sauvegarde du contexte système et application. • Suivant l’état du bit SY8 (sécurité) sorties forcées à zéro (SY8=1) ou maintenues à l’état (SY8=0). TSX 47 avec circuit de surveillance hors service et TSX 17-20/27 • Exécution normale du programme après reprise immédiate. Supérieure à l’autonomie de l'alimentation (200ms). TSX 47 avec circuit de surveillance en service • Processeur arrêté hors tension. TSX 17-20/27 et TSX 47 avec circuit de surveillance hors service • Arrêt de scrutation. • Sauvegarde contexte(1). • Processeur hors tension. (1) sur TSX 17-20, le contexte n’est sauvegardé qu'une heure si l’automate n'est pas équipé d’une pile. 7/2 Coupure et reprise secteur 7 A 7.1-2 Sauvegarde du contexte système et application Cette sauvegarde consiste pendant l’autonomie de l’alimentation à : • calculer la valeur du checksum de la mémoire RAM du processeur (pointeur d’instruction, registres internes,...), • transférer le résultat de ce calcul (cheksum, etc) dans la mémoire RAM secourue du processeur de l’automate. A la réapparition du secteur, cette sauvegarde est comparée au contexte présent et selon le résultat, le type de la reprise secteur est immédiat, à chaud ou à froid. 7.1-3 Fonctionnement de l’automate à la reprise secteur Type de reprise secteur Comportement de l’automate TSX 47 avec circuit de surveillance en service • Reprise à chaud, avec contexte cohérent vis-à-vis de l’application (programme, données et entrées/sorties sauvegardées). Reprise après coupure inférieure à l’autonomie d’alimentation (200ms) Reprise après coupure supérieure à l’autonomie de l’alimentation : • batteries ou pile correctes et cartouches inchangées (SY1=1) • batteries ou piles défectueuses ou changement de cartouche (SY0=1) TSX 17-20/27 et TSX 47 avec circuit de surveillance hors service • Reprise à chaud, avec contexte cohérent rent vis-à-vis de l’application • Reprise à froid, avec perte du contexte : initialisation des données du langage Synoptique RUN Application Défaut secteur Retour secteur Défaut > 10ms NON OUI STOP Appli Défaut > Autonomie NON OUI Changement cartouche OUI NON TSX 47 * Exécution normale du programme OUI Pile ou batterie OK NON NON Reprise immédiate Reprise à chaud Reprise à froid * TSX 47 avec circuit de surveillance en service 7/3 A 7.2 Comportement sur reprise secteur en structure monotâche 7.2-1 Comportement de l’automate sur reprise à chaud : SY1=1 Synoptique Acquisition des entrées Exécution du programme TOP L1 L2 L3 L5 Si SY1 = 1 Traitement éventuel de la reprise à chaud Coupure secteur • Arrêt du processeur • Sauvegarde du contexte application Retour secteur OUI Auto-tests de la configuration (150ms) NON Ln Mise à 1 de SY1 Mise à 0 de SY1 Mise à jour de sorties Conséquences de la reprise à chaud : • mise à 1 du bit système SY1, • mise à 0 des bits de sorties, des bits internes non sauvegardés et des mots de registres IW/OW, • initialisation des blocs textes. Reprise de l’exécution du programme : • après une coupure dans le programme utilisateur, l’exécution du programme reprend à partir de l’élément où a eu lieu la coupure secteur, sans mise à jour des sorties à la fin de ce cycle (voir illustration ci-contre). • après une coupure en dehors du programme utilisateur, l’exécution reprend en début de cycle avec mise à jour des sorties, après mise à 0 de SY1. 7/4 7 Coupure et reprise secteur A Evolution des sorties Pendant une coupure secteur, l’état des sorties dépend de l’état dans lequel l’utilisateur aura forcé le bit système SY8. SY8 = 0 Maintien des sorties pendant l’autonomie de l’alimentation, SY8 = 1 Mise à l’état 0 des sorties à partir de l’arrêt du processeur. Traitement de la reprise à chaud Si l’utilisateur désire un traitement particulier vis-à-vis de l’application en cas de reprise à chaud, il doit alors écrire en début de programme, sur test de SY1 à l’état 1, le programme correspondant (voir chapitre 2 - intercalaire D - traitement des modes de marche et d'arrêt). • Cas des TSX 17-20/TSX 27 Bien que le contexte soit cohérent sur reprise à chaud, il y a lieu de s’assurer (vis à vis de la sécurité de l’application), que le processeur n’a pas pris en compte l’état d’entrées erronées à la disparition du secteur. Ceci du fait que le processeur continue pendant la réserve d’énergie l’acquisition des entrées alors que l’alimentation de celles-ci a disparu (voir manuel de mise en oeuvre TSX 17). Sur certains types de TSX 17-20 (voir manuel de mise en oeuvre), ainsi que sur le TSX 27, toute reprise à chaud (SY1=1) doit entraîner une reprise à froid et le maintien des sorties à 0 (SY9=1). " SY1 1 L SYØ S SY9 Si SY01 (reprise à chaud) alors mettre : • SYØ à 1 pour effectuer une reprise à froid, • SY9 à 1 pour maintien des sorties à 0. Les bits SYØ et SY9 sont remis à 0 par le système à la fin du cycle suivant. • Cas du TSX 47 avec circuit de surveillance en service Aucun risque d’acquisition d’état d’entrées erronées. L’utilisateur doit tenir compte uniquement du traitement particulier vis à vis de l’application. • Cas du TSX 47 avec circuit de surveillance hors service voir cas des TSX 17-20/27. 7/5 A 7.2-2 Comportement de l’automate sur reprise à froid : SY0=1 Synoptique Mise à 0 de SY0 Acquisition des entrées Exécution du programme TOP L1 L2 L3 L5 Si SY0 = 1 Traitement éventuel de la reprise à froid Coupure secteur • Arrêt du processeur • Sauvegarde du contexte application Retour secteur OUI NON Ln Mise à jour de sorties Auto-tests de la configuration (500ms) Mise à 1 de SY0 Initialisation des données et du système Initialisation des données et du système Ce qui correspond à : • remise à zéro dans la mémoire bits des bits I/O, Bi, • initialisation des bits et mots système, • mise à l’état 1 du bit système SY21 pour initialisation du GRAFCET lors de l’exécution du traitement séquentiel, • mise à 0 des valeurs courantes des blocs fonctions, • mise à 0 des piles de registres, • mise à zéro de l’espace données mots (Wi, Xi,V, I/OW, COMi,j , etc), • perte des valeurs de présélection des blocs temporisateurs, monostables et compteurs, etc, acquise en mode REGLAGE, • annulation des forçages de bits et des blocages d’étapes, • initialisation des blocs textes et des programmateurs cycliques. Les mots constants et les paramètres de l’horodateur (sur TSX 17-20 uniquement), ne sont pas modifiés. Sur reprise à froid, l'automate repart toujours en RUN si la mémoire contient un programme exécutable. 7/6 Coupure et reprise secteur 7 A Traitement de la reprise à froid Si l’utilisateur désire un traitement particulier vis-à-vis de l’application en cas de reprise à froid, il doit alors écrire en début de programme, sur test de SY0 à l’état 1, le programme correspondant (voir chapitre 2 - intercalaire D - traitement des modes de marche et d'arrêt). Lors d’un démarrage à froid, le système positionne SY0 à 1, intialise les données, puis démarre en début de cycle (gestion système). Le bit SY0 est remis à 0 lors de la gestion système du cycle suivant. Evolution des sorties Quelque soit l’état du bit système SY8, les sorties sont initialisées à l’état 0 et seront positionnées lors de la mise à jour de celles-ci. 7/7 A 7.3 Comportement sur reprise secteur en structure bitâche Le principe de fonctionnement des coupures et reprises secteur est alors affecté aux deux tâches (tâche maître et tâche rapide), de façon homogène. Lors d’une reprise secteur (à chaud ou à froid), la tâche rapide demeure désactivée durant le tour de reprise et le premier tour de cycle complet. En effet, elle ne peut être exécutée que lorsque SY0 et SY1 sont à 0. La tâche rapide ne pourra être lancée qu’à partir du tour de cycle suivant. Elle sera alors exécutée dès l’appel de son top d’horloge ou de l’apparition d’un événement. 7.3-1 Comportement sur reprise à froid Il est identique à celui décrit au sous chapitre 7.2-2. La tâche maître est la seule tâche relancée. 7.3-2 Comportement sur reprise à chaud après coupure en tâche maître Le comportement de l’automate est identique à celui décrit au sous chapitre 7.2-1 si la coupure secteur survient lors de l’exécution de la tâche maître. 7.3-3 Comportement sur reprise à chaud après coupure en tâche rapide Reprise de l’exécution du programme : le comportement lors de la reprise à chaud est homogène avec celui décrit au sous-chapitre 7.2-1. • Interruption dans la tâche maître durant l’exécution du programme utilisateur : - Coupure en tâche rapide durant l’exécution de son programme : la reprise s’effectue là où a eu lieu la coupure sans mise à jour des sorties, puis retour en tâche maître sans mise à jour des sorties (voir illustration ci-contre). - Coupure en tâche rapide en dehors du programme utilisateur : retour en tâche maître et exécution de la suite du programme, sans mise à jour des sorties. • Interruption dans la tâche maître en dehors du programme utilisateur : - Coupure en tâche rapide durant l’exécution de son programme : la reprise s’effectue là où a eu lieu la coupure sans mise à jour des sorties, puis retour en tâche maître, en début de cycle. - Coupure en tâche rapide en dehors du programme utilisateur : retour en début de cycle de la tâche maître. 7/8 Coupure et reprise secteur 7 A Synoptique Tâche Rapide Tâche Maître Acquisition des entrées Acquisition des entrées Exécution du programme TOP Exécution du programme TOP L1 L2 Si SY1 = 1 Traitement éventuel de la reprise à chaud L3 L5 Coupure secteur OUI • Arrêt du processeur • Sauvegarde du contexte application Retour secteur NON L3 L5 TB ou EV OUI Auto-tests de la configuration (150ms) Ln NON Ln Mise à 1 de SY1 Mise à jour des sorties Mise à 0 de SY1 Mise à jour de sorties Lors d’une reprise secteur (à chaud ou à froid), la tâche rapide demeure désactivée durant le tour de reprise et le premier tour de cycle complet pendant lequel SY0 ou SY1 est à 1. 7/9 A 7.4 Programmation de la reprise secteur Lors de la reprise secteur, l’utilisateur peut souhaiter deux comportements de son automatisme : • un démarrage automatique de l’application, comme s’il n’y avait pas eu de coupure, • imposer une intervention humaine pour vérifier que tous les éléments de l’automatisme sont en ordre pour démarrer (solution recommandée par les normes de sécurité). Les automates TSX 17-20/27/47 permettent l’une ou l’autre des solutions : • reprise automatique : l’utilisateur doit veiller à la bonne charge de ses batteries ou piles. • intervention humaine : rajouter dans le programme utilisateur les tests et actions suivantes (voir schéma ci-dessous). La mise à 1 de SY0 ou SY1 interrompt la scrutation du programme, force les sorties à 0 et attend une validation de la reprise par un personnel de surveillance. Reprise secteur avec intervention humaine " R E P R I S E F / C SY1 B1Ø S SY9 1 B1Ø L 999 J SYØ Programme " R E D EMA RR AGE B1Ø IØ,1 9 9 9 L B1Ø R Dès la mise à 1 de l’un des deux bits système, le programme met le bit B10 à 1 pour mémoriser cette information, positionne SY9 à 1, puis effectue un saut vers le dernier réseau du programme: entrée I0,1 (départ cycle) qui provoque la mise à 0 de B10. SY0 et SY1 étant remis à 0 par le système et le B10 étant à 0, le saut n’est plus effectué et le programme est donc exécuté entièrement. Nota : I0,1 peut être un contact du contacteur KA destiné à l’asservissement de l’alimentation des sorties (voir manuels de mise en oeuvre). 7/10 X Le langage à contacts PL7-2 Intercalaire B Chapitre 1 2 3 4 Présentation du langage à contacts PL7-2 1.1 Principe 1/1 1.2 Le langage à contacts : traitement monotâche et bitâche 1/3 Les éléments du langage à contacts PL7-2 2/1 2.1 Les éléments graphiques de base 2/2 2.2 Objets bits adressables 2/4 2.3 Objets mots adressables 2/4 2.4 Les blocs fonction 2/4 2.5 Le bloc comparaison 2/7 2.6 Les blocs opération 2/7 1/2 Réseau de contacts 3/1 3.1 Structure d’un réseau de contacts 3/2 3.2 Règles d’exécution d’un réseau de contacts 3/9 Blocs fonction 4/1 4.1 Bloc fonction : Temporisateur 4/2 4.2 Bloc fonction : Monostable 5 Page 4/8 4.3 Bloc fonction : Compteur/Décompteur 4/11 4.4 Bloc fonction : Compteur/Temporisateur rapide (TSX 17-20) 4/14 4.5 Bloc fonction : Registre 4/18 4.6 Bloc fonction : Programmateur cyclique 4/21 4.7 Bloc fonction : Comparateur 4/24 Bloc opération 5.1 Bloc opération "calcul et transfert" 5/1 5.2 Opérations sur chaînes de bits 5/3 5.3 Opérations sur chaînes de mots 5/7 5/2 1 B X B Le langage à contacts PL7-2 Chapitre 6 7 2 Intercalaire B Page Blocs fonction texte 6/2 6.1 Présentation 6/2 6.2 Desciption de l’échange 6/2 6.3 Caractéristiques 6/6 6.4 Fonctionnement 6/8 Bloc fonction horodateur (TSX 17-20) 7/1 7.1 Présentation 7/2 7.2 Programmateur temporel 7/2 7.3 Consignateur temporel 7/6 7.4 Mesure de durée 7/8 7.5 Exemple de mise à l’heure de l’horodateur 7/9 X Présentation du langage à contacts PL7-2 1 Présentation du langage à contacts PL7-2 Chapitre 1 Sous-chapitre Page 1.1 Principe 1/2 1.2 Le langage à contacts : traitement monotâche et bitâche 1/3 1.2-1 Traitement monotâche 1.2-2 Traitement bitâche Ce chapitre se termine à la page 1/3 1/3 1/4 1/1 B 1.1 Principe Un programme écrit en langage à contacts se compose d’une suite de réseaux exécutés séquentiellement par l’automate. Dessiné entre deux barres de potentiel, un réseau est un ensemble d’éléments graphiques représentant : B • • • • les entrées/sorties de l’automate (boutons-poussoirs, détecteurs, relais, voyants...), des fonctions d’automatismes (temporisateurs, compteurs...), des opérations arithmétiques et logiques et des opérations de transfert, les variables internes de l’automate (bits, mots,etc). Ces éléments graphiques sont reliés entre eux par des connexions horizontales et verticales, définissant ainsi des "réseaux de contacts". Chaque réseau ainsi constitué comporte au plus 4 lignes et 10 colonnes et s’organise en 2 zones : • la zone test, dans laquelle figurent les conditions nécessaires à une action, • la zone action, qui sanctionne le résultat consécutif à un enchaînement de test. Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST OBSERVATIONS " S C I AGE I1,Ø B5 3 0 L COMP :0 8 COMP :3 R CØ E OØ,2 COMP 0 : COM1Ø,2 <> COM1Ø,3 PRE:1000 E TØ D P C TB:1 R U mn D OPERATE : 1 OPERATE 1 : CØ,V+W2 → W1Ø OPERATE : 2 OPERATE 2 : COM1Ø,2 XOR COM14,3 → COM1Ø,3 COMP 3 : W5Ø > = W6Ø Des formulaires de programmation "schéma à contacts" sont prévus pour la représentation des réseaux. Ils sont conformes à la structure des réseaux, pour la programmation en langage PL7–2 : un réseau à la fois peut être visualisé sur l’écran du terminal. 1/2 Présentation du langage à contacts PL7-2 1 Exemple de présentation sur écran terminal, FTX 417/507 ou compatible PC B 1.2 Le langage à contacts : traitement monotâche et bitâche 1.2-1 Traitement monotâche Programme Tâche Maître La tâche maître est exécutée périodiquement de façon cyclique. Elle comprend un programme constitué d’une suite de réseaux de contacts (maximum 999). 1/3 1.2-2 Traitement bitâche En traitement bitâche, le système gère deux programmes distincts : B • un programme dans la tâche maître (voir 1.2-1), • un programme dans la tâche rapide, constitué aussi d’une suite de réseau de contacts. Le nombre de réseaux doit être réduit (< 20), afin de garantir un temps de cycle de la tâche rapide < 2 ms. Programme Tâche Maître 1/4 Programme Tâche Rapide X Les éléments du langage à contacts PL7-2 2 Les éléments du langage à contact PL7-2 Chapitre 2 Sous-chapitre Page 2.1 Les éléments graphiques de base 2/2 2.2 Les objets bits adressables 2/4 2.3 Les objets mots adressables 2/4 2.4 Les blocs fonctions 2/4 2.4-1 Blocs fonctions d’automatisme 2.4-2 Bloc fonction de communication 2/5 2/6 2.5 Le bloc Comparaison 2/7 2.6 Les blocs opérations 2/7 2.6-1 2.6.2 2.6-3 2.6-4 2.6.5 2.6-6 2.6-7 Transfert Décalage Transcodage Opérations logiques Opérations arithmétiques Opérations sur chaînes de bits Opérations sur tableaux de mots Ce chapitre se termine à la page 2/7 2/7 2/8 2/8 2/9 2/9 2/10 2/10 2/1 B 2.1 Les éléments graphiques de base Désignation B Eléments de test Eléments de liaison Eléments d’action Graphe Fonctions • Contact à fermeture (direct) Contact passant quand l’objet bit qui le pilote est à l’état 1. • Contact à ouverture (indirect) Contact passant quand l’objet bit qui le pilote est à l’état 0. • Connexion horizontale Permet de relier en série les éléments graphiques de test et d’action entre les deux barres de potentiel. • Connexion verticale Permet de relier en parallèle les éléments éléments graphiques de test et d’action. • Bobine directe L’objet bit associé prend la valeur du résultat logique de la zone test. • Bobine inverse L’objet bit associé prend la valeur inverse du résultat logique de la zone test. • Bobine d’enclenchement S • Bobine de déclenchement R • Bobine saut à un autre réseau (JUMP) maximum 42 J L’objet bit associé est mis à 1 et garde cet état, lorsque le résultat de la zone test est à 1. Il est remis à 0 par la bobine de déclenchement. L’objet bit associé est mis à 0 et garde cet état, lorsque le résultat de la zone test est à 1. Il est remis à 1 par la bobine de d’enclenchement. Permet un branchement à un réseau étiqueté, amont ou aval. Les sauts ne sont effectifs qu’au sein d’une même entité de programmation (programme principal, traitement préliminaire...) L’exécution d’un saut provoque : • l’arrêt de la scrutation du réseau en cours, • l’exécution du réseau étiqueté demandé, • la non scrutation de la partie du programme située entre l’action de saut et le réseau désigné. L’instruction de saut n’est pas permise en tâche rapide. 2/2 Les éléments du langage à contacts PL7-2 Désignation Eléments d'action (suite) Graphe • Bobines sauvegardées * * S* 2 Fonctions Bobines sauvegardées en cas de coupure secteur. Les états des objets bits associés sont sauvegardés durant le premier tour de cycle. R* Nota : les bobines non sauvegardées sont maintenues à 0 pendant le premier tour de cycle de reprise. 2/3 B 2.2 Les objets bits adressables Le langage à contacts permet de manipuler les objets bits : B • contenus dans la mémoire bits : - bits d’entrées/sorties, - bits internes, - bits associés aux étapes GRAFCET, - bits système. • extraits de l’espace mémoire de données : - bits d’état des modules, - bits extraits de mots communs, - bits extraits de mots, - bits associés aux blocs fonctions. • extraits de l’espace mémoire "constantes" : - bits extraits de mots constants. Ces bits peuvent, selon le cas, être lus ou écrits par l’utilisateur. L’adressage et la liste des objets bits sont définis dans "Généralités" intercalaire A, chapitre 2. 2.3 Les objets mots adressables Le langage à contacts accède aux objets mots lors de l’utilisation de blocs fonctions d’automatismes ou de blocs opérations. Ces mots, selon leur nature, peuvent être lus et/ou écrits. L’adressage et la liste des objets mots sont définis dans "Généralités" intercalaire A, chapitre 2. 2.4 Les blocs fonctions Chacun des blocs fonctions représentés ci-après utilise : • des entrées et des sorties permettant de le relier à des éléments graphiques dans un réseau, • des paramètres de configuration, accessibles ou non par le programme utilisateur, • des paramètres courants (objets bits de sortie, mot de valeur courante, mot d’entrée), lus ou écrits par l’utilisateur ( voir "Généralités" intercalaire A, chapitre 2). 2/4 Les éléments du langage à contacts PL7-2 2 2.4-1 Blocs fonctions d’automatisme Désignation (Nb) Graphe Temporisateur E TSX 17-20 (32) TSX 27/47 (16) C TB:1mn Ti Fonctions D R T,P:9999 MODIF:Y Monostable Mi S TSX 17-20 (8) TSX 27/47 (8) R TB:1mn E C Ti,D Ti,R Ti,P Ti,V entrée "armement" entrée "contrôle" bit de sortie temporisation écoulée bit de sortie temporisation en cours mot valeur de présélection mot valeur courante S Mi,R Mi,P Mi,V entrée sur front "départ" bit de sortie monostable en cours mot valeur de présélection mot valeur courante R P U D Ci,E entrée "remise à zéro" entrée "présélection" entrée sur front "comptage" entrée sur front "décomptage" bit de sortie "débordement décomptage" bit de sortie "présélection atteinte" bit de sortie "débordement comptage" mot valeur de présélection mot valeur courante M,P:9999 MODIF:Y Compteur/ décompteur R TSX 17-20 (31) TSX 27/47 (16) P Ci E D C,P:9999 U MODIF:Y F Ci,D Ci,F D Ci,P Ci,V Registre LIFO/FIFO TSX 17-20 (4) TSX 27/47 (4) Ri R I LIFO LEN:16 F E O Programmateur cyclique TSX 17-20 (8) TSX 27/47 (8) Di R U TB Di,S Di,V F R I O Ri,F Ri,E Ri,I Ri,O L entrée "remise à zéro" entrée sur front "stockage" entrée sur front "déstockage" bit de sortie "registre plein" bit de sortie "registre vide" mot d’entrée du registre mot de sortie du registre nombre de mots du registre (999 max) R entrée "Remise A Zéro" U entrée sur front "Avance de pas" Di,F bit de sortie "dernier pas en cours" Di,S mot "numéro du pas actif" Di,V mot "temps enveloppe" Di,Wj mot 16 bits d’ordres 2/5 B Bloc fonction d'automatisme (suite) Désignation (Nb) B Compteur/ Temporisateur rapide Graphe R FC P TSX 17-20 (1) Fonctions F entrée "remise à zéro" entrée validation "présélection" entrée validation "lecture à la volée" C entrée validation comptage FC,E bit de sortie "Remise A Zéro externe" FC,D bit de sortie "présélection atteinte" FC,F bit de sortie "comptage en cours" Ci,P mot valeur de présélection Ci,V mot valeur courante < E E D C,P:9999 V C HORODATEUR E TSX 17-20 (illimité) H WEEK / YEAR = DEBUT : FIN : > R P V < = > entrée "Validation fonctionnement" (ENABLE) bit de sortie "Avant" bit de sortie "Pendant" bit de sortie "Après" 2.4-2 Bloc fonction de communication Désignation (Nb) Bloc fonction texte TSX 17-20 (8) TSX 27/47 (8) 2/6 Graphe R TXTI Fonctions D TER S T,C:0 T,V:0 O W10 12 T,L:0 I T,S:? E R S entrée validation arrêt échange entrée sur front "lancement échange" O entrée sur état "émission" I entrée sur état "réception" TXTi,D bit de sortie "transfert terminé et reçu" TXTi,E bit de sortie "erreur de transfert" TXTi,L mot "longueur du message" (en octets) TXTi,S mot status : compte-rendu de l’échange TXTi,M mot adresse coupleur et numéro de voie TXTi,C mot code requête TXTi,R mot compte rendu échange TXTi,T num. bloc TXT en communi. TXTi,A adresse station réseau Les éléments du langage à contacts PL7-2 2.5 2 Le bloc comparaison Désignation (Nb) Graphe (*) Bloc comparaison (illimité) COMPAR OP1 OP OP2 Fonctions OP : opérateur : <, <=, =, >, >=, < > OP1 : objet mot pouvant être lu OP2 : objet mot pouvant être lu ou valeur immédiate (*) sur terminal de programmation TSX T407, le bloc comparaison est illustré comme suit : ç<∆ 2.6 Les blocs opérations Ce sous chapitre a pour but de rappeler les différentes possibilités d’écriture des expressions simples dans les blocs opérations. Ces blocs peuvent être utilisés en quantité non limitée, celle-ci dépend de la taille de la mémoire "utilisateur". Les blocs opérations énumérés ci-dessous sont décrits et détaillés dans le chapitre 4 : "Blocs fonctions". 2.6-1 Transfert Désignation (Nb) Blocopération (illimité) Graphe (*) OPERATE OP2 → Fonctions OP2 : objet mot pouvant être lu ou valeur immédiate → : objet mot de rangement 2.6-2 Décalage Désignation (Nb) Blocopération (illimité) Graphe (*) OPERATE OP OP2 → Fonctions OP : type de décalage : SLC n : décalage circulaire à gauche de n bits SRC n: décalage circulaire à droite de n bits OP2 : objet mot de 16 bits → : objet mot de rangement du résultat (*) sur terminal de programmation TSX T407, le bloc opération est illustré comme suit : çOPER.∆ 2/7 B 2.6-3 Transcodage Désignation (Nb) B Blocopération (illimité) Graphe OPERATE OP OP2 → Fonctions OP BIN BCD OP2 → : : : : : type de conversion : conversion BCD vers BINaire conversion BINaire vers BCD objet mot de 16 bits objet mot de rangement du résultat ATB : conversion ASCII vers BINaire OP2 : tableau de 3 mots → : objet mot de rangement du résultat BTA : conversion BINaire vers ASCII OP2 : objet mot → : tableau de 3 mots pouvant être écrits 2.6-4 Opérations logiques Désignation (Nb) Blocopération (illimité) Graphe OPERATE OP1 OP OP2 → Fonctions OP1 OP AND OR XOR CPL OP2 → 2/8 : : : : : : : objet mot pouvant être lu code opération logique "ET" logique "OU" inclusif "OU" exclusif complément logique objet mot pouvant être lu ou valeur immédiate : objet mot de rangement du résultat Les éléments du langage à contacts PL7-2 2 2.6-5 Opérations arithmétiques Désignation (Nb) Blocopération (illimité) Graphe OPERATE OP1 OP OP2 → Fonctions OP1 OP + * / REM : : : : : : : objet mot pouvant être lu code opération arithmét. addition soustraction multiplication division (quotient) division (reste) pour TSX 17–20 uniquement OP2 dans ce cas doit être différent de 0 OP2 : objet mot pouvant être lu ou valeur immédiate → : objet mot de rangement du résultat 2.6-6 Opérations sur chaînes de bits Bit i, Bit j : les objets bits manipulés peuvent être des bits internes, des bits extraits de mots, des bits d’entrées-/sorties. [n] : constante entière positive, dépend de la configuration et des objets manipulés. Définit la longueur de la chaîne de bits. Désignation (Nb) Graphe Fonctions Transfert chaîne de bits → chaîne de bits BlocOP2 : Bi[n] OPERATE opération OP2 → (illimité) → : Bj[n] Transfert chaîne de bits → mot BlocOPERATE opération OP2 → (illimité) OP2 : Bi[n] → : objet mot de rangement pouvant être écrit Transfert chaîne de bits ou mot → chaîne de bits BlocOP2 : objet mot pouvant être lu ou OPERATE opération valeur immédiate OP2 → (illimité) → : Bj[n] 2/9 B 2.6-7 Opérations sur tableaux de mots Un tableau de mots, ou chaîne de mots, est une suite continue de mots de même type. B MOT i [MOT j] : MOT i : mot début de la table MOT j : mot index (voir Généralités, intercalaire A, chapitre 2.5: indexation des objets). Désignation (Nb) Transfert indexé Blocopération (illimité) 2/10 Graphe OPERATE OP2 → Fonctions OP2 : MOT i [MOT j] → : MOT l [MOT k] X Réseau de contacts Réseau de contacts Chapitre 3 Sous-chapitre 3.1 Structure d’un réseau de contacts 3.1-1 3.1-2 3.1-3 3.1-4 3.1-5 Généralités Etiquette ou label Commentaire Réseau de contacts Réseau de contacts avec blocs fonctions 3.2 Règles d’exécution d’un réseau de contact 3.2-1 3.2-2 3.2-3 3.2-4 3.2-5 Principe de scrutation d’un programme Principe d’exécution d’un réseau Saut à un autre réseau (JUMP) Exécution d’un réseau comportant des blocs fonctions Scrutation d’un réseau comportant des blocs opérations Ce chapitre se termine à la page 3 Page 3/2 3/2 3/3 3/4 3/5 3/7 3/9 3/9 3/9 3/10 3/11 3/12 3/12 3/1 B 3.1 Structure d’un réseau de contacts 3.1-1 Généralités B Un réseau s’inscrit entre deux barres de potentiel et est composé d’un ensemble d’éléments graphiques reliés entre eux par des liaisons horizontales ou verticales. Un réseau est limité à la dimension d’un écran du terminal, soit 4 lignes et 10 colonnes maximum réparties en deux zones : la zone test et la zone action. Les éléments graphiques énumérés précédemment peuvent s’implanter soit dans la zone action, soit dans la zone test sur l’ensemble des lignes et colonnes d’un réseau. 1 2 N° 3 4 Colonnes 5 6 7 8 9 10 ZONE ACTION ZONE TEST " OBSERVATIONS Lignes 1 2 3 4 " Barres de Potentiel Chaque réseau doit être repéré par une étiquette, et peut être précédé par un commentaire. Nota : Un formulaire de programmation schéma à contacts comporte 4 réseaux. 3/2 Réseau de contacts 3 3.1-2 Etiquette (ou label) L’étiquette ou label permet de repérer un réseau dans une entité de programme : • programme langage à contacts en tâche maître : label L, • programme langage à contacts en tâche rapide : label F, • programme langage GRAFCET en tâche maître : - schémas à contacts en traitement préliminaire : label p, - schémas à contacts en traitement postérieur: label P. Cette étiquette comprend au maximum 3 caractères numériques (1 à 999) et se positionne à la partie supérieure gauche devant la barre de potentiel. Un réseau sous étiquette ne pourra être validé lors de la saisie sur terminal. Un repère d’étiquette ne peut être affecté qu’à un seul réseau au sein d’une même entité de programme. L'étiquette permet entre autre le branchement après un saut de programme. " L245 J 1 0 L " B3 IØ,6 2 4 5 L W13,Ø T4,D 3/3 B 3.1-3 Commentaire Le commentaire est intégré au réseau et comprend 15 caractères alphanumériques au maximum. Il facilite l’interprétation du réseau auquel il est affecté, mais n’est pas obligatoire. B Formulaire programmation schéma à contacts PL7-2 N° ZONE TEST ZONE ACTION OBSERVATIONS " Zone commentaires non mémorisés dans Commentaire mémorisé dans mémoire automate l'automate (sur formulaire uniquement) En cas de suppression d’un réseau, le commentaire qui lui est associé est également supprimé. Les commentaires sont mémorisés dans l’automate et sont accessibles à tout moment à l’utilisateur. 3/4 3 Réseau de contacts 3.1-4 Réseau de contacts Sa représentation est proche de celle d’un schéma électrique à relais. Les éléments graphiques simples " O2,1 IØ,4 WØ,1 de test et d’action occupent chacun une ligne et une colonne au B16 X12 T3,D sein d’un réseau. B3 I1,2 Toute ligne de contact commen- L CØ,E cée à gauche doit conduire à droite. I1,1 B13 O1,Ø O1,2 OØ,4 R B1Ø B1Ø S Les tests sont toujours situés sur les colonnes 1 à 9. Les actions sont toujours situées sur la colonne 10. Le sens de circulation du courant est le suivant : • pour les liaisons horizontales, de la gauche vers la droite, • pour les liaisons verticales, dans les deux sens. • Zone test On y trouve : • les contacts, auxquels peuvent être affectés tous les objets bits définis précédemment, • les blocs fonctions, • les blocs comparaison. • Zone action On y trouve : • les bobines directes, inverses, d’enclenchement et de déclenchement, qui peuvent être affectées de tous les objets bits pouvant être écrits par l’utilisateur. • les blocs opérations. " B16 T3,D I1,4 I1,5 L CØ,E I1,6 " B9 S MØ R I1,7 C2D W8,4 L " B52 W8,B L W8,A / B8 OØ,5 S WØ+1 → WØ 3/5 B Réseau simple Pilotage d’une bobine conditionnée par un contact. X53 Utilisation de 9 contacts maximum en série sur une ligne. B1 IØ,3 O1,2 B15 T2,D W1,F B5 CØ,D SY5 O1,Ø / " O1,9 B Possibilité de tester 4 contacts maximum en parallèle sur une colonne, de placer 4 bobines en parallèle. " B5 O1,2 IØ,9 B25 I1,5 W8,Ø CØ,E B1Ø R Réseau utilisant plusieurs chaînes de contacts Un réseau peut être divisé en plusieurs chaînes de contacts indépendantes pilotant des bobines indépendantes 4 lignes indépendantes de 9 contacts. " I1,3 W6,F B8 CØ,E SY4 W3,6 R X1Ø Réseaux utilisant les différents principes énoncés. Les éléments à l’état logique 1 sont cerclés. Le courant peut passer des éléments A et C vers la bobine F, il ne peut pas passer de l’élément C vers les éléments D et E. La bobine G n’est pas activée. 3/6 L12 J SY21 S W3,6 " A C B D E F G Réseau de contacts 3 3.1-5 Réseau de contacts avec blocs fonctions et opérations • Les blocs fonctions se positionnent dans la zone test et s’insèrent dans un réseau de contacts. Il existe trois dimensions de graphisme pour représenter l’ensemble des autres blocs fonctions du langage PL7-2 : C4 B Compteur/Décompteur 2 colonnes Compteur/Temporisateur rapide 4 lignes Bloc texte Temporisateur Monostable Registre Programmateur cyclique Horodateur 2 colonnes 3 lignes TØ Comparateur 2 colonnes 1 ligne C4,V<>Ø • Les blocs opérations se positionnent toujours en zone action. Ils utilisent 1 ligne et 3 colonnes et sont toujours directement reliés à la barre de potentiel droite. COMPAR OPERATE WØ+W9 → W22 3/7 • Les blocs fonctions sont "cascadables" Comme pour les éléments graphiques du type contacts, il est possible de réaliser des combinaisons de blocs fonctions. Mise en série de blocs fonctions : B " IØ,6 2 5 L M1 S R O1,3 T12 E D C • Les blocs fonctions et blocs opérations sont mixables B28 S I1,5 COMPAR T2,V>Ø IØ,2 OPERATE COMPAR 3450 → T2,P W1<2 . Autres possibilités des blocs fonctions Quel que soit le type de bloc fonction utilisé, il doit obligatoirement être relié en entrée à la barre de potentiel gauche, en direct ou à travers d’autres éléments graphiques. - sorties "en l’air" : il n’est pas nécessaire de relier à d’autres éléments graphiques les sorties des blocs fonctions. " T2 D T2,D - sorties testables : les sorties des blocs fonctions sont accessibles à l’utilisateur sous forme d’objet bit. 3/8 O1,5 " T2,D C5,E O1,8 Réseau de contacts 3.2 3 Règles d’exécution d’un réseau de contacts 3.2-1 Principe de scrutation d’un programme Le programme est exécuté réseau par réseau de manière séquentielle selon l’ordre d’écriture des réseaux en mémoire. La lecture se fait de haut en bas sauf lors de l’exécution d’un saut. Premier réseau TOP L 1 B L 25 L 40 3.2-2 Principe d’exécution d’un réseau L’exécution d’un réseau s’effectue séquence par séquence, du haut vers le bas, de gauche à droite. Une séquence est délimitée par une connexion verticale ou un bloc fonction. Dernier réseau BOTTOM BOT Exemple : L’ordre d’exécution des séquences de ce réseau est le suivant : (1-2), (3-4), (5-6), (7-8), (9-10), 11, (12-13), (14-15), 16, 17, 18, 19 et 20. 1 2 3 4 5 6 7 1 2 9 1Ø 14 15 17 3 4 5 6 7 8 8 9 10 19 11 12 13 Colonnes Lignes A B 16 18 2Ø C D Les bobines sont exécutées après le traitement de la zone test. En respectant cet ordre d’exécution, le système met à jour : • l’état logique de chaque contact en fonction de l’état de l’entrée associée, acquise en début de cycle, • l’état logique des objets bits associés aux bobines afin de mettre à jour les sorties en fin de cycle. 3/9 Conséquences : lorsqu’un objet est utilisé plusieurs fois dans un même réseau, son état logique est, selon le cas, celui acquis pendant le cycle en cours ou celui acquis dans le cycle précédent. B Dans l’exemple suivant B89 est utilisé deux fois dans le même réseau. La valeur du contact B89 n’est pas celle donnée par la bobine 89 dans le cycle en cours mais celle acquise au cycle précédent. " B89 B89 Pour que la bobine et le contact aient la même valeur dans un cycle, il faut décomposer le réseau précédent en deux réseaux distincts. " B89 " B89 Remarque : une bobine ne doit jamais être écrite plusieurs fois dans un programme. En effet, son état à la fin d’un cycle sera défini par la dernière écriture. 3.2-3 Saut à un autre réseau (JUMP) Lors du traitement de la zone action, 2 cas sont possibles : • la bobine "J" est activée, le saut au réseau concerné est immédiat, la bobine B 10 n’est pas activée, • la bobine "J" n’est pas activée : la bobine B10 est traitée normalement. " L29 J B1Ø Pour qu’une bobine soit traitée indépendamment de l’état d’une bobine "J" située dans le même réseau, il convient donc de la placer sur une ligne située au dessus de la bobine "J". 3/10 3 Réseau de contacts 3.2-4 Exécution d’un réseau comportant des blocs fonctions Les fonctions associées à ce type de bloc sont exécutées au moment de la scrutation du coin supérieur gauche du bloc concerné. " 1 3 B6 5 4 TØ 2 B Le bloc fonction délimite aussi une séquence (voir page 3/9). Conséquence : lorsque le bloc fonction et l’un des objets bits qui lui sont associés sont utilisés dans le même réseau, cet objet peut prendre la valeur donnée par le bloc dans le cycle précédent ou dans le cycle en cours : L’état de l’objet bit T0,R est celui acquis dans le cycle précédent. " TØ D R < TØ,R L’état de l’objet bit T0,R est celui acquis dans le cycle en cours. " TØ D < R TØ,R 3/11 3.2-5 Scrutation d’un réseau comportant des blocs opérations Le bloc opération, situé en zone action, suit les mêmes règles que les blocs fonctions. B Exemple : Ce réseau s’exécute dans l’ordre présenté ci-contre. " 1 2 3 4 10 5 11 6 8 7 9 OPERATE 12 L’opération associée au bloc n’est lancée qu’au moment de la scrutation de la partie gauche du bloc. Tout bloc opération est donc exécuté : • avant toutes les bobines (colonne 10), • avant les contacts des colonnes 9 lorsque ceux-ci sont situés au-dessus du bloc, • avant les contacts des colonnes 8 et 9 lorsque ceux-ci sont situés endessous du bloc. Rappel : En structure bitâche, dans tous les cas, le système finit la scrutation du réseau en cours avant de démarrer l'exécution de la tâche rapide. L’apparition d’un "appel horloge" ou d’un événement prioritaire sur l’exécution de la tâche en cours n’a donc pas d’incidence sur les principes énoncés dans les paragraphes précédents. 3/12 X Blocs fonctions Blocs fonctions Chapitre 4 Sous chapitre 4.1 Bloc fonction : Temporisateur 4.1-1 4.1-2 4.1-3 4.1-4 4 Présentation Caractéristiques Fonctionnememt Cas types Page 4/3 4/3 4/3 4/4 4/5 4.2 Bloc fonction : Monostable 4/9 4.2-1 Présentation 4.2-2 Caractéristiques 4.2-3 Fonctionnement 4/9 4/9 4/10 4.3 Bloc fonction : Compteur 4/12 4.3-1 Présentation 4.3-2 Caractéristiques 4.3-3 Fonctionnement 4/12 4/12 4/13 4.4 Bloc fonction : Compteur/Temporisateur rapide (TSX 17-20) 4.4-1 4.4-2 4.4-3 4.4-4 Présentation Caractéristiques Fonctionnement Utisation de FC en compteur/temporisateur MULTIPRESELECTION 4.4-5 Raccordements du compteur rapide 4.5 Bloc fonction : Registre 4.5-1 Présentation 4.5-2 Caractéristiques 4.5-3 Fonctionnement 4/15 4/15 4/15 4/16 4/17 4/18 4/20 4/20 4/20 4/21 4/1 B B Sous chapitre 4.6 Bloc fonction : Programmateur cyclique 4.6-1 Présentation 4.6-2 Caractéristiques 4.6-3 Fonctionnement 4.7 Bloc fonction : comparateur Page 4/23 4/23 4/23 4/24 4/26 4.7-1 Présentation 4.7-2 Caractéristiques 4/26 4/26 Ce chapitre se termine à la page 4/26 4/2 Blocs fonctions 4.1 4 Bloc fonction : Temporisateur 4.1-1 Présentation Le bloc fonction temporisateur permet de commander avec retard des actions spécifiques. E La valeur de ce retard est programmable et peut être modifiable ou non en mode REGLAGE. C TB:1mn Ti D B R T,P:9999 MODIF:Y Bloc temporisateur 4.1-2 Caractéristiques Numéro temporisateur Nombre R (Running) TSX 17-20 32 (T0 à T31) Base de temps TB 1mn, 1s, 100ms, 10ms (1mn par défaut) Plus la base de temps est faible, plus la précision du temporisateur sera grande. Valeur courante Ti,V Mot qui décroît de Ti,P vers 0 sur écoulement du temporisateur. Peut être lu, testé, mais non écrit (1). Valeur de présélection Ti,P 0<Ti,P<9999. Mot qui peut être lu, testé, et écrit par programme. Est mis à la valeur 9999 par défaut Modification MODIF YES/NO YES : possibilité de modification de la valeur de présélection Ti,P en mode REGLAGE. NO : pas d’accès en mode réglage. Entrée "Armement" E (Enable) Sur état 0 réinitialise le temporisateur Ti,V = Ti,P Entrée "Contrôle" C (Control) Sur état 0 gèle la valeur courante Ti,V. Doit être à 1 durant l’écoulement. Sortie "Temporisateur écoulé" D (Done) Le bit associé Ti,D = 1, si temporisation écoulée Ti,V = 0 Sortie "Temporisateur en cours" R(Running) Le bit associé Ti,R = 1 si temporisateur Ti,P>Ti,V>0 et si entrée C est à l’état 1 Dimension dans un réseau de contacts (1) TSX 27/47 16 (T0 à T15) 2 colonnes de contacts sur 3 lignes Ti,V peut être modifiée par terminal en mode REGLAGE. 4/3 4.1-3 Fonctionnement Le temporisateur évolue lorsque ses 2 entrées (E et C) sont à l’état 1. Il se comporte comme un décompteur. B • la valeur courante Ti,V décroît de la présélection Ti,P vers 0, d’une unité à chaque impulsion de la base de temps TB. • le bit de sortie Ti,R (Temporisateur en cours) associé à la sortie R est alors à l’état 1, le bit de sortie Ti,D (Temporisateur écoulé) associé à la sortie D est à l’état 0. • lorsque la valeur courante Ti,V = 0, Ti,D passe à l’état 1 et Ti,R repasse à l’état 0. E C Ti,P Ti,V Ti,D Ti,R E 0 0 1 1 C 0 1 0 1 Ti,P Ti,V Ti,V = Ti,P Ti,V = Ti,P Ti,V gelée Ti,V décroît de Ti,P → 0 Ti,D 0 0 0 1 si Tempo écoulée Ti,R 0 0 0 1 si Tempo en cours Cas spécifiques • Incidence d’une reprise "à froid" : (SY0=1) provoque le chargement de la valeur de présélection (définie en mode CONFIGURATION) dans la valeur courante et la mise à 0 de la sortie Ti,D, la valeur de présélection éventuellement modifiée par le terminal (mode REGLAGE ou DONNEES) étant perdue, • Incidence d’une "reprise à chaud" : (SY1) n’a pas d’incidence sur la valeur courante du temporisateur, • Incidence d’un passage en stop : le passage en stop de l’automate ne fige pas la valeur courante. Il en va de même lorsque la tâche en cours est désactivée (structure bitâche) ou lors de l’exécution d’un point d’arrêt, • Incidence d’un saut de programme : le fait de ne pas scruter le réseau où est programmé le bloc temporisateur ne fige pas la valeur courante Ti,V qui continue à décroître vers 0, De même les bits Ti,D et Ti,R associés aux sorties D et R du bloc temporisateur conservent leur fonctionnement normal et peuvent être ainsi testés dans un autre réseau. Par contre les bobines directement "raccordées" aux sorties du bloc ne seront pas activées puisque non scrutées par l’automate, • Test des bits Ti,D et Ti,R : ces bits peuvent changer d’état en cours de cycle (voir gestion des bases de temps intercalaire A, page 4/6). 4/4 4 Blocs fonctions 4.1-4 Cas types Selon sa programmation, le bloc fonction "Temporisateur" peut réaliser les fonctions suivantes : • Temporisateur Travail à Fermeture B I0,01 K=I0,1=E,C K T0,R PRESET PRESET L(O0,01) TØ,D=O0,1 k " T EMPO IØ,1 TRAV F E RM OØ,1 E TØ D C 30s après le passage à 1 de IØ,1, la sortie OØ,1 passe à 1. PRE:3Ø TB:1s Elle passe à Ø dès que IØ,1 passe à Ø. • Temporisateur Travail à Ouverture K=I0,1=E,C I0,01 K T1,R PRESET L(O0,01) PRESET T1,D k O0,1 " T EMPO IØ,1 E T1 D C PRE:12Ø TB:1s TRAV OUV OØ,1 120s après que IØ,1 passe à 1, la sortie OØ,1 passe à Ø. Elle repasse à 1 dès que IØ,1 est à Ø 4/5 • Temporisateur Repos à Fermeture K=I0,1 I0,01 E,C K B T2,R PRESET L(O0,01) T2,D k O0,1 " T EMPO IØ,1 TRAV F E RM OØ,1 E T2 D C La sortie OØ,1 passe à Ø, 12Øs après que IØ,1 PRE:12Ø TB:1s soit à Ø. • Temporisateur Repos à Ouverture K=I0,1 I0,01 K E,C L(O0,01) T3,R PRESET k T3,D=O0,1 " T EMPO IØ,1 E T3 D C 4/6 REP . OUV OØ,1 La sortie OØ,1 passe à 1, 3Øs après que IØ,1 passe PRE:3Ø TB:1s à Ø. Blocs fonctions 4 • Temporisateur Travail à Fermeture : retard cumulé à l’enclenchement I0,2=E I0,3=C O1,5=T5,R D1 D2 B D3 O1,4=T5,D " T . R E T . CUM . E NC L . IØ,2 IØ,3 O1,4 E T5 D C PRE:3Ø TB:1mn Tempo O1,5 Retard R Cumulé à l'Enclenchement • Temporisateur Repos à Fermeture : retard cumulé au déclenchement I0,0 E I0,1 C T12,R D1 D2 D3 T12,D O0,1 " T . R E T . CUM . D E C L . IØ,Ø IØ,1 E T12 D C OØ,1 Tempo Retard PRE:4Ø TB:1Ømn Cumulé au Déclenchement 4/7 Exemple d’utilisation • Modification de présélection en fonction d’un événement extérieur : La connaissance des blocs opérations "comparaison" et "transfert" est nécessaire à la compréhension de cet exemple. B Si T2,D=1 et I1,9=1 alors ranger le contenu du mot interne W0 dans T2,P. Si T2,D=1 et I1,9=0 alors ranger le contenu du mot constant CW31 dans T2,P. Nota : la modification ne s’effectue que si le temporisateur n’est pas en cours T2,D=1 et T2,R=0. " MOD I F . P R E SE L E C . IØ,7 B12 T2 I1,9 T2,D I1,9 WØ → T2,P CW31 → T2,P • Surveillance de la valeur courante d’un temporisateur : Si T2,V>12s, alors mettre le bit interne B15 à l’état 1. " S UR V E I L . T 2 , V < 4/8 B15 S < : T2,V>12 Blocs fonctions 4.2 4 Bloc fonction : Monostable 4.2-1 Présentation Le bloc fonction monostable permet d’élaborer une impulsion de durée précise. Cette durée est progammable et peut être modifiable ou non en mode REGLAGE par les terminaux. S Mi R B TB:1mn T,P:9999 MODIF:Y Bloc monostable 4.2-2 Caractéristiques Numéro monostable Nombre Mi TSX 17-20 8 Base de temps TB 1mn, 1s, 100ms, 10ms (1mn par défaut) Valeur courante Mi,V Mot qui décroit de Mi,P vers 0 sur écoulement du monostable. Peut être lu, testé mais non écrit. Valeur de présélection Mi,P 0<Mi,P<9999, mot pouvant être lu, testé, écrit. Modification MODIF YES/NO YES : possibilité de modification de la valeur de préselection en mode REGLAGE NO : pas d’accès en mode réglage Entrée "départ" S(start) Sur front montant Mi,V=Mi,P puis Mi,V décroit vers 0. Sortie "monostable en cours" R(Running) Le bit associé Mi,R est à 1 si Mi, V>0 (écoulement du monostable). Mi,R=0 si Mi,V=0 Dimension dans un réseau de contacts TSX 27/47 8 2 colonnes de contacts sur 3 lignes. 4/9 4.2-3 Fonctionnement B Lors de l’apparition d’un état 1 (front montant) sur l’entrée S du mo- S ↑ nostable • la valeur courante Mi,V prend la Mi,V valeur de préselection Mi,P et Mi,R décroit vers 0 d’une unité à PRESET PRESET PRESET chaque impulsion de la base de temps TB. • Le bit de sortie Mi,R (running) associé à la sortie R passe à l’état 1 dès que la valeur courante Mi,V est différente de 0. • Lorsque la valeur courante Mi,V=0, le bit de sortie Mi,R repasse à l’état 0. Cas spécifiques • Incidence d’une reprise à froid : (SY0=1) provoque le chargement de la valeur de présélection (définie en programmation) dans la valeur courante Mi,V; la valeur de présélection éventuellement modifiée par le terminal (mode REGLAGE ou DONNEES) étant perdue. • Incidence d’une reprise à chaud : (SY1) n’a pas d’incidence sur la valeur courante Mi,V du monostable. • Incidence d’un passage en stop : le passage en STOP de l’automate ne fige pas la valeur courante. Il en va de même lorsque la tâche en cours est désactivée (structure bitâche) ou lors de l’éxécution d’un point d’arrêt. • Incidence d’un saut de programme : le fait de ne plus scruter le réseau où est programmé le bloc monostable ne fige pas la valeur courante Mi,V qui continue de décroître vers 0. De même le bit Mi,R associé à la sortie du bloc monostable conserve son fonctionnement normal et peut être ainsi testé dans un autre réseau; par contre les bobines directement "raccordées" à la sortie du bloc (Ex:O10,0) ne seront pas activées car non scrutées par l’automate. • Test du bit Mi,R : ce bit peut changer d’état en cours de cycle (voir gestion des bases de temps intercalaire A, page 4/6). 4/10 4 Blocs fonctions • Exemple d’utilisation : clignotant à période cyclique variable. La valeur de présélection de chaque monostable définit la durée de chaque impulsion. O10,0 5s 5s 2s 2s Dans l’exemple ci-dessous, la sortie O10,0 est mise à l’état 1 pendant 5s (M0,P) et remise à l’état 0 pendant 2s (M1,P) " M1,R O1Ø,Ø S MØ TB:1s M.P:5 O1Ø,Ø R S M1 R MOD:YES TB:1s M.P:2 MOD:YES MØ,R OØ1Ø,Ø 4/11 B 4.3 Bloc fonction : Compteur 4.3-1 Présentation B Le bloc fonction compteur permet d’effectuer le comptage ou le décomptage d’évènements, ces deux opérations pouvant être simultanées ou non. Ci R P E D C,P:9999 U MODIF:Y F D Bloc compteur 4.3-2 Caractéristiques Numéro de compteur Nombre Ci TSX 17-20 31 (C0 à C30) Valeur courante Ci,V Mot incrémenté ou décrémenté en fonction des entrées U et D. Peut être lu, testé mais non écrit. Valeur de préselection Ci,P 0<Ci,P<9999. Mot pouvant être lu, testé, écrit. Modification MODIF YES/NO YES: possibilité de modification de la valeur de présélection en mode REGLAGE. NO : pas d’accès en mode REGLAGE. Entrée remise à zéro R (Reset) Sur état 1 : Ci,V = 0. Entrée présélection P (Preset) Sur état 1: Ci,V = Ci, P. Entrée comptage U (Up) Incrémente Ci,V sur front montant. Entrée décomptage D (Down) Décrémente Ci,V sur front montant. Sortie débordement E (Empty) Le bit associé Ci,E=1, lorsque décomptage Ci,V passe de 0 à 9999. Sortie préselection atteinte D (Done) Le bit associé Ci,D=1, lorsque Ci,V=Ci,P. Sortie débordement F (Full) Le bit associé Ci,F =1 lorsque Ci,V passe de 9999 à 0. Dimension à l’écran 4/12 TSX 27/47 16 (C0 à C15) 2 colonnes de contacts sur 4 lignes Blocs fonctions 4 4.3-3 Fonctionnement. • Présélection : si l’entrée "présélection" est à l’état 1 et l’entrée "remise à zéro" à l’état 0, la valeur courante Ci,V prend la valeur Ci,P et la sortie Ci,D prend la valeur 1. • Remise à zéro : dès la mise à l’état 1 de cette entrée, la valeur courante Ci,V est forçée à 0, les sorties Ci,E, Ci,D et Ci,F sont à 0. L’entrée "remise à zéro" est prioritaire. • Comptage : à l’apparition d’un front montant sur l’entrée comptage U, la valeur courante est incrémentée d’une unité. lorsque cette valeur est égale à la valeur de présélection Ci,P, le bit de sortie Ci,D "présélection atteinte" associé à la sortie D passe à l’état 1. le bit de sortie Ci,F (débordement comptage) passe à l’état 1 pendant un tour de programme lorsque Ci,V passe de 0 à 9999. • Décomptage : à l’apparition d’un front montant sur l’entrée "décomptage" D, la valeur courante Ci,V est décrémentée d’une unité. Le bit de sortie Ci,E (débordement décomptage) passe à l’état 1 pendant un tour de programme lorsque Ci,V passe de 0 à 9999. • Comptage/Décomptage : pour utiliser simultanément les fonctions comptage et décomptage, il est nécessaire de commander les deux entrées correspondantes U et D; ces deux entrées étant scrutées succesivement. Si les deux entrées sont à 1 simultanément, la valeur courante reste inchangée. Cas spécifiques. • Incidence d’une "reprise à froid" : (SY0=1) provoque la mise à zéro de la valeur courante Ci,V. La valeur de présélection éventuellement modifiée par le terminal (mode REGLAGE ou DONNEES) étant perdue. Les bits de sorties Ci,E, Ci,D et Ci,F sont à 0. • Incidence d’une reprise à chaud (SY1) ou d’un passage en STOP : n’a pas d’incidence sur la valeur courante du compteur (Ci,V). 4/13 B Exemples d’utilisation. B • Comptage d’un nombre de pièces > 9999. Deux blocs fonctions compteur montés en cascade sont nécessaires. Chaque impulsion sur l’entrée I0,3 provoque l’incrémentation du compteur C0 et ce jusqu’à la valeur de présélection final du compteur C1 (bit C1,D=1). La remise à zéro des compteurs est provoquée par l’entrée I0,0. Formulaire programmation schéma à contacts IØ,Ø IØ,3 C1,D FAST SR MAIN R C1 E R CØ E P PRE 5000 D P PRE 1000 D U MOD:Y F U MOD:Y F D D 4/14 IT MAST PRE AUX POST ASY CHART XM O1Ø,Ø 4 Blocs fonctions 4.4 Bloc fonction : Compteur/Temporisateur rapide (TSX 17-20 uniquement) 4.4-1 Présentation Les automates TSX 17-20 possèdent un compteur rapide FC, qui selon sa configuration logicielle peut être utilisé en compteur rapide ou en temporisateur rapide. La valeur de présélection est définie en mode PROGRAMMATION (PRESET statique) et peut être modifiée par programme utilisateur(1) ou avec le terminal en mode REGLAGE (PRESET dynamique). R FC E B P TB:0,555ms D C,P:9999 V MODIF:Y F C 4.4-2 Caractéristiques Compteur rapide (configuration par défaut) Sa fréquence maximum est de 2 KHz, avec un cycle de comptage de 10 000 points. Le Compteur FC reçoit les signaux nécessaires à son fonctionnement par un connecteur spécialisé, qui comprend : • 2 entrées physiques de comptage : 5 ou 24 V, • 2 entrées physiques de remise à zéro du compteur : 5 ou 24 V. Temporisateur rapide Une base de temps interne de 0,555 ms remplace les entrées physiques de comptage, qui deviennent inopérantes. Un front montant sur l’entrée physique de remise à zéro provoque la mise à 0 de la valeur courante FC,V. Compteur/temporisateur FC (C31 en mode REGLAGE) Base de temps TB 0,555 ms (si FC configuré en tempo) Valeur courante capturée FC,V 0 < FC,V < FC,P valeur courante capturée par lecture à la volée de la valeur courante interne si l'entrée V est à l'état logique 1. Peut être lu, testé, mais non écrit. Valeur de présélection FC,P 0<FC,P<9999. Mot qui peut être lu, testé, et écrit par programme. Est à la valeur 9999 par défaut. Modification MODIF YES/NO YES : possibilité de modification de la valeur de présélection FC,P de C31 en mode REGLAGE. NO : pas d’accès en mode réglage. Entrée "Remise à Zéro" R (RESET) Sur état 1 positionne FC,V à 0 Entrée prioritaire. (1) utilisation de FC en compteur/temporisateur multiprésélection. 4/15 Caractéristiques (suite) B Entrée PRESELECTION (1) P (PRESET) Sur état 1 chargement du PRESET dynamique (registre d’attente). Entrée "Lecture à la volée" V Sur état 1, lecture à la volée de la valeur courante FC,V. Entrée "Validation comptage" C Sur état 1, valide le comptage (évolution de FC,V). Sortie "Image entrées physiques RAZ" E (External RELOAD) Le bit associé FC,E = 1 si une RAZ physique est provoquée. Sortie "Présélection atteinte" D (DONE) Sortie "Présélection non atteinte F Le bit associé FC,D = 1 si FC,V=FC,P Ce bit reste à 1 jusqu’à la mise à 0 de SY15. Le bit associé FC,F = 1 si 0 < FC,V < FC,P. Dimension 2 colonnes de contacts sur 4 lignes dans un réseau de contacts 4.4-3 Fonctionnement Diagramme Entrée physique de comptage Entrée C FC,P Valeur courante interne de FC,V comptage Lecture à la volée de FC,V Entrée V Sortie D Sortie F Bit système SY15 Entrée R Entrée physique RAZ Sortie 4/16 E FC,P 4 Blocs fonctions Bit système SY15 Lorsque FC atteint la valeur de présélection active (FC,P = FC,V) : • Le bit SY15 passe à 1. • La tâche rapide est lancée (si SY19=0). Le bit SY15 doit être remis à 0 par programme, dans la tâche rapide. • Le compteur est remis à 0. • La valeur présente dans le registre d’attente est recopiée dans la présélection active. Architecture FC,V valeur courante définie en mémoire Comptage en cours si C=1 et R=0 Entrées physiques de comptage 5 ou 24V, ou Base de temps 0,555ms Lecture à la volée de la valeur du compteur physique, définie dans le mot FC,V. Compteur Physique Remise à Zéro du compteur si : • SY15=1, • l'entrée R de FC est à "1" • l'entrée physique de remise à zéro (5 ou 24V) est activée. Comparateur Présélection Active Chargement de la valeur du registre d'attente dans la présélection active dès que : • SY15=1, • l'entrée R de FC est à "1", • l'entrée physique de remise à zéro (5 ou 24V) est activée. Activation de la tâche rapide et positionnement de SY15 lorsque la valeur du compteur physique est égale à la présélection active. Registre d'attente Chargement dans le registre d'attente de la valeur présélection FC,P (définie par configuration, par programme, ou en mode réglage) dès que : • l'entrée P est à "1" et l'entrée R est à "0", • une initialisation est effectuée en mode mise au point : DBG, ou action sur SY0. FC,P valeur de présélection définie en mémoire 4/17 B La mise à zéro de FC par une entrée physique "RAZ" ou par l’entrée R, provoque la mise à zéro de la valeur courante interne du compteur physique et de la valeur courante capturée FC,V (si l’entrée V=1). La valeur de présélection dynamique est conservée. B Le bloc fonction FC décrit précédemment, ne réalise pas la fonction de comptage. Il effectue uniquement le contrìle des éléments physiques (présélection active, registre d’attente, etc). La fonction comptage est assurée par le compteur physique, dont le fonctionnement est indépendant du cycle de l’automate. 4.4-4 Utilisation de FC en compteur/temporisateur MULTIPRESELECTION Rôle de l’entrée P : La mise à 1 de cette entrée permet le chargement par le programme d’une valeur de présélection (PRESET dynamique). Le PRESET statique étant la valeur définie par configuration, en mode PROGRAMMATION. Pour charger une nouvelle valeur de présélection par programme, il suffit de transférer (en utilisant un bloc opération) le contenu d’un mot Wi ou CWi (0 < i < 127) dans le mot FC,P. Cette opération doit être programmée dans le réseau de contacts précédant celui contenant le bloc fonction FC. La modification de la valeur de présélection par transfert d’un mot dans FC,P (P2, voir figure ci-dessous), n’est prise en compte qu’une fois que le compteur a atteint la valeur de présélection initialement définie (P1). Cette fonctionnalité du compteur/temporisateur rapide permet la multiprésélection. Le retour au PRESET statique se fera par chargement de la valeur équivalente ou action sur SY0. Valeur de présélection P1 atteinte Valeur de présélection P2 atteinte Chargement de la valeur de présélection P2 dans le registre d'attente 4/18 SY15=1 Chargement de la valeur du registre d'attente : P2 dans la présélection active. SY15=1 Blocs fonctions 4 4-4.5 Raccordement du compteur rapide Le connecteur qui transmet les signaux de comptages et de remise à zéro au compteur physique est situé sur la face avant de l’automate de base TSX 17-20, en haut à gauche. Ce connecteur, raccordé à un câble (référence: TSX CCB 020), possède 2 entrées isolées, sans point commun : • Entrée physique de comptage : 0V = broche 1 (fil Bleu) 5V = broche 7 (fil Noir) 24V = broche 6 (fil Gris) • Entrée physique de remise à zéro : 0V = broche 5 (fil Jaune) 5V = broche 8 (fil Orange) 24V = broche 9 (fil Blanc) 4/19 B 4.5 Bloc fonction : Registre 4.5-1 Présentation B Un registre est un ensemble de mots de 16 bits permettant de stocker des informations de deux manières différentes : • file d’attente (premier entré, premier sorti) ou pile FIFO, • pile (dernier entré, premier sorti) ou pile LIFO. R I Ri LIFO LEN:16 F E O Bloc registre 4.5-2 Caractéristiques Numéro Registre Ri TSX 17-20 4 (R0 à R3) TSX 27/47 4 (R0 à R3) Type FIFO LIFO File d'attente (First In, First Out). Pile (Last In, First Oust) Longueur L Nombre de mots 16 bits 1 ≤ L ≤ 255. (16 par défaut) Mot d’entrée Ri,I Mot d’accès au registre. Peut être lu, testé, écrit. Mot de sortie Ri,O Mot de sortie du registre. Peut être lu, testé, écrit Entrée "Stockage" I (In) Sur front montant provoque le stockage du contenu du mot Ri,I dans le registre. Entrée "Déstockage" O (Out) Sur front montant provoque le rangement d’un mot d’information dans le mot Ri,O. Entrée "Remise à zéro" R (Reset) Sur état 1 initialise le registre. Sortie "Plein" F (Full) Le bit Ri,F associé indique que le registre est plein. Peut être testé. Sortie "Vide" E (Empty) Le bit Ri,E associé indique que le registre est vide. Peut être testé. Dimensions à l’écran 4/20 2 colonnes de contacts sur 3 lignes Blocs fonctions 4 4.5-3 Fonctionnement FIFO (First In, First Out) La première information entrée est la première Exemple : Stockage du contenu de Ri,I dans un à être sortie. Lorsqu’une demande d’entrée est prise en registre vide. compte (front montant sur l’entrée I), le conte(a) nu du mot d’entrée Ri,I préalablement chargé est stocké au plus haut de la file (fig a et b). Ri,I 50 Lorsque la file est pleine (sortie F=1), le stockage est impossible. 50 Lorsqu’une demande de sortie est prise en Stockage du contenu de Ri,I au plus compte (front montant sur entrée O) stockage haut de la file. du contenu de Ri,I le mot d’information le plus 20 20 bas de la file est rangé dans le mot de sortie Ri,I 80 Ri,O et le contenu du registre est décalé d’un 90 (b) pas vers le bas (fig. c). 50 Lorsque le registre est vide (sortie E=1) le déstockage est impossible; le mot de sortie Déstockage de la première information Ri,O n’évolue plus et conserve sa valeur. et rangement de cette dernière dans La file peut être réinitialisée à tout moment Ri,O (état 1 sur l’entrée R). 20 80 90 (c) Ri,O 50 LIFO (Last In, First Out) La dernière information entrée est la première Exemple : Stockage du contenu de Ri,I au plus à être sortie. Lorsqu’une demande d’entrée est prise en haut de la pile. compte (front montant sur l’entrée I), le conte20 20 nu du mot d’entrée Ri,I préalablement chargé Ri,I 80 est stocké au plus haut de la pile (fig. d). Lorsque la pile est pleine (sortie F à 1), le stockage est impossible. (d) 90 50 4/21 B Lorsqu’une demande de sortie est prise en Déstockage du mot d'information le compte (front montant sur l’entrée O), le mot plus haut de la pile d’information le plus haut (dernière informa20 tion entrée) est rangé dans le mot Ri,O (fig e Ri,O 80 et f). B Lorsque le registre est vide (sortie E= 1), le déstockage est impossible, le mot de sortie Ri,O n’évolue plus et conserve sa dernière valeur. La pile peut être réinitialisée à tout moment (état 1 sur entrée R). L’élément pointé est alors le plus haut dans la pile. 90 50 (e) Ri,O 20 (f) 90 50 Cas spécifiques • Incidence d’une reprise "à froid" : (SY0=1) provoque l’initialisation du contenu du registre. Le bit de sortie Ri,E associé à la sortie E est mis à 1. • Incidence d’une reprise "à chaud" ou "immédiate" : (SY1 ou SY2) n’a pas d’incidence sur le contenu du registre ainsi que sur l’état des bits de sorties. Exemple La connaissance des blocs opérations "calcul et transfert" est nécessaire pour la compréhension de cet exemple. Le programme ci-dessous montre le chargement de R2,I par le mot W34 et la demande d’entrée B1 dans le registre R2 si l’événement B0 est présent et si le registre R2 n’est pas plein (B10=0). La demande de sortie est faite par le bit B2 et le rangement de R2,O dans W20 s’effectue si le registre n’est pas vide (B11=0). " B1Ø 1 R F B1 B11 I E R2 B2 O B2 B11 R2,Ø → W2Ø OPER. " BØ B1Ø 2 4/22 W34 → R2,I OPER. B1 Blocs fonctions 4.6 4 Programmateur cyclique 4.6-1 Présentation D’un principe de fonctionnement similaire au programmateur à cames, le programmateur cyclique change de pas en fonction d’événements extérieurs. A chaque pas, le point haut d’une came donne un ordre exploité par l’automatisme. Dans le cas du programmateur cyclique, ces points hauts seront symbolisés par un état 1 au niveau de chaque pas. R Di F B U Bloc programmateur 4.6-2 Caractéristiques Numéro Nombre Di TSX 17-20 8 (D0 à D7) TSX 27/47 8 (D0 à D7) Nombre de pas L 1 < L < 16 (16 par défaut) Base de temps TB 1mn, 1s, 100ms, 10ms. (1mn par défaut) Temps enveloppe ou durée du pas en cours Di,V 0<Di,V<9999. Mot remis à zéro à chaque changement de pas. Peut être lu, testé mais non écrit. Numéro du pas en cours Di,S 0<Di,S<15. Mot pouvant être lu et testé. Ne peut être écrit qu’à partir d’une valeur immédiate. Entrée "retour au pas 0" R (RESET) Sur état 1 initialise le programmateur au pas 0. Entrée "avance" U (UP) Sur front montant provoque l’avance d’un pas du programmateur et la mise à jour des bits d’ordres. Sortie F (FULL) Indique que le dernier pas défini est en cours. Le bit Di,F associé peut être testé (Di,F=1 si Di,S=L-1). Etat d’un pas Di,Wj Mot de 16 bits définissant les états du pas j du programmateur i. Peut être lu, testé mais non écrit. 4/23 4.6-3 Fonctionnement B Le programmateur cyclique se compose: • d’une matrice de données constantes (les cames) organisée en 16 pas de 0 à 15 et de 16 informations binaires (état du pas) rangées en colonnes repérées de 0 à F. • d’une liste de bits d’ordres (1 par colonne) correspondants à des sorties Ox,y ou à des bits internes Bi. Lors du pas en cours les bits d’ordres prennent les états binaires définis pour ce pas. dans l’exemple ci-dessous le pas 5 étant en cours, les bits d’ordre O3,1; O4,3 et O1,5 sont mis à l’état 1; les bits d’ordres O4,5; B5 et O3,0 sont mis à l’état 0. Le tableau ci-dessous résume les caractéristiques principales du programmateur cyclique. Bits d'ordre : Configuration de 0 à 15 bits E D Colonne F Bits d'ordres O4,5 O3,1 O4,3 0 0 1 Pas 0 1 0 1 Pas 1 2 B5 N° de pas en cours Pas 5 0 1 1 0 1 0 Di,W5 Nombre de pas du programmateur Pas 13 Pas 14 Pas 15 0 0 1 1 1 1 0 1 1 0 0 1 0 1 0 1 0 0 = Di,W14 = Di,W15 1 1 1 0 O1,5 O3,8 1 0 = Di,W0 0 0 = Di,W1 Le numéro du pas en cours est incrémenté à chaque front montant sur l’entrée U. Ce numéro peut être modifié par programme. Diagramme de fonctionnement Entrée U: Entrée R: N° pas Di,S : 0 Sortie Di,F : Temps enveloppe Di,V : 4/24 1 2 3 L-1 0 1 2 0 1 4 Blocs fonctions Cas spécifiques • Incidence d’une "reprise à froid" : (SY0=1) provoque la réinitialisation du programmateur au pas 0. • Incidence d’une "reprise à chaud" : (SY1) provoque la mise à jour des bits d’ordres. • Incidence d’un saut de programme : le fait de ne pas scruter le réseau où est programmé le programmateur ne provoque pas de remise à 0 des bits d’ordres. • Mise à jour des bits d’ordres: ne s’effectue que lors d’un changement de pas ou lors d’une reprise à chaud. Exemple d’utilisation • Commande d’avance sur évènement extérieur et temporisation, saut de pas. La connaissance des blocs opérations "comparaison", "calcul et transfert" est nécessaire. Le programme ci-dessous traduit le grafcet en schéma à contacts. Si le pas 0 du programmateur est en cours (C0) et si le temps enveloppe du pas est > à 10s (C1) passage au pas 1 (B10). Si le pas 1 est en cours (C2) et si I1,4 = 1: passage au pas 2 (B10) Si le pas 2 est en cours (C3), si I1,5 = 1 et I1,6 = 0: passage au pas 0 (la longueur du programmateur D5 (L) ayant été défini à 3 pas). Si le pas 2 est en cours (C3), I1,5 = 0 et I1,6 = 1 retour au pas 1. 0 Pas 0 T>10s 1 Pas 1• I1,4 I1,5 • I1,6 2 Pas 2 I1,5 • I1,6 " B11 B7 D5 1 B1Ø 0 " Ø 1 1 B1Ø Avance 1 = 2 Ø D5,S=Ø > I1,4 1 D5,V>10s = 3 2 D5,5=1 I1,5 I1,6 3 DS,S=2 = I1,5 I1,6 "1" → D5(S) Retour Pas 1 4/25 B 4.7 Bloc fonction : comparateur 4.7-1 Présentation Le bloc "comparaison" permet d’effectuer les tests suivants : B • • • • • • supérieur inférieur égal supérieur ou égal inférieur ou égal différent > < = >= <= <> COMPAR 4.7-2 Caractéristiques Nombre TSX 17-20 TSX 27/47 Non limités et progammables en zone test. Objet à comparer OP1 Tout objet mot (opérande 1) Type de comparaison SIGNE >, < , >=, <=, <>. Valeur de comparaison OP2 Tout objet mot ou valeur immédiate (opérande 2) Dimension à l’écran 2 colonnes de contacts sur 1 ligne. Exemple L’exemple ci-dessous montre la comparaison entre deux mots " 04,7 Si W1Ø<W12 alors 04,7=1 Ø 7 1 4/26 < X Blocs opérations Blocs opérations Chapitre 5 Sous chapitre 5.1 Blocs opérations "calcul et transfert" 5.1-1 Présentation 5.1-2 Caractéristiques 5.2 Opérations sur chaines de bits 5.2-1 5.2-2 5.2-3 5.2-4 Transfert d’une chaine de bits dans une autre Transfert d’une chaine de bits dans un mot Transfert d’un mot dans une chaine de bits Transfert d’une valeur immédiate dans une chaine de bits 5.3 Opérations sur mots 5.3-1 5.3-2 5.3-3 5.3-4 5.3-5 5.3-6 Transfert Décalage circulaire Comparaison Opérations arithmétiques Opérations logiques Transcodage Ce chapitre se termine à la page 5 Page 5/2 5/2 5/2 5/3 5/3 5/4 5/5 5/6 5/7 5/7 5/10 5/12 5/13 5/17 5/20 5/24 5/1 B 5.1 Bloc opération "calcul et transfert" 5.1-1 Présentation B Le bloc opération "calcul et transfert" permet d’effectuer les opérations suivantes : • opérations arithmétiques +, -, *, / et REM sur TSX 17-20 • opérations logiques AND, OR, XOR, • complément CPL • transcodage de mot BIN, BCD, OPERATE ATB, BTA • décalage circulaire des bits SRC, SLC • transfert 5.1-2 Caractéristiques Nombre TSX 17-20 TSX 27/47 Non limités et programmables en zone action. Premier opérande OP1 Tout objet mot Opération OP Code opération (+, -, *, /, ...) Deuxième opérande OP2 Tout objet mot ou valeur immédiate. Résultat → Wi, Ti,P, OWxy,i,.... Dimension à l’écran les 3 dernières colonnes d'une ligne. Utilisation des paramètres Opérations arithmétiques et opérations logiques Complément, transcodage de mot et décalage circulaire OP1 OP OP2 → X X X X X X X X X Transfert Exemple L’exemple ci-dessous montre le ET logique de deux mot. " I1,4 1 4 5/2 OPER Si I1,4=1 alors faire le ET logique de W1Ø et W11 et ranger le résultat dans W12. 5 Blocs opérations 5.2 Opérations sur chaînes de bits 5.2-1 Transfert d’une chaîne de bits dans une autre. Cette opération consiste à recopier l’état de n bits d’une chaîne origine dans les n bits d’une chaîne destination. Structure Le transfert est réalisé par un bloc opération constitué de la manière suivante : OP2 (chaîne de bits origine) → Destination (Chaîne de bits destination) Opérandes Objet Chaîne de bits Bit interne Bi Exemple origine destination X X Bit d’entrée Ix,i X X Bit de sortie Ox,i X X (1) B14[16] (1) I3,0[7] O5,0[3] voir règles d’utilisation Exemple Recopie du contenu des bits I0,0 à I0,5 dans les bits internes B20 à B25 : OP2 → I0,0[6] B20[6] Règles d’utilisation • Longueur des chaînes de bits: le nombre de bits à transférer et le nombre de bits destinataires doivent être égaux et inférieur ou égal à 16. • L’utilisation de chaîne de bits d’entrée comme destination est possible mais doit être employée avec précaution (modification de l’état réel des entrées jusqu’à la prochaine acquisition des entrées par l’automate). • Transfert d'une chaîne de bits d'entrée/sorties à tout emplacement de module 4, 8 ou 16 bits : Le transfert d'une chaîne de bits dont l'adresse de début majorée de sa longueur dépasse 16, provoque un chevauchement sur l'emplacement suivant. Exemple : I1,6[16] adresse les bits I1,6 à I1,F (quelque soit le module 1) et les bits I ou O 2,0 à I ou O 2,5. Pour des raisons de sécurité, il est conseillé de vérifier qu'il n'y a pas chevauchement entre 2 modules. 5/3 B 5.2-2 Transfert d’une chaîne de bits dans un mot Cette opération consiste à recopier l’état de n bits d’une chaîne dans un mot. La longueur de la chaîne de bits ne devra pas être supérieur à 16. B Structure Le transfert est réalisé par un bloc opération constitué de la manière suivante : → OP2 (chaîne de bits origine) Destination (mot de destination) Opérandes Objet Chaîne de bits origine Bit interne Bi X Bit d’E/S I/Oxy,i X Mot de destination Exemple B14[16] I3,5[12] Mot interne Wi X W12 Exemple Transfert du contenu des bits d’entrée I1,4 à I1,7 dans le mot W7 : OP2 → I1,4[4] W7 7 6 5 4 1 0 1 1 I1,. F E D C B A 9 8 7 6 5 4 3 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 W7 Règles d’utilisation • Les bits de la chaîne sont transférés dans le mot en commençant par la droite (premier bit de la chaîne dans bit 0 du mot). • Les bits d’un mot non concernés par le transfert (longueur < à 16) sont positionnés à l’état 0. 5/4 5 Blocs opérations 5.2-3 Transfert d’un mot dans une chaîne de bits Cette opération consiste à recopier bit à bit les 16 bits d’un mot dans une chaîne de bits. Lorsque la chaîne de bits est de longueur inférieure à 16, seul les bits de poids faible sont recopiés. Structure Le transfert est réalisé par un bloc opération constitué de la manière suivante : → OP2 (mot origine) Destination (chaîne de bits) Opérande Objet Mot origine Chaîne de bits destination Exemple Bit interne Bi X B14[16] Bit d’entrée Ix,i X(1) I3,5[7] Bit de sortie Ox,i X O2,5[5] Mot interne Wi X W12 Mot constant CWi X CW10 (1) voir règles d'utilisation. Exemple Transfert des bits 0 à F du mot constant CW14 dans les bits internes B10 à B25 : OP2 → CW14 B10[16] Règles d’utilisation L’utilisation de bits d’entrées dans la chaîne de bits destination est possible mais doit être employée avec précautions (inhibition de l’état réel des entrées jusqu’à la prochaine acquisition des entrées par l’automate). Les bits du mot origine sont transférés à partir de la droite (bit 0 du mot dans le premier bit de la chaîne. Cas spécifiques Transfert d’un mot dans une chaîne de bits de sorties: ce type de transfert affecte une chaîne de bits de longueur 16. Dans le cas ou le module de sortie n’est pas un module 16 bits ou que le premier bit de la chaîne n’est pas le bit 0 du module, il y a débordement sur le module suivant. 5/5 B 5.2-4 Transfert d’une valeur immédiate dans une chaîne de bits Cette opération consiste à recopier bit à bit la représentation binaire sur 16 bits d’une valeur immédiate dans une chaîne de bits. B Structure Le transfert est réalisé par un bloc opération constitué de la manière suivante : OP2 (valeur immédiate) → Destination (chaîne de bits destination) Opérandes La chaîne de bits destination peut être constituée par des bits d’entrées/sorties. L’utilisation de bits d’entrées est possible mais doit être employée avec précaution (inhibition de l’état réel des entrées jusqu’à la prochaine acquisition des entrées par l’automate). La valeur immédiate est nécessairement comprise entre -32768 et +32767. Exemple Mise à l’état 1 des bits B30 à B37. OP2 → 5/6 H’00FF’ B30[8] 5 Blocs opérations 5.3 Opérations sur mots 5.3-1 Transfert Les opérations de transfert suivantes peuvent être réalisées : mot → mot mot → mot indexé mot indexé → mot mot indexé → mot indexé valeur immédiate → mot valeur immédiate → mot indexé table de mots → table de mots B Structure Le transfert est réalisé par un bloc opération constitué de la façon suivante : → OP2 (mot d’origine) Destination (mot de destination) Opérandes Objet Mot origine Mot constant CWi X Mot interne Wi X Mot commun COMi,j X Mot registre IW/OWxy,i Mot destination Exemple Exemple indexé CW3 CW3(W45) X W12 W12(W11) X COM3,2 X X OW7,5 Mot système SWi X X SW4 Mot extrait de blocs fonctions (ex.Ti,P) X X(1) T3,P Valeur immédiate X 3476 Temps d’activité d’étape Xi,V X X15,V (1) sauf valeur courante de bloc fonction. Exemples Transfert d’une valeur immédiate dans un mot. OP2 → 127 T2,P Transfert de la valeur immédiate 127 dans le mot T2,P (présélection du temporisateur T2). 5/7 Transfert d’un mot dans un mot Transfert du mot W31 dans le mot W40 OP2 → B W31 W40 Transfert d’un mot dans un mot indexé. Transfert du mot W12 dans le mot W50(W26) Le contenu du mot W26 utilisé comme index pouvant être modifié, le mot W12 peut être transféré dans différents mots à partir de W50. OP2 → W12 W50(W26) Transfert d’un mot indexé dans un mot. Transfert du mot indexé CW5(W11) dans le mot W34. Le contenu du mot W11 pouvant être modifié, différents mots à partir de CW5 peuvent être transférés dans W34. OP2 → CW5(W11) W34 Transfert d’un mot indexé dans un mot indexé. Transfert du mot CW30(W22) dans le mot W30(W22). OP2 → CW30(W22) W30(W22) Attention : Le mot utilisé comme index ne doit jamais être négatif. Le contenu de l’index ne doit jamais dépasser la valeur 127 diminuée de l’adresse du mot interne ou constant sauf sur TSX 17-20 si SY2 = 1. Ex. : W80(W127) W127 ne doit pas dépasser la valeur 127 - 80 = 47. W0 (W127) W127 ne doit pas dépasser la valeur 127 - 0 = 127. Transfert de tables. Cette opération permet l’accès à la totalité des 1024 mots internes et des 1024 mots constants. Une table de mots est un ensemble de mots de même type plaçés les uns à la suite des autres. Elle est caractérisée par : • le type de mots : mots internes W ou mots constants CW • l’adresse du premier mot • la longueur (nombre de mots de la table) : <= 128. Les 1024 mots constants CWi (configurables) et les 1024 mots internes sont structurés par pages de 128 mots. La table origine peut être constituée par des mots internes ou constants. La table destinataire est toujours constituée par des mots internes. 5/8 5 Blocs opérations Seul la page des mots internes 0 à 127 est accessible en lecture/écriture et constitue une page de travail. La lecture ou l’écriture des autres pages s’effectue en les transférant dans la page de travail. Chaque page étant une entité, une page ne peut pas chevaucher deux pages. Exemple : W200[100] cette table n’est pas prise en compte car il y a chevauchement entre la table W128 - W255 et la table W256 W383 0 128 256 384 512 640 768 896 - 127 255 383 511 639 767 895 1023 Transfert de 60 mots internes W512 à W571 dans le 60 mots internes W0 à W59. OP2 → W512[60] W0[60] Transfert des 128 mots constants CW256 à CW383 dans les 128 mots internes W0 à W127. OP2 → CW256[128] W0[128] Cas particuliers de transfert de table : Transfert de table dans laquelle la table origine est identique à la table destination. Dans ce cas, le transfert provoque un décalage global d'un octet de la table concernée. Exemple : W20 [3] → W20 [3] Valeur des octets avant transfert Valeur des octets après transfert W19 W19 W20 H'30' H'44' W21 H'12' H'FF' W20 H'FF' H'30' W21 H'AA' H'12' W22 H'44' H'00' Poids forts Poids faibles Transfert W22 H'00' H'AA' W23 W23 Poids forts Poids faibles 5/9 B 5.3-2 Décalage circulaire. L’opération de décalage consiste à déplacer les bits contenus dans un mot d’un certain nombre de positions vers la droite ou vers la gauche. B Le décalage circulaire peut être réalisé dans les deux sens à l’aide des deux instructions : • SLCi : décalage circulaire à gauche de i positions (Shift Left Circular). • SRCi : décalage circulaire à droite de i positions (Shift Right Circular). L’opérande à décaler étant nécessairement un mot de 16 bits, la variable i sera comprise entre 0 et 16 (1<= i <=15). Décalage circulaire à gauche : SLCi F 0 SY17 : valeur du dernier bit sorti à gauche et entré à droite. Décalage circulaire à droite : SRCi F 0 SY17 : valeur du dernier bit sorti à droite et entré à gauche. L’ensemble des bits est décalé de i positions. l’état du dernier bit sorti, donc du dernier bit entré est mémorisé par le bit système SY17. 5/10 5 Blocs opérations Structure Dans tous les cas une opération de décalage est caractérisée par : • son type : SLC, SRC • le nombre de positions de décalage i (1 <= i <=15) • l’opérande à décaler Le décalage est réalisé par un bloc opération constitué de la manière suivante : OP type de décalage SLCi ou SRCi 1 <= i <=15 OP2 mot à décaler → mot résultat Opérandes Objet Mot à décaler Mot constant CWi X Mot interne Wi X Mot résultat X Exemple CW3 CW3(W45) W12 W12(W11) Mot commun COMi,j X X COM3,2 Mot registre IW/OWxy,i X X OW7,5 Mot système SWi X X SW4 Valeur immédiate X 3476 Temps d’activité d'une étape Xi,V X X67,V Mot extrait de bloc fonction (Ex: Ti,P) X (1) X(1) Exemple indexé T3,P sauf valeur courante de bloc fonction Exemple • Décalage circulaire du mot W1 de 3 positions vers la gauche et rangement du résultat dans le mot W14. OP SLC3 OP2 W1 → W14 • Décalage circulaire du mot W1 de 4 positions vers la droite et rangement du résultat dans le mot W14 OP SRC4 OP2 W1 → W14 5/11 B 5.3-3 Comparaison B L’instruction de comparaison permet de comparer deux opérandes. Les différentes instructions de comparaison sont les suivantes : > : test si l’opérande 1 est supérieur à l’opérande 2 >= : test si l’opérande 1 est supérieur ou égal à l’opérande 2. < : test si l’opérande 1 est inférieur à l’opérande 2. <= : test si l’opérande 1 est inférieur ou égal à l’opérande 2. = : test si l’opérande 1 est égal à l’opérande 2. <> : test si l’opérande 1 est différent de l’opérande 2. Structure La comparaison est réalisée par un bloc comparaison qui est toujours situé en zone test. Sa sortie est à 1 lorsque la comparaison demandée est vraie. Ce bloc est constitué de la manière suivante OP1 opérande 1 TYPE DE COMPARAISON <, <=, >, >=, =, <> OP2 opérande 2 Opérandes Objet Opérande Exemple Exemple indexé OP1 OP2 Mot constant CWi X X CW3 CW3(W10) Mot interne Wi X X W10 W10(W11) Mot commun COMi,j X X COM3,5 Mot registre IW/OWxy,i X X OW7,5 Mot système SWi X X SW4 Valeur immédiate X X 5425 Temps d’activité d'une étape Xi,V X X X56,V Mot extrait de bloc fonction (Ex.Ti,P) X X T3,P Exemple Comparaison du mot W241 avec la valeur immédiate 100. La sortie du bloc est à 1 lorsque la comparaison est vraie (contenu du mot W241 supérieur à 100) OP1 OP OP2 5/12 W241 > 100 5 Blocs opérations 5.3-4 Opérations arithmétiques Les instructions associées permettent de réaliser une opération arithmétique entre deux opérandes. Ces instructions sont : + : réalise l’addition de deux opérandes, : réalise la soustraction de deux opérandes, * : réalise la multiplication de deux opérandes, / : réalise la division de deux opérandes, REM : réalise la division de deux opérandes et permet d’en exprimer le reste (uniquement sur TSX 17-20). Structure Une opération arithmétique est réalisé par un bloc opération constitué de la manière suivante : OP1 opérande 1 OP type d’opération +, -, *, /, REM OP2 opérande 2 → mot de rangement Opérandes Objet Opérandes OP1 OP2 Mot constant CWi X X Mot interne Wi X X Mot commun COMi,j X X Mot registre IW/OWxy,i X Mot système SWi Valeur immédiate Mot de rangement Exemple Exemple indexé CW3 CW3(W45) X W12 W12(W11) X COM3,2 X X OW7,5 X X X SW4 X X 6742 Temps d’activité d'une étape Xi,V X X X45,V Mot extrait de blocs fonctions (Ex.Ti,P) X X (1) X(1) T3,P sauf valeur courante de bloc fonction Exemple Addition du contenu de CW12 et de la valeur immédiate 1300. Le résultat de l’addition est rangé dans le mot de de présélection du compteur C5. OP1 OP OP2 → CW12 + 1300 C5,p 5/13 B Règles sur les priorités • l’addition et la soustraction ont la même priorité, • la multiplication, la division et le calcul du reste ont la même priorité et sont prioritaires sur l’addition et la soustraction. Valeurs limites des opérandes B Codes opération +, - Valeurs limites des opérandes (décimale) -32768 <= valeurs <= +32767 *, / 0 <= valeurs <= 255 (TSX 27/47) -32768 < valeurs < +32767 (TSX 17-20) REM -32768 <= valeurs <= +32767 (uniquement sur TSX 17-20) Règles d’utilisation • Addition : opérande 1 + opérande 2 Dépassement de capacité pendant l’opération : Dans le cas où le résultat dépasse la longueur du plus long des opérandes (-32768 à +32767), le bit SY18 (overflow) est mis à l’état 1. Le résultat est donc non significatif. La gestion du bit SY18 est à la charge du programme utilisateur. Exemple : W0 + W1 → W2 0 1 0 1 1 0 1 0 1 1 0 0 1 0 0 1 W0 23241 + 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 0 1 W1 21853 1 0 1 1 0 0 0 0 0 0 1 0 0 1 1 0 W2 -20442 SY18 Le résultat réel (45094) ne peut pas être exprimé dans un mot de 16 bits, le bit système SY18 est mis à l’état 1 et le résultat obtenu (-20442) est erroné. 5/14 5 Blocs opérations Dépassement de la capacité absolue du mot de résultat (arithmétique non signée) : Lors de certains calculs, il est parfois intéressant d’interpréter un opérande en arithmétique non signée (le bit F représente alors la valeur 32768). la valeur maximale pour un opérande étant de 65535. L’addition de 2 valeurs absolues (non signées) dont le résultat est supérieur à 65535 provoque un débordement. Ce débordement est signalé par la mise à 1 du bit système SY17 (carry) qui représente la valeur 65536. La gestion de SY17 est à la charge du programme utilisateur. Exemple : W0 + W1 → W2 Non signé signé 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 0 W0 65086 -450 + 1 1 1 1 1 1 1 1 1 0 0 1 1 0 1 0 1 W1 65333 -203 1 1 1 1 1 1 0 1 0 1 1 1 0 0 1 1 W2 SY17 Le bit SY17 est mis à l’état 1 et représente la valeur 65536. Le résultat en arithmétique non signée est donc égal à : 65536 + 64883 soit 130419. Les deux cas décrits ci-dessus peuvent se produire simultanément. Dans ce cas les deux bits système SY17 et SY18 sont mis à l’état 1. La gestion de ces bits est à la charge du progamme utilisateur. Exemple : W0 + W1 → W2 Non signé signé 1 0 1 1 0 0 1 0 1 0 1 0 1 0 0 0 W0 45736 -19800 + 1 1 1 0 0 1 0 1 0 1 1 1 0 0 0 0 0 0 W1 38336 -27200 0 1 0 0 1 0 0 0 0 1 1 0 1 0 0 0 W2 18536 18536 SY18 SY17 Les deux bits système SY17 et SY18 sont mis à l’état 1. Le résultat en arithmétique signée (+18536) est erroné. En arithmétique non signée, le résultat (18536 + valeur de SY17 soit 84072) est correct. 5/15 B • Soustraction : opérande 1 - opérande 2 Résultat négatif Dans le cas ou le résultat de la soustraction est inférieur à 0, le bit système SY17 est mis à l’état 1. La gestion de ce bit est à la charge de l’utilisateur. B • Multiplication : opérande 1 * opérande 2 Signe du résultat Il dépend du signe des opérandes à multiplier : 2 * 3 → 6 2 * -3 → -6 -2 * 3 → -6 -2 * -3 → 6 Débordement de capacité pendant l’opération Dans le cas ou le résultat dépasse la capacité du mot de rangement, le bit SY18 (overflow) est mis à l’état 1 et le résultat est non significatif. La gestion de ce bit est à la charge du programme utilisateur. • Division : opérande 1 / opérande 2 Opérandes Le dividende est représenté par l’opérande 1 et le diviseur par l’opérande 2. Le quotient peut être transféré dans un opérande 3. Signe du résultat Le signe du quotient dépend des signes du dividende (OP1) et du diviseur (OP2) : 8 / 2 → 4 8 / -2 → -4 -8 / 2 → -4 -8 / -2 → 4 Division par 0 Dans le cas ou le diviseur est égal à 0, la division est impossible et le bit système SY18 est mis à l’état 1, le résultat sera donc erroné. La gestion de ce bit est à la charge du programme utilisateur. Débordement de capacité pendant l’opération Dans le cas ou le quotient de la division dépasse la capacité du mot de rangement, le bit SY18 est mis à l’état 1. la gestion de ce bit est à la charge du programme utilisateur. 5/16 Blocs opérations 5 • Reste de la division : opérande 1 REM opérande 2 (uniquement avec TSX 17-20) Opérandes Le dividende est représenté par l’opérande 1 et le diviseur par l’opérande 2. Le reste peut être transféré dans un opérande 3. B Signe du résultat Le signe du reste est toujours identique à celui du dividende. Division par 0 Dans le cas ou le diviseur est égal à 0, la division est impossible et le bit système SY18 est mis à l’état 1; le résultat sera donc erroné.La gestion du bit SY18 est à la charge du programme utilisateur. 5.3-5 Opérations logiques Les instructions associées permettent de réaliser une opération logique entre deux opérandes; ces instructions sont : • AND : réalise le ET (intersection) entre deux opérandes, • OR : réalise le OU inclusif (union) entre deux opérandes, • XOR : réalise le OU exclusif (disjonction) entre deux opérandes, • CPL : réalise le complément logique d’un opérande. Une opération logique entre deux opérandes est effectuée bit à bit (bit 0 à F) sur le contenu des deux opérandes. Structure Une opération logique est réalisée par un bloc opération constitué de la manière suivante. Opérations AND, OR, XOR OP1 Opérande 1 OP Type d’opération AND,OR,XOR OP2 Opérande 2 → Mot de rangement Complément logique CPL OP Type d’opération CPL OP2 Opérande → Mot de rangement 5/17 Opérandes Le complément logique ne s’effectue que sur des mots internes Wi. Objet B Opérandes OP1 OP2 Mot constant CWi X X Mot interne Wi X X Mot commun COMi,j X X Mot registre IW/OWxy,i X Mot système SWi Valeur immédiate Mot de rangement Exemple Exemple indexé CW3 CW3(W45) X W12 W12(W11) X COM3,2 X X OW7,5 X X X X X 3476 Temps d’activité d'une étape Xi,V X X X67,V Mot extrait de blocs fonction Ti,P X X (1) X(1) SW4 T3,P sauf valeur courante de bloc fonction Exemples ET logique : le résultat bit à bit est égal à 1 si les deux bits correspondantts sont à l’état 1. Rappel 0 AND 0 AND 1 AND 1 AND 0 1 0 1 Exemple →0 →0 →0 →1 OP1 OP OP2 W32 AND W12 1100 1100 1101 1011 → W15 0100 1000 1101 0000 0100 1011 1111 0000 OU logique : le résultat bit à bit est égal à 1 si au moins un des deux bits correspondants est à l’état 1. Rappel 0 OR 0 OR 1 OR 1 OR 5/18 0 1 0 1 →0 →1 →1 →1 Exemple OP1 W32 OP OR OP2 W12 0100 1011 1111 0000 → 1100 1111 1111 1011 W15 1100 1100 1101 1011 Blocs opérations 5 OU exclusif logique : le résultat bit à bit est égal à 1 si un seul des bits correspondants est à l’état 1. Rappel 0 XOR 0 XOR 1 XOR 1 XOR 0 1 0 1 →0 →1 →1 →0 Exemple OP1 W32 OP XOR OP2 W12 → W15 1100 1100 1101 1011 B 0100 1011 1111 0000 1000 0111 0010 1011 Complément logique : le résultat est l’inversion bit à bit du mot à complémenter. Rappel CPL 0 →1 CPL 1 →0 Exemple OP CPL OP2 W12 → W15 0100 1011 1111 0000 1011 0100 0000 1111 Exemple d’utisation : masquage de tout ou partie de mot L’exemple ci-dessous montre le ET logique entre le mot W94 et la valeur immédiate H"00FF"; le résultat étant stocké dans le mot W95. Cette opération permet de masquer les 8 bits de poids forts du mot W94. OP1 OP OP2 W94 AND H"00FF" 0100 1110 1010 1001 → W95 0000 0000 1111 1111 0000 0000 1010 1001 5/19 5.3-6 Transcodage B Une valeur numérique peut être représentée de plusieurs manières dans un mot; ces différentes représentations sont appelées codes. Le passage d’une représentation à une autre est appelée transcodage. Cette opération peut être associée à une opération de transfert afin de transférer le contenu transcodé dans un mot ou une table de mots. Les transcodages possibles sont les suivants. • BIN : transcodage BCD → binaire • BCD : transcodage binaire → BCD • ATB : transcodage ASCII → binaire • BTA : transcodage binaire → ASCII Structure Un transcodage est réalisé par un bloc opération constitué de la manière suivante : OP Type de transcodage BIN, BCD, ATB, BTA OP2 Opérande à convertir → Mot de rangement Opérandes Objet Opérande OP2 Mot de rangement Exemple Exemple indexé Mot constant CWi X CW3 CW3(W45) Mot interne Wi X X W12 W12(W11) Mot commun COMi,j X X COM3,2 Mot registre IW/OWxy,i X X OW7,5 Mot système SWi X X SW4 Valeur immédiate X Temps d’activité d'une étape Xi,V X X 67,V Mot extrait de bloc fonction Ti,P X X(1) T3,P (1) sauf valeur courante de bloc fonction 5/20 3476 Blocs opérations 5 Transcodage BCD → Binaire et Binaire → BCD • Rappel sur le code BCD : Le code BCD (Binary Coded Décimal) qui signifie décimal codé binaire permet de représenter un chiffre décimal 0 à 9 par un ensemble de 4 bits. Un objet mot de 16 bits peut donc contenir un nombre N exprimé sur 4 décades (0 <= N <= 9999). 0 1 2 3 4 5 6 7 8 9 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 Décimal Binaire Exemples: • Transcodage BCD → Binaire (BIN) La valeur du mot W1, exprimée en code BCD est convertie en code binaire puis rangée dans le mot W2. OP OP2 → BIN W1 W2 0001 0111 0101 1001 0000 0110 1101 1111 Transcodage Binaire → BCD (BCD) La valeur du mot W10 exprimée en code binaire est convertie en code BCD puis rangée dans le mot W21. OP OP2 → BCD W10 W21 0000 0110 1101 1111 0001 0111 0101 1001 Règles d’utilisation • Transcodage BCD → Binaire Le transcodage s’effectue sur l’ensemble des bits de l’opérande à transcoder. Un controle est effectué automatiquement par l’automate sur chaque quartet (4 bits) de l’opérande. Chaque quartet ne doit pas représenter une valeur décimale supérieure à 9. Cette vérification à pour but d’effectuer l’opération de transcodage sur un opérande contenant bien une valeur exprimée en code BCD; dans le cas ou cette valeur n’est pas une valeur BCD, le bit système SY18 (débordement) est positionné à l’état 1. la gestion de ce bit est à la charge du programme utilisateur. • Transcodage Binaire → BCD L’opération de transcodage ne peut s’effectuer que sur un opérande dont le contenu est compris entre 0 et 9999. Dans le cas contraire, le résultat du transcodage est erroné et le bit système SY18 est positionné à l’état 1. La gestion de ce bit est à la charge du programme utilisateur. 5/21 B Transcodage Binaire → ASCII et ASCII → Binaire • Rappel sur le code ASCII B L'ensemble des 256 caractères alphanumériques et de contrôles peut être codé sur 8 bits. Ce code appelé ASCII (American Standard Code for Information Interchange) est compatible avec la notion d'octets. Tout mot de 16 bits peut donc être formé par 2 codes ASCII définissant 2 caractères. • Transcodage Binaire → ASCII L'opération de transcodage Binaire → ASCII consiste à convertir la valeur binaire d'un mot (5 chiffres plus signe) en code ASCII sur 3 mots. Exemple Conversion de la valeur binaire du mot W5 et rangement dans les mots W20 à W22. OP OP2 → BTA W5 W20 Valeur de W5 = -128 Valeur de W5 = +128 0 1 8 0 0 2 H30 H31 H38 H30 H30 H32 W20 W21 W22 0 2 6 H33 H35 H37 0 2 H30 H31 H38 H2D H30 H32 H30 H30 H38 H30 H30 H30 Valeur de W5 = +0 Valeur de W5 = +32567 3 15 7 0 1 8 H30 H30 H32 W20 W21 W22 0 0 0 0 0 0 Règles d'utilisation Le contenu d'un mot étant compris entre -32768 et +32767 soit 5 chiffres plus signe, la destination du transcodage sera toujours une tables de 3 mots soit 6 octets. Le code H2D (-) doit être rangé dans l'octet du poids faible du premier des 3 mots de rangement. Le rangement des caractères est réalisé de manière à effectuer aisément un échange de caractères via une liaison série asynchrone. 5/22 Blocs opérations 5 Transcodage ASCII → Binaire L’opération de transcodage ASCII → Binaire consiste à convertir les codes ASCII représentant les chiffres 0 à 9 en code binaire. Exemple Conversion des codes ASCII rangés dans les mots W30 à W32 et rangement dans le mot W40. OP OP2 → ATB W30 W40 W30 W31 W32 H30 H31 H38 H30 H30 H32 W40 = +128 W30 W31 W32 H30 H31 H38 H2D H30 H32 W40 = -128 W30 W31 W32 H33 H37 H37 H30 H32 H36 W40 = +32767 W30 W31 W32 H30 H30 H30 H30 H30 H30 W40 = 0 Règles d’utilisation Les codes ASCII à convertir sont toujours rangés dans une table de 3 mots. Le nombre exprimé en ASCII rangé dans une table de 3 mots doit obligatoirement être compris entre -32767 et +32768 afin d’être rangé dans un mot résultat. Dans le cas contraire, le mot résultat ne peut contenir la valeur et le bit système SY18 (overflow) est mis à l’état 1. La gestion de ce bit est à la charge du programme utilisateur. Le code H30 (0) est le code neutre. 5/23 B B 5/24 X Bloc fonction texte Bloc fonction texte Sous-chapitre 6 Chapitre 6 Page 6.1 Présentation 6/2 6.2 Description de l’échange 6/2 6.2-1 Tables de données 6.2-2 Rangement des données dans les tables 6/4 6/6 6.3 Caractéristiques 6/7 6.4 Fonctionnement 6/9 Ce chapitre se termine à la page 6/10 6/1 B 6.1 Présentation Le bloc "Texte" est un bloc fonction qui véhicule des messages et permet ainsi à l’automate de communiquer avec le milieu extérieur. R TXT0 D TER LOCAL S E W0[16] B O L = 29 I 6.2 S= T,L:0 T,S:? Description de l’échange Toute communication entre un automate et un périphérique ou un autre automate nécessite l’emploi d’un bloc texte comme "enveloppe" et suppose la connaissance des éléments suivants : • Le type d’échange : avec qui veut-on communiquer? : - TER (communication avec un périphérique via la prise Terminal), - CPL (communication avec un périphérique, via un module coupleur de l’automate), - TXT (communication avec un autre automate, via le réseau FIPWAY ou TELWAY. Le message émis par un bloc texte de la station A est reçu par un bloc texte de la station B), • Le support de communication : par quel moyen veut-on communiquer? : - LOCAL (localement, vers prise Terminal ou module coupleur), - RESEAU FIPWAY (TSX17-20) ou TELWAY (TSX47) - BUS UNI-TELWAY, • Les tables de données : que veut-on communiquer? : - longueur et adresse de début de la table d’émission, - longueur de la table de réception. Ces éléments sont définis lors de la saisie du bloc texte et ne sont modifiables que par le programme utilisateur. La figure et le tableau de la page ci-contre, illustrent les différents échanges, suivant le type de blocs textes. 6/2 6 Bloc fonction texte Bloc TXTi CPL Mémoire RAM TER TXT B TSX MPT10 CPL TSX SCM. TSX MPT10 TXT TXT TER Prise Terminal Réseau TELWAY Imprimante, écran/clavier, XBT, automate, etc... Type de Bloc Texte Echange TSX 17-20 TSX 27 TSX 47-J/10 TSX 47-20 TER Programme utilisateur avec un périphérique, via la prise terminal TXT Programme utilisateur d'un automate A avec un programme utilisateur d'un automate B CPL Programme utilisateur avec un serveur UNI-TELWAY, via la prise Terminal Programme utilisateur avec un coupleur intelligent Programme utilisateur d'un automate A avec un programme utilisateur d'un automate B Moyen d'échange de données Local Réseau Bus de Liaison Multipoint UNI-TELWAY Programme utilisateur avec un coupleur intelligent Local 6/3 Les échanges de données entre le programme utilisateur et les coupleurs intelligents peuvent être effectués avec les coupleurs suivants : B TSX 17-20 Coupleur réseau FIPWAY : TSX FPG 10 TSX 17-20 Coupleur de communication par BUS UNI-TELWAY : TSX SCG 116 Module de communication Chaîne de caractères : TSX SCG 113 TSX 47-J TSX 47-10/20 Coupleur réseau TELWAY : TSX MPT10 TSX 47-20 Coupleur de communication par bus UNI-TELWAY : TSX SCM 21.6 TSX 47-20 Coupleurs liaisons asynchrones Coupleurs Chaîne de mesure : TSX SCM 2.. : TSX AEM Chaque coupleur ayant des fonctionnalités bien définies (paramètres, commandes, ...), les échanges correspondants sont explicités dans des manuels spécifiques. Les périphériques connectés à la prise terminal peuvent être une imprimante, un écran,... mais aussi un terminal TSX T317/407 ou FTX 417/507. Ces derniers devront être utilisés en mode "terminal". Le périphérique (du type imprimante), peut être aussi connecté à la prise "périphérique" du terminal T407, lui même relié à la prise terminal de l’automate. Dans ce cas la validation de la liaison série du terminal T407 est provoquée par l’envoi du code H’12' par le bloc texte. Le blocage de cette liaison est obtenu par l’envoi du code H’14'. 6.2-1 Tables de données Un message véhiculé par un bloc texte (échangé entre un automate et un périphérique), est un ensemble de caractères alphanumériques contenu dans une table de mots. Chaque caractère composant ce message, est codé sur 8 bits. Les blocs textes du type TER véhiculent généralement des messages codé en ASCII (American Standard Code Information Inter-change). Ce code est compatible avec la notion d’octets (8 bits). Exemple le code ASCII de la lettre "A", exprimé en Hexadécimal est H’41'. Tout mot de 16 bits peut donc contenir 2 caractères ASCII. Les blocs textes du type CPL ou TXT véhiculent en général des messages définis en binaire pur, sans codage (valeurs numériques, etc). 6/4 Bloc fonction texte 6 Les données échangées à l’aide de la fonction "Texte" sont organisées sous forme de tables de mots, définies dans la mémoire de données et structurées de la façon suivante : La table d’émission Elle permet d’envoyer des données au destinataire (coupleur, prise terminal,...). Elle peut être constituée par des mots internes Wi ou des mots constants CWi(1) et est définie par sa longueur L représentant le nombre de caractères (2 caractères/ mot). L max. = 30 caractères soit 15 mots. La table de réception Elle permet de recevoir des données envoyées par l’émetteur. Elle est nécessairement constituée par des mots internes Wi et est définie par son adresse de début Wi et sa longueur n représentant le nombre de caractères (2 caractères/mot). n max. = 30 caractères soit 15 mots. Les tables de réception et d’émission sont juxtaposées et constituent une table dont les paramètres sont : Wi[n] et L. Exemple de configuration de table: W8[10] et L = 12 • table de réception : W8 à W12 (10 caractères, donc 5 mots), • table d’émission : W13 à W18 (nombre de caractères L = 12, donc 6 mots). 2 eme caractère à recevoir er 1 caractère à recevoir mot Wi W8 mot Wi+1 W9 mot Wi+n/2-1 W12 mot Wi+n/2 W13 mot Wi+n/2+1 W14 mot Wi+n/2+L/2-1 W18 Table de réception (mots internes Wi) 2 eme caractère à émettre er 1 caractère à émettre Table d'émission (mots internes Wi) (1) uniquement si le bloc texte est défini en émission, sans réception. 6/5 B 6.2-2 Rangement des données dans les tables B Dans le cas de la réception du message "DROITE" par exemple, 52 44 les caractères (les codes ASCII 49 4F correspondants) seront rangés 45 54 dans la table de réception comme l’indique le tableau ci-contre. Code ASCII en rang F rang 7 R I E rang 0 D mot Wi O mot Wi+1 T mot Wi+2 Hexadécimal H'...' Pour émettre le message "SENS ?" par exemple, les caractères (les 45 53 codes ASCII correspondants) doi53 4E vent être rangés dans la table 3F 20 d’émission comme l’indique le tableau ci-contre. Sur le périphéri- Code ASCII en que, les caractères seront affichées Hexadécimal H'...' dans l’ordre. 6/6 rang F rang 7 E S ? rang 0 S mot Wi+3 N mot Wi+4 espace mot Wi+5 Bloc fonction texte 6.3 6 Caractéristiques Numéro de bloc Texte TXTi 0<i<7 Type d’échange CPL/TER/TXT (voir tableau page 6/3) Type de communication LOCAL/BUS/ RESAU (voir tableau page 6/3) Adresse et longueur table de réception Wi[n] Wi : adresse du premier mot de la table n : longueur de la table (nombre de caractères). Si n = 0, le bloc texte n’adressera qu’une table d’émission. Dans ce cas la table peut être définie par des mots internes Wi ou constants CWi. Longueur de la table d’émission TXTi,L Mot définissant la longueur de la table, en nombre de caractères. Modifiable par programme utilisateur ou par terminal. Mot STATUS TXTi,S Contient le nombre de caractères reçus si le bit de sortie E (échange erroné) est à 0. Si le bit de sortie E est à 1, ce mot contient le code de l’erreur produite lors de l’échange. Ce mot ne peut être que lu par le programme. Code d’erreur status : 1 = échange annulé par RESET, 2 = erreur longueur de table, 3 = message refusé (sur TSX 17-20 et TSX 47-10/20 V>3), 6 = adresse buffer incorrecte (sur TSX 17-20), 11 = type de bloc texte non géré (sur TSX 17-20 uniquement). Entrée RESET R La mise à l’état 1 de cette entrée empêche la prise en compte de l’entrée S. De la même manière, la mise à l’état 1 de cette entrée durant un échange interrompt l’échange et positionne les bits de sortie TXTi,D (échange terminé) et TXTi,E (échange erroné) à l’état 1. Le code de l’erreur est alors contenu dans le mot status TXTi,S. Entrée Départ S Un front montant sur l’entrée S provoque le lancement de l’échange défini par les entrées I (réception) et O (Emission) si le bit de sortie D est à l’état 1 et si l’entrée R est à l’état 0. B 6/7 Caractéristiques (suite) B Entrée Emission O Entrée Réception I Bit de sortie "Echange terminé" TXTi,D Bit de sortie "Echange erroné" TXTi,E Dimension dans un réseau de contacts La mise à l’état 1 de cette entrée positionne le bloc en émission. La mise à l’état 1 de cette entrée positionne le bloc en réception. Ce bit est mis à l’état 1 lorsque l’échange est terminé. Si le bit TXTi,E (échange erroné) est à l’état 0, TXTi,D indique que le message a été correctement émis et/ou reçu. Si le bit TXTi,E est à l’état 1, TXTi,D indique que l’échange est terminé mais erroné. Ce bit est mis à l’état 1 si l’échange ne s'est s’est pas terminé correctement. Le mot status indique alors le type d’erreur qui s’est produite. 2 colonnes de contacts sur 4 lignes Paramètres spécifiques aux blocs textes CPL ou TXT(1) Adresse coupleur et numéro de voie TXTi,M Code requête TXTi,C Compte-rendu d’échange TXTi,R Numéro du bloc TXTi,T Adresse station TXTi,A (1) Utilisé seulement par les blocs de type CPL. Ce mot doit être écrit par programme avant tout échange, il contient l’adresse du coupleur et le numéro de voie destinataire de l’échange. Utilisé seulement par les blocs de type CPL. Ecrit par programme, ce mot contient sous forme de code le type de travail à effectuer (envoi de la confi-guration, écriture d’une table, ...). Pour la signification de ces codes, se reporter aux manuels spécifiques. Utilisé seulement par les blocs de type CPL. Après un échange, ce mot contient un code écrit par le coupleur ou le système indiquant la validité de l’échange (erroné ou correct). Ce mot ne peut être que lu. Utilisé seulement par les blocs de type TXT. Ecrit par programme, ce mot contient le numéro du bloc texte destinataire de l’échange (voir manuels coupleur réseau). Utilisé seulement par les blocs de type TXT, lorsque le support de communication est le réseau (NET). Ecrit par programme utilisateur, ce mot contient le numéro de la station destinataire de l’échange L’utilisation et la gestion de ces mots sont détaillées dans les documents spécifiques aux coupleurs. 6/8 6 Bloc fonction texte 6.4 Fonctionnement La mise à l’état 1 des entrées I ou O permet de positionner le bloc en lecture ou en écriture. La réception ou l’émission est alors déclenchée par un front montant sur l’entrée S (départ), si l’entrée R (Reset) est à l’état 0 et si la sortie D est à l’état 1 (aucun échange en cours). En fin d’écriture ou de lecture, la sortie D est mise à l’état 1. De même si l’échange n’est pas correct, la sortie E (échange erroné) est mise à 1. De la même manière la mise à l’état 1 simultanée des entrées I et O positionne le bloc texte en émission puis en réception. L’échange est déclenché par un front montant de l’entrée S (si R=0 et D=1). La sortie D est mise à l’état 1 lorsque l’émission et la réception sont terminées. A tout instant, la mise à l’état 1 de l’entrée R (entrée prioritaire) permet d’interrompre l’échange en cours. Les bits de sortie D (échange terminé) et E (échange erroné) sont mis à l’état 1. Le mot status TXTi,S indique le type d’erreur du dernier échange en cours. Son contenu sera réinitialisé par un RESET du bloc texte ou réinitialisé lors du prochain échange. R=0 S=1 I=0 O=1 Emission R=0 S=1 I=1 O=0 Réception R=0 S=1 I=1 O=1 Emission suivie de réception R=1 S = 0/1 I = 0/1 O = 0/1 Pas de possibilité d’échange ou interruption de l’échange en cours Echange en cours Echange terminé Echange erroné TXTi,D 0 1 1 TXTi,E 0 0 1 Diagramme Entrée S: Entrée R: Entrée O: Entrée I: Sortie TXTi,D : Sortie TXTi,E : E R E/R E : émission; R : réception; E/R : émission/réception. 6/9 B B 6/10 X Bloc fonction horodateur (TSX 17-20) Bloc fonction horodateur (TSX 17-20) Sous-chapitre 7 Chapitre 7 Page 7.1 Présentation 7/2 7.2 Programmateur Temporel 7/2 7.2-1 Caractéristiques 7.2-2 Fonctionnement 7/3 7/5 7.3 Consignateur Temporel 7.3-1 Caractéristiques 7.3-2 Horodatation d’un événement : DT 7.3-3 Horodatation du dernier arrêt: DTP 7/6 7/6 7/7 7/7 7.4 Mesure de Durée 7/8 7.5 Exemple de mise à l’heure de l’horodateur 7/9 Ce chapitre se termine à la page 7/10 7/1 B 7.1 B Présentation Les automates TSX 17-20 équipés des cartouches micro-logiciel TSX P17 20FB ou 20FD possèdent une horloge, à partir de laquelle peuvent être élaborées trois fonctions : • Programmateur Temporel qui permet de commander des actions à des horaires prédéfinis ou calculés, • Consignateur Temporel qui permet l’horodatation d’événements, • Mesure de Durée entre événements successifs. La mise à l’heure de l’horodateur du TSX 17-20 s’effectue soit en mode REGLAGE, soit par programme. Son fonctionnement, lorsque l’automate est hors tension est assuré par la pile lithium de sauvegarde. Le rafraîchissement des variables de l’horodateur est assuré tant que SY3=0. 7.2 Programmateur Temporel Le programmateur temporel permet de commander des actions à des horaires et des dates prédéfinies ou calculées. La commande de ces actions peut être journalière, hebdomadaire et/ou annuelle, suivant les blocs horodateurs programmés : • Annuel (YEAR), les paramètres associés sont le mois dans l’année et le jour dans le mois : MM/JJ. E H YEAR < = DEBUT:00/00 FIN:00/00 • Hebdomadaire (WEEK), les paramètres associés sont les jours dans la semaine : N et les heures/minutes dans le jour : HH/MN. E H > < WEEK:1234567 = DEBUT:00/00 FIN:00/00 > Chaque bloc fonction horodateur (YEAR ou WEEK) est caractérisé par sa consigne de début de période active (DEBUT) et sa consigne de fin de période active (FIN). Exemple de période temporelle : mise en route du climatiseur d’un bâtiment, du 15 juin au 15 septembre (période du bloc YEAR), du lundi au vendredi, de 9h à 19h (période du bloc WEEK). 7/2 Bloc fonction horodateur (TSX 17-20) 7 7.2-1 Caractéristiques Bloc Horodateur Nombre H Le nombre de blocs horodateur utilisés dans un programme utilisateur est illimité. Il dépend uniquement de la taille de la mémoire programme. Type YEAR Bloc annuel. La période active est une tranche de date dans l’année. WEEK Bloc hebdomadaire. La période active est une tranche horaire dans le jour. Le type de bloc doit être défini lors de la saisie. Entrée "Validation" E(ENABLE) Sur état 1, valide le fonctionnement du bloc. Sortie < "Avant". Sur état 1 indique que la date ou l’heure courante (suivant le type de bloc), est antérieure à la consigne de début de période active. Sortie = "Pendant". Sur état 1 indique que la date ou l’heure courante (suivant le type de bloc), est comprise entre la consigne de début de période active et la consigne de fin de période active. Sortie > "Après". Sur état 1 indique que la date ou l’heure courante (suivant le type de bloc), est postérieure à la consigne de fin de période active. Dimension dans un réseau de contacts 2 colonnes de contacts sur 3 lignes 7/3 B Paramètres du bloc horodateur "WEEK" Sélection des jours "LMMJVSD" "1234567" 1234567 Consigne de début DEBUT : 00:00 Consigne de fin FIN : 00:00 B Jours de la semaine dans la période active. Peuvent être définis comme paramètres : • constants : CD (Constant Day), modifiables par Terminal, • variables : VD (Variable Day) : - Wi, calculé par programme, - CWi, défini par configuration. Exemple : W10 = 00000000 01001101 correspondant à : 1--45-7 Début de la période active: HH:MN Heures et minutes. Peut être défini comme paramètre : • constant : modifiable par Terminal, • variable : - Wi, calculé par programme, - CWi, défini par configuration. Exemple : W100 = H'1223' correspondant à 12h 23mn Fin de la période active: HH:MN Heures et minutes. Peut être défini comme paramètre : • constant : modifiable par Terminal, • variable : - Wi, calculé par programme, - CWi, défini par configuration. Exemple : CW100 = H’1859' correspondant à 18h 59mn La valeur de fin de période doit être exceptée : si la fin de période est 18h, il faut saisir "FIN:17:59". Paramètres de blocs horodateur "YEAR" Consigne de début DEBUT : 00/00 Consigne de fin 00/00 FIN : 7/4 Début de la période active: MM/JJ Mois et jour. Peut être défini comme paramètre : • constant : modifiable par Terminal, • variable : - Wi, calculé par programme, - CWi, défini par configuration. Exemple : W110 = H’0515' correspondant au 15 Mai Fin de la période active: MM/JJ Mois et jour. Peut être défini comme paramètre : • constant : modifiable par Terminal, • variable : - Wi, calculé par programme, - CWi, défini par configuration. Exemple: CW110 = H’0915' correspondant au 15 Septembre. Bloc fonction horodateur (TSX 17-20) 7 7.2-2 Fonctionnement Les blocs fonction Horodateur (WEEK et YEAR) se programment en série et/ou en parallèle, suivant l’application. Exemple précédent : Mise en route du climatiseur d’un bâtiment, du 15 juin au 15 septembre, du lundi au vendredi, de 9h à 19h. Formulaire programmation schéma à contacts PL7-2 N° ZONE TEST ZONE ACTION OBSERVATIONS " CON T A C T . C L I M . IØ,Ø1 YEAR WEEK IØ,Ø1 : Marche YEAR= OØ,Ø1 Début : Ø6/15 Fin : Ø9/15 WEEK=12345-Début : Ø9 : ØØ Fin : 18 : 59 Diagramme Entrée E : validation Sortie <: Sortie =: Sortie >: Consigne de début Consigne de fin Nota : Dans un bloc horodateur, la valeur de fin de période active doit toujours être postérieure à la valeur de début de période active. Une période active ne peut pas être répartie sur deux journées ou deux années successives. Les consignes variables Wi ou CWi doivent être définies en BCD (saisies en hexadécimal). Exemple: pour définir 17h 40 dans W20, il faut saisir : H’1740' → W20. 7/5 B 7.3 Consignateur Temporel Le consignateur temporel permet d’horodater des événements grâce aux informations fournies par les mots SW50 à SW57. B 7.3-1 Caractéristiques Valeurs courantes date et heure SW50 = H’SSAA’ mot contenant le siècle : SS et l'année : AA SW51 = H’MMJJ’ mot contenant le mois : MM et le jour : JJ SW52 = H’HHMN’ mot contenant l’heure : HH et les minutes : MN SW53 = H’SSXN’ mot contenant les secondes : SS et le numéro du jour dans la semaine (1, 2, 3, 4, 5, 6 ou 7 respectivement L, M, M, J, V, S ou D) : N La valeur de X est égale à 0. Ces mots sont exprimés en hexadécimal : H’....’. Ils peuvent être lus et écrits (mise à jour de l’horloge par la mise à jour de ces mots. Voir exemple page 7/9). Valeur du dernier arrêt : • coupure secteur • STOP automate SW54 = H’SSAA’ mot contenant le siècle : SS et l'année : AA du dernier arrêt SW55 = H'MMJJ' mot contenant le mois : MM et le jour : JJ du dernier arrêt SW56 = H’HHMN’ mot contenant l’heure : HH et les minutes : MN du dernier arrêt SW57 = H’SSXP’ mot contenant les secondes : SS et le code du défaut : P. La valeur de X est égale à 0. P = 1 STOP AUTOMATE P = 4 coupure secteur Ces mots sont exprimés en hexadécimal : H’....’. Ils peuvent être uniquement lus. Remarque : Les paramètres des blocs Horodateur sont définis en BCD (valeurs comprises entre 0 et 9), et saisis en hexadécimal (SW50= H’1989'). Le code hexadécimal étant une extension du code BCD. 7/6 7 Bloc fonction horodateur (TSX 17-20) 7.3-2 Horodatation d’un événement : DT L’apparition d’un événement quelconque interne (atteinte d’une valeur de présélection, mise à 1 d’un bit système, ...), ou externe (information provenant d’un capteur, ...), peut être datée et signalée sur un périphérique par émission d’un bloc texte. Le message : SSAA-MM-JJ-HH:MN:SS-XN (22 caractères) de la fonction : DT "Date and Time" (contenu de SW50 à SW53 plus les caractères de séparation – et :) peut être transféré dans une table d’émission, puis envoyé sur un périphérique. DT Valeur SS courante AA - MM - JJ - HH : MN : SS - X P (11 mots) 7.3-3 Horodatation du dernier arrêt : DTP L’information d’arrêt du TSX 17-20 peut être, à chaque fois, affichée sur un périphérique (écran, imprimante, ...), par émission d’un bloc texte. Cette opération permet entre autres d’effectuer des statistiques sur les arrêts. Le message : SSAA-MM-JJ-HH:MN:SS-XP (22 caractères) de la fonction : DTP "Date and Time Powerfail" (contenu de SW54 à SW57 plus les caractères de séparation – et :) peut être transféré dans une table d’émission, puis envoyé sur un périphérique. DTP Valeur dernier arrêt SS AA - MM - JJ - HH : MN : SS - X P (11 mots) Exemple de programmation : " BØ OPERATE DTP → WØ[11] 4 Ø L " EM I S S I ON TXTØ 4 1 L BØ S WØ O D Sur reprise après arrêt automatique (événement mémorisé dans BØ) Transfert DTP dans Table émission OPER = DTP → WØ[11] D T P B2ØØ Emission de DTP via le bloc texte TXTØ, sur un périphérique L=22 7/7 B B Remarque : L’émission d’un message sur un périphérique nécessite au préalable une conversion Binaire vers ASCII. Dans le cas de la fonction DT ou DTP, cette conversion n’est pas nécessaire. Elle est assurée automatiquement par le système. Un bloc texte pouvant émettre jusqu’à 30 caractères (maximum, à la fois), les messages des fonctions DT et DTP (22 caractères) peuvent être accompagnés chacun de 8 autres caractères (pour les commentaires par exemple). 7.4 Mesure de Durée Cette fonction permet d’effectuer des mesures de durée entre deux événements quelconques, grâce aux informations fournies par les mots système SW58 et SW59. Lors de l’apparition de l’événement, les valeurs courantes contenues dans ces mots peuvent être prélevées (transférées dans des mots Wi) et utilisées dans des opérations arithmétiques. Caractéristiques Valeurs courantes SW58 = D’xxxx’ heure courante en minutes, dans le jour courant : 0 ≤ xxxx: valeur décimale ≤ 1439 SW59 = D’xxxx’ numéro du jour courant dans l’année courante : 0 ≤ xxxx: valeur décimale ≤ 366 Ces mots système peuvent être uniquement lus. Ils sont rafraîchis tant que SY3=0. Exemple de programmation : Transférer dans les mots W50 et W51 le temps écoulé (nombre de minutes et de jours), entre deux événements 1 et 2. " E V E N EME N T 1 / 2 B1 SW58 → W5Ø 5 1 L SW59 → W51 B2 SW58-W50 → W51 SW59-W51 → W51 7/8 Sur événement 1(B1), transférer : SW58 → W5Ø SW59 → W51 Sur événement 2(B2), réaliser : SW58-W5Ø → W5Ø SW59-W51 → W51 7 Bloc fonction horodateur (TSX 17-20) 7.5 Exemple de mise à l’heure de l’horodateur La mise à l’heure de l’horodateur peut être effectuée : • soit en mode REGLAGE, à partir du terminal, • soit par programme utilisateur. Dans ce cas elle ne peut avoir lieu que si SY3=1 (voir ci-dessous). Exemple de mise à l’heure, sur demande (I0,1), à partir des variables contenues dans la table W0[4] : - W0 = H’SSAA’ (ex: H’1989') - W1 = H’MMJJ’ (ex: H’0728') - W2 = H’HHMN’ (ex: H’1305') - W3 = H’SSXN’ (ex: H’2205') Formulaire programmation schéma à contacts PL7-2 N° ZONE TEST " D E T E C . ZONE ACTION BØ IØ,1 B1 B1 6 Ø L " GE L OBSERVATIONS F RON T Sur demande de IØ,1 : détection de front pour l'exécu tion de la mise à l'heure (sur 1 seul cycle). HOROD A T E UR SY3 Gel de l'horodateur pour BØ la mise à l'heure 6 1 L " M I S E BØ A L ' H E UR E OPERATE WØ → SW5Ø 6 2 L OPERATE W1 → SW51 OPERATE W2 → SW52 OPERATE W3 → SW53 WØ → SW5Ø W1 → SW51 W2 → SW52 W3 → SW53 7/9 B B 7/10 X Le langage grafcet PL7-2 Intercalaire C Chapitre 1 2 Le langage grafcet PL7-2 1.1 Rappel des principes du grafcet Page 1/1 1/2 1.2 Les symboles graphiques spécifiques au langage grafcet 1/3 1.3 Les objets spécifiques au grafcet 1/4 1.4 Représentation du grafcet 1/5 1.5 Les étapes et actions associées 1/12 1.6 Les transitions et les réceptivités associées 1/15 Organisation de la tâche maitre 2/1 2.1 Description tâche maître 2/2 2.2 Le traitement préliminaire 2/3 2.3 Utilisation des bits système dans le traitement préliminaire 2/3 2.4 Le traitement séquentiel 2/7 2.5 Le traitement postérieur 2/8 1 C C 2 X Le langage Grafcet PL7-2 Le langage Grafcet PL7-2 1 Chapitre 1 Sous chapitre Page 1.1 Rappel des principes du grafcet 1/2 1.2 Les symboles graphiques spécifiques au langage grafcet 1/3 1.3 Les objets spécifiques au grafcet 1/4 1.4 Représentation du grafcet 1/5 1.4-1 1.4-2 1.4-3 1.4-4 1.4-5 La page grafcet Règles d’écriture des graphes Aiguillage et fin d’aiguillage Activation et désactivation simultanée d’étapes Utilisation des renvois 1.5 Les étapes et actions associées 1/5 1/6 1/7 1/7 1/8 1/12 1.5-1 Les étapes 1.5-2 Les actions associées aux étapes 1.5-3 Temps d’activité d’une étape 1/12 1/12 1/14 1.6 Les transitions et les réceptivités associées 1/15 1.6-1 Les transitions 1.6-2 Les réceptivités associées aux transitions Ce chapitre se termine à la page 1/15 1/15 1/16 1/1 C 1.1 Rappel des principes du grafcet Le grafcet permet de représenter graphiquement et de façon structurée le fonctionnement d’un automatisme séquentiel. Cette description graphique du comportement séquentiel de l’automatisme, et des différentes situations qui en découlent, s’effectue à l’aide de symboles graphiques simples : Etape : à laquelle sont associées les actions à effectuer. 1 Transition : à laquelle sont associées des réceptivités (conditions logiques) C Liaison orientée : reliant les étapes aux transitions et les transitions aux étapes. 2 Etape initiale : définit la situation initiale de l’automate. 1 Transition : les réceptivités associées indiquent les conditions logiques nécessaires au franchissement de cette transition. 2 3 Actions 6 Actions 4 Actions 7 Actions 5 9 8 Actions Activation simultanée des étapes 3 et 6 . Les sous ensembles formés par les étapes 3, 4, 5, et 6, 7, 8 constituent deux séquences dites simultanées. Aiguillage à partir de l’étape 3 vers l’étape 4 ou vers l’étape 5. Etape de fin de séquence : permet la synchronisation des séquences simultanées. Désactivation simultanée des étapes 5 et 8. Etape : les actions associées ne s’exécutent que lorsque l’étape est active. Les transitions et les liaisons orientées symbolisent les possibilités d’évolution des étapes actives. Les actions associée aux étapes traduisent d’une façon générale "ce qui doit être fait" lorsque celles-ci sont actives. Elles décrivent en particulier les ordres qu’il faut transmettre à la partie opérative (processus à automatiser) ou à d’autres systèmes à automatiser. L’ensemble des étapes actives à un moment donné définit la situation du grafcet. 1/2 Le langage Grafcet PL7-2 1.2 1 Les symboles graphiques spécifiques au langage grafcet Désignation Nb.max. Commentaires Etapes Graphisme 96(*) Symbolisent un état stable de l’automatisme. Bit étape associé : Xi Mot temps enveloppe : Xi,V Nombre maximum d’étapes actives simultanément : 16 Etapes 16 Symbolisent les étapes initiales actives en début de cycle après une initialisation ou une reprise à froid. Bit étape associé : Xi Mot temps enveloppe : Xi,V Transitions 128 Séparent deux étapes et permettent le passage de l’une à l’autre. Nombre maximum de transitions validées simultanément : 24 Activations et désactivation simultanées d’étape Permettent l’activation et la désactivation simultanée de 4 étapes maximum. Aiguillage et fin d'éguillage Nombre maximum de transitions en aval et en amont d’un aiguillage : 4 Renvois origine Renvois destination 42 42 Liaisons orientées Passage d’une étape à une autre (réceptivité) Permettent d’assurer la continuité de la lecture du graphe. Permettent de relier une étape à une une transition ou une transition à une étape. # 128 Symbolise le passage d’une étape à une autre, apparait automatiquement lors de la saisie d’une réceptivité. (*) y compris les étapes initiales. 1/3 C 1.3 Les objets spécifiques au grafcet L’utilisateur dispose d’objets bits associés aux étapes, de bits systèmes spécifiques au langage grafcet et d’objets mots indiquant le temps d’activité des étapes. Désignation Adresse Description Bits associés aux étapes Xi Etape i du grafcet principal 0 <= i <= 95 Bits système associés au grafcet (1) SY21 Provoque l’initialisation du grafcet SY22 Provoque la remise à zéro générale du grafcet SY23 Validation du prépositionnement et gel des graphes Xi,V Temps d’activité de l’étape i 0 <= i <= 95 0 <= V <= 9999 secondes C Mots temps d’activité des étapes (1) L’utilisation des bits systèmes est détaillée au sous chapitre 2.3 du présent intercalaire. Bits associés aux étapes : • Ils sont à 1 lorsque les étapes sont actives. • Ces bits peuvent être testés dans toutes les tâches mais ne peuvent être écrits que dans le traitement préliminaire de la tâche maître (prépositionnement des graphes) Ces tests et actions sont programmés en langage à contacts. • Les objets bits associés aux étapes ne sont pas indexables. Mots temps d’activité : • Ils sont incrémentés toutes les secondes et peuvent prendre la valeur 0 à 9999. • Incrémentation du mot : pendant l’activité de l’étape associée. • Comportement à l’activation et à la désactivation de l’étape : - à la désactivation : le contenu est remis à zéro, - à l’activation : incrémentation toutes les secondes. • Ces objets mots ne sont pas indexables. 1/4 Le langage Grafcet PL7-2 1.4 1 Représentation du grafcet 1.4-1 La page grafcet La saisie du graphe dans la mémoire utilisateur s’effectue par pages repérées de P0 à P7. Chaque page est constituée de 8 colonnes (C0 à C7) et de 14 lignes (L0 à L13). L’étude d’un automatisme par un grafcet peut être facilement effectué à l’aide d’un ensemble de formulaires conçus spécialement à cet effet. A chaque formulaire peut correspondre une page mémoire; l’étude grafcet faite sur les formulaires peut donc être directement saisie en mémoire. C Formulaire programmation Grafcet PL7-2 CØ1 CØØ LØØ 14 LØ1 Ø CØ2 CØ3 CØ4 CØ5 CØ6 CØ7 COMMENTAIRES / OBSERVATIONS LØ2 1 LØ3 Formulaire programmation Grafcet PL7-2 LØ4 CØ1 CØØ 2 LØ5 X LØ6 CØ4 CØ5 LØ3 4 7 1Ø 8 11 12 Formulaire programmation Grafcet CØ1 CØØ 5 Ø X LØ8 A B C 14 CØ4 CØ5 Ø L12 6Ø Formulaire programmation Grafcet PL7-2 22 X LØ6 23 LØ7 L13 CØ1 1 A B C 8 pages 96 étapes maximum 24 21 25 26 L10 L12 27 N° Page Grafcet 2 CØ5 CØ6 42 LØ1 27 29 4Ø CØ7 COMMENTAIRES / OBSERVATIONS 29 28 A B C 44 41 LØ4 3Ø X 1 45 42 LØ6 32 LØ7 L13 CØ4 26 LØ5 L11 CØ3 25 LØ3 LØ9 CØ2 LØØ LØ2 LØ8 N° Page Grafcet COMMENTAIRES / OBSERVATIONS LØ4 LØ5 L11 CØ7 21 CØØ L10 CØ6 23 LØ2 LØ3 LØ9 CØ3 2Ø LØ1 13 9 LØ7 6 CØ2 LØØ LØ6 L12 N° Page Grafcet COMMENTAIRES / OBSERVATIONS PL7-2 LØ5 L13 CØ7 LØ4 L10 L11 CØ6 LØ2 LØ8 LØ9 CØ3 6 LØ1 3 LØ7 CØ2 5 LØØ 4Ø LØ8 2Ø LØ9 L10 L11 L12 L13 N° Page Grafcet 3 Mise à jour A B C Par Date Etude : Dessin : Date : T Folio 1/5 1.4-2 Règle d’écriture des graphes Formulaire programmation Grafcet PL7-2 CØ1 CØØ CØ2 CØ3 CØ4 CØ5 CØ6 LØØ 8 5 26 LØ1 Ø 6 2Ø 1 7 21 2 8 22 3 0 23 CØ7 COMMENTAIRES / OBSERVATIONS LØ2 LØ3 LØ4 LØ5 X 24 25 LØ6 C LØ7 LØ8 LØ9 Graphe n°1 Graphe n°2 4 26 5 2Ø L10 L11 L12 L13 6 N° Page Grafcet Mise à jour Par Date Etude : Dessin : Date : A B C T Folio • Les lignes 0 et 13 sont réservés pour les renvois. • Les lignes impaires sont réservées pour les étapes et les renvois de destination. • Les lignes paires sont réservées pour les transitions et les renvois d’origine. • Chaque étape est repérée par un numéro (0 à 95); deux étapes ne peuvent pas avoir le même numéro. • Pas d'obligation particulière quant à l'ordre de numérotation des étapes vis à vis de leurs positions respectives dans le graphe. • Un graphe comportant plus de 6 étapes peut être représenté indifféremment sur une même page ou sur plusieurs pages en utilisant la notion de renvoi. Dans l’exemple ci-dessus le graphe N° 1 comportant 9 étapes (0 à 8) est représenté sur la même page. • A tout renvoi d’origine (N° de l’étape d’où l’on vient) doit correspondre un renvoi de destination (N° de l’étape où l’on va) • Des graphes différents peuvent être représentés sur une même page : Exemple : Graphe N° 1 (étapes 0 à 8) Graphe N° 2 (étapes 20 à 26) 1/6 Le langage Grafcet PL7-2 1 1.4-3 Aiguillage et fin d’aiguillage Le nombre de transitions en aval d’un aiguillage ne doit pas dépasser 4. 1Ø Le nombre de transitions en amont d’un aiguillage ne doit pas dépasser 4. Un aiguillage doit généralement se terminer par une fin d’aiguillage. 11 12 13 14 15 16 17 18 19 Cas de transitions simultanément franchissables lors d’un aiguillage Afin de ne pas franchir simultanément plusieurs transitions les réceptivités doivent être exclusives. Ø Ø a b ab ab 1 2 1 2 1.4-4 Activation et désactivation simultanées d’étapes Le nombre d’étapes en aval d’une activation simultanée ne doit pas dépasser 4. 2Ø Le nombre d’étapes en amont d’une désactivation simultanée ne doit pas dépasser 4. Ø Une activation simultanée d’étapes doit généralement se terminer par une désactivation simultanée d’étapes. 1 2 3 4 5 6 7 8 9 1/7 C 1.4-5 Utilisation des renvois Lorsque la liaison orientée reliant une transition à une étape ne peut être tracée de façon continue (par exemple dans le cas de tracé complexe ou de représentation sur plusieurs pages) on utilise des renvois pour assurer la continuité de la lecture du graphe. C Exemple: dans le grafcet ci-contre, le graphe situé à droite représente la continuité du graphe situé à gauche. Ces deux graphes peuvent être représentés indifféremment sur une même page ou sur deux pages différentes. Dans les deux cas, les renvois assurent la continuité de la lecture du grafcet. Formulaire programmation PL7-2 CØ1 CØØ CØ2 CØ3 CØ4 CØ5 CØ6 LØØ 25 2Ø LØ1 1 21 21 LØ2 LØ3 2 22 3 23 2 24 LØ4 LØ5 CØ7 LØ6 LØ7 4 6 1Ø 12 24 5 7 11 13 25 LØ8 LØ9 23 L10 L11 2Ø 1 L12 L13 Types de renvois Il existe deux types de renvoi : • renvoi de destination : le numéro qui lui est associé indique l’étape de destination "où l’on va". • renvoi d’origine : le numéro qui lui est associé indique l’étape d’origine "d’où l’on vient" Toute liaison transition → étape peut être interrompue dans une page ou dans deux pages différentes. Le nombre maximum de renvois est de 42 renvois d’origine et de 42 renvois de destination. 1/8 1 Le langage Grafcet PL7-2 Rebouclage d’un graphe La saisie d’un rebouclage de graphe (liaison orientée vers le haut) s’effectue à l’aide de renvois. Dans l’exemple ci-contre le rebouclage de l’étape 2 vers l’étape 0 est symbolisé par les renvois suivants : Ø 2 : indique que l’on vient de l’étape 2 1 CØ1 CØØ LØØ 2 LØ1 Ø LØ2 1 LØ3 LØ4 0 : indique que l’on va vers l’étape 0 2 LØ5 2 Ø LØ7 Renvois lors d’une reprise de séquence La saisie d’une reprise de séquence dans une page ou sur deux pages différentes s’effectue à l’aide de renvois. LØØ 46 LØ1 Ø Ø L’exemple ci-contre montre une reprise de séquence de l’étape 3 vers l’étape 1. 1 : renvoi de destination indiquant que l’on va vers l’étape 1. CØ2 3 LØ2 1 LØ3 1 LØ4 2 LØ5 3 : renvoi d’origine indiquant que l’on vient de l’étape 3. CØ1 CØØ 46 C LØ6 2 LØ6 3 LØ7 3 LØ8 4 LØ9 1 4 L10 5 L11 5 L12 6 L13 6 1/9 Renvois lors d’un aiguillage et d’une fin d’aiguillage Les transitions et les renvois de destination LØØ 5 ( 23 et 24) situés au début de l’aiguillage doivent être dans la même page. LØ1 6 Page 1 LØ2 LØ3 7 LØ4 LØ5 8 LØ6 LØ7 C 9 LØ8 LØ9 1Ø L10 L11 11 L12 Les renvois d’origine : ( 12 et 11) doivent être dans la même page que les étapes de regroupement. L13 23 24 LØØ 12 11 LØ1 23 LØ2 LØ3 24 LØ4 LØ5 1/10 25 Page 3 1 Le langage Grafcet PL7-2 Renvois lors d’une activation et désactivation simultanées d’étapes L’étape et la transition de divergence ainsi que 28 L11 les renvois de destination ( 29, 35, 41) Page 4 doivent se trouver sur la même page. L12 Les étapes et la transition de convergence qui suit ces étapes doivent se trouver sur la même page que le renvoi de destination ( 46) L13 29 35 41 LØØ 28 28 28 LØ1 29 35 41 3Ø 36 42 31 37 43 32 38 44 33 39 45 34 4Ø LØ2 LØ3 C LØ4 LØ5 LØ6 LØ7 LØ8 LØ9 L10 L11 L12 Lorsque plusieurs étapes convergent sur une seule transition, le renvoi d’origine porte le numéro de l’étape situé la plus à gauche ( 34) L13 46 LØØ 34 LØ1 46 Page 5 LØ2 LØ3 Ø Page 6 1/11 1.5 Les étapes et actions associées 1.5-1 Les étapes • Nombre maximum d’étapes (y compris les étapes initiales) : 96 A chaque étape est associé un bit étape Xi avec : i : numéro d’étape (0 à 95) Xi = 0 si l’étape est inactive Xi = 1 si l’étape est active • Deux étapes ne peuvent jamais avoir le même numéro. • Nombre maximum d’étapes actives simultanément : 16 C 1.5-2 Les actions associées aux étapes Les actions associées aux étapes peuvent se programmer de deux façons : • soit par réseau de contacts associés à l’étape. Dans ce cas le réseau de contacts n’est scruté que si l’étape à laquelle il est associé est active. • soit dans le traitement postérieur par utilisation du bit étape Xi. Dans ce cas la scrutation a lieu à chaque cycle. Pour des raisons de sécurité (scrutation du programme), il est préférable que les actions soient écrites dans le traitement postérieur. Par réseau de contacts associé à l’étape Ce réseau de contacts permet la programmation de 4 actions maximum qui peuvent être de type continu, conditionnel ou temporisé. IL est automatiquement étiqueté et porte le numéro de l’étape à laquelle il est associé. Aucun saut de programme (JUMP) n’est possible dans ce type de réseau. Un commentaire de 15 caractères maximum peut être associé à chaque réseau de contacts. " A C T I ON S IØ,3 11 Action X B12 1 1 E TØ D C R E T A P E 1 1 O12 S B21 R W15+W16 → W17 12 Les actions peuvent être asservies ou non à des conditions logiques et sont saisies sous forme de bobines à l’enclenchement (SET). Toute bobine (SET) doit obligatoirement être remise à zéro par une bobine (RESET). Ces bobines peuvent être sauvegardées ou non. 1/12 1 Le langage Grafcet PL7-2 Les blocs fonction et blocs opération peuvent être programmés dans ce type de réseau. Toutefois le réseau de contacts n’étant scruté que si l’étape est active, il est impératif de créer un front montant pour piloter les blocs fonction possédant des entrées sur front (monostable, compteur,...) L’exemple ci-contre montre la programmation du bloc texte TXT0. Le bit B6 étant remis à 0 lors de l’étape précédente X0. Le bloc texte envoie le message dès que l’étape X1 est active et met à 1 le bit B6. " R EM I S E A Z E RO B 6 B6 R X Ø C " ME S S AGE X 1 D E F A U T B6 S B6 TXTØ WØ L=1Ø Dans le traitement postérieur : par utilisation du bit étape Xi. " T E S T X1 2 7 E T A P E S 1 . 5 O5.3 X5 1/13 1.5-3 Temps d’activité d’une étape C A chaque étape i est associé un temps d’activité (mot Xi,V) permettant de connaître la durée d’activité d’une étape. La valeur de ce temps peut être testée dans une action, une transition, ou dans le traitement postérieur à l’aide d’un bloc opération "comparaison". Ce temps d’activité Xi,V est mis à 0 sur : • désactivation de l’étape, • réinitialisation du grafcet (SY21 = 1), • reprise à froid (SY0 = 1), • remise à zéro du grafcet (SY22 = 1), • prépositionnement (SY23 = 1). Il est incrémenté toutes les secondes dès que l’étape est active et croît de 0 à 9999. Le temps d’activité d’une étape désactivée et activée simultanément continu à être incrémenté sans être remis à 0. Exemple d’utilisation Si le temps d’activité de l’étape 3 est supérieur à 15 secondes, activation de la sortie alarme O1,5. " A L A RME 2 7 1/14 X3,V>15s < O1,5 1 Le langage Grafcet PL7-2 1.6 Les transitions et les réceptivités associées 1.6-1 Les transitions • Nombre maximum de transitions : 128 • Nombre maximum de transitions validées simultanément : 24 1.6-2 Les réceptivités associées aux transitions A chaque transition est associé un réseau de contacts permettant de saisir la réceptivité. Seul les opérations de test sont possibles (contact, bloc opération comparaison). " X 1 1→X 1 2 IØ,5 IØ,7 IØ,D X 1 1 11 # X X5 12 B3 W4 > 15 12 Le réseau de contacts est automatiquement étiqueté et porte le numéro de l’étape "d’où l’on vient" (ex. X11). Le franchissement de la transition est symbolisé par une bobine portant le numéro de l’étape "où l’on va" (ex. X12). Cette bobine apparait systématiquement lors de la saisie. La scrutation de ce réseau n’est effective que si l’étape située en amont est active. Cas d’une activation simultanée # porte le numéro de l’étape aval la plus à gauche. Dans ce cas, la bobine " 4 IØ,5 X 1 1 2 # X 2 2Ø 1/15 C Cas d’une désactivation simultanée Dans ce cas l’étiquette du réseau de contacts porte le numéro de l’étape amont la plus à gauche. 3 " 3Ø B1Ø X 3 4 # X 4 1 C Cas d’une réceptivité toujours vraie " # X 7 X 5 Cas d’une réceptivité non écrite Le passage à l’étape suivante est impossible. Utilisation du temps d’activité d’une étape dans une réceptivité " T E S T X 1 1/16 X1,V>1Øs < E N V E L OP P E # X 2 X Organisation de la tâche maître Organisation de la tâche maître 2 Chapitre 2 Sous chapitre page 2.1 Description tâche maître 2/2 2.2 Le traitement préliminaire 2/3 2.3 Utilisation des bits système dans le traitement préliminaire 2/3 2.3-1 2.3-2 2.3-3 2.3-4 Initialisation du grafcet : SY21 Remise à zéro du grafcet : SY22 Prépositionnement du grafcet : SY23 Figeage d’une situation 2.4 Le traitement séquentiel 2.4-1 Caractéristiques 2.4-2 Principe d’évolution 2.5 Le traitement postérieur Ce chapitre se termine à la page 2/4 2/5 2/6 2/7 2/8 2/8 2/8 2/9 2/10 2/1 C 2.1 Description tâche maître Un programme écrit en langage grafcet comporte 3 traitements consécutifs : le traitement préliminaire, le traitement séquentiel et le traitement postérieur. Leur scrutation s’effectue selon le cycle de base suivant : C Gestion système Le système assure implicitement : • mise à jour des bits et mots système, • surveillance de l’automate • traitement des requêtes du terminal, • routage de la messagerie. Acquisition des entrées Acquisition de l’état physique des entrées de l’automate (valeurs figées pendant le traitement). Traitement préliminaire Il permet de traiter : • Les initialisations sur reprise secteur ou défaillance, • le prépositionnement du graphe, • les modes de marche de l’application, • la logique d’entrée. Traitement séquentiel Il permet de traiter l’ossature séquentielle de l’application et donne accès au traitement des réceptivités et des actions directement associées aux étapes. Gestion Système Acquisition des entrées Traitement Préliminaire Langage à contacts Traitement Séquentiel Grafcet Traitement Postérieur Langage à contacts Mise à jour des sorties Traitement postérieur Il permet de traiter : • la logique de sortie, • les surveillances et sécurités indirectes spécifiques aux sorties. Mise à jour des sorties mise à jour de l’état physique des sorties (valeurs figées pendant le traitement). Rappel : Les sauts de programme ne peuvent se faire qu’à l’intérieur d’un même traitement (préliminaire ou postérieur). Un réseau de contacts du traitement préliminaire et un réseau de contacts du traitement postérieur peuvent avoir la même étiquette. 2/2 2 Organisation de la tâche maître 2.2 Le traitement préliminaire Saisi en langage à contacts, le traitement préliminaire est scruté dans sa totalité du haut vers le bas. Exécuté avant les traitements séquentiel et postérieur, il permet de traiter tous les évènements ayant une influence sur ces derniers : • gestion des reprises secteur et réinitialisation, • demande de modes de marche • remise à zéro ou prépositionnement des graphes. C’est donc uniquement dans le traitement préliminaire que l’on agira sur les bits associés aux étapes (mise à 0 ou 1 des bits étapes Xi). Exemple : Ces actions réalisent un prépositionnement du grafcet. Formulaire programmation schéma à contacts B29 2.3 IT MAIN FAST SR C MAST PRE AUX POST ASY CHART XM X12 S X1Ø R X11 R SY23 S Utilisation des bits système dans le traitement préliminaire Les bits système associés au grafcet étant classés numériquement par ordre de priorité (SY21 à SY23), lorsque plusieurs d’entre eux sont simultanément mis à 1 dans le traitement préliminaire, ils sont traités un par un dans un ordre croissant (un seul est effectif par tour de scrutation). Ces bits sont effectifs au début du traitement séquentiel. Important : les bits système SY21, SY22 et SY23 étant remis à 0 automatiquement par le système, l’écriture de ces bits ne devra être faite que sous la forme de bobine SET. 2/3 2.3-1 Initialisation du grafcet : SY21 En présence d’un évènement particulier (défaut de processus, traitement d’un arrêt d’urgence,..), il peut être nécessaire d’effectuer une initialisation du grafcet par la mise à l’état 1 dans le traitement préliminaire du bit système SY21. Normalement à l’état 0, la mise à l’état 1 provoque : • La désactivation des étapes actives, • l’activation des étapes initiales. Mis à l’état 1 C Mis à l’état 0 • Par mise à l’état 1 de SY0 • Par le programme utilisateur • Par initialisation (INIT) du terminal • Par le système au début du traitement séquentiel Utilisation • Doit être écrit à 1 uniquement dans le traitement préliminaire • Géré par le système, il est interdit de le remettre à 0 par le programme ou le terminal. Exemple Le programme ci-dessous montre l’initialisation du grafcet , provoqué par un évènement extérieur (I0,6). Dans le grafcet cela se traduit par l’activation de l’étape initiale 1. 4 1 " I N I T I A L I S A T I ON IØ,6 2 2Ø 3 3Ø 4 1 2/4 2 7 SY21 S 2 Organisation de la tâche maître 2.3-2 Remise à zéro du grafcet : SY22 Provoqué par la mise à l’état 1 du bit système SY22, la remise à zéro du grafcet entraine la non scrutation de celui-ci par l’automate; seuls les traitements préliminaire et postérieur sont éxécutés. Normalement à l’état 0, la mise à l’état 1 de SY22 provoque la désactivation des étapes actives de l’ensemble du traitement séquentiel. Mis à l’état 1 Mis à l’état 0 • Par le programme utilisateur • Par le système au début du traitement séquentiel Utilisation • Doit être écrit à 1 uniquement dans le traitement préliminaire • Géré par le système, il est interdit de le remettre à 0 par le programme ou le terminal. Pour redémarrer le traitement séquentiel dans une situation donnée, l’utilisateur devra prévoir selon son application une procédure d’initialisation ou de prépositionnement du grafcet. Exemple Le programme ci-dessous montre la remise à zéro générale du grafcet provoquée par un évènement (I4,3). Dans le grafcet cela se traduit par la désactivation de la totalité des étapes. 4 1 " R EM I S E I4,3 2 2Ø 3 3Ø 1 A Z E RO SY22 S 4 1 2/5 C 2.3-3 Prépositionnement du grafcet : SY23 Il peut être nécéssaire de prépositionner un grafcet dans une situation différente de la situation initiale lors du passage d’un fonctionnement marche normale en marche spécifique ou de l’apparition d’un incident (exemple : défaut provoquant une marche dégradée). Normalement à l’état 0, la mise à l’état 1 de SY23 provoque la validation du prépositionnement du graphe. Mis à l’état 1 Mis à l’état 0 • Par le programme utilisateur C • Par le système au début du traitement séquentiel Le prépositionnement intervenant sur le déroulement normal du cycle de l’application, il doit donc être effectué avec précaution. Il est alors nécessaire de procéder de la manière suivante : • Remettre éventuellement à 0 la totalité du grafcet par le bit système SY22. • Prépositionner les étapes à activer ou désactiver (ex. SET Xi ou RESET Xi). • Valider impérativement le prépositionnement par le bit système SY23. Exemple Le programme ci-dessous montre la remise à 0 du graphe (SY22) sur un front montant de I0,6. Le bit système SY22 est remis à 0 par l’automate. Une action sur I0,7 provoque l’activation des étapes 3 et 20 et la validation du prépositionnement par le bit SY23. La validation doit être obligatoirement réalisée après les opérations de prépositionnement (SET de SY23); ce bit est remis systématiquement à 0 par le système. Dans le grafcet cela se traduit par la désactivation de toutes les étapes et l’activation des étapes 3 et 20. " 1 1 2 2Ø 3 3Ø " F ORC AGE BØ SY22 IØ,7 2 4 1 2/6 SY22 S BØ S IØ,6 BØ 4 A P R E S D E P A R T C Y C L E X3 S X2Ø S SY23 S BØ R Organisation de la tâche maître 2 2.3-4 Figeage d’une situation Figeage du graphe en situation initiale Le maintien du bit SY21 à l’état 1 permet de figer le graphe en position initiale; dans ce cas aucune évolution du graphe n’est possible. Figeage du graphe dans une situation vide Le maintien du bit SY22 à l’état 1 permet de figer le graphe dans une situation vide; dans ce cas aucune étape n’est active Figeage du graphe dans une situation donnée Le maintien du bit SY23 à l’état 1 permet de figer le graphe dans une situation donnée; aucune évolution du graphe n’est alors possible. C 2/7 2.4 Le traitement séquentiel 2.4-1 Caractéristiques Ce traitement permet d’une part de définir la structure séquentielle de l’application et d’autre part son interprétation (définition des réceptivités associées aux transitions et des actions associées aux étapes). Il comprend le graphe principal organisé en 8 pages avec 96 étapes et 128 transitions maximum. Au sein du graphe principal, plusieurs grafcet non connexes peuvent être programmés et se dérouler simultanément.` C 2.4-2 Principe d’évolution L’automate tient à jour en permanence une table des étapes actives à un instant donné puis effectue les opérations suivantes dans l’ordre indiqué ci-dessous : étape n°95 Table des étapes actives étape n°2 étape n°1 étape n°0 1 - - - - - 1 0 1 0 0 1 0 0 Détermination de toutes les transitions validées. Table des transitions validées 1 - - - - - 1 0 1 0 0 1 0 0 Test de l’ensemble des réceptivités associées aux transitions validées. Résultat des réceptivités 0 - - - - - 0 0 0 0 0 1 0 0 Si la condition de transition est vraie : activation de l’étape aval, désactivation de l’étape amont et mise à jour de la table des étapes actives. Exécution des actions associées aux étapes actives dans l’ordre croissant de leur numéro. Remarques • L’état des entrées est stable pendant toute la durée de l’interprétation. • Le fonctionnement de la tâche rapide en association avec une tâche maître écrite en langage grafcet est décrit dans "Généralités PL7-2 - intercalaire A - chapitre 5" 2/8 2 Organisation de la tâche maître 2.5 Le traitement postérieur Saisi en langage à contacts, le traitement postérieur est scruté de haut en bas . Ce traitement est le dernier exécuté avant l’activation des sorties et permet de programmer la logique de sortie : • Définition des actions associées ou non à des étapes, • Gestion des sécurités inhérentes à ces actions (prise en compte d’un arrêt d’urgence, capteur de surcourse), • Gestion des fonctions d’automatisme (temporisateur, compteur,..) Formulaire programmation schéma à contacts IT MAIN FAST SR MAST PRE AUX POST ASY CHART XM C I2,4 X5 O11,3 X8 X59 B26 I1,Ø Actions associées au grafcet L’activité d’une étape du grafcet peut être testée à l’aide d’un contact dans le traitement postérieur afin de piloter les actions associées. Ceci permet d’assurer l’unicité de la commande (une seule bobine commandée par plusieurs étapes). De même le traitement postérieur permet de compléter les consignes émises par le traitement séquentiel en intégrant à l’équation d’une sortie les modes de marche et d’arrêt et les sécurités indirectes à l’action. Exemple I2,4 : sécurité indirecte spécifique au pilotage de la sortie O11,3. B26 : bit interne résultat de la logique d’entrée traitant des modes de marche et d’arrêts. I1,0 : bouton poussoir D’une manière générale il est recommandé de programmer les actions agissant directement sur le process dans le traitement postérieur. 2/9 Actions indépendantes du grafcet Le traitement postérieur permet également de programmer les sorties indépendantes du traitement séquentiel. L’exemple ci-contre montre la commande de la bobine O3,B si le bit d’entrée I2,3 est à 0 et si le bit interne B5 est à 1. " S E CUR I T E S O3,B I2,3 B5 2 1 C Remarque Les capteurs concernant la sécurité directe ne doivent en aucun cas être traités en direct par l’automate mais doivent agir directement sur les pré-actionneurs comme le fait un arrêt d’urgence qui coupe le contacteur principal. Il est toutefois nécessaire de transmettre ces informations à l’automate afin de les prendre en compte dans le traitement de l’automatisme. Contrôle de l’exécution du grafcet Dans certaines applications, il peut s’avérer nécessaire de contrôler le bon déroulement du grafcet en testant le temps d’activité de certaines étapes. Le test de ce temps d’activité s’effectue par comparaison soit à une valeur minimum soit à une valeur maximum définie par l’utilisateur. L’exploitation du défaut est laissée au choix de l’utilisateur (signalisation, procédure particulière de fonctionnement, édition de messages). L’exemple ci-contre montre la comparaison du temps d’activité de l’étape 1 à une valeur définie par l’utilisateur (10s) et la signalisation d’un défaut à l’aide d’un bit de sortie O1,1. " T E S T 1 4 X1,V>10s < E N V E L OP P E O1,1 Règles pratiques • Une sortie ne doit pas être commandée simultanément dans le traitement séquentiel et le traitement postérieur. • Une sortie ne doit pas être commandée plusieurs fois dans le traitement postérieur. • Il est impossible d’effectuer un saut de programme (JUMP) d’un traitement à un autre. 2/10 X Aide à l'exploitation Chapitre 1 2 Intercalaire D Page Organisation des programmes application 1/1 1.1 Traitement analogique 1/2 1.2 Fonction communication 1/2 1.3 Tâche rapide 1/3 Traitement des modes de marche et d’arrêt 2/1 2.1 Le guide GEMMA 2/2 2.2 Structure des automates de la série TSX 7 2/4 2.3 Analyse des modes de marche et d’arrêt 2/7 2.4 Structuration du traitement préliminaire 3 2/7 2.5 Grafcet complet 2/12 Aide au diagnostic 3/1 3.1 Comportement des sorties en cas de disfonctionnement automate 3/2 4 3.2 Diagnostic des défauts 3/3 3.3 Traitement des défauts d’entrées/sorties 3/4 Fonctions spécifiques au TSX 17-20 4.1 Protection des programmes des cartouches EPROM et EEPROM 4/2 4.2 Configuration des entrées/sorties spécifiques 4/3 4.3 Modules de visualisation 4/4 4/1 1 D D 2 X Organisation des programmes application 1 Organisation des programmes application Chapitre 1 Sous chapitre Page 1.1 Traitement analogique 1/2 1.2 Fonction communication 1/2 1.3 Tâche rapide 1/3 Ce chapitre se termine à la page 1/4 D 1/1 Cahier des charges, analyse et structuration d’un automatisme sont les garants de la réussite de la mise en route et de l’exploitation d’une installation pilotée à partir d’automates programmables. Chaque fonction doit être dissociée des autres, et sa spécificité va définir ses entrées/sorties éventuellement affectées. 1.1 Traitement analogique Utilisé généralement dans les processus de régulation, ce type de traitement est caractérisé par sa "lenteur" et sa périodicité. Les coupleurs adaptés à ce type de traitement sont : • les interfaces d'entrées/sorties analogiques TSX ADT./AST 200 pour TSX 47–J/ /10/20. • les coupleurs analogiques TSX AEM./ASR., pour TSX 47-20, • les modules d'entrées/sorties analogiques TSX AEG/ASG, pour TSX 17–20. D 1.2 Fonction de communication La communication automate ↔ périphérique s’effectuent : • soit par l'intermédiaire de la prise terminal, • soit par l'intermédiaire de liaisons séries. Elle permet généralement : • l’échange d’un nombre important de données, • le dialogue avec un opérateur par un écran-clavier. Dans le premier cas, l’échange dure quelque centaine de millisecondes (voir exemple ci-après). Dans le second type d’application la réponse d’un opérateur est de l’ordre de la seconde. Exemple d’envoi de message Soit un message de 200 caractères à émettre à la vitesse de 9600 bits par seconde dont les données ont le format suivant : • 1 bit de start, 8 bits de données, 1 bit de parité et 1 bit de stop (total = 11 bits). Le temps d’émission vaut : 200*11 : 9600*1000 = 230ms. Les coupleurs adaptés à ce type de fonction sont : • les coupleurs TSX SCM (modules liaisons asynchrones), pour TSX 47-20, • le coupleur TSX SCG 113 (module communication chaîne de caractères), pour TSX 17-20. Ces coupleurs ou modules gèrent les échanges de manière autonome. Seuls leur configuration et la programmation des messages restent à la charge de l’utilisateur. 1/2 Organisation des programmes application 1.3 1 Tâche rapide La création d’une tâche rapide est nécessaire si des évolutions rapides d’entrées tout ou rien doivent être surveillées. Des modules d’entrées/sorties vont être affectés à cette tâche. Le traitement dans cette tâche doit être le plus court possible. Par exemple, une série de conditions et de tests dont les éléments sont mis à jour ou calculés en tâche maître (donc à fréquence plus faible) ne doivent figurer que sous forme d’un résultat représenté par l’état d’un bit interne. De la sorte, le temps d’exécution de la tâche rapide est beaucoup plus faible. Conclusion Les remarques mentionnées ci-dessus amènent ainsi à définir des ordres de grandeur pour les périodes de tâches : • tâche rapide • tâche maître 1 à 2 ms, 40 à 80 ms (déclenchement du "chien de garde" à 150 ms). D 1/3 D 1/4 X Traitement des Modes de Marches et d'Arrêts 2 Traitement des Modes de Marches et d'Arrêts Chapitre 2 Sous chapitre 2.1 Le Guide GEMMA 2.1-1 Introduction 2.1-2 Grille simplifiée 2.2 Structure des automates de la série TSX7 2.2-1 2.2-2 2.2-3 2.2-4 Structure multitâche Structure de la tâche maître Bits système Bits et mots associés aux étapes GRAFCET Page 2/2 2/2 2/3 2/4 2/4 2/5 2/6 2/6 2.3 Analyse des modes de marches et d’arrêts 2/7 2.4 Structuration du traitement préliminaire 2/7 2.4-1 2.4-2 2.4-3 2.4-4 Traitement suite à une mise sous tension Traitement suite à un changement de mode Organigramme du traitement préliminaire GRAFCET de Conduite 2/8 2/10 2/11 2/12 2.5 GRAFCET Complet 2/13 Ce chapitre se termine à la page 2/14 2/1 D 2.1 Le guide GEMMA 2.1-1 Introduction Le GEMMA ("Guide d’Etude des Modes de Marches et d’Arrêts", proposé par l’ADEPA), est une méthode qui permet, dès l’élaboration du cahier des charges, de définir les différents modes de fonctionnement. Cette méthode, encore peu utilisée, apporte de nouveaux concepts, définit un vocabulaire précis et propose une visualisation graphique. Ce guide permet d’effectuer : • le recensement des différents modes envisagés, • la détermination des conditions provoquant le passage d’un mode à l’autre. Il ne permet pas de passer à la phase de réalisation, c’est à dire transcription en langage automate. GEMMA Guide d'Etude des Modes de Marches et d'Arrêts A-Procédures d'Arrêt et de Mise en Route P.C. Hors Energie D Mise en énergie remise en route arrêt Mise P.O dans état initial Arrêt dans état initial de P.C. Mise P.O dans état déterminé Production Mise hors énergie de P.C. Arrêt obtenu Préparation pour remise en route après défaillance Arrêt demandé en fin de cycle Arrêt demandé dans état déterminé Marches de préparation Marches de clôture Production normale Mise en énergie de P.C. Diagnostic et/ou traitement de défaillance Marches de vérification dans l'ordre Production tout de même Production Mise hors énergie Marches de vérification dans le désordre Marches de test Marche ou arrêt err vue d'assurer la sécurité de P.C. fonctionnement normal D-Procédures en Défaillance de la Partie Opérative essais et vérif. F-Procédures de Fonctionnement Afin de répondre à ces besoins, et dans l’esprit des concepts de ce guide, Telemecanique propose, pour les automates de la série TSX7 : • une grille simplifiée (voir page ci-contre), • une structure d’accueil spécifique (voir chapitre 2.2-1), • une démarche conduisant à la structure du programme traitant des modes de marches et d’arrêts (voir chapitres 2.2-2 à 2.2-4). 2/2 Traitement des Modes de Marches et d'Arrêts 2 2.1-2 Grille simplifiée Etablie à partir du guide GEMMA, la grille ci-dessous retient les principaux modes de marches et d’arrêts pris en compte par l’automate et se veut volontairement simplifiée par rapport aux rectangles des différents états pris par l’automatisme. Trois grandes familles sont à distinguer : • Vérifications, • Marches, • Arrêts. Une fois les modes retenus, il faut alors détailler l’analyse jusqu’à définir les causes voulues ou subies provoquant le passage d’un mode à un autre. La mise sous tension de l’automate étant un cas particulier à examiner. En fonction des causes, le mode en cours peut être abandonné pour passer dans un autre mode, il y a donc action sur le déroulement du traitement séquentiel. Le vocabulaire utilisé est celui qui figure dans le guide GEMMA, la définition des principaux termes employés est rappelée en annexe. D Automate Hors Energie VERIFICATIONS MARCHES ARRETS Marche de préparation Vérification dans l'ordre Vérification dans le désordre Marche de production normale Marche de cloture Arrêt sur incidents Arrêt normal Marche dégradée 2/3 2.2 Structure des automates de la série TSX7 2.2-1 Structure multitâche Afin de pouvoir traiter de façon optimale l’ensemble des besoins en automatismes (mesure, régulation, dialogue, communication, commande séquentielle), les automates TSX7 sont structurés en un système multitâche (bitâche dans le cas des TSX 17-20/27/47 : tâche maître et tâche rapide). A la mise sous tension de l’automate, la seule tâche utilisateur active est la tâche maître. C’est cette tâche qui est dédiée à la gestion du traitement séquentiel et aux changements de modes de fonctionnement. Traitement Préliminaire D Traitement Rapide Traitement Séquentiel Traitements Spécialisés Traitement Postérieur Tâches Rapide TSX7 Tâche rapide Tâches Auxiliaires Tâches Maître Automates séquentiels Langages PL7-1 et PL7-2 Automates Multifonctions Langage PL7-3 "Système bitâche" "Système multitâche" 1 1 Tâche maître 1 1 Tâches auxiliaires 0 de 1 à 4 2/4 Traitement des Modes de Marches et d'Arrêts 2 2.2-2 Structure de la tâche maître Destinée principalement à la commande séquentielle, lors de l’utilisation du GRAFCET, la tâche maître se structure en trois parties, facilitant la gestion de l’automatisme et de ses modes de marches. Le traitement Préliminaire Effectué en début de la tâche maître, après la mise à jour de la mémoire image des entrées, le traitement préliminaire est exécuté à chaque tour de cycle et permet de traiter : • les initialisations sur reprise secteur ou défaillance, • la prise en compte de l’analyse d’une demande de changement de mode de marche (prédisposition ou action sur les graphes), • la logique d’entrée (traitement combinatoire du programme application). Le traitement Séquentiel Permet la transcription graphique et la gestion des GRAFCET. Il donne accès au traitement des réceptivités associées aux transitions et des actions directement associées aux étapes. Seules les étapes actives et le traitement qui leur est associé sont scrutés. Tâche Maître Traitement Préliminaire Traitement Séquentiel D Traitement Postérieur Le traitement Postérieur Scruté en fin de la tâche, avant la mise à jour de l’état physique des sorties, ce traitement est exécuté à chaque tour de cycle et permet de traiter la logique de sortie avec prise en compte : • de l’ensemble des ordres émanant des deux traitements précédents, • des sécurités indirectes spécifiques aux sorties. A cette structure d’accueil, pour le traitement des modes de marches, il est important aussi d’y associer les moyens dont sont dotés les automates TSX 7 pour agir sur le déroulement du traitement séquentiel (bits et mots système accessibles par programme utilisateur). 2/5 2.2-3 Bits système Afin de traiter les mises sous tension, les changements de modes, les actions sur le graphe, l’utilisateur dispose d’informations fournies par le système et définies dans des bits (SY0, SY1, SY21, SY22 et SY23). Ces bits doivent être exploités dans le traitement préliminaire. L’écriture de ces bits doit être faite uniquement par "bobines : SET" (S). Ils sont remis à 0 automatiquement par le système. 2.2-4 Bits et mots associés aux étapes GRAFCET A chaque étape GRAFCET programmée, est associé un bit Xi reflet de l’état de l’étape. Ce bit est mis à jour en même temps que les tables GRAFCET, pendant le traitement séquentiel. Puis il est pris en compte dans les équations pilotant les sorties dans le traitement postérieur, ou dans tout autre opération se déroulant dans le programme application. D Ces bits sont accessibles : • en lecture (test), dans toute entité du programme application, • en écriture (action), uniquement dans le traitement préliminaire afin d’assurer une mise à jour des tables dans le même tour de cycle. A chaque étape GRAFCET est associé aussi un mot Xi,V contenant le temps d’activité de l’étape, en secondes. 2/6 2 Traitement des Modes de Marches et d'Arrêts 2.3 Analyse des modes de marches et d’arrêts Le logiciel PL7-2 permet la prise en compte des trois grandes familles de modes de marches et d’arrêts définies par le GEMMA (voir page 2/3) : • Vérifications, • Marches, • Arrêts. Ces différents modes peuvent être obtenus à partir du GRAFCET, par les actions suivantes : • Initialisation du GRAFCET, • Prépositionnement d’étapes, • Maintien de situation, • Gel de graphes. L’utilisation du traitement préliminaire et des bits système permet d’assurer la gestion de modes de marches et d’arrêts, sans compliquer ni alourdir le programme utilisateur. D 2.4 Structuration du traitement préliminaire Le synoptique ci-contre montre la structure à donner au préliminaire afin d’effectuer par ordre d’importance chaque traitement en cas de : • Mise sous tension, • Changement de modes de marches. La logique d’entrée est le traitement combinatoire du programme application, effectué en préliminaire. Début du préliminaire Mise sous tension initialisation OUI NON Traitement Demande de changement de modes OUI NON Traitement Logique d'entrée Fin du préliminaire 2/7 2.4-1 Traitement suite à une mise sous tension Deux modes sont à analyser et traiter : • Reprise à froid : redémarrage de l’automate avec perte du contenu de la mémoire de données. Le système met le bit SY0 à 1 et effectue automatiquement une initialisation du GRAFCET (SY21=1). • Reprise à chaud : redémarrage de l’automate avec le contenu de la mémoire de données en état. Dans ce cas, l’installation peut nécessiter un redémarrage : - sur état initial, - sur l’état présent avant la coupure secteur, - sur d’autres états du graphe. Le traitement doit contenir le test de l’état de SY21 (défini par le programme utilisateur) et ensuite prendre en compte le comportement désiré (initialisation, maintien de situation, prépositionnement, gel de graphes). L’analyse des bits système conduit à l’élaboration de l’organigramme cidessous. Début du préliminaire D Bit Système SY0 OUI NON Mise sous tension initialisation Bit Système SY1 OUI OUI NON Traitement NON Bit Système SY21 Analyse du contexte (mise à 1 bit drapeau B2) Fin du préliminaire 2/8 OUI Initialisation Graphe (mise à 1 bit drapeau B1) 2 Traitement des Modes de Marches et d'Arrêts Le tableau ci-dessous décrit le comportement vis à vis du GRAFCET, suivant l’état du bit SY21 (défini par programme utilisateur). Etat SY21 (défini par programme) Comportement vis à vis du GRAFCET (Actions nécessaires) Initialisation Prépositionnement Maintien de Situation Gel de Graphe • Mémorisation de la demande par bit drapeau Bi SY21 = Ø SY21 = 1 • Mémorisation de la demande par bit drapeau Bi • SET SY22 • SET (Xi,SY23) - - - • SET SY23 - D 2.4-2 Traitement suite à un changement de mode Les procédures sont spécifiques à chaque application, mais au niveau du traitement séquentiel, elles se résument comme suit : • Remise à l’état initial, • Remise à zéro du graphe principal, • Prépositionnement d’étapes. La démarche présentée pour la mise sous tension peut être reconduite pour les modes de marches ou d’arrêts (voir organigramme page suivante) : • Mémorisation par bits "drapeau" Bi, • Action sur bits système, • Action sur étapes. 2/9 Traitement suite à un changement de mode (suite) Traitement Demande de chargement de modes OUI NON Traitement Demande Arrêt ou Marche dégradée OUI Prise en compte : • des fonctionnements suite à un incident, • des arrêts. D Arrêt normal OUI Production encore possible OUI Procédure de marche dégradée Procédure d'arrêt sur incident Demande changement de mode de marche B5 OUI Production nécessaire Vérification dans l'ordre Procédure de vérification dans le désordre B10 2/10 Procédure d'arrêt sur état déterminé B4 Prise en compte : • des changements de modes. B3 OUI Marche permanente OUI Mise en production OUI Procédure de marche de cloture Procédure de marche de préparation OUI Procédure de vérification dans l'ordre B9 B8 B7 Procédure de production normale B6 2 Traitement des Modes de Marches et d'Arrêts 2.4-3 Organigramme du traitement préliminaire La synthèse des traitements suite à une mise sous tension et/ou un changement de mode de marche conduit à l’organigramme ci-dessous, pour le traitement préliminaire. Début du préliminaire SY0 Initialisation OUI NON SY1 OUI SY21 NON Prise en compte des demandes d'arrêts de changement de modes : • mémorisation par bit drapeau Bi • Action sur SY Arrêt ou marche dégradée ? NON Changement de mode NON SY22 Set B1 D OUI OUI NON NON Traitement combinatoire du préliminaire (programme application) Set B2 action sur SY.. NON SY23 Actions sur le graphe suite à l'action sur SY.. et à l'analyse des contextes définis par Bi Set Bi action sur SY.. Set Bj action sur SY.. SY21 Inhibition du traitement combinatoire lors du premier tour de cycle, s'il y a eu action sur SY21, SY22 ou SY23 NON OUI Test des bits drapeaux B1, B2, ..., Bi, ..., Bj B.? OUI Action de prépositionnement du graphe sur Xi Raz drapeau : Bi (i=1,... j) NON Logique d'entrée Fin du préliminaire 2/11 2.4-4 GRAFCET de Conduite L’analyse des modes de marches et d’arrêts, établie lors de l’élaboration du cahier des charges, peut être transcrite dans le programme application par un GRAFCET graphique appelé: GRAFCET de Conduite. Ce dernier vient s’ajouter au GRAFCET de l’application, appelé: GRAFCET de Production Normale. 0 10 11 20 30 12 21 22 D 23 31 Vérifications Marches X10 : Vérification X20 : Production X30 : Arrêt X11 : Marche vérification dans le désordre X12 : Marche vérification dans l'ordre X21 : Marche transitoire X22 : Marche production normale X23 : Marche dégradée X31 : Arrêt sur incident X32 : Arrêt normal 32 Arrêts Les marches de préparation et de clôture, dans le cas où l’ensemble des modes retenus sont utilisés, apparaîssent regroupées sous la dénomination "Marche transitoire" (X21). Le passage d’un mode à un autre entraîne la désactivation de l’étape en cours et l’activation de l’étape correspondant au nouveau mode (les réceptivités associées aux transitions sont définies par les bits "drapeaux" Bi). 2/12 2 Traitement des Modes de Marches et d'Arrêts 2.5 GRAFCET Complet Répondant au cahier des charges, le GRAFCET Complet définit le comportement de l’application ou de l’automatisme. Il comprend : • Le GRAFCET de Sûreté (GS) : maître par rapport aux autres GRAFCET, il est consacré à la surveillance de la sûreté en signalant tout incident. • Le GRAFCET de Conduite (GC) : intégrant les dispositions précisées par le GEMMA. • Le GRAFCET de Production Normale (GPN): ou GRAFCET de l’application. Action de GS sur GC L’évolution de ces GRAFCET doit obéir à des règles de hiérarchie définies dans le préliminaire, lors de l’analyse et de l’élaboration des ordres de prépositionnement. GRAFCET de CONDUITE GRAFCET de SURETE Action de GS sur GPN D Action de GC sur GPN GRAFCET de PRODUCTION NORMALE 2/13 D 2/14 X Aide au diagnostic Aide au diagnostic Sous chapitre 3 Chapitre 3 Page 3.1 Comportement des sorties en cas de dysfonctionnement automate 3/2 3.1-1 Définition 3.1-2 Comportement des sorties 3/2 3/2 3.2 Diagnostic des défauts 3/3 3.3 Traitement des défauts d’entrées/sorties 3/4 3.3-1 Défauts sur les modules TOR 3.3-2 Traitement 3.3-3 Cas d’un coupleur intelligent (pour TSX 47-20) Ce chapitre se termine à la page 3/4 3/4 3/4 3/6 3/1 D 3.1 Comportement des sorties en cas de dysfonctionnement automate 3.1-1 Définition Il y a disfonctionnement automate lorsque celui-ci n’est plus en mesure d’assurer l’exécution normale de son programme. L’origine de dysfonctionnement peut provenir du bac configuration (ou module) de base ou d’un bac (ou module) d’extension. L’origine peut être : • un défaut automate; défaut mémoire (MEM) ou défaut processeur (CPU), • un débordement tâche : déclenchement du "chien de garde", • un point d’arrêt effectif, demandé par le terminal en mode MISE AU POINT, • une coupure secteur ou défaut d’alimentation sur la base ou une extension. 3.1-2 Comportement des sorties D En cas de disfonctionnement, le système réagit par sécurité sur les sorties, en fonction du positionnement du bit système "sécurité des sorties" : SY8, effectué par l’utilisateur. Positionnement de SY8 Comportement des sorties sur disfonctionnement SY8 = 1 Remise à zéro des sorties SY8 = 0 Les sorties restent dans l’état Sur disfonctionnement d’un module ou bac d’extension, seules les sorties du module ou bac concerné sont influencées. Le programme est toujours exécuté (RUN). 3/2 Aide au diagnostic 3.2 3 Diagnostic des défauts d’entrées/sorties En cas de dysfonctionnement, des bits systèmes spécifiques permettent d’établir un diagnostic par programme ou par le terminal (en mode REGLAGE). Ces bits sont : • SY10 "défaut entrées/sorties", mis à l’état 0 sur défaut. Le voyant I/O de la base est également allumé. • Bits "STATUS" : S, mis à 1 sur défaut du module d’entrées/sorties correspondants et entraînant la mise à 0 de SY10. TSX 17-20 Il possède 8 bits de Status pour chaque module. • Si,0=1 (ou Si) somme logique des défauts sur le module ou défaut de configuration, • Si,1=1 défaut tension capteur (entrées/sorties T.O.R.), défaut d’alimentation (entrées analogiques), ou défaut d’alimentation extérieure (sorties analogiques), • Si,2=1 défaut d’échange interne (entrées/sorties T.O.R.) ou problème de convertisseur (module analogique), • Si,3=1 défaut de court-circuit sur les sorties statiques, • Si,4=1 défaut d’alimentation interne des sorties relais (défaut 12V), • Si,6=1 défaut d’accès module (entrées/sorties T.O.R. ou analogiques), • Si,5 et Si,7 non utilisés. Après avoir supprimé l’origine du défaut, si le voyant I/O reste allumé et si SY10 reste à 0, provoquer une initialisation par le terminal. TSX 27 Uniquement pour sorties statiques • Oy,S=1 court-circuit ou surcharge sur l’une des sorties du module de l’emplacement y. TSX 47-J/47-10/47-20 Ils possèdent 1 bit status par module. • Ixy,S=1 Défaut d’échange avec le processeur, module absent, configuration module erronée, bornier absent ou ouvert. Cas du TSX DET 4 66 : contrôle supplémentaire de court-circuit. Cas du TSX DET 32 12: contrôle supplémentaire de présence de l’alimentation des entrées. • Oxy,S=1 Défaut d’échange avec le processeur, module absent, configuration module erronée, surintensité sur une sortie ou défaut fusible, bornier absent ou ouvert. Cas du TSX DST 4 17 : contrôle supplémentaire d’alimentation externe. Remarque : Ces bits sont remis à leur état initial par le système, dès la disparition du défaut. 3/3 D 3.3 Traitement des défauts d’entrées/sorties 3.3-1 Défauts sur les modules TOR Un module d’entrées/sorties TOR est déclaré en défaut sur : • défaut d’échange avec le processeur, • configuration matérielle non conforme à la configuration logicielle ou absence module, • bornier en cours de débrochage ou absent (sur TSX 47), • surintensité • module non alimenté (TSX DET 3212). Dans l’un de ces cas, hors surintensité : • le module est retiré de la table des échanges avec le processeur, • pour un module d’entrées; mise à 0 des bits image dans la mémoire bits (TSX 27/ 47 uniquement), • pour un module de sorties; forçage à 0 des sorties du module (si SY8=1), les bits image de la mémoire bits restant dans l’état, • les bits status sont mis à 1, SY10 à 0 et le voyant I/O de la base allumé. D Sur surintensité, seul le dernier point cité ci-dessus est exécuté avec mise à 0 de la voie en défaut : une voie en défaut est sans effet sur les autres voies du même module. 3.3-2 Traitement Lors de l’apparition d’un défaut sur un des modules d’entrées/-sorties, une procédure de traitement peut être effectuée afin de localiser rapidement le ou les modules responsable(s) de ce défaut. Ceci afin d’agir par programme pour : • provoquer une marche dégradée, lancer un cycle de dégagement, etc, • renseigner l’exploitant du processus sur le module en cause. 3.3-3 Cas d’un coupleur intelligent (pour TSX 47-20) La procédure d’analyse est identique à celle d’un module d’entrées/sorties TOR. Si l’on désire analyser l’ensemble des défauts coupleurs il est nécessaire de tester en plus les bits Ixy,S, les bits IWxy,0,7 de chaque coupleur. En effet, plusieurs catégories de défauts sont à distinguer (voir manuels de mise en oeuvre de chaque coupleur). 3/4 Aide au diagnostic 3 Exemples Défaut "bloquant" Ce défaut correspond à une configuration non conforme, à un défaut de l’unité de traitement du coupleur ou à un défaut d’échange. Le coupleur se met en arrêt exécution . Le processeur le retire de la table des échanges, les bits et les mots correspondants sont mis à 0. Défaut coupleur Ce défaut correspond à un défaut des circuits d’acquisition ou d’adaptation ou bornier débroché. Le processeur automate met le coupleur en STOP. Les échanges sont alors figés, les bits et les mots correspondants conservent la valeur qu’ils avaient au moment de la mise en STOP. Défaut application Ce défaut correspond au contrôle assuré par le coupleur vis-à-vis des capteurs ou préactionneurs qui lui sont directement connectés. Le coupleur reste en RUN. D 3/5 D 3/6 X Fonctions spécifiques au TSX 17-20 Fonctions spécifiques au TSX 17-20 4 Chapitre 4 Sous chapitre Page 4.1 Protection des programmes des cartouches EPROM et EEPROM 4/2 4.2 Configuration des entrée/sortie spécifiques 4/3 4.2-1 Configuration de l’entrée de commande RUN/STOP 4.2-2 Configuration de la sortie SECURITE 4.3 Modules de visualisation 4.3-1 4.3-2 4.3-3 4.3-4 Principe Module de visualisation standard Module de visualisation numérique TSX 17 ACC2 Exemple de programmation Ce chapitre se termine à la page 4/3 4/3 4/4 4/4 4/4 4/5 4/5 4/6 4/1 D 4.1 Protection des programmes des cartouches EPROM et EEPROM Les programmes contenus dans les cartouches mémoire EPROM et EEPROM peuvent être protégés, durant leur sauvegarde, contre les relectures et les modifications. Pour cela, il suffit, lors du transfert RAM vers cartouche (à partir du terminal) de sélectionner l’option "Protection" (PROTECT). Un programme protégé est uniquement exécutable à partir de la RAM. Il n’est plus accessible à la lecture ni à la modification. Ce programme reste cependant accessible aux multiples duplications sur d’autres RAM de TSX 17-20. Le verrouillage contre les duplications consiste à rendre un programme exécutable, uniquement si la cartouche qui le contient est enfichée en face avant de l’automate, lorsque ce dernier est en RUN. L’opération de verrouillage s’effectue par programme. Elle consiste à écrire au début du préliminaire le réseau de contact ci-dessous. " JMP2 D 1 " JMP1 2 COMP COMP : si SW17 <> SW18 alors JMP LAB1 Si le contenu de SW17 est différent de celui de SW18, le processeur effectuera des sauts du label 2 vers le label 1, jusqu'à déclenchement du "chien de garde" (temps d'exécution programme supérieure à 150ms). Un programme utilisateur protégé et verrouillé devient inviolable. Ainsi il est possible de disposer d’un "progiciel" par application. 4/2 Fonctions spécifiques au TSX 17-20 4.2 4 Configuration des entrée/sortie spécifiques L’entrée I0,0 et la sortie O0,0 du TSX 17-20 peuvent être chacune affectées à un rôle spécifique. 4.2-1 Configuration de l’entrée de commande RUN/STOP I0,0 : entrée de commande RUN/STOP. Elle permet d’accéder directement au moyen d'un interrupteur raccordé, à la mise en RUN ou STOP de l'automate. La configuration de cette entrée se fait à partir du terminal, dans le mode PROGRAMMATION : I0=◊‘ I0=R/S entrée normale (état par défaut). Lorsque I0,0 n’est pas configurée, son fonctionnement est identique à tout autre entrée T.O.R. du module de base. entrée RUN/STOP. Lorsque cette entrée est configurée, son fonctionnement devient le suivant : • sur front montant: met en RUN l’automate, • à l’état 0 : met en STOP l’automate. La mise en STOP à partir de cette entrée est prioritaire sur celle à partir du terminal. 4.2-2 Configuration de la sortie SECURITE O0,0 : sortie SECURITE. Elle permet l’asservissement de l’alimentation des sorties de l’automate. Cette sortie est à câbler dans les circuits de sécurité externes (voir manuel de mise en oeuvre). La configuration de cette sortie se fait à partir du terminal, dans le mode PROGRAMMATION : O0={} sortie normale (état par défaut). Lorsque O0,0 n’est pas configurée, son fonctionnement est identique à tout autre sortie T.O.R. du module de base. O0=SECU sortie SECU. Lorsque cette SORTIE est configurée, son état est défini par le système comme suit : • à l’état 1 : lorsque l’automate est en RUN et sans défaut, • à l’état 0 : lorsque l’automate est en STOP ou en RUN avec défaut. Nota : I0,0 et O0,0 sont configurées par défaut en entrée/sortie normales. Elles peuvent être configurées indépendamment, à partir du terminal. Une fois configurées, ces entrée/sortie ne doivent plus être utilisées dans le programme. 4/3 D 4.3 Modules de visualisation 4.3-1 Principe L'automate de base TSX 17-20 dispose en face avant d'un module permettant selon l'état de SY14 : • la visualisation des entrées/sorties si SY14=0, • la visualisation de l'état des bits du mot système SW16 si SY14=1. En lieu et place de ce module, peut être enfiché un autre module de visualisation Numérique (référencé TSX 17 ACC2), qui complète la visualisation des entrées/ sorties par un affichage sur 4 digits en BCD du contenu de SW16(si SY14=1). Le contenu de SW16 affiché, peut être une valeur de mot interne, de compteur, de temporisateur, un numéro d’étape GRAFCET, etc. 4.3-2 Module de visualisation standard D Eléments visualisés Etat SY14 Sorties 0 O0,00... O0,08... O0,08... O0,12... Mot SW16 1 SW16,F ... .... .... SW16,3 ... 0 1 2 L’état du bit SY14 est visualisé en face avant par le voyant MD (Memory Display). • SY14=0 voyant MD éteint (état par défaut) • SY14=1 voyant MD allumé 4/4 3 4 5 SORTIES 6 7 8 9 10 11 12 13 14 15 OUTPUT 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 MD 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 ENTREES INPUTS 4 Fonctions spécifiques au TSX 17-20 4.3-3 Module de visualisation Numérique TSX 17 ACC2 Eléments visualisés Etat SY14 Sorties 0 Mot SW16 1 0 1 2 3 O0,00... 4 5 6 7 O0,08... 8 9 10 11 12 13 14 15 O0,08... O0,12... rang F (MSB) 4° quartet L’état du bit SY14 est visualisé en face avant par le voyant MD (Memory Display). • SY14=0 voyant MD éteint (état par défaut) • SY14=1 voyant MD allumé 3° quartet 2° quartet 1° quartet 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 SORTIES OUTPUT ENTREES INPUTS MD 4° 3° 2° 1° 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 D 4.3-4 Exemple de programmation Il s’agit de visualiser alternativement, selon l’état de l’entrée I0,2, la valeur du mot W0 et la valeur courante C0,V du compteur C0. " A F F I C HAGE IØ,1 1 IØ,2 1 Ø IØ,2 L B CD SY14 Valid. affichage num. BCDWØ → SW16 Affichage WØ BCD WØ → SW16 BCDCØ,N →W16 Affichage compteur BCD CØ,V → SW16 4/5 D 4/6 X Communication par prise terminal Chapitre 1 2 Intercalaire E Page Généralités 1.1 Généralités sur la "liaison terminal" 1/1 1.2 Généralités sur les transmissions de données 1/3 Liaison terminal 2/1 1/2 2.1 Liaison terminal du TSX 17-20 2/2 2.2 Liaison terminal des TSX 27/47 2/5 2.3 Bloc texte du type terminal (rappel) 2/10 E 1 E 2 X Généralités Généralités Sous chapitres 1.1 Généralités sur la "liaison terminal" 1.1-1 Présentation 1.1-2 Caractéristiques de la laison 1.1-3 Configuration de la liaison 1.2 Généralités sur les transmissions de données 1.2-1 1.2-2 1.2-3 1.2-4 Définition Types de transmission Transmission série asynchrone Types de liaison série Ce chapitre se termine à la page 1 Chapitre 1 Page 1/1 1/2 1/2 1/2 1/3 1/3 1/3 1/4 1/5 1/6 E 1/1 1.1 Généralités sur la "liaison terminal" 1.1-1 Présentation La prise terminal des automates de la série TSX7 permet : • le raccordement des terminaux de la série TSX7 et des terminaux universels, pour la programmation et le réglage des TSX 17-20/27/47. Les échanges s’effectuent dans ce cas de manière "transparente" à l’utilisateur, à la vitesse optimale de 9600 bauds. • le raccordement de terminaux d’exploitation type XBT. La gestion des échanges est rendue "transparente" à l’utilisateur grâce au protocole "Réglage", spécifique à la série TSX7, qui assure le dialogue entre l’automate et le terminal. • le raccordement des terminaux universels ou des périphériques disposant d’une liaison série. La "liaison terminal" assure dans ce cas les échanges de chaînes de caractères ASCII entre la mémoire de l’automate et le périphérique. Les messages sont véhiculés vers la prise terminal par les blocs textes du type TER, et les échanges se font à une vitesse configurable (300 à 9600 bauds). Le protocole de gestion des échanges est dans ce cas à la charge de l’utilisateur. Il doit être implanté dans le périphérique. 1.1-2 Caractéristiques de la liaison E La "Liaison Terminal" des automates de la série TSX7 est une liaison "point à point", servant de support à une transmission série asynchrone du type : • Boucle de courant : cas des TSX 27/47, • RS 485 : cas du TSX 17-20. Le raccordement s’effectue sur l’unité centrale de l’automate à l’aide d’un connecteur "SUB D" (type CANNON), mâle : • 9 broches, pour les TSX 27/47, • 15 broches, pour le TSX 17-20. 1.1-3 Configuration de la liaison En cas de raccordement d’un terminal TSX série 7, le dialogue s’effectue à la vitesse optimale de 9600 bauds. En cas de raccordement d’un périphérique, la vitesse est configurable (300 à 9600 bauds). 1/2 Généralités 1.2 1 Généralités sur les transmissions de données 1.2-1 Définition Une transmission de données est un échange d’informations entre deux équipements (stations A et B). Emission données Réception Cet échange, véhiculé sur la ligne de transmission, doit être défini dans un langage codé, compréhensible par l’interface émetteur et l’interface récepteur. Réception données Emission Station A Ligne Station B 1.2-2 Types de transmission Une transmission de données peut être : • du type SIMPLEX (ou unidirectionnelle). La station émettrice est toujours émettrice et la station réceptrice est toujours réceptrice. Exemple: transmission automate vers imprimante. E • du type HALF-DUPLEX (ou bidirectionnelle à l’alternat). La station émettrice peut être réceptrice, mais pas simultanément. C’est le cas de la prise terminal. Exemple : transmission entre automate et XBT. PUIS E R PUIS • du type FULL-DUPLEX (ou bidirectionnelle simultanée). Les deux stations sont simultanément émettrices et réceptrices. Exemple: transmission entre mémoire automate et coupleur SCM.. E R R E R E ET R E ET 1/3 1.2-3 Transmission série asynchrone La transmission série asynchrone est utilisée dans le domaine industriel pour les échanges: automate-automate, ou terminal-automate. La transmission série est une émission de caractères (chaînes de bits), les uns derrière les autres, sur une même voie, d’un émetteur vers un récepteur. Cette transmission est dite asynchrone car la synchronisation entre l’émetteur et le récepteur est au niveau du caractère : 1 bit "START" et 1 ou 2 bits "STOP" sont transmis entre l’envoi de 2 caractères. Ils signalent le début et la fin du code du caractère transmis. Les caractéristiques de la transmission série sont (voir schéma ci-dessous) : Vitesse de transmission Variable selon les périphériques (300 à 9600 bauds), Bit de START Chaque caractère transmis est précédé d’un bit de start (synchronisation : bit à 0), Format du caractère 7 ou 8 bits de données : • Pour les échanges ASCII : format 7 bits (le huitième bit peut servir pour le contrôle de parité). • Pour les échanges en binaire pur : format 8 bits. E Contrôle de parité Afin de détecter les éventuelles erreurs de transmission, le bit de rang 8 du code ASCII du caractère peut être réservé au contrôle de parité : • contrôle de type PAIR : le bit de rang 8 est positionné à 0 ou à 1 afin que le nombre total de 1 dans le code du caractère soit pair. • contrôle de type IMPAIR : le bit de rang 8 est positionné à 0 ou à 1 afin que le nombre total de 1 dans le code du caractère soit impair. Ce bit est calculé et émis par l’émetteur à la suite du code du caractère. Il est de nouveau calculé par le récepteur et comparé au bit reçu. Bits de STOP Chaque caractère transmis peut être suivi d’un ou deux bits de stop (synchronisation : bits à 1). Ainsi, un bit de start peut de nouveau être identifié. En l’absence de transmission (à l’état repos), la ligne est en général à l’état logique 1. 7 ou 8 bits transmis (avec ou sans contrôle de parité) état repos niveau "1" niveau "0" synchro 1 ou 2 bits STOP START bit Transmission d'un caractère ASCII 1/4 Généralités 1 1.2-4 Types de liaison série Les transmissions de données, via la liaison série asynchrone, sont normalisées. Les normes correspondantes, concernent les caractéristiques : • électriques (tension, courant), • fonctionnelles (circuits d’émission et de réception), • de connexion (type de connecteur et brochage). Ces normes sont définies par : • le CCITT : Comité Consultatif International Télégraphique et Téléphonique, • l’EIA : Electronic Industries Association, • l’ISO : International Standard Organization. Les principales normes sont : • RS 232C, interface de tension, signal +12 / -12V: - 1 logique = -3 à -15V, - 0 logique = +3 à +15V. Cet interface est utilisé pour des débits binaires inférieurs à 20 Kbits/s et entre des stations distantes de moins de 15m. • Boucle de courant, interface de courant : - simple courant : 0 / 20 mA, - double courant : +20 / -20 mA. L’interface est dite ACTIVE si elle fournit l’énergie pour transporter l’information. Elle est dite PASSIVE dans le cas contraire. • RS 422/485, interface de tension, signal < 6V : - 1 logique = tension différentielle < -200 mV, - 0 logique = tension différentielle > 200 mV. Ses caractéristiques électriques (mode différentiel, courant élevé) offrent de très bonnes qualités de transmission et d’immunités, supérieures à celles de la RS 232C. Le diagramme ci-dessous illustre les domaines d’utilisation de ces trois normes, en fonction des distances entre stations et du débit binaire. Longueur 1000 m RS422A/RS485 RS232C Boucle courant 20mA 15 m 250 500 20K 100K 10M Débit Binaire Nota : pour les liaisons asynchrones, le débit binaire maximum ne dépasse pas normalement 19200 bits/s. 1/5 E E 1/6 X Liaison terminal Liaison terminal Sous chapitre 2.1 Liaison terminal du TSX 17-20 2.1-1 2.1-2 2.1-3 2.1-4 Définition Utilisation Caractéristique de la liaison Raccordement de la prise terminal du TSX 17-20 2.2 Liaison terminal des TSX 27/47 2.2-1 2.2-2 2.2-3 2.2-4 2.2-5 Définition Utilisation Caractéristiques de la liaison Raccordement de la prise terminal du TSX 27 Raccordement de la prise terminal du TSX 47 2.3 Bloc texte du type terminal (rappel) 2.3-1 Définition du bloc texte TER 2.3-2 Caractéristiques du bloc texte TER Ce chapitre se termine à la page 2 Chapitre 2 Page 2/2 2/2 2/2 2/3 2/4 2/5 2/5 2/5 2/6 2/7 2/9 2/11 2/11 2/11 2/12 2/1 E 2.1 Liaison terminal du TSX 17-20 2.1-1 Définition La "liaison terminal" du TSX 17-20 est du type RS 485, non isolée. Elle assure : • Les échanges avec les terminaux de programmation et de réglage TSX T317 (via adaptateur TSX 17 ACC7) FTX 417/507 et compatible PC (via adaptateur TSX 17 ACC PC = ACC8 + ACC11). • Les échanges avec les périphériques type terminaux universels et écran/ clavier(1). Les blocs textes du type TER sont utilisés pour l’émission et/ou la réception des chaînes de caractères. Le protocole de gestion des échanges est à la charge de l’utilisateur; il doit être défini dans le périphérique. • Les échanges avec les terminaux type XBT. Le protocole réglage, spécifique à la série TSX7, assure les échanges. • La communication via le Bus multipoint UNI-TELWAY. Un interface (TSX 17 ACC5) assure la liaison entre le TSX 17-20 (par la prise terminal) et le bus. Le TSX 17-20 se comporte comme une station ESCLAVE et répond aux requêtes de la station MAITRE (TSX 17-20 muni du coupleur TSX SCG 116, TSX 47/67/ 87 muni d’une carte coupleur TSX SCM 21.6). E 2.1-2 Utilisation La norme RS 485 est utilisée pour toutes les transmissions jusqu’ê 1000 m, et pour un débit binaire maximum de 100 Kbits/s. Ses caractéristiques électriques (mode différentiel, courant élevé) offrent de très bonnes qualités de transmission et d’immunité, supérieures à celles de la RS 232C. Prise Terminal TSX 17-20 (1) La liaison doit être isolée si la longueur de la ligne est supérieure à 5 m. 2/2 Liaison terminal 2 2.1-3 Caractéristiques de la liaison Le schéma ci-dessous illustre le principe de fonctionnement de la transmission de données type RS 485. Câble d'interconnexion Générateur symétrique Charge Terminaison du câble B A' Point de jonction de la Charge G D(A) Point de jonction du Générateur A D(B) Réception Z t Zt : Résistance de terminaison de câble 100 à 150 ohms R B' C' C OVL Référence Zéro volt La transmission des données s’effectue en mode différentiel sur une paire torsadée. Ces signaux de données, appelés D(A) et D(B) doivent avoir des caractéristiques électriques conformes à la norme EIA RS 485. Ces signaux correspondent respectivement aux points A/A’ et B/B’ de la norme. Le bon fonctionnement des émetteurs-récepteurs nécessite d’autre part l’interconnexion des "communs" de chaque station raccordée (points C/C’). Cette référence de potentiel, appelée 0VL, sera véhiculée par une deuxième paire torsadée. L’ensemble des deux paires torsadées sera impérativement blindé afin d’être protégé contre les perturbations électromagnétiques (signal appelé BLIND). Tableau de fonctionnement, défini par convention Potentiel D(A) - D(B) D(A) - D(B) < -200 mV D(A) - D(B) > +200 mV -200 mV < D(A) - D(B) < +200mV Etat logique de la ligne → → → état binaire = 1 (ou MARK) état binaire = 0 (ou SPACE) état indéterminé Transmission : HALF-DUPLEX Impédance de charge minimale : 100 ohms longueur de câble maximale : 1000 m 2/3 E 2.1-4 Raccordement de la prise terminal du TSX 17-20 Raccordement par connecteur SUB D femelle 15 points (voir schéma de raccordement et tableau de brochage ci-dessous). 5V 5V DE D(B) 14 TX D(A) 7 RX GND GND /INL 12 GND 5 GND 8 GND 15 E 12V 6 5V 13 DE 1 TSX 17-20 Connecteur CCTU 15 points Broche 1 2 3 4 Référence -DE* * pour TSX ACC7 et TSX ACC5 2/4 Périphérique Câble 5 6 7 8 GND 12V D(A) GND 9 10 11 12 13 14 15 -INL VCC D(B) GND Liaison terminal 2.2 2 Liaison terminal des TSX 27/47 2.2-1 Définition La "liaison terminal" des TSX 27/47 est du type Boucle de courant 20 mA. Elle assure : • Les échanges avec les terminaux de programmation et de réglage TSX T407, FTX 417/507 et compatible PC (via adaptateur TSX TAC 03). • Les échanges avec les périphériques type terminaux universels et écran/clavier. Les blocs textes du type TER sont utilisés pour l’émission et/ou la réception des chaînes de caractères. Le protocole de gestion des échanges est à la charge de l’utilisateur; il doit être défini dans le périphérique. • Les échanges avec les terminaux type XBT. Le protocole réglage, spécifique à la série TSX7, assure les échanges. 2.2-2 Utilisation La transmission de données du type Boucle de courant 0 / 20 mA est la plus courante. Elle n’est pas normalisée, mais est devenue une norme de fait. Elle est utilisée pour des distances entre stations inférieures à 1000 m et pour des débits binaires de l’ordre 20 Kbits/s. Prise Terminal TSX 27 X E Prise Terminal TSX 47 X 2/5 2.2-3 Caractéristiques de la liaison La connexion est du type Boucle de courant 20 mA, courant passant au repos : • non isolée pour le TSX 27, • isolée pour le TSX 47. Le connecteur fournit l’alimentation des terminaux TSX T107 (12V, 140mA), TSX T407 (12V, 900mA). Le schéma ci-dessous illustre le principe de fonctionnement de la transmission de données type Boucle de courant. Simple courant 0-20mA 20mA 0 Temps "Liaison Terminal" Active Prise terminal automate Ligne Terminal ou périphérie E Tableau de fonctionnement, défini par convention Simple courant 0/20 mA 20 mA 0 mA 2/6 → → état binaire = 0 état binaire = 1 Transmission : HALF-DUPLEX Débit binaire maximum : 20 Kbits/s longueur de câble maximale : 1000 m Liaison terminal 2 2.2-4 Raccordement de la prise terminal du TSX 27 Raccordement par connecteur SUB D femelle 9 points (voir schémas de raccordement ci-dessous). Périphérique avec liaison passive (sans limitation de courant) 12 V 9 + 12 V 560Ω RXD + REC 2 R1 560Ω - REC 7 + EMI 4 TXD - EMI 6 0V 8 0V /INL 3 EARTH 5 NC 1 TSX 27 Connecteur CCTU 9 points E Câble Périphérique Dans le cas où le périphérique possède une limitation de courant, la résistance de 560 ohms située sur le câble est inutile. La résistance de 560 ohms (R1) 1/4 W ainsi que les ponts (9-2) et (8-3) sont à câbler dans le connecteur mâle situé du côté de l’automate. 2/7 Périphérique avec liaison active (avec limitation de courant) 12 V 9 + 12 V 560Ω RXD 12 V + REC 2 - REC 7 + EMI 4 TXD - EMI 6 0V 8 0V 0V /INL 3 EARTH 5 NC 1 TSX 27 Connecteur CCTU 9 points E 2/8 Câble Périphérique Liaison terminal 2 2.2-5 Raccordement de la prise terminal du TSX 47 Raccordement par connecteur SUB D femelle 9 points (voir schéma de raccordement ci-dessous). Périphérique avec liaison isolée passive. 12 V + 12 V 9 + REC 2 - REC 7 + EMI 4 - EMI 6 0V 8 0V /INL 3 EARTH 5 NC 1 TSX 47 Connecteur CCTU 9 points E Câble Périphérique possédant une liaison isolée passive (sans limitation de courant) 2/9 Raccordement de la prise terminal du TSX 47 (suite) Périphérique avec liaison isolée active. 12 V + 12 V 9 12 V + REC 2 - REC 7 + EMI 4 - EMI 6 0V 8 0V 0V /INL 3 EARTH 5 NC 1 TSX 47 Connecteur CCTU 9 points E 2/10 Câble Périphérique possédant une liaison isolée active (avec limitation de courant) 2 Liaison terminal 2.3 Bloc texte du type terminal (rappel) 2.3-1 Définition du bloc texte TER Le bloc texte du type terminal (TER) est un bloc fonction qui véhicule des messages entre la mémoire RAM de l’automate et la prise terminal. TXTO R D TER LOCAL S E WO[16] O L=29 S= I Bloc Texte 2.3-2 Caractéristiques du bloc texte TER Les caractéristiques générales du bloc texte TER sont détaillées dans : "Langage à contacts", chapitre 6. Le tableau ci-dessous en donne un extrait. entrée R "Reset" : inhibition de l’échange entrée S "Start" : départ, sur front montant provoque le lancement de l’échange entrée O "Out" : émission entrée I "In" : réception sortie D "Done" : échange terminé bit associé: TXTi,D sortie E "Error" : erreur d’échange bit associé: TXTi,E TXTi,L TXTi,S ↔ TER LOCAL Wi[j] R S O I » … D ◊ ‘ E ◊t | ◊ | Ω––ß E : longueur table d’émission en Æ–––––TXT 0 ––––« nombre de caractères R ◊<–>TER Wi[j] ‘D= : nombre de caractères reçus S∑◊ ‘E= O ◊L= S= | ou code d’erreur I Ç––––––––––––––––ß : bloc texte type terminal : échange en local : Wi [ j ] : Wi adresse de début table de réception j : nombre de caractères à recevoir Nota : Les fenêtres dans le tableau ci-dessus, illustrent la représentation des blocs fonction textes sur l’écran du terminal de programmation TSX T407. 2/11 E 2/12 X Exemples d'applications et annexes Intercalaire F Chapitre 1 2 3 4 Page Introduction 1.1 Préambule 1/1 1.2 Aide à la programmation : actions sur front 1/3 Exemples d’applications avec TSX 17-20 2/1 2.1 Traitement d’un positionnement par la tâche rapide 2/2 2.2 Compteur/Temporisateur rapide en multiprésélection 2/6 Exemples d’applications avec TSX 17-20/27/47 3/1 3.1 Description de la machine 3/2 3.2 Grafcet du cahier des charges (première partie) 3/3 1/2 3.3 Modes de marche et d’arrêt (deuxième partie) 3/14 3.4 Comptage des pièces (troisième partie) 3/20 3.5 Communication par bloc texte (quatrième partie) 3/22 Annexes 4.1 Temps d’éxécution mémoire 4/1 4.2 Définitions GEMMA 4/4 4.3 Code ASCII 4/5 4/2 F 1 F 2 X Introduction Introduction 1 Chapitre 1 Sous chapitres page 1.1 Préambule 1/2 1.2 Aide à la programmation : actions sur front 1/2 Ce chapitre se termine à la page 1/4 F 1/1 1.1 Préambule Les chapitres 2 et 3 traitent quelques exemples d’applications étudiés en langage PL7-2. Chaque exemple a été simplifié afin de paraître didactique et est décomposé en parties successives, analysées et traitées l’une après l’autre : • Cycle de fonctionnement, défini par le cahier des charges. • Modes de Marches et d’Arrêts. • Fonctions complémentaires (affichage, communication, etc). Tous les programmes sont donnés sur des formulaires de programmation ("schéma à contacts" ou "GRAFCET"). Ils peuvent être saisis sur n’importe quel terminal de programmation en langage PL7-2. La machine automatique de perçage (chapitre 3) est un exemple extrait de l’ouvrage : "Le GRAFCET, sa pratique et ses applications", des éditions EDUCALIVRE. Cet exemple est traité avec une affectation d’entrées/sorties pour TSX 17-20. Moyennant un adressage adéquat (voir intercalaire A, chapitre 2, souschapitre 2.1), Il pourra être testé sur un automate TSX 27 ou TSX 47. F 1/2 Introduction 1.2 1 Aide à la programmation : Actions sur front Afin de tenir compte de contraintes d’application ou de modes de marches, certaines actions ne doivent être exécutées que sur un cycle programme (dès que et non pas tant que la condition est vraie). Ces actions sont alors dites exécutées sur fronts : • montant, lorsque le bit associé à la condition passe de l’état 0 à 1, • descendant, lorsque le bit associé à la condition passe de l’état 1 à 0. Principe de programmation d’une action sur fronts Dès que la condition est vraie (B100 étant encore à 0), le bit B10 est positionné à 1. Le bit B100 est à son tour positionné à 1. Au label 20, B10 étant à 1, les actions associées sont alors effectuées. Au tour de cycle suivant, B100 étant à 1, B10 repasse à 0 et les actions associées ne seront pas exécutées. Ce traitement est renouvelé chaque fois que le bit associée à la condition passe de l’état 0 à l’état 1. "bit" B1ØØ B1ØØ 1 Ø L B1Ø 2 Ø L B1Ø B1Ø : bit mémorisation front géneré sur sur le "bit" Actions Conditionnées par le front mémorisé dans B1Ø F Remarque : Ce traitement prend obligatoirement deux réseaux de contacts, car le bit mémorisation de front n’est reconnu à 1 qu’à partir du réseau qui suit celui dans lequel est géré le bit "condition". 1/3 F 1/4 X Exemples d'applications avec TSX 17-20 2 Exemples d'applications avec TSX 17-20 Chapitre 2 Sous chapitre Page 2.1 Traitement d’un positionnement par la tâche rapide 2/2 2.2 Compteur/temporisateur rapide en multiprésélection 2/6 2.2-1 Description de l’application 2.2-2 Données de programmation 2.2-3 Programme Ce chapitre se termine à la page 2/6 2/9 2/10 2/16 F 2/1 2.1 Traitement d’un positionnement par la tâche rapide Les entrées événementielles I0,24 et I0,25 sont raccordées à un codeur rotatif incrémental, avec discriminateur de sens de marche (voir schéma ci-dessous). Réaliser le programme permettant de calculer la position, en fonction du sens de marche. Un bouton-poussoir raccordé à l’entrée I0,01 permet d’initialiser le calcul de la position (position de référence : 0). I0,24 I0,25 A B Signaux 0 +24V Moteur Codeur rotatif F 2/2 Accouplement souple 2 Exemples d'applications avec TSX 17-20 Principe de fonctionnement d’un codeur rotatif incrémental Un codeur est un dispositif électromécanique, dont la sortie électrique représente sous forme numérique la position angulaire de l’axe d’entrée. Le codeur incrémental est constitué d’un disque qui comporte deux pistes divisées en "n" intervalles d’angles égaux, alternativement opaques et transparents. "n" est appelé résolution ou nombre de périodes. Electronique Optique Mécanique Deux photo-diodes décalées envoient deux faisceaux qui traversent les fentes du disque, délivrant en sortie, deux signaux "carré" (A et B) en quadrature de phase. Pour un tour complet de l’axe du codeur, les faisceaux sont interrompus "n" fois et délivrent "n" signaux consécutifs. Le déphasage (90° électrique) des signaux A et B permet de déterminer le sens de marche : • dans un sens pendant le front montant du signal A, le signal B est à 1 (sens positif par exemple), A B 90° él 360° él période ou incrément • dans l’autre sens pendant le front montant du signal A, le signal B est à 0 (sens négatif par exemple). F 2/3 Corrigé de l’exercice Compte-tenu de la fréquence élevée(1) des signaux A et B en sortie (recueillis respectivement sur I0,24 et I0,25), le traitement du positionnement sera écrit en tâche rapide. La tâche maître sera ralentie, compte tenu des appels fréquents de la tâche rapide. En effet, cette dernière est lancée chaque fois que I0,24 change d’état physique (sur front montant ou sur front descendant). Le mot W0, mis à jour chaque fois qu’un front montant sur I0,24 est détecté, est : • incrémenté d’une unité pour signaler un pas dans le sens positif, • décrémenté d’une unité pour signaler un pas dans le sens négatif. Configurer I0,24 comme entrée événementielle. I0,25 peut être testée en tâche rapide, bien qu’elle demeure configurée comme entrée normale. Sens négatif Sens positif A A B B Déphasage (90° él) Déphasage (90° él) Période (ou signal) (1) : Dans le cas d’une application ayant un programme conséquent en tâche maître (réseaux avec plusieurs blocs opération et comparaison), la fréquence des signaux du codeur doit être inférieure à 300 Hz, afin de garantir leur prise en compte. F 2/4 Exemples d'applications avec TSX 17-20 2 Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST OBSERVATIONS " POS I T . I N I T I A L E SY19 Tâche Maître R Validation Tâche rapide 1 IØ,1 L Ø →WØ Initialisation position POS I T I ON " C A L CU L IØ,24 IØ,25 WØ+1 → WØ IØ,25 WØ-1 → WØ 1 F Tâche Rapide Calcul position en fonction du sens de marche " X L F " F Tâche maître langage à contacts Mise à jour Par p Tâche rapide Date Traitement préliminaire Etude : C T P Traitement postérieur Date : Folio A B Dessins : Positionnement 2/5 2.2 Compteur/temporisateur rapide en multiprésélection Cet exercice est composé de trois parties successives qui doivent être traitées dans l’ordre : 1ère partie : dosage par multiprésélection, 2ème partie : affichage volume, 3ème partie : lecture à la volée du volume instantané. 2.2-1 Description de l’application Première partie • Enoncé Le processus de remplissage d’un produit chimique nécessite le dosage précis et successif de trois sous-produits P1, P2 et P3. L’écoulement de ces sous-produits dans la trémie réceptrice est contrôlé respectivement par trois électrovannes EV1, EV2 et EV3. L’écoulement de la trémie réceptrice vers la cuve est contrôlé par l’électrovanne EV4. L’ouverture des électrovannes est provoqué par la présence de tension à leurs bornes; la fermeture par l’absence de tension (électrovannes monostables). La présence de la cuve sous la trémie est contrôlée par une cellule photoélectrique. Solution Solution Solution P1 P2 P3 EV1 EV2 EV3 F Trémie réceptrice EV4 Cuve Cellule 2/6 Exemples d'applications avec TSX 17-20 2 • Modes de marches M1 : Les trois sous-produits P1, P2 et P3 sont dosés dans cet ordre et immédiatement l’un après l’autre. C’est la présence de la cuve qui provoque immédiatement le dosage du premier sous-produit et l’ouverture de EV4. M2 : L’électrovanne EV4 se ferme : - à la fin du dosage du 3ème sous-produit, - en cas de retrait de la cuve pendant la phase de remplissage, - en cas de coupure secteur. M3 : Une reprise secteur ou le retrait de la cuve avant la fin du cycle provoquent la réinitialisation complète du processus (pour la cuve vide suivante). M4 : Le volume d’une cuve n’autorise que la délivrance d’une seule dose de chacun des sous-produits. • Données de l’exercice Les sous-produits P1, P2 et P3 sont envoyés par des doseurs ayant un débit de 1 Litre/seconde : - P1 est dosé à 5200L, - P2 est dosé à 3125L, - P3 est dosé à 1649L. Le dosage est géré par le compteur rapide. Il peut être réalisé de deux manières différentes : - soit par l’entrée comptage rapide, où à chaque impulsion externe correspond 1L dosé, - soit par le temporisateur rapide, où à chaque impulsion interne de 0,555ms correspond 1L dosé. Pour les besoins de la simulation, on retiendra la deuxième solution. La présélection du sous-produit P1 peut être définie de deux manières différentes : - soit saisie lors de la programmation du bloc FC (FC,P = 9999 par défaut) : solution non retenue, - soit définie dans le programme application, lors de l’initialisation (M3). Dans ce cas et seulement si un "Reset" préalable du Timer est effectué, la présélection P1 est retenue pour le premier cycle de comptage. • Adressage entrées/sorties EV1 EV2 EV3 EV4 = = = = O0,01 O0,02 O0,03 O0,04 Cellule présence cuve = I0,01 2/7 F Deuxième partie • Affichage volume en BCD sur TSX 17 ACC2 En remplaçant le module de visualisation standard du TSX 17-20 par le module numérique (réf: TSX 17 ACC2), afficher les trois volumes intermédiaires de la cuve (Vc), correspondants aux moments de passage d’un sous-produit au suivant : volume cuve Vc = P1 = P1 + P2 = P1 + P2 + P3 En début de cycle, Vc = 0 P1 = 5200 P2 + P2 = 8325 P1 + P2 + P3 = 9974 Données complémentaires : I0,02 = valide l’affichage du contenu de SW16. Troisième partie • Lecture à la volée du volume instantané En actionnant un bouton-poussoir (Bp) raccordé à l’entrée 3 (I0,03), l’opérateur peut visualiser sur l’afficheur numérique le volume instantané de la cuve (Vi). Cette valeur reste affichée et figée tant que le bouton est actionné. Il peut être effectué durant un cycle de remplissage de la cuve autant de lecture à la volée que d’actions sur le bouton-poussoir. La lecture à la volée ne doit pas empêcher l’évolution du dosage et l’affichage de Vc (lorsque Bp n’est pas actionné). Données complémentaires : I0,03 = bouton-poussoir Bp. F 2/8 Exemples d'applications avec TSX 17-20 2 2.2-2 Données de programmation. Pour la première partie • Configurer FC en Timer rapide • Configurer l’octet de sortie O0,00 à O0,07 en tâche rapide. • Le mot W0 sera incrémenté en tâche rapide afin que chacune des valeurs prises représente une phase de dosage d’un sous-produit. FC,P FC,V 5200 3125 1649 W0 = 4 W0 = 1 W0 = 2 W0 = 3 Nota : Pour visualiser le fonctionnement du timer rapide en mode REGLAGE, l’entrée V du bloc fonction FC (C31 en ADJUST) doit être à 1. Pour la deuxième partie Le mot W16 sera utilisé comme mot de "chargement" des volumes intermédiaires de la cuve. Il doit être converti en code BCD avant d’être transféré dans SW16. Pour la troisième partie Le mot W17 sera utilisé comme mot de "chargement" du volume instantané de la cuve. Il doit être converti en code BCD avant d’être transféré dans SW16. • I0,03 = 0 affichage de Vc, • I0,03 = 1 affichage de Vi. 2/9 F Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST " MOD E S D E OBSERVATIONS MA RCH E BØ bit de mémorisation S SY9 S Modes de Marches M2 BØ R SY9 R SYØ SY1 1 Ø JØ,1 L " I N I T I A L I S A T I ON SYØ Présélection P1 5200 → FC,P SY1 2 Ø JØ,1 L Modes de Marches M3 Ø → WØ SY19 R Validation Tâche Rapide OØ,4 R " P R E S . CU V E B5 IØ,1 B4 B4 3 Ø L F X Sur front élancé un seul cycle de remplissage Modes de Marches M4 " L A NC EME N T T A CH E B5 4 Ø L L 2/10 1 → WØ 0Ø,4 S Modes de Marches M1 dosage P1 F Tâche maître langage à contacts Mise à jour A B C T Présélection P2 3125 → FC,P CØ,Ø1 WØ=1 Par p Tâche rapide Date Etude : Traitement préliminaire Dessins : P Traitement postérieur Date : Langage à contacts 1 ère partie : dosage par multiprésélection Folio 1 1 2 Exemples d'applications avec TSX 17-20 Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST " P R E S E L E C . 1649 → FC,P WØ=2 OØ,2 5 Ø L OØ,3 WØ=3 " T I ME R BØ Présélection P3 dosage P2 dosage P3 (présélection P1 dans label 20) R A P I D E FC R B5 6 Ø L OBSERVATIONS P 3 B1Ø (BØ,B5) : Modes de P D Marches M2 et M3 V IØ,1 WØ<>Ø validation dosage C " X L F " F Tâche maître langage à contacts Mise à jour A B C Par p Tâche rapide Date Etude : Traitement préliminaire Dessins : P Date : T Traitement postérieur Langage à contacts 1 ère partie : dosage par multiprésélection Folio 2 1 2/11 Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST " F I N OØ,1 R OØ,2 R OØ,3 R SY15 WØ=1 1 Ø F WØ=2 WØ=3 WØ+1 → WØ " F I N OBSERVATIONS P ROD DOS AGE C Y C L E fin de dosage de chaque sous produit fermeture des vannes lorsque FC,V=FC,P incrémentation WØ R EMP L SY15 Ø → WØ WØ=4 fin du cycle de remplissage d'une cuve OØ,4 R Modes de Marches M2 SY15 R 2 Ø F " F X L 2/12 " F Tâche maître langage à contacts Mise à jour A B C Par p Tâche rapide Date Etude : Traitement préliminaire Dessins : T P Traitement postérieur Date : Tâche rapide ère 1 partie : dosage par multiprésélection Folio 3 1 2 Exemples d'applications avec TSX 17-20 Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST OBSERVATIONS " A F F I CH AGE SY15 Tâche RAPIDE 5 F WØ=1 52ØØ → W16 WØ=2 8325 → W16 WØ=3 9974 → W16 " P R E S . insertion réseau en dèbut de programme tâche rapide CU V E B5 IØ,1 B4 3 Ø L Ø →W16 Langage à contacts modification label 3Ø Initialisation affichage B4 " P R E S E L E C . P 3 Langage à contacts 1649 WØ=2 5 Ø L X modification label 5Ø FC,P OØ,Ø2 OØ,Ø3 WØ=3 SY14 validation affichage IØ,2 SW16 " CON V E R . F B CD BCD W16 → SW16 7 Ø L L conversion BCD en affichage T Langage à contacts label à saisir à la suite F Tâche maître langage à contacts Mise à jour A B C Par p Tâche rapide Date Etude : Traitement préliminaire Dessins : Multiprésélection pour dosage ème 2 partie : Affichage volume P Traitement postérieur Date : Folio 1 2 2/13 Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST " P R E S . B5 IØ,1 B4 3 Ø L " T I ME R BØ Langage à contacts modification label 3Ø Ø → W16 Initialisation affichage volume Ø → W17 B4 Initialisation affichage lecture à la volée R A P I D E FC R Langage à contacts modification label 6Ø B1Ø B5 6 Ø L OBSERVATIONS CU V E P D validation lecture à la volée V IØ,1 WØ<>Ø C " CON V E R . B CD IØ,Ø3 BCD W16 → SW16 7 Ø L F X L 2/14 IØ,Ø3="Ø" affichage du contenu de W16 IØ,Ø3="1" affichage du contenu de W17 " F Tâche maître langage à contacts Mise à jour A B C Par p Tâche rapide Date Etude : Traitement préliminaire Dessins : Multiprésélection pour dosage ème 3 partie : lecture à la volée T P Traitement postérieur Date : Folio 1 3 2 Exemples d'applications avec TSX 17-20 Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST " L E C T . A B7 IØ,Ø3 B6 B6 8 Ø L " C A L CU L sur front montant lecture à la volée du volume instantané de la cuve : VI VO LU ME B7 9 Ø L OBSERVATIONS VO L E E L A WØ=1 FC,V → W17 vol. instantané de P1 WØ=2 FC,V+52ØØ →W17 vol. P1 + vol. inst. P2 WØ=3 FC,V+8325 WØ<>Ø BCD W17 → SW16 →W17 vol. P1+P2+vol. inst. P3 affich. vol. cuve " X L F " F Tâche maître langage à contacts Mise à jour A B C Par p Tâche rapide Date Etude : Traitement préliminaire Dessins : Multiprésélection pour dosage 3 ème partie : lecture à la volée T P Traitement postérieur Date : Folio 2 3 2/15 F 2/16 X Exemples d'applications avec TSX 17-20/27/47 3 Exemples d'apllications avec TSX 17-20/27/47 Chapitre 3 Sous chapitre page 3.1 Description de la machine 3/2 3.2 Grafcet du cahier des charges (première partie) 3/3 3.2-1 3.2-2 3.2-3 3.2-4 Desciption des actionneurs et des préactionneurs Conditions initiales Tableau d’adressage des entrées/sorties Programme 3.3 Modes de marche et d’arrêt (deuxième partie) 3.3-1 Enoncé 3.3-2 Complément d’adressage des entrées/sorties 3.3-3 Programme 3.4 Comptage des pièces (troisième partie) 3.4-1 Programme 3.5 Communication par bloc texte (quatrième partie) 3.5-1 Affichage défauts sur imprimante 3.5-2 Datation des défauts (avec TSX 17-20 muni de l’option horodateur) 3/4 3/5 3/6 3/7 3/14 3/14 3/15 3/16 3/22 3/23 3/24 3/24 3/26 F Ce chapitre se termine à la page 3/26 3/1 3.1 Description de la machine Il s’agit d’une machine automatique de perçage comportant un plateau tournant qui dessert 3 postes de travail : • Poste 1 : chargement des pièces sur palettes. • Poste 2 : bridage des palettes et perçage des pièces. • Poste 3 : contrôle des pièces percées, puis évacuation. Le contrôle de perçage s’effectue par un testeur qui doit descendre en position basse si le trou est correctement percé. Si cela n’est pas réalisé, tout le système se bloque, testeur en position haute, de façon à ce que l’opérateur puisse enlever la pièce défectueuse avant de réarmer manuellement le système. Un vérin permet la rotation de 120¯ du plateau extérieur supportant les pièces à usiner. Il permet aussi son indexation, c’est à dire son blocage précis après chaque rotation. On supposera que le moteur de la perceuse est actionnée grâce à un système mécanique, commandé lors du mouvement de translation vertical. Alimentation Perçage Serrage F Testeur Chargeur Evacuation Rotation plateau 3/2 3 Exemples d'applications avec TSX 17-20/27/47 3.2 GRAFCET du cahier des charges (Première partie) Le GRAFCET décrivant le fonctionnement de cette installation est représenté cidessous. Lorsque l’ordre "marche" apparaît et à condition que la partie opérative soit correctement positionnée, le franchissement de la transition conduit à l’activation simultanée des étapes 2, 5 et 10. A partir de cette situation, les trois séquences (2-3-4), (5 à 9) et (10 à 14) évolueront indépendamment les unes des autres mais elles devront être toutes achevées pour aboutir à une évolution commune à l’étape 17 : • La séquence 2-3-4 évoluera jusqu’à l’étape 4 où elle s’arrêtera. • La séquence 5 à 9 évoluera jusqu’à l’étape 9 où elle s’arrêtera. • La séquence 10 à 14 évoluera jusqu’à l’étape 14 où elle s’arrêtera. 1 marche-conditions initiales 2 Avance chargeur 5 pièce chargée 3 Recul chargeur Avance serrage chargeur en arrière descente perceuse montée perceuse recul serrage 9 ATT Avance évacuation 12 pièce évacuée 15 remontée testeur testeur en haut 16 réarmement manuel recul évacuation 13 F évacuation reculée pièce desserrée 4 ATT t/0/5 secondes testeur en haut perceuse en haut 8 remontée testeur 11 perceuse en bas 7 T=5s testeur en bas-t/0/5s pièce serrée 6 descente testeur 10 14 ATT =1 17 rotation plateau fin de rotation 3/3 Lorsque les étapes 4, 9 et 14 correspondantes aux attentes des trois séquences citées seront actives, l’évolution pourra s’effectuer à l’étape 17 puisque la réceptivité notée "=1" est toujours vraie. Ces trois étapes seront appelées "étapes d’attente" et n’ont, du fait de leur rôle de synchronisation, aucune action à effectuer. La transition de l’étape 10 à l’étape 11 tient compte de la position basse du testeur et de la temporisation de 5 secondes non achevée, afin d’assurer l’exclusion avec la réceptivité de la transition de l’étape 10 à l’étape 15. 3.2-1 Description des actionneurs et des préactionneurs Les mouvements commandés sur les trois postes (voir page ci-contre), sont régis par des vérins pneumatiques, commandés par des interfaces modulaires électropneumatiques : • vérins double effet : A, B, C, D et E. • vérin simple effet : F. Des détecteurs de fin de course sont intégrés aux vérins pour détecter les positions extrêmes. F 3/4 3 Exemples d'applications avec TSX 17-20/27/47 3.2-2 Conditions initiales A l’état initial, la machine doit répondre aux conditions suivantes : • • • • • • tige vérin A de chargement rentrée (fdca-), tige vérin B de serrage rentrée (fdcb-), tige vérin C de translation perceuse rentrée (fdcc-), tige vérin D de translation testeur rentrée (fdcd-), tige vérin E d’évacuation rentrée (fdce-), une pièce au moins présente devant un poste (pp1 OU pp2 OU pp3 : détecteurs disposés sous le plateau tournant). Alimentation c- PP2 c+ bb+ da- a+ e- d+ e+ PP1 F PP4 Rotation plateau PP3 3/5 3.2-3 Tableau d’adressage des entrées/sorties I0,1 I0,3 I0,4 I0,5 I0,6 bpm bprearm pp1 pp2 pp3 bouton-poussoir "Marche" bouton-poussoir "Réarmement manuel" détecteur présence pièce poste de chargement détecteur présence pièce poste de perçage détecteur présence pièce poste de contrôle I0,10 I0,11 I0,12 I0,13 I0,14 I0,15 I0,16 I0,17 I0,18 I0,19 I0,20 fdca+ fdcafdcb+ fdcbfdcc+ fdccfdcd+ fdcdfdce+ fdcefdcf+ fin de course travail vérin A tige sortie fin de course repos vérin A tige rentrée fin de course travail vérin B tige sortie fin de course repos vérin B tige rentrée fin de course travail vérin C tige sortie fin de course repos vérin C tige rentrée fin de course travail vérin D tige sortie fin de course repos vérin D tige rentrée fin de course travail vérin E tige sortie fin de course repos vérin E tige rentrée fin de course travail vérin F tige sortie O0,01 O0,02 O0,03 O0,04 O0,05 O0,06 O0,07 O0,08 O0,09 O0,10 O0,11 a+ ab+ bc+ cd+ de+ ef+ avance vérin A recul vérin A avance vérin B recul vérin B avance vérin C recul vérin C avance vérin D recul vérin D avance vérin E recul vérin E avance vérin F Nota : Cet adressage correspond à l'utilisation d'un TSX 17-20. F 3/6 3 Exemples d'applications avec TSX 17-20/27/47 3.2-4 Programme • Saisir le GRAFCET et les transitions associées dans la zone de traitement séquentiel. • Saisir les actions associées aux étapes dans la zone de traitement postérieur. 1 I0,1.I0,11.I0,13.I0,15.I0,17.I0,19.(I0,4+I0,5+I0,6) a+ (O0,01) 2 fdca+ (I0,10) fdca(I0,11) fdce+ (I0,18) b(O0,04) 16 bprearm (I0,3) e(O0,10) 13 fdcb(I0,13) d(O0,08) 15 fdcd(I0,17) e+ (O0,09) 12 fdcc(I0,15) 4 ATT t/0/5 secondes fdcd(I0,17) c(O0,06) 8 d(O0,08) 11 fdcc+ (I0,14) 7 T=5s fdcd+.t/0/5s (I0,I6) c+ (O0,05) 6 d+ (O0,07) 10 fdcb+ (I0,12) a(O0,02) 3 b+ (O0,03) 5 fdce(I0,19) 9 ATT F 14 ATT =1 f+ (O0,11) 17 f de f. (I0,20) 3/7 3/8 L13 L12 L11 L10 LØ9 LØ8 LØ7 LØ6 X LØ5 LØ4 LØ3 LØ2 N° Page Grafcet 17 04 03 02 C B A 05 10 15 CØ5 Par CØ6 09 08 07 06 16 Mise à jour 14 13 12 11 Date 01 CØ7 Etude : Date : bprearm d- D- t/Ø/5s u Machine de perçage : GRAFCET de fonctionnement Traitement séquentiel (SEQ) Dessin : réception toujours vraie (=1) étapes d'attente e- E- Bb- e+ E+ Cc- d- D- D+ d+.t/Ø/5s c+ C+ Aa- B+ b+ Folio 1 6 T fin de rotation marche et conditions initiales A+ a+ 17 : Rotation plateau COMMENTAIRES / OBSERVATIONS 01 : étape initiale Formulaire programmation Grafcet 17 CØ4 01 CØ3 LØ1 CØ2 04 CØ1 17 CØØ LØØ PL7-2 F 3 Exemples d'applications avec TSX 17-20/27/47 Saisie des réceptivités associées aux transitions Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST OBSERVATIONS " XØ2 # XØ1 → XØ2 IØ,4 IØ,1 IØ,11 IØ,13 IØ,15 IØ,17 IØ,19 X IØ,5 Ø 1 IØ,6 " XØ3 # XØ2 → XØ3 IØ,1Ø X Ø 2 " XØ4 # XØ3 → XØ4 IØ,11 X Ø 3 X F " X17 # XØ4 → X17 IØ,12 X Ø 4 L F Tâche maître langage à contacts Mise à jour A B C Par p Tâche rapide Date Etude : Traitement préliminaire Dessins : T P Traitement postérieur Date : Machine de perçage : Réceptivités Traitement Séquentiel (SEQ) Folio 2 6 3/9 Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST OBSERVATIONS " XØ6 # XØ5 → XØ6 IØ,12 X Ø 5 " XØ7 # XØ6 → XØ7 IØ,14 X Ø 6 " XØ9 # XØ7 → XØ8 IØ,15 X Ø 7 F X " XØ9 # XØ8 → XØ9 IØ,13 X Ø 8 L 3/10 F Tâche maître langage à contacts Mise à jour A B C Par p Tâche rapide Date Etude : Traitement préliminaire Dessins : P Date : Modes de Marches et d'Arrêts : Traitement Séquentiel (transitions) T Traitement postérieur Folio 3 6 3 Exemples d'applications avec TSX 17-20/27/47 Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST OBSERVATIONS " IØ,16 IØ,D X11 # X1Ø →X11 X 1 Ø " X12 # X11 →X12 IØ,17 X 1 1 " X13 # X12 →X13 IØ,18 X 1 2 X F " X14 # X13 →X14 IØ,19 X 1 3 L F Tâche maître langage à contacts Mise à jour A B C Par p Tâche rapide Date Etude : Traitement préliminaire Dessins : T P Traitement postérieur Date : Modes de Marches et d'Arrêts : Traitement Séquentiel (transitions) Folio 4 6 3/11 Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST OBSERVATIONS " X15 # X1Ø → X15 IØ,D X 1 Ø " X16 # X15 →X16 IØ,17 X 1 5 " X14 # X16 →X14 IØ,3 X 1 6 F X " XØ1 # X17 →XØ1 IØ,2Ø X 1 7 L 3/12 F Tâche maître langage à contacts Mise à jour A B C Par p Tâche rapide Date Etude : Traitement préliminaire Dessins : P Date : Modes de Marches et d'Arrêts : Traitement Séquentiel (transitions) T Traitement postérieur Folio 5 6 3 Exemples d'applications avec TSX 17-20/27/47 Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST OBSERVATIONS " A C T I ON S 2 Ø P X2 OØ,1 Actions associées X3 OØ,2 X5 OØ,3 X6 OØ,5 aux étapes : (2,3,5 et 6) " A C T I ON S OØ,6 Actions associées X7 OØ,4 X8 3 Ø X11 P X15 aux étapes : (7,8,11 et 15) OØ,8 " A C T I ON S X 1 Ø OØ,7 Actions associées X1Ø à l'étape 1Ø : 5 Ø P X TØ • avance vérin D • lancement tempo TB: 1ØØ ms PRE: 5Ø F " A C T I ON S OØ,9 Actions associées X12 X13 7 Ø X17 P L OØ,1Ø (12,13 et 17) OØ,11 F Tâche maître langage à contacts Mise à jour A B C Par p Tâche rapide Date Etude : Traitement préliminaire Dessins : T aux étapes : P Date : Machine automatique de perçage Traitement Postérieur (PCS) Traitement postérieur Folio 6 6 3/13 3.3 Modes de Marche et d’Arrêts (deuxième partie) 3.3-1 Enoncé La machine décrite dans la première partie, possède 3 modes de fonctionnement : AUTO / MANU / Cycle par cycle. Marche AUTO : Lorsque le commutateur est sur position "AUTO", l’action sur l’interrupteur "Départ auto" lance l’évolution du GRAFCET décrit précédemment. Si les conditions initiales ne sont pas vérifiées, une Marche de préparation doit se lancer automatiquement, afin de les satisfaire et de permettre le démarrage. Marche MANU : Lorsque ce même commutateur est sur position "MANU", le GRAFCET doit être inhibé (mise à 0 de toutes les étapes), et chaque actionneur doit pouvoir être commandé manuellement par un bouton-poussoir. Marche Cycle/Cycle : Lorsque ce même commutateur est sur position "Cycle/ Cycle", une impulsion sur le bouton-poussoir "Départ cycle" lance l’exécution d’un seul cycle machine (cycle GRAFCET). Arrêt d’Urgence : En cas d’Arrêt d’Urgence par action sur un bouton poussoir coup de poing, les sorties sont toutes mises à 0. La reprise, à partir de l’état initial, ne peut s’effectuer que par réarmement manuel (bouton-poussoir défini dans la première partie : I0,3 Bprearm). Reprise secteur : Reprise à froid ou reprise à chaud, elle doit s’effectuer à partir de l’état initial. Réglage et mise au point machine : Afin de pouvoir intervenir sur la machine, un commutateur à clé à deux positions permet (en position travail), de figer le GRAFCET dans l’état. La position repos autorise la reprise. F Conditions initiales : La machine doit pouvoir fonctionner tant qu’il y a une pièce présente devant un poste (détecteurs de présence pièce "pp."). De même, elle doit pouvoir fonctionner s’il y a deux pièces au poste de chargement : • une pièce sur la palette (détecteur de présence pp4), • une pièce prête à être chargée (détecteur de présence pp1). Un voyant s’allume lorsque les conditions initiales sont satisfaites. 3/14 Exemples d'applications avec TSX 17-20/27/47 3 3.3-2 Complément d’adressage des entrées/sorties I0,1 I0,2 I0,3 I0,4 I0,5 I0,6 I0,7 I0,8 I0,9 bpm bpcycl bprearm pp1 pp2 pp3 pp4 AUTO MANU bouton-poussoir "Marche" bouton-poussoir "Départ cycle" bouton-poussoir "Réarmement manuel" détecteur présence pièce poste de chargement détecteur présence pièce poste de perçage détecteur présence pièce poste de contrôle détecteur présence pièce poste sur palette commutateur en position AUTO commutateur en position MANU I0,10 I0,11 I0,12 I0,13 I0,14 I0,15 I0,16 I0,17 I0,18 I0,19 I0,20 I0,21 fdca+ fdcafdcb+ fdcbfdcc+ fdccfdcd+ fdcdfdce+ fdcefdcf+ AU fin de course travail vérin A tige sortie fin de course repos vérin A tige rentrée fin de course travail vérin B tige sortie fin de course repos vérin B tige rentrée fin de course travail vérin C tige sortie fin de course repos vérin C tige rentrée fin de course travail vérin D tige sortie fin de course repos vérin D tige rentrée fin de course travail vérin E tige sortie fin de course repos vérin E tige rentrée fin de course travail vérin F tige sortie bouton coup de poing Arrêt d’Urgence I1,0 I1,1 I1,10 I1,11 I1,12 I1,13 I1,14 I1,15 I1,16 I1,17 I1,18 I1,19 I1,20 bpiniC0 ATregl manua+ manuamanub+ manubmanuc+ manucmanud+ manudmanue+ manuemanuf+ bouton-poussoir init. comp. C0 (3¯ partie) commutateur position figeage pour réglage marche manuelle avance vérin A marche manuelle recul vérin A marche manuelle avance vérin B marche manuelle recul vérin B marche manuelle avance vérin C marche manuelle recul vérin C marche manuelle avance vérin D marche manuelle recul vérin D marche manuelle avance vérin E marche manuelle recul vérin E marche manuelle avance vérin F O0,01 O0,02 O0,03 O0,04 O0,05 O0,06 O0,07 O0,08 O0,09 O0,10 O0,11 O1,0 a+ ab+ bc+ cd+ de+ ef+ VCI avance vérin A recul vérin A avance vérin B recul vérin B avance vérin C recul vérin C avance vérin D recul vérin D avance vérin E recul vérin E avance vérin F voyant cond. initiales vérifiées F Le programme de la deuxième partie est donné dans les pages ci-après. Il doit être saisi à la suite du précédent. 3/15 3.3-3 Programme Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST " R E P R I S E OBSERVATIONS S E C T E UR BØ Sur reprise à froid S ou reprise à chaud SY21 S ou Arrêt d'urgence: SYØ SY1 1 Ø BØ p B21 IØ,3 • initialisation GRAFCET • réarmement manuel " A U T O - MA NU - C Y / C Y IØ,8 SY21 S Marche Automatique ou B8 fin marche manuelle B8 IØ,9 2 Ø IØ,9 p IØ,2 SY22 S Marche manuelle B2 S Départ cycle/cycle " A RR E T D ' URGE NC E B21 S Arrêt d'urgence SY9 S IØ,21 3 Ø p F X " D E P A R T - R E A RME . BØ R B1 IØ,1 IØ,8 IØ,9 B2 IØ,8 4 Ø B21 IØ,3 IØ,21 p L 3/16 SY9 R B21 R F Tâche maître langage à contacts Mise à jour A B C Par p Tâche rapide Date Etude : Traitement préliminaire Dessins : Départ auto ou cycle/cycle T Réarmement manuel P Traitement postérieur Date : Machine automatique de perçage Traitement préliminaire (PRE) Folio 1 6 3 Exemples d'applications avec TSX 17-20/27/47 Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST " COND . OBSERVATIONS I N I T I A L E S O1Ø IØ,4 IØ,11 IØ,13 IØ,15 IØ,17 IØ,19 B4 R IØ,5 5 Ø IØ,6 p Si conditions initiales vérifiées : voyant allumé " C . P R E P A - R EG L AGE X1 6 Ø p B4 S SY23 S B1 O1,Ø I1,1 lancement cycle de préparation figeage GRAFCET pour réglage machine " X L F " F Tâche maître langage à contacts Mise à jour A B C Par p Tâche rapide Date Etude : Traitement préliminaire Dessins : P Date : Machine automatique de perçage: Traitement préliminaire (PRE) T Traitement postérieur Folio 2 6 3/17 Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST OBSERVATIONS " XØ,2 # Modification O1,Ø B1 X Ø 1 transition : XØ,1 → XØ,2 voyant C.I. et départ " XØ,3 # Modification IØ,1Ø X IØ,7 Ø 2 transition: XØ,2 → XØ,3 piece chargée ou déja présente (P4) " F X L 3/18 " F Tâche maître langage à contacts Mise à jour A B C Par p Tâche rapide Date Etude : Traitement préliminaire Dessins : P Date : Modes de Marches et d'Arrêts: Traitement Séquentiel (transitions) T Traitement postérieur Folio 3 6 3 Exemples d'applications avec TSX 17-20/27/47 Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST OBSERVATIONS " B2 R 1ØØ J 12Ø J B2 B4 1 Ø IØ,8 IØ,9 P Départ cycle/cycle Saut vers programme cycle de préparation Saut vers programme marche manuelle " A C T I ON S 2 Ø P X2 IØ,7 OØ,1 X3 OØ,2 associée à l'étape X5 OØ,3 X6 OØ,5 modification action X2 " Réseaux de contacts X 3Ø et 5Ø inchangés F " X12 OØ,9 X13 7 Ø X17 P OØ,1Ø L OØ,11 15Ø J F Tâche maître langage à contacts Mise à jour A B C Par p Tâche rapide Date Etude : Traitement préliminaire Dessins : T Saut vers fin postérieur P Date : Machine automatique de perçage Traitement Postérieur (POS) Traitement postérieur Folio 4 6 3/19 Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST " MA R . OØ,2 B4 IØ,11 1 Ø Ø P OBSERVATIONS P R E P A R A T I ON Marche de préparation IØ,15 OØ,6 pour satisfaire IØ,13 OØ,4 les conditions initiales (a -, c -, b -) " MA R . P R E P A R A T I ON B4 IØ,17 OØ,8 IØ,19 OØ,1Ø 1 1 Ø P e- 15Ø J saut vers fin postérieur " MA RCH E MA NU A - B IØ,9 IØ,8 IØ,1Ø I1,1Ø OØ,1 IØ,11 I1,11 OØ,2 IØ,12 I1,12 OØ,3 IØ,13 I1,13 OØ,4 1 2 Ø P F d- X " MA RCH E MA NU OØ,5 IØ,15 I1,15 OØ,6 IØ,16 I1,16 OØ,7 IØ,17 I1,17 OØ,8 L 3/20 F Tâche maître langage à contacts Mise à jour A B C Par de C manuelle recul vérin A de C manuelle sortie vérin B de C manuelle recul vérin B C - D IØ,9 IØ,8 IØ,14 I1,14 1 3 Ø P de C manuelle sortie vérin A p Tâche rapide Date Etude : Traitement préliminaire Dessins : de C manuelle sortie vérin C de T C manuelle recul vérin C de C manuelle sortie vérin D de C manuelle recul vérin D P Traitement postérieur Date : Machine automatique de perçage Traitement Postérieur (POS) Folio 5 6 3 Exemples d'applications avec TSX 17-20/27/47 Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST " MA RCH E IØ,9 IØ,8 IØ,18 I1,18 OØ,9 IØ,19 I1,19 OØ,1Ø IØ,2Ø I1,2Ø OØ,11 1 4 Ø P " F I N OBSERVATIONS E - F MA NU de C manuelle sortie vérin E de C manuelle recul vérin E de C manuelle sortie vérin F POS T E R I E UR B255 1 5 Ø P Label fin du traitement postérieur " X L F " F Tâche maître langage à contacts Mise à jour A B C Par p Tâche rapide Date Etude : Traitement préliminaire Dessins : T P Traitement postérieur Date : Machine automatique de perçage Traitement Postérieur (POS) Folio 6 6 3/21 3.4 Comptage des pièces (troisième partie) Un compteur permet de compter le nombre de pièces contrôlées. La valeur courante du compteur (C0) peut être initialisée par action sur un bouton-poussoir "bpiniC0" (I1,0). Modification du GRAFCET avance chargeur 2 5 avance serrage descente testeur 10 T=5s incrémentation compteur Pupitre de commande INIT COMP. VOY. COND INI ART. REGLAGE 1 Auto-Manu cycle/cycle Marche AUTO Arrêt d'urgence CY/CY REARM. 0 Commandes manuelles Chargement A+ F 3/22 A- Serrage Perçage Testeur B+ C+ D+ B- C- D- Evacuation E+ E- Rotation F+ Exemples d'applications avec TSX 17-20/27/47 3 3.4-1 Programme Les entrées R et U du compteur C0 fonctionnent sur front : • un front montant sur l’entrée I1,0 réinitialise C0,V • l’activation de l’étape 10 incrémente le compteur. Formulaire programmation schéma à contacts PL7-2 N° ZONE ACTION ZONE TEST " COMP T AGE I1,Ø 4 Ø X1Ø P B4Ø OBSERVATIONS P I E C E S B254 CØ R E Insertion label 4Ø dans traitement Postérieur (POS) ↑u entre label 3Ø et label 5Ø " MA R . B4 IØ,17 1 IØ,19 1 Ø I1,Ø P P R E P A R A T I ON OØ,8 Modification label 11Ø OØ,1Ø Traitement postérieur B4Ø mémorisation de l'information I1,Ø 15Ø dans B4Ø J F 3/23 3.5 Communication par bloc texte (quatrième partie) 3.5-1 Affichage défauts sur imprimante. Les caractéristiques des pièces déclarées mauvaises au contrôle sont affichées sur une imprimante, raccordée à la prise terminal de l’automate. Message émis : "PIECE NUMERO : ....CRLF" (émission de 20 caractères). CR : caractère de contrôle "retour en début de ligne" (Carriage Return), code ASCII: H’0D’. LF : caractère de contrôle "saut de ligne" (Line Feed), code ASCII : H’0A’. La partie constante du message doit être mémorisée dans une table de mots constants : Tableau des codes ASCII des caractères : H'..' CW0 à saisir en mode CONFIGURATION. CW1 I C CW2 CW3 CW4 CW5 CW6 U E O F 3/24 P E E N M R : 49 43 20 55 45 4F 20 50 45 45 4E 4D 52 3A 3 Exemples d'applications avec TSX 17-20/27/47 Les valeurs numériques(1) codées en binaire sur 16 bits doivent être obligatoirement transcodées en ASCII (opération: BTA), avant d’être émise par un bloc texte. Le contenu de C0,V devra donc être transcodé en ASCII. Le résultat sera placé dans trois mots successifs. Exemple : BTA C0,V → W10 si C0,V contient la valeur 978, après transcodage, les mots W10, W11 et W12 contiendront le résultat en hexadécimal. W10 W11 W12 Les chiffres sigificatifs sont donc placés dans 00 00 00 39 37 38 W11 et W12. En effet, C0,V ≤ 9999 Programme Ce réseau de contacts est associé à l’étape 16. Il est saisi dans la zone de traitement séquentiel. "A C T I ON S X 1 6 OPERATE X 1 6 X 6 Ø P OPERATE CWØ [7] → WØ [7] OPERATE W11[2] → W7 [2] OPERATE H'ODOA' → W9 C A R A C . B253 TXTØ TER WØ X16 L (1) " EM I S S I ON Insertion label 6Ø dans traitement Postérieur (POS) T bloc texte émission sur prise terminal nbres caractères:2Ø L=2Ø F Tâche maître langage à contacts Mise à jour BTA CØ,V → W1Ø Par p Tâche rapide Date Etude : A B C caractères alphanumériques en général. Traitement préliminaire Dessins : P Date : Machine automatique de perçage Traitement Postérieur (POS) Traitement postérieur Folio 1 2 3/25 F 3.5-2 Datation des défauts (avec TSX 17-20 muni de l’option horodateur) La fonction "DT" (voir intercalaire B : Langages à contacts, chapitre 7 : Bloc fonction Horodateur), sera utilisée pour horodater les messages concernant les pièces mauvaises. Le message à afficher devient le suivant : "SSAA-MM-JJ-HH:MN:SS-DNP:....CRLF" (30 caractères au total) < DT : 22 caractères > voir page 3/22 . . . . valeur de C0,V Programme Le programme ci-dessous doit se substituer à celui de la page précédente. Ce réseau de contacts est associé à l’étape 16. Il est saisi dans la zone de traitement séquentiel. " A C T I ON S X 1 6 X 1 6 F X 6 Ø P 3/26 BTA CØ,V → W11 OPERATE DT → WØ [11] OPERATE H'3A5Ø' → W11 OPERATE H'ODOA' → W14 " B253 TXTØ X16 L OPERATE TER Insertion label 6Ø dans traitement Postérieur L=3Ø F Tâche maître langage à contacts Mise à jour A B C T bloc texte émission sur prise terminal nbres caractères:3Ø WØ Par p Tâche rapide Date Etude : Traitement préliminaire Dessins : P Date : Machine automatique de perçage Traitement Postérieur (POS) Traitement postérieur Folio 2 2 X Annexes Annexes Sous chapitre 4 Chapitre 4 Page 4.1 Temps d’éxécution mémoire 4/2 4.2 Définitions GEMMA 4/4 4.3 Code ASCII 4/5 Ce chapitre se termine à la page 4/6 F 4/1 4.1 Temps d'éxécution mémoire Système Temps en µs Elément Gestion du terminal Gestion automate Module TSX17-20 TSX 27 TSX 47 100 100 100 2100 2100 (1) 700 à 830 4 entrées/4sorties - - 340 8 entrées - - 260 12 entrées - 400 - 16 entrées - - 400 32 entrées - - 800 8 sorties - 280 220 - 320 - 640 16 sorties 32 sorties (1) (1) Acquisition des entrées 148 à 490 - - Rafraîchissement des sorties 64 à 250(1) - - TSX 27/47 Nombre d'octets selon configuration Zone test M S R Temps en µs Objet (ou type) Elément graphique TSX 17-20 I/Oxy,i (bac 0) - 2 2 I/Oxy,i (bac 1) - 10 12 Ix,i 2 - 2 Ox,i 4 - 5 B0 à B127; Xi; Ti,D(ex); SYi 4 4,5 5 B128 à B255; I/Oxy,S; TXTi,D(E) 10 10 12 Bit extrait de mots F Bloc fonction M S R Temporisateur 44 à 78 60 10 Monostable 36 à 68 55 10 Compteur 46 à 93 75 10 Compteur rapide 76 à 132 - 10 Registre 72 à 141 100 16 69 à 116(1) 75(1) 14 53 à 247 - 11 - 50(2) 7 65(3) 65(3) 7 129 à 143 150 14 10 10 8 Programmateur cyclique Horodateur Bloc texte Simplifié Complet < Comparaison Liaison verticale (1) (2) (3) 400 + 40 x (nb bits d'ordre) si changement d'état, 220 + 8 x (nb de blocs texte actifs) si bloc texte actif, 270 + 8 x (nb de blocs texte actifs) si bloc texte actif 4/2 4 Annexes Zone action Elément graphique Nombre d'octets TSX 17-20 TSX 27/47 Oxy,i(bac 0) - 10 5 Oxy,i(bac 1) - 20 16 Ox,i 12 - 9 B0 à B127 12 12 9 B128 à B255 21 21 16 Xi ou SYi 3 3 6 Bits extraits de mots 12 12 13 S +2 +2 +2 R idem ci-dessus JUMP OPER Temps en µs Objet (ou type) 24 24 16 Logique et arithmétique (+, -, /, x) - 200 19 Logique et arithmétique (+, -) 163 - 19 Multiplication (16 bits) 207 à 227 - 19 Division (16 bits) 196 à 733 - 19 Complément CPL 170 170 17 Conversion BCD → Binaire 285 285 17 Conversion Binaire → BCD 400 400 17 Conversion Binaire ↔ ASCII 175 + (70 x nb chiffres) 120 + (70 x nb chiffres) 10 Décalage SRCn/SLCn 175 + (13 x n) 175 + (13 x n) 19 → mot 145 145 14 valeur → mot 140 140 14 Transfert : mot mot → mot indexé F 195 195 16 500 500 23 n bits → n bits 150 + (20 x n) 150 + (20 x n) 19 n mots → n mots 150 + (60 x n) 150 + (60 x n) 13 16 16 22 + nc (*) 16 bits → mot Supplément par réseau (*) nc = nombre de caractères pour commentaires Nota : Si les conditions d'exécution des blocs comparaison arithmétique et logique ne sont pas remplies (ligne ladder non passante) leur exécution est réduite à 2 microsecondes. 4/3 4.2 Définitions GEMMA Marche de production normale C'est le fonctionnement normal. C'est l'état pour lequel l'automatisme a été conçu. A ce fonctionnement a été associé le Grafcet de base. Marche de préparation C'est une marche préparatoire à la marche de production normale. C'est une marche transitoire. Marche de clôture Comme la marche de préparartion, c'est une marche transitoire qui peut être nécessaire en fin de campagne, de série, de journée dans le but de "vider" certaines machines, ou sousensembles. Marche dégradée Production tout de même. La production après une défaillance de la machine, est assurée soit par le forçage de certaines informations, soit par l'intervention des opérateurs. Arrêt normal De différents types, il n'est pas la conséquence d'une défaillance, l'arrêt peut s'effectuer : • dans l'état initial, • en fin de cycle, • dans un état déterminé. Arrêt sur défaut C'est un arrêt subi, suite à une défaillance. L'arrêt très souvent est effectif après des cycles de dégagement ou après des procédures limitant les concéquences dues à la défaillance. Vérification dans l'ordre Le cycle de production est analysé par l'opérateur sous-ensemble par sous-ensemble ou séquence par séquence. Vérification dans le désordre Le contrôle de certaines fonctions ou de certains mouvements est effectué sans respecter l'ordre du cycle. F 4/4 4 Annexes 4.3 Code ASCII Colonne b7 0 0 0 0 0 0 0 0 b6 0 0 0 0 1 1 1 1 b5 0 0 1 1 0 0 1 1 b4 0 1 0 1 0 1 0 1 0 1 2 3 4 5 6 7 b3 b2 b1 b0 Ligne 0 0 0 0 0 NUL DLE SP 0 @ P \ p 0 0 0 1 1 SOH DC1 ! 1 A Q a q 0 0 1 0 2 STX DC2 " 2 B R b r 0 0 1 1 3 ETX DC3 # 3 C S c s 0 1 0 0 4 EOT DC4 $ 4 D T d t 0 1 0 1 5 ENQ NAK % 5 E U e u 0 1 1 0 6 ACK SYN & 6 F V f v 0 1 1 1 7 BEL ETB ' 7 G W g w 1 0 0 0 8 BS CAN ( 8 H X h x 1 0 0 1 9 HT EM ) 9 I Y i y 1 0 1 0 A LF SUB * : J Z j z 1 0 1 1 B VT ESC + ; K [ k { 1 1 0 0 C FF FS , < L \ l | 1 1 0 1 D CR GS - = M ] m } 1 1 1 0 E SO RS . > N ^ n ~ 1 1 1 1 F SI US / ? O _ o DEL 4/5 F F 4/6