- Schneider Electric
- Premium et Atrium sous EcoStruxure™ Control Expert - TSXCSY85 Module de commande de mouvement SERCOS®
- Mode d'emploi
Schneider Electric Premium et Atrium sous EcoStruxure™ Control Expert - TSXCSY85 Module de commande de mouvement SERCOS® Mode d'emploi
Ajouter à Mes manuels162 Des pages
▼
Scroll to page 2
of
162
Premium et Atrium sous EcoStruxure™Control Expert 35010452 12/2018 Premium et Atrium sous EcoStruxure™ Control Expert Module de commande de mouvement SERCOS® TSX CSY 85 Manuel de configuration (Traduction du document original anglais) 35010452.09 12/2018 www.schneider-electric.com Le présent document comprend des descriptions générales et/ou des caractéristiques techniques des produits mentionnés. Il ne peut pas être utilisé pour définir ou déterminer l'adéquation ou la fiabilité de ces produits pour des applications utilisateur spécifiques. Il incombe à chaque utilisateur ou intégrateur de réaliser l'analyse de risques complète et appropriée, l'évaluation et le test des produits pour ce qui est de l'application à utiliser et de l'exécution de cette application. Ni la société Schneider Electric ni aucune de ses sociétés affiliées ou filiales ne peuvent être tenues pour responsables de la mauvaise utilisation des informations contenues dans le présent document. Si vous avez des suggestions, des améliorations ou des corrections à apporter à cette publication, veuillez nous en informer. Vous acceptez de ne pas reproduire, excepté pour votre propre usage à titre non commercial, tout ou partie de ce document et sur quelque support que ce soit sans l'accord écrit de Schneider Electric. Vous acceptez également de ne pas créer de liens hypertextes vers ce document ou son contenu. Schneider Electric ne concède aucun droit ni licence pour l'utilisation personnelle et non commerciale du document ou de son contenu, sinon une licence non exclusive pour une consultation « en l'état », à vos propres risques. Tous les autres droits sont réservés. Toutes les réglementations locales, régionales et nationales pertinentes doivent être respectées lors de l'installation et de l'utilisation de ce produit. Pour des raisons de sécurité et afin de garantir la conformité aux données système documentées, seul le fabricant est habilité à effectuer des réparations sur les composants. Lorsque des équipements sont utilisés pour des applications présentant des exigences techniques de sécurité, suivez les instructions appropriées. La non-utilisation du logiciel Schneider Electric ou d'un logiciel approuvé avec nos produits matériels peut entraîner des blessures, des dommages ou un fonctionnement incorrect. Le non-respect de cette consigne peut entraîner des lésions corporelles ou des dommages matériels. © 2018 Schneider Electric. Tous droits réservés. 2 35010452 12/2018 Table des matières Consignes de sécurité . . . . . . . . . . . . . . . . . . . . . . . . . . A propos de ce manuel. . . . . . . . . . . . . . . . . . . . . . . . . . Chapitre 1 Architecture SERCOS® . . . . . . . . . . . . . . . . . . . . . . . . . Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Introduction à l’architecture SERCOS®. . . . . . . . . . . . . . . . . . . . . . . . Evolution des modules TSX CSY xxx . . . . . . . . . . . . . . . . . . . . . . . . . Chapitre 2 Méthodologie de mise en oeuvre . . . . . . . . . . . . . . . . . . Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mise en œuvre d'un axe indépendant . . . . . . . . . . . . . . . . . . . . . . . . . Mise en oeuvre d’un groupe d’axes coordonnés ou suiveurs . . . . . . . Chapitre 3 Présentation des fonctions du module TSX CSY 85 . . . Présentation des spécificités du module TSX CSY 85 . . . . . . . . . . . . Rappels sur le fonctionnement de l'instruction TRF_RECIPE . . . . . . . Rappels sur le fonctionnement de l'instruction WRITE_CMD . . . . . . . Configuration d'un axe indépendant (voies 1 à 12) . . . . . . . . . . . . . . . Configuration d'un profil de came . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuration d'un groupe d'axes suiveurs (voies 21 à 24). . . . . . . . . Chapitre 4 Fonctions d’interpolation. . . . . . . . . . . . . . . . . . . . . . . . . 4.1 Fonction de calcul de trajectoire : TrjCompute (ACTION_TRF (26900) TrjCompute : fonction de calcul de trajectoire (ACTION_TRF = 26900) GetInterpoErrorPoint : fonction de détection du point d'erreur (ACTION_TRF = 14902) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Interpolation linéaire : type 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Interpolation linéaire avec liaison selon une interpolation polynomiale de degré 3 : type 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Interpolation linéaire avec liaison selon une interpolation polynomiale de degré 5 : type 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Interpolation linéaire avec liaison selon une interpolation circulaire : type 10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Interpolation circulaire avec indication du rayon : type 11. . . . . . . . . . Interpolation circulaire avec indication du centre : type 12 . . . . . . . . . Interpolation axe tangentiel : type 100 ou 101. . . . . . . . . . . . . . . . . . . 35010452 12/2018 7 9 11 12 14 16 19 20 22 24 25 26 28 30 32 39 43 47 48 49 54 55 57 63 67 72 74 76 3 4.2 Positionnement du maître et gestion de la vitesse. . . . . . . . . . . . . . . . GetTabResultF : résultat du calcul de trajectoire (ACTION_TRF = 16901) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MoveImmedInterpo : Variation de la vitesse du maître (ACTION_CMD = 905) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetMinimumConstantSpeed : obtention de la vitesse constante la plus faible possible (ACTION_TRF = 14905). . . . . . . . . . . . . . . . . . . . . . . . Chapitre 5 Objets langage Sercos . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.1 Objets langage et IODDT du module SERCOS. . . . . . . . . . . . . . . . . . Présentation des IODDT associés aux modules TSX CSY 85 . . . . . . Objets langage à échange implicite associés à la fonction métier. . . . Objets langage à échange explicite associés à la fonction métier. . . . Gestion de l'échange et du compte rendu avec des objets explicites . Interface langage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gestion des paramètres. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WRITE_PARAM et READ_PARAM . . . . . . . . . . . . . . . . . . . . . . . . . . . SAVE_PARAM et RESTORE_PARAM . . . . . . . . . . . . . . . . . . . . . . . . WRITE_CMD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WRITE_CMD Exemples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . READ_STS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2 Objets langage et IODDT spécifiquement associés au module SERCOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Détail des objets à échanges implicites de l'IODDT de type T_CSY_CMD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Détail des objets à échanges explicites de l'IODDT de type T_CSY_CMD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Détails relatifs aux objets à échanges implicites de l'IODDT de type T_CSY_RING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Détails relatifs aux objets à échanges explicites de l'IODDT de type T_CSY_RING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Détail des objets à échanges explicites de l'IODDT de type T_CSY_TRF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Détails relatifs aux objets à échanges implicites de l'IODDT de type T_CSY_IND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Détails relatifs aux objets à échanges explicites de l'IODDT de type T_CSY_IND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Détail des objets à échanges implicites de l'IODDT de type T_CSY_FOLLOW. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Détails concernant les objets à échanges explicites de l'IODDT de type T_CSY_FOLLOW. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 78 79 82 87 89 90 91 92 93 95 100 101 103 104 105 107 109 110 111 113 115 118 122 124 128 132 135 35010452 12/2018 Détail des objets à échanges implicites de l'IODDT de type T_CSY_COORD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Détail des objets à échanges explicites de l'IODDT de type T_CSY_COORD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Détail des objets à échanges implicites de l'IODDT de type T_CSY_CAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Détail des objets à échanges explicites de l'IODDT de type T_CSY_CAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3 Type d’IODDT Type T_GEN_MOD applicable à tous les modules . . . Détails des objets langage de l'IODDT de type T_GEN_MOD . . . . . . Annexes ......................................... Annexe A Codes d’erreur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Codes d'erreur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Index 35010452 12/2018 ......................................... 144 147 151 152 155 155 157 159 159 161 5 6 35010452 12/2018 Consignes de sécurité Informations importantes AVIS Lisez attentivement ces instructions et examinez le matériel pour vous familiariser avec l'appareil avant de tenter de l'installer, de le faire fonctionner, de le réparer ou d'assurer sa maintenance. Les messages spéciaux suivants que vous trouverez dans cette documentation ou sur l'appareil ont pour but de vous mettre en garde contre des risques potentiels ou d'attirer votre attention sur des informations qui clarifient ou simplifient une procédure. 35010452 12/2018 7 REMARQUE IMPORTANTE L'installation, l'utilisation, la réparation et la maintenance des équipements électriques doivent être assurées par du personnel qualifié uniquement. Schneider Electric décline toute responsabilité quant aux conséquences de l'utilisation de ce matériel. Une personne qualifiée est une personne disposant de compétences et de connaissances dans le domaine de la construction, du fonctionnement et de l'installation des équipements électriques, et ayant suivi une formation en sécurité leur permettant d'identifier et d'éviter les risques encourus. 8 35010452 12/2018 A propos de ce manuel Présentation Objectif du document Ce manuel contient des instructions spécifiques d'installation du logiciel de commande de mouvement du module SERCOS® TSX CSY 85. Seules les caractéristiques propres au module TSX CSY 85 sont exposées dans ce manuel. En l'absence d'une description spécifique, les fonctions du module TSX CSY 85 sont considérées identiques à celles du module TSX CSY 84 décrit dans le manuel de configuration du module TSX CSY 84/164. NOTE : toutes les procédures de montage qui s'appliquent au module TSX CSY 84 sont valables pour le module TSX CSY 85. Champ d'application Cette documentation est applicable à EcoStruxure™ Control Expert 14.0 ou version ultérieure. Information spécifique au produit AVERTISSEMENT FONCTIONNEMENT IMPREVU DE L'EQUIPEMENT L'utilisation de ce produit requiert une expertise dans la conception et la programmation des systèmes d'automatisme. Seules les personnes avec l'expertise adéquate sont autorisées à programmer, installer, modifier et utiliser ce produit. Respectez toutes les réglementations et normes de sécurité locales et nationales. Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des dommages matériels. 35010452 12/2018 9 10 35010452 12/2018 Premium et Atrium sous EcoStruxure™Control Expert Architecture SERCOS 35010452 12/2018 Chapitre 1 Architecture SERCOS® Architecture SERCOS® Objet du chapitre Ce chapitre présente brièvement la liaison numérique entre un maître et ses esclaves, telle qu'elle est définie par la norme EN 61491 « Liaison des données sérielles pour communications en temps réel entre unités de commande et dispositifs d’entraînement ». Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Introduction 12 Introduction à l’architecture SERCOS® 14 Evolution des modules TSX CSY xxx 16 35010452 12/2018 11 Architecture SERCOS Introduction Liaison numérique La liaison numérique entre un module de commande d’axes (maître) et des variateurs de vitesse intelligents (esclaves) est définie par la norme européenne EN 61491, concernant les équipements électriques des machines industrielles. L’utilisation d’une architecture distribuée permet de raccorder les entrées/sorties application (codeur de position, arrêt d’urgence, ...) directement sur les variateurs de vitesse, ce qui limite les coûts de câblage. La liaison par fibre optique permet des échanges à grande vitesse (2 ou 4 MHz) et assure une immunité aux parasites. Données échangées Les données échangées via la liaison numérique sont de 2 types : des données cycliques échangées entre le maître et les esclaves (commande de position, ...) ou entre les esclaves et le maître (mesure de position, ...). L’échange de données cycliques, entre le maître et chaque esclave, est limité à 8 objets en lecture et 8 objets en écriture, tous les cycles SERCOS®. des données non cycliques : commandes complexes, écriture ou lecture de paramètres, ... Pour chaque cycle, ces échanges s’effectuent au moyen de 2 octets réservés en lecture et 2 octets réservés en écriture. Plusieurs cycles sont donc nécessaires pour échanger un objet (par exemple, pour effectuer la lecture d’un paramètre). Identification des objets échangés Tous les objets sont accessibles au travers d’un numéro d’identification : IDN. La norme permet d’identifier 31 768 objets, parmi lesquels elle en spécifie environ 300 (par exemple, IDN 40 = valeur de la vitesse). Tous les objets comprennent les champs suivants : Nom (64 caractères au maximum), attribut, unité, valeur maximale, valeur minimale, valeur. 12 35010452 12/2018 Architecture SERCOS Modes de fonctionnement Les modes de fonctionnement du bus suivent les 5 phases suivantes : Au démarrage Phase Mode de fonctionnement Phase 0 Test du bus en anneau. Les variateurs de vitesse sont en mode répéteur. Phase 1 Détermination des esclaves présents sur le bus. Phase 2 Configuration système des variateurs de vitesse. Phase 3 Programmation des échanges cycliques. Paramétrage des variateurs de vitesse. En fonctionnement normal Phase Mode de fonctionnement Phase 4 Echanges cycliques actifs. Chaque variateur de vitesse servant de répéteur sur le bus, une coupure d’alimentation, un défaut de communication, un défaut sur l’un des variateurs de vitesse ou la coupure du bus provoque le passage en phase 0. NOTE : Certains paramètres (IDN) ne sont accessibles qu’en phase 3 (se reporter à la norme EN 61491). Les fonctions GetActualPhase, GetCommandedPhase et SetCommandedPhase permettent de connaître la phase en cours et de se positionner en phase 3. 35010452 12/2018 13 Architecture SERCOS Introduction à l’architecture SERCOS® Présentation L'architecture SERCOS® se présente de la manière suivante : Présentation de l’offre Premium L’offre Premium se compose : de la gamme d’automates Premium (rack, alimentation, processeur, etc.) : TSX/PCX/PMX 57, de contrôleurs de mouvement TSX CSY 84 ou TSX CSY 85 pouvant piloter jusqu’à 8 variateurs à l'aide du bus en anneau ; du contrôleur de mouvement TSX CSY 164 pouvant piloter jusqu’à 16 variateurs à l'aide du bus en anneau ; de la gamme de variateurs Lexium 17S (4 A à 56 A) : AKM 17S de la gamme de moteurs : BPH..., du logiciel UniLink qui permet de paramétrer et de régler les variateurs ; de TjE (éditeur de trajectoires). 14 35010452 12/2018 Architecture SERCOS Synoptique fonctionnel La figure suivante présente les différentes fonctions réalisées par le contrôleur de mouvement et les variateurs : NOTE : il est possible d’utiliser un variateur n'appartenant pas à la gamme Premium. Dans ce cas, il sera configuré par son logiciel de configuration et non par UniLink. Fonctions réalisées par les différents modules Les contrôleurs de mouvement TSX CSY 84/85 calculent des trajectoires et interpolent plusieurs axes. Le variateur gère les boucles de position, de vitesse et de couple. Il assure également la conversion de puissance pour piloter le moteur. Les informations du codeur sont envoyées au variateur (position courante, vitesse en cours). Les échanges entre l'automate et le contrôleur de mouvement s'effectuent à l'aide du bus X situé en fond de rack. Les échanges entre le contrôleur de mouvement et les variateurs utilisent le bus en anneau SERCOS®. 35010452 12/2018 15 Architecture SERCOS Evolution des modules TSX CSY xxx Présentation La version du module est affichée : sur l’étiquette se trouvant sur le côté du module, dans la zone module des écrans de mise au point en mode connecté. CSY 84 CSY 84 CSY 84 CSY 84 CSY 85 CSY 85 CSY V1.1 V1.2 V1.3 V1.6 V1.0 V1.6 164 V1.0 CSY 164 V1.3 CSY 164 V1.6 Possibilité de fermer la boucle de position via un codeur incrémental ou SSI sur les variateurs Lexium 17S et 17HP (1) (Non documenté) X X X X X X X X X Possibilité de commuter la commande position en couple (1) et (2) (Non documenté) X X X X X X X X X Possibilité de commuter la commande position en commande vitesse (1) et (2) (Non documenté) X X X X X X X X X Lire ou écrire les paramètres du variateur X X X X X X X X X Boucle de position avec codeur externe (1) X X X X X X X X X Mode Torque (1) X X X X X X X X X Mode Vitesse (1) X X X X X X X X X X X X X X X X X Comportement sur défaut ou dévalidation d’un axe indépendant (FREEWHEEL_STOP) (3)) X X X X X X X Propagation des arrêts dans un groupe suiveur X X X X X X X Fonction d’alignement des pentes d’arrêts d’urgence X X X X X X X Mode Manuel 16 35010452 12/2018 Architecture SERCOS CSY 84 CSY 84 CSY 84 CSY 84 CSY 85 CSY 85 CSY V1.1 V1.2 V1.3 V1.6 V1.0 V1.6 164 V1.0 X CSY 164 V1.3 CSY 164 V1.6 X X Choix du comportement d’arrêt sur ordre de verrouillage X X X X Arrêt d'un axe membre d'un groupe suiveur à une position absolue après un Unlink X X X X X X Arrêt d'un axe membre d'un groupe suiveur à une position absolue X X X X X X Fonction "activation de suivi sur cible" X X X X X X Service compteur de Modulo X X X X X X Passage des paramètres ACC et DEC dans le MOVE X X X X X X Arrêt de suivi (Unlink) du groupe suiveur déclenché par un trigger X X X X X X Configuration dynamique des voies indépendantes X X X Reconfiguration dynamique des groupes (4) X X X Fonction de surveillance des écarts entre axes X X X Fonctions spécifiques d’interpolation X X Fonctions spécifiques de cames X X Déplacement absolu audessus de la limite de retour à zéro pour des axes indépendants X X X Fonctions de déplacement pour axes coordonnés compatibles avec MMS Quantum X X X 35010452 12/2018 17 Architecture SERCOS CSY 84 CSY 84 CSY 84 CSY 84 CSY 85 CSY 85 CSY V1.1 V1.2 V1.3 V1.6 V1.0 V1.6 164 V1.0 CSY 164 V1.3 CSY 164 V1.6 Fonctions GetPositionCounter et SetPositionCounter X X X Nouvelles fonctions d'ajustement pour l'axe réel : EnableDriveWarning et DisableDriveWarning X X X (1) Nécessite une modification des fichiers des modules TSX CSY 84/85/164 (Sercos.cfg). (3) Nécessite une version minimale des variateurs Lexium (MHDS xxxxN 00≥ SV 1.3, MHDA xxxx ≥ SV 1.4 ), pas de restriction pour les variateurs Lexium HP et AS en option Lexium. (3) Nécessite une version minimale pour les variateurs Lexium MHDx 5.51. (4) La fonction MOD_PARAM n'est pas disponible pour les modules TSX CSY 84 et TSX CSY 85. NOTE : Les versions CSY 84/164 V1.3 et CSY 85 V1.0 sont des versions minimales. Des versions ultérieures sont actuellement disponibles. 18 35010452 12/2018 Premium et Atrium sous EcoStruxure™Control Expert Méthodologie de mise en oeuvre 35010452 12/2018 Chapitre 2 Méthodologie de mise en oeuvre Méthodologie de mise en oeuvre Objet du chapitre Ce chapitre décrit la méthodologie globale pour mettre en oeuvre un mouvement d’axe indépendant ou d’axes interpolés. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Présentation 20 Mise en œuvre d'un axe indépendant 22 Mise en oeuvre d’un groupe d’axes coordonnés ou suiveurs 24 35010452 12/2018 19 Méthodologie de mise en oeuvre Présentation Fonctionnalités du module TSX CSY 85 Le module TSX CSY 85 permet de réaliser les fonctionnalités suivantes : 8 axes réels connectés à un variateur de vitesse (voies 1 à 8), 4 axes imaginaires (voies 9 à 12), 4 axes à entrée de mesure externe (voies 13 à 16), 4 groupes d’axes coordonnés (voies 17 à 20). Chaque groupe permet l’interpolation linéaire de 2 à 8 axes, 4 groupes d’axes suiveurs (voies 21 à 24). Chaque groupe peut être composé au maximum de 7 axes : 1 axe maître et 6 axes esclaves, NOTE : les fonctionnalités en gras sont les seules nécessaires pour mettre en oeuvre la fonction de trajectoire interpolée spécifique au module TSX CSY 85. NOTE : Le module TSX CSY 85 propose également 7 profils de came (voies 25 à 31). Axe réel Un axe réel est un axe physique qui pilote un variateur de vitesse au travers du bus en anneau SERCOS®. Axe imaginaire Un axe imaginaire n’est pas un axe physique. Il peut être utilisé pour coordonner les mouvements de plusieurs axes physiques. Par exemple, un axe imaginaire peut être l’axe maître d’un groupe suiveurs. Un axe imaginaire peut également être utilisé en phase de réglage ou de mise au point pour simuler un axe réel maître indépendamment du procédé. Axe à mesure externe Un axe à mesure externe permet de remonter au module une information de position externe. Typiquement le module TSX CSY 85 a besoin d’effectuer un suivi de position à partir d’un codeur piloté par un mécanisme externe et raccordé sur l’entrée de position auxiliaire du variateur de vitesse. Groupe d'axes coordonnés Un groupe d’axes coordonnés se compose d’axes qui se déplacent en coordination les uns des autres. Un des axes du groupe, défini comme le maître de la coordination, sert de référence en vitesse pour le déplacement du groupe. L’accélération et la vitesse des autres axes coordonnés seront calculés pour que tous les axes effectuent leur déplacement en même temps. 20 35010452 12/2018 Méthodologie de mise en oeuvre Groupe d’axes suiveurs Un groupe d’axes suiveurs se compose d’un axe maître et d’axes esclaves qui suivent les mouvements de l’axe maître. Il existe deux manières de suivre l’axe maître : en mode ratio : chaque axe esclave suit l’axe maître suivant un rapport défini en configuration et appelé Rapport suiveur. Par exemple, la position de l’esclave est égale à celle du maître multiplié par un rapport x, en mode came : les axes esclaves suivent l’axe maître suivant un profil de came. Un profil de came permet de réaliser une came électronique, afin de simplifier la programmation de mouvements complexes. Une table de points permet de définir la position de l’esclave en fonction de celle du maître. 35010452 12/2018 21 Méthodologie de mise en oeuvre Mise en œuvre d'un axe indépendant Introduction Un axe indépendant peut être soit un axe réel connecté à un variateur de vitesse, soit un axe imaginaire, soit un axe à mesure externe. Les groupes d’axes suiveurs ou coordonnés sont composés d’un ensemble d’axes indépendants (donc réel, imaginaire ou à mesure externe). Méthodologie de mise en œuvre d’un axe réel Pour pouvoir mettre en œuvre un axe réel, la voie 0 doit être activée (tous les bits ALLOW de la voie 0 : %Qr.m.0.18 et %Qr.m.0.26 à %Qr.m.0.31 sont dans l'état 1). La méthodologie de mise en œuvre d’un axe réel s’effectue en 3 phases : Phase 1 : configuration du variateur de vitesse, en utilisant le logiciel UniLink, création de la trajectoire en utilisant le logiciel TjE (Trajectory Editor). Phase 2 : configuration du module TSX CSY 84, en utilisant l’éditeur de configuration de Control Expert (déclaration du module et configuration des paramètres pour tous les axes utilisés), Phase 3 : écriture du programme d'application, transfert de ce programme dans l'automate, transfert des données de trajectoire dans l'automate et mise au point de l'application. NOTE : La validation du variateur par le logiciel Unilink inhibe les commandes du module vers le variateur. Aussi, est-il nécessaire de dévalider le variateur avant de quitter le logiciel Unilink. Méthodologie de mise en œuvre d’un axe imaginaire Un axe imaginaire n’est pas connecté à un variateur de vitesse (ce n’est pas un axe physique). En dehors des opérations liées au variateur de vitesse qui n’existe pas, la mise en œuvre d’un axe imaginaire s’effectue de la même manière que pour un axe réel. Méthodologie de mise en œuvre d’une entrée de mesure externe Une entrée de mesure externe a beaucoup moins de fonctions que les autres types d’axes indépendants. Sa mise en œuvre est identique à celle d’un axe réel ou imaginaire dans lequel seule l’information de position est à configurer. Toutes les opérations liées au variateur de vitesse ou à la programmation d’un mouvement n’existent donc pas. 22 35010452 12/2018 Méthodologie de mise en oeuvre Méthodologie de mise en oeuvre d’un axe réel Présentation 35010452 12/2018 23 Méthodologie de mise en oeuvre Mise en oeuvre d’un groupe d’axes coordonnés ou suiveurs Groupe d’axes coordonnés Les axes coordonnés sont des axes réels ou imaginaires. Mettre en oeuvre un groupe d’axes coordonnés consiste donc à mettre en oeuvre les axes réels (méthodologie décrite pages précédentes) puis le groupe. Groupe d’axes suiveurs Dans un groupe d’axes suiveurs, l’axe maître peut être réel, imaginaire ou à mesure externe et les axes esclaves peuvent être réels ou imaginaires. La mise en oeuvre d’un groupe d’axes suiveurs revient donc à mettre en oeuvre les axes indépendants qui composent ce groupe, suivant la méthodologie décrite aux pages précédentes, puis le groupe. 24 35010452 12/2018 Premium et Atrium sous EcoStruxure™Control Expert Présentation des fonctions 35010452 12/2018 Chapitre 3 Présentation des fonctions du module TSX CSY 85 Présentation des fonctions du module TSX CSY 85 Objet de ce chapitre Ce chapitre présente les fonctionnalités spécifiques du module TSX CSY 85. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Présentation des spécificités du module TSX CSY 85 26 Rappels sur le fonctionnement de l'instruction TRF_RECIPE 28 Rappels sur le fonctionnement de l'instruction WRITE_CMD 30 Configuration d'un axe indépendant (voies 1 à 12) 32 Configuration d'un profil de came 39 Configuration d'un groupe d'axes suiveurs (voies 21 à 24). 43 35010452 12/2018 25 Présentation des fonctions Présentation des spécificités du module TSX CSY 85 Introduction Comme nous l’avons vu précédemment, le module TSX CSY 85 est en tout point identique au module TSX CSY 84 hormis une série de fonctionnalités logicielles d’interpolation. A l'aide du logiciel d'édition des trajectoires TjE, ces nouvelles fonctionnalités vont permettre, à partir de quelques points, de créer aisément des trajectoires complexes associées à des groupes de deux ou trois axes. NOTE : Le nombre maximum de points autorisés lors de la création de trajectoires peut varier selon la version du micrologiciel : Pour un micrologiciel version 1.1 ou antérieure : Le nombre maximum de points de référence autorisés est de 60. Pour un micrologiciel version 1.2 ou ultérieure : Le nombre maximum de points de référence autorisés est de 200. Un nombre maximal de sept profils de came est disponible sur ce module. Par conséquent, il est possible de gérer un maximum de deux groupes de trois axes ou bien trois groupes de deux axes. Les groupes étant indépendants et fonctionnant en simultané. Les trajectoires sont créées à l’aide de points définissant des segments suivant les types d’interpolation : linéaire stricte, linéaire avec liaison par interpolation polynomiale (cubique ou de degré 5), linéaire avec liaison par interpolation circulaire, circulaire. NOTE : Le logiciel d'édition de trajectoires est fourni avec le CD de fonction de trajectoire TSX CSY 85, qui comprend : le logiciel TjE (outils d’édition de trajectoire), le guide utilisateur du TjE. 26 35010452 12/2018 Présentation des fonctions Principe La trajectoire est créée par l’association d’axes réels esclaves à un axe maître par l’intermédiaire d’un groupe d’axe suiveurs. Les profils de came (tableau d'au maximum 5000 points maîtres pour 4996 points maîtres réels) sont calculés automatiquement pour garantir cette trajectoire. Description du principe : A partir de la table d’interpolation, les profils de came associés à chaque axe esclave sont calculés par l’algorithme interne du module. Les axes esclaves sont associés à l’axe maître. Par la programmation des axes esclaves à l’aide de la fonction standard TRF_RECIPE et des paramètres spécifiques à chaque type d’interpolation la trajectoire du maître est calculée. Ensuite, la gestion de la trajectoire du maître (en manuel ou automatique, par programmation ou interface utilisateur) permet d’obtenir instantanément les positions sur chaque axe esclave associé. NOTE : L’algorithme d’interpolation permet de créer des trajectoires avec un positionnement absolu (origine de la trajectoire identique à celle des axes) ou relatif (mouvement débutant à la position courante sur l’axe). NOTE : Les nouvelles fonctions proposées sont également en mesure de déterminer la vitesse maximale autorisée sur l'axe maître et par conséquent sur chaque axe de chaque segment de la trajectoire, mais aussi d'effectuer le mouvement complet à la vitesse la plus élevée possible (vitesse constante sur la somme des trajectoires) en tenant compte des accélérations maximales supportées par les moteurs selon la dynamique de la trajectoire. Limite du module TSX CSY 85 Le logiciel Control Expert accepte la fonction MOD_PARAM lorsqu’elle est utilisée avec le TSX CSY 85, mais elle n’est pas opérationnelle. La fonction MOD_PARAM n’est donc pas disponible pour le module TSX CSY 85, mais uniquement pour le module TSX CSY 164. 35010452 12/2018 27 Présentation des fonctions Rappels sur le fonctionnement de l'instruction TRF_RECIPE Rappel Cette instruction permet avec la fonction "Axe réel", de lire ou d’écrire les paramètres des variateurs de vitesse. NOTE : Vous pouvez également lire ou écrire les profils de came et lancer l'exécution de fonctions spéciales. Syntaxe de l'instruction TRF_RECIPE TRF_RECIPE %CHr.m.c (longueur, adresse %MW) : transfert des paramètres du variateur de vitesse, du profil de came, ou des paramètres d'une fonction spéciale vers ou à partir de la table qui débute à l'adresse %MW. La longueur de cette table à transférer est définie par le paramètre longueur. L'action à exécuter est définie par le mot %MWr.m.c.10 (ACTION_TRF). Exemple : TRF_RECIPE %CH1.4.3(10,100) (chargement des paramètres du variateur de vitesse de l'axe réel 3, du module situé en position 4 du rack 1, dans la table de longueur 10, qui débute à l’adresse %MW100). Interface TRF_RECIPE La commande à exécuter est définie dans le mot %MWr.m.c.10 et le résultat de la commande est disponible dans le mot %MWr.m.c.3 à %MWr.m.c.8. 28 Adresse Type Symbole Signification %MWr.m.c.3 Mot ERROR_TRF Erreur d'écriture de la commande TRF_RECIPE %MDr.m.c.4 Double Mot RETURN_TRF_1 Retour 1 de la fonction %MFr.m.c.6 Flottant RETURN_TRF_2 Retour 2 de la fonction %MFr.m.c.8 Flottant RETURN_TRF_3 Retour 3 de la fonction %MWr.m.c.10 Mot ACTION_TRF Action à réaliser %MDr.m.c.11 Double Mot PARAM_TRF_1 Paramètre 1 %MDr.m.c.13 Double Mot PARAM_TRF_2 Paramètre 2 %MFr.m.c.15 Flottant PARAM_TRF_3 Paramètre 3 %MFr.m.c.17 Flottant PARAM_TRF_4 Paramètre 4 35010452 12/2018 Présentation des fonctions Actions réalisées par TRF_RECIPE Les actions qu’il est possible de réaliser avec le service TRF_RECIPE sont : Fonction ACTION_TRF (%MWr.m.c.10) Signification Axe réel (1) 14905 Nouvelle fonctionnalité du TSX CSY 85 : lecture de la vitesse minimum possible de la trajectoire en fonction des tables d’interpolation envoyées au module par l’intermédiaire du code 26900. Axe réel (1) 16001 Chargement des paramètres du variateur de vitesse dans la mémoire de l'automate. Groupe d’axe 16901 Nouvelle fonctionnalité du TSX CSY 85 : lecture des paramètres du mouvement suite à un calcul de trajectoire (code 26900). positions clef du maître, vitesse maximum possible, vitesse calculée (vitesse réellement utilisée). Axe réel (1) 26001 Déchargement des paramètres du variateur de vitesse de la mémoire de l'automate. Groupe d’axe (1) 26900 Nouvelle fonctionnalité du TSX CSY 85 : calcul des trajectoires selon les segments d’interpolations donnés comme paramètres d’entrée. Légende (1) 35010452 12/2018 PARAM_TRF_1 à PARAM_TRF_4 = 0 29 Présentation des fonctions Rappels sur le fonctionnement de l'instruction WRITE_CMD Rappel Ce service permet d’émettre une commande vers le module de commande d’axes. WRITE_CMD : écriture explicite des mots de commande dans le module. Cette opération s'effectue à l'aide de mots internes %MW qui contiennent la commande à exécuter et ses paramètres (par exemple, une commande de mouvement). Syntaxe de l’instruction WRITE_CMD WRITE_CMD %CHr.m.c : écriture des informations de commande de la voie i, du module situé à l’adresse xy (numéro de rack, position dans le rack). Exemple : WRITE_CMD %CH0.3.1 (écriture des informations de commande de la voie 1, du module situé en position 3 du rack 0). Interface WRITE_CMD La commande à réaliser est définie dans le mot %MWr.m.c.26 et le résultat de la commande est disponible dans les mots %MWr.m.c.19 à %MWr.m.c.24 30 Adresse Type Symbole Signification %MWr.m.c.19 Mot ERROR_CMD Erreur d’écriture de la commande WRITE_CMD %MDr.m.c.20 Double Mot RETURN_CMD_1 Retour 1 de la fonction %MFr.m.c.22 Flottant RETURN_CMD_2 Retour 2 de la fonction %MFr.m.c.24 Flottant RETURN_CMD_3 Retour 3 de la fonction %MWr.m.c.26 Mot ACTION_CMD Action à réaliser %MDr.m.c.27 Double Mot PARAM_CMD_1 Paramètre 1 %MDr.m.c.29 Double Mot PARAM_CMD_2 Paramètre 2 %MFr.m.c.31 Flottant PARAM_CMD_3 Paramètre 3 %MFr.m.c.33 Flottant PARAM_CMD_4 Paramètre 4 35010452 12/2018 Présentation des fonctions Contrôle de l’échange Les 2 bits suivants peuvent être utilisés pour contrôler l’écriture des informations de commande dans le module : Bit Signification %MWr.m.c.0:X1 Ce bit est positionné à 1 lorsque l’échange est en cours. Il est remis à 0 lorsque l’échange est terminé. %MWr.m.c.1:X1 Ce bit est positionné à 1 si les paramètres transmis sont hors bornes ou erronés. 35010452 12/2018 31 Présentation des fonctions Configuration d'un axe indépendant (voies 1 à 12) Introduction Vous devez configurer le module TSX CSY 85 à l’aide du logiciel Control Expert. Un axe indépendant est soit un axe réel (voies 1 à 8), soit un axe imaginaire (voies 9 à 12). La configuration d’un axe réel va permettre de piloter un axe physique (qui utilise un variateur de vitesse). Dans ce cas, il est nécessaire d’assurer une certaine cohérence entre les paramètres saisis dans l’écran de configuration du module TSX CSY 85 et ceux définis lors de la configuration du variateur de vitesse. Tout d’abord effectuez la configuration des axes indépendants, deux ou trois axes réels et un axe qui sera utilisé ensuite comme maître des axes réels qui seront configurés ensuite comme axes suiveurs. Pour pouvoir utiliser les nouvelles fonctions d’interpolation décrites dans la suite de cette documentation vous devez respecter les règles suivantes : Les unités de mesure (pour les axes réels) sont exclusivement les suivantes : Type = Linéaire Position = mm Vitesse = mm/s 32 Accélération = mm/s2 L’algorithme d’interpolation utilise les paramètres Vitesse max., Accélération max. et Décélération max. de la zone Limites pour calculer les vitesses possibles sur chaque segment de la trajectoire. Utilisez ces valeurs pour définir les paramètres de la zone Mouvement tels que : Accélération max. = Accélération. Décélération max. = Décélération. La configuration de l’axe, futur maître de la trajectoire, doit respecter les conditions suivantes : Vitesse max. = somme vectorielle des vitesses maximum de chaque axe réel de la trajectoire (axes suiveurs). Accélération et décélération = minimums respectifs des accélérations et décélérations des axes réels sur la trajectoire. 35010452 12/2018 Présentation des fonctions Ecran de configuration L’écran de configuration d’un axe indépendant est le suivant. Il contient cinq zones de saisie de paramètres : Butées, Contrôle de position en validation, Unités, Facteur d'échelle et Mouvement. 35010452 12/2018 33 Présentation des fonctions Le tableau ci-dessous présente les différents éléments de l’écran de Configuration. Adresse Elément Fonction 1 Onglets L’onglet en avant-plan indique le mode en cours (Mise au point pour cet exemple). Chaque mode peut être sélectionné à l'aide de l'onglet correspondant. Les modes disponibles sont : Mise au point, accessible uniquement en mode connecté Diagnostic (par défaut), accessible seulement en mode connecté Réglage, Configuration 2 Zone du module Rappelle l’intitulé abrégé du module. Dans la même zone se trouvent trois voyants qui renseignent sur l'état du module en mode connecté : RUN indique l’état de fonctionnement du module. ERR signale un défaut interne au module. I/O signale un défaut externe au module ou un défaut applicatif. 3 Zone Voie Permet : d'afficher les onglets, en cliquant sur la référence de l’équipement : Description : donne les caractéristiques de l'équipement. Objets d’E/S (voir EcoStruxure™ Control Expert, Modes de fonctionnement) : affiche la présymbolisation des objets d’E/S. Défaut : donne accès aux défauts de l'équipement (en mode connecté). de choisir la voie, d’afficher le Symbole, nom de la voie défini par l’utilisateur (à l’aide de l’éditeur de variables). 4 Zone Paramètres généraux Permet de déforcer les bits et de visualiser la fonction de comptage : Déforcer : permet de déforcer les bits forcés. Fonction : affiche la fonction de comptage configurée. Ces informations ne peuvent pas être modifiées. Tâche : affiche la tâche MAST ou FAST configurée. Ces informations ne peuvent pas être modifiées. 5 Zone Paramètres actuels Cette zone affiche l’état des entrées et sorties et les différents paramètres du comptage en cours. Si le contenu du registre de comptage est inexploitable par suite d’un défaut sur les entrées, le message ou le voyant Mesure invalide apparaît en rouge. La suite de ce chapitre décrit les paramètres de la zone Paramètres actuels. 34 35010452 12/2018 Présentation des fonctions Paramètres de la zone Butées Description Parameters Description Contrôle de position Dans le cas d’une machine bornée, cette case à cocher permet d’activer le contrôle des butées (limites) de position. La position de l’axe est comparée avec les butées de position définies en configuration. Lorsque l’axe atteint l’une de ces butées, son mouvement est arrêté et un défaut est généré. Dans le cas d’un axe infini, cette case ne doit pas être cochée. Position max. Butée de position maximale. Cette valeur est saisie en flottant. Position min. Butée de position minimale. Cette valeur est saisie en flottant. Vitesse max. Vitesse maximale autorisée. Cette valeur est indépendante de celle définie dans le variateur de vitesse (axe réel). Cette valeur est saisie en flottant. Lorsque la vitesse maximale est configurée à la valeur 0, le contrôle de vitesse n’est plus validé. Accélération max. Accélération maximale autorisée. Cette valeur est indépendante de celle définie dans le variateur de vitesse (axe réel). Cette valeur est saisie en flottant. Décélération max. Décélération maximale autorisée. Cette valeur est indépendante de celle définie dans le variateur de vitesse (axe réel). Cette valeur est saisie en flottant. Paramètres de la zone Contrôle de position en validation Description Parameters Description Active Cette case à cocher permet de valider le contrôle de position. Lorsque l’axe est désactivé : si son déplacement est inférieur à la tolérance, celui-ci revient à sa position précédente, sur réactivation de l’axe si son déplacement est supérieur à la tolérance, celui-ci reste à sa nouvelle position, sur réactivation de l’axe. Tolérance Valeur de la fenêtre de contrôle. Cette valeur est saisie en flottant. 35010452 12/2018 35 Présentation des fonctions Paramètres de la zone Unités Description Parameters Description Type Type d’unités physiques utilisées pour exprimer la position, la vitesse et l’accélération affichées : Angulaires, Linéaires, Linéaires anglais ou Points codeur. Position Unité de position. Angulaires : mrad, rad, deg, arcmin, tours, Linéaires : μm, mm, cm, m Linéaires anglais : in, ft, yd, mile Points codeur : points. Vitesse Unité de vitesse. Angulaires : mrad/s, rad/s, rad/mim, deg/s, deg/min, arcmin/s, tours/s, tours/min Linéaires : µm/s, mm/s, mm/min, cm/s, cm/min, m/s, m/min Linéaires anglais : in/s, in/min, ft/s, ft/min, yd/min, mil/s Points codeur : points/ms, points/s, points/min Accélération Unité d’accélération. Angulaires : mrad/s2, rad/s2, deg/s2, arcmin/s2, tours/s2, tours/min/s Linéaires : μm/s2, mm/s2, cm/s2, m/s2, m/min2, g Linéaires anglais : in/s2, ft/s2, yd/min2, mil/s2 Points codeur : points/ms2, points/s2 Paramètres de la zone Facteur d’échelle Description 36 Paramètre Description Numérateur Numérateur du facteur d’échelle. Cette valeur est saisie en flottant. Dénominateur Dénominateur du facteur d’échelle. Cette valeur est saisie en flottant. 35010452 12/2018 Présentation des fonctions Paramètres de la zone Mouvement Description Paramètre Description Modulo Dans le cas d’un axe infini, cette case à cocher permet d’activer la fonction modulo. Modulo max. Limite haute du modulo. Cette valeur est saisie en flottant. Modulo min. Limite basse du modulo. Cette valeur est saisie en flottant. Fenêtre au point Valeur de la fenêtre au point. Cette valeur est saisie en flottant. Accélération Valeur d’accélération définie pour un mouvement. Cette valeur est saisie en flottant. Deceleration Valeur de décélération définie pour un mouvement. Cette valeur est saisie en flottant. Type d’accélération Type d’accélération : Rectangle 100%, Trapèze 125%, Trapèze 150%, Trapèze 175% ou Triangle 200%. Remise à l’échelle Pour un variateur dont la position est définie en unité angulaire (degrés), le module effectue une remise à l'échelle, selon sa référence qui est en tours et sa vitesse en tours/seconde. Par exemple, si l’on configure l’axe en type angulaire avec un facteur d’échelle de 1/1 : Unité de position en tours et unité de vitesse en tours/s : un mouvement incrémental de position 1 et de vitesse 1 exécutera 1 tour en 1 seconde. Unité de position en degrés et unité de vitesse en tours/min : un mouvement incrémental de position 360 et de vitesse 60 exécute 1 tour en 1 seconde. Changement du type d’unités Lorsque l’on change de type d’unités par rapport au variateur qui reste en tours, l’unité de référence du module est le mm (pour le type linéaire) et le inch (pour le type linéaire anglais). Le module réalise une transformation égale à : 1 tour pour le variateur = 1 mm pour le module (type linéaire), 1 tour pour le variateur = 1 inch pour le module (type linéaire anglais). Par exemple, si l’on configure l’axe en type linéaire avec un facteur d’échelle 1/ 1 : Unité de position en mm et unité de vitesse en mm/s : un mouvement incrémental de position 1 et de vitesse 1 exécute 1 tour en 1 seconde. Unité de position en mm et unité de vitesse en mm/s : un mouvement incrémental de position 1000 et de vitesse 1000 exécute 1 tour en 1 seconde (ou 1000 mm en 1 seconde). 35010452 12/2018 37 Présentation des fonctions Utilisation du facteur d’échelle Prenons l’exemple d’une application où l’axe déplace un tapis : par exemple, un 1 tour de l’axe déplace le tapis de 100 mm. Si vous souhaitez exprimer la position en mm : L'unité de position sera configurée en mm, la vitesse en mm/s, le numérateur du facteur d'échelle est égal à 100 et le dénominateur reste à 1. Un mouvement incrémental de position 1 000 et de vitesse 1 000 entraîne un déplacement du tapis de 1 m (soit 10 tours de l'axe) en une seconde (vitesse de 1 000 mm/s). 38 35010452 12/2018 Présentation des fonctions Configuration d'un profil de came Introduction Un profil de came (voies 25 à 31) permet de définir par une table de points, la position d’un axe esclave, en fonction de celle de l’axe maître. Pour utiliser les fonctions d’interpolation du module TSX CSY 85 vous devez donc définir un profil de came par axe réel de la trajectoire et respecter les règles suivantes : Type d’interpolation = Linéaire, Nb. points = nombre de points de la trajectoire sur l’axe concerné + 5. Incrément Maître : Unité = mm, Incrément Fixe, Valeur de démarrage = 0.0, Incrément = 1.0, Incrément esclave : Unité = mm, Incrément Fixe, Valeur de démarrage = 0.0, Incrément = 1.0. NOTE : le nombre de points des profils de came d’axes de même groupe doivent être identiques. Si ce nombre est trop faible, le module renvoie le code d’erreur 5. Le nombre total de points configurés pour les cames influent sur le temps de calcul de l’interpolation (environ 1 seconde pour 100 points configurés. Le nombre maximal de points pour un module TSX CSY 85 est de 10 000. Par conséquent, il est conseillé d'utiliser un nombre minimum de points qui permette d'obtenir une trajectoire suffisamment précise. 35010452 12/2018 39 Présentation des fonctions Exemple de configuration L'écran de configuration d'un profil de came sur le module TSX CSY 85 propose trois zones à obligatoirement configurer comme décrit précédemment et qui permettent de définir la table de points maître et esclave. Paramètres de la table : 40 Paramètres Description Linéaire Lorsque ce bouton est coché, l’interpolation entre 2 points consécutifs du profil de came s’effectue de manière linéaire. Ce bouton fonctionne en alterné avec le bouton Cubique. Cubique Lorsque ce bouton est coché, l’interpolation entre 2 points consécutifs du profil de came s’effectue de manière cubique. Ce bouton fonctionne en alterné avec le bouton Linéaire. Nb. points Ce champ permet de saisir le nombre de points utilisés pour définir le profil de came. 35010452 12/2018 Présentation des fonctions Paramètres de la zone incrément maître : Paramètres Description Unité Permet de définir l’unité dans laquelle sont exprimés les incréments du maître. L’unité choisie peut être une sous-unité de celle définie pour les axes (par exemple, cm pour les axes et mm pour l’incrément). Fixe Lorsque ce bouton est coché, l’incrément entre 2 points consécutifs du profil de came sera toujours le même. Ce bouton fonctionne en alterné avec le bouton Variable. Valeur de démarrage Dans le cas d’un incrément fixe, ce champ permet de saisir la valeur de début du profil de came. Cette valeur est saisie en flottant. Incrément Dans le cas d’un incrément fixe, ce champ permet de définir la valeur de l’incrément. Cette valeur est saisie en flottant. Variable Lorsque ce bouton est coché, l’incrément entre 2 points consécutifs du profil de came est variable. La valeur des points est définie par une table de mots constants %KF dont la longueur est égale au nombre de points. Adresse table de %KF Dans le cas d’un incrément variable, ce champ permet de saisir l’adresse de début de la table des points du maître. NOTE : Un profil de came est toujours bouclé. Il faut assurer l’égalité entre la première et la dernière valeur de la table pour l’esclave. La table décrira entièrement le modulo et on rajoutera un point supplémentaire (modulo + 1) dont la valeur de l’esclave sera la première valeur de la table. Par exemple, pour modulo 360° les valeurs sont 0 à 359 et la table est la suivante : Table (maître, esclave) : (0, x0); (1, x1); (2, x2); ...; (359, x359); (360, x0) Dans le cas d’un mouvement linéaire et si la dernière valeur de la table pour l’esclave n’est pas égale à la première valeur, on rajoutera des points supplémentaires (par exemple on répétera plusieurs fois le dernier point avec des valeurs d’esclave qui tendront progressivement vers la première valeur de la table). 35010452 12/2018 41 Présentation des fonctions Paramètres de la zone Incrément esclave : 42 Paramètres Description Unité Permet de définir l’unité dans laquelle sont exprimés les incréments de l’esclave. L’unité choisie peut être une sous-unité de celle définie pour les axes (par exemple, cm pour les axes et mm pour l’incrément). Fixe Lorsque ce bouton est coché, l’incrément entre 2 points consécutifs du profil de came sera toujours le même. Ce bouton fonctionne en alterné avec le bouton Variable. Valeur de démarrage Dans le cas d’un incrément fixe, ce champ permet de saisir la valeur de début du profil de came. Cette valeur est saisie en flottant. Incrément Dans le cas d’un incrément fixe, ce champ permet de définir la valeur de l’incrément. Cette valeur est saisie en flottant. Variable Lorsque ce bouton est coché, l’incrément entre 2 points consécutifs du profil de came est variable. La valeur des points est définie par une table de mots constants %KF dont la longueur est égale au nombre de points. Adresse table de %KF Dans le cas d’un incrément variable, ce champ permet de saisir l’adresse de début de la table des points de l’esclave. 35010452 12/2018 Présentation des fonctions Configuration d'un groupe d'axes suiveurs (voies 21 à 24). Introduction Un groupe d’axes suiveurs ou esclaves est un ensemble d’axes, composé d’axes esclaves (6 au maximum) qui suivent les mouvements d’un axe maître. L’axe maître peut être un axe réel, un axe imaginaire ou une consigne externe. Les axes esclaves sont des axes réels ou imaginaires. Dans le cadre d'un module TSX CSY 85 utilisant les nouvelles fonctions d'interpolation, les règles à respecter sont les suivantes : Chaque groupe peut être constitué de 2 ou 3 axes interpolés. Un profil de came doit être défini pour chaque axe esclave (maximum 7). Conséquence du point précédent, un maximum de 7 axes interpolés est possible (par exemple 2 groupes de 2 axes et un groupe de 3 axes). Seuls deux axes peuvent être interpolés, le troisième axe d'un groupe devant obligatoirement être lié au maître, soit par un profil de came, soit par un lien fixe. Pour chaque axe, les paramètres doivent être les suivants : sélectionnez l’option Came, Démarrage = Immédiat, Offset = 0.0, sélectionnez l’option Consigne, sélectionnez l'option Stop maître/déf. 35010452 12/2018 43 Présentation des fonctions Ecran de configuration L’écran de configuration d’un groupe d’axes suiveurs est le suivant. Il propose sept zones qui permettent de configurer l'axe maître et les six axes esclaves possibles. Maître Ce champ permet de définir le numéro de l’axe maître (axes 1 à 16). La valeur N indique que l’axe maître n’est pas choisi. Zones Esclave Les 6 zones Esclave 1 à 6 sont identiques. Elles ne sont actives que lorsque le numéro du maître est défini. 44 35010452 12/2018 Présentation des fonctions Paramètres d’une zone Esclave Description Paramètre Description Esclave 1 (à 6) Permet de définir le numéro de l’axe esclave (axes 1 à 12). Mesure Lorsque ce bouton est coché, l’axe esclave suit la position mesurée de l’axe maître. Ce bouton fonctionne en alterné avec le bouton Consigne. Consigne Lorsque ce bouton est coché, l’axe esclave suit la position de consigne de l’axe maître. Ce bouton fonctionne en alterné avec le bouton Mesure. Engrenage Lorsque ce bouton est coché, l’axe esclave suit l’axe maître en mode Ratio; c’est-àdire suivant un rapport déterminé par les champ Ratio. Ce bouton fonctionne en alterné avec le bouton Came. Came Lorsque ce bouton est coché, l’axe esclave suit l’axe maître en mode Came; c’est à dire suivant le profil de came dont le numéro est choisi dans le champ No. Ce bouton fonctionne en alterné avec le bouton Engrenage. Ratio En mode Ratio, ces 2 champs permettent de saisir le numérateur et le dénominateur qui définissent le rapport entre l’axe maître et esclave. Ces valeurs sont saisies en flottant. Démarrage Permet de choisir la condition de démarrage : immédiat, lorsque la position du maître augmentée de la valeur d’offset atteint dans le sens positif, la valeur de seuil définie dans le champ Trigger, lorsque la position du maître plus la valeur d'offset atteint, dans le sens négatif, la valeur de seuil définie dans le champ Trigger, lorsque la position du maître plus la valeur d’offset est supérieure ou égale à la valeur de seuil définie dans le champ Trigger, lorsque la position du maître plus la valeur d’offset est inférieure ou égale à la valeur de seuil définie dans le champ Trigger. No En mode Came, ce champ permet de choisir le numéro du profil de came (compris entre 25 et 31). Offset En mode Came, ce champ permet de saisir une valeur d’offset qui sera ajoutée à la position du maître, afin de définir la position de l’esclave. La position de l’esclave résultante sera donnée par l’index dans la table du maître du profil de came. Cet index est égal à la position actuelle du maître + offset (par exemple, un profil de came défini de 0 à 1 000 pour les coordonnées du maître). Pour démarrer le suivi pour une position du maître égale à 100000, la valeur de l’offset devra être égale à -100000.0. Cet offset permet par exemple de définir une fonction sinus et une fonction cosinus, à partir d’un même profil de came. Cette valeur est saisie en flottant. Bias remains (résiduel) Lorsque cette case est cochée : un offset dynamique est rajouté de manière automatique à la position du maître, afin de définir la position de l’esclave, les mouvements supplémentaires des esclaves ne sont pas arrêtés sur suppression du lien avec le maître. 35010452 12/2018 45 Présentation des fonctions Paramètre Description Trigger Lorsque la condition de démarrage dépend de la position de l’axe maître par rapport à un seuil, ce champ permet de saisir la valeur du seuil. Cette valeur est saisie en flottant. Le déclenchement aura lieu lorsque position actuelle du maître + offset > (ou <, >, <) à la valeur du seuil (Trigger). Arrêt sur suivi Lorsque cette case est cochée, la validation du lien entre le maître et l’esclave provoque l’arrêt d’un éventuel mouvement supplémentaire de l’axe suiveur, suivant un profil de décélération déterminé automatiquement. Stop maître/déf. Lorsque cette case est cochée, le maître s’arrête lors d’un défaut d’écart de poursuite entre le maître et l’esclave. Position d’un axe suiveur Lorsqu’un axe est suiveur, sa position dépend uniquement de celle de l’axe maître qu’il suit. Les paramètres de configuration de l’axe (butées de position, vitesse maximale, accélération maximale,...) sont ignorés. Pour garantir la sécurité de l’application, configurer ces paramètres (de sécurité) dans le variateur de vitesse. Facteur d’échelle Dans un groupe d’axes suiveurs, le facteur d’échelle est décorrélé des unités utilisées pour les axes, lorsque celles-ci sont de même type (Linéaire, Angulaire,...). Par exemple, si l’axe maître est configuré en m et l’axe esclave en cm (unités différentes mais de même type : Linéaire) et si on utilise un facteur d’échelle 1/ 1, cela signifie que si le maître parcourt 1 mm, l’esclave se déplacera également de 1 mm. Si les unités du maître et de l’esclave sont de types différents, il faut convertir les unités dans l’unité de référence du type d’unités (mm pour le type linéaire, inch pour le type linéaire anglais, tour pour le type angulaire). Par exemple, si le maître est configuré en m et l’esclave en tours (unités de types différents : Linéaire et Angulaire) et si on veut que lorsque le maître se déplace de 1 m, l’esclave effectue 1 tour, il faudra définir le facteur d’échelle de la manière suivante : 1 m = 1000 mm (en unité de référence du type linéaire), 1 tour = 1 tour (en unité de référence du type angulaire), donc le facteur d’échelle = 1000/1 (quand le maître fait 1000 mm, l’esclave fait 1 tour). 46 35010452 12/2018 Premium et Atrium sous EcoStruxure™Control Expert Interpolation 35010452 12/2018 Chapitre 4 Fonctions d’interpolation Fonctions d’interpolation Objet de ce chapitre Ce chapitre décrit les nouvelles fonctionnalités d’interpolation du module TSX CSY 85. Contenu de ce chapitre Ce chapitre contient les sous-chapitres suivants : Sous-chapitre Sujet Page 4.1 Fonction de calcul de trajectoire : TrjCompute (ACTION_TRF (26900) 48 4.2 Positionnement du maître et gestion de la vitesse 78 35010452 12/2018 47 Interpolation Sous-chapitre 4.1 Fonction de calcul de trajectoire : TrjCompute (ACTION_TRF (26900) Fonction de calcul de trajectoire : TrjCompute (ACTION_TRF (26900) Objet de ce sous-chapitre Ce sous chapitre présente la fonction de calcul de trajectoire TrjCompute, obtenue par le code ACTION_TRF = 26900, chargé dans le module par l’instruction TRF_RECIPE ainsi que les différents types de segments qu’il est possible de créer. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet 48 Page TrjCompute : fonction de calcul de trajectoire (ACTION_TRF = 26900) 49 GetInterpoErrorPoint : fonction de détection du point d'erreur (ACTION_TRF = 14902) 54 Interpolation linéaire : type 0 55 Interpolation linéaire avec liaison selon une interpolation polynomiale de degré 3 : type 1 57 Interpolation linéaire avec liaison selon une interpolation polynomiale de degré 5 : type 2 63 Interpolation linéaire avec liaison selon une interpolation circulaire : type 10 67 Interpolation circulaire avec indication du rayon : type 11 72 Interpolation circulaire avec indication du centre : type 12 74 Interpolation axe tangentiel : type 100 ou 101 76 35010452 12/2018 Interpolation TrjCompute : fonction de calcul de trajectoire (ACTION_TRF = 26900) Vue d'ensemble La fonction TrjCompute permet de charger des trajectoires dans le module TSX CSY 85. Elle est réalisée grâce aux éléments suivants : l'instruction standard de transfert d'informations au module TRF_RECIPE (voir page 28), le code action ACTION_TRF = 26900 (%MWr.m.c.10), la table de paramètres caractérisant la trajectoire. NOTE : la création de la table de paramètres s'effectue de deux manières, soit directement en saisissant les paramètres dans la table de mots, soit en important cette table à l'aide du logiciel graphique TjE (Trajectory Editor). Dans les pages qui suivent nous indiquons la syntaxe à utiliser, puis nous décrivons toutes les interpolations acceptées par cette fonction ainsi que leur codage. AVERTISSEMENT COMPORTEMENT INATTENDU DE L'APPLICATION Vous devez impérativement mettre à zéro le bit ALLOW_ACQUIRE du groupe d'axes esclaves avant de lancer la fonction TrjCompute. Vous pouvez ensuite valider à nouveau le groupe en réglant sur 1 les bits ALLOW_ACQUIRE et CONTROL_ACQUIRE. Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des dommages matériels. 35010452 12/2018 49 Interpolation Syntaxe de la fonction La fonction TrjCompute s'exécute : sur une voie de type groupe d'axes esclaves (voies 21 à 24), avec le paramétrage suivant : %MWr.m.c.10 (ACTION_TRF) = 26900 %MDr.m.c.11 (param_trf_1) = 0, %MDr.m.c.13 (param_trf_2) = 0, %MDr.m.c.15 (param_trf_3) = 0, %MDr.m.c.17 (param_trf_4) = 0, et la fonction TRF_RECIPE ayant pour paramètres la table de mots contenant la description de la trajectoire ainsi que la longueur de cette table. TRF_RECIPE %CHr.m.c (Longueur_table, Table_trajectoire) Paramètre Description %CHr.m.c Voie associée au groupe de voie du module composé des axes esclaves et de l'axe maître de la trajectoire à calculer. Longueur_table Nombre de mots composant la table de trajectoire. La formule de calcul est la suivante : Longueur_table = 6 + nombre d'axes + nombre de mots par point * nombre de points : Nombre d'axes : nombre d'axes esclaves 2 ou 3. Nombre de mots par points : 17 pour 2 axes et 19 pour 3 axes. Nombre de points : nombre de points de référence caractérisant le mouvement. Table_trajectoire Premier mot de la table contenant les paramètres de la trajectoire, cette table est composée d'une en-tête et d'autant de blocs que de segments de trajectoires nécessaires à réaliser le mouvement. Cette table est détaillée dans les paragraphes qui suivent. Exemple : TRF_RECIPE %CH3.21 ( 93,100) ; pour un mouvement sur deux axes, avec cinq points caractéristiques et une table située en %MW100. 50 35010452 12/2018 Interpolation Code de retour Les codes de retour de la fonction TRF RECIPE, suite au calcul de la trajectoire 26900, sont disponibles dans les mots %MDWxy.i.4 et %Mfxy.i.6 indiquant : · Return_trf_1 : le nombre de points de came utile auquel il faut rajouter 5 pour la configuration de la came du CSY85 dans PREMIUM · Return_trf_2 : la distance maximum du maître pour couvrir toute la trajectoire. Le temps de calcul de la trajectoire peut prendre plusieurs secondes, selon le degré de complexité de la trajectoire décrite. Exemple : pour 35 points du maître le temps de calcul est d'environ 3 secondes. Données retournées par le code action ACTION_TRF = 26900 (%MWr.m.c.10) Objet Type Symbole Description %MDr.m.c.4 Entier RETURN_TRF_1 Nombre de points de la trajectoire %MFr.m.c.6 Flottant RETURN_TRF_2 Longueur de la trajectoire En-tête de la table de trajectoire Le tableau suivant décrit le contenu de l'en-tête de la table de trajectoire commençant à l'adresse %MWi : Adresse mémoire Description %MWi Nombre de points à interpoler %MWi+1 Nombre d'axes esclaves utilisés pour la trajectoire %MWi+2 Décalage mémoire pour chaque point d'interpolation : 17 avec 2 axes esclaves 19 avec 3 axes esclaves %MWi+3 Version de la table d'interpolation (régler sur 0 pour le moment) %MWi+4 Réservé %MWi+5 Réservé %MWi+6 Identifiant (ID) de l'axe des X %MWi+7 Identifiant (ID) de l'axe des Y %MWi+8 Identifiant (ID) de l'axe des Z Remarque : si le mouvement n'utilise que deux axes, ce mot n'existe pas, l'en-tête de la table est seulement composé de 8 mots. NOTE : ne confondez pas le numéro de la voie associé à l'axe avec l'ID de celui-ci. Vous pouvez utiliser la fonction GetAxisID (code 523) pour obtenir l'IDE d'un axe (utilisez l'instruction WRITE_CMD). 35010452 12/2018 51 Interpolation Corps de la table de trajectoire Le corps de la table contient une suite de blocs caractérisant chaque segment de la trajectoire. Chaque bloc contient un nombre identique de mots constituant les paramètres d'interpolation de chaque segment. Le tableau suivant décrit un segment type pour une table de trajectoire dont l'en-tête commence à l'adresse %MWi : 52 Adresse mémoire Paramètre Description %MFj (1) XCoord Coordonné selon l'axe des X du point caractéristique du segment. %MFj+2 YCoord Coordonné selon l'axe des Y du point caractéristique du segment. %MFj+4 ZCoord Coordonné selon l'axe des Z du point caractéristique du segment. Remarque : si le mouvement n'utilise que deux axes, ce paramètre n'existe pas, le bloc associé à ce segment n'est alors constitué que de 17 mots au lieu de 19. %MFj+6 ParF0 Vset : vitesse de consigne de ce segment. %MFj+8 ParF1 Paramètre ParF1, dépendant du type d'interpolation. %MFj+10 ParF2 Paramètre ParF2, dépendant du type d'interpolation. %MFj+12 ParF3 Paramètre ParF3, dépendant du type d'interpolation. %MWj+14 ParW0 Type d'interpolation du segment : 0: Linéaire 1 : linéaire avec liaison selon une interpolation polynomiale de degré 3, 2 : linéaire avec liaison selon une interpolation polynomiale de degré 5, 10 : linéaire avec liaison selon une interpolation circulaire, 11 : circulaire par détermination du rayon du cercle, 12 : circulaire par détermination du centre du cercle, 100 : uniquement pour le point P0, pour indiquer que le mouvement s'effectuera avec un axe tangentiel, 101 : uniquement pour le point P0, pour indiquer que le mouvement s'effectuera selon un axe tangentiel, mais avec un décalage de 180° par rapport au code 100 (autre côté de la courbe). %MWj+15 ParW1 Paramètre ParW1, dépendant du type d'interpolation. %MWj+16 ParW2 Paramètre ParW2, dépendant du type d'interpolation. 35010452 12/2018 Interpolation Adresse mémoire Paramètre Description %MWj+17 ParW3 Paramètre ParW3, dépendant du type d'interpolation. %MWj+18 ParW4 Paramètre ParW4, dépendant du type d'interpolation. Légende (1) j = 6 + Nombre d'axes, j = 9 si l'a trajectoire est configurée sur 3 axes, j= 8 si elle est configurée sur deux axes. NOTE : ces différents paramètres sont utilisés en totalité ou en partie selon le type d'interpolation choisi pour chaque segment. Pour obtenir la table de trajectoire complète, il suffit de positionner à la suite les uns des autres les blocs caractérisant chaque segment. NOTE : le point caractéristique d'un segment (XCoord, YCoord, ZCoord) est le point atteint par le segment. Le point P0 est le point de démarrage de la trajectoire ; il est obligatoire dans certains cas particuliers, comme dans le cas d'une trajectoire fermée, pour être en mesure de calculer la longueur de trajectoire. Codes d'erreur Lors de l'utilisation de cette fonction, les codes d'erreur communs à tous les types d'interpolation susceptibles d'être renvoyés dans le mot %MWr.m.c.3 sont les suivants : Code Description 9502 Le nombre maximum de points d'une came est dépassé. 9503 Le nombre maximum d'axes est dépassé. 9505 Le nombre de points configuré pour l'une des cames n'est pas suffisant pour exécuter la fonction. 9507 Came non configurée. 9510 Le nombre maximum de points pour une table est dépassé. 35010452 12/2018 53 Interpolation GetInterpoErrorPoint : fonction de détection du point d'erreur (ACTION_TRF = 14902) Présentation Cette fonction est très utile lors de la mise au point de la trajectoire. Elle permet de connaître le numéro du point qui a causé l'erreur suite au calcul de la trajectoire par la fonction TrjCompute. Syntaxe de la fonction L’interface est la suivante : Adresse mémoire Paramètre Description %MWr.m.c.10 ACTION_TRF 14902 %MDr.m.c.11 param_trf_1 non utilisé %MDr.m.c.13 param_trf_2 non utilisé %MFr.m.c.15 param_trf_3 non utilisé %MFr.m.c.17 param_trf_4 non utilisé %MDr.m.c.6 RETURN_TRF_1 numéro du point qui a causé l’erreur Exemple : TRF_RECIPE %CH3.21 (0,0); IF %M4 AND NOT %MW3.21:X3 THEN %MW3.21.10:=14902; TRF_RECIPE %CH3.21(0,0); RESET %M4; END_IF; Cette fonction sera principalement utilisée en cas d'erreur, lors d'une modification d'un point de la trajectoire via le programme application de l'automate. 54 35010452 12/2018 Interpolation Interpolation linéaire : type 0 Présentation Ce type d’interpolation permet d’effectuer une trajectoire rectiligne entre le point précédent et le point définissant le segment. L’inconvénient principal de ce type d’interpolation réside dans le fait qu’une suite de segments de ce type peuvent définir des lignes brisées et ainsi créer des contraintes mécaniques et électriques sur les équipements commandés (des variations brusques de vitesse par exemple). Le seul moyen de réduire ces contraintes est alors de diminuer la vitesse de déplacement ou de s’arrêter à chaque point de la table. Ce type de segment peut cependant convenir lors de mouvements de transition, de repositionnement ou de maintenance. Paramètres du bloc Le tableau suivant indique les paramètres à renseigner dans la table de trajectoire pour ce type de segment : Paramètre Description ParW0 Saisissez 0 pour indiquer que le type d’interpolation à utiliser est l’interpolation linéaire. ParW1 Indiquez dans ce paramètre le nombre de point du segment linéaire. Ce nombre de points (minimum 1) représente le nombre de points intermédiaires que le module doit calculer pour définir la trajectoire sur le segment. Le module TSX CSY 85 définit ces points, puis calcule une interpolation linéaire entre ceux-ci afin de déterminer la position qui sera envoyée aux variateurs toutes les 4 ms. Dans le cas d’une interpolation linéaire il suffit de mettre la valeur minimum : 1. ParW4 Pour ce type de segment, seul le mode tangentiel peut être utilisé, mais seulement dans le cas d’une utilisation d’un troisième axe pour un mouvement en 3 dimensions. Note : Le mode tangentiel (bit 8 à 1) sera disponible dans une version ultérieure de l'ensemble TjE/TSX CSY 85. Pour le moment, seul le positionnement angulaire du troisième axe Z est pris en charge. Pour un mouvement sur deux axes, mettez la valeur 0. 35010452 12/2018 55 Interpolation Codes d’erreur Lors de l'utilisation de ce type de segment, les codes d’erreur pouvant être renvoyés dans le mot %MDr.m.c.3 sont les suivants : Code 56 Description 9504 deux points successifs identiques sont présents dans la table. 9515 Le nombre de points du segment est fixé à 0. 35010452 12/2018 Interpolation Interpolation linéaire avec liaison selon une interpolation polynomiale de degré 3 : type 1 Présentation Ce type d’interpolation permet de relier des segments linéaires entre eux en adoucissant les transitions selon une interpolation de degré 3. La trajectoire ne passe pas par le point défini dans la table mais suit une courbe définie par les paramètres. Plus la zone de liaison est petite, plus la trajectoire est proche du point mais plus la courbure est importante, plus la vitesse maximum possible est faible. Illustration La figure suivante présente un exemple de segment de type 1 : 35010452 12/2018 57 Interpolation Paramètres du bloc Le tableau suivant indique les paramètres à renseigner dans la table de trajectoire pour ce type de segment : 58 Paramètre Description ParW0 Saisissez 1 pour indiquer que le type d'interpolation à utiliser est l'interpolation linéaire avec liaison selon une interpolation polynomiale de degré 3. ParW1 = NpLin Indiquez dans ce paramètre le nombre de points de la partie linéaire du segment. Ce nombre de points (minimum 1) représente le nombre de points intermédiaires que le module doit calculer pour définir la trajectoire sur cette partie linéaire. ParW2 = NpRacc Indiquez dans ce paramètre le nombre de points de la partie d’interpolation cubique du segment. Ce nombre de points (minimum 1) représente le nombre de points intermédiaires que le module doit calculer pour définir la trajectoire sur cette partie. Il doit être suffisant afin de garantir la précision de la trajectoire ; une valeur de 15 minimum est donc conseillée. ParW3 = KF Coefficient de forme de l'interpolation de degré 3 : Compris entre 50 et 200, ce coefficient permet de modifier la forme de la zone de liaison. La valeur par défaut est de 100, il est conseillé de conserver cette valeur si le mouvement désiré le permet, car il garantit qu'il n'y aura pas de "dépassement" du mouvement. Note : plus le coefficient KF augmente, plus la courbe se rapproche du point caractéristique du segment, plus il diminue, plus la courbe s’en éloigne. ParW4 Pour ce type de segment, seul le mode tangentiel peut être utilisé. Dans le cas d’une utilisation d’un troisième axe de type tangentiel sélectionnez mode tangentiel (bit 8 de ParW4 à 1) pour indiquer que le mouvement du troisième axe suivra la courbe en utilisant le mode tangentiel (positionnement d’un outil par exemple de telle sorte qu’il soit toujours perpendiculaire à la courbe et qu’il suive la tangente de celle-ci). Note : Le mode tangentiel (bit 8 à 1) sera disponible dans une version ultérieure de l'ensemble TjE/TSX CSY 85. Pour le moment, seul le positionnement angulaire du troisième axe Z est pris en charge. Pour un mouvement sur deux axes, mettez la valeur 0. 35010452 12/2018 Interpolation Paramètre Description ParF1 = lracc1 ParF2 = lracc2 lracc1 est la longueur de la liaison initiale. lracc2 est la longueur de la liaison finale. lracc1 et lracc2, exprimées en mm, détermine la longueur de la zone d’interpolation. Si ces longueurs sont trop élevées (par exemple, lracc1 > distance entre le point courant (Pn) et le point précédent (Pn-1)), la longueur maximale possible sera utilisée. Cette longueur maximale est automatiquement calculée par le module en fonction de la section précédente pour lracc1 et de la section suivante pour lracc2. Exemple : si la somme de lracc2 de Pn-1 et de lracc1 de Pn est supérieure à la distance entre Pn-1 et Pn, la partie linéaire de la trajectoire se résumera à un point d’inflexion sur la trajectoire entre ces deux points. D’autre part si lracc1 > 2*lracc2 alors l’interpolation considère que lracc1=2*lracc2 De même si lracc2 > 2*lracc1 alors l’interpolation considère que lracc2=2*lracc1 35010452 12/2018 59 Interpolation Codes d’erreur Lors de l'utilisation de ce type de segment, les codes d'erreur pouvant être renvoyés dans le mot %MWr.m.c.3 sont les suivants : Code Description 9501 l'une des longueurs lracc1 ou lracc2 est égale à zéro (cas de figure interdit). 9504 deux points successifs identiques sont présents dans la table. 9514 Liaison trop longue : le segment suivant = 0 9515 Le nombre de points du segment linéaire est fixé à 0. 9516 Le nombre de points du segment d'interpolation polynomiale de degré 3 est défini sur 0. NOTE : Les codes d'erreur indiqués sont ceux du module TSX CSY 85. Les codes d'erreur indiqués pour le logiciel TjE sont les mêmes, avec le 9 en moins (9501 correspond à 501, etc.). 60 35010452 12/2018 Interpolation Coefficient de forme KF La figure suivante donne une indication sur l'évolution de la forme de la trajectoire en fonction de la valeur du coefficient de forme KF (compris entre 50 et 200) : NOTE : Plus le coefficient KF augmente, plus la courbe se rapproche du point caractéristique du segment, plus il diminue, plus la courbe s'en éloigne. 35010452 12/2018 61 Interpolation Exemple de trajectoire La figure suivante présente un exemple de trajectoire utilisant des segments de type 1 : 62 35010452 12/2018 Interpolation Interpolation linéaire avec liaison selon une interpolation polynomiale de degré 5 : type 2 Présentation Ce type d’interpolation permet de relier des segments linéaires entre eux en adoucissant les transitions selon une interpolation de degré 5. La trajectoire ne passe pas par le point défini dans la table, mais suit une courbe définie par les paramètres. Plus la zone de liaison est petite, plus la trajectoire est proche du point mais plus la courbure est importante, plus la vitesse maximum possible est faible. Par rapport à une interpolation de degré 3, cette interpolation assure un mouvement plus souple. Toutefois, si la limite d'accélération est atteinte, la vitesse sur le segment peut être restreinte sur ce type de liaison. Illustration La figure suivante présente un exemple de segment de type 2 : 35010452 12/2018 63 Interpolation Paramètres du bloc Le tableau suivant indique les paramètres à renseigner dans la table de trajectoire pour ce type de segment : 64 Paramètre Description ParW0 Saisissez 2 pour indiquer que le type d’interpolation à utiliser est l'interpolation linéaire avec liaison selon une interpolation polynomiale de degré 5. ParW1 = NpLin Indiquez dans ce paramètre le nombre de points de la partie linéaire du segment. Ce nombre de points (minimum 1) représente le nombre de points intermédiaires que le module doit calculer pour définir la trajectoire sur cette partie linéaire. ParW2 = NpRacc Indiquez dans ce paramètre le nombre de points de la partie d’interpolation de degré 5 du segment. Ce nombre de points (minimum 1) représente le nombre de points intermédiaires que le module doit calculer pour définir la trajectoire sur cette partie. Il doit être suffisant afin de garantir la précision de la trajectoire ; une valeur de 15 minimum est donc conseillée. ParW3 = KF Coefficient de forme de l'interpolation de degré 5. Compris entre 50 et 200, ce coefficient permet de modifier la forme de la zone de liaison. La valeur par défaut est de 100, il est conseillé de conserver cette valeur si le mouvement désiré le permet, car il garantit qu'il n'y aura pas de "dépassement" du mouvement. Note : plus le coefficient KF augmente, plus la courbe se rapproche du point caractéristique du segment, plus il diminue, plus la courbe s’en éloigne. ParW4 Pour ce type de segment, seul le mode tangentiel peut être utilisé. Dans le cas d’une utilisation d’un troisième axe de type tangentiel sélectionnez mode tangentiel (bit 8 de ParW4 à 1) pour indiquer que le mouvement du troisième axe suivra la courbe en utilisant le mode tangentiel (positionnement d’un outil par exemple de telle sorte qu’il soit toujours perpendiculaire à la courbe et qu’il suive la tangente de celle-ci). Note : Le mode tangentiel (bit 8 à 1) sera disponible dans une version ultérieure de l'ensemble TjE/TSX CSY 85. Pour le moment, seul le positionnement angulaire du troisième axe Z est pris en charge. Pour un mouvement sur deux axes, mettez la valeur 0. 35010452 12/2018 Interpolation Paramètre Description ParF1 = lracc1 ParF2 = lracc2 lracc1 est la longueur de la liaison initiale. lracc2 est la longueur de la liaison finale. lracc1 et lracc2, exprimées en mm, détermine la longueur de la zone d’interpolation. Si ces longueurs sont trop élevées (par exemple, lracc1 > distance entre le point courant (Pn) et le point précédent (Pn-1)), la longueur maximale possible sera utilisée. Cette longueur maximale est automatiquement calculée par le module en fonction de la section précédente pour lracc1 et de la section suivante pour lracc2. Exemple : si la somme de lracc2 de Pn-1 et de lracc1 de Pn est supérieure à la distance entre Pn-1 et Pn, la partie linéaire de la trajectoire se résumera à un point d’inflexion sur la trajectoire entre ces deux points. Ainsi la courbe sera continue ainsi que sa dérivée. D’autre part si lracc1 > lracc2/0.66 alors l’interpolation considère que lracc1=lracc2/0.66 De même si lracc2 > lracc1/0.66 alors l’interpolation considère que lracc2=lracc1/0.66 35010452 12/2018 65 Interpolation Codes d’erreur Lors de l'utilisation de ce type de segment, les codes d'erreur pouvant être renvoyés dans le mot %MWr.m.c.3 sont les suivants : Code Description 9501 l'une des longueurs lracc1 ou lracc2 est égale à zéro (cas de figure interdit). 9504 deux points successifs identiques sont présents dans la table. 9514 Liaison trop longue : le segment suivant = 0 9515 Le nombre de points du segment linéaire est fixé à 0. 9516 Le nombre de points du segment d'interpolation polynomiale de degré 5 est défini sur 0. NOTE : Les codes d'erreur indiqués sont ceux du module TSX CSY 85. Les codes d'erreur indiqués pour le logiciel TjE sont les mêmes, avec le 9 en moins (9501 correspond à 501, etc.). 66 35010452 12/2018 Interpolation Interpolation linéaire avec liaison selon une interpolation circulaire : type 10 Présentation Ce type d’interpolation permet de relier des segments linéaires entre eux par une trajectoire circulaire (arcs de cercles ou cercles complets). NOTE : ce type d'interpolation n'est possible que lorsque le mouvement s'effectue dans un plan (2 axes seulement). Illustration La figure suivante présente un exemple de segment de type 10 : 35010452 12/2018 67 Interpolation Paramètres du bloc Le tableau suivant indique les paramètres à renseigner dans la table de trajectoire pour ce type de segment : 68 Paramètre Description ParW0 Saisissez 10 pour indiquer que le type d’interpolation à utiliser est l’interpolation linéaire avec liaison selon une interpolation circulaire. ParW1 = NpLin Indiquez dans ce paramètre le nombre de points de la partie linéaire du segment. Cette valeur (minimum 1) représente le nombre de points intermédiaires que le module doit calculer pour définir la trajectoire sur cette partie linéaire. ParW2 = NpRacc Indiquez dans ce paramètre le nombre de points de la partie d’interpolation circulaire. Cette valeur (minimum 1) représente le nombre de points intermédiaires que le module doit calculer pour définir la trajectoire sur cette partie. Elle doit être suffisante pour garantir la précision de la trajectoire ; une valeur minimale de 15 est donc conseillée. ParW4 Bit 0 à 0 pour une liaison effectuant un angle inférieur à 180°. Bit 0 à 1 pour une liaison effectuant un angle supérieur à 180°. Si vous utilisez un troisième axe de type tangentiel, sélectionnez le mode tangentiel (bit 8 de ParW4 à 1) pour indiquer que le mouvement de ce troisième axe suivra la courbe selon ce mode tangentiel (par exemple, positionnement d’un outil de sorte qu’il soit toujours perpendiculaire à la courbe et qu’il suive la tangente de celle-ci). Remarque : le mode tangentiel (bit 8 à 1) sera disponible dans une version ultérieure de l'ensemble TjE/TSXCSY85. Pour l'instant, seul le positionnement angulaire du troisième axe (Z) est pris en charge. ParF1 = lracc lracc correspond à la longueur du segment d’interpolation circulaire. 35010452 12/2018 Interpolation Codes d'erreur Lors de l'utilisation de ce type de segment, les codes d'erreur pouvant être renvoyés dans le mot %MWr.m.c.3 sont les suivants : Code Description 9501 La valeur lracc est égale à zéro (cas de figure interdit). 9504 Le tableau contient deux points successifs identiques. 9506 Utilisation d’un type d’interpolation circulaire alors que plus de deux axes sont définis. 9508 Liaison circulaire selon un angle de 180°. 9509 Liaison circulaire selon un angle de 0°. 9514 Liaison trop longue : segment suivant = 0 9515 Le nombre de points du segment linéaire est fixé à 0. 9517 Le nombre de points du segment d’interpolation circulaire est fixé à 0. NOTE : les codes d'erreur indiqués sont ceux du module TSX CSY 85. Les codes d'erreur indiqués pour TjE sont les mêmes, avec le 9 en moins (9501 correspond à 501, etc.). 35010452 12/2018 69 Interpolation Exemple de trajectoire La figure suivante présente un exemple de trajectoire utilisant des segments de type 10 et 1. Le point P1 fournit un exemple de mouvement circulaire avec le paramètre ParW4 =. Dans ce cas, la vitesse n'est plus constante : 70 35010452 12/2018 Interpolation Exemple de trajectoire circulaire complète La figure suivante présente un exemple de trajectoire circulaire pour laquelle les coins du carré circonscrit ont été définis avec des segments circulaires mesurant la moitié du côté de ce carré : 35010452 12/2018 71 Interpolation Interpolation circulaire avec indication du rayon : type 11 Présentation Ce type d’interpolation permet également de relier des segments linéaires entre eux par une trajectoire circulaire. Vous devez spécifier : le point d’origine (Pn-1), le point d’arrivée (Pn), le rayon du cercle et la direction de la trajectoire (horaire ou anti-horaire). NOTE : Un mouvement circulaire complet n’est pas possible pour ce type d’interpolation. Si vous désirez parcourir un cercle entier, vous devez utiliser l'interpolation de type 10. NOTE : ce type d’interpolation n’est possible que lorsque le mouvement s’effectue dans un plan (2 axes seulement). Illustration La figure suivante présente un exemple de segment de type 11 : 72 35010452 12/2018 Interpolation Paramètres du bloc Le tableau suivant indique les paramètres à renseigner dans la table de trajectoire pour ce type de segment : Paramètre Description ParW0 Saisissez 11 pour indiquer que le type d’interpolation à utiliser est l’interpolation linéaire avec liaison selon une interpolation circulaire dont on donne le rayon. ParW1 = NpLin Indiquez dans ce paramètre le nombre de points de l’arc de cercle. Ce nombre de points (minimum 1) représente le nombre de points intermédiaires que le module doit calculer pour définir la trajectoire sur ce segment. ParW4 Bit 0 à 0 pour un sens anti-horaire de la trajectoire. Bit 0 à 1 pour un sens horaire de la trajectoire. Dans le cas d’une utilisation d’un troisième axe de type tangentiel sélectionnez mode tangentiel (bit 8 de ParW4 à 1) pour indiquer que le mouvement du troisième axe suivra la courbe en utilisant le mode tangentiel (positionnement d’un outil par exemple de telle sorte qu’il soit toujours perpendiculaire à la courbe et qu’il suive la tangente de celle-ci). Note : Le mode tangentiel (bit 8 à 1) sera disponible dans une version ultérieure de l'ensemble TjE/TSX CSY 85. Pour le moment, seul le positionnement angulaire du troisième axe Z est pris en charge. ParF1 = R Radius est la longueur du rayon de l’arc de cercle. Codes d’erreur Lors de l'utilisation de ce type de segment, les codes d'erreur pouvant être renvoyés dans le mot %MWr.m.c.3 sont les suivants : Code Description 9504 deux points successifs identiques sont présents dans la table. 9506 utilisation d’un type d’interpolation circulaire alors que plus de deux axes sont définis. 9511 le rayon est inférieur à la moitié de la distance entre les points Pn-1 et Pn. 9512 Cercle impossible. 9513 Rayon égal à 0. 9518 Le nombre de points du segment d’interpolation circulaire est fixé à 0. NOTE : Les codes d'erreur indiqués sont ceux du module TSX CSY 85. Les codes d'erreur indiqués pour le logiciel TjE sont les mêmes, avec le 9 en moins (9504 correspond à 504, etc.). 35010452 12/2018 73 Interpolation Interpolation circulaire avec indication du centre : type 12 Présentation Ce type d’interpolation permet également de relier des segments linéaires entre eux par une trajectoire circulaire. Vous devez spécifier : le point d’origine (Pn-1), le point d’arrivée (Pn), les coordonnés du centre du cercle et la direction de la trajectoire (horaire ou anti-horaire). NOTE : Un mouvement circulaire complet est possible si le point de départ est égal au point d'arrivée. NOTE : ce type d’interpolation n’est possible que lorsque le mouvement s’effectue dans un plan (2 axes seulement). Illustration La figure suivante présente un exemple de segment de type 12 : 74 35010452 12/2018 Interpolation Paramètres du bloc Le tableau suivant indique les paramètres à renseigner dans la table de trajectoire pour ce type de segment : Paramètre Description ParW0 Saisissez 12 pour indiquer que le type d’interpolation à utiliser est l’interpolation linéaire avec liaison selon une interpolation circulaire dont on indique les coordonnés du centre du cercle. ParW1 = NpLin Indiquez dans ce paramètre le nombre de points de l’arc de cercle. Ce nombre de points (minimum 1) représente le nombre de points intermédiaires que le module doit calculer pour définir la trajectoire sur ce segment. ParW4 Bit 0 à 0 pour un sens anti-horaire de la trajectoire. Bit 0 à 1 pour un sens horaire de la trajectoire. Dans le cas d’une utilisation d’un troisième axe de type tangentiel sélectionnez mode tangentiel (bit 8 de ParW4 à 1) pour indiquer que le mouvement du troisième axe suivra la courbe en utilisant le mode tangentiel (positionnement d’un outil par exemple de telle sorte qu’il soit toujours perpendiculaire à la courbe et qu’il suive la tangente de celle-ci). Note : Le mode tangentiel (bit 8 à 1) sera disponible dans une version ultérieure de l'ensemble TjE/TSX CSY 85. Pour le moment, seul le positionnement angulaire du troisième axe Z est pris en charge. ParF1 = Xc ParF2 = Yc Xc est la position du centre du cercle selon l’axe X. Yc est la position du centre du cercle selon l’axe Y. Note : le module TSX CSY 85 recalcule automatiquement la position exacte du centre. Toutefois si la position indiquée diffère de la position exacte de plus de la moitié de la longueur du rayon du cercle, le code d’erreur 9519 est généré. Codes d’erreur Lors de l'utilisation de ce type de segment, les codes d'erreur pouvant être renvoyés dans le mot %MWr.m.c.3 sont les suivants : Code Description 9506 utilisation d’un type d’interpolation circulaire alors que plus de deux axes sont définis. 9512 Cercle impossible. 9518 Le nombre de points du segment d’interpolation circulaire est fixé à 0. 9519 La position indiquée du centre est en dehors de la tolérance acceptée par le module. NOTE : Les codes d'erreur indiqués sont ceux du module TSX CSY 85. Les codes d'erreur indiqués pour le logiciel TjE sont les mêmes, avec le 9 en moins (9501 correspond à 501, etc.). 35010452 12/2018 75 Interpolation Interpolation axe tangentiel : type 100 ou 101 Présentation Ce type d’interpolation permet d’utiliser un troisième axe qui suivra automatiquement la courbe créée à partir de deux axes. Ce troisième axe va permettre de positionner un outil de découpe pour lequel sera indiqué un angle d’attaque de l’outil. Cette interpolation garantit un positionnement angulaire constant sur chaque segment. NOTE : ce type d’interpolation est uniquement utilisé sur le point P0 pour indiquer que le troisième axe est de type tangentiel. NOTE : Pour chaque segment de la courbe, la position sur le troisième axe indique l'angle (en degré) selon lequel l'outil de découpe doit être positionné si le bit 8 du paramètre ParW4 du segment est à 0. Si ce bit 8 est à 1, la position de l'outil sera automatiquement tangente à la courbe. Le mode tangentiel (bit 8 à 1) sera disponible dans une version ultérieure de l'ensemble TjE/TSX CSY 85. Pour le moment, seul le positionnement angulaire du troisième axe Z est pris en charge. NOTE : Le code 100 est utilisé pour positionner l'outil d'un côté de la courbe et le code 101 de l'autre côté. Illustration Les flèches rouges de la figure suivante indiquent le positionnement du troisième axe sur la courbe : 76 35010452 12/2018 Interpolation Paramètres du bloc Le tableau suivant indique les paramètres à renseigner dans la table de trajectoire pour ce type de segment : Paramètre Description ParW0 Saisissez 101 pour indiquer que le troisième axe du mouvement est de type tangentiel. Note : ce type est uniquement utilisé sur le premier point P0 de la courbe car il indique le mode de fonctionnement du troisième axe sur la totalité de la trajectoire. 35010452 12/2018 77 Interpolation Sous-chapitre 4.2 Positionnement du maître et gestion de la vitesse Positionnement du maître et gestion de la vitesse Objet de ce sous-chapitre Ce sous-chapitre décrit les fonctions de positionnement du maître et de gestion de la vitesse du mouvement sur la trajectoire. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet 78 Page GetTabResultF : résultat du calcul de trajectoire (ACTION_TRF = 16901) 79 MoveImmedInterpo : Variation de la vitesse du maître (ACTION_CMD = 905) 82 GetMinimumConstantSpeed : obtention de la vitesse constante la plus faible possible (ACTION_TRF = 14905) 87 35010452 12/2018 Interpolation GetTabResultF : résultat du calcul de trajectoire (ACTION_TRF = 16901) Présentation Après avoir chargé la trajectoire dans le module (voir page 49), le module a calculé les différents profils de came pour chaque axe qui associent les axes réels esclaves à l’axe maître. Vous pouvez maintenant travailler sur le mouvement et sa trajectoire en obtenant différentes informations. La fonction GetTabResultF permet d’obtenir la vitesse maximum autorisée ainsi que la vitesse calculée (vitesse réellement utilisée). Syntaxe de la fonction La fonction GetTabResultF est exécutée : sur une voie de type groupe d’axes suiveur (voies 21 à 24), avec le paramétrage suivant : %MWr.m.c.10 (ACTION_TRF) = 16901 %MDr.m.c.11 (param_trf_1) = 0, %MDr.m.c.13 (param_trf_2) = 0, %MDr.m.c.15 (param_trf_3) = 0.0 pour lire la table du maître, 1.0 pour lire la table des vitesses maximum autorisées et 2.0 pour obtenir la table des vitesses calculées. %MDr.m.c.17 (param_trf_4) = 0, et la fonction TRF_RECIPE ayant pour paramètres la table de mots devant recevoir les informations demandées par le param_trf_3 ainsi que la longueur de cette table. TRF_RECIPE %CHr.m.c (Longueur_table, Table_réception) Paramètre Description %CHr.m.c Voie associée au groupe de voie du module composé des axes esclaves et de l’axe maître de la trajectoire dont on veut obtenir les informations. Exemple : %CH3.21 Longueur_table Nombre de mots composant la table de réception : Longueur_table = 4 x Nombre de points de la trajectoire. Table_réception Premier mot de la table réceptionnant les valeurs demandées par le paramètre param_trf_3. Cette table contient deux flottants pour chaque point de la trajectoire. Ces mots contiennent les vitesses (param_trf_3 = 1.0 ou 2.0) ou des positions caractéristiques pour chaque type de segment (param_trf_3 = 0.0). Les paragraphes qui suivent détaillent plus précisément l’information reçue lorsque vous voulez obtenir la position du maître. Exemple : %MW0 : 35010452 12/2018 79 Interpolation Position du maître Lorsque vous demandez la position du maître, vous obtenez deux mots flottants pour chaque point (P0, P1,..., Pn...) des segments des axes esclaves. Ces mots flottants correspondent à la position des points du maître identiques aux points des esclaves pour les segments de type 0 (voir page 55), 11 (voir page 72) et 12 (voir page 74). Dans le cas des segments de type 1 (voir page 57), 2 (voir page 63) et 10 (voir page 67), l’interpolation crée deux segments pour représenter le segment demandé et ainsi les points (et par conséquent les vitesses) ne coïncident plus. Le tableau suivant donne un exemple de points pour une trajectoire dont l’illustration est donnée ensuite Point X Y Type P0 0 0 ignoré P1 P2 P3 P4 P5 P6 80 2 000 3 500 4 000 3 000 2 000 0 4 000 4 000 3 000 2 000 2 000 0 10 0 10 0 1 linéaire liaison Position Maître Point sur illustration 0 Toujours 0 0 Toujours 0 3 472,136 Fin de linéaire entre P0 et P1, début liaison circulaire 5 263,540 Fin liaison circulaire en P1 5 263,540 Fin linéaire entre P1 et P2 5 263,540 Fin linéaire entre P1 et P2 6 381,574 Fin de linéaire entre P2 et P3, début liaison circulaire 7 248,053 Fin liaison circulaire en P3 8 162,267 Fin linéaire entre P3 et P4 8 162,267 Fin linéaire entre P3 et P4 8 162,267 Fin de linéaire entre P4 et P5, début liaison degré 3 10 161,267 Fin liaison degré 3 en P5 11 990,695 Fin linéaire entre P5 et P6 (longueur totale maître) 11 990,695 Fin linéaire entre P5 et P6 (longueur totale maître) 35010452 12/2018 Interpolation Illustration Illustration du tableau précédent : 35010452 12/2018 81 Interpolation MoveImmedInterpo : Variation de la vitesse du maître (ACTION_CMD = 905) Présentation Après avoir chargé la trajectoire dans le module (voir page 49), le module a calculé les différents profils de came pour chaque axe qui associent les axes réels esclaves à l’axe virtuel maître. Vous pouvez maintenant travailler en agissant sur le mouvement et sa trajectoire. La fonction MoveImmedInterpo permet de positionner le maître sur la trajectoire en utilisant la vitesse maximum autorisée en fonction des différents segments la composant. Sur chaque segment le module essaye d’obtenir la vitesse minimum entre la vitesse désirée et la vitesse permise sur le segment en respectant les accélérations et décélérations fixées sur le maître. Syntaxe de la fonction La fonction MoveImmedInterpo s’exécute : sur la voie 0 du module, avec le paramétrage suivant : %MWr.m.c.26 (ACTION_CMD) = 905 %MDr.m.c.27 (param_cmd_1) = ID du groupe d'axes (601 à 604) %MDr.m.c.29 (param_cmd_2) = 10 si vitesse absolue (param_cmd_4) ; toute autre valeur indique que la vitesse contenue dans param_cmd_4 est un pourcentage de la vitesse maximale calculée, %MDr.m.c.31 (param_cmd_3) = position à atteindre, %MDr.m.c.33 (param_cmd_4) = vitesse désirée, soit en absolu, soit en relatif (de 0 pour 0% à 10 000 pour 100%) selon la valeur de param_cmd_2, et l’instruction WRITE_CMD appliquée à la voie 0 du module. NOTE : Pour obtenir l'ID de l'axe, utilisez la fonction GetAxisID (code 523) à l'aide de l'instruction WRITE_CMD. 82 35010452 12/2018 Interpolation Exemple de trajectoire La figure suivante donne un exemple de trajectoire : 35010452 12/2018 83 Interpolation Exemple de mouvement non modulé La figure suivante donne un exemple de mouvement non modulé (param_cmd_2 = 10) en fonction de l'exemple de trajectoire précédent : 84 35010452 12/2018 Interpolation Exemple de mouvement modulé La figure suivante donne un exemple de mouvement modulé (param_cmd_2 différent de 10, param_cmd_4 de 0 pour 0% à 10 000 pour 100%) en fonction de l'exemple de trajectoire précédent : NOTE : sur cette figure, nous constatons que le maître change sa vitesse en fonction des segments (ralentissements sur des segments plus serrés). Lorsque la vitesse est modulée, le mouvement s'effectue en totalité, alors que dans le mouvement non modulé, figure précédente, les axes risquent de passer en défaut, car la vitesse reste trop importante par rapport à la dynamique du mouvement. 35010452 12/2018 85 Interpolation Codes d’erreur Lors de l'utilisation de ce type de segment, les codes d'erreur pouvant être renvoyés dans le mot %MWr.m.c.3 sont les suivants : 86 Code Description 7001 Pour les interpolations de types 1, 2 et 10 une liaison a été fixée avec l’un des paramètres ParF1 ou ParF2 à 0. 7002 Q_stop est en dehors des points de la trajectoire. 7003 La commande de mouvement ne s’est pas effectuée correctement. 7004 Le mouvement en cours a été arrêté. 7038 Le groupe spécifié (ID) n’est pas configuré. 7046 La trajectoire du groupe sélectionné n’a pas été calculée. 9015 La version du module ne supporte pas cette fonction. 35010452 12/2018 Interpolation GetMinimumConstantSpeed : obtention de la vitesse constante la plus faible possible (ACTION_TRF = 14905) Présentation Après avoir chargé la trajectoire dans le module (voir page 49), le module a calculé les différents profils de came pour chaque axe qui associent les axes réels esclaves à l’axe maître. Vous pouvez maintenant travailler sur le mouvement et sa trajectoire en obtenant différentes informations. La fonction GetMinimumConstantSpeed permet d’obtenir la vitesse minimum autorisée sur la totalité des segments de la trajectoire. Syntaxe de la fonction La fonction GetMinimumConstantSpeed s’exécute : sur une voie de type groupe d’axes suiveur (voies 21 à 24), avec le paramétrage suivant : %MWr.m.c.10 (ACTION_TRF) = 14905 %MDr.m.c.11 (param_trf_1) = 0, %MDr.m.c.13 (param_trf_2) = 0, %MDr.m.c.15 (param_trf_3) = 0, %MDr.m.c.17 (param_trf_4) = 0, %MDr.m.c.6 (return_trf_2) = contient la vitesse demandée, et la fonction TRF_RECIPE dont les paramètres ne sont pas utilisés. Syntaxe de l’appel de la fonction : TRF_RECIPE %CHr.m.c (0, 0) Codes d’erreur Lors de l'utilisation de ce type de segment, les codes d'erreur pouvant être renvoyés dans le mot %MWr.m.c.3 sont les suivants : Code Description 1 Numéro de groupe incorrect. 3 la trajectoire n’a pas été calculée avant l’exécution de la fonction. 35010452 12/2018 87 Interpolation 88 35010452 12/2018 Premium et Atrium sous EcoStruxure™Control Expert Objets langage Sercos 35010452 12/2018 Chapitre 5 Objets langage Sercos Objets langage Sercos Objet de ce chapitre Ce chapitre décrit les objets langage associés aux modules Sercos. Contenu de ce chapitre Ce chapitre contient les sous-chapitres suivants : Sous-chapitre Sujet Page 5.1 Objets langage et IODDT du module SERCOS 5.2 Objets langage et IODDT spécifiquement associés au module SERCOS 110 5.3 Type d’IODDT Type T_GEN_MOD applicable à tous les modules 155 35010452 12/2018 90 89 Objets langage Sercos Sous-chapitre 5.1 Objets langage et IODDT du module SERCOS Objets langage et IODDT du module SERCOS Objet de ce sous-chapitre Ce sous-chapitre présente les généralités des objets langage et IODDT du module Sercos. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet 90 Page Présentation des IODDT associés aux modules TSX CSY 85 91 Objets langage à échange implicite associés à la fonction métier 92 Objets langage à échange explicite associés à la fonction métier 93 Gestion de l'échange et du compte rendu avec des objets explicites 95 Interface langage 100 Gestion des paramètres 101 WRITE_PARAM et READ_PARAM 103 SAVE_PARAM et RESTORE_PARAM 104 WRITE_CMD 105 WRITE_CMD Exemples 107 READ_STS 109 35010452 12/2018 Objets langage Sercos Présentation des IODDT associés aux modules TSX CSY 85 Général Les IODDT sont prédéfinis par le constructeur. Ils contiennent des objets langage d'entrée/sortie appartenant à une voie d'un module spécifique. Le module TSX CSY 85 compte sept types d'IODDT : T_CSY_CMD, T_CSY_RING, T_CSY_TRF, T_CSY_IND, T_CSY_FOLLOW, T_CSY_COORD, T_CSY_CAM. NOTE : Deux possibilités s'offrent à vous pour créer une variable IODDT : à l'aide de l'onglet Objets d'E/S (voir EcoStruxure™ Control Expert, Modes de fonctionnement), à l'aide de l'éditeur de données (voir EcoStruxure™ Control Expert, Modes de fonctionnement). Types d'objets langage Chaque IODDT contient un jeu d'objets langage qui permettent de contrôler et de vérifier leur fonctionnement. Il existe deux types d’objets langage : les objets à échange implicite, qui sont échangés automatiquement à chaque cycle de la tâche associée au module ; les objets à échanges explicites, qui sont échangés à la demande de l'application, par des instructions d'échange explicite. Les échanges implicites concernent l'état des modules, des signaux de communication, des esclaves, etc. Les échanges explicites permet de configurer les paramètres du module et de diagnostiquer ce dernier. 35010452 12/2018 91 Objets langage Sercos Objets langage à échange implicite associés à la fonction métier Présentation Une interface métier intégrée ou l'ajout d'un module enrichit automatiquement le projet d'objets langage permettant de programmer cette interface ou ce module. Ces objets correspondent aux images des entrées/sorties et aux informations logicielles du module ou de l'interface intégrée métier. Rappels Les entrées du module (%I et %IW) sont mises à jour dans la mémoire automate en début de tâche, alors que l'automate est en mode RUN ou STOP. Les sorties (%Q et %QW) sont mises à jour en fin de tâche, uniquement lorsque l'automate est en mode RUN. NOTE : lorsque la tâche est en mode STOP, suivant la configuration choisie : les sorties sont mises en position de repli (mode de repli) ; les sorties sont maintenues à leur dernière valeur (mode maintien). Schéma Le graphe ci-dessous illustre le cycle de fonctionnement relatif à une tâche automate (exécution cyclique). 92 35010452 12/2018 Objets langage Sercos Objets langage à échange explicite associés à la fonction métier Introduction Les échanges explicites sont des échanges réalisés à la demande de l'utilisateur du programme, et à l'aide des instructions suivantes : READ_STS (lecture des mots d'état) WRITE_CMD (écriture des mots de commande) WRITE_PARAM (écriture des paramètres de réglage) READ_PARAM (lecture des paramètres de réglage) SAVE_PARAM (enregistrement des paramètres de réglage) RESTORE_PARAM (restauration des paramètres de réglage) Pour en savoir plus sur les instructions, consultez le document EcoStruxure™ Control Expert - Gestion des E/S - Bibliothèque de blocs. Ces échanges s'appliquent à un ensemble d'objets %MW de même type (état, commandes ou paramètres) appartenant à une voie. Ces objets peuvent : fournir des informations sur le module (par exemple, le type d'erreur détectée dans une voie), commander le module (grâce à un commutateur, par exemple), définir les modes de fonctionnement du module (enregistrement et restauration des paramètres de réglage pendant l'exécution de l'application). NOTE : pour éviter plusieurs échanges explicites simultanés sur la même voie, il convient de tester la valeur du mot EXCH_STS (%MWr.m.c.0) de l'IODDT associé à la voie avant d'appeler une fonction élémentaire (EF) utilisant cette voie. NOTE : les échanges explicites ne sont pas pris en charge lorsque les modules d'E/S analogiques et numériques X80 sont configurés à l'aide d'un module adaptateur eX80 (BMECRA31210) dans une configuration Quantum EIO. Vous ne pouvez pas configurer les paramètres d'un module depuis l'application de l'automate (PLC) pendant le fonctionnement. 35010452 12/2018 93 Objets langage Sercos Principe général d'utilisation des instructions explicites Le schéma ci-après présente les différents types d'échanges explicites possibles entre l'application et le module. Gestion des échanges Pendant un échange explicite, vérifiez les performances pour que les données ne soient prises en compte que lorsque l'échange a été correctement exécuté. Pour cela, deux types d'information sont disponibles : les informations relatives à l'échange en cours (voir page 98), le compte rendu de l'échange (voir page 98). Le diagramme ci-après décrit le principe de gestion d'un échange. NOTE : pour éviter plusieurs échanges explicites simultanés sur la même voie, il convient de tester la valeur du mot EXCH_STS (%MWr.m.c.0) de l'IODDT associé à la voie avant d'appeler une fonction élémentaire (EF) utilisant cette voie. 94 35010452 12/2018 Objets langage Sercos Gestion de l'échange et du compte rendu avec des objets explicites Présentation Lorsque des données sont échangées entre la mémoire de l'automate (PLC) et le module, ce dernier peut avoir besoin de plusieurs cycles de tâche pour prendre en compte ces informations. Les IODDT utilisent deux mots pour gérer les échanges : EXCH_STS (%MWr.m.c.0) : échange en cours EXCH_RPT (%MWr.m.c.1) : compte rendu NOTE : Selon l'emplacement du module, l'application peut ne pas détecter la gestion des échanges explicites (%MW0.0.MOD.0.0 par exemple) : Pour les modules en rack, les échanges explicites sont effectués immédiatement sur le bus automate local et se terminent avant la fin de la tâche d'exécution. Par exemple, READ_STS doit être terminé lorsque l'application contrôle le bit %MW0.0.mod.0.0. Pour le bus distant (Fipio par exemple), les échanges explicites ne sont pas synchronisés avec la tâche d'exécution, afin que l'application puisse assurer la détection. Illustration Le schéma suivant montre les différents bits significatifs pour la gestion des échanges : 35010452 12/2018 95 Objets langage Sercos Description des bits significatifs Chaque bit des mots EXCH_STS (%MWr.m.c.0) et EXCH_RPT (%MWr.m.c.1) est associé à un type de paramètre : Les bits de rang 0 sont associés aux paramètres d'état : Le bit STS_IN_PROGR (%MWr.m.c.0.0) indique si une demande de lecture des mots d'état est en cours. Le bit STS_ERR (%MWr.m.c.1.0) indique si la voie du module a accepté une demande de lecture des mots d'état. Les bits de rang 1 sont associés aux paramètres de commande : Le bit CMD_IN_PROGR (%MWr.m.c.0.1) indique si des paramètres de commande sont envoyés à la voie du module. Le bit CMD_ERR (%MWr.m.c.1.1) indique si la voie du module a accepté les paramètres de commande. Les bits de rang 2 sont associés aux paramètres de réglage : Le bit ADJ_IN_PROGR (%MWr.m.c.0.2) indique si un échange des paramètres de réglage est en cours avec la voie du module (via WRITE_PARAM, READ_PARAM, SAVE_PARAM, RESTORE_PARAM). Le bit ADJ_ERR (%MWr.m.c.1.2) indique si le module a accepté les paramètres de réglage. Si l'échange s'est correctement déroulé, le bit passe à 0. Les bits de rang 15 signalent une reconfiguration sur la voie c du module à partir de la console (modification des paramètres de configuration + démarrage à froid de la voie). Les bits r, m et c représentent les éléments suivants : Le bit r indique le numéro du rack. Le bit m indique l'emplacement du module dans le rack. Le bit c indique le numéro de la voie dans le module. NOTE : r indique le numéro du rack, m la position du module dans le rack, et c le numéro de la voie dans le module. NOTE : les mots d'échange et de compte rendu existent également au niveau du module EXCH_STS (%MWr.m.MOD) et EXCH_RPT (%MWr.m.MOD.1) selon le type d'IODDT T_GEN_MOD. 96 35010452 12/2018 Objets langage Sercos Exemple Phase 1 : envoi de données à l'aide de l'instruction WRITE_PARAM Lorsque l'instruction est scrutée par l'automate (PLC), le bit d'échange en cours est mis à 1 dans %MWr.m.c. Phase 2 : analyse des données par le module d'E/S et le compte rendu. Lorsque les données sont échangées entre la mémoire de l'automate (PLC) et le module, le bit ADJ_ERR (%MWr.m.c.1.2) gère l'acquittement par le module. Ce bit crée les comptes rendus suivants : 0 : échange correct 1 : échange incorrect NOTE : il n'existe aucun paramètre de réglage au niveau du module. 35010452 12/2018 97 Objets langage Sercos Indicateurs d'exécution pour un échange explicite : EXCH_STS Le tableau suivant indique les bits de commande des échanges explicites : EXCH_STS (%MWr.m.c.0) Symbole standard Type Accès Signification Adresse STS_IN_PROGR BOOL R Lecture des mots d'état de la voie en cours %MWr.m.c.0.0 CMD_IN_PROGR BOOL R Echange de paramètres de commande %MWr.m.c.0.1 en cours ADJ_IN_PROGR BOOL R Echange de paramètres de réglage en cours %MWr.m.c.0.2 RECONF_IN_PROGR BOOL R Reconfiguration du module en cours %MWr.m.c.0.15 NOTE : si le module est absent ou déconnecté, les objets à échange explicite (READ_STS par exemple) ne sont pas envoyés au module (STS_IN_PROG (%MWr.m.c.0.0) = 0), mais les mots sont actualisés. Compte rendu d'échange explicite : EXCH_RPT Le tableau suivant indique les bits de compte rendu : EXCH_RPT (%MWr.m.c.1) 98 Symbole standard Type Accès Signification Adresse STS_ERR BOOL R Erreur détectée pendant la lecture des mots d'état de la voie (1 = erreur détectée) %MWr.m.c.1.0 CMD_ERR BOOL R Erreur détectée pendant un échange de paramètres de commande (1 = erreur détectée) %MWr.m.c.1.1 ADJ_ERR BOOL R Erreur détectée pendant un échange de paramètres de réglage (1 = erreur détectée) %MWr.m.c.1.2 RECONF_ERR BOOL R Erreur détectée pendant la reconfiguration de la voie (1 = erreur détectée) %MWr.m.c.1.15 35010452 12/2018 Objets langage Sercos Utilisation du module de comptage Le tableau suivant décrit les étapes effectuées entre un module de comptage et le système après une mise sous tension. Etape Action 1 Mettez le système sous tension. 2 Le système envoie les paramètres de configuration. 3 Le système envoie les paramètres de réglage à l'aide de la méthode WRITE_PARAM. Remarque : une fois l'opération terminée, le bit %MWr.m.c.0.2 passe à 0. Si vous utilisez une commande WRITE_PARAM au début de votre application, attendez que le bit %MWr.m.c.0.2 passe à 0. 35010452 12/2018 99 Objets langage Sercos Interface langage Voies du module Le module TSX CSY 85 comprend jusqu’à 32 voies qui supportent les fonctions suivantes : Voies Fonction supportée %CHr.m.0 Fonction SERCOS® %CHr.m.1 à %CHr.m.8 Axes réels %CHr.m.9 à %CHr.m.12 Axes imaginaires %CHr.m.13 à %CHr.m.16 Axes à mesure externe %CHr.m.17 à %CHr.m.20 Groupes d’axes coordonnés %CHr.m.21 à %CHr.m.24 Groupes d’axes suiveurs %CHr.m.25 à %CHr.m.31 Profils de came Synoptique des échanges Les échanges entre le processeur, le module de commande d'axes et les variateurs de vitesse s'effectuent de la manière suivante : 100 35010452 12/2018 Objets langage Sercos Gestion des paramètres Général Les paramètres du module de commande d’axes et ceux des variateurs de vitesse sont gérés séparément, à l’aide de Control Expert et d’UniLink. Il est possible par exemple, de définir des valeurs différentes pour les limites dans le module de commande d’axes et dans les variateurs de vitesse. Les paramètres du module de commande d’axes peuvent être classés en 2 catégories : Les paramètres utilisés seulement par le module de commande d’axes, Les paramètres utilisés à la fois par le module de commande d’axes et par les variateurs de vitesse. NOTE : Les variateurs travaillant avec un type d'unité linéaire ne sont pas pris en charge par les modules TSX CSY85. Paramètres du module de commande d’axes Les paramètres de type "C" (Controller) sont échangés en flottant, dans les unités du module de commande d’axes. Ces paramètres sont relatifs au calcul de trajectoire ou aux profils de came. Ils sont configurés dans les écrans de configuration de Control Expert, puis modifiés par l’application au fur et à mesure de ses besoins. Les unités de ces paramètres sont celles du module de commande d’axes, définies dans les écrans de configuration. Paramètres des variateurs de vitesse Lorsque l’application modifie un paramètre dans le module de commande d’axes, le paramètre relatif dans les variateurs de vitesse n’est pas mis à jour (par exemple, les limites de position minimale et maximale, les accélérations minimale et maximale, la vitesse maximale, la fenêtre au point). Ces paramètres sont considérés comme des paramètres système des variateurs de vitesse. L’utilisateur les configure à travers UniLink afin de protéger la partie opérative et il n’est pas nécessaire de les changer en fonctionnement (le programme application modifie les paramètres de type "C" équivalent dans le module de commande d’axes). Paramètres utilisés par le module de commande d'axes et par les variateurs Le module de commande d’axes ne met pas à jour les paramètres des variateurs de vitesse, en fonction de ces valeurs de paramètres équivalents. Les paramètres de type "S" (identificateurs (IDN) SERCOS® Standard) et les paramètres de type "P" (Identificateurs (IDN) SERCOS® Propriétaire) sont échangés en flottant avec le module de commande d’axes et en entier avec les variateurs de vitesse (par exemple, les valeurs d’accélération, de vitesse et de position). Si l’application nécessite de synchroniser la valeur des paramètres du module de commande d’axes avec ceux des variateurs de vitesse, elle peut lire les paramètres de type "S" ou de type "P" (TRF_RECIPE) puis les écrire dans les paramètres de type "C" (WRITE_PARAM). 35010452 12/2018 101 Objets langage Sercos Paramètres "Unités" Les unités sont des paramètres utilisés par le module de commande d’axes et par les variateurs. Les unités sont configurées avec Control Expert. La conversion d'unités du module de commande d'axes en unités de variateur de vitesse est réalisée automatiquement par les modules TSX CSY 85, à l'aide du facteur d'échelle configuré par l'utilisateur. 102 35010452 12/2018 Objets langage Sercos WRITE_PARAM et READ_PARAM Rappel Ces services permettent d'échanger les paramètres de réglage entre le processeur (projet) et le module de commande d'axes. READ_PARAM : lecture explicite des paramètres dans le module de commande d'axes et mise à jour des mots de réglage %MW/D/Fr.m.c.r. par l'intermédiaire des IODDT. WRITE_PARAM : écriture explicite des paramètres dans le module de commande d'axes. Cette instruction permet de modifier par programme les valeurs de réglage définies en configuration. Ces deux instructions s'appliquent à une variable IODDT associée au module TSX CSY 84. Dans les paragraphes suivants, nous prendrons l'exemple d'une variable appelée Serco_Channel de type T_CSY_IND. Syntaxe de l'instruction READ_PARAM READ_PARAM (Sercos_Channel) : lecture des paramètres de réglage de la voie associée à l'IODDT Sercos_Channel. Syntaxe de l'instruction WRITE_PARAM WRITE_PARAM (Sercos_Channel) : écriture des paramètres de réglage de la voie associée à l'IODDT Sercos_Channel. Contrôle de l'échange Les 2 bits suivants de l'IODDT peuvent être utilisés pour contrôler les échanges de paramètres de réglage entre le processeur et le module : Symbole standard Signification ADJ_IN_PROGR Ce bit est positionné à 1 lorsque l'échange est en %MWr.m.c.0.2 cours. Il est remis à 0 lorsque l'échange est terminé. ADJ_ERR Ce bit est positionné à 1 si les paramètres transmis sont hors bornes ou erronés. 35010452 12/2018 Bit %MWr.m.c.1.2 103 Objets langage Sercos SAVE_PARAM et RESTORE_PARAM Rappel Ces services permettent de sauvegarder ou de restituer les paramètres de réglage. SAVE_PARAM : sauvegarde explicite des paramètres du module de commande d'axes. Ces paramètres remplacent les valeurs initiales définies en configuration. RESTORE_PARAM : restitution explicite des paramètres de réglage initiaux (écrits lors de la configuration ou lors de la dernière sauvegarde). Ces deux instructions s'appliquent à une variable IODDT associée au module TSX CSY 84. Dans les paragraphes suivants, nous prendrons l'exemple d'une variable appelée Serco_Channel de type T_CSY_IND. Syntaxe de l'instruction SAVE_PARAM SAVE_PARAM (Sercos_Channel) : sauvegarde des paramètres de réglage de la voie associée à l'IODDT Sercos_Channel. Syntaxe de l'instruction RESTORE_PARAM RESTORE_PARAM (Sercos_Channel) : restitution des paramètres de réglage de la voie associée à l'IODDT Sercos_Channel. Contrôle de l'échange Les 2 bits suivants de l'IODDT peuvent être utilisés pour contrôler les échanges de paramètres de réglage entre le processeur et le module : 104 Symbole standard Signification Bit ADJ_IN_PROGR Ce bit est positionné à 1 lorsque l'échange est en %MWr.m.c.0.2 cours. Il est remis à 0 lorsque l'échange est terminé, ADJ_ERR Ce bit est positionné à 1 si les paramètres transmis sont hors bornes ou erronés. %MWr.m.c.1.2 35010452 12/2018 Objets langage Sercos WRITE_CMD Rappel Ce service permet d'émettre une commande vers le module de commande d'axes. WRITE_CMD : écriture explicite des mots de commande dans le module. Cette opération s'effectue à partir de mots internes %MW qui contiennent la commande à réaliser et ses paramètres (par exemple, une commande de mouvement). Cette instruction s'applique à une variable de type IODDT associée aux modules TSX CSY 84 et TSX CSY 164. Pour un axe indépendant, nous prendrons l'exemple d'une variable appelée Serco_Channel de type T_CSY_IND. Et dans le cas d'un axe coordonné, nous prendrons l'exemple d'une variable appelée Serco_Channel_coord de type T_CSY_COORD. Syntaxe de l'instruction WRITE_CMD WRITE_CMD (Sercos_Channel) : écriture des informations de commande de la voie associée à l'IODDT Sercos_Channel (axe coordonné). WRITE_CMD (Sercos_Channel_coord) pour l'axe coordonné. Interface WRITE_CMD La commande à réaliser est définie dans le mot ACTION_CMD (%MWr.m.c.26) de l'IODDT Sercos_Channel et le résultat de la commande est disponible dans les mots décrits dans le tableau suivant : Symbole standard Type Accès Signification ERROR_CMD INT RW Erreur d'écriture de la commande WRITE_CMD %MWr.m.c.19 RETURN_CMD_1 DINT RW Retour 1 de la fonction %MDr.m.c.20 RETURN_CMD_2 REAL RW Retour 2 de la fonction %MFr.m.c.22 RETURN_CMD_3 REAL RW Retour 3 de la fonction %MFr.m.c.24 ACTION_CMD INT RW Action à réaliser %MWr.m.c.26 PARAM_CMD_1 DINT RW Paramètre 1 %MDr.m.c.27 PARAM_CMD_2 DINT RW Paramètre 2 %MDr.m.c.29 PARAM_CMD_3 REAL RW Paramètre 3 %MFr.m.c.31 PARAM_CMD_4 REAL RW Paramètre 4 %MFr.m.c.33 35010452 12/2018 Adresse 105 Objets langage Sercos Interface WRITE_CMD dans le cas d'un groupe d'axes coordonnés Dans le cas d'un groupe d'axes coordonnés, les fonctions de mouvement nécessitent d'envoyer 2 paramètres par axe coordonné (position et vitesse). L'IODDT associé à cet axe est par conséquent un peu plus complexe. Le résultat de la commande et des paramètres se trouve dans les mots suivants de l'IODDT Sercos_Channel_Coord : Symbole standard Type Accès Signification Repère ... ... ... ... ... PARAM_CMD_1 DINT RW Paramètre 1 %MDr.m.c.27 PARAM_CMD_2 DINT RW Paramètre 2 %MDr.m.c.29 PARAM_CMD_3 REAL RW Paramètre 3 %MFr.m.c.31 PARAM_CMD_4 REAL RW Paramètre 4 %MFr.m.c.33 PARAM_CMD_5 REAL RW Paramètre 5 %MFr.m.c.35 ... ... ... ... ... PARAM_CMD_18 REAL RW Paramètre 18 %MFr.m.c.61 Contrôle de l'échange Les 2 bits suivants de l'IODDT peuvent être utilisés pour contrôler l'écriture des informations de commande dans le module : 106 Symbole standard Signification CMD_IN_PROGR Ce bit est positionné à 1 lorsque l'échange est en %MWr.m.c.0.1 cours. Il est remis à 0 lorsque l'échange est terminé. Bit CMD_ERR Ce bit est positionné à 1 si les paramètres transmis sont hors bornes ou erronés. %MWr.m.c.1.1 35010452 12/2018 Objets langage Sercos WRITE_CMD Exemples Exemple 1 : Initialisation des défauts Initialiser les défauts sur le bus en anneau du module 4 situé dans le rack 1. Nous déclarons l’IODDT Ring déclaré de type T_CSY_RING et l’associons à la voie 0 du module TSX CSY 85 situé dans le rack 1, emplacement 4 : ! (*Si pas de WRITE_CMD en cours, alors initialisation des défauts*) IF NOT Ring.CMD_IN_PROGR THEN Ring.ACTION_CMD := 409; WRITE_CMD(Ring); END_IF; Exemple 2 : Ecriture de la puissance optique Définir (écrire) la puissance optique. Nous utilisons le même IODDT : ! (*Si pas de WRITE_CMD en cours, alors écriture (set) de la puissance optique*) IF NOT Ring.CMD_IN_PROGR THEN Ring.ACTION_CMD := 2545; Ring.PARAM_CMD_3 := 51.5; //Paramètre 3 : puissance optique = 51.5 WRITE_CMD(Ring); END_IF; Exemple 3 : Lecture du rapport de transmission Lire le rapport de transmission (BAUD_RATE) : ! (*Si pas de WRITE_CMD en cours, alors lecture (get) du rapport de transmission*) IF NOT Ring.CMD_IN_PROGR THEN Ring.ACTION_CMD := 1551; WRITE_CMD(Ring); END_IF; ! (*Si WRITE_CMD terminé et si pas de défaut, alors la valeur du rapport de transmission est accessible dans retour 1*) IF NOT Ring.CMD_IN_PROGR AND NOT Ring.CMD_ERR THEN BAUD_RATE: = Ring.RETURN_CMD_1; //rapport de transmission dans retour 1 END_IF; 35010452 12/2018 107 Objets langage Sercos Exemple 4 : Déplacer un axe réel Déplacer l’axe réel 3 du module 4 positionné dans le rack 1, à la position 105.2, à la vitesse 5 avec une commande "MOVE absolu immédiat". Nous déclarons l’IODDT Axis_3 de type T_CSY_IND et l’associons à la voie 3 du module 4 du rack 1 : ! (*Si pas de WRITE_CMD en cours, alors déplacer l’axe réel 3*) IF NOT Axis_3.CMD_IN_PROGR THEN Axis_3.ACTION_CMD := 513; Axis_3.PARAM_CMD_1 := 0; //Paramètre 1 : type de mouvement = absolu Axis_3.PARAM_CMD_3 := 105.2; //Paramètre 3 : position = 105.2 Axis_3.PARAM_CMD_4 := 5.0; //Paramètre 4 : vitesse = 5 WRITE_CMD(Axis_3); END_IF; Exemple 5 : Lire la position d’un esclave Lire la position relative d’un esclave suiveur lorsque le maître est en 102.5. Nous déclarons l’IODDT Follow de type T_CSY_FOLLOW et l’associons à la voie correspondant à l’esclave suiveur : ! (*Si pas de WRITE_CMD en cours, alors lire la position de l'esclave suiveur*) IF NOT Follow.CMD_IN_PROGR THEN Follow.ACTION_CMD := 537; Follow.PARAM_CMD_3 := 102.5; //Paramètre 3 : position du maître = 102.5 WRITE_CMD(Follow); END_IF; ! (*Si WRITE_CMD terminé et si pas de défaut, alors la position de l'esclave est accessible dans retour 2*) IF NOT Follow.CMD_IN_PROGR AND NOT Follow.CMD_ERR THEN SLAVE_POSITION :=Follow.RETURN_CMD_2; //position dans retour 2 END_IF; 108 35010452 12/2018 Objets langage Sercos READ_STS Rappel Ce service permet de lire de manière explicite, les mots d’état associés au module de commande d’axes ou aux différentes voies. Cette instruction peut s'appliquer à tous les types de variables IODDT associables au module TSX CSY 85. Dans le cas d'un axe indépendant, nous prendrons l'exemple d'une variable appelée Serco_Channel de type T_CSY_IND. Il est également possible d'appliquer cette instruction à un module TSX CSY 85. Dans ce cas, elle doit être appliquée à une variable IODDT de type T_CSY_CMD. Prenons par exemple la variable nommée Sercos_module. Syntaxe de l'instruction READ_STS (module) READ_STS (Sercos_Module) : lecture des informations de diagnostic général du module associé à l’IODDT Serco_Module. Syntaxe de l’instruction READ_STS (voie) READ_STS (Sercos_Channel) : lecture des informations de diagnostic générale de la voie associée à l’IODDT Sercos_Channel. Contrôle de l’échange Les 2 bits suivants de l’IODDT peuvent être utilisés pour contrôler les échanges de mots d’état entre le processeur et le module : Symbole Standard Signification STS_IN_PROGR Ce bit est positionné à 1 lorsque la lecture est en %MWr.m.c.0.0 cours. Il est remis à 0 lorsque l’échange est terminé. STS_ERR Ce bit donne le compte-rendu de l’échange. Il est positionné à 1 en cas de défaut. 35010452 12/2018 Bit %MWr.m.c.1.0 109 Objets langage Sercos Sous-chapitre 5.2 Objets langage et IODDT spécifiquement associés au module SERCOS Objets langage et IODDT spécifiquement associés au module SERCOS Objet de ce sous-chapitre Ce sous-chapitre présente les objets langage et les IODDT associés au module Sercos. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet 110 Page Détail des objets à échanges implicites de l'IODDT de type T_CSY_CMD 111 Détail des objets à échanges explicites de l'IODDT de type T_CSY_CMD 113 Détails relatifs aux objets à échanges implicites de l'IODDT de type T_CSY_RING 115 Détails relatifs aux objets à échanges explicites de l'IODDT de type T_CSY_RING 118 Détail des objets à échanges explicites de l'IODDT de type T_CSY_TRF 122 Détails relatifs aux objets à échanges implicites de l'IODDT de type T_CSY_IND 124 Détails relatifs aux objets à échanges explicites de l'IODDT de type T_CSY_IND 128 Détail des objets à échanges implicites de l'IODDT de type T_CSY_FOLLOW 132 Détails concernant les objets à échanges explicites de l'IODDT de type T_CSY_FOLLOW 135 Détail des objets à échanges implicites de l'IODDT de type T_CSY_COORD 144 Détail des objets à échanges explicites de l'IODDT de type T_CSY_COORD 147 Détail des objets à échanges implicites de l'IODDT de type T_CSY_CAM 151 Détail des objets à échanges explicites de l'IODDT de type T_CSY_CAM 152 35010452 12/2018 Objets langage Sercos Détail des objets à échanges implicites de l'IODDT de type T_CSY_CMD Présentation L’IODDT de type T_CSY_CMD possède des objets à échange implicite, ils sont décrit ci-après. Ce type d’IODDT s’applique au module TSX_CSY_85. Exemple de déclaration d’une variable : IODDT_VAR1 de type T_CSY_CMD. De manière générale, la signification des bits est donnée pour l’état 1 de ce bit. Dans les cas spécifiques, les deux états du bit sont expliqués. Liste des objets d'entrée à échanges implicites Le tableau ci-dessous présente les objets d’entrée à échanges implicites de l’IODDT de type T_CSY_CMD qui s’applique au module TSX_CSY_85. Symbole standard Type Accès Signification Repère %Ir.m.c.ERR CH_ERROR EBOOL R Bit de défaut de la voie. PROFILE_END EBOOL R La dernière commande du profil a été envoyée au %Ir.m.c.3 module IN_POSITION EBOOL R La position de l’axe est située dans la fenêtre au point %Ir.m.c.4 AXIS_HOMED EBOOL R La position de l’axe est référencée par rapport à la prise d’origine %Ir.m.c.6 HOLDING EBOOL R L’axe est arrêté en position d’attente %Ir.m.c.8 RESUMING EBOOL R L’axe est en mouvement après une attente %Ir.m.c.9 DRIVE_ENABLED EBOOL R Le variateur de vitesse est activé %Ir.m.c.10 DRIVE_FLT EBOOL R Le variateur effectue un diagnostic de classe 1 %Ir.m.c.13 AXIS_SUMMARY_FLT EBOOL R Défaut du drive %Ir.m.c.15 AXIS_IN_CMD EBOOL R L’axe est actif et peut être commandé %Ir.m.c.18 AXIS_HOLD EBOOL R L’axe est à l’arrêt, en attente d’une commande %Ir.m.c.28 AXIS_HALT EBOOL R L’axe est à l’arrêt %Ir.m.c.29 AXIS_FASTSTOP EBOOL R L’axe s’est arrêté rapidement %Ir.m.c.30 AXIS_READY EBOOL R L’axe est prêt pour répondre à une commande %Ir.m.c.31 35010452 12/2018 111 Objets langage Sercos Liste des objets de sortie à échanges implicites Le tableau ci-dessous présente les objets de sortie à échanges implicites de l’IODDT de type T_CSY_CMD qui s’applique au module TSX_CSY_85. Symbole standard Type Accès Signification Repère CONTROL_ACQUIRE EBOOL RW acquisition de la commande %Qr.m.c.2 CONTROL_ENABLE EBOOL RW Validation de la commande %Qr.m.c.10 CONTROL_RESUME EBOOL RW Commande de reprise suite à un arrêt %Qr.m.c.12 CONTROL_CLEAR_FLT EBOOL RW Commande d’initialisation des défauts %Qr.m.c.15 ALLOW_ACQUIRE EBOOL RW Commande de validation de l’acquisition %Qr.m.c.18 ALLOW_ENABLE EBOOL RW Commande de désactivation de l’axe %Qr.m.c.26 ALLOW_RESUME EBOOL RW Commande d'autorisation de poursuite d'un %Qr.m.c.28 mouvement suite à un arrêt par la commande HOLD ALLOW_MOVE EBOOL RW Commande d'autorisation de poursuite d'un %Qr.m.c.29 mouvement suite à un arrêt par la commande HALT 112 35010452 12/2018 Objets langage Sercos Détail des objets à échanges explicites de l'IODDT de type T_CSY_CMD Présentation Cette partie présente les objets à échanges explicites de l'IODDT de type T_CSY_CMD qui s'appliquent au module TSX CSY 85. Sont concernés, les objets de type mot dont les bits ont des significations particulières. Ces objets sont présentés en détail ci-dessous. Exemple de déclaration d’une variable : IODDT_VAR1 de type T_CSY_CMD. Remarques De manière générale la signification des bits est donnée pour l’état 1 de ce bit. Dans les cas spécifiques chaque état du bit est expliqué. Tous les bits ne sont pas utilisés. Indicateurs d'exécution d'un échange explicite : EXCH_STS Le tableau ci-dessous présente les significations des bits de contrôle d'échange de la voie EXCH_STS (%MWr.m.c.0). Symbole standard Type Accès Signification Repère CMD_IN_PROGR BOOL R Echange de paramètres de commande en cours %MWr.m.c.0.1 Compte rendu d'échanges explicites : EXCH_RPT Le tableau ci-dessous présente les significations des bits de compte rendu EXCH_RPT (%MWr.m.c.1). Symbole standard Type Accès Signification Repère CMD_ERR BOOL R Défaut lors d’un échange de paramètres de commande %MWr.m.c.1.1 35010452 12/2018 113 Objets langage Sercos Mots d'interface WRITE_CMD Le tableau ci-dessous présente les significations des variables associées au WRITE_CMD dont l’action a été spécifiée dans le mot ACTION_CMD. La mise à jour de ces variables est réalisée par un WRITE_CMD (IODDT_VAR1). Symbole standard Type Accès Signification Repère ERROR_CMD INT RW Erreur lors du WRITE_CMD %MWr.m.c.19 RETURN_CMD_1 DINT RW Retour 1 de la fonction %MDr.m.c.20 RETURN_CMD_2 REAL RW Retour 2 de la fonction %MFr.m.c.22 RETURN_CMD_3 REAL RW Retour 3 de la fonction %MFr.m.c.24 ACTION_CMD INT RW Action à réaliser %MWr.m.c.26 PARAM_CMD_1 DINT RW Paramètre 1 %MDr.m.c.27 PARAM_CMD_2 DINT RW Paramètre 2 %MDr.m.c.29 PARAM_CMD_3 REAL RW Paramètre 3 %MFr.m.c.31 PARAM_CMD_4 REAL RW Paramètre 4 %MFr.m.c.33 114 35010452 12/2018 Objets langage Sercos Détails relatifs aux objets à échanges implicites de l'IODDT de type T_CSY_RING Présentation L'IODDT de type T_CSY_RING possède des objets à échanges implicites. Ceux-ci sont décrits ciaprès. Ce type d'IODDT s'applique à la voie 0 du module TSX_CSY_85. Exemple de déclaration d'une variable : IODDT_VAR1 de type T_CSY_RING. En règle générale, la signification des bits est donnée pour l'état 1 du bit. Dans certains cas, les deux états du bit sont expliqués. Liste des objets d'entrée à échanges implicites Le tableau ci-dessous présente les objets d'entrée à échanges implicites de l'IODDT de type T_CSY_RING qui s'appliquent au module TSX_CSY_85. Symbole standard Type Accès Signification Adresse CH_ERROR EBOOL L Bit de défaut de la voie. %Ir.m.c.ERR RAMPING EBOOL L Indique si l'axe est en accélération ou décélération %Ir.m.c.0 STEADY EBOOL L La vitesse est constante %Ir.m.c.1 STOPPING EBOOL L Le mouvement décélère jusqu'à l'arrêt %Ir.m.c.2 PROFILE_END EBOOL L La dernière commande du profil a été envoyée au module %Ir.m.c.3 IN_POSITION EBOOL L L'axe est dans la fenêtre au point %Ir.m.c.4 AXIS_HOMING EBOOL L L'axe est dans sa position d'origine. Pour un axe imaginaire, ce bit est inactif. %Ir.m.c.5 AXIS_HOMED EBOOL L La lecture de la position de l'axe est %Ir.m.c.6 référencée en dehors de la position d'origine AXIS_NOT_FOLLOWING EBOOL L Le translateur ne reconnaît pas les commandes du module %Ir.m.c.7 HOLDING EBOOL L L'axe est arrêté en position d'attente %Ir.m.c.8 RESUMING EBOOL L L'axe se déplace après un arrêt %Ir.m.c.9 DRIVE_ENABLED EBOOL L Le variateur de vitesse est activé %Ir.m.c.10 DRIVE_DIAG EBOOL L Le variateur exécute un diagnostic de classe 3 %Ir.m.c.11 DRIVE_WARNING EBOOL L Le variateur exécute un diagnostic de classe 2 %Ir.m.c.12 DRIVE_FLT EBOOL L Le translateur exécute un diagnostic de classe 1 %Ir.m.c.13 DRIVE_DISABLED EBOOL L Le translateur est désactivé %Ir.m.c.14 AXIS_SUMMARY_FLT EBOOL L Défaut du translateur %Ir.m.c.15 35010452 12/2018 115 Objets langage Sercos Symbole standard Type Accès Signification Adresse AXIS_COM_OK EBOOL L La communication entre le module et le translateur est correcte %Ir.m.c.16 AXIS_IS_LINKED EBOOL L L'axe appartient à un jeu d'axes %Ir.m.c.17 AXIS_IN_CMD EBOOL L L'axe est actif et peut être contrôlé %Ir.m.c.18 AXIS_AT_TARGET EBOOL L L'axe est dans la fenêtre au point pour la position cible %Ir.m.c.20 AXIS_POS_LIMIT EBOOL L L'axe a atteint la limite positive %Ir.m.c.21 AXIS_NEG_LIMIT EBOOL L L'axe a atteint la limite négative %Ir.m.c.22 AXIS_WARNING EBOOL L Etat d'avertissement sur le mouvement renvoyé par le translateur %Ir.m.c.23 AXIS_HOLD EBOOL L L'axe est arrêté et attend une commande %Ir.m.c.28 AXIS_HALT EBOOL L L'axe s'est arrêté %Ir.m.c.29 AXIS_FASTSTOP EBOOL L L'axe s'est arrêté rapidement %Ir.m.c.30 AXIS_READY EBOOL L L'axe est prêt à répondre à une commande %Ir.m.c.31 CONF_OK EBOOL L La voie est configurée %Ir.m.c.32 LSUB_STATUS_IN_USE EBOOL L Application spécifique en cours d'exécution %Ir.m.c.33 LSUB_STATUS_DATA_READY EBOOL L Données d'application spécifique prêtes %Ir.m.c.34 116 35010452 12/2018 Objets langage Sercos Liste des objets de sortie à échanges implicites Le tableau ci-dessous présente les objets de sortie à échanges implicites de l'IODDT de type T_CSY_RING qui s'appliquent au module TSX_CSY_85. Symbole standard Type Accès Signification Adresse CONTROL_ACQUIRE EBOOL L/E acquisition pilotage %Qr.m.c.2 CONTROL_ENABLE EBOOL L/E Validation pilotage %Qr.m.c.10 CONTROL_FOLLOW EBOOL L/E Commande de suivi d'un axe ou d'un jeu d'axes suiveurs %Qr.m.c.11 CONTROL_RESUME EBOOL L/E Reprend la commande après un arrêt %Qr.m.c.12 CONTROL_CLEAR_FLT EBOOL L/E Commande sans échec %Qr.m.c.15 ALLOW_ACQUIRE EBOOL L/E Commande de validation d'acquisition %Qr.m.c.18 ALLOW_ENABLE EBOOL L/E Désactive le contrôle de l'axe %Qr.m.c.26 ALLOW_FOLLOW EBOOL L/E Commande d'annulation du suivi pour un axe ou un groupe d'axes suiveurs %Qr.m.c.27 ALLOW_RESUME EBOOL L/E Commande d'autorisation de poursuite d'un mouvement suite à un arrêt par la commande HOLD %Qr.m.c.28 ALLOW_MOVE EBOOL L/E Commande d'autorisation de poursuite d'un mouvement suite à un arrêt par la commande HALT %Qr.m.c.29 ALLOW_NOT_FASTSTOP EBOOL L/E Commande après un arrêt rapide %Qr.m.c.30 ALLOW_NOT_FLT EBOOL L/E Valide une commande défaut %Qr.m.c.31 Mot de compte rendu de paramétrage Le tableau ci-dessous présente le mot d'entrée à échanges implicites de l'IODDT de type T_CSY_RING qui s'applique au module TSX_CSY_85. Symbole standard Type Accès Signification PARAM_RPT INT L %IWr.m.c.2 Compte rendu de paramétrage signalant un défaut de programmation. L'octet de poids faible contient le code de l'erreur et l'octet de poids fort contient l'adresse dans les registres du champ ayant provoqué l'erreur. 35010452 12/2018 Adresse 117 Objets langage Sercos Détails relatifs aux objets à échanges explicites de l'IODDT de type T_CSY_RING Présentation Cette partie présente les objets à échanges explicites de l'IODDT de type T_CSY_RING qui s'appliquent à la voie 0 du module TSX CSY 85. Sont concernés les objets de type mot dont les bits ont une signification particulière. Ces objets sont décrits en détail ci-dessous. Exemple de déclaration d'une variable : IODDT_VAR1 de type T_CSY_RING. Remarques En règle générale, la signification des bits est donnée pour l'état 1 du bit. Dans certains cas, chaque état du bit est expliqué. Tous les bits ne sont pas utilisés. Indicateurs d'exécution d'un échange explicite : EXCH_STS Le tableau ci-dessous présente les bits de contrôle des échanges explicites : EXCH_STS (%MWr.m.c.0). La mise à jour de ces variables est réalisée automatiquement par le système à chaque échange explicite. 118 Symbole standard Type Accès Signification Adresse STS_IN_PROGR BOOL L Lecture des mots d'état de la voie en cours %MWr.m.c.0.0 CMD_IN_PROGR BOOL L Echange de paramètres %MWr.m.c.0.1 de commande en cours ADJ_IN_PROGR BOOL L Echange de paramètres %MWr.m.c.0.2 de réglage en cours TRF_IN_PROGR BOOL L Fonction TRF_RECIPE en cours %MWr.m.c.0.3 RECONF_IN_PROGR BOOL L Reconfiguration du module en cours %MWr.m.c.0.15 35010452 12/2018 Objets langage Sercos Compte rendu d'échange explicite : EXCH_RPT Le tableau ci-dessous présente les bits de compte rendu : EXCH_RPT (%MWr.m.c.1). La mise à jour de ces variables est réalisée automatiquement par le système à chaque échange explicite. Symbole standard Type Accès Signification Adresse STS_ERR BOOL L Défaut de lecture des mots d'état de la voie (1 = échec) %MWr.m.c.1.0 CMD_ERR BOOL L Défaut lors d'un échange de paramètres de commande (1 = échec) %MWr.m.c.1.1 ADJ_ERR BOOL L Défaut lors d'un échange de paramètres de réglage (1 = échec) %MWr.m.c.1.2 TRF_ERR BOOL L Défaut lors de l'exécution de %MWr.m.c.1.3 la fonction TRF_RECIPE RECONF_ERR BOOL L Défaut lors de la reconfiguration de la voie (1 = échec) 35010452 12/2018 %MWr.m.c.1.15 119 Objets langage Sercos Mot de défaut voie Le tableau ci-dessous présente les bits de défaut voie : CH_FLT. La mise à jour de ces variables est réalisée par une variable READ_STS (IODDT_VAR1). Symbole standard Type Accès Signification Adresse EXT_FLT0 BOOL L Défaut externe 0 : défaut du translateur %MWr.m.c.2.0 EXT_FLT1 BOOL L Défaut externe 1 : défaut de communication %MWr.m.c.2.1 avec l'axe EXT_FLT2 BOOL L Défaut externe 2 %MWr.m.c.2.3 INT_FLT BOOL L Défaut interne %MWr.m.c.2.4 CONF_FLT BOOL L Défaut de configuration : configurations matérielle et logicielle différentes %MWr.m.c.2.5 COM_FLT BOOL L Défaut de communication %MWr.m.c.2.6 APPLI_FLT BOOL L Défaut applicatif : défaut de configuration, réglage ou commande %MWr.m.c.2.7 FAN_STOPPED BOOL L Défaut du ventilateur (voie 0 uniquement) %MWr.m.c.2.8 OVER_TEMP BOOL L Température excessive (voie 0 uniquement) %MWr.m.c.2.9 SENSOR_FLT BOOL L Défaut du capteur de température (voie 0 uniquement) PROCESS_CONF BOOL L Création du déplacement de l'objet en cours %MWr.m.c.2.11 PROCESS_CONF_FAILED BOOL L Défaut de configuration (excepté pour la voie 0) %MWr.m.c.2.10 %MWr.m.c.2.12 Objets de la fonction TRF_RECIPE Le tableau ci-dessous présente les objets associés à la fonction TRF_RECIPE. Ces objets sont mis à jour automatiquement par le système à chaque utilisation de la fonction. Symbole standard Type Accès Signification Adresse ERROR_TRF INT L Erreur de lecture de la fonction TRF_RECIPE %MWr.m.c.3 RETURN_TRF_1 DINT L Retour 1 de la fonction TRF_RECIPE %MDr.m.c.4 RETURN_TRF_2 REAL L Retour 2 de la fonction TRF_RECIPE %MFr.m.c.6 RETURN_TRF_3 REAL L Retour 3 de la fonction TRF_RECIPE %MFr.m.c.8 ACTION_TRF INT L Action à réaliser par la fonction TRF_RECIPE %MWr.m.c.10 PARAM_TRF_1 DINT L Paramètre 1 de la fonction TRF_RECIPE %MDr.m.c.11 PARAM_TRF_2 DINT L Paramètre 2 de la fonction TRF_RECIPE %MDr.m.c.13 PARAM_TRF_3 REAL L Paramètre 3 de la fonction TRF_RECIPE %MFr.m.c.15 PARAM_TRF_4 REAL L Paramètre 4 de la fonction TRF_RECIPE %MFr.m.c.17 120 35010452 12/2018 Objets langage Sercos Mots d'interface WRITE_CMD Le tableau ci-dessous présente les significations des variables associées au WRITE_CMD dont l'action a été spécifiée dans le mot ACTION_CMD. La mise à jour de ces variables est réalisée par un WRITE_CMD (IODDT_VAR1). Symbole standard Type Accès Signification Adresse ERROR_CMD INT L/E Erreur lors du WRITE_CMD %MWr.m.c.19 RETURN_CMD_1 DINT L/E Retour 1 de la fonction %MDr.m.c.20 RETURN_CMD_2 REAL L/E Retour 2 de la fonction %MFr.m.c.22 RETURN_CMD_3 REAL L/E Retour 3 de la fonction %MFr.m.c.24 ACTION_CMD INT L/E Action à réaliser %MWr.m.c.26 PARAM_CMD_1 DINT L/E Paramètre 1 %MDr.m.c.27 PARAM_CMD_2 DINT L/E Paramètre 2 %MDr.m.c.29 PARAM_CMD_3 REAL L/E Paramètre 3 %MFr.m.c.31 PARAM_CMD_4 REAL L/E Paramètre 4 %MFr.m.c.33 Mots d'interface READ_PARAM, WRITE_PARAM Le tableau ci-dessous présente les significations des paramètres accessibles par les fonctions READ_PARAM et WRITE_PARAM pour les voies 1 à 16. La mise à jour de ces variables est réalisée par un READ_PARAM (IODDT_VAR1) ou WRITE_PARAM (IODDT_VAR1). Il est également possible d'utiliser les fonctions SAVE_PARAM et RESTORE_PARAM. Symbole standard Type Accès Signification Adresse CYCLE_TIME INT L/E Temps de cycle de l'anneau SERCOS %MWr.m.c.35 BAUD_RATE INT L/E Débit sur le bus SERCOS (en Bauds) %MWr.m.c.36 OPTICAL_POWER INT L/E Puissance optique dans la fibre %MWr.m.c.37 35010452 12/2018 121 Objets langage Sercos Détail des objets à échanges explicites de l'IODDT de type T_CSY_TRF Présentation Cette partie présente les objets à échanges explicites de l’IODDT de type T_CSY_TRF qui s’applique au module TSX CSY 85 pour les voies 1 à 32. Elle regroupe les objets de type mot, dont les bits ont une signification particulière. Ces objets sont présentés en détail ci-dessous. Exemple de déclaration d’une variable : IODDT_VAR1 de type T_CSY_TRF. Remarques De manière générale la signification des bits est donnée pour l’état 1 de ce bit. Dans les cas spécifiques chaque état du bit est expliqué. Tous les bits ne sont pas utilisés. Indicateur d'exécution de la fonction TRF_RECIPE Le tableau ci-dessous présente le bit de contrôle indiquant que la fonction TRF_RECIPE est en cours d’exécution. Symbole standard Type Accès Signification Repère TRF_IN_PROGR BOOL R Fonction TRF_RECIPE en %MWr.m.c.0.3 cours d’exécution Compte rendu d'échanges explicites : EXCH_RPT Le tableau ci-dessous présente le bit de compte rendu spécifique à la fonction TRF_RECIPE. 122 Symbole standard Type Accès Signification Repère TRF_ERR BOOL R Défaut lors de l'exécution de la fonction TRF_RECIPE %MWr.m.c.1.3 35010452 12/2018 Objets langage Sercos Objets de la fonction TRF_RECIPE Le tableau ci-dessous présente les objets associés à la fonction TRF_RECIPE. Ces objets sont mis à jour automatiquement par le système à chaque utilisation de la fonction TRF_RECIPE. Symbole standard Type Accès Signification Repère ERROR_TRF INT R Erreur de lecture de la fonction TRF_RECIPE %MWr.m.c.3 RETURN_TRF_1 DINT R Retour 1 de la fonction TRF_RECIPE %MDr.m.c.4 RETURN_TRF_2 REAL R Retour 2 de la fonction TRF_RECIPE %MFr.m.c.6 RETURN_TRF_3 REAL R Retour 3 de la fonction TRF_RECIPE %MFr.m.c.8 ACTION_TRF INT R Action à réaliser par la fonction TRF_RECIPE %MWr.m.c.10 PARAM_TRF_1 DINT R Paramètre 1 de la fonction TRF_RECIPE %MDr.m.c.11 PARAM_TRF_2 DINT R Paramètre 2 de la fonction TRF_RECIPE %MDr.m.c.13 PARAM_TRF_3 REAL R Paramètre 3 de la fonction TRF_RECIPE %MFr.m.c.15 PARAM_TRF_4 REAL R Paramètre 4 de la fonction TRF_RECIPE %MFr.m.c.17 35010452 12/2018 123 Objets langage Sercos Détails relatifs aux objets à échanges implicites de l'IODDT de type T_CSY_IND Présentation L'IODDT de type T_CSY_IND possède des objets à échanges implicites, ils sont décrits ci-après. Ce type d'IODDT s'applique au module TSX_CSY_85 pour les voies 1 à 16. Exemple de déclaration d'une variable : IODDT_VAR1 de type T_CSY_IND. En règle générale, la signification des bits est donnée pour l'état 1 de ce bit. Dans certains cas, les deux états du bit sont expliqués. Liste des objets d'entrée à échanges implicites Le tableau ci-dessous présente les objets d'entrée à échanges implicites de l'IODDT de type T_CSY_IND qui s'applique au module TSX_CSY_85. Symbole standard Type Accès Signification Adresse CH_ERROR EBOOL L Bit de défaut de la voie. %Ir.m.c.ERR RAMPING EBOOL L Indique si l'axe est en accélération ou décélération %Ir.m.c.0 STEADY EBOOL L La vitesse est constante %Ir.m.c.1 STOPPING EBOOL L Le mouvement décélère jusqu'à l'arrêt %Ir.m.c.2 PROFILE_END EBOOL L La dernière commande du profil a été envoyée %Ir.m.c.3 au module IN_POSITION EBOOL L L'axe est dans la fenêtre au point %Ir.m.c.4 AXIS_HOMING EBOOL L L'axe est dans sa position d'origine. Avec un axe imaginaire, ce bit est inactif. %Ir.m.c.5 AXIS_HOMED EBOOL L La lecture de la position de l'axe est référencée %Ir.m.c.6 en dehors de la position d'origine AXIS_NOT_FOLLOWING EBOOL L Le translateur ne reconnaît pas les commandes du module %Ir.m.c.7 HOLDING EBOOL L L'axe est arrêté en position d'attente %Ir.m.c.8 RESUMING EBOOL L L'axe se déplace après un arrêt %Ir.m.c.9 DRIVE_ENABLED EBOOL L Le variateur de vitesse est activé %Ir.m.c.10 DRIVE_DIAG EBOOL L Le variateur effectue un diagnostic de classe 3 %Ir.m.c.11 DRIVE_WARNING EBOOL L Le variateur exécute un diagnostic de classe 2 %Ir.m.c.12 DRIVE_FLT EBOOL L Le translateur exécute un diagnostic de classe 1 %Ir.m.c.13 DRIVE_DISABLED EBOOL L Le translateur est désactivé %Ir.m.c.14 AXIS_SUMMARY_FLT EBOOL L Défaut du translateur %Ir.m.c.15 124 35010452 12/2018 Objets langage Sercos Symbole standard Type Accès Signification Adresse AXIS_COM_OK EBOOL L La communication entre le variateur et le module est correcte %Ir.m.c.16 AXIS_IS_LINKED EBOOL L L'axe appartient à un jeu d'axes %Ir.m.c.17 AXIS_IN_CMD EBOOL L L'axe est actif et peut être contrôlé %Ir.m.c.18 AXIS_AT_TARGET EBOOL L L'axe est dans la fenêtre au point pour la position cible %Ir.m.c.20 AXIS_POS_LIMIT EBOOL L L'axe a atteint la limite positive %Ir.m.c.21 AXIS_NEG_LIMIT EBOOL L L'axe a atteint la limite négative %Ir.m.c.22 AXIS_WARNING EBOOL L Etat "Alerte mouvement" remonté par le variateur %Ir.m.c.23 BIAS_REMAIN EBOOL L Offset ajouté à la position de commande %Ir.m.c.24 AXIS_MANUAL_MODE EBOOL L Fonctionnement de l'axe en mode manuel %Ir.m.c.25 DRIVE_REALTIME_BIT1 EBOOL L Temps réel variateur bit 1 %Ir.m.c.26 DRIVE_REALTIME_BIT2 EBOOL L Bit 2 en temps réel du translateur %Ir.m.c.27 AXIS_HOLD EBOOL L L'axe est arrêté et attend une commande %Ir.m.c.28 AXIS_HALT EBOOL L L'axe s'est arrêté %Ir.m.c.29 AXIS_FASTSTOP EBOOL L L'axe s'est arrêté rapidement %Ir.m.c.30 AXIS_READY EBOOL L L'axe est prêt pour répondre à une commande %Ir.m.c.31 CONF_OK EBOOL L La voie est configurée 35010452 12/2018 %Ir.m.c.32 125 Objets langage Sercos Liste des objets de sortie à échanges implicites Le tableau ci-dessous présente les objets de sortie à échanges implicites de l'IODDT de type T_CSY_IND qui s'applique au module TSX_CSY_85. Symbole standard Type Accès Signification Adresse CONTROL_ACQUIRE EBOOL L/E acquisition de la commande %Qr.m.c.2 CONTROL_JOG_POS EBOOL L/E Mode manuel : commande de déplacement à vue dans le sens positif de l'axe %Qr.m.c.4 CONTROL_JOG_NEG EBOOL L/E Mode manuel : commande de déplacement à vue dans le sens négatif de l'axe %Qr.m.c.5 REAL_TIME_CTRL_BIT1 EBOOL L/E Bit variateur %Qr.m.c.6 REAL_TIME_CTRL_BIT2 EBOOL L/E Bit variateur %Qr.m.c.7 OPERATION_MODE_1 EBOOL L/E Sélection du mode d'exploitation %Qr.m.c.8 OPERATION_MODE_2 EBOOL L/E Sélection du mode d'exploitation %Qr.m.c.9 CONTROL_ENABLE EBOOL L/E Validation de la commande %Qr.m.c.10 CONTROL_FOLLOW EBOOL L/E Commande de suivi d'un axe ou d'un jeu d'axes %Qr.m.c.11 suiveurs CONTROL_RESUME EBOOL L/E Commande de reprise suite à un arrêt %Qr.m.c.12 CONTROL_INC_POS EBOOL L/E Mode manuel : commande de déplacement incrémental dans le sens positif de l'axe %Qr.m.c.13 CONTROL_INC_NEG EBOOL L/E Mode manuel : commande de déplacement incrémental dans le sens négatif de l'axe %Qr.m.c.14 CONTROL_CLEAR_FLT EBOOL L/E Commande d'initialisation des défauts %Qr.m.c.15 ALLOW_ACQUIRE EBOOL L/E Commande de validation d'acquisition %Qr.m.c.18 ALLOW_ENABLE EBOOL L/E Désactive le contrôle de l'axe %Qr.m.c.26 ALLOW_FOLLOW EBOOL L/E Commande d'annulation du suivi pour un axe ou un groupe d'axes suiveurs %Qr.m.c.27 ALLOW_RESUME EBOOL L/E Commande d'autorisation de poursuite d'un mouvement suite à un arrêt par la commande HOLD %Qr.m.c.28 ALLOW_MOVE EBOOL L/E Commande d'autorisation de poursuite d'un mouvement suite à un arrêt par la commande HALT %Qr.m.c.29 ALLOW_NOT_FASTSTOP EBOOL L/E Commande après un arrêt rapide %Qr.m.c.30 ALLOW_NOT_FLT EBOOL L/E Commande de validation des défauts %Qr.m.c.31 126 35010452 12/2018 Objets langage Sercos Position courante Le tableau ci-dessous présente le réel d'entrée à échanges implicites de l'IODDT de type T_CSY_IND qui s'applique au module TSX_CSY_85. Symbole standard Type Accès Signification Adresse POSITION REAL L Position courante %IFr.m.c.0 Mot de compte rendu de paramétrage Le tableau ci-dessous présente le mot d'entrée à échanges implicites de l'IODDT de type T_CSY_IND qui s'applique au module TSX_CSY_85. Symbole standard Type Accès Signification Adresse PARAM_RPT INT L Compte rendu de paramétrage signalant un défaut %IWr.m.c.2 de programmation. L'octet de poids faible contient le code de l'erreur et l'octet de poids fort contient l'adresse dans les registres du champ ayant provoqué l'erreur. Position simulée Le tableau ci-dessous présente le double mot de sortie à échanges implicites de l'IODDT de type T_CSY_IND qui s'applique au module TSX_CSY_85. Symbole standard Type Accès Signification Adresse REMOTE_POSITION DINT L/E Axe réel et imaginaire : incrément de position en mode manuel. Consigne externe : position simulée %QDr.m.c.0 35010452 12/2018 127 Objets langage Sercos Détails relatifs aux objets à échanges explicites de l'IODDT de type T_CSY_IND Présentation Cette partie présente les objets à échanges explicites de l'IODDT de type T_CSY_IND qui s'appliquent aux voies 1 à 16 du module TSX 85 CSY. Sont concernés les objets de type mot dont les bits ont une signification particulière. Ces objets sont décrits en détail ci-dessous. Exemple de déclaration d'une variable : IODDT_VAR1 de type T_CSY_IND. Remarques En règle générale, la signification des bits est donnée pour l'état 1 de ce bit. Dans les cas spécifiques, chaque état du bit est expliqué. Les bits ne sont pas tous utilisés. Indicateurs d'exécution d'un échange explicite : EXCH_STS Le tableau ci-dessous présente les bits de contrôle des échanges explicites : EXCH_STS (%MWr.m.c.0). La mise à jour de ces variables est réalisée automatiquement par le système à chaque échange explicite. 128 Symbole standard Type Accès Signification Adresse STS_IN_PROGR BOOL L Lecture des mots d'état de la voie en cours %MWr.m.c.0.0 CMD_IN_PROGR BOOL L Echange de paramètres %MWr.m.c.0.1 de commande en cours ADJ_IN_PROGR BOOL L Echange de paramètres %MWr.m.c.0.2 de réglage en cours TRF_IN_PROGR BOOL L TRF_RECIPE en cours d'exécution %MWr.m.c.0.3 RECONF_IN_PROGR BOOL L Reconfiguration du module en cours %MWr.m.c.0.15 35010452 12/2018 Objets langage Sercos Compte rendu d'échanges explicites : EXCH_RPT Le tableau ci-dessous présente les bits de compte rendu : EXCH_RPT (%MWr.m.c.1). La mise à jour de ces variables est réalisée automatiquement par le système à chaque échange explicite. Symbole standard Type Accès Signification Adresse STS_ERR BOOL L Défaut de lecture des mots d'état de la voie (1 = échec) %MWr.m.c.1.0 CMD_ERR BOOL L Défaut lors d'un échange de paramètres de commande (1 = échec) %MWr.m.c.1.1 ADJ_ERR BOOL L Défaut lors d'un échange de paramètres de réglage (1 = échec) %MWr.m.c.1.2 TRF_ERR BOOL L Erreur lors de l'émission de TRF_RECIPE sur la voie %MWr.m.c.1.3 RECONF_ERR BOOL L Défaut lors de la reconfiguration de la voie (1 = échec) %MWr.m.c.1.15 Mot de défaut voie Le tableau ci-dessous présente les bits de défaut voie : CH_FLT. La mise à jour de ces variables est réalisée par une variable READ_STS (IODDT_VAR1). Symbole standard Type Accès Signification Adresse EXT_FLT0 BOOL L Défaut externe 0 : défaut variateur %MWr.m.c.2.0 EXT_FLT1 BOOL L Défaut externe 1 : défaut de communication %MWr.m.c.2.1 avec l'axe EXT_FLT2 BOOL L Défaut externe 2 %MWr.m.c.2.3 INT_FLT BOOL L Défaut interne %MWr.m.c.2.4 CONF_FLT BOOL L Défaut de configuration : configurations matérielle et logicielle différentes %MWr.m.c.2.5 COM_FLT BOOL L Défaut de communication %MWr.m.c.2.6 APPLI_FLT BOOL L Défaut application : défaut de configuration, %MWr.m.c.2.7 réglage ou commande PROCESS_CONF BOOL L Création d'objet mouvement en cours %MWr.m.c.2.11 PROCESS_CONF_FAILED BOOL L Défaut de configuration (excepté pour la voie 0) %MWr.m.c.2.12 35010452 12/2018 129 Objets langage Sercos Objets de la fonction TRF_RECIPE Le tableau ci-dessous présente les objets associés à la fonction TRF_RECIPE. Ces objets sont mis à jour automatiquement par le système à chaque utilisation de la fonction. Symbole standard Type Accès Signification Adresse ERROR_TRF INT L Erreur de lecture de la fonction TRF_RECIPE %MWr.m.c.3 RETURN_TRF_1 DINT L Retour 1 de la fonction TRF_RECIPE %MDr.m.c.4 RETURN_TRF_2 REAL L Retour 2 de la fonction TRF_RECIPE %MFr.m.c.6 RETURN_TRF_3 REAL L Retour 3 de la fonction TRF_RECIPE %MFr.m.c.8 ACTION_TRF INT L Action à réaliser par la fonction TRF_RECIPE %MWr.m.c.10 PARAM_TRF_1 DINT L Paramètre 1 de la fonction TRF_RECIPE %MDr.m.c.11 PARAM_TRF_2 DINT L Paramètre 2 de la fonction TRF_RECIPE %MDr.m.c.13 PARAM_TRF_3 REAL L Paramètre 3 de la fonction TRF_RECIPE %MFr.m.c.15 PARAM_TRF_4 REAL L Paramètre 4 de la fonction TRF_RECIPE %MFr.m.c.17 Mots d'interface WRITE_CMD Le tableau ci-dessous présente les significations des variables associées au WRITE_CMD dont l'action a été spécifiée dans le mot ACTION_CMD. La mise à jour de ces variables est réalisée par un WRITE_CMD (IODDT_VAR1). Symbole standard Type Accès Signification Adresse ERROR_CMD INT L/E Erreur lors du WRITE_CMD %MWr.m.c.19 RETURN_CMD_1 DINT L/E Retour 1 de la fonction %MDr.m.c.20 RETURN_CMD_2 REAL L/E Retour 2 de la fonction %MFr.m.c.22 RETURN_CMD_3 REAL L/E Retour 3 de la fonction %MFr.m.c.24 ACTION_CMD INT L/E Action à réaliser %MWr.m.c.26 PARAM_CMD_1 DINT L/E Paramètre 1 %MDr.m.c.27 PARAM_CMD_2 DINT L/E Paramètre 2 %MDr.m.c.29 PARAM_CMD_3 REAL L/E Paramètre 3 %MFr.m.c.31 PARAM_CMD_4 REAL L/E Paramètre 4 %MFr.m.c.33 130 35010452 12/2018 Objets langage Sercos Mots d'interface READ_PARAM, WRITE_PARAM Le tableau ci-dessous présente les significations des paramètres accessibles par les fonctions READ_PARAM et WRITE_PARAM pour les voies 1 à 16. La mise à jour de ces variables est réalisée par une instruction READ_PARAM (IODDT_VAR1) ou WRITE_PARAM (IODDT_VAR1). Il est également possible d'utiliser les fonctions SAVE_PARAM et RESTORE_PARAM. Symbole standard Type Accès Signification Adresse FUNCTION_VALIDATION INT L/E Mot contenant les bits de validation sélectifs %MWr.m.c.35 ACCEL REAL L/E Valeur d'accélération %MFr.m.c.36 DECEL REAL L/E Valeur de décélération %MFr.m.c.38 ACCEL_TYPE INT L/E Type d'accélération %MWr.m.c.40 IN_POSITION_BAND REAL L/E Valeur de la fenêtre au point %MFr.m.c.41 ENABLE_POSITION_BAND REAL L/E Valeur de la fenêtre de contrôle %MFr.m.c.43 ROLLOVER_MAX REAL L/E Modulo maximal %MFr.m.c.45 ROLLOVER_MIN REAL L/E Modulo minimal %MFr.m.c.47 ACCEL_MAX REAL L/E Accélération maximale %MFr.m.c.49 DECEL_MAX REAL L/E Décélération maximale %MFr.m.c.51 SPEED_MAX REAL L/E Vitesse maximale %MFr.m.c.53 POSITION_MAX REAL L/E Position maximale %MFr.m.c.55 POSITION_MIN REAL L/E Position minimale %MFr.m.c.57 SCALE_NUMERATOR REAL L/E Numérateur du facteur d'échelle (configuration d'un axe indépendant et fonction GetGearRatio) %MFr.m.c.59 SCALE_DENOMINATOR REAL L/E Dénominateur du facteur d'échelle (configuration d'un axe indépendant et fonction GetGearRatio) %MFr.m.c.61 ACCEL_UNIT INT L/E Unité d'accélération %MWr.m.c.63 SPEED_UNIT INT L/E Unité de vitesse %MWr.m.c.64 POSITION_UNIT INT L/E Unité de position %MWr.m.c.65 35010452 12/2018 131 Objets langage Sercos Détail des objets à échanges implicites de l'IODDT de type T_CSY_FOLLOW Présentation L'IODDT de type T_CSY_FOLLOW possède des objets à échanges implicites qui sont décrits ciaprès. Ce type d’IODDT s’applique au module TSX_CSY_85 pour les voies 21 à 24. Exemple de déclaration d’une variable : IODDT_VAR1 de type T_CSY_FOLLOW. De manière générale la signification des bits est donnée pour l’état 1 de ce bit. Dans les cas spécifiques, les deux états du bit sont expliqués. Liste des objets d'entrée à échanges implicites Le tableau ci-dessous présente les objets d'entrée à échanges implicites de l'IODDT de type T_CSY_FOLLOW qui s'appliquent au module TSX_CSY_85. Symbole standard Type Accès Signification Repère CH_ERROR EBOOL R Bit de défaut de la voie. %Ir.m.c.ERR RAMPING EBOOL R Indique si l’axe est en accélération ou décélération %Ir.m.c.0 STEADY EBOOL R La vitesse est constante %Ir.m.c.1 STOPPING EBOOL R Le mouvement décélère jusqu’à l’arrêt %Ir.m.c.2 PROFILE_END EBOOL R La dernière commande du profil a été envoyée au module %Ir.m.c.3 IN_POSITION EBOOL R La position de l’axe est située dans la fenêtre au point %Ir.m.c.4 AXIS_HOMING EBOOL R L’axe réalise une prise d’origine. Avec un axe imaginaire, ce bit est inactif. %Ir.m.c.5 AXIS_HOMED EBOOL R La position de l’axe est référencée par rapport à la prise d’origine %Ir.m.c.6 AXIS_NOT_FOLLOWING EBOOL R Le variateur ne prend pas en compte les commandes du module %Ir.m.c.7 HOLDING EBOOL R L’axe est arrêté en position d’attente %Ir.m.c.8 RESUMING EBOOL R L’axe est en mouvement après une attente %Ir.m.c.9 DRIVE_ENABLED EBOOL R Le variateur de vitesse est activé %Ir.m.c.10 DRIVE_DIAG EBOOL R Le variateur effectue un diagnostic de classe 3 %Ir.m.c.11 DRIVE_WARNING EBOOL R Le variateur effectue un diagnostic de classe 2 %Ir.m.c.12 DRIVE_FLT EBOOL R Le variateur effectue un diagnostic de classe 1 %Ir.m.c.13 DRIVE_DISABLED EBOOL R Le variateur est désactivé %Ir.m.c.14 AXIS_SUMMARY_FLT EBOOL R Défaut du drive %Ir.m.c.15 132 35010452 12/2018 Objets langage Sercos Symbole standard Type Accès Signification Repère AXIS_COM_OK EBOOL R La communication entre le variateur et le module est correcte %Ir.m.c.16 AXIS_IS_LINKED EBOOL R L’axe appartient à un groupe d’axes %Ir.m.c.17 AXIS_IN_CMD EBOOL R L’axe est actif et peut être commandé %Ir.m.c.18 AXIS_AT_TARGET EBOOL R La position de l’axe est comprise dans la fenêtre au point de la position ciblée %Ir.m.c.20 AXIS_POS_LIMIT EBOOL R La position de l’axe a atteint la limite positive %Ir.m.c.21 AXIS_NEG_LIMIT EBOOL R La position de l’axe a atteint la limite négative %Ir.m.c.22 AXIS_WARNING EBOOL R Etat "Alerte mouvement" remonté par le variateur %Ir.m.c.23 AXIS_HOLD EBOOL R L’axe est à l’arrêt, en attente d’une commande %Ir.m.c.28 AXIS_HALT EBOOL R L’axe est à l’arrêt %Ir.m.c.29 AXIS_FASTSTOP EBOOL R L’axe s’est arrêté rapidement %Ir.m.c.30 AXIS_READY EBOOL R L’axe est prêt pour répondre à une commande %Ir.m.c.31 CONF_OK EBOOL R La voie est configurée 35010452 12/2018 %Ir.m.c.32 133 Objets langage Sercos Liste des objets de sortie à échanges implicites Le tableau ci-dessous présente les objets de sortie à échanges implicites de l'IODDT de type T_CSY_FOLLOW qui s'appliquent au module TSX_CSY_85. Symbole standard Type Accès Signification Repère CONTROL_ACQUIRE EBOOL RW acquisition de la commande %Qr.m.c.2 CONTROL_ENABLE EBOOL RW Validation de la commande %Qr.m.c.10 CONTROL_FOLLOW EBOOL RW Commande de suivi pour un axe ou un groupe d’axes suiveurs %Qr.m.c.11 CONTROL_RESUME EBOOL RW Commande de reprise suite à un arrêt %Qr.m.c.12 CONTROL_CLEAR_FLT EBOOL RW Commande d’initialisation des défauts %Qr.m.c.15 ALLOW_ACQUIRE EBOOL RW Commande de validation de l’acquisition %Qr.m.c.18 ALLOW_ENABLE EBOOL RW Commande de désactivation de l’axe %Qr.m.c.26 ALLOW_FOLLOW EBOOL RW Commande d'annulation du suivi pour un axe ou un groupe d'axes suiveurs %Qr.m.c.27 ALLOW_RESUME EBOOL RW Commande d'autorisation de poursuite d'un mouvement suite à un arrêt par la commande HOLD %Qr.m.c.28 ALLOW_MOVE EBOOL RW Commande d'autorisation de poursuite d'un mouvement suite à un arrêt par la commande HALT %Qr.m.c.29 ALLOW_NOT_FASTSTOP EBOOL RW Commande suite à un arrêt rapide %Qr.m.c.30 ALLOW_NOT_FLT EBOOL RW Commande de validation des défauts %Qr.m.c.31 Position courante Le tableau ci-dessous présente les objets d'entrée à échanges implicites de l'IODDT de type T_CSY_FOLLOW qui s'appliquent au module TSX_CSY_85. Symbole standard Type Accès Signification Repère POSITION REAL R Position courante %IFr.m.c.0 Mot de compte rendu de paramétrage Le tableau ci-dessous présente le mot d'entrée à échanges implicites de l'IODDT de type T_CSY_FOLLOW qui s'applique au module TSX_CSY_85. Symbole standard Type Accès Signification PARAM_RPT INT R Compte-rendu de paramétrage, il signale un défaut %IWr.m.c.2 de programmation. L’octet de poids faible contient le code de l’erreur et l’octet de poids fort contient l’adresse dans les registres du champ ayant provoqué l’erreur. 134 Repère 35010452 12/2018 Objets langage Sercos Détails concernant les objets à échanges explicites de l'IODDT de type T_CSY_FOLLOW Présentation Cette partie présente les objets à échanges explicites de l'IODDT de type T_CSY_FOLLOW qui s'applique au module TSX CSY 85 pour les voies 21 à 24. Elle regroupe les objets de type mot, dont les bits ont une signification particulière. Ces objets sont décrits en détail ci-dessous. Exemple de déclaration d'une variable : IODDT_VAR1 de type T_CSY_FOLLOW. Remarques En règle générale, la signification des bits est donnée pour l'état 1 de ce bit. Dans les cas spécifiques, chaque état du bit est expliqué. Les bits ne sont pas tous utilisés. Indicateurs d'exécution d'un échange explicite : EXCH_STS Le tableau ci-dessous présente les bits de contrôle des échanges explicites : EXCH_STS (%MWr.m.c.0). La mise à jour de ces variables est réalisée automatiquement par le système à chaque échange explicite. Symbole standard Type Accès Signification Adresse STS_IN_PROGR BOOL L Lecture des mots d'état de la voie en cours %MWr.m.c.0.0 CMD_IN_PROGR BOOL L Echange de paramètres de commande en cours %MWr.m.c.0.1 ADJ_IN_PROGR BOOL L Echange de paramètres de réglage en cours %MWr.m.c.0.2 TRF_IN_PROG BOOL L TRF_RECIPE en cours d'exécution %MWr.m.c.0.3 RECONF_IN_PROGR BOOL L Reconfiguration du module en cours %MWr.m.c.0.15 35010452 12/2018 135 Objets langage Sercos Compte rendu d'échanges explicites : EXCH_RPT Le tableau ci-dessous présente les bits de compte rendu : EXCH_RPT (%MWr.m.c.1). La mise à jour de ces variables est réalisée automatiquement par le système à chaque échange explicite. Symbole standard Type Accès Signification Adresse STS_ERR BOOL L Défaut de lecture des mots d'état de la voie (1 = échec) %MWr.m.c.1.0 CMD_ERR BOOL L Défaut lors d'un échange de %MWr.m.c.1.1 paramètres de commande (1 = échec) ADJ_ERR BOOL L Défaut lors d'un échange de %MWr.m.c.1.2 paramètres de réglage (1 = échec) TRF_ERR BOOL L Erreur lors de l'émission de TRF_RECIPE sur la voie %MWr.m.c.1.3 RECONF_ERR BOOL L Défaut lors de la reconfiguration de la voie (1 = échec) %MWr.m.c.1.15 Mot de défaut voie Le tableau ci-dessous présente les bits de défaut voie : CH_FLT. La mise à jour de ces variables est réalisée par une variable READ_STS (IODDT_VAR1). Symbole standard Type Accès Signification Adresse EXT_FLT0 BOOL L Défaut externe 0 : défaut variateur %MWr.m.c.2.0 EXT_FLT1 BOOL L Défaut externe 1 : défaut de communication avec l'axe %MWr.m.c.2.1 EXT_FLT2 BOOL L Défaut externe 2 %MWr.m.c.2.3 %MWr.m.c.2.4 INT_FLT BOOL L Défaut interne CONF_FLT BOOL L Défaut de configuration : configurations matérielle %MWr.m.c.2.5 et logicielle différentes COM_FLT BOOL L Défaut de communication %MWr.m.c.2.6 APPLI_FLT BOOL L Défaut application : défaut de configuration, réglage ou commande %MWr.m.c.2.7 PROCESS_CONF BOOL L Création d'objet mouvement en cours %MWr.m.c.2.11 PROCESS_CONF_FAILED BOOL L Défaut de configuration (excepté pour la voie 0) %MWr.m.c.2.12 136 35010452 12/2018 Objets langage Sercos Objets de la fonction TRF_RECIPE Le tableau ci-dessous présente les objets associés à la fonction TRF_RECIPE. Ces objets sont mis à jour automatiquement par le système à chaque utilisation de la fonction. Symbole standard Type Accès Signification Adresse ERROR_TRF INT L Erreur de lecture de la fonction TRF_RECIPE %MWr.m.c.3 RETURN_TRF_1 DINT L Retour 1 de la fonction TRF_RECIPE %MDr.m.c.4 RETURN_TRF_2 REAL L Retour 2 de la fonction TRF_RECIPE %MFr.m.c.6 RETURN_TRF_3 REAL L Retour 3 de la fonction TRF_RECIPE %MFr.m.c.8 ACTION_TRF INT L Action à réaliser par la fonction TRF_RECIPE %MWr.m.c.10 PARAM_TRF_1 DINT L Paramètre 1 de la fonction TRF_RECIPE %MDr.m.c.11 PARAM_TRF_2 DINT L Paramètre 2 de la fonction TRF_RECIPE %MDr.m.c.13 PARAM_TRF_3 REAL L Paramètre 3 de la fonction TRF_RECIPE %MFr.m.c.15 PARAM_TRF_4 REAL L Paramètre 4 de la fonction TRF_RECIPE %MFr.m.c.17 Mots d'interface WRITE_CMD Le tableau ci-dessous présente les significations des variables associées au WRITE_CMD dont l'action a été spécifiée dans le mot ACTION_CMD. La mise à jour de ces variables est réalisée par un WRITE_CMD (IODDT_VAR1). Symbole standard Type Accès Signification Adresse ERROR_CMD INT L/E Erreur lors du WRITE_CMD %MWr.m.c.19 RETURN_CMD_1 DINT L/E Retour 1 de la fonction %MDr.m.c.20 RETURN_CMD_2 REAL L/E Retour 2 de la fonction %MFr.m.c.22 RETURN_CMD_3 REAL L/E Retour 3 de la fonction %MFr.m.c.24 ACTION_CMD INT L/E Action à réaliser %MWr.m.c.26 PARAM_CMD_1 DINT L/E Paramètre 1 %MDr.m.c.27 PARAM_CMD_2 DINT L/E Paramètre 2 %MDr.m.c.29 PARAM_CMD_3 REAL L/E Paramètre 3 %MFr.m.c.31 PARAM_CMD_4 REAL L/E Paramètre 4 %MFr.m.c.33 35010452 12/2018 137 Objets langage Sercos Mots d'interface READ_PARAM, WRITE_PARAM Le tableau ci-dessous présente les significations des paramètres accessibles par les fonctions READ_PARAM et WRITE_PARAM pour les voies 21 à 24. La mise à jour de ces variables est réalisée par un READ_PARAM (IODDT_VAR1) ou WRITE_PARAM (IODDT_VAR1). Il est également possible d'utiliser les fonctions SAVE_PARAM et RESTORE_PARAM. Symbole standard Type Accès Signification Adresse MASTER_CHANNEL INT L/E Numéro de l'axe maître (1 à 16, N n'est pas %MWr.m.c.35 accessible SLAVE_CHANNEL_1 INT L/E Numéro de l'axe esclave 1 FOLL_DESCRIPTION_1 INT L/E Description de l'axe esclave 1. Ce mot est %MWr.m.c.37 composé de bits significatifs décrits cidessous et possédant des noms de variables, mais également trois bits non nommés qui agissent sur les conditions de démarrage : bits 8, 9 et 10 à zéro = démarrage immédiat bit 8 à 1 et les 9 et 10 à zéro = position du maître atteinte dans le sens négatif du seuil bit 9 à 1 et les bits 8 et 10 à zéro = position du maître atteinte dans le sens positif du seuil bits 8 et 9 à 1 et bit 10 à zéro = position du maître > seuil bits 8 et 9 à zéro et bit 10 à 1 = position du maître < seuil FOLL_WHERE_1 BOOL L 0 = contrôleur %MWr.m.c.37.0 FOLL_TYPE_1 BOOL L 0 = mode ratio 1 = mode Came %MWr.m.c.37.1 FOLL_POSITION_1 BOOL L 0= suivi de la position mesurée 1 = suivi de la position de consigne %MWr.m.c.37.2 FOLL_FOL_ON_HALT_1 BOOL L 1 = arrêt de l'axe suiveur si suppression du lien maître/esclave %MWr.m.c.37.3 FOLL_HALT_MASTER_1 BOOL L 1 = arrêt du maître lors d'un défaut d'écart de poursuite %MWr.m.c.37.6 %MWr.m.c.36 FOLL_BIAS_REMAIN_1 BOOL L 1 = offset dynamique sur position du maître %MWr.m.c.37.7 NUMERATOR_1 REAL L/E numérateur de l'axe esclave 1 DENOMINATOR_1 REAL L/E Dénominateur de l'axe esclave 1 %MFr.m.c.40 TRIGGER_POSITION_1 REAL L/E Valeur du seuil de l'axe esclave 1 %MFr.m.c.42 SLAVE_CHANNEL_2 INT L/E Numéro de l'axe esclave 2 %MWr.m.c.44 138 %MFr.m.c.38 35010452 12/2018 Objets langage Sercos Symbole standard Type Accès Signification FOLL_DESCRIPTION_2 INT L/E Description de l'axe esclave 2. Ce mot est %MWr.m.c.45 composé de bits significatifs décrits cidessous et possédant des noms de variables, mais également trois bits non nommés qui agissent sur les conditions de démarrage : bits 8, 9 et 10 à zéro = démarrage immédiat bit 8 à 1 et les 9 et 10 à zéro = position du maître atteinte dans le sens négatif du seuil bit 9 à 1 et les bits 8 et 10 à zéro = position du maître atteinte dans le sens positif du seuil bits 8 et 9 à 1 et bit 10 à zéro = position du maître > seuil bits 8 et 9 à zéro et bit 10 à 1 = position du maître < seuil Adresse FOLL_WHERE_2 BOOL L 0 = contrôleur %MWr.m.c.45.0 FOLL_TYPE_2 BOOL L 0 = mode ratio 1 = mode Came %MWr.m.c.45.1 FOLL_POSITION_2 BOOL L 0= suivi de la position mesurée 1 = suivi de la position de consigne %MWr.m.c.45.2 FOLL_FOL_ON_HALT_2 BOOL L 1 = arrêt de l'axe suiveur si suppression du lien maître/esclave %MWr.m.c.45.3 FOLL_HALT_MASTER_2 BOOL L 1 = arrêt du maître lors d'un défaut d'écart de poursuite %MWr.m.c.45.6 FOLL_BIAS_REMAIN_2 BOOL L 1 = offset dynamique sur position du maître %MWr.m.c.45.7 NUMERATOR_2 REAL L/E numérateur de l'axe esclave 2 DENOMINATOR_2 REAL L/E Dénominateur de l'axe esclave 2 %MFr.m.c.48 TRIGGER_POSITION_2 REAL L/E Valeur du seuil de l'axe esclave 2 %MFr.m.c.50 SLAVE_CHANNEL_3 INT L/E Numéro de l'axe esclave 3 %MWr.m.c.52 35010452 12/2018 %MFr.m.c.46 139 Objets langage Sercos Symbole standard Type Accès Signification FOLL_DESCRIPTION_3 INT L/E Description de l'axe esclave 3. Ce mot est %MWr.m.c.53 composé de bits significatifs décrits cidessous et possédant des noms de variables, mais également trois bits non nommés qui agissent sur les conditions de démarrage : bits 8, 9 et 10 à zéro = démarrage immédiat bit 8 à 1 et les 9 et 10 à zéro = position du maître atteinte dans le sens négatif du seuil bit 9 à 1 et les bits 8 et 10 à zéro = position du maître atteinte dans le sens positif du seuil bits 8 et 9 à 1 et bit 10 à zéro = position du maître > seuil bits 8 et 9 à zéro et bit 10 à 1 = position du maître < seuil Adresse FOLL_WHERE_3 BOOL L 0 = contrôleur %MWr.m.c.53.0 FOLL_TYPE_3 BOOL L 0 = mode ratio 1 = mode Came %MWr.m.c.53.1 FOLL_POSITION_3 BOOL L 0= suivi de la position mesurée 1 = suivi de la position de consigne %MWr.m.c.53.2 FOLL_FOL_ON_HALT_3 BOOL L 1 = arrêt de l'axe suiveur si suppression du lien maître/esclave %MWr.m.c.53.3 FOLL_HALT_MASTER_3 BOOL L 1 = arrêt du maître lors d'un défaut d'écart de poursuite %MWr.m.c.53.6 FOLL_BIAS_REMAIN_3 BOOL L 1 = offset dynamique sur position du maître %MWr.m.c.53.7 NUMERATOR_3 REAL L/E numérateur de l'axe esclave 3 DENOMINATOR_3 REAL L/E Dénominateur de l'axe esclave 3 %MFr.m.c.56 TRIGGER_POSITION_3 REAL L/E Valeur du seuil de l'axe esclave 3 %MFr.m.c.58 SLAVE_CHANNEL_4 INT L/E Numéro de l'axe esclave 4 %MWr.m.c.60 140 %MFr.m.c.54 35010452 12/2018 Objets langage Sercos Symbole standard Type Accès Signification FOLL_DESCRIPTION_4 INT L/E Description de l'axe esclave 4. Ce mot est %MWr.m.c.61 composé de bits significatifs décrits cidessous et possédant des noms de variables, mais également trois bits non nommés qui agissent sur les conditions de démarrage : bits 8, 9 et 10 à zéro = démarrage immédiat bit 8 à 1 et les 9 et 10 à zéro = position du maître atteinte dans le sens négatif du seuil bit 9 à 1 et les bits 8 et 10 à zéro = position du maître atteinte dans le sens positif du seuil bits 8 et 9 à 1 et bit 10 à zéro = position du maître > seuil bits 8 et 9 à zéro et bit 10 à 1 = position du maître < seuil Adresse FOLL_WHERE_4 BOOL L 0 = contrôleur %MWr.m.c.61.0 FOLL_TYPE_4 BOOL L 0 = mode ratio 1 = mode Came %MWr.m.c.61.1 FOLL_POSITION_4 BOOL L 0= suivi de la position mesurée 1 = suivi de la position de consigne %MWr.m.c.61.2 FOLL_FOL_ON_HALT_4 BOOL L 1 = arrêt de l'axe suiveur si suppression du lien maître/esclave %MWr.m.c.61.3 FOLL_HALT_MASTER_4 BOOL L 1 = arrêt du maître lors d'un défaut d'écart de poursuite %MWr.m.c.61.6 FOLL_BIAS_REMAIN_4 BOOL L 1 = offset dynamique sur position du maître %MWr.m.c.61.7 NUMERATOR_4 REAL L/E numérateur de l'axe esclave 4 DENOMINATOR_4 REAL L/E Dénominateur de l'axe esclave 4 %MFr.m.c.64 TRIGGER_POSITION_4 REAL L/E Valeur du seuil de l'axe esclave 4 %MFr.m.c.66 SLAVE_CHANNEL_5 INT L/E Numéro de l'axe esclave 5 %MWr.m.c.68 35010452 12/2018 %MFr.m.c.62 141 Objets langage Sercos Symbole standard Type Accès Signification FOLL_DESCRIPTION_5 INT L/E Description de l'axe esclave 5. Ce mot est %MWr.m.c.69 composé de bits significatifs décrits cidessous et possédant des noms de variables, mais également trois bits non nommés qui agissent sur les conditions de démarrage : bits 8, 9 et 10 à zéro = démarrage immédiat bit 8 à 1 et les 9 et 10 à zéro = position du maître atteinte dans le sens négatif du seuil bit 9 à 1 et les bits 8 et 10 à zéro = position du maître atteinte dans le sens positif du seuil bits 8 et 9 à 1 et bit 10 à zéro = position du maître > seuil bits 8 et 9 à zéro et bit 10 à 1 = position du maître < seuil Adresse FOLL_WHERE_5 BOOL L 0 = contrôleur %MWr.m.c.69.0 FOLL_TYPE_5 BOOL L 0 = mode ratio 1 = mode Came %MWr.m.c.69.1 FOLL_POSITION_5 BOOL L 0= suivi de la position mesurée 1 = suivi de la position de consigne %MWr.m.c.69.2 FOLL_FOL_ON_HALT_5 BOOL L 1 = arrêt de l'axe suiveur si suppression du lien maître/esclave %MWr.m.c.69.3 FOLL_HALT_MASTER_5 BOOL L 1 = arrêt du maître lors d'un défaut d'écart de poursuite %MWr.m.c.69.6 FOLL_BIAS_REMAIN_5 BOOL L 1 = offset dynamique sur position du maître %MWr.m.c.69.7 NUMERATOR_6 REAL L/E numérateur de l'axe esclave 6 DENOMINATOR_6 REAL L/E Dénominateur de l'axe esclave 6 %MFr.m.c.72 TRIGGER_POSITION_6 REAL L/E Valeur du seuil de l'axe esclave 6 %MFr.m.c.74 SLAVE_CHANNEL_6 INT L/E Numéro de l'axe esclave 6 %MWr.m.c.76 142 %MFr.m.c.70 35010452 12/2018 Objets langage Sercos Symbole standard Type Accès Signification FOLL_DESCRIPTION_6 INT L/E Description de l'axe esclave 6. Ce mot est %MWr.m.c.77 composé de bits significatifs décrits cidessous et possédant des noms de variables, mais également trois bits non nommés qui agissent sur les conditions de démarrage : bits 8, 9 et 10 à zéro = démarrage immédiat bit 8 à 1 et les 9 et 10 à zéro = position du maître atteinte dans le sens négatif du seuil bit 9 à 1 et les bits 8 et 10 à zéro = position du maître atteinte dans le sens positif du seuil bits 8 et 9 à 1 et bit 10 à zéro = position du maître > seuil bits 8 et 9 à zéro et bit 10 à 1 = position du maître < seuil Adresse FOLL_WHERE_6 BOOL L 0 = contrôleur %MWr.m.c.77.0 FOLL_TYPE_6 BOOL L 0 = mode ratio 1 = mode Came %MWr.m.c.77.1 FOLL_POSITION_6 BOOL L 0= suivi de la position mesurée 1 = suivi de la position de consigne %MWr.m.c.77.2 FOLL_FOL_ON_HALT_6 BOOL L 1 = arrêt de l'axe suiveur si suppression du lien maître/esclave %MWr.m.c.77.3 FOLL_HALT_MASTER_6 BOOL L 1 = arrêt du maître lors d'un défaut d'écart de poursuite %MWr.m.c.77.6 FOLL_BIAS_REMAIN_6 BOOL L 1 = offset dynamique sur position du maître %MWr.m.c.77.7 NUMERATOR_6 REAL L/E numérateur de l'axe esclave 6 DENOMINATOR_6 REAL L/E Dénominateur de l'axe esclave 6 %MFr.m.c.80 TRIGGER_POSITION_6 REAL L/E Valeur du seuil de l'axe esclave 6 %MFr.m.c.82 35010452 12/2018 %MFr.m.c.78 143 Objets langage Sercos Détail des objets à échanges implicites de l'IODDT de type T_CSY_COORD Présentation L’IODDT de type T_CSY_COORD possède des objets à échanges implicites, ils sont décrits ciaprès. Ce type d’IODDT s’applique au module TSX_CSY_85 pour les voies 17 à 20. Exemple de déclaration d’une variable : IODDT_VAR1 de type T_CSY_COORD. De manière générale la signification des bits est donnée pour l’état 1 de ce bit. Dans les cas spécifiques, les deux états du bit sont expliqués. Liste des objets d'entrée à échanges implicites Le tableau ci-dessous présente les objets d’entrée à échanges implicites de l’IODDT de type T_CSY_COORD qui s’applique au module TSX_CSY_85. Symbole standard Type Accès Signification Repère CH_ERROR EBOOL R Bit de défaut de la voie. %Ir.m.c.ERR RAMPING EBOOL R Indique si l’axe est en accélération ou décélération %Ir.m.c.0 STEADY EBOOL R La vitesse est constante %Ir.m.c.1 STOPPING EBOOL R Le mouvement décélère jusqu’à l’arrêt %Ir.m.c.2 PROFILE_END EBOOL R La dernière commande du profil a été envoyée %Ir.m.c.3 au module IN_POSITION EBOOL R La position de l’axe est située dans la fenêtre au point %Ir.m.c.4 AXIS_HOMING EBOOL R L’axe réalise une prise d’origine. Avec un axe imaginaire, ce bit est inactif. %Ir.m.c.5 AXIS_HOMED EBOOL R La position de l’axe est référencée par rapport à la prise d’origine %Ir.m.c.6 AXIS_NOT_FOLLOWING EBOOL R Le variateur ne prend pas en compte les commandes du module %Ir.m.c.7 HOLDING EBOOL R L’axe est arrêté en position d’attente %Ir.m.c.8 RESUMING EBOOL R L’axe est en mouvement après une attente %Ir.m.c.9 DRIVE_ENABLED EBOOL R Le variateur de vitesse est activé %Ir.m.c.10 DRIVE_DIAG EBOOL R Le variateur effectue un diagnostic de classe 3 %Ir.m.c.11 DRIVE_WARNING EBOOL R Le variateur effectue un diagnostic de classe 2 %Ir.m.c.12 DRIVE_FLT EBOOL R Le variateur effectue un diagnostic de classe 1 %Ir.m.c.13 DRIVE_DISABLED EBOOL R Le variateur est désactivé %Ir.m.c.14 AXIS_SUMMARY_FLT EBOOL R Défaut du drive %Ir.m.c.15 144 35010452 12/2018 Objets langage Sercos Symbole standard Type Accès Signification Repère AXIS_COM_OK EBOOL R La communication entre le variateur et le module est correcte %Ir.m.c.16 AXIS_IS_LINKED EBOOL R L’axe appartient à un groupe d’axes %Ir.m.c.17 AXIS_IN_CMD EBOOL R L’axe est actif et peut être commandé %Ir.m.c.18 AXIS_AT_TARGET EBOOL R La position de l’axe est comprise dans la fenêtre au point de la position ciblée %Ir.m.c.20 AXIS_POS_LIMIT EBOOL R La position de l’axe a atteint la limite positive %Ir.m.c.21 AXIS_NEG_LIMIT EBOOL R La position de l’axe a atteint la limite négative %Ir.m.c.22 AXIS_WARNING EBOOL R Etat "Alerte mouvement" remonté par le variateur %Ir.m.c.23 AXIS_HOLD EBOOL R L’axe est à l’arrêt, en attente d’une commande %Ir.m.c.28 AXIS_HALT EBOOL R L’axe est à l’arrêt %Ir.m.c.29 AXIS_FASTSTOP EBOOL R L’axe s’est arrêté rapidement %Ir.m.c.30 AXIS_READY EBOOL R L’axe est prêt pour répondre à une commande %Ir.m.c.31 CONF_OK EBOOL R La voie est configurée 35010452 12/2018 %Ir.m.c.32 145 Objets langage Sercos Liste des objets de sortie à échanges implicites Le tableau ci-dessous présente les objets de sortie à échanges implicites de l’IODDT de type T_CSY_COORD qui s’applique au module TSX_CSY_85. Symbole standard Type Accès Signification Repère CONTROL_ACQUIRE EBOOL RW acquisition de la commande %Qr.m.c.2 CONTROL_ENABLE EBOOL RW Validation de la commande %Qr.m.c.10 CONTROL_FOLLOW EBOOL RW Commande de suivi pour un axe ou un groupe d’axes suiveurs %Qr.m.c.11 CONTROL_RESUME EBOOL RW Commande de reprise suite à un arrêt %Qr.m.c.12 CONTROL_CLEAR_FLT EBOOL RW Commande d’initialisation des défauts %Qr.m.c.15 ALLOW_ACQUIRE EBOOL RW Commande de validation de l’acquisition %Qr.m.c.18 ALLOW_ENABLE EBOOL RW Commande de désactivation de l’axe %Qr.m.c.26 ALLOW_FOLLOW EBOOL RW Commande d'annulation du suivi pour un axe ou un groupe d'axes suiveurs %Qr.m.c.27 ALLOW_RESUME EBOOL RW Commande d'autorisation de poursuite d'un mouvement suite à un arrêt par la commande HOLD %Qr.m.c.28 ALLOW_MOVE EBOOL RW Commande d'autorisation de poursuite d'un mouvement suite à un arrêt par la commande HALT %Qr.m.c.29 ALLOW_NOT_FASTSTOP EBOOL RW Commande suite à un arrêt rapide %Qr.m.c.30 ALLOW_NOT_FLT EBOOL RW Commande de validation des défauts %Qr.m.c.31 Mot de compte rendu de paramétrage Le tableau ci-dessous présente le mot d’entrée à échanges implicites de l’IODDT de type T_CSY_COORD qui s’applique au module TSX_CSY_85. Symbole standard Type Accès Signification Repère PARAM_RPT INT R Compte-rendu de paramétrage, il signale un défaut de programmation. L’octet de poids faible contient le code de l’erreur et l’octet de poids fort contient l’adresse dans les registres du champ ayant provoqué l’erreur. %IWr.m.c.2 146 35010452 12/2018 Objets langage Sercos Détail des objets à échanges explicites de l'IODDT de type T_CSY_COORD Présentation Cette partie présente les objets à échanges explicites de l'IODDT de type T_CSY_COORD qui s'applique au module TSX CSY 85 voies 17 à 20. Elle regroupe les objets de type mot, dont les bits ont une signification particulière. Ces objets sont présentés en détail ci-dessous. Exemple de déclaration d’une variable : IODDT_VAR1 de type T_CSY_COORD. Remarques De manière générale la signification des bits est donnée pour l’état 1 de ce bit. Dans les cas spécifiques, chaque état du bit est expliqué. Les bits ne sont pas tous utilisés. Indicateurs d'exécution d'un échange explicite : EXCH_STS Le tableau ci-dessous présente les bits de contrôle des échanges explicites : EXCH_STS (%MWr.m.c.0). La mise à jour de ces variables est réalisée automatiquement par le système à chaque échange explicite. Symbole standard Type Accès Signification Adresse STS_IN_PROGR BOOL R Lecture des mots d'état de la voie en cours %MWr.m.c.0.0 CMD_IN_PROGR BOOL R Echange de paramètres de commande en cours %MWr.m.c.0.1 ADJ_IN_PROGR BOOL R Echange de paramètres de réglage en cours %MWr.m.c.0.2 TRF_IN_PROGR BOOL R TRF_RECIPE en cours d’exécution %MWr.m.c.0.3 RECONF_IN_PROGR BOOL R Reconfiguration du module en cours %MWr.m.c.0.15 35010452 12/2018 147 Objets langage Sercos Compte rendu d'échanges explicites : EXCH_RPT Le tableau ci dessous présente les bits de compte rendu : EXCH_RPT (%MWr.m.c.1). La mise à jour de ces variables est réalisée automatiquement par le système à chaque échange explicite. Symbole standard Type Accès Signification Adresse STS_ERR BOOL R Défaut de lecture des mots d'état de la voie (1 = échec) %MWr.m.c.1.0 CMD_ERR BOOL R Défaut lors d'un échange de %MWr.m.c.1.1 paramètres de commande (1 = échec) ADJ_ERR BOOL R Défaut lors d'un échange de %MWr.m.c.1.2 paramètres de réglage (1 = échec) TRF_ERR BOOL R Erreur lors de l'émission de TRF_RECIPE sur la voie %MWr.m.c.1.3 RECONF_ERR BOOL R Défaut lors de la reconfiguration de la voie (1 = échec) %MWr.m.c.1.15 Mot de défaut voie Le tableau ci-dessous présente les bits de défaut voie : CH_FLT. La mise à jour de ces variables est réalisée par une variable READ_STS (IODDT_VAR1). Symbole standard Type Accès Signification Adresse %MWr.m.c.2.0 EXT_FLT0 BOOL R Défaut externe 0 : défaut variateur EXT_FLT1 BOOL R Défaut externe 1 : défaut de communication %MWr.m.c.2.1 avec l’axe EXT_FLT2 BOOL R Défaut externe 2 %MWr.m.c.2.3 INT_FLT BOOL R Défaut interne %MWr.m.c.2.4 CONF_FLT BOOL R Défaut de configuration : configurations matérielle et logicielle différentes %MWr.m.c.2.5 COM_FLT BOOL R Défaut de communication %MWr.m.c.2.6 APPLI_FLT BOOL R Défaut application : défaut de configuration, %MWr.m.c.2.7 réglage ou commande PROCESS_CONF BOOL R Création d'objet mouvement en cours %MWr.m.c.2.11 PROCESS_CONF_FAILED BOOL R Défaut de configuration (sauf pour voie 0) %MWr.m.c.2.12 148 35010452 12/2018 Objets langage Sercos Mots d'interface WRITE_CMD Le tableau ci-dessous présente les significations des variables associées au WRITE_CMD dont l’action a été spécifiée dans le mot ACTION_CMD. La mise à jour de ces variables est réalisée par un WRITE_CMD (IODDT_VAR1). Symbole standard Type Accès Signification Adresse ERROR_CMD INT RW Erreur lors du WRITE_CMD %MWr.m.c.19 RETURN_CMD_1 DINT RW Retour 1 de la fonction %MDr.m.c.20 RETURN_CMD_2 REAL RW Retour 2 de la fonction %MFr.m.c.22 RETURN_CMD_3 REAL RW Retour 3 de la fonction %MFr.m.c.24 ACTION_CMD INT RW Action à réaliser %MWr.m.c.26 PARAM_CMD_1 DINT RW Paramètre 1 %MDr.m.c.27 PARAM_CMD_2 DINT RW Paramètre 2 %MDr.m.c.29 PARAM_CMD_3 REAL RW Paramètre 3 %MFr.m.c.31 PARAM_CMD_4 REAL RW Paramètre 4 %MFr.m.c.33 PARAM_CMD_5 REAL RW Paramètre 5 %MFr.m.c.35 PARAM_CMD_6 REAL RW Paramètre 6 %MFr.m.c.37 PARAM_CMD_7 REAL RW Paramètre 7 %MFr.m.c.39 PARAM_CMD_8 REAL RW Paramètre 8 %MFr.m.c.41 PARAM_CMD_9 REAL RW Paramètre 9 %MFr.m.c.43 PARAM_CMD_10 REAL RW Paramètre 10 %MFr.m.c.45 PARAM_CMD_11 REAL RW Paramètre 11 %MFr.m.c.47 PARAM_CMD_12 REAL RW Paramètre 12 %MFr.m.c.49 PARAM_CMD_13 REAL RW Paramètre 13 %MFr.m.c.51 PARAM_CMD_14 REAL RW Paramètre 14 %MFr.m.c.53 PARAM_CMD_15 REAL RW Paramètre 15 %MFr.m.c.55 PARAM_CMD_16 REAL RW Paramètre 16 %MFr.m.c.57 PARAM_CMD_17 REAL RW Paramètre 17 %MFr.m.c.59 PARAM_CMD_18 REAL RW Paramètre 18 %MFr.m.c.61 AXIS_MEMBER_1 INT RW Axe interpolé membre 1 %MWr.m.c.63 AXIS_MEMBER_2 INT RW Axe interpolé membre 2 %MWr.m.c.64 AXIS_MEMBER_3 INT RW Axe interpolé membre 3 %MWr.m.c.65 AXIS_MEMBER_4 INT RW Axe interpolé membre 4 %MWr.m.c.66 AXIS_MEMBER_5 INT RW Axe interpolé membre 5 %MWr.m.c.67 AXIS_MEMBER_6 INT RW Axe interpolé membre 6 %MWr.m.c.68 35010452 12/2018 149 Objets langage Sercos Symbole standard Type Accès Signification Adresse AXIS_MEMBER_7 INT RW Axe interpolé membre 7 %MWr.m.c.69 AXIS_MEMBER_8 INT RW Axe interpolé membre 8 %MWr.m.c.70 150 35010452 12/2018 Objets langage Sercos Détail des objets à échanges implicites de l'IODDT de type T_CSY_CAM Présentation L’IODDT de type T_CSY_CAM possède des objets à échange implicite, ils sont décrit ci-après. Ce type d’IODDT s’applique au module TSX_CSY_85 pour les voies 25 à 31. Exemple de déclaration d’une variable : IODDT_VAR1 de type T_CSY_CAM. De manière générale la signification des bits est donnée pour l’état 1 de ce bit. Dans les cas spécifiques, les deux états du bit sont expliqués. Liste des objets d'entrée à échanges implicites Le tableau ci-dessous présente les objets d’entrée à échanges implicites de l’IODDT de type T_CSY_CAM qui s’applique au module TSX_CSY_85. Symbole standard Type Accès Signification Repère CH_ERROR EBOOL R Bit de défaut de la voie. %Ir.m.c.ERR 35010452 12/2018 151 Objets langage Sercos Détail des objets à échanges explicites de l'IODDT de type T_CSY_CAM Présentation Cette partie présente les objets à échanges explicites de l’IODDT de type T_CSY_CAM qui s’applique au module TSX CSY 85 pour les voies 25 à 31. Elle regroupe les objets de type mot, dont les bits ont une signification particulière. Ces objets sont présentés en détail ci-dessous. Exemple de déclaration d’une variable : IODDT_VAR1 de type T_CSY_CAM. Remarques De manière générale la signification des bits est donnée pour l’état 1 de ce bit. Dans les cas spécifiques chaque état du bit est expliqué. Les bits ne sont pas tous utilisés. Indicateurs d'exécution d'un échange explicite : EXCH_STS Le tableau ci-dessous présente les bits de contrôle des échanges explicites : EXCH_STS (%MWr.m.c.0). La mise à jour de ces variables est réalisée automatiquement par le système à chaque échange explicite. 152 Symbole standard Type Accès Signification Repère STS_IN_PROGR BOOL R Lecture des mots d’état de la voie en cours %MWr.m.c.0.0 CMD_IN_PROGR BOOL R Echange de paramètres %MWr.m.c.0.1 de commande en cours ADJ_IN_PROGR BOOL R Echange de paramètres %MWr.m.c.0.2 de réglage en cours TRF_IN_PROGR BOOL R Fonction TRF_RECIPE en cours d’exécution %MWr.m.c.0.3 RECONF_IN_PROGR BOOL R Reconfiguration du module en cours %MWr.m.c.0.15 35010452 12/2018 Objets langage Sercos Compte rendu d'échanges explicites : EXCH_RPT Le tableau ci-dessous présente les bits de compte rendu : EXCH_RPT (%MWr.m.c.1). La mise à jour de ces variables est réalisée automatiquement par le système à chaque échange explicite. Symbole standard Type Accès Signification Repère STS_ERR BOOL R Défaut de lecture des mots d’état de la voie (1 = échec) %MWr.m.c.1.0 CMD_ERR BOOL R Défaut lors d’un échange de %MWr.m.c.1.1 paramètres de commande (1 = échec) ADJ_ERR BOOL R Défaut lors d’un échange de %MWr.m.c.1.2 paramètres de réglage (1 = échec) TRF_ERR BOOL R Défaut lors de l'exécution de %MWr.m.c.1.3 la fonction TRF_RECIPE RECONF_ERR BOOL R Défaut lors de la reconfiguration de la voie (1 = échec) %MWr.m.c.1.15 Mot de défaut voie Le tableau ci-dessous présente les bits de défaut voie : CH_FLT. La mise à jour de ces variables est réalisée par une variable READ_STS (IODDT_VAR1). Symbole standard Type Accès Signification Repère EXT_FLT0 BOOL R Défaut externe 0 : défaut variateur %MWr.m.c.2.0 EXT_FLT1 BOOL R Défaut externe 1 : défaut de communication avec l’axe %MWr.m.c.2.1 EXT_FLT2 BOOL R Défaut externe 2 %MWr.m.c.2.3 INT_FLT BOOL R Défaut interne %MWr.m.c.2.4 CONF_FLT BOOL R Défaut de configuration : configuration matérielle et logicielle différentes %MWr.m.c.2.5 COM_FLT BOOL R Défaut de communication %MWr.m.c.2.6 APPLI_FLT BOOL R Défaut application : défaut de configuration, réglage ou commande %MWr.m.c.2.7 PROCESS_CONF BOOL R Création d’objet mouvement en cours %MWr.m.c.2.11 PROCESS_CONF_FAILED BOOL R Défaut de configuration (sauf pour voie 0) %MWr.m.c.2.12 35010452 12/2018 153 Objets langage Sercos Objets de la fonction TRF_RECIPE Le tableau ci-dessous présente les objets associés à la fonction TRF_RECIPE. Ces objets sont mis à jour automatiquement par le système à chaque utilisation de la fonction TRF_RECIPE. Symbole standard Type Accès Signification Repère ERROR_TRF INT R Erreur de lecture de la fonction TRF_RECIPE %MWr.m.c.3 RETURN_TRF_1 DINT R Retour 1 de la fonction TRF_RECIPE %MDr.m.c.4 RETURN_TRF_2 REAL R Retour 2 de la fonction TRF_RECIPE %MFr.m.c.6 RETURN_TRF_3 REAL R Retour 3 de la fonction TRF_RECIPE %MFr.m.c.8 ACTION_TRF INT R Action à réaliser par la fonction TRF_RECIPE %MWr.m.c.10 PARAM_TRF_1 DINT R Paramètre 1 de la fonction TRF_RECIPE %MDr.m.c.11 PARAM_TRF_2 DINT R Paramètre 2 de la fonction TRF_RECIPE %MDr.m.c.13 PARAM_TRF_3 REAL R Paramètre 3 de la fonction TRF_RECIPE %MFr.m.c.15 PARAM_TRF_4 REAL R Paramètre 4 de la fonction TRF_RECIPE %MFr.m.c.17 Mots d'interface WRITE_CMD Le tableau ci-dessous présente les significations des variables associées au WRITE_CMD dont l’action a été spécifiée dans le mot ACTION_CMD. La mise à jour de ces variables est réalisée par un WRITE_CMD (IODDT_VAR1). Symbole standard Type Accès Signification Repère ERROR_CMD INT RW Erreur lors du WRITE_CMD %MWr.m.c.19 RETURN_CMD_1 DINT RW Retour 1 de la fonction %MDr.m.c.20 RETURN_CMD_2 REAL RW Retour 2 de la fonction %MFr.m.c.22 RETURN_CMD_3 REAL RW Retour 3 de la fonction %MFr.m.c.24 ACTION_CMD INT RW Action à réaliser %MWr.m.c.26 PARAM_CMD_1 DINT RW Paramètre 1 %MDr.m.c.27 PARAM_CMD_2 DINT RW Paramètre 2 %MDr.m.c.29 PARAM_CMD_3 REAL RW Paramètre 3 %MFr.m.c.31 PARAM_CMD_4 REAL RW Paramètre 4 %MFr.m.c.33 154 35010452 12/2018 Objets langage Sercos Sous-chapitre 5.3 Type d’IODDT Type T_GEN_MOD applicable à tous les modules Type d’IODDT Type T_GEN_MOD applicable à tous les modules Détails des objets langage de l'IODDT de type T_GEN_MOD Introduction Les modules des automates Premium sont associés à un IODDT de type T_GEN_MOD. Observations En général, la signification des bits est indiquée pour l'état 1. Dans les cas particuliers, une explication est fournie pour chaque état du bit. Tous les bits ne sont pas utilisés. 35010452 12/2018 155 Objets langage Sercos Liste des objets Le tableau suivant présente les objets de l'IODDT : Symbole standard Type Accès Signification Adresse MOD_ERROR BOOL R Bit d'erreur de module %Ir.m.MOD.ERR EXCH_STS INT R Mot de commande d'échange de module %MWr.m.MOD.0 STS_IN_PROGR BOOL R Lecture des mots d'état du module en cours %MWr.m.MOD.0.0 EXCH_RPT INT R Mot de compte rendu de l'échange %MWr.m.MOD.1 STS_ERR BOOL R Erreur détectée pendant la lecture des mots d'état de module %MWr.m.MOD.1.0 MOD_FLT INT R Mot d'erreur interne du module %MWr.m.MOD.2 MOD_FAIL BOOL R Erreur interne, module inopérant %MWr.m.MOD.2.0 CH_FLT BOOL R Erreur de voie détectée %MWr.m.MOD.2.1 BLK BOOL R Erreur de bornier %MWr.m.MOD.2.2 CONF_FLT BOOL R Configuration matérielle ou logicielle non concordante %MWr.m.MOD.2.5 NO_MOD BOOL R Module absent ou inopérant %MWr.m.MOD.2.6 EXT_MOD_FLT BOOL R Mot d'erreur interne du module (extension Fipio uniquement) %MWr.m.MOD.2.7 MOD_FAIL_EXT BOOL R Module non réparable (extension Fipio uniquement) %MWr.m.MOD.2.8 CH_FLT_EXT BOOL R Erreur de voie détectée (extension Fipio uniquement) %MWr.m.MOD.2.9 BLK_EXT BOOL R Erreur de bornier détectée (extension Fipio uniquement) %MWr.m.MOD.2.10 CONF_FLT_EXT BOOL R Configuration matérielle ou logicielle non concordante (extension Fipio uniquement) %MWr.m.MOD.2.13 NO_MOD_EXT BOOL R Module manquant ou hors service (extension Fipio uniquement) %MWr.m.MOD.2.14 156 35010452 12/2018 Premium et Atrium sous EcoStruxure™Control Expert 35010452 12/2018 Annexes 35010452 12/2018 157 158 35010452 12/2018 Premium et Atrium sous EcoStruxure™Control Expert Codes d’erreur 35010452 12/2018 Annexe A Codes d’erreur Codes d’erreur Codes d'erreur Présentation Le mot %MWr.m.c (i est compris entre 21 et 24 pour les groupes de voies) contient les codes des erreurs survenant après une instruction TRF_RECIPE. Le bit %MWr.m.c:X3 renvoie l’état de la commande en cours sur la voie i. L'algorithme d'interpolation du module TSX CSY 85 gère les codes d'erreur supérieurs à 9500. La méthode de diagnostic est la suivante : vérifiez que la commande est terminée : %MWr.m.c:X3 = 0, consultez le flottant %MFr.m.c.8 (return_trf_3) pour obtenir le point concerné par l'erreur, consultez le code d'erreur dans le mot %MWr.m.c.3, reportez-vous au tableau suivant pour savoir quel type d’erreur est survenu, modifiez votre programme ou la configuration de votre module pour supprimer cette erreur lors de la prochaine exécution de l'instruction TRF_RECIPE. Codes d'erreur Le tableau suivant décrit les codes d’erreur possibles : Code Description 9501 Pour une interpolation de type 1, 2 ou 10, l’un des paramètres ParF1 ou ParF2 est égal à zéro. 9502 Le nombre maximum de points pour une trajectoire a été atteint. Le module TSX CSY 85 autorise 10000 points maximum. 9503 Le nombre d’axes défini est supérieur à celui autorisé. 9504 Deux points successifs identiques sont présents dans la table pour des interpolations de types autres que 12. 9505 Le nombre de points définis pour au moins une came est insuffisant par rapport au nombre de point de la trajectoire. 9506 Utilisation d’un type d’interpolation circulaire alors que plus de deux axes sont définis (types 10, 11 et 12). 9507 Une came correspondant à l’un des axes n’a pas été configurée. 9508 Liaison circulaire selon un angle de 180° (type 10). 9509 Liaison circulaire selon un angle de 0° (type 10). 35010452 12/2018 159 Codes d’erreur 160 Code Description 9510 Une trajectoire a été définie avec un nombre de points supérieur au maximum autorisé : Pour le micrologiciel version 1.1 ou antérieure : Le nombre maximum de points de référence autorisé est de 60. Pour le micrologiciel version 1.2 ou ultérieure : Le nombre maximum de points de référence autorisé est de 200. 9511 Le rayon est inférieur à la moitié de la distance entre les points Pn-1 et Pn. 9512 Cercle impossible. Si le type est 11, le point de départ est égal au point d’arrivée. Si le type est 12, le point de départ est égal au point d'arrivée ainsi qu'au centre du cercle. 9513 Rayon égal à 0 (type 11). 9514 Liaison trop longue : le segment suivant = 0 (types 1, 2 ou 10). 9515 Le nombre de points du segment linéaire est fixé à 0 (types 0, 1 ou 10). 9516 Le nombre de points du segment d'interpolation polynomiale de degré 3 est défini sur 0 (type 1). 9517 Le nombre de points du segment d’interpolation circulaire est fixé à 0 (type 10). 9518 Le nombre de points du segment d’interpolation circulaire est fixé à 0 (type 11 ou 12). 9519 La position du centre fixée dans la table diffère de plus de 50% du rayon du cercle par rapport à la position calculée par le module (type 12). 9520 Groupe non configuré. 9521 L’un au moins des axes associés au groupe n’est pas configuré. 9522 Le nombre de points du segment d'interpolation polynomiale de degré 5 est défini sur 0 (type 2). 9523 Le nombre de points de la table d’interpolation est égal à zéro (premier mot de la table). 9524 Mémoire insuffisante pour calculer l’interpolation. 9525 Le segment suivant étant de longueur nulle, il est impossible d’effectuer la liaison. 9526 La table du maître est vide, le calcul d’interpolation n’a pas été effectué. 9527 Le nombre de mots par point n’est pas correct dans la table d’interpolation. 9528 Le type d’interpolation demandé n’existe pas (paramètre type différent de 0, 1, 2, 10, 11 ou 12). 9002 Code d’erreur existant déjà mais pouvant survenir lorsque l’anneau SERCOS n’est pas configuré correctement. 35010452 12/2018 Premium et Atrium sous EcoStruxure™Control Expert Index 35010452 12/2018 Index C calcul de trajectoire, 48 codes d'erreur, 159 codes fonction, 78 configuration, 25 configuration des paramètres, 90 F fonctions d'interpolation calcul de trajectoire, 48 MoveImmedInterpo, 82 T T_GEN_MOD, 155 TRF_RECIPE, 28 TSXCSY85, 20 W WRITE_CMD, 105 WRITE_PARAM, 103 M MoveImmedInterpo, 82 R READ_PARAM, 103 READ_STS, 109 RESTORE_PARAM, 104 S SAVE_PARAM, 104 structure des données de voie des modules SERCOS T_CSY_CAM, 110 T_CSY_CMD, 110 T_CSY_COORD, 110 T_CSY_FOLLOW, 110 T_CSY_IND, 110 T_CSY_RING, 110 T_CSY_TRF, 110 structures des données de voie pour tous les modules T_GEN_MOD, 155 35010452 12/2018 161 Index 162 35010452 12/2018