Schneider Electric Modicon LMC058 Motion Controller - Comptage rapide Mode d'emploi
Ajouter à Mes manuels264 Des pages
▼
Scroll to page 2
of
264
Modicon LMC058 Motion Controller EIO0000004178 09/2020 Modicon LMC058 Motion Controller Comptage rapide Guide de la bibliothèque LMC058 Expert I/O EIO0000004178.00 09/2020 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. © 2020 Schneider Electric. Tous droits réservés. 2 EIO0000004178 09/2020 Table des matières Consignes de sécurité . . . . . . . . . . . . . . . . . . . . . . . . . . A propos de ce manuel. . . . . . . . . . . . . . . . . . . . . . . . . . Partie I Présentation des compteurs rapides et des codeurs Chapitre 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Présentation des E/S expertes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ajout d'une fonction experte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mappage des E/S expertes intégrées . . . . . . . . . . . . . . . . . . . . . . . . . Interface de codeur matériel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapitre 2 Présentation des compteurs rapides (HSC) . . . . . . . . . . Présentation du type Simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Présentation du type Principal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Choix du module HSC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapitre 3 Présentation des codeurs . . . . . . . . . . . . . . . . . . . . . . . . Présentation du codeur standard . . . . . . . . . . . . . . . . . . . . . . . . . . . . Présentation du codeur de mouvement. . . . . . . . . . . . . . . . . . . . . . . . Partie II Mode Mono-utilisation. . . . . . . . . . . . . . . . . . . . . . . . Chapitre 4 Principe du mode Mono-utilisation . . . . . . . . . . . . . . . . . Description du principe du mode One-shot . . . . . . . . . . . . . . . . . . . . . Chapitre 5 Mono-utilisation avec un type Simple . . . . . . . . . . . . . . . Schéma synoptique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuration du type Simple en mode Mono-utilisation . . . . . . . . . . . Programmation du type Simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Réglage des paramètres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapitre 6 Mono-utilisation avec un type Principal . . . . . . . . . . . . . Schéma synoptique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuration du type Simple en mode Mono-utilisation . . . . . . . . . . . Programmation du type Principal . . . . . . . . . . . . . . . . . . . . . . . . . . . . Réglage des paramètres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Partie III Mode Boucle modulo . . . . . . . . . . . . . . . . . . . . . . . . Chapitre 7 Principe du mode Boucle modulo . . . . . . . . . . . . . . . . . . Description du principe du mode Modulo-loop . . . . . . . . . . . . . . . . . . EIO0000004178 09/2020 9 11 17 19 20 23 26 28 29 30 31 32 35 36 37 39 41 41 43 44 45 46 48 49 50 51 52 55 57 59 59 3 Chapitre 8 Boucle modulo avec un type Simple . . . . . . . . . . . . . . . . Schéma synoptique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuration du type Simple en mode Boucle modulo . . . . . . . . . . . . Programmation du type Simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Réglage des paramètres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapitre 9 Boucle modulo avec un type Principal . . . . . . . . . . . . . . . Schéma synoptique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuration du type Principal en mode Boucle modulo . . . . . . . . . . Programmation du type Principal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Réglage des paramètres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Partie IV Mode Large libre . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapitre 10 Principe du mode Large libre . . . . . . . . . . . . . . . . . . . . . . Description du principe du mode Large libre . . . . . . . . . . . . . . . . . . . . Gestion des limites. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapitre 11 Large libre avec un type Principal . . . . . . . . . . . . . . . . . . Schéma synoptique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuration du type Principal en mode Large libre . . . . . . . . . . . . . . Programmation du type Principal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Réglage des paramètres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Partie V Mode Comptage d'événements . . . . . . . . . . . . . . . . Chapitre 12 Principe du Comptage d'événements. . . . . . . . . . . . . . . . Description du principe du mode Comptage d'événements. . . . . . . . . Chapitre 13 Comptage d'événements avec un type Principal . . . . . . . Schéma synoptique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuration du type Principal en mode Comptage d'événements . . Programmation du type Principal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Réglage des paramètres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Partie VI Type Fréquencemètre . . . . . . . . . . . . . . . . . . . . . . . Chapitre 14 Principe du fréquencemètre . . . . . . . . . . . . . . . . . . . . . . . Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapitre 15 Fréquencemètre avec un type Principal . . . . . . . . . . . . . . Schéma synoptique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Programmation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Réglage des paramètres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Partie VII Type Compteur de durées . . . . . . . . . . . . . . . . . . . . Chapitre 16 Principe du type Compteur de durées . . . . . . . . . . . . . . . Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 63 64 65 66 68 69 70 71 73 76 77 79 80 83 85 86 87 88 91 93 95 95 97 98 99 100 103 105 107 107 109 110 111 112 115 117 119 119 EIO0000004178 09/2020 Chapitre 17 Compteur de durées avec un type Principal . . . . . . . . . . Schéma synoptique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Programmation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Réglage des paramètres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Partie VIII Codeur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapitre 18 Mode Incrémental avec un codeur . . . . . . . . . . . . . . . . 18.1 Principe du mode Incrémental. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Description du principe du mode Incrémental . . . . . . . . . . . . . . . . . . . 18.2 Codeur standard sur un module d'E/S expertes . . . . . . . . . . . . . . . . . Schéma synoptique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuration du Codeur standard sur un module d'E/S expertes . . . Programmation du codeur standard . . . . . . . . . . . . . . . . . . . . . . . . . . Réglage des paramètres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18.3 Codeur standard sur l'interface du codeur . . . . . . . . . . . . . . . . . . . . . Schéma synoptique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuration du Codeur standard sur l'interface du Codeur . . . . . . . Programmation du codeur standard . . . . . . . . . . . . . . . . . . . . . . . . . . Réglage des paramètres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18.4 Codeur de mouvement sur un module d'E/S expertes . . . . . . . . . . . . Schéma synoptique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuration du Codeur de mouvement sur un module d'E/S expertes 18.5 Codeur de mouvement sur l'interface du codeur. . . . . . . . . . . . . . . . . Schéma synoptique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuration du Codeur de mouvement sur l'interface du Codeur . . Chapitre 19 Mode SSI avec un codeur . . . . . . . . . . . . . . . . . . . . . . . 19.1 Description du principe SSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Description du principe du mode SSI . . . . . . . . . . . . . . . . . . . . . . . . . 19.2 Codeur standard en mode SSI sur l'interface du codeur. . . . . . . . . . . Caractéristiques du codeur standard. . . . . . . . . . . . . . . . . . . . . . . . . . Configuration du Codeur standard sur une interface de Codeur. . . . . Programmation du codeur standard . . . . . . . . . . . . . . . . . . . . . . . . . . 19.3 Codeur de mouvement en mode SSI sur l'interface du codeur . . . . . . Caractéristiques du codeur de mouvement. . . . . . . . . . . . . . . . . . . . . Configuration du Codeur de mouvement sur l'interface du Codeur . . EIO0000004178 09/2020 121 122 123 124 127 129 131 132 132 135 136 137 140 143 144 145 146 149 152 153 154 155 157 158 159 161 162 162 164 165 166 168 171 172 173 5 Partie IX Fonctions facultatives. . . . . . . . . . . . . . . . . . . . . . . . Chapitre 20 Fonction de comparaison . . . . . . . . . . . . . . . . . . . . . . . . . 20.1 Comparaison avec le type principal . . . . . . . . . . . . . . . . . . . . . . . . . . . Principe de comparaison avec un type Principal ou un codeur . . . . . . Configuration de la comparaison sur un type Principal ou un codeur . Configuration d'un événement externe . . . . . . . . . . . . . . . . . . . . . . . . Chapitre 21 Fonction de capture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.1 Capture avec un compteur de type Principal . . . . . . . . . . . . . . . . . . . . Principe de capture avec un compteur de type Principal . . . . . . . . . . . Configuration de la capture sur un compteur de type Principal . . . . . . 21.2 Capture avec un codeur. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Capture avec un codeur. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Configuration de la capture sur un Codeur . . . . . . . . . . . . . . . . . . . . . Chapitre 22 Fonctions de présélection et d'activation . . . . . . . . . . . . . Fonction de préréglage (Preset) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conditions de présélection du mode Large libre ou Compteur de durées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Enable : autoriser l'opération de comptage . . . . . . . . . . . . . . . . . . . . . Annexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Annexe A Informations générales . . . . . . . . . . . . . . . . . . . . . . . . . . . Fonctions dédiées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Informations générales sur la gestion des blocs fonction d'administration et de mouvement . . . . . . . . . . . . . . . . . . . . . . . . . . . . Annexe B Types de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . EXPERT_ERR_TYPE : type de variable d'erreur du bloc fonction EXPERT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . EXPERT_FREQMETER_TIMEBASE_TYPE : Type de variable de base de temps pour fréquencemètre . . . . . . . . . . . . . . . . . . . . . . . . . . EXPERT_IMMEDIATE_ERR_TYPE : type de variable d'erreur du bloc fonctionnel GetImmediateValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MC_IMMEDIATE_ERR_TYPE : type de variable d'erreur du bloc fonction MC_GetImmediateValue_LMC058 . . . . . . . . . . . . . . . . . . . . . EXPERT_PERIODMETER_RESOLUTION_TYPE : Type de variable de base de temps pour compteur de durées . . . . . . . . . . . . . . . . . . . . EXPERT_PARAMETER_TYPE : type des paramètres à extraire ou à définir sur EXPERTle bloc fonction . . . . . . . . . . . . . . . . . . . . . . . . . . . EXPERT_REF : valeur de référence de EXPERT . . . . . . . . . . . . . . . . EXPERT_TIMEBASE_TYPE : type de variable de base de temps HSC 6 175 177 178 179 184 185 187 188 189 190 191 192 194 195 196 198 200 201 203 204 205 207 208 209 210 211 212 213 214 215 EIO0000004178 09/2020 Annexe C Blocs fonction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C.1 C.2 Bibliothèque Motion du LMC058 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MC_GetImmediateValue_LMC058 : lecture de la valeur d'une fonction MotionEncoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MC_Reset_LMC058 : effacer l'erreur détectée sur le codeur SoftMotion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bibliothèque EXPERT IO du LMC058 . . . . . . . . . . . . . . . . . . . . . . . . . EXPERTGetImmediateValue : lire la valeur du compteur d'une fonction HSCou de la fonction codeur (Encoder) . . . . . . . . . . . . . . . . EXPERTGetCapturedValue: renvoie le contenu des registres de capture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . EXPERTGetDiag: fournit les détails de l'erreur détectée sur une fonction d'E/S expertes principale . . . . . . . . . . . . . . . . . . . . . . . . . . . . EXPERTGetParam: renvoie les paramètres de la fonction EXPERT I/O principale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . EXPERTSetParam : régler les paramètres d'une fonction HSC . . . . . Encoder_LMC058 : bloc fonctionnel du codeur. . . . . . . . . . . . . . . . . . HSCMain : Bloc fonction HSC Principal . . . . . . . . . . . . . . . . . . . . . . . HSCSimple_LMC058 : contrôler un compteur de type simple pour LMC058 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Annexe D Représentation des fonctions et blocs fonction . . . . . . . Différences entre une fonction et un bloc fonction . . . . . . . . . . . . . . . Utilisation d'une fonction ou d'un bloc fonction en langage IL . . . . . . . Utilisation d'une fonction ou d'un bloc fonction en langage ST . . . . . . Glossaire Index EIO0000004178 09/2020 ......................................... ......................................... 217 218 219 221 223 224 226 228 231 233 235 238 242 245 246 247 251 255 261 7 8 EIO0000004178 09/2020 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. EIO0000004178 09/2020 9 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. 10 EIO0000004178 09/2020 A propos de ce manuel Présentation Objectif du document Ce document est destiné à vous familiariser avec les fonctions et variables de compteur rapide (HSC) et de codeur que propose le contrôleur LMC058. Il décrit les fonctions et variables des bibliothèques HSC et Codeur du LMC058. Pour exploiter correctement ce guide, vous devez : posséder une bonne compréhension du LMC058, notamment de sa conception, de ses fonctionnalités et de sa mise en œuvre dans les systèmes de commande ; maîtriser l'utilisation des langages de programmation de contrôleur CEI 61131-3 suivants : langage à blocs fonction (FBD) langage à contacts (LD) littéral structuré (ST) liste d'instructions (IL) diagramme fonctionnel en séquence (SFC) Seuls le module DM72F• expert et le module codeur peuvent être utilisés avec la bibliothèque HSC et codeur de LMC058. Champ d'application Ce document a été actualisé pour le lancement d’EcoStruxureTM Machine Expert V1.2.5. Les caractéristiques techniques des équipements décrits dans le présent document sont également fournies en ligne. Pour accéder aux informations en ligne, allez sur la page d'accueil de Schneider Electric https://www.se.com/ww/en/download/. Les caractéristiques présentées dans ce document devraient être identiques à celles fournies en ligne. Toutefois, en application de notre politique d'amélioration continue, nous pouvons être amenés à réviser le contenu du document afin de le rendre plus clair et plus précis. Si vous constatez une différence entre le document et les informations fournies en ligne, utilisez ces dernières en priorité. EIO0000004178 09/2020 11 Document(s) à consulter Titre de documentation Référence Modicon LMC058 Logic Controller - Guide de programmation EIO0000004165 (Eng) EIO0000004166 (Fre) EIO0000004167 (Ger) EIO0000004168 (Spa) EIO0000004169 (Ita) EIO0000004170 (Chs) Modicon LMC058 Logic Controller - Guide de référence du matériel EIO0000004189 (Eng) EIO0000004190 (Fre) EIO0000004191 (Ger) EIO0000004192 (Spa) EIO0000004193 (Ita) EIO0000004194 (Chs) Vous pouvez télécharger ces publications et autres informations techniques depuis notre site web à l'adresse : https://www.se.com/ww/en/download/ . 12 EIO0000004178 09/2020 Information spécifique au produit AVERTISSEMENT PERTE DE CONTROLE Le concepteur d'un système de commande doit envisager les modes de défaillance possibles des chemins de commande et, pour certaines fonctions de commande critiques, prévoir un moyen d'atteindre un état sécurisé en cas de défaillance d'un chemin, et après cette défaillance. Par exemple, l'arrêt d'urgence, l'arrêt en cas de surcourse, la coupure de courant et le redémarrage sont des fonctions de contrôle cruciales. Des canaux de commande séparés ou redondants doivent être prévus pour les fonctions de commande critique. Les liaisons de communication peuvent faire partie des canaux de commande du système. Soyez particulièrement attentif aux implications des retards de transmission imprévus ou des pannes de liaison. Respectez toutes les réglementations de prévention des accidents ainsi que les consignes de sécurité locales.1 Chaque implémentation de cet équipement doit être testée individuellement et entièrement pour s'assurer du fonctionnement correct avant la mise en service. Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des dommages matériels. 1 Pour plus d'informations, consultez les documents suivants ou leurs équivalents pour votre site d'installation : NEMA ICS 1.1 (dernière édition), « Safety Guidelines for the Application, Installation, and Maintenance of Solid State Control » (Directives de sécurité pour l'application, l'installation et la maintenance de commande statique) et NEMA ICS 7.1 (dernière édition), « Safety Standards for Construction and Guide for Selection, Installation, and Operation of Adjustable-Speed Drive Systems » (Normes de sécurité relatives à la construction et manuel de sélection, d'installation et d'exploitation de variateurs de vitesse). AVERTISSEMENT FONCTIONNEMENT IMPRÉVU DE L'ÉQUIPEMENT N'utilisez que le logiciel approuvé par Schneider Electric pour faire fonctionner cet équipement. Mettez à jour votre programme d'application chaque fois que vous modifiez la configuration matérielle physique. Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des dommages matériels. EIO0000004178 09/2020 13 Terminologie utilisée dans les normes Les termes techniques, la terminologie, les symboles et les descriptions correspondantes employés dans ce manuel ou figurant dans ou sur les produits proviennent généralement des normes internationales. Dans les domaines des systèmes de sécurité fonctionnelle, des variateurs et de l'automatisme en général, les termes employés sont sécurité, fonction de sécurité, état sécurisé, défaut, réinitialisation du défaut, dysfonctionnement, panne, erreur, message d'erreur, dangereux, etc. Entre autres, les normes concernées sont les suivantes : 14 Norme Description IEC 61131-2:2007 Automates programmables - Partie 2 : exigences et essais des équipements ISO 13849-1:2015 Sécurité des machines : parties des systèmes de commande relatives à la sécurité. Principes généraux de conception EN 61496-1:2013 Sécurité des machines : équipements de protection électro-sensibles. Partie 1 : Prescriptions générales et essais ISO 12100:2010 Sécurité des machines - Principes généraux de conception - Appréciation du risque et réduction du risque EN 60204-1:2006 Sécurité des machines - Équipement électrique des machines - Partie 1 : règles générales ISO 14119:2013 Sécurité des machines - Dispositifs de verrouillage associés à des protecteurs - Principes de conception et de choix ISO 13850:2015 Sécurité des machines - Fonction d'arrêt d'urgence - Principes de conception IEC 62061:2015 Sécurité des machines - Sécurité fonctionnelle des systèmes de commande électrique, électronique et électronique programmable relatifs à la sécurité IEC 61508-1:2010 Sécurité fonctionnelle des systèmes électriques/électroniques/électroniques programmables relatifs à la sécurité : prescriptions générales. IEC 61508-2:2010 Sécurité fonctionnelle des systèmes électriques/électroniques/électroniques programmables relatifs à la sécurité : exigences pour les systèmes électriques/électroniques/électroniques programmables relatifs à la sécurité. IEC 61508-3:2010 Sécurité fonctionnelle des systèmes électriques/électroniques/électroniques programmables relatifs à la sécurité : exigences concernant les logiciels. IEC 61784-3:2016 Réseaux de communication industriels - Profils - Partie 3 : Bus de terrain de sécurité fonctionnelle - Règles générales et définitions de profils. 2006/42/EC Directive Machines 2014/30/EU Directive sur la compatibilité électromagnétique 2014/35/EU Directive sur les basses tensions EIO0000004178 09/2020 De plus, des termes peuvent être utilisés dans le présent document car ils proviennent d'autres normes telles que : Norme Description Série IEC 60034 Machines électriques rotatives Série IEC 61800 Entraînements électriques de puissance à vitesse variable Série IEC 61158 Communications numériques pour les systèmes de mesure et de commande – Bus de terrain utilisés dans les systèmes de commande industriels Enfin, le terme zone de fonctionnement utilisé dans le contexte de la description de dangers spécifiques a la même signification que les termes zone dangereuse ou zone de danger employés dans la directive Machines (2006/42/EC) et la norme ISO 12100:2010. NOTE : Les normes susmentionnées peuvent s'appliquer ou pas aux produits cités dans la présente documentation. Pour plus d'informations sur chacune des normes applicables aux produits décrits dans le présent document, consultez les tableaux de caractéristiques de ces références de produit. EIO0000004178 09/2020 15 16 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Présentation des compteurs rapides et des codeurs EIO0000004178 09/2020 Partie I Présentation des compteurs rapides et des codeurs Présentation des compteurs rapides et des codeurs Présentation Cette section présente la description, les modes disponibles, les fonctionnalités et les performances des différents types de HSC et de codeur. Contenu de cette partie Cette partie contient les chapitres suivants : Chapitre Titre du chapitre Page 1 Introduction 19 2 Présentation des compteurs rapides (HSC) 29 3 Présentation des codeurs 35 EIO0000004178 09/2020 17 Présentation des compteurs rapides et des codeurs 18 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Introduction EIO0000004178 09/2020 Chapitre 1 Introduction Introduction Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Présentation des E/S expertes 20 Ajout d'une fonction experte 23 Mappage des E/S expertes intégrées 26 Interface de codeur matériel 28 EIO0000004178 09/2020 19 Introduction Présentation des E/S expertes Introduction La base contrôleur fournit : 2 modules d'E/S expertes intégrées (DM72F0 et DM72F1) avec : 5 entrées rapides 2 entrées normales 2 sorties rapides 1 port de codeur matériel qui peut prendre en charge : Codeur incrémental Codeur absolu SSI Module de distribution d'alimentation de contrôleur (CPDM) Chaque module d'E/S expertes intégrées (DM72F•) peut prendre en charge des fonctions expertes (voir page 23). Configuration des E/S expertes intégrées Pour configurer les E/S expertes, double-cliquez sur le nœud Expert dans l'arborescence Equipements. Cette figure présente l'onglet Configuration : Ce tableau présente la fonction des différents paramètres : 20 Paramètre Fonction Run/Stop Input Définissez une entrée à utiliser en tant qu'entrée Run/Stop (voir page 21). Alarm Output Définissez une sortie à utiliser en tant que sortie d'alarme (voir page 21). Rearming Output Mode Définissez le mode de sortie de réarmement (voir page 22). EIO0000004178 09/2020 Introduction Entrée Run/Stop Ce tableau présente les différents états : Etats d'entrée Résultat Etat 0 Arrête le contrôleur et ignore les commandes Run externes. Un front montant A partir de l'état ARRETE, démarre une application dans l'état EN COURS D'EXECUTION. Etat 1 L'application peut être contrôlée par : EcoStruxure Machine Expert (Run/Stop) l'application (commande du contrôleur), une commande de réseau. NOTE : L'entrée Run/Stop est gérée même si l'option Mettre à jour E/S en mode Stop n'est pas sélectionnée dans l'onglet des paramètres d'automate. Les entrées attribuées aux fonctions expertes configurées ne peuvent pas être configurées en tant que Run/Stop. Pour plus de détails sur les états de contrôleur et les transitions entre états, reportez-vous au Schéma d'état de contrôleur. AVERTISSEMENT DÉMARRAGE IMPRÉVU DE LA MACHINE OU DU PROCESSUS Vérifiez l'état de sécurité de l'environnement de votre machine ou de votre processus avant de mettre l'entrée Run/Stop sous tension. Utilisez l'entrée Run/Stop pour éviter tout démarrage intempestif à distance. Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des dommages matériels. Sortie d'alarme Cette sortie est réglée sur 1 lorsque le contrôleur est dans l'état RUNNING et que le programme d'application n'est pas arrêté à un point d'arrêt. Les sorties attribuées aux fonctions expertes configurées ne peuvent pas être configurées comme sorties d'alarme. NOTE : La sortie d'alarme est réglée sur zéro lorsque : une tâche est interrompue à un point d'arrêt, la sortie d'alarme signale que le contrôleur a cessé d'exécution l'application ; une erreur est détectée sur les E/S expertes (mise hors tension, détection de court-circuit). EIO0000004178 09/2020 21 Introduction Mode de réarmement des sorties Les sorties rapides des modules DM72F• utilisent une technologie de type push/pull. Dans le cas où une erreur est détectée (court-circuit ou surchauffe), la sortie passe à trois états et la condition est signalée par un bit d'état (DM72F• voie IB1.0) et PLC_R.i_wLocalIOStatus (voir le document Modicon LMC058 Motion Controller - Fonctions et variables système - Guide de la bibliothèque PLCSystem). Deux comportements sont possibles : Réarmement automatique : dès que l'erreur détectée est corrigée, la sortie est à nouveau définie en fonction de la valeur qui lui est attribuée et la valeur de diagnostic est réinitialisée. Réarmement manuel : lorsqu'une erreur est détectée, l'état est mémorisé et la sortie forcée sur trois états jusqu'à ce que l'utilisateur supprime manuellement l'état (voir la section Affectation des E/S). En cas de court-circuit ou de surcharge de courant, les sorties du groupe commun passent automatiquement en mode de protection thermique (mise à 0), puis sont réarmées périodiquement (chaque seconde) afin de vérifier l'état de la connexion. Toutefois, vous devez connaître l'effet de ce réarmement sur la machine ou le processus à contrôler. AVERTISSEMENT DÉMARRAGE IMPRÉVU DE LA MACHINE Désactivez le réarmement automatique des sorties si cette fonction provoque un fonctionnement indésirable de la machine ou du processus. Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des dommages matériels. 22 EIO0000004178 09/2020 Introduction Ajout d'une fonction experte Introduction Chaque module expert DM72F• peut prendre en charge des fonctions expertes. Les fonctions expertes sont définies comme fonctions simples ou complexes. Un seul type peut être configuré par module. Fonctions simples : Compteur rapide en mode Simple E/S Event_Latch Fonctions complexes : Compteur rapide en mode Principal Codeur Générateur de fréquence (FreqGen) Modulation de largeur d'impulsion (PWM) Lorsqu'une E/S n'est pas utilisée par une fonction experte, elle peut être utilisée par une E/S normale. NOTE : Lorsqu'une entrée normale est utilisée en tant que Run/Stop, elle ne peut pas être utilisée par une fonction experte. Lorsqu'une entrée normale est utilisée en tant qu'alarme, elle ne peut pas être utilisée par une fonction experte. Pour plus d'informations, consultez la section Configuration des E/S expertes intégrées (voir page 20). Ajout d'une fonction experte Pour ajouter une fonction experte (Event_Latch, HSC, PWM ou Générateur de fréquence) à votre contrôleur, sélectionnez-la dans le Catalogue de matériels, faites-la glisser vers l'arborescence des Equipements et déposez-la sur l'un des nœuds en surbrillance. Pour plus d'informations sur l'ajout d'un équipement à votre projet, consultez : • Utilisation de la méthode glisser-déposer • Utilisation du Menu contextuel ou du bouton Plus Pour ajouter une fonction Codeur, sélectionnez le Codeur standard dans le Catalogue de matériels, faites-le glisser vers l'arborescence Equipements et déposez-le sur l'un des nœuds en surbrillance. EIO0000004178 09/2020 23 Introduction Il est possible d'ajouter les fonctions expertes suivantes : Fonction Description Référence... Event_Latch Avec la fonction Event_Latch, les entrées expertes intégrées peuvent être configurées en tant qu'événement ou mémorisation. configuration de Event_Latch HSC Les fonctions HSC peuvent exécuter des comptages rapides d'impulsions à partir des capteurs, codeurs, interrupteurs, etc., connectés aux entrées rapides dédiées. Bibliothèque HSC du LMC058 PWM Générateur de fréquence La fonction PWM (Pulse Width Modulation, modulation Bibliothèque PWM du LMC058 de largeur d'impulsion) génère un signal d'onde carrée sur des voies de sortie dédiées avec un cycle de service variable. La fonction Générateur de fréquence génère un signal d'onde carrée sur des canaux de sortie dédiés avec un cycle d'activité constant (50 %). Codeur L'objectif de cette fonction est de connecter un codeur Bibliothèque HSC du LMC058 pour acquérir une position. Cette fonction peut être implémentée sur une interface d'E/S expertes intégrées et une interface de codeur matériel. Le codeur peut être incrémental ou absolu SSI sur une interface de codeur matériel. L'interface d'E/S expertes intégrées ne prend en charge qu'un codeur incrémental. Vous pouvez configurer un axe linéaire ou rotatif pour le codeur incrémental. Attribution des fonctions expertes Attribution des fonctions expertes en fonction de l'interface (les colonnes s'excluent mutuellement) : Interface I/F DM72F0 Fonctions expertes Fonctions simples : E/S rapides : événement ou mémorisation HSC Simple HSC_Main SM_Encoder Codeur PWM Générateur de fréquence Jusqu'à 4 1 1 1 1 1 DM72F1 Jusqu'à 4 1 1 1 1 1 Connecteur Non autorisé Non autorisé 1 1 Non autorisé Non autorisé Pour plus d'informations, consultez la section Mappage des E/S expertes (voir page 26). 24 EIO0000004178 09/2020 Introduction E/S des fonctions expertes par rapport aux E/S normales E/S des fonctions expertes par rapport aux E/S normales : Les entrées peuvent être lues dans la variable mémoire standard, même si elles sont configurées dans une fonction experte. Une entrée ne peut pas être configurée dans une fonction experte si elle a déjà été configurée en tant que Run/Stop. Une sortie ne peut pas être configurée dans une fonction experte si elle a déjà été configurée en tant qu'alarme. %Q n'aura aucun impact sur la sortie réflexe. La gestion de court-circuit continue à s'appliquer à toutes les sorties. Les états des sorties sont disponibles. Toutes les E/S qui ne sont pas utilisées par les fonctions expertes sont disponibles en tant qu'E/S rapides ou normales. Lorsque des entrées sont utilisées dans des fonctions expertes (Latch, HSC,…), le filtre intégrateur est remplacé par un filtre anti-rebond (voir le document "Modicon LMC058 Motion Controller Guide de référence du matériel"). La valeur du filtre est configurée dans l'écran de la fonction experte. EIO0000004178 09/2020 25 Introduction Mappage des E/S expertes intégrées Mappage des E/S des fonctions expertes sur DM72F• Mappage des E/S expertes intégrées par une fonction experte : I0 Q0 Q1 Sorties C C Sorties M Event_Latch 0/4 Entrée Event_Latch 1/5 Entrée Event_Latch 2/6 Entrée Event_Latch 3/7 Entrée HSC simple 0/4 Entrée A HSC simple 1/5 Entrée A HSC simple 2/6 Entrée A HSC simple 3/7 Entrée A HSC principal 0/1 Entrée A I1 I2 I3 I4 M M M M M M M M M Entrée B C SYNC C CAP C EN C REF PWM 0/1 C SYNC C EN Générateur de fréquence 0/1 C Sorties M SYNC C EN Codeur standard I5 Entrée A Entrée B SYNC CAP EN REF Sorties C M M C C C C C C M Obligatoire C En fonction de la configuration 26 EIO0000004178 09/2020 Introduction I0 Codeur de mouvement Entrée A Entrée B Entrée Z CAP I1 I2 I3 I4 I5 Q0 Q1 M M M C M Obligatoire C En fonction de la configuration NOTE : les seize entrées DM72F• peuvent uniquement être configurées par le codeur sur ENC. Résumé des E/S La fenêtre Résumé E/S affiche les E/S de DM72F• et les E/S utilisées par les fonctions expertes. La fenêtre Résumé E/S est accessible à partir des nœuds DM72F• : Etape Action 1 Dans l'arborescence Appareils, développez le nœud Expert. 2 Avec le bouton droit de la souris, cliquez sur DM72F• et sélectionnez Résumé E/S dans le menu contextuel. Exemple de résumé des E/S : EIO0000004178 09/2020 27 Introduction Interface de codeur matériel Introduction Le contrôleur possède une interface de codeur matériel spécifique qui prend en charge les éléments suivants : Codeur incrémental codeur absolu SSI Fonction de codeur L'objectif de cette fonction est de connecter un codeur pour acquérir une position afin de l'utiliser comme axe maître pour les entraînements sur CAN. Cette fonction peut être implémentée sur une interface d'E/S expertes intégrées et une interface de codeur matériel. Le codeur peut être incrémental ou absolu SSI sur une interface de codeur matériel. L'interface d'E/S expertes intégrées ne prend en charge qu'un codeur incrémental. Vous pouvez configurer un axe linéaire ou rotatif pour le codeur incrémental. Mappage des E/S Entrée des modules d'E/S expertes intégrées (DM72F•) utilisés par la fonction de codeur standard et de mouvement : DM72F0 I6 DM72F1 I6 Type de codeur CAP0 X – Standard Mouvement CAP1 – X Standard Mouvement EN X – Standard REF – X Standard X 28 En fonction de la configuration EIO0000004178 09/2020 Modicon LMC058 Motion Controller Présentation des compteurs rapides (HSC) EIO0000004178 09/2020 Chapitre 2 Présentation des compteurs rapides (HSC) Présentation des compteurs rapides (HSC) Présentation Ce chapitre présente les différents types de compteurs rapides (HSC). Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Présentation du type Simple 30 Présentation du type Principal 31 Choix du module HSC 32 EIO0000004178 09/2020 29 Présentation des compteurs rapides (HSC) Présentation du type Simple Présentation Le type Simple est un compteur à entrée unique. Une opération sur le compteur (activation, synchronisation) et une action déclenchée (lorsqu'une valeur de comptage est atteinte) sont exécutées dans le contexte d'une tâche. Avec le type Simple, vous ne pouvez pas déclencher un événement ou une sortie réflexe. Modes du type Simple Le type Simple prend en charge deux modes de comptage configurables sur des impulsions monophasées : One-shot (voir page 43). Dans ce mode, le registre de la valeur de comptage diminue (à partir d'une valeur définie par l'utilisateur) pour chaque impulsion appliquée à l'entrée A, jusqu'à ce que le compteur atteigne 0. Modulo-loop (voir page 63). dans ce mode, le compteur compte à partir de 0 jusqu'à une valeur maximale définie par l'utilisateur (modulo), puis revient à 0 et redémarre le comptage. Performances La fréquence maximale autorisée sur une interface d'E/S expertes est de 200 kHz. Pour plus d'informations sur le filtre de rebond, consultez la section Fonctions dédiées (voir page 204). 30 EIO0000004178 09/2020 Présentation des compteurs rapides (HSC) Présentation du type Principal Présentation Le type Principal est un compteur qui utilise jusqu'à 6 entrées rapides et 2 sorties réflexes. Modes du type Principal Le type Principal prend en charge les modes de comptage suivants sur des impulsions monophasées (1 entrée) ou biphasées (2 entrées) : Mono-utilisation (voir page 49) : dans ce mode, le registre de la valeur de comptage est décrémenté (à partir d'une valeur définie par l'utilisateur) pour chaque impulsion appliquée à l'entrée A, jusqu'à ce que le compteur atteigne 0. Boucle modulo (voir page 69) : dans ce mode, le compteur compte à partir de 0 jusqu'à une valeur maximale définie par l'utilisateur (modulo), puis revient à 0 et reprend le comptage. En sens inverse, le compteur décompte de la valeur de modulo jusqu'à 0, puis revient à la valeur de modulo et reprend le comptage. Large libre (voir page 85) : dans ce mode, le compteur se comporte comme un compteur croissant/décroissant sur toute la plage. Il peut s'utiliser avec un codeur. Comptage d'événements (voir page 97) : dans ce mode, le compteur compte le nombre d'événements reçus durant une base de temps configurée par l'utilisateur. Fréquencemètre (voir page 109) : dans ce mode, le compteur mesure la fréquence des événements. La fréquence est le nombre d'événements par seconde (Hz). Compteur de durées (voir page 121) : utilisez le mode Compteur de durées pour : déterminer la durée d'un événement ; déterminer la durée entre deux événements ; définir et mesurer le temps d'exécution d'un processus. Fonctions facultatives Vous pouvez configurer des fonctions facultatives selon le mode sélectionné : Entrées matérielles pour faire fonctionner le compteur (activation, présélection) ou capturer la valeur de comptage en cours Jusqu'à 4 seuils, pour lesquels les valeurs peuvent être comparées. Jusqu'à 4 événements (1 par seuil) peuvent être associés à des tâches externes Jusqu'à 2 sorties réflexes. Performance La fréquence maximale autorisée sur une interface d'E/S expertes est de 100 kHz. EIO0000004178 09/2020 31 Présentation des compteurs rapides (HSC) Choix du module HSC Tableau des HSC Le tableau ci-dessous récapitule tous les HSC disponibles, avec leurs caractéristiques en fonction du mode demandé : Mode Caractéristique Type simple Type principal Mono-utilisation Mode de comptage Comptage décroissant Comptage décroissant Activation avec une entrée physique HSC Non Oui Synchronisation / Préréglage avec une entrée physique HSC Non Oui Fonction de comparaison Non Oui, 4 seuils, 2 sorties et événements Fonction de capture Non Oui, 1 registre de capture Optimisation de la configuration - Evénement Stop Mode de comptage Comptage décroissant Monophasé Comptage croissant/décroissant Impulsion/Direction Quadrature Activation avec une entrée physique HSC Non Oui Synchronisation / Préréglage avec une entrée physique HSC Non Oui Fonction de comparaison Non Oui, 4 seuils, 2 sorties et événements Fonction de capture Non Oui, 1 registre de capture Boucle modulo Large libre 32 Optimisation de la configuration - - Mode de comptage - Comptage croissant/décroissant Impulsion/Direction Quadrature Activation avec une entrée physique HSC - Oui Synchronisation / Préréglage avec une entrée physique HSC - Oui Fonction de comparaison - Oui, 4 seuils, 2 sorties et événements Fonction de capture - Oui, 1 registre de capture Optimisation de la configuration - Gestion des limites EIO0000004178 09/2020 Présentation des compteurs rapides (HSC) Mode Caractéristique Type simple Type principal Evénement Mode de comptage - Comptage des impulsions pendant une durée donnée Activation avec une entrée physique HSC - Oui Synchronisation / Préréglage avec une entrée physique HSC - Oui Fonction de comparaison - Non Fonction de capture - Non Fréquencemètre Compteur de durées EIO0000004178 09/2020 Optimisation de la configuration - Base de temps Mode de comptage - Comptage des impulsions pendant une base de temps Activation avec une entrée physique HSC - Oui Synchronisation / Préréglage avec une entrée physique HSC - Oui Fonction de comparaison - Non Fonction de capture - Non Optimisation de la configuration - - Mode de comptage - Comptage des impulsions pendant une base de temps Activation avec une entrée physique HSC - Oui Synchronisation / Préréglage avec une entrée physique HSC - Oui Fonction de comparaison - Non Fonction de capture - Non Optimisation de la configuration - Résolution Timeout 33 Présentation des compteurs rapides (HSC) 34 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Présentation des codeurs EIO0000004178 09/2020 Chapitre 3 Présentation des codeurs Présentation des codeurs Présentation Ce chapitre présente de façon très générale les codeurs. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Présentation du codeur standard 36 Présentation du codeur de mouvement 37 EIO0000004178 09/2020 35 Présentation des codeurs Présentation du codeur standard Présentation L'objectif de cette fonction est de connecter un codeur pour acquérir une position. Cette fonction peut être installée sur le module d'E/S expertes intégrées (DM72F0 et DM72F1) et l'interface du Codeur interface (Sub-D). Modes de codeur standard Lorsqu'il est mis en œuvre sur une interface d'E/S expertes, le codeur ne prend en charge que le mode Incrémental (voir page 135). Lorsqu'il est mis en œuvre sur l'interface du Codeur, le codeur propose 2 modes possibles : Incrémental (voir page 144) SSI absolu (voir page 164) Dans l'interface du Codeur, l'alimentation est surveillée. Une erreur d'alimentation détectée est automatiquement effacée lorsque l'alimentation est rétablie. Fonctions facultatives Vous pouvez configurer des fonctions facultatives selon le mode sélectionné : entrées matérielles pour utiliser le compteur (Enable, Preset) ou capturer la valeur de comptage actuelle, jusqu'à 4 seuils, jusqu'à 4 événements (1 par seuil) peuvent être associés à des tâches externes, jusqu'à 2 sorties réflexes. Performances Fréquence maximale autorisée : Module d'E/S expertes : 100 kHz. Interface du Codeur : 200 kHz. 36 EIO0000004178 09/2020 Présentation des codeurs Présentation du codeur de mouvement Généralités L'objectif de cette fonction est de connecter un codeur pour acquérir une position. Cette fonction peut être utilisée comme axe maître pour des entraînements sur CANmotion. Cette fonction peut être implémentée sur le module d'E/S expertes (DM72F0 et DM72F1) et l'interface du Codeur (Sub-D). La configuration du codeur de mouvement se décompose en 2 parties : Partie matérielle : codeur de mouvement, décrit dans ce document. Partie logicielle : codeur SoftMotion, décrit dans l'aide en ligne de CoDeSys, dans Editeurs/Editeurs d'équipement/Editeur d'équipement SoftMotion. Le codeur de mouvement est géré par les blocs fonctionnels de la bibliothèque Motion du LMC058 et de SoftMotion (voir la section Programmation avec EcoStruxure Machine Expert de l'aide en ligne, SoftMotion/Interface de programmation/Bibliothèques SoftMotion/SM3_Basic_library). Modes du codeur de mouvement Lorsqu'il est implémenté sur une interface d'E/S expertes, le codeur prend en charge le mode Incrémental (voir page 153). Lorsqu'il est implémenté sur l'interface du codeur, le codeur propose 2 modes possibles : Incrémental (voir page 157) SSI absolu (voir page 171) Dans l'interface du codeur, l'alimentation est surveillée. Une erreur d'alimentation détectée (SMC_DI_VOLTAGE_DISABLED) est automatiquement effacée lorsque l'alimentation est rétablie. Fonction facultative De plus, le codeur de mouvement propose une fonction de capture. Performance Fréquence maximale autorisée : Module d'E/S expertes : 100 kHz. Interface du Codeur : 200 kHz. EIO0000004178 09/2020 37 Présentation des codeurs 38 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Mode Mono-utilisation EIO0000004178 09/2020 Partie II Mode Mono-utilisation Mode Mono-utilisation Présentation Cette section décrit l'utilisation d'un compteur rapide en mode Mono-utilisation. Contenu de cette partie Cette partie contient les chapitres suivants : Chapitre Titre du chapitre Page 4 Principe du mode Mono-utilisation 41 5 Mono-utilisation avec un type Simple 43 6 Mono-utilisation avec un type Principal 49 EIO0000004178 09/2020 39 Mode Mono-utilisation 40 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Principe du mode Mono-utilisation EIO0000004178 09/2020 Chapitre 4 Principe du mode Mono-utilisation Principe du mode Mono-utilisation Description du principe du mode One-shot Présentation Le compteur est activé par un front de synchronisation et la valeur de préréglage est chargée. Lorsque le comptage est activé, chaque impulsion appliquée à l'entrée décrémente la valeur. Le compteur s'arrête lorsque sa valeur atteint 0. Le compteur conserve la valeur 0 même si de nouvelles impulsions sont appliquées à l'entrée. Une nouvelle synchronisation est requise pour réactiver le compteur. Schéma de principe EIO0000004178 09/2020 41 Principe du mode Mono-utilisation Le tableau suivant décrit les étapes du graphique précédent : Etape Action 1 Sur le front montant de la condition Sync, la valeur de présélection est chargée dans le compteur (quelle que soit la valeur du compteur à ce moment-là) et le compteur est initialisé. 2 Si la condition Enable a pour valeur 1, la valeur de comptage diminue à chaque impulsion sur l'entrée A jusqu'à ce que le compteur atteigne 0. 3 Le compteur attend le front montant suivant de la condition Sync. Remarque : à cette étape, les impulsions sur l'entrée A n'ont aucun effet sur le compteur. 4 Lorsque la condition Enable a pour valeur 0, le compteur ignore les impulsions provenant de l'entrée A et conserve sa valeur jusqu'à ce que la condition Enable passe à 1. Le compteur reprend le comptage des impulsions de l'entrée A sur le front montant de l'entrée Enable à partir de la valeur conservée. NOTE : Les conditions Enable et Sync dépendent de la configuration. Elles sont décrites dans les fonctions Enable (voir page 200) et Preset (voir page 196). 42 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Mono-utilisation avec un type Simple EIO0000004178 09/2020 Chapitre 5 Mono-utilisation avec un type Simple Mono-utilisation avec un type Simple Présentation Ce chapitre décrit la mise en œuvre d'un compteur rapide en mode Mono-utilisation à l'aide d'un type Simple. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Schéma synoptique 44 Configuration du type Simple en mode Mono-utilisation 45 Programmation du type Simple 46 Réglage des paramètres 48 EIO0000004178 09/2020 43 Mono-utilisation avec un type Simple Schéma synoptique Schéma synoptique Le schéma ci-dessous présente le type Simple en mode Mono-utilisation : A est l'entrée de comptage du compteur rapide (High Speed Counter). Le comptage de type Simple en mode Mono-utilisation n'est que croissant. 44 EIO0000004178 09/2020 Mono-utilisation avec un type Simple Configuration du type Simple en mode Mono-utilisation Procédure de configuration Pour configurer un type Simple en mode Mono-utilisation, procédez comme suit : Etape Action 1 Double-cliquez sur Expert → DM72F• → HSCSimple•. 2 Sélectionnez l'onglet Configuration HSC simple. 3 Réglez la valeur du paramètre Général → Mode de comptage sur Mono-utilisation. 4 Sélectionnez la valeur du paramètre Entrées de comptage → Entrée A → Filtre de rebond. 5 Entrez la valeur du paramètre Domaine → Présélection. NOTE : la fenêtre Résumé E/S affiche le mappage des E/S du DM72F•. Vous pouvez afficher les E/S utilisées par la fonction experte. Filtre programmable La valeur de filtrage de l'entrée de type Simple détermine la fréquence maximum du compteur, comme indiqué dans le tableau ci-dessous : Entrée Valeur de filtrage Fréquence maximale du compteur A 0,002 ms 200 kHz 0,004 ms (valeur par défaut) 100 kHz EIO0000004178 09/2020 0,012 ms 40 kHz 0,04 ms 10 kHz 0,12 ms 4 kHz 0,4 ms 1 kHz 1,2 ms 400 Hz 4 ms 100 Hz 45 Mono-utilisation avec un type Simple Programmation du type Simple Présentation Un compteur de type Simple est toujours géré par un bloc fonction HSCSimple. NOTE : Lors de la compilation, une erreur est détectée si le bloc fonctionnel HSCSimple est utilisé pour gérer un autre type HSC différent. Ajout d'un bloc fonction HSCSimple Etape Description 1 Sélectionnez l'onglet Bibliothèques dans le Catalogue de logiciels et cliquez sur Bibliothèques. Sélectionnez Contrôleur → LMC058 → LMC058 Expert IO → HSC → HSCSimple_LMC058 dans la liste, puis faites glisser l'élément vers la fenêtre POU. 2 Entrez le nom de l'instance de type Simple (défini dans la configuration) ou recherchez l'instance de bloc fonction en cliquant sur : Dans la fenêtre Aide à la saisie, vous pouvez sélectionner l'instance HSC dans le chemin d'accès suivant : Variables globales → <MonContrôleur> → Logique API → IoConfig_Globals. 46 EIO0000004178 09/2020 Mono-utilisation avec un type Simple Utilisation des variables d’E/S Le tableau ci-dessous décrit comment les différentes broches du bloc fonction sont utilisées en mode Mono-utilisation. Ce tableau décrit les variables d'entrée : Entrées Type Commentaire Sync BOOL Lors du front montant, charge la présélection du compteur. ACK_Modulo BOOL Non utilisée en mode Mono-utilisation. Le tableau suivant décrit les variables de sortie : Sortie Type Commentaire HSC_REF EXPERT_REF Référence du HSC. A utiliser avec l'entrée EXPERT_REF_IN des blocs fonction d'administration. HSC_Err BOOL TRUE = indique qu'une erreur a été détectée. Pour en savoir plus sur l'erreur détectée, utilisez le bloc fonction EXPERTGetDiag (voir page 228). Validity BOOL TRUE = indique que les valeurs de sortie du bloc fonction sont valides. Run BOOL TRUE = compteur en cours d'exécution. Passe à 0 lorsque CurrentValue atteint 0. Un front montant est requis sur Sync pour redémarrer le compteur. CurrentValue DWORD Valeur actuelle du compteur. Modulo_Flag BOOL Non utilisée en mode Mono-utilisation. (voir page 214) EIO0000004178 09/2020 47 Mono-utilisation avec un type Simple Réglage des paramètres Présentation Les paramètres répertoriés dans le tableau ci-après peuvent être modifiés à l'aide des blocs fonction EXPERTGetParam (voir page 231) ou EXPERTSetParam (voir page 233) NOTE : Les paramètres définis par le programme ont priorité sur ceux configurés dans la fenêtre de configuration du compteur rapide. Les paramètres de la configuration initiale sont restaurés en cas de démarrage à froid ou à chaud. Paramètres réglables Ce tableau fournit la liste des paramètres de EXPERT_PARAMETER_TYPE (voir page 213) qui peuvent être lus ou modifiés durant l'exécution du programme : 48 Paramètre Description EXPERT_PRESET Permet d'extraire ou de définir la valeur Preset du bloc fonction HSC. EIO0000004178 09/2020 Modicon LMC058 Motion Controller Mono-utilisation avec un type Principal EIO0000004178 09/2020 Chapitre 6 Mono-utilisation avec un type Principal Mono-utilisation avec un type Principal Présentation Ce chapitre décrit la mise en œuvre d'un compteur rapide en mode Mono-utilisation à l'aide d'un type Principal. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Schéma synoptique 50 Configuration du type Simple en mode Mono-utilisation 51 Programmation du type Principal 52 Réglage des paramètres 55 EIO0000004178 09/2020 49 Mono-utilisation avec un type Principal Schéma synoptique Schéma synoptique Ce schéma présente le type Principal en mode Mono-utilisation : A est l'entrée de comptage du compteur. EN est l'entrée d'activation du compteur. SYNC est l'entrée de synchronisation du compteur. CAP est l'entrée de capture du compteur. Fonction facultative En plus du mode Mono-utilisation, par rapport au type Simple, le type Principal peut fournir les fonctions suivantes : Fonction de présélection (voir page 196) Fonction d'activation (Enable) (voir page 200) Fonction de capture (voir page 187) Fonction de comparaison (voir page 177) 50 EIO0000004178 09/2020 Mono-utilisation avec un type Principal Configuration du type Simple en mode Mono-utilisation Procédure de configuration Pour configurer un type Principal en mode Mono-utilisation, procédez comme suit : Etape Action 1 Double-cliquez sur Expert → DM72F• → HSCMain•. 2 Sélectionnez l'onglet Configuration HSC principale. 3 Réglez la valeur du paramètre Général → Mode de comptage sur Mono-utilisation. 4 Sélectionnez la valeur du paramètre Entrées de comptage → Entrée A → Filtre de rebond. 5 Entrez la valeur du paramètre Domaine → Présélection. 6 Le cas échéant, sélectionnez la valeur des entrées auxiliaires SYNC, EN et CAP dans le menu déroulant, pour activer la fonction de présélection (voir page 196), la fonction d'activation (voir page 200) et la fonction de capture (voir page 188) avec une entrée physique. 7 Le cas échéant, sélectionnez le Nombre de seuils. Cela permet de configurer la fonction de comparaison et les sorties réflexes (voir page 177). 8 Lorsque Evénement Stop est défini sur Oui, l'événement externe (BLOCK0_HSCSTOP ou BLOCK1_HSCSTOP) doit être utilisé pour déclencher une tâche externe (voir page 185). NOTE : la fenêtre Résumé E/S affiche le mappage des E/S du DM72F•. Vous pouvez afficher les E/S utilisées par la fonction experte. Filtre programmable La valeur de filtrage de l'entrée de type Principal détermine la fréquence maximale du compteur, comme indiqué dans le tableau ci-dessous : Entrée A EIO0000004178 09/2020 Valeur de filtrage Fréquence maximale du compteur 0,002 ms (valeur par défaut) 200 kHz 0,004 ms 100 kHz 0,012 ms 40 kHz 0,04 ms 10 kHz 0,12 ms 4 kHz 0,4 ms 1 kHz 1,2 ms 400 Hz 4 ms 100 Hz 51 Mono-utilisation avec un type Principal Programmation du type Principal Présentation Le type Principal est toujours géré par un bloc fonctionnel HSCMain. NOTE : Lors de la compilation, une erreur est détectée si le bloc fonctionnel HSCMain est utilisé pour gérer un autre type HSC différent. Ajout du bloc fonction HSCMain Etape Description 1 Sélectionnez l'onglet Bibliothèques dans le Catalogue de logiciels et cliquez sur Bibliothèques. Sélectionnez Contrôleur → LMC058 → LMC058 Expert IO → HSC → HSCMain_LMC058 dans la liste, puis faites glisser l'élément vers la fenêtre POU. 2 Entrez le nom de l'instance de type Principal (défini dans la configuration) ou recherchez l'instance de bloc fonction en cliquant sur : Dans la fenêtre Aide à la saisie, vous pouvez sélectionner l'instance HSC dans le chemin d'accès suivant : Variables globales → <MonContrôleur> → Logique API → IoConfig_Globals. 52 EIO0000004178 09/2020 Mono-utilisation avec un type Principal Utilisation des variables d’E/S Le tableau ci-dessous décrit comment les différentes broches du bloc fonction sont utilisées en mode Mono-utilisation. Le tableau suivant décrit les variables d'entrée : Entrée Type Description EN_Enable BOOL Si l'entrée EN est configurée : la valeur TRUE autorise l'activation du compteur via l'entrée d'activation (Enable) (voir page 200). EN_Preset BOOL Lorsque l'entrée SYNC est configurée : la valeur TRUE autorise la synchronisation et le démarrage du compteur via l'entrée Sync (voir page 196). EN_Cap BOOL Lorsque l'entrée CAP est configurée : la valeur TRUE active l'entrée Capture (voir page 188). EN_Compare BOOL TRUE = active l'opération de comparaison (voir page 177) (à l'aide des seuils 0, 1, 2, 3) : comparaison de base (bits de sortie TH0, TH1, TH2, TH3) réflexe (bits de sortie Reflex0, Reflex1) événements (pour déclencher des tâches externes en cas de franchissement de seuil) NOTE : Cette option n'est disponible que pour les modules d'extension TM3XF•, qui prennent en charge les événements externes. EN_Out0 BOOL TRUE = autorise la sortie physique Output0 à renvoyer la valeur de Reflex0 (si elle est configurée). EN_Out1 BOOL TRUE = autorise la sortie physique Output1 à renvoyer la valeur de Reflex1 (si elle est configurée). F_Enable BOOL Force la condition d'activation (voir page 200). Prioritaire sur l'entrée EN_Enable. F_Preset BOOL Force la condition de présélection (voir page 196). Prioritaire sur l'entrée EN_Preset. F_Out0 BOOL TRUE = force Output0 à prendre la valeur 1 (si Reflex0 est configurée dans la fonction HSC intégrée). Prioritaire sur EN_Out0. F_Out1 BOOL TRUE = force Output1 à prendre la valeur 1 (si Reflex1 est configurée dans la fonction HSC intégrée). Prioritaire sur EN_Out1. ACK_Modulo BOOL Sur le front montant, réinitialise l'indicateur modulo. ACK_Preset BOOL Sur le front montant, réinitialise Preset_Flag. ACK_Cap BOOL Sur le front montant, réinitialise Cap_Flag. SuspendCompare BOOL TRUE = les résultats de la comparaison sont suspendus : Les bits de sortie TH0, TH1, TH2, TH3, Reflex0, Reflex1, Out0 et Out1 du bloc conservent leur dernière valeur. Les sorties physiques Output0 et Output1 conservent leur dernière valeur. Les événements sont masqués. NOTE : EN_Compare, EN_Out0,EN_Out1,F_Out0, F_Out1 restent opérationnels tant que SuspendCompare est définie. EIO0000004178 09/2020 53 Mono-utilisation avec un type Principal Le tableau suivant décrit les variables de sortie : Sortie Type Commentaire HSC_REF EXPERT_REF Référence du HSC. A utiliser avec l'entrée EXPERT_REF_IN des blocs fonction d'administration. HSC_Err BOOL TRUE = indique qu'une erreur a été détectée. Pour en savoir plus sur l'erreur détectée, utilisez le bloc fonction EXPERTGetDiag (voir page 228). Validity BOOL TRUE = indique que les valeurs de sortie du bloc fonction sont valides. Run BOOL TRUE = compteur en cours d'exécution. Passe à 0 lorsque CurrentValue atteint 0. Pour redémarrer le compteur, un front montant sur l'entrée Sync est nécessaire. TH0 BOOL Définie sur 1 si CurrentValue > Seuil 0 (voir page 177). TH1 BOOL Définie sur 1 si CurrentValue > Seuil 1 (voir page 177). TH2 BOOL Définie sur 1 si CurrentValue > Seuil 2 (voir page 177). TH3 BOOL Définie sur 1 si CurrentValue > Seuil 3 (voir page 177). Modulo_Flag BOOL Définie sur TRUE si le compteur atteint 0. Preset_Flag BOOL Définie sur 1 par la présélection du compteur (voir page 196). Cap_Flag BOOL Défini sur 1 lorsqu'une nouvelle valeur de capture est enregistrée dans le Registre de capture (voir page 188). Cet indicateur doit être réinitialisé pour qu'une nouvelle capture puisse être effectuée. Reflex0 BOOL Etat de Reflex0 (voir page 181). Reflex1 BOOL Etat de Reflex1 (voir page 181). Out0 BOOL Sortie physique Output0 réglée sur 0 (si Reflex1 configurée dans la fonction HSC intégrée ; FALSE si non configurée). Out1 BOOL Sortie physique Output1 réglée sur 1 (si Reflex1 configurée dans la fonction HSC intégrée ; FALSE si non configurée). CurrentValue DINT Valeur du compteur. (voir page 214) 54 EIO0000004178 09/2020 Mono-utilisation avec un type Principal Réglage des paramètres Présentation Les paramètres répertoriés dans le tableau ci-après peuvent être modifiés à l'aide des blocs fonction EXPERTGetParam (voir page 231) ou EXPERTSetParam (voir page 233) NOTE : Les paramètres définis par le programme ont priorité sur ceux configurés dans la fenêtre de configuration du compteur rapide. Les paramètres de la configuration initiale sont restaurés en cas de démarrage à froid ou à chaud. Paramètres réglables Ce tableau fournit la liste des paramètres de EXPERT_PARAMETER_TYPE (voir page 213) qui peuvent être lus ou modifiés durant l'exécution du programme : Paramètre Description EXPERT_PRESET Permet d'extraire ou de définir la valeur Preset du bloc fonction HSC. EXPERT_THRESHOLD0 Permet d'extraire ou de définir la valeur du seuil 0 d'une fonction compteur HSC. EXPERT_THRESHOLD1 Permet d'extraire ou de définir la valeur du seuil 1 d'une fonction compteur HSC. EXPERT_THRESHOLD2 Permet d'extraire ou de définir la valeur du seuil 2 d'une fonction compteur HSC. EXPERT_THRESHOLD3 Permet d'extraire ou de définir la valeur du seuil 3 d'une fonction compteur HSC. EXPERT_REFLEX0 Permet d'extraire ou de définir le mode réflexe de la sortie 0 d'une fonction EXPERT. EXPERT_REFLEX1 Permet d'extraire ou de définir le mode réflexe de la sortie 1 d'une fonction EXPERT. EIO0000004178 09/2020 55 Mono-utilisation avec un type Principal 56 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Mode Boucle modulo EIO0000004178 09/2020 Partie III Mode Boucle modulo Mode Boucle modulo Présentation Ce chapitre décrit l'utilisation d'un compteur rapide en mode Boucle modulo. Contenu de cette partie Cette partie contient les chapitres suivants : Chapitre Titre du chapitre Page 7 Principe du mode Boucle modulo 59 8 Boucle modulo avec un type Simple 63 9 Boucle modulo avec un type Principal 69 EIO0000004178 09/2020 57 Mode Boucle modulo 58 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Principe du mode Boucle modulo EIO0000004178 09/2020 Chapitre 7 Principe du mode Boucle modulo Principe du mode Boucle modulo Description du principe du mode Modulo-loop Présentation Le mode Compteur - Décompteur infini peut être utilisé pour des actions répétées sur une série d'objets mobiles, comme des applications d'emballage et d'étiquetage. Principe Lors d'un front montant de la condition Sync (voir page 196), le compteur est activé et sa valeur est définie sur 0. Lorsque le comptage est activé (voir page 200) : Sens d'incrémentation : le compteur est incrémenté jusqu'à ce qu'il atteigne la valeur modulo -1. Lors de l'impulsion suivante, le compteur est réinitialisé à 0, un indicateur de modulo est défini sur 1 et le comptage continue. Sens de décrémentation : le compteur diminue jusqu'à ce qu'il atteigne 0. Lors de l'impulsion suivante, le compteur est défini sur la valeur de modulo, un indicateur de modulo est défini sur 1 et le comptage continue. Modes d'entrée Ce tableau répertorie les huit types de modes d'entrée disponibles : Mode d'entrée Commentaire A = Compte, B = Décompte Mode par défaut Le compteur incrémente sur A et décrémente sur B. A = Impulsion, B = Direction En cas de front montant sur A et si B a pour valeur TRUE, le compteur décrémente. En cas de front montant sur A et si B a pour valeur FALSE, le compteur incrémente. Quadrature normale X1 Un codeur physique fournit toujours 2 signaux avec un décalage de 90°, qui permettent au compteur de compter les impulsions et de détecter le sens : X1 : 1 comptage par cycle du codeur X2 : 2 comptages par cycle du codeur X4 : 4 comptages par cycle du codeur Quadrature normale X2 Quadrature normale X4 Quadrature arrière X1 Quadrature arrière X2 Quadrature arrière X4 EIO0000004178 09/2020 59 Principe du mode Boucle modulo Schéma du principe de comptage/décomptage Etape Action 1 Sur le front montant de la condition Sync, la valeur de comptage est réinitialisée à 0 et le compteur est activé. 2 Lorsque la condition Enable a pour valeur 1, chaque impulsion sur l'entrée A incrémente la valeur de comptage. 3 Lorsque le compteur atteint la valeur (modulo-1), il revient à 0 lors de l'impulsion suivante et le comptage continue. Modulo_Flag est défini sur 1. 4 Sur le front montant de la condition Sync, la valeur de comptage est réinitialisée à 0. 5 Lorsque la condition Enable a pour valeur 1, chaque impulsion sur l'entrée B diminue le compteur. 6 Lorsque le compteur atteint 0, il revient à (modulo-1) lors de l'impulsion suivante et le comptage continue. 7 Lorsque la condition Enable a pour valeur 0, les impulsions sur les entrées sont ignorées. 8 Sur le front montant de la condition Sync, la valeur de comptage est réinitialisée à 0. NOTE : Les conditions Enable et Sync dépendent de la configuration. Elles sont décrites dans les fonctions Enable (voir page 200) et Preset (voir page 196). 60 EIO0000004178 09/2020 Principe du mode Boucle modulo Schéma de principe de la quadrature Le signal du codeur est compté en fonction du mode d'entrée sélectionné, comme indiqué ciaprès : EIO0000004178 09/2020 61 Principe du mode Boucle modulo 62 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Boucle modulo avec un type Simple EIO0000004178 09/2020 Chapitre 8 Boucle modulo avec un type Simple Boucle modulo avec un type Simple Présentation Ce chapitre décrit la mise en œuvre d'un compteur rapide en mode Boucle modulo à l'aide d'un type Simple. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Schéma synoptique 64 Configuration du type Simple en mode Boucle modulo 65 Programmation du type Simple 66 Réglage des paramètres 68 EIO0000004178 09/2020 63 Boucle modulo avec un type Simple Schéma synoptique Schéma synoptique Ce schéma présente le type Simple en mode Mono-utilisation : A est l'entrée de comptage du compteur rapide (High Speed Counter). Un compteur de type Simple ne peut effectuer que des comptages croissants. Le comptage de type Simple en mode Boucle modulo n'est que décroissant. Le comptage de type Simple en mode Mono-utilisation n'est que croissant. 64 EIO0000004178 09/2020 Boucle modulo avec un type Simple Configuration du type Simple en mode Boucle modulo Procédure de configuration Pour configurer un type Simple en mode Boucle modulo, procédez comme suit : Etape Action 1 Double-cliquez sur Expert → DM72F• → HSCSimple•. 2 Sélectionnez l'onglet Configuration HSC simple. 3 Réglez la valeur du paramètre Général → Mode de comptage sur Boucle modulo. 4 Sélectionnez la valeur du paramètre Entrées de comptage → Entrée A → Filtre de rebond. 5 Indiquez la valeur du paramètre Domaine → Modulo. NOTE : la fenêtre Résumé E/S affiche le mappage des E/S du DM72F•. Vous pouvez afficher les E/S utilisées par la fonction experte. Filtre programmable La valeur de filtrage de l'entrée de type Spécialisé détermine la fréquence maximum du compteur, comme indiqué dans le tableau ci-dessous : Entrée A EIO0000004178 09/2020 Valeur de filtrage Fréquence maximale du compteur 0,002 ms 200 kHz 0,004 ms (valeur par défaut) 100 kHz 0,012 ms 40 kHz 0,04 ms 10 kHz 0,12 ms 4 kHz 0,4 ms 1 kHz 1,2 ms 400 Hz 4 ms 100 Hz 65 Boucle modulo avec un type Simple Programmation du type Simple Présentation Un type Simple est toujours géré par un bloc fonction HSCSimple. NOTE : Lors de la compilation, une erreur est détectée si le bloc fonctionnel HSCSimple est utilisé pour gérer un autre type HSC différent. Ajout d'un bloc fonctionnel HSCSimple Etape Description 1 Sélectionnez l'onglet Bibliothèques dans le Catalogue de logiciels et cliquez sur Bibliothèques. Sélectionnez Contrôleur → LMC058 → LMC058 Expert IO → HSC → HSCSimple_LMC058 dans la liste, puis faites glisser l'élément vers la fenêtre POU. 2 Entrez le nom de l'instance de type Simple (défini dans la configuration) ou recherchez l'instance de bloc fonction en cliquant sur : Dans la fenêtre Aide à la saisie, vous pouvez sélectionner l'instance HSC dans le chemin d'accès suivant : Variables globales → <MonContrôleur> → Logique API → IoConfig_Globals. 66 EIO0000004178 09/2020 Boucle modulo avec un type Simple Utilisation des variables d’E/S Le tableau ci-dessous décrit comment les différentes broches du bloc fonction sont utilisées en mode Boucle modulo. Le tableau suivant décrit les variables d'entrée : Entrée Type Commentaire Enable BOOL TRUE = active le compteur et prend en compte les impulsions sur son entrée. Sync BOOL Sur le front montant, présélectionne et démarre le compteur. ACK_Modulo BOOL Sur le front montant, réinitialise Modulo_Flag. Le tableau suivant décrit les variables de sortie : Sortie Type Commentaire HSC_REF EXPERT_REF Référence du HSC. A utiliser avec l'entrée EXPERT_REF_IN des blocs fonction d'administration. HSC_Err BOOL TRUE = indique qu'une erreur a été détectée. Pour en savoir plus sur cette erreur détectée, utilisez le bloc fonction EXPERTGetDiag (voir page 228). Validity BOOL TRUE = indique que les valeurs de sortie du bloc fonction sont valides. Run BOOL Non pertinent Modulo_Flag BOOL Réglé sur TRUE lorsque le compteur dépasse la valeur Modulo. CurrentValue DWORD Valeur du compteur. (voir page 214) EIO0000004178 09/2020 67 Boucle modulo avec un type Simple Réglage des paramètres Présentation Les paramètres répertoriés dans le tableau ci-après peuvent être modifiés à l'aide des blocs fonction EXPERTGetParam (voir page 231) ou EXPERTSetParam (voir page 233) NOTE : Les paramètres définis par le programme ont priorité sur ceux configurés dans la fenêtre de configuration du compteur rapide. Les paramètres de la configuration initiale sont restaurés en cas de démarrage à froid ou à chaud. Paramètres réglables Ce tableau fournit la liste des paramètres de EXPERT_PARAMETER_TYPE (voir page 213) qui peuvent être lus ou modifiés durant l'exécution du programme : 68 Paramètre Description EXPERT_MODULO Permet d'extraire ou de définir la valeur Modulo du bloc fonction HSC. EIO0000004178 09/2020 Modicon LMC058 Motion Controller Boucle modulo avec un type Principal EIO0000004178 09/2020 Chapitre 9 Boucle modulo avec un type Principal Boucle modulo avec un type Principal Présentation Ce chapitre décrit la mise en œuvre d'un compteur rapide en mode Boucle modulo à l'aide d'un type Principal. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Schéma synoptique 70 Configuration du type Principal en mode Boucle modulo 71 Programmation du type Principal 73 Réglage des paramètres 76 EIO0000004178 09/2020 69 Boucle modulo avec un type Principal Schéma synoptique Schéma synoptique Ce schéma présente le type Principal en mode Boucle modulo : A et B sont les entrées de comptage du compteur. EN est l'entrée d'activation du compteur. SYNC est l'entrée de synchronisation du compteur. CAP est l'entrée de capture du compteur. Fonctions facultatives Outre le mode Boucle modulo, le type Principal offre les fonctions suivantes : Fonction d'activation (voir page 200) Fonction de capture (voir page 187) Fonction de comparaison (voir page 177) NOTE : La valeur de présélection est 0, laquelle n'est pas modifiable. 70 EIO0000004178 09/2020 Boucle modulo avec un type Principal Configuration du type Principal en mode Boucle modulo Procédure de configuration Pour configurer un type Principal en mode Boucle modulo, procédez comme suit : Etape Action 1 Double-cliquez sur Expert → DM72F• → HSCMain•. 2 Sélectionnez l'onglet Configuration HSC principale. 3 Réglez la valeur du paramètre Général → Mode de comptage sur Boucle modulo. 4 Sélectionnez la valeur du paramètre Général → Mode d'entrée. 5 Sélectionnez la valeur du paramètre Entrées de comptage → Entrée A → Filtre de rebond. Le cas échéant, sélectionnez la valeur du paramètre Entrées de comptage → Entrée B → Filtre de rebond. 6 Indiquez la valeur du paramètre Domaine → Modulo. 7 Si vous le souhaitez, vous pouvez activer ces fonctions : Fonction de capture (voir page 187) Fonction de comparaison (voir page 177) Fonction d'activation (voir page 200) Fonction de présélection (voir page 196) NOTE : la fenêtre Résumé E/S affiche le mappage des E/S du DM72F•. Vous pouvez afficher les E/S utilisées par la fonction experte. Filtre programmable La valeur de filtrage de l'entrée de type Principal détermine la fréquence maximum du compteur, comme indiqué dans le tableau ci-dessous : Entrée Valeur de filtrage Fréquence maximale du compteur A, B 0,002 ms (valeur par défaut) 200 kHz 0,004 ms 100 kHz 0,012 ms 40 kHz EIO0000004178 09/2020 0,04 ms 10 kHz 0,12 ms 4 kHz 0,4 ms 1 kHz 1,2 ms 400 Hz 4 ms 100 Hz 71 Boucle modulo avec un type Principal Paramètre d'entrée La valeur du paramètre Mode d'entrée détermine le comportement du comptage : Valeur du paramètre Description A monophasé Le compteur incrémente sur A. A=Compte, B=Décompte Le compteur incrémente sur A et décrémente sur B. A=Impulsion, B=Direction En cas de front montant sur A et si B a pour valeur TRUE, le compteur décrémente. En cas de front montant sur A et si B a pour valeur FALSE, le compteur incrémente. Quadrature normale X1 Un codeur physique fournit toujours 2 signaux avec un décalage de 90°, qui permettent au compteur de compter les impulsions et de détecter le sens. 1 comptage par cycle de codeur Quadrature normale X2 Un codeur physique fournit toujours 2 signaux avec un décalage de 90°, qui permettent au compteur de compter les impulsions et de détecter le sens. 2 comptages par cycle de codeur. Quadrature normale X4 Un codeur physique fournit toujours 2 signaux avec un décalage de 90°, qui permettent au compteur de compter les impulsions et de détecter le sens. 4 comptages par cycle de codeur. Quadrature arrière X1 Un codeur physique fournit toujours 2 signaux avec un décalage de 90°, qui permettent au compteur de compter les impulsions et de détecter le sens. 1 comptage par cycle de codeur. Quadrature arrière X2 Un codeur physique fournit toujours 2 signaux avec un décalage de 90°, qui permettent au compteur de compter les impulsions et de détecter le sens. 2 comptages par cycle de codeur. Quadrature arrière X4 Un codeur physique fournit toujours 2 signaux avec un décalage de 90°, qui permettent au compteur de compter les impulsions et de détecter le sens. 4 comptages par cycle de codeur. 72 EIO0000004178 09/2020 Boucle modulo avec un type Principal Programmation du type Principal Présentation Le type Principal est toujours géré par un bloc fonctionnel HSCMain. NOTE : Lors de la compilation, une erreur est détectée si le bloc fonctionnel HSCMain est utilisé pour gérer un autre type HSC différent. Ajout du bloc fonction HSCMain Etape Description 1 Sélectionnez l'onglet Bibliothèques dans le Catalogue de logiciels et cliquez sur Bibliothèques. Sélectionnez Contrôleur → LMC058 → LMC058 Expert IO → HSC → HSCMain_LMC058 dans la liste, puis faites glisser l'élément vers la fenêtre POU. 2 Entrez le nom de l'instance de type Principal (défini dans la configuration) ou recherchez l'instance de bloc fonction en cliquant sur : Dans la fenêtre Aide à la saisie, vous pouvez sélectionner l'instance HSC dans le chemin d'accès suivant : Variables globales → <MonContrôleur> → Logique API → IoConfig_Globals. EIO0000004178 09/2020 73 Boucle modulo avec un type Principal Utilisation des variables d’E/S Le tableau ci-dessous décrit la manière dont les différentes broches du bloc fonction sont utilisées en mode Boucle modulo. Le tableau suivant décrit les variables d'entrée : Entrée Type Description EN_Enable BOOL Lorsque l'entrée EN est configurée : la valeur TRUE autorise l'activation du compteur via l'entrée d'activation (Enable) (voir page 200). EN_Preset BOOL Lorsque l'entrée SYNC est configurée : la valeur TRUE autorise la synchronisation et le démarrage du compteur via l'entrée Sync (voir page 196). EN_Cap BOOL Lorsque l'entrée CAP est configurée : la valeur TRUE active l'entrée Capture (voir page 188). EN_Compare BOOL TRUE = active la fonction de comparaison (voir page 177) à l'aide du seuil 0, 1, 2, 3 : comparaison de base (bits de sortie TH0, TH1, TH2, TH3) réflexe (bits de sortie (Reflex0, Reflex1) événements (pour déclencher des tâches externes en cas de franchissement de seuil) EN_Out0 BOOL TRUE = autorise la sortie physique Output0 à renvoyer la valeur de Reflex0 (si elle est configurée). EN_Out1 BOOL TRUE = autorise la sortie physique Output1 à renvoyer la valeur de Reflex1 (si elle est configurée). F_Enable BOOL Force la condition d'activation (voir page 200). Prioritaire sur l'entrée EN_Enable. F_Preset BOOL Force la condition de présélection (voir page 196). Prioritaire sur l'entrée EN_Preset. F_Out0 BOOL TRUE = force Output0 à prendre la valeur 1 (si Reflex0 est configurée dans la fonction HSC intégrée de EcoStruxure Machine Expert). Prioritaire sur EN_Out0. F_Out1 BOOL TRUE = force Output1 à prendre la valeur 1 (si Reflex1 est configurée dans la fonction HSC intégrée de EcoStruxure Machine Expert). Prioritaire sur EN_Out1. ACK_Modulo BOOL Sur le front montant, réinitialise Modulo_Flag. Sur le front montant, réinitialise Preset_Flag. ACK_Preset BOOL ACK_Cap BOOL Sur le front montant, réinitialise Cap_Flag. SuspendCom pare BOOL TRUE = les résultats de la comparaison sont suspendus : Les bits de sortie TH0, TH1, TH2, TH3, Reflex0, Reflex1, Out0 et Out1 du bloc conservent leur dernière valeur. Les sorties physiques Output0 et Output1 conservent leur dernière valeur. Les événements sont masqués. NOTE : EN_Compare, EN_Out0,EN_Out1, F_Out0, F_Out1 restent opérationnels tant que SuspendCompare est défini. 74 EIO0000004178 09/2020 Boucle modulo avec un type Principal Le tableau suivant décrit les variables de sortie : Sortie Type Commentaire HSC_REF EXPERT_REF Référence du HSC. A utiliser avec l'entrée EXPERT_REF_IN des blocs fonction d'administration. HSC_Err BOOL TRUE = indique qu'une erreur a été détectée. Pour en savoir plus sur l'erreur détectée, utilisez le bloc fonction EXPERTGetDiag (voir page 228). Validity BOOL TRUE = indique que les valeurs de sortie du bloc fonction sont valides. Run BOOL TRUE = compteur activé. TH0 BOOL Définie sur 1 si CurrentValue > Seuil 0 (voir page 177). TH1 BOOL Définie sur 1 si CurrentValue > Seuil 1 (voir page 177). TH2 BOOL Définie sur 1 si CurrentValue > Seuil 2 (voir page 177). TH3 BOOL Définie sur 1 si CurrentValue > Seuil 3 (voir page 177). Modulo_Flag BOOL Définie sur 1 lorsque le compteur dépasse le modulo ou 0. Preset_Flag BOOL Définie sur 1 par préréglage du compteur (voir page 196). Cap_Flag BOOL Définie à 1 lorsqu'une nouvelle valeur de capture est stockée dans le registre de capture (voir page 189). Cet indicateur doit être réinitialisé pour qu'une nouvelle capture puisse être effectuée. (voir page 214) Reflex0 BOOL Etat de Reflex0 (voir page 178). Reflex1 BOOL Etat de Reflex1 (voir page 178). Out0 BOOL Etat de la sortie physique Output0 à 0 (si Reflex1 configurée dans les fonctions HSC intégrées de EcoStruxure Machine Expert ; FALSE si non configurée). Out1 BOOL Etat de la sortie physique Output1 à 1 (si Reflex1 configurée dans les fonctions HSC intégrées de EcoStruxure Machine Expert ; FALSE si non configurée). CurrentValue DINT Valeur du compteur. EIO0000004178 09/2020 75 Boucle modulo avec un type Principal Réglage des paramètres Présentation Les paramètres répertoriés dans le tableau ci-après peuvent être modifiés à l'aide des blocs fonction EXPERTGetParam (voir page 231) ou EXPERTSetParam (voir page 231) NOTE : Les paramètres définis par le programme ont priorité sur ceux configurés dans la fenêtre de configuration du compteur rapide. Les paramètres de la configuration initiale sont restaurés en cas de démarrage à froid ou à chaud. Paramètres réglables Ce tableau fournit la liste des paramètres de EXPERT_PARAMETER_TYPE (voir page 213) qui peuvent être lus ou modifiés durant l'exécution du programme : 76 Paramètre Description EXPERT_MODULO Permet d'extraire ou de définir la valeur du modulo d'un compteur rapide. EXPERT_THRESHOLD0 Permet d'extraire ou de définir la valeur du seuil 0 d'une fonction compteur HSC. EXPERT_THRESHOLD1 Permet d'extraire ou de définir la valeur du seuil 1 d'une fonction compteur HSC. EXPERT_THRESHOLD2 Permet d'extraire ou de définir la valeur du seuil 2 d'une fonction compteur HSC. EXPERT_THRESHOLD3 Permet d'extraire ou de définir la valeur du seuil 3 d'une fonction compteur HSC. EXPERT_REFLEX0 Permet d'extraire ou de définir le mode réflexe de la sortie 0 d'une fonction EXPERT. EXPERT_REFLEX1 Permet d'extraire ou de définir le mode réflexe de la sortie 1 d'une fonction EXPERT. EIO0000004178 09/2020 Modicon LMC058 Motion Controller Mode Large libre EIO0000004178 09/2020 Partie IV Mode Large libre Mode Large libre Présentation Cette section décrit l'utilisation d'un compteur rapide en mode Large libre. Contenu de cette partie Cette partie contient les chapitres suivants : Chapitre Titre du chapitre Page 10 Principe du mode Large libre 79 11 Large libre avec un type Principal 85 EIO0000004178 09/2020 77 Mode Large libre 78 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Principe du mode Large libre EIO0000004178 09/2020 Chapitre 10 Principe du mode Large libre Principe du mode Large libre Présentation Ce chapitre décrit le principe du mode Large libre. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Description du principe du mode Large libre 80 Gestion des limites 83 EIO0000004178 09/2020 79 Principe du mode Large libre Description du principe du mode Large libre Présentation Le mode Large libre est utilisé pour la surveillance d'axe ou l'étiquetage lorsque la position entrante de chaque pièce doit être connue. Principe En mode Large libre, le module se comporte comme un compteur croissant/décroissant. Lorsque le comptage est activé (voir page 200), le compteur fonctionne comme suit : Sens d'incrémentation : le compteur est incrémenté. Sens de décrémentation : le compteur décrémente. Le compteur est activé par un front de présélection (voir page 198) qui charge la valeur de présélection. La valeur actuelle du compteur est stockée dans le registre de capture à l'aide de la fonction Capture (voir page 187). Lorsqu'il atteint ses limites de comptage, l'action du compteur dépend de la configuration de la Gestion des limites (voir page 83). Modes d'entrée Ce tableau répertorie les huit types de modes d'entrée disponibles : Mode d'entrée Commentaire A = Compte, B = Décompte Mode par défaut Le compteur incrémente sur A et décrémente sur B. A=Impulsion, B=Direction En cas de front montant sur A et si B a pour valeur TRUE, le compteur décrémente. En cas de front montant sur A et si B a pour valeur FALSE, le compteur incrémente. Quadrature normale X1 Un codeur physique fournit toujours 2 signaux avec un décalage de 90°, qui permettent au compteur de compter les impulsions et de détecter le sens : X1 : 1 impulsion par cycle de codeur X2 : 2 impulsions par cycle de codeur X4 : 4 impulsions par cycle de codeur Quadrature normale X2 Quadrature normale X4 Quadrature arrière X1 Quadrature arrière X2 Quadrature arrière X4 80 EIO0000004178 09/2020 Principe du mode Large libre Schéma du principe de comptage/décomptage La figure illustre le mode A = Comptage, B = Décomptage : Etape Action 1 Sur le front montant de la condition Preset, la valeur de comptage est définie sur la valeur de présélection et le compteur est activé. 2 Lorsque la condition Enable a pour valeur 1, chaque impulsion sur A incrémente la valeur du compteur. 3 Sur le front montant de la condition Preset, la valeur de comptage est définie sur la valeur de présélection. 4 Lorsque la condition Enable a pour valeur 1, chaque impulsion sur B décrémente la valeur du compteur. 5 Lorsque la condition Enable a pour valeur 0, les impulsions sur A ou B sont ignorées. 6 Sur le front montant de la condition Preset, la valeur de comptage est définie sur la valeur de présélection. 7 Lorsque la condition Enable a pour valeur 1, les impulsions sur B décrémentent la valeur du compteur. EIO0000004178 09/2020 81 Principe du mode Large libre Schéma de principe de la quadrature Le signal du codeur est compté en fonction du mode d'entrée sélectionné, comme indiqué ciaprès : 82 EIO0000004178 09/2020 Principe du mode Large libre Gestion des limites Présentation En mode Large libre, lorsqu'il atteint sa limite, le compteur peut adopter deux comportements selon la configuration : Verrouiller les limites Modulo Verrouillage des limites En cas de dépassement haut ou bas des limites du compteur, la valeur de comptage est maintenue à la valeur limite, le bit de validité prend la valeur 0 et le bit Error signale cette erreur jusqu'à ce que le compteur soit de nouveau préréglé. Modulo En cas de dépassement haut ou bas des limites du compteur, la valeur de comptage est automatiquement transformée en limite opposée. La sortie Modulo_Flag (resp. Overflow_Flag pour le codeur) est définie sur 1. EIO0000004178 09/2020 83 Principe du mode Large libre 84 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Large libre avec un type Principal EIO0000004178 09/2020 Chapitre 11 Large libre avec un type Principal Large libre avec un type Principal Présentation Ce chapitre décrit la mise en œuvre d'un compteur rapide en mode Large libre à l'aide d'un type Principal. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Schéma synoptique 86 Configuration du type Principal en mode Large libre 87 Programmation du type Principal 88 Réglage des paramètres 91 EIO0000004178 09/2020 85 Large libre avec un type Principal Schéma synoptique Schéma synoptique Le schéma suivant présente le type Principal en mode Large libre : A et B sont les entrées de comptage du compteur. EN est l'entrée d'activation du compteur. REF est l'entrée de référence du compteur. SYNC est l'entrée de synchronisation du compteur. CAP est l'entrée de capture du compteur. Fonction facultative Outre le mode Large libre, le type Principal offre les fonctions suivantes : Fonction de présélection (voir page 196) Fonction d'activation (voir page 200) Fonction de capture (voir page 187) Fonction de comparaison (voir page 177) 86 EIO0000004178 09/2020 Large libre avec un type Principal Configuration du type Principal en mode Large libre Procédure de configuration Pour configurer le type Principal en mode Large libre, procédez comme suit : Etape Action 1 Double-cliquez sur Expert → DM72F• → HSCMain•. 2 Sélectionnez l'onglet Configuration HSC principale. 3 Réglez la valeur du paramètre Général → Mode de comptage sur Large libre. 4 Sélectionnez la valeur du paramètre Général → Mode d'entrée. 5 Sélectionnez la valeur du paramètre Entrées de comptage → Entrée A → Filtre de rebond. Le cas échéant, sélectionnez la valeur du paramètre Entrées de comptage → Entrée B → Filtre de rebond. 6 Entrez la valeur du paramètre Domaine → Présélection. Le champ Limites définit le comportement du compteur lorsque les limites sont atteintes. 7 Si vous le souhaitez, vous pouvez activer ces fonctions : Fonction de capture (voir page 187) Fonction de comparaison (voir page 177) Fonction d'activation (voir page 200) Fonction de présélection (voir page 196) NOTE : la fenêtre Résumé E/S affiche le mappage des E/S du DM72F•. Vous pouvez afficher les E/S utilisées par la fonction experte. Filtre programmable La valeur de filtrage de l'entrée de type Principal détermine la fréquence maximum du compteur, comme indiqué dans le tableau ci-dessous : Entrée Valeur du filtre Fréquence maximale du compteur A, B 0,002 ms (valeur par défaut) 200 kHz 0,004 ms 100 kHz 0,012 ms 40 kHz EIO0000004178 09/2020 0,04 ms 10 kHz 0,12 ms 4 kHz 0,4 ms 1 kHz 1,2 ms 400 Hz 4 ms 100 Hz 87 Large libre avec un type Principal Programmation du type Principal Présentation Le type Principal est toujours géré par un bloc fonctionnel HSCMain. NOTE : Lors de la compilation, une erreur est détectée si le bloc fonctionnel HSCMain est utilisé pour gérer un autre type HSC différent. Ajout du bloc fonction HSCMain Etape Description 1 Sélectionnez l'onglet Bibliothèques dans le Catalogue de logiciels et cliquez sur Bibliothèques. Sélectionnez Contrôleur → LMC058 → LMC058 Expert IO → HSC → HSCMain_LMC058 dans la liste, puis faites glisser l'élément vers la fenêtre POU. 2 Entrez le nom de l'instance de type Principal (défini dans la configuration) ou recherchez l'instance de bloc fonction en cliquant sur : Dans la fenêtre Aide à la saisie, vous pouvez sélectionner l'instance HSC dans le chemin d'accès suivant : Variables globales → <MonContrôleur> → Logique API → IoConfig_Globals. 88 EIO0000004178 09/2020 Large libre avec un type Principal Utilisation des variables d’E/S Le tableau ci-dessous décrit comment les différentes broches du bloc fonction sont utilisées en mode Large libre. Le tableau suivant décrit les variables d'entrée : Entrée Type Description EN_Enable BOOL Lorsque l'entrée EN est configurée : la valeur TRUE autorise l'activation du compteur via l'entrée d'activation (Enable) (voir page 200). EN_Preset BOOL Lorsque l'entrée SYNC est configurée : la valeur TRUE autorise la synchronisation et le démarrage du compteur via l'entrée Sync (voir page 196). EN_Cap BOOL Lorsque l'entrée CAP est configurée : la valeur TRUE active l'entrée Capture (voir page 190). EN_Compare BOOL TRUE = active l'opération de comparaison (voir page 177) (via les seuils 0, 1, 2, 3) : comparaison de base (bits de sortie TH0, TH1, TH2, TH3) réflexe (bits de sortie Reflex0, Reflex1) événements (pour déclencher des tâches externes en cas de franchissement de seuil) EN_Out0 BOOL TRUE = autorise la sortie physique Output0 à renvoyer la valeur de Reflex0 (si elle est configurée). EN_Out1 BOOL TRUE = autorise la sortie physique Output1 à renvoyer la valeur de Reflex1 (si elle est configurée). F_Enable BOOL Force la condition d'activation (voir page 200). Prioritaire sur l'entrée EN_Enable. F_Preset BOOL Force la condition Preset (voir page 196). Prioritaire sur l'entrée EN_Preset. F_Out0 BOOL TRUE = force Output0 à prendre la valeur 1 (si Reflex0 est configurée dans la fonction HSC intégrée de ). Prioritaire sur EN_Out0. F_Out1 BOOL TRUE = force Output1 à prendre la valeur 1 (si Reflex1 est configurée dans la fonction HSC intégrée de ). Prioritaire sur EN_Out1. ACK_Modulo BOOL Sur le front montant, réinitialise Modulo_Flag. ACK_Preset BOOL Sur le front montant, réinitialise Preset_Flag. ACK_Cap BOOL Sur le front montant, réinitialise Cap_Flag. SuspendCompare BOOL TRUE = les résultats de la comparaison sont suspendus : Les bits de sortie TH0, TH1, TH2, TH3, Reflex0, Reflex1, Out0 et Out1 du bloc conservent leur dernière valeur. Les sorties physiques Output0 et Output1 conservent leur dernière valeur. Les événements sont masqués. NOTE : EN_Compare, EN_Out0,EN_Out1,F_Out0, F_Out1 restent opérationnels tant que SuspendCompare est définie. EIO0000004178 09/2020 89 Large libre avec un type Principal Le tableau suivant décrit les variables de sortie : Sorties Type Commentaire HSC_REF EXPERT_REF Référence du HSC. A utiliser avec l'entrée EXPERT_REF_IN des blocs fonction d'administration. HSC_Err BOOL TRUE = indique qu'une erreur a été détectée. Pour en savoir plus sur l'erreur détectée, utilisez le bloc fonction EXPERTGetDiag (voir page 228). Validity BOOL TRUE = indique que les valeurs de sortie du bloc fonction sont valides. Run BOOL Non utilisée. TH0 BOOL Définie sur 1 si CurrentValue > Seuil 0 (voir page 177). TH1 BOOL Définie sur 1 si CurrentValue > Seuil 1 (voir page 177). TH2 BOOL Définie sur 1 si CurrentValue > Seuil 2 (voir page 177). TH3 BOOL Définie sur 1 si CurrentValue > Seuil 3 (voir page 177). Modulo_Flag BOOL Définie sur 1 lorsque le compteur dépasse ses limites. Preset_Flag BOOL Définie sur 1 par la présélection du compteur (voir page 196) Cap_Flag BOOL Définie sur 1 lorsqu'une nouvelle valeur de capture est enregistrée dans le Registre de capture (voir page 188). Cet indicateur doit être réinitialisé pour qu'une nouvelle capture puisse être effectuée. (voir page 214) 90 Reflex0 BOOL Etat de Reflex0 (voir page 178). Reflex1 BOOL Etat de Reflex1 (voir page 178). Out0 BOOL Etat de la sortie physique Output0 (si Reflex0 est configurée dans la fonction HSC intégrée ; FALSE si non configurée). Out1 BOOL Etat de la sortie physique Output1 (si Reflex1 est configurée dans la fonction HSC intégrée ; FALSE si non configurée). CurrentValue DINT Valeur du compteur. EIO0000004178 09/2020 Large libre avec un type Principal Réglage des paramètres Présentation Les paramètres répertoriés dans le tableau ci-après peuvent être modifiés à l'aide des blocs fonction EXPERTGetParam (voir page 231) ou EXPERTSetParam (voir page 233) NOTE : Les paramètres définis par le programme ont priorité sur ceux configurés dans la fenêtre de configuration du compteur rapide. Les paramètres de la configuration initiale sont restaurés en cas de démarrage à froid ou à chaud. Paramètres réglables Ce tableau fournit la liste des paramètres de l'énumération EXPERT_PARAMETER_TYPE (voir page 213) qui peuvent être lus ou modifiés durant l'exécution du programme : Paramètre Description EXPERT_PRESET Permet d'extraire ou de définir la valeur Preset d'un compteur rapide. EXPERT_THRESHOLD0 Permet d'extraire ou de définir la valeur du seuil 0 d'une fonction compteur HSC. EXPERT_THRESHOLD1 Permet d'extraire ou de définir la valeur du seuil 1 d'une fonction compteur HSC. EXPERT_THRESHOLD2 Permet d'extraire ou de définir la valeur du seuil 2 d'une fonction compteur HSC. EXPERT_THRESHOLD3 Permet d'extraire ou de définir la valeur du seuil 3 d'une fonction compteur HSC. EXPERT_REFLEX0 Permet d'extraire ou de définir le mode réflexe de la sortie 0 d'une fonction expert. EXPERT_REFLEX1 Permet d'extraire ou de définir le mode réflexe de la sortie 0 d'une fonction expert. EIO0000004178 09/2020 91 Large libre avec un type Principal 92 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Mode Comptage d'événements EIO0000004178 09/2020 Partie V Mode Comptage d'événements Mode Comptage d'événements Présentation Cette section décrit l'utilisation d'un compteur rapide en mode Comptage d'événements. Contenu de cette partie Cette partie contient les chapitres suivants : Chapitre Titre du chapitre Page 12 Principe du Comptage d'événements 95 13 Comptage d'événements avec un type Principal 97 EIO0000004178 09/2020 93 Mode Comptage d'événements 94 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Principe du Comptage d'événements EIO0000004178 09/2020 Chapitre 12 Principe du Comptage d'événements Principe du Comptage d'événements Description du principe du mode Comptage d'événements Présentation Le mode Comptage d'événements permet de compter un nombre d'événements durant une période donnée. Principe Le compteur évalue le nombre d'impulsions appliquées à l'entrée pendant une période prédéfinie. A la fin de chaque période, le registre de comptage est actualisé avec le nombre d'événements reçus. La synchronisation peut être utilisée durant la période. Elle redémarre l'événement de comptage pendant une période prédéfinie. Le comptage redémarre sur le front de la condition Sync (voir page 196). EIO0000004178 09/2020 95 Principe du Comptage d'événements Schéma de principe Etape Action 1 Lorsque la condition Enable a pour valeur 1, le compteur cumule le nombre d'événements (impulsions) sur l'entrée physique pendant la période prédéfinie. Si la validité a pour valeur 0, la valeur de comptage n'est pas pertinente. 2 Une fois la première période écoulée, la valeur de comptage est définie sur le nombre d'événements comptés au cours de la période et la validité est définie sur 1. Le comptage redémarre pour une nouvelle période. 3 Sur le front montant de la condition Sync : la valeur cumulée est réinitialisée à 0 ; la valeur de comptage n'est pas mise à jour ; le comptage redémarre pendant une nouvelle période. 4 Une fois la période écoulée, le nombre d'événements comptés au cours de la période est attribué à la valeur de comptage. Le comptage redémarre pour une nouvelle période. NOTE : Pour le type Principal, le fonctionnement dépend de la valeur de la condition d'activation Enable : Définie sur 0 : le comptage actuel est abandonné et CurrentValue conserve la valeur valide précédente. Définie sur 1 : la valeur cumulée est réinitialisée à 0, CurrentValue reste inchangée et le comptage redémarre pour une nouvelle période. 96 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Comptage d'événements avec un type Principal EIO0000004178 09/2020 Chapitre 13 Comptage d'événements avec un type Principal Comptage d'événements avec un type Principal Présentation Ce chapitre décrit la mise en œuvre d'un compteur rapide en mode Comptage d'événements à l'aide d'un type Principal. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Schéma synoptique Configuration du type Principal en mode Comptage d'événements Page 98 99 Programmation du type Principal 100 Réglage des paramètres 103 EIO0000004178 09/2020 97 Comptage d'événements avec un type Principal Schéma synoptique Schéma synoptique Ce schéma présente le type Principal en mode Comptage d'événements. A est l'entrée de comptage du compteur. EN est l'entrée d'activation du compteur. SYNC est l'entrée de synchronisation du compteur. Fonction facultative Outre le mode Comptage d'événements, le type Principal propose les fonctions suivantes : Fonction de présélection (voir page 196) Fonction d'activation (Enable) (voir page 200) 98 EIO0000004178 09/2020 Comptage d'événements avec un type Principal Configuration du type Principal en mode Comptage d'événements Procédure de configuration Pour configurer le type Principal en mode Comptage d'événements, procédez comme suit : Etape Action 1 Double-cliquez sur Expert → DM72F• → HSCMain•. 2 Sélectionnez l'onglet Configuration HSC principale. 3 Réglez la valeur du paramètre Général → Mode de comptage sur Evénement. 4 Sélectionnez la valeur du paramètre Entrées de comptage → Entrée A → Filtre de rebond. 5 Définissez la base de temps dans Gamme → Base de temps. 6 Le cas échéant, sélectionnez la valeur de l'entrée auxiliaire SYNC dans le menu déroulant pour activer la fonction de présélection (voir page 196) avec une entrée physique. NOTE : la fenêtre Résumé E/S affiche le mappage des E/S du DM72F•. Vous pouvez afficher les E/S utilisées par la fonction experte. Filtre programmable La valeur de filtre de l'entrée de type Principal détermine sa fréquence maximale, comme indiqué dans le tableau : Entrée A EIO0000004178 09/2020 Valeur du filtre Fréquence maximale du compteur 0,002 ms (valeur par défaut) 200 kHz 0,004 ms 100 kHz 0,012 ms 40 kHz 0,04 ms 10 kHz 0,12 ms 4 kHz 0,4 ms 1 kHz 1,2 ms 400 Hz 4 ms 100 Hz 99 Comptage d'événements avec un type Principal Programmation du type Principal Présentation Le type Principal est toujours géré par un bloc fonctionnel HSCMain. NOTE : Lors de la compilation, une erreur est détectée si le bloc fonctionnel HSCMain est utilisé pour gérer un autre type HSC différent. Ajout du bloc fonction HSCMain Etape Description 1 Sélectionnez l'onglet Bibliothèques dans le Catalogue de logiciels et cliquez sur Bibliothèques. Sélectionnez Contrôleur → LMC058 → LMC058 Expert IO → HSC → HSCMain_LMC058 dans la liste, puis faites glisser l'élément vers la fenêtre POU. 2 Entrez le nom de l'instance de type Principal (défini dans la configuration) ou recherchez l'instance de bloc fonction en cliquant sur : Dans la fenêtre Aide à la saisie, vous pouvez sélectionner l'instance HSC dans le chemin d'accès suivant : Variables globales → <MonContrôleur> → Logique API → IoConfig_Globals. 100 EIO0000004178 09/2020 Comptage d'événements avec un type Principal Utilisation des variables d’E/S Ces tableaux décrivent comment les broches du bloc fonction sont utilisées dans le mode Evénement. Le tableau suivant décrit les variables d'entrée : Entrée Type Description EN_Enable BOOL Lorsque l'entrée EN est configurée : la valeur TRUE autorise l'activation du compteur via l'entrée d'activation (Enable) (voir page 200). EN_Preset BOOL Lorsque l'entrée SYNC est configurée : la valeur TRUE autorise la synchronisation et le démarrage du compteur via l'entrée Sync (voir page 196). EN_Cap BOOL Non utilisée. EN_Compare BOOL Non utilisée. EN_Out0 BOOL Non utilisée. EN_Out1 BOOL Non utilisée. F_Enable BOOL Force la condition d'activation (voir page 200). Prioritaire sur l'entrée EN_Enable. F_Preset BOOL Force la condition de présélection (voir page 196). Prioritaire sur l'entrée EN_Preset. F_Out0 BOOL Non utilisée. F_Out1 BOOL Non utilisée. ACK_Modulo BOOL Non utilisée. ACK_Preset BOOL Sur le front montant, réinitialise Preset_Flag. ACK_Cap BOOL Non utilisée. SuspendCompare BOOL Non utilisée. Le tableau suivant décrit les variables de sortie : Sorties Type Commentaire HSC_REF EXPERT_REF Référence du HSC. A utiliser avec l'entrée EXPERT_REF_IN des blocs fonction d'administration. HSC_Err BOOL TRUE = indique qu'une erreur a été détectée. Le bloc fonction EXPERTGetDiag (voir page 228) permet d'obtenir des informations supplémentaires sur l'erreur détectée. Validity BOOL TRUE = indique que les valeurs de sortie du bloc fonction sont valides. Run BOOL Non utilisée. (voir page 214) EIO0000004178 09/2020 101 Comptage d'événements avec un type Principal 102 Sorties Type Commentaire TH0 BOOL Non utilisée. TH1 BOOL Non utilisée. TH2 BOOL Non utilisée. TH3 BOOL Non utilisée. Modulo_Flag BOOL Non utilisée. Preset_Flag BOOL Réglée sur 1 par la présélection du compteur (voir page 196). Cap_Flag BOOL Non utilisée. Reflex0 BOOL Non utilisée. Reflex1 BOOL Non utilisée. Out0 BOOL Non utilisée. Out1 BOOL Non utilisée. CurrentValue DINT Valeur actuelle du compteur. EIO0000004178 09/2020 Comptage d'événements avec un type Principal Réglage des paramètres Présentation Les paramètres répertoriés dans le tableau ci-après peuvent être modifiés à l'aide des blocs fonction EXPERTGetParam (voir page 231) ou EXPERTSetParam (voir page 233) NOTE : Les paramètres définis par le programme ont priorité sur ceux configurés dans la fenêtre de configuration du compteur rapide. Les paramètres de la configuration initiale sont restaurés en cas de démarrage à froid ou à chaud. Paramètres réglables Ce tableau fournit la liste des paramètres de EXPERT_PARAMETER_TYPE (voir page 213) qui peuvent être lus ou modifiés durant l'exécution du programme : Paramètre Type Description EXPERT_TIMEBASE EXPERT_TIMEBASE_TYPE Pour plus d'informations, consultez Type de compteur rapide (HSC) (voir page 215). Permet d'extraire ou de définir la base de temps (Timebase) d'un compteur rapide. EXPERT_PERIODMETER _RESOLUTION_TYPE EXPERT_PERIODMETER_RESOLUTION_TYPE Permet de lire ou de modifier Pour plus d'informations, consultez Type pour dynamiquement la base de HSC (voir page 212). temps. EIO0000004178 09/2020 103 Comptage d'événements avec un type Principal 104 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Type Fréquencemètre EIO0000004178 09/2020 Partie VI Type Fréquencemètre Type Fréquencemètre Présentation Cette section décrit l'utilisation d'un compteur rapide en mode Fréquencemètre. Contenu de cette partie Cette partie contient les chapitres suivants : Chapitre Titre du chapitre Page 14 Principe du fréquencemètre 107 15 Fréquencemètre avec un type Principal 109 EIO0000004178 09/2020 105 Type Fréquencemètre 106 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Principe du fréquencemètre EIO0000004178 09/2020 Chapitre 14 Principe du fréquencemètre Principe du fréquencemètre Description Présentation Le type Fréquencemètre mesure une fréquence d'événement en Hz. Le type Fréquencemètre calcule le nombre d'impulsions dans des intervalles de 1 s. Une valeur mise à jour en Hz est disponible toutes les 10 ms. Lors d'une variation de la fréquence, le temps de restitution de la valeur est de 1 s avec une précision de 1 Hz. Limites de fonctionnement La fréquence maximale que le module peut mesurer sur l'entrée A est de 200 kHz. Au-delà de 200 kHz, la valeur du registre de comptage peut diminuer jusqu'à atteindre 0. Le cycle de service maximal à 200 KHz est de 60 %. EIO0000004178 09/2020 107 Principe du fréquencemètre 108 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Fréquencemètre avec un type Principal EIO0000004178 09/2020 Chapitre 15 Fréquencemètre avec un type Principal Fréquencemètre avec un type Principal Présentation Ce chapitre décrit la mise en œuvre d'un compteur rapide (HSC) en mode Fréquencemètre à l'aide d'un type Principal Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Schéma synoptique 110 Configuration 111 Programmation 112 Réglage des paramètres 115 EIO0000004178 09/2020 109 Fréquencemètre avec un type Principal Schéma synoptique Schéma synoptique Ce schéma présente le type Principal en mode Fréquencemètre : A est l'entrée de comptage du compteur. EN est l'entrée d'activation du compteur. Fonction facultative Outre le type Fréquencemètre, le type Principal offre la fonction d'activation (Enable) (voir page 200). 110 EIO0000004178 09/2020 Fréquencemètre avec un type Principal Configuration Procédure de configuration Pour configurer un type Principal en mode Fréquencemètre, procédez comme suit : Etape Action 1 Double-cliquez sur Expert → DM72F• → HSCMain•. 2 Sélectionnez l'onglet Configuration HSC principale. 3 Réglez la valeur du paramètre Général → Mode de comptage sur Fréquencemètre. 4 Sélectionnez la valeur du paramètre Entrées de comptage → Entrée A → Filtre de rebond. 5 Définissez la base de temps dans Gamme → Base de temps. 6 Le cas échéant, sélectionnez la valeur de l'entrée auxiliaire SYNC dans le menu déroulant pour activer la fonction d'activation (voir page 200) avec une entrée physique. NOTE : la fenêtre Résumé E/S affiche le mappage des E/S du DM72F•. Vous pouvez afficher les E/S utilisées par la fonction experte. Filtre programmable La valeur de filtrage de l'entrée de type Fréquencemètre détermine la fréquence maximum du compteur, comme indiqué dans le tableau ci-dessous : Entrée Valeur du filtre Fréquence maximale du compteur A 0,002 ms (valeur par défaut) 200 kHz 0,004 ms 100 kHz 0,012 ms 40 kHz 0,04 ms 10 kHz EIO0000004178 09/2020 0,12 ms 4 kHz 0,4 ms 1 kHz 1,2 ms 400 Hz 4 ms 100 Hz 111 Fréquencemètre avec un type Principal Programmation Présentation Le type Principal est toujours géré par un bloc fonctionnel HSCMain. NOTE : Lors de la compilation, une erreur est détectée si le bloc fonctionnel HSCMain est utilisé pour gérer un autre type HSC différent. Ajout du bloc fonction HSCMain Etape Description 1 Sélectionnez l'onglet Bibliothèques dans le Catalogue de logiciels et cliquez sur Bibliothèques. Sélectionnez Contrôleur → LMC058 → LMC058 Expert IO → HSC → HSCMain_LMC058 dans la liste, puis faites glisser l'élément vers la fenêtre POU. 2 Entrez le nom de l'instance de type Principal (défini dans la configuration) ou recherchez l'instance de bloc fonction en cliquant sur : Dans la fenêtre Aide à la saisie, vous pouvez sélectionner l'instance HSC dans le chemin d'accès suivant : Variables globales → <MonContrôleur> → Logique API → IoConfig_Globals. 112 EIO0000004178 09/2020 Fréquencemètre avec un type Principal Utilisation des variables d’E/S Les tableaux ci-dessous décrivent comment les différentes broches du bloc fonction sont utilisées en mode Fréquencemètre. Le tableau suivant décrit les variables d'entrée : Entrée Type Description EN_Enable BOOL Si la valeur est TRUE et l'entrée EN est configurée, le compteur peut être activé en utilisant l'entrée d'activation Enable (voir page 200). EN_Preset BOOL Non utilisée. EN_Cap BOOL Non utilisée. EN_Compare BOOL Non utilisée. EN_Out0 BOOL Non utilisée. EN_Out1 BOOL Non utilisée. F_Enable BOOL Force la condition d'activation (voir page 200) (Enable). F_Preset BOOL Force la condition de présélection (voir page 196) F_Out0 BOOL Non utilisée. F_Out1 BOOL Non utilisée. ACK_Modulo BOOL Non utilisée. ACK_Preset BOOL Sur le front montant, réinitialise Preset_Flag. ACK_Cap BOOL Non utilisée. SuspendCompare BOOL Non utilisée. Le tableau suivant décrit les variables de sortie : Sorties Type Commentaire EXPERT_REF Référence du HSC. A utiliser avec l'entrée EXPERT_REF_IN des blocs fonction d'administration. HSC_Err BOOL TRUE = indique qu'une erreur a été détectée. Pour en savoir plus sur l'erreur détectée, utilisez le bloc fonction EXPERTGetDiag (voir page 228). Validity BOOL TRUE = indique que les valeurs de sortie du bloc fonction sont valides. Run BOOL Non utilisée. TH0 BOOL Non utilisée. TH1 BOOL Non utilisée. TH2 BOOL Non utilisée. TH3 BOOL Non utilisée. HSC_REF (voir page 214) EIO0000004178 09/2020 113 Fréquencemètre avec un type Principal 114 Sorties Type Commentaire Modulo_Flag BOOL Non utilisée. Preset_Flag BOOL Définie sur 1 par la présélection du compteur Cap_Flag BOOL Non utilisée. Reflex0 BOOL Non utilisée. Reflex1 BOOL Non utilisée. Out0 BOOL Non utilisée. Out1 BOOL Non utilisée. CurrentValue DINT Valeur du compteur. (voir page 196) EIO0000004178 09/2020 Fréquencemètre avec un type Principal Réglage des paramètres Présentation Les paramètres répertoriés dans le tableau ci-après peuvent être modifiés à l'aide des blocs fonction EXPERTGetParam (voir page 231) ou EXPERTSetParam (voir page 233). NOTE : Les paramètres définis par le programme ont priorité sur ceux configurés dans la fenêtre de configuration du compteur rapide. Les paramètres de la configuration initiale sont restaurés en cas de démarrage à froid ou à chaud. Paramètres réglables Ce tableau contient la liste des paramètres de EXPERT_FREQMETER_PARAMETER_TYPE (voir page 209) qui peuvent être lus ou modifiés pendant que le programme est en cours d'exécution : Paramètre Type EXPERT_FREQMETER_ EXPERT_FREQMETER_PARAMETER_ PARAMETER_TYPE TYPE Pour plus d'informations, consultez Type pour HSC (voir page 209). EIO0000004178 09/2020 Description Obtenir ou définir les fonctions Expert. 115 Fréquencemètre avec un type Principal 116 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Type Compteur de durées EIO0000004178 09/2020 Partie VII Type Compteur de durées Type Compteur de durées Présentation Cette section décrit l'utilisation d'un compteur rapide en mode Compteur de durées. Contenu de cette partie Cette partie contient les chapitres suivants : Chapitre Titre du chapitre Page 16 Principe du type Compteur de durées 119 17 Compteur de durées avec un type Principal 121 EIO0000004178 09/2020 117 Type Compteur de durées 118 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Principe du type Compteur de durées EIO0000004178 09/2020 Chapitre 16 Principe du type Compteur de durées Principe du type Compteur de durées Description Présentation Utilisez le type Compteur de durées pour : Déterminer la durée d'un événement Déterminer la durée entre deux événements Définir et mesurer le temps d'exécution d'un processus Le Compteur de durées s'utilise de deux manières : Front vers opposé : permet de mesurer la durée d'un événement. Front vers front : permet de mesurer la durée entre deux événements. La mesure est exprimée dans l'unité définie par le paramètre Résolution (0,1 µs, 1 µs, 100 µs, 1 000 µs). Par exemple, si la valeur de comptage = 100 et si le paramètre Résolution est égal à : 0,0001 (0,1 µs) mesure = 0,01 ms 0,001 (1 µs) mesure = 0,1 ms 0,1 (100 µs) mesure = 10 ms 1 (1000 µs) mesure = 100 ms Une valeur de timeout peut être définie dans l'écran de configuration. La mesure est interrompue si cette valeur de timeout est dépassée. Dans ce cas, le registre de comptage reste non valide jusqu'à la mesure complète suivante. Mode Front vers opposé Front vers opposé : permet de mesurer la durée d'un événement Lorsque la condition Enable a pour valeur 1, la mesure est réalisée entre le front montant et le front descendant de l'entrée A. Le registre de comptage est mis à jour dès que le front descendant est détecté. EIO0000004178 09/2020 119 Principe du type Compteur de durées Mode Front vers front Le mode Front vers Front mesure le temps écoulé entre deux événements. Lorsque la condition Enable a pour valeur 1, la mesure est réalisée entre deux fronts montants de l'entrée A. Le registre de comptage est mis à jour dès que le second front montant est détecté. Comportement d'interruption de la condition Enable Le chronogramme ci-dessous indique le comportement du registre de comptage lorsque la condition Enable est interrompue : Limites de fonctionnement Le module peut effectuer au maximum une mesure toutes les 5 ms. L'impulsion la plus courte mesurable est de 100 μs, même si l'unité définie dans la configuration est 1 μs. La durée maximale mesurable est de 1 073 741 823 unités. 120 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Compteur de durées avec un type Principal EIO0000004178 09/2020 Chapitre 17 Compteur de durées avec un type Principal Compteur de durées avec un type Principal Présentation Ce chapitre décrit la mise en œuvre d'un compteur rapide (HSC) en mode Compteur de durées à l'aide d'un type Principal. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Schéma synoptique 122 Configuration 123 Programmation 124 Réglage des paramètres 127 EIO0000004178 09/2020 121 Compteur de durées avec un type Principal Schéma synoptique Schéma synoptique Le schéma suivant fournit une vue d'ensemble du type Principal dans le type Compteur de durées : A est l'entrée de comptage du compteur. EN est l'entrée d'activation du compteur. Fonction facultative Outre le type Compteur de durées, le type Principal peut fournir la fonction suivante : Fonction d'activation Enable (voir page 200) 122 EIO0000004178 09/2020 Compteur de durées avec un type Principal Configuration Procédure de configuration Pour configurer un type Principal en mode Compteur de durées, procédez comme suit : Etape Action 1 Double-cliquez sur Expert → DM72F• → HSCMain. 2 Sélectionnez l'onglet Configuration HSC principale. 3 Définissez la valeur du paramètre Général → Mode de comptage sur Compteur de durées. 4 Définissez le mode du compteur de durées dans Général → Mode de comptage des durées. 5 Sélectionnez la valeur du paramètre Counting inputs → Entrée A → Filtre de rebond. 6 Vous pouvez également sélectionner la valeur de l'entrée auxiliaire EN dans la liste déroulante pour activer la fonction d'activation Enable (voir page 200) avec une entrée physique. 7 Définissez la valeur de la résolution dans Plage → Résolution. 8 Définissez la valeur du timeout dans Plage → Timeout. NOTE : La fenêtre Résumé E/S affiche le mappage des E/S de DM72F•. Vous pouvez afficher les E/S utilisées par la fonction experte. Filtre programmable La valeur de filtre de l'entrée de type Principal détermine sa fréquence maximale, comme indiqué dans le tableau : Entrée A EIO0000004178 09/2020 Valeur du filtre Fréquence maximale du compteur 0,002 ms (valeur par défaut) 200 kHz 0,004 ms 100 kHz 0,012 ms 40 kHz 0,04 ms 10 kHz 0,12 ms 4 kHz 0,4 ms 1 kHz 1,2 ms 400 Hz 4 ms 100 Hz 123 Compteur de durées avec un type Principal Programmation Présentation Le type Principal est toujours géré par un bloc fonctionnel HSCMain. NOTE : Lors de la compilation, une erreur est détectée si le bloc fonctionnel HSCMain est utilisé pour gérer un autre type HSC différent. Ajout du bloc fonction HSCMain Etape Description 1 Sélectionnez l'onglet Bibliothèques dans le Catalogue de logiciels et cliquez sur Bibliothèques. Sélectionnez Contrôleur → LMC058 → LMC058 Expert IO → HSC → HSCMain_LMC058 dans la liste, puis faites glisser l'élément vers la fenêtre POU. 2 Entrez le nom de l'instance de type Principal (défini dans la configuration) ou recherchez l'instance de bloc fonction en cliquant sur : Dans la fenêtre Aide à la saisie, vous pouvez sélectionner l'instance HSC dans le chemin d'accès suivant : Variables globales → <MonContrôleur> → Logique API → IoConfig_Globals. 124 EIO0000004178 09/2020 Compteur de durées avec un type Principal Utilisation des variables d’E/S Les tableaux ci-dessous expliquent comment les différentes broches du bloc fonction sont utilisées dans le type Compteur de durées. Le tableau suivant décrit les variables d'entrée : Entrée Type Description EN_Enable BOOL Lorsque l'entrée EN est configurée : la valeur TRUE autorise l'activation du compteur via l'entrée d'activation (Enable) (voir page 200). EN_Preset BOOL Non utilisée. EN_Cap BOOL Non utilisée. EN_Compare BOOL Non utilisée. EN_Out0 BOOL Non utilisée. EN_Out1 BOOL Non utilisée. F_Enable BOOL Force la condition d'activation (voir page 200) (Enable). F_Preset BOOL Non utilisée. F_Out0 BOOL Non utilisée. F_Out1 BOOL Non utilisée. ACK_Modulo BOOL Non utilisée. ACK_Preset BOOL Non utilisée. ACK_Cap BOOL Non utilisée. SuspendCompare BOOL Non utilisée. Le tableau suivant décrit les variables de sortie : Sorties Type Commentaire EXPERT_REF Référence du HSC. A utiliser avec l'entrée EXPERT_REF_IN des blocs fonction d'administration. HSC_Err BOOL TRUE = indique qu'une erreur a été détectée. Pour en savoir plus sur l'erreur détectée, utilisez le bloc fonction EXPERTGetDiag (voir page 228). Validity BOOL TRUE = indique que les valeurs de sortie du bloc fonction sont valides. Si la valeur de temporisation est dépassée, Validity = FALSE. Run BOOL TRUE = compteur activé. TH0 BOOL Non utilisée. TH1 BOOL Non utilisée. HSC_REF (voir page 214) EIO0000004178 09/2020 125 Compteur de durées avec un type Principal 126 Sorties Type Commentaire TH2 BOOL Non utilisée. TH3 BOOL Non utilisée. Modulo_Flag BOOL Non utilisée. Preset_Flag BOOL Non utilisée. Cap_Flag BOOL Non utilisée. Reflex0 BOOL Non utilisée. Reflex1 BOOL Non utilisée. Out0 BOOL Non pertinente. Out1 BOOL Non pertinente. CurrentValue DINT Valeur du compteur. EIO0000004178 09/2020 Compteur de durées avec un type Principal Réglage des paramètres Présentation La liste des paramètres répertoriés dans le tableau ci-après peuvent être modifiés à l'aide des blocs fonction EXPERTGetParam (voir page 231) ou EXPERTSetParam (voir page 233) NOTE : Les paramètres définis par le programme ont priorité sur ceux configurés dans la fenêtre de configuration du compteur rapide. Les paramètres de la configuration initiale sont restaurés en cas de démarrage à froid ou à chaud. Paramètres réglables Ce tableau fournit la liste des paramètres de EXPERT_PARAMETER_TYPE (voir page 213) qui peuvent être lus ou modifiés durant l'exécution du programme : Paramètre Description EXPERT_TIMEBASE Permet d'obtenir ou de définir la valeur Résolution du compteur rapide (HSC). EXPERT_PERIODMETER_RESOLUTION _TYPE Permet de lire ou de modifier dynamiquement la base de temps. Pour plus d'informations, consultez la section Type de compteur de durées (voir page 212). EIO0000004178 09/2020 127 Compteur de durées avec un type Principal 128 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Codeur EIO0000004178 09/2020 Partie VIII Codeur Codeur Présentation Cette partie explique comment mettre en œuvre un codeur. Contenu de cette partie Cette partie contient les chapitres suivants : Chapitre Titre du chapitre Page 18 Mode Incrémental avec un codeur 131 19 Mode SSI avec un codeur 161 EIO0000004178 09/2020 129 Codeur 130 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Mode Incrémental avec un codeur EIO0000004178 09/2020 Chapitre 18 Mode Incrémental avec un codeur Mode Incrémental avec un codeur Présentation Ce chapitre explique comment utiliser un codeur en mode Incrémental Contenu de ce chapitre Ce chapitre contient les sous-chapitres suivants : Sous-chapitre Sujet Page 18.1 Principe du mode Incrémental 132 18.2 Codeur standard sur un module d'E/S expertes 135 18.3 Codeur standard sur l'interface du codeur 144 18.4 Codeur de mouvement sur un module d'E/S expertes 153 18.5 Codeur de mouvement sur l'interface du codeur 157 EIO0000004178 09/2020 131 Mode Incrémental avec un codeur Sous-chapitre 18.1 Principe du mode Incrémental Principe du mode Incrémental Description du principe du mode Incrémental Présentation Utilisez le mode Incrémental pour connecter des codeurs incrémentaux. Principe Le mode Incrémental se comporte comme un compteur croissant/décroissant. Lorsque la condition Enable (voir page 200) a pour valeur FALSE, le compteur ignore les impulsions appliquées aux entrées de comptage A et B. En mode Incrémental, le compteur doit être préréglé au moins une fois pour être opérationnel. La valeur de comptage actuelle est remplacée par la valeur de préréglage chaque fois que la Condition de présélection (voir page 196) survient. La valeur actuelle du compteur peut être est stockée dans le registre de capture en configurant les conditions de capture (voir page 191). Types d'axe Le tableau suivant présente les deux types d'axe disponibles : 132 Type d'axe Commentaire Linéaire Dans ce mode, le compteur se comporte comme un compteur fini. Rotatif Dans ce mode, le compteur se comporte comme un compteur infini. EIO0000004178 09/2020 Mode Incrémental avec un codeur Schéma de principe Le mode d'entrée en mode Incrémental est toujours une quadrature : EIO0000004178 09/2020 133 Mode Incrémental avec un codeur Etape Action 1 Sur le front montant de la condition Preset, la valeur de préréglage est chargée et le compteur est activé. 2 Lorsque la condition Enable a pour valeur 1, le compteur commence à incrémenter si le comptage est croissant. 3 Le front montant sur la condition Preset charge la valeur la valeur de préréglage. 4 Lorsque la condition Enable a pour valeur 1, le compteur commence à décrémenter si le comptage est décroissant. 5 Lorsque la condition Enable a pour valeur 0, le compteur ignore les impulsions appliquées aux entrées de comptage A et B. 6 Le front montant sur la condition Preset charge la valeur de préréglage. 7 Lorsque la condition Enable a pour valeur 1, le compteur commence à décrémenter si le comptage est décroissant. NOTE : Les conditions Enable et Preset dépendent de la configuration. Elles sont décrites dans les fonctions Enable (voir page 200) et Preset (voir page 198). Ecart Le compteur applique une hystérésis si la rotation est inversée. La valeur de l'écart définit le nombre de points qui ne sont pas pris en compte par le compteur lors de l'inversion de la rotation. Cela permet de prendre en compte l'écart entre l'axe du codeur/moteur et l'axe mécanique (un codeur mesurant la position d'un tapis, par exemple). Ce comportement est illustré dans la figure ci-dessous : 134 EIO0000004178 09/2020 Mode Incrémental avec un codeur Sous-chapitre 18.2 Codeur standard sur un module d'E/S expertes Codeur standard sur un module d'E/S expertes Présentation Cette section décrit la configuration en mode Incrémental d'un codeur standard sur un module d'E/S expertes. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet Schéma synoptique Page 136 Configuration du Codeur standard sur un module d'E/S expertes 137 Programmation du codeur standard 140 Réglage des paramètres 143 EIO0000004178 09/2020 135 Mode Incrémental avec un codeur Schéma synoptique Schéma synoptique Le schéma suivant présente le codeur standard en mode Incrémental : A et B sont les entrées de comptage du codeur. EN est l'entrée d'activation du codeur. Z et REF sont les entrées de référence du codeur. CAP est l'entrée de capture du codeur. Fonction facultative Outre le mode Incrémental, le Codeur standard peut fournir les fonctions suivantes : Comparaison (voir page 177) Capture (voir page 191) Activation avec une entrée physique (voir page 200) Préréglage d'une entrée physique (voir page 196) 136 EIO0000004178 09/2020 Mode Incrémental avec un codeur Configuration du Codeur standard sur un module d'E/S expertes Fenêtre de configuration Pour configurer le type Codeur standard en mode Incrémental, procédez comme suit : Etape Action 1 Dans l'arborescence des Equipements, double-cliquez sur MonContrôleur → Expert → DM72Fx → Standard_Encoder. Résultat : la fenêtre de configuration s'affiche. 2 Sélectionnez l'onglet Configuration du codeur standard. Paramètres de configuration des E/S Le tableau suivant décrit les propriétés de l'onglet Configuration du codeur standard en mode Incrémental : Paramètre Valeur Valeur par défaut Description Général Mode d'entrée Quadrature Quadrature normale X1 normale X1 Quadrature normale X2 Quadrature normale X4 Quadrature arrière X1 Quadrature arrière X2 Quadrature arrière X4 Counting inputs Entrée A 0,002 0,004 0,012 0,04 0,12 0,4 1,2 4 0,002 Définir la valeur de filtrage (en ms) permettant de réduire l'effet de rebond sur l'entrée A. Plage Préréglage 0 0 Définir la valeur initiale de comptage. Limites Verrouiller les limites Verrouiller Modulo les limites Gestion des limites. Correction des écarts 0 Définir la valeur de correction des écarts. EIO0000004178 09/2020 Filtre de rebond 0 Sélectionner l'intervalle de mesure des durées. 137 Mode Incrémental avec un codeur Paramètre Entrées de contrôle Valeur Entrée Z Valeur par défaut Description Emplacement Désactivé I1.2 Désactivé Sélectionner l'entrée Z utilisée pour le préréglage de la fonction de comptage. Filtre de rebond 0,002 Définir la valeur de filtrage (en ms) permettant de réduire l'effet de rebond sur l'entrée Z. Entrée EN Emplacement Désactivé I1.4 Désactivé Sélectionner l'entrée API utilisée pour activer la fonction de comptage. Entrée REF Emplacement Désactivé I1.5 Désactivé Sélectionner l'entrée REF utilisée pour le préréglage de la fonction de comptage. Aucun Sélectionner la condition de préréglage de la fonction de comptage avec les entrées SYNC et REF. Désactivé Sélectionner l'entrée API utilisée pour la capture de la valeur de comptage actuelle. Détection de fronts Capture Entrée CAP Aucun Z montant Z descendant Z dans les deux sens Emplacement Désactivé I1.3 Mode CAP0 Aucun Z montant Aucun Sélectionner la condition pour effectuer la première capture de la valeur de comptage actuelle. Mode CAP1 Aucun Z montant Aucun Sélectionner la condition pour effectuer la deuxième capture de la valeur de comptage actuelle. 0 1 2 3 4 0 Sélectionner le nombre de seuils (0 à 4). Comparer Seuils 138 0,002 0,004 0,012 0,04 0,12 0,4 1,2 4 Number of thresholds EIO0000004178 09/2020 Mode Incrémental avec un codeur Paramètre Mise à l'échelle Valeur Valeur par défaut Description Type d'axe Linéaire Rotatif Linéaire Sélectionner le type d'axe. Incréments 2048 2048 Incrément par tour Unités 360 360 Unité par tour AVERTISSEMENT VALEUR INEXACTE DU CODEUR Respectez la règle mathématique du modulo ((Modulo x Incrément)/Unité = Nombre entier) pour éviter tout glissement. Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des dommages matériels. Filtre programmable La valeur de filtrage sur l'entrée Codeur standard détermine la fréquence maximale du compteur, comme indiqué dans le tableau ci-dessous : Entrée Valeur du filtre Fréquence maximale du compteur A, B 0,002 ms 200 kHz 0,004 ms 100 kHz EIO0000004178 09/2020 0,012 ms 40 kHz 0,04 ms 10 kHz 0,12 ms 4 kHz 0,4 ms 1 kHz 1,2 ms 400 Hz 4 ms 100 Hz 139 Mode Incrémental avec un codeur Programmation du codeur standard Présentation Un codeur standard est toujours géré par un bloc fonctionnel Encoder_LMC058 (voir page 235). Ajout d'un bloc fonctionnel StandardEncoder Etape Action 1 Sélectionnez l'onglet Bibliothèques dans Catalogue de logiciels et cliquez sur Bibliothèques. Sélectionnez Contrôleur → LMC058 → LMC058 Expert IO → ENCODER → ENCODER_LMC058 dans la liste, faites glisser l'élément sur la fenêtre POU. 2 Entrez le nom de l'instance Encoder_LMC058 ou sélectionnez l'instance du bloc fonctionnel en cliquant sur : En utilisant l'Aide à la saisie, vous pouvez sélectionner l'instance Encoder_LMC058 dans l'emplacement suivant : Variables globales → Logique API → IoConfig_Globals. 140 EIO0000004178 09/2020 Mode Incrémental avec un codeur Utilisation des variables d’E/S Le tableau suivant décrit les variables d'entrée : Entrées Type EN_Enable BOOL Commentaire EN_Preset BOOL Lorsque l'entrée Z ou REF est configurée, vous pouvez prérégler le compteur via les entrées (voir page 196). EN_Cap BOOL Si au moins une entrée CAP est configurée, la fonction de capture via les entrées (voir page 191) est autorisée. EN_Compare BOOL TRUE = active l'opération de comparaison en utilisant les seuils 0, 1, 2 et 3 (voir page 177) : comparaison de base (bits de sortie TH0, TH1, TH2, TH3) réflexe (bits de sortie Reflex0, Reflex1) événements (pour déclencher des tâches externes en cas de franchissement de seuil) EN_Out0 BOOL TRUE = la sortie physique Output0 peut renvoyer la valeur de Reflex0. EN_Out1 BOOL TRUE = la sortie physique Output1 peut renvoyer la valeur Reflex1. F_Enable BOOL Force la condition d'activation Enable (voir page 200). F_Preset BOOL Force la condition de préréglage Preset. F_Out0 BOOL TRUE = force la sortie physique Output0 à prendre la valeur 1 (si Reflex0 est configuré) (voir page 178). F_Out1 BOOL TRUE = force la sortie physique Output1 à prendre la valeur 1 (si Reflex1 est configuré) (voir page 178). ACK_Overflow BOOL Sur le front montant, réinitialise Overflow_Flag. ACK_Preset BOOL Sur le front montant, réinitialise Preset_Flag (voir page 196). ACK_Cap0 BOOL Sur le front montant, réinitialise Cap0_Flag (voir page 191). ACK_Cap1 BOOL Sur le front montant, réinitialise Cap1_Flag (voir page 191). SuspendCompare BOOL TRUE = les résultats de l'opération de comparaison sont figés (voir page 177) : Les bits de sortie TH0, TH1, TH2, TH3, Reflex0, Reflex1 conservent leur dernière valeur. Les sorties physiques Output0 et Output1 conservent leur dernière valeur. Les événements sont masqués. Lorsque l'entrée EN est configurée, l'activation du codeur via l'entrée (voir page 200) est autorisée. Les variables EN_Compare, EN_Reflex0, EN_Reflex1, F_Out0, F_Out1 restent opérationnelles tant que SupendCompare est défini. EIO0000004178 09/2020 141 Mode Incrémental avec un codeur Le tableau suivant décrit les variables de sortie : Sorties Type Commentaire ENC_REF EXPERT_REF Référence au codeur standard. (voir page 214) A utiliser avec l'entrée EXPERT_REF_IN du bloc fonctionnel d'Administration. Encoder_Err BOOL TRUE = indique qu'une erreur a été détectée. Pour obtenir des informations sur cette erreur détectée, utilisez le bloc fonctionnel EXPERTGetDiag (voir page 228) Validity BOOL TRUE = indique que les valeurs de sortie du bloc fonctionnel sont valides. TRUE après le premier préréglage TH0 BOOL Défini à 1 lorsque CurrentValue > Seuil 0 (si configuré) (voir page 178). TH1 BOOL Défini à 1 lorsque CurrentValue > Seuil 1 (si configuré) (voir page 178). TH2 BOOL Défini à 1 lorsque CurrentValue > Seuil 2 (si configuré) (voir page 178). TH3 BOOL Défini à 1 lorsque CurrentValue > Seuil 3 (si configuré) (voir page 178). Défini à 1 lorsque le codeur dépasse ses limites. Overflow_Flag BOOL Preset_Flag BOOL Défini à 1 après le préréglage (voir page 198) du codeur. Cap0_Flag BOOL Défini à 1 lorsqu'une nouvelle valeur de capture est stockée dans le registre de capture (voir page 191). Cet indicateur doit être réinitialisé pour qu'une nouvelle capture puisse être effectuée. Cap1_Flag BOOL Défini à 1 lorsqu'une nouvelle valeur de capture est stockée dans le registre de capture (voir page 191). Cet indicateur doit être réinitialisé pour qu'une nouvelle capture puisse être effectuée. Réflexe 0 BOOL Etat de Reflex0 (voir page 178). Reflex1 BOOL Etat de Reflex1 (voir page 178). Out0 BOOL Etat de Output0 (voir page 178). Out1 BOOL Etat de Output1 (voir page 178). Low_Limit BOOL Défini à 1 lorsque le codeur dépasse - 2 147 483 648. (voir page 83) Réinitialisé à 0 lors du préréglage du codeur. High_Limit BOOL EncoderValue DINT Défini à 1 lorsque le codeur dépasse + 2 147 483 647. (voir page 83) Réinitialisé à 0 lors du préréglage du codeur. 142 Valeur actuelle du codeur. EIO0000004178 09/2020 Mode Incrémental avec un codeur Réglage des paramètres Présentation La liste de paramètres décrits dans le tableau ci-dessous peut être lue ou modifiée en utilisant le bloc fonctionnel EXPERTGetParam (voir page 231) ou EXPERTSetParam (voir page 233). Paramètres réglables Ce tableau contient une liste de paramètres EXPERT_PARAMETER_TYPE (voir page 213) qui peut être lue ou modifiée lorsque le programme est en cours d'exécution : Paramètre Description EXPERT_PRESET Permet d'obtenir ou de définir la valeur de préréglage du codeur. EXPERT_THRESHOLD0 Permet d'obtenir ou de définir la valeur du seuil 0 d'un codeur. EXPERT_THRESHOLD1 Permet d'obtenir ou de définir la valeur du seuil 1 d'un codeur. EXPERT_THRESHOLD2 Permet d'obtenir ou de définir la valeur du seuil 2 d'un codeur. EXPERT_THRESHOLD3 Permet d'obtenir ou de définir la valeur du seuil 3 d'un codeur. EXPERT_OFFSET Permet d'obtenir ou de définir le décalage d'un codeur en mode d'axe Rotatif. EXPERT_MODULO Permet d'obtenir ou de définir le modulo d'un codeur en mode d'axe Rotatif. EXPERT_SLACK Permet d'obtenir ou de définir l'écart d'un codeur. EXPERT_SCALING Permet d'obtenir ou de définir le paramètre de mise à l'échelle d'un codeur Le paramètre de mise à l'échelle (ParamValue du bloc fonctionnel) est constitué de 2 sous-paramètres : INT à forte signification = Incréments INT à faible signification = Unités EXPERT_REFLEX0 Permet d'obtenir ou de définir le mode réflexe de la sortie 0 d'une fonction Expert EXPERT_REFLEX1 Permet d'obtenir ou de définir le mode réflexe de la sortie 0 d'une fonction Expert EIO0000004178 09/2020 143 Mode Incrémental avec un codeur Sous-chapitre 18.3 Codeur standard sur l'interface du codeur Codeur standard sur l'interface du codeur Présentation Cette section décrit la configuration en mode Incrémental du codeur standard sur l'interface du codeur. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet 144 Page Schéma synoptique 145 Configuration du Codeur standard sur l'interface du Codeur 146 Programmation du codeur standard 149 Réglage des paramètres 152 EIO0000004178 09/2020 Mode Incrémental avec un codeur Schéma synoptique Schéma synoptique Le schéma suivant présente le Codeur standard en mode Incrémental sur l'interface du Codeur : A et B sont les entrées de comptage du compteur. EN est l'entrée d'activation du compteur. Z et REF sont les entrées de référence du compteur. CAP est l'entrée de capture du compteur. Fonction facultative Outre le mode Incrémental, le Codeur standard peut fournir les fonctions suivantes : Comparaison (voir page 177) Capture (voir page 191) Activation avec une entrée physique (voir page 200) Préréglage avec des entrées physiques (voir page 198) EIO0000004178 09/2020 145 Mode Incrémental avec un codeur Configuration du Codeur standard sur l'interface du Codeur Fenêtre de configuration Pour configurer le type Codeur standard en mode Incrémental, procédez comme suit : Etape Action 1 Dans l'arborescence des Equipements, double-cliquez sur MonContrôleur → Expert → Codeur → Standard_Encoder_1. Résultat : la fenêtre de configuration s'affiche. 2 Sélectionnez l'onglet Configuration du codeur standard. Paramètres de configuration Le tableau suivant décrit les propriétés de l'onglet Configuration du codeur standard en mode Incrémental : Paramètre Général Counting inputs 146 Valeur Valeur par défaut Description Mode Incrémental SSI Incrémental Sélectionner le mode de codage. Mode d'entrée Quadrature normale X1 Quadrature normale X2 Quadrature normale X4 Quadrature arrière X1 Quadrature arrière X2 Quadrature arrière X4 Quadrature normale X1 Sélectionner l'intervalle de mesure des durées. 0,002 0,004 0,012 0,04 0,12 0,4 1,2 4 0,002 Définir la valeur de filtrage (en ms) permettant de réduire l'effet de rebond sur l'entrée A. Entrée A Filtre de rebond EIO0000004178 09/2020 Mode Incrémental avec un codeur Paramètre Plage Entrées de contrôle Capture Valeur Valeur par défaut Description Préréglage 0 0 Définir la valeur initiale de comptage. Limites Verrouiller les limites Modulo Verrouiller les limites Gestion des limites Correction des écarts 0 0 Définir la valeur de correction des écarts. Entrée Z Filtre de rebond 0,002 0,004 0,012 0,04 0,12 0,4 1,2 4 0,002 Définir la valeur de filtrage (en ms) permettant de réduire l'effet de rebond sur l'entrée Z. Entrée EN Emplacement Désactivé I1.6 Désactivé Sélectionner l'entrée API utilisée pour activer la fonction de comptage. Entrée REF Emplacement Désactivé I3.6 Désactivé Sélectionner l'entrée REF utilisée pour le préréglage de la fonction de comptage. Détection de fronts Aucun Aucun Z montant Z descendant Z dans les deux sens Sélectionner la condition de préréglage de la fonction de comptage avec les entrées SYNC et REF. Entrée CAP 0 Emplacement Désactivé I1.6 Désactivé Sélectionner l'entrée API utilisée pour la capture de la première valeur de comptage. Entrée CAP 1 Emplacement Désactivé I3.6 Désactivé Sélectionner l'entrée API utilisée pour la capture de la deuxième valeur de comptage. Mode CAP0 Aucun Z montant Aucun Sélectionner la condition pour effectuer la première capture de la valeur de comptage actuelle. Mode CAP1 Aucun Z montant Aucun Sélectionner la condition pour effectuer la deuxième capture de la valeur de comptage actuelle. EIO0000004178 09/2020 147 Mode Incrémental avec un codeur Paramètre Number of thresholds Valeur Valeur par défaut Description 0 1 2 3 4 0 Sélectionner le nombre de seuils (0 à 4). Comparer Seuils Mise à l'échelle Type d'axe Linéaire Rotatif Linéaire Sélectionner le type d'axe. Incréments 2048 2048 Incrément par tour Unités 360 360 Unité par tour Désactivé Activé Désactivé Activer le dispositif de surveillance de l'alimentation. Surveillance Dispositif de surveillance de l'alimentation AVERTISSEMENT VALEUR INEXACTE DU CODEUR Respectez la règle mathématique du modulo ((Modulo x Incrément)/Unité = Nombre entier) pour éviter tout glissement. Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des dommages matériels. Filtre programmable La valeur de filtre sur l'entrée Codeur standard a un impact sur la fréquence maximale du compteur, comme indiqué dans le tableau ci-dessous : 148 Entrée Valeur de filtrage Fréquence maximale du compteur A, B 0,002 ms 200 kHz 0,004 ms 100 kHz 0,012 ms 40 kHz 0,04 ms 10 kHz 0,12 ms 4 kHz 0,4 ms 1 kHz 1,2 ms 400 Hz 4 ms 100 Hz EIO0000004178 09/2020 Mode Incrémental avec un codeur Programmation du codeur standard Présentation Un codeur standard est toujours géré par un bloc fonctionnel Encoder_LMC058 (voir page 235). Ajout d'un bloc fonctionnel de codeur standard Etape Action 1 Sélectionnez l'onglet Bibliothèques dans Catalogue de logiciels et cliquez sur Bibliothèques. Sélectionnez Contrôleur → LMC058 → LMC058 Expert IO → ENCODER → ENCODER_LMC058 dans la liste, faites glisser l'élément sur la fenêtre POU. 2 Entrez le nom de l'instance Encoder_LMC058 ou sélectionnez l'instance du bloc fonctionnel en cliquant sur : En utilisant l'Aide à la saisie, vous pouvez sélectionner l'instance Encoder_LMC058 dans l'emplacement suivant : Variables globales → Logique API → IoConfig_Globals. EIO0000004178 09/2020 149 Mode Incrémental avec un codeur Utilisation des variables d’E/S Le tableau suivant décrit les variables d'entrée : Entrées Type Commentaire EN_Enable BOOL Lorsque l'entrée EN est configurée, l'activation du codeur via l'entrée (voir page 200) est autorisée. EN_Preset BOOL Lorsque l'entrée Z ou REF est configurée, vous pouvez prérégler le compteur via les entrées (voir page 196). EN_Cap BOOL Si au moins une entrée CAP est configurée, la fonction de capture via les entrées (voir page 191) est autorisée. EN_Compare BOOL TRUE = active l'opération de comparaison en utilisant les seuils 0, 1, 2 et 3 (voir page 177) : comparaison de base (bits de sortie TH0, TH1, TH2, TH3) réflexe (bits de sortie Reflex0, Reflex1) événements (pour déclencher des tâches externes en cas de franchissement de seuil) EN_Out0 BOOL TRUE = la sortie physique 0 peut renvoyer la valeur de Reflex0. EN_Out1 BOOL TRUE = la sortie physique 1 peut renvoyer la valeur de Reflex1. F_Enable BOOL Force la condition d'activation Enable (voir page 200). F_Preset BOOL Force la condition de préréglage Preset. F_Out0 BOOL TRUE = force la sortie physique 0 à prendre la valeur 1 (si Reflex0 est configuré) (voir page 178). F_Out1 BOOL TRUE = force la sortie physique 1 à prendre la valeur 1 (si Reflex1 est configuré) (voir page 178). ACK_Overflow BOOL Sur le front montant, réinitialise Overflow_Flag. ACK_Preset BOOL Sur le front montant, réinitialise Preset_Flag (voir page 196). ACK_Cap0 BOOL Sur le front montant, réinitialise Cap0_Flag (voir page 191). ACK_Cap1 BOOL Sur le front montant, réinitialise Cap1_Flag (voir page 191). SuspendCompare BOOL TRUE = les résultats de l'opération de comparaison sont figés (voir page 177) : Les bits de sortie TH0, TH1, TH2, TH3, Reflex0, Reflex1 conservent leur dernière valeur. Les sorties physiques 0 et 1 conservent leur dernière valeur. Les événements sont masqués. Les variables EN_Compare, EN_Reflex0, EN_Reflex1, F_Out0, F_Out1 restent opérationnelles tant que SupendCompare est défini. 150 EIO0000004178 09/2020 Mode Incrémental avec un codeur Le tableau suivant décrit les variables de sortie : Sorties Type Commentaire ENC_REF EXPERT_REF Référence au codeur standard. A utiliser avec l'entrée EXPERT_REF_IN du bloc fonctionnel d'Administration. Encoder_Err BOOL TRUE = indique qu'une erreur a été détectée. Pour obtenir des informations sur cette erreur détectée, utilisez le bloc fonctionnel EXPERTGetDiag (voir page 228) Validity BOOL TRUE = indique que les valeurs de sortie du bloc fonctionnel sont valides. TRUE après le premier préréglage TH0 BOOL Défini à 1 lorsque CurrentValue > Seuil 0 (si configuré) (voir page 178). TH1 BOOL (voir page 214) Défini à 1 lorsque CurrentValue > Seuil 1 (si configuré) (voir page 178). TH2 BOOL Défini à 1 lorsque CurrentValue > Seuil 2 (si configuré) (voir page 178). TH3 BOOL Défini à 1 lorsque CurrentValue > Seuil 3 (si configuré) (voir page 178). Défini à 1 lorsque le codeur dépasse ses limites. Overflow_Flag BOOL Preset_Flag BOOL Défini à 1 après le préréglage (voir page 198) du codeur. Cap0_Flag BOOL Défini à 1 lorsqu'une nouvelle valeur de capture est stockée dans le registre de capture (voir page 191). Cet indicateur doit être réinitialisé pour qu'une nouvelle capture puisse être effectuée. Cap1_Flag BOOL Défini à 1 lorsqu'une nouvelle valeur de capture est stockée dans le registre de capture (voir page 191). Cet indicateur doit être réinitialisé pour qu'une nouvelle capture puisse être effectuée. Réflexe 0 BOOL Etat de Reflex0 (voir page 178). Reflex1 BOOL Etat de Reflex1 (voir page 178). Out0 BOOL Etat de Output0 (voir page 178). Out1 BOOL Etat de Output1 (voir page 178). Low_Limit BOOL Défini à 1 lorsque le codeur dépasse - 2 147 483 648. (voir page 83) Réinitialisé à 0 lors du préréglage du codeur. High_Limit BOOL EncoderValue DINT Défini à 1 lorsque le codeur dépasse + 2 147 483 647. (voir page 83) Réinitialisé à 0 lors du préréglage du codeur. EIO0000004178 09/2020 Valeur actuelle du codeur. 151 Mode Incrémental avec un codeur Réglage des paramètres Présentation La liste de paramètres décrits dans le tableau ci-dessous peut être lue ou modifiée en utilisant le bloc fonctionnel EXPERTGetParam (voir page 231) ou EXPERTSetParam (voir page 233). Paramètres réglables Ce tableau contient une liste de paramètres EXPERT_PARAMETER_TYPE (voir page 213) qui peut être lue ou modifiée lorsque le programme est en cours d'exécution : Paramètre 152 Description EXPERT_PRESET Permet d'obtenir ou de définir la valeur de préréglage du codeur. EXPERT_THRESHOLD0 Permet d'obtenir ou de définir la valeur du seuil 0 d'un codeur. EXPERT_THRESHOLD1 Permet d'obtenir ou de définir la valeur du seuil 1 d'un codeur. EXPERT_THRESHOLD2 Permet d'obtenir ou de définir la valeur du seuil 2 d'un codeur. EXPERT_THRESHOLD3 Permet d'obtenir ou de définir la valeur du seuil 3 d'un codeur. EXPERT_OFFSET Permet d'obtenir ou de définir le décalage d'un codeur. EXPERT_SLACK Permet d'obtenir ou de définir l'écart d'un codeur. EXPERT_TIMEBASE Permet d'obtenir ou de définir la base de temps d'un codeur. EXPERT_SCALING Permet d'obtenir ou de définir le paramètre de mise à l'échelle d'un codeur Le paramètre de mise à l'échelle (ParamValue du bloc fonctionnel) est constitué de 2 sous-paramètres : INT à forte signification = Incréments INT à faible signification = Unités EXPERT_REFLEX0 Permet d'obtenir ou de définir le mode réflexe de la sortie 0 d'une fonction Expert EXPERT_REFLEX1 Permet d'obtenir ou de définir le mode réflexe de la sortie 0 d'une fonction Expert EIO0000004178 09/2020 Mode Incrémental avec un codeur Sous-chapitre 18.4 Codeur de mouvement sur un module d'E/S expertes Codeur de mouvement sur un module d'E/S expertes Présentation Cette section décrit la configuration en mode Incrémental d'un codeur de mouvement sur un module d'E/S expertes. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet Page Schéma synoptique 154 Configuration du Codeur de mouvement sur un module d'E/S expertes 155 EIO0000004178 09/2020 153 Mode Incrémental avec un codeur Schéma synoptique Schéma synoptique Le schéma suivant présente le codeur de mouvement en mode Incrémental : A et B sont les entrées de comptage du codeur. Z est l'entrée de référence du codeur. CAP est l'entrée de capture du codeur. Fonction facultative Outre le mode Incrémental, le codeur de mouvement peut proposer la fonction suivante : Capture (voir page 191) Un codeur de mouvement prend en charge toutes les fonctions SoftMotion de la bibliothèque SM3_Basic (préréglage, sonde tactile, etc.). De plus, une fonction MC_GetImmediateValue_LMC058 (voir page 219) est disponible dans la bibliothèque Motion du LMC058. 154 EIO0000004178 09/2020 Mode Incrémental avec un codeur Configuration du Codeur de mouvement sur un module d'E/S expertes Fenêtre de configuration Pour configurer le type Codeur de mouvement en mode Incrémental, double-cliquez sur MonContrôleur → Expert → DM72Fx dans l'arborescence des Equipements. Résultat : la fenêtre Configuration du codeur de mouvement s'affiche. Paramètres de configuration des E/S Le tableau suivant décrit les propriétés de l'onglet Configuration du codeur de mouvement en mode Incrémental : Paramètre Valeur Valeur par défaut Description Quadrature normale X1 Quadrature normale X2 Quadrature normale X4 Quadrature arrière X1 Quadrature arrière X2 Quadrature arrière X4 Quadrature normale X1 Sélectionner l'intervalle de mesure des durées. Général Mode d'entrée Counting inputs Entrée A Filtre de rebond 0,002 0,004 0,012 0,04 0,12 0,4 1,2 4 0,002 Définir la valeur de filtrage (en ms) permettant de réduire l'effet de rebond sur l'entrée A. Entrées de contrôle Entrée Z Emplacement Désactivé I3.2 Désactivé Sélectionner l'entrée Z utilisée pour le préréglage de la fonction de comptage. Capture Entrée CAP Emplacement Désactivé I3.3 Désactivé Sélectionner l'entrée API utilisée pour la capture de la valeur de comptage actuelle. EIO0000004178 09/2020 155 Mode Incrémental avec un codeur Filtre programmable La valeur de filtrage sur l'entrée du Codeur de mouvement détermine la fréquence maximale du compteur, comme indiqué dans le tableau ci-dessous : 156 Entrée Valeur de filtrage Fréquence maximale du compteur A, B 0,002 ms 200 kHz 0,004 ms 100 kHz 0,012 ms 40 kHz 0,04 ms 10 kHz 0,12 ms 4 kHz 0,4 ms 1 kHz 1,2 ms 400 Hz 4 ms 100 Hz EIO0000004178 09/2020 Mode Incrémental avec un codeur Sous-chapitre 18.5 Codeur de mouvement sur l'interface du codeur Codeur de mouvement sur l'interface du codeur Présentation Cette section décrit la configuration en mode Incrémental d'un codeur de mouvement sur l'interface du codeur. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet Page Schéma synoptique 158 Configuration du Codeur de mouvement sur l'interface du Codeur 159 EIO0000004178 09/2020 157 Mode Incrémental avec un codeur Schéma synoptique Schéma synoptique Le schéma suivant présente le codeur de mouvement en mode Incrémental sur l'interface du codeur : A et B sont les entrées de comptage du codeur. Z est l'entrée de référence du codeur. CAP0 et CAP1 sont les entrées de capture du codeur. Fonction facultative Outre le mode Incrémental, le codeur de mouvement peut proposer la fonction suivante : Capture (voir page 191) Un codeur de mouvement prend en charge toutes les fonctions SoftMotion de la bibliothèque SM3_Basic (préréglage, sonde tactile, etc.). De plus, une fonction MC_GetImmediateValue_LMC058 (voir page 219) est disponible dans la bibliothèque Motion du LMC058. 158 EIO0000004178 09/2020 Mode Incrémental avec un codeur Configuration du Codeur de mouvement sur l'interface du Codeur Fenêtre de configuration Pour configurer le type Codeur de mouvement en mode Incrémental, double-cliquez sur MonContrôleur → Expert → Codeur → Motion_Encoder_1. Résultat : la fenêtre Configuration du codeur de mouvement s'affiche. Paramètres de configuration Le tableau suivant décrit les propriétés de l'onglet Configuration du codeur de mouvement en mode Incrémental : Paramètre Valeur Valeur par défaut Description Mode Incrémental SSI Incrémental Sélectionner le mode de codage. Mode d'entrée Quadrature normale X1 Quadrature normale X2 Quadrature normale X4 Quadrature arrière X1 Quadrature arrière X2 Quadrature arrière X4 Quadrature normale X1 Sélectionner l'intervalle de mesure des durées. Counting inputs Entrée A Filtre de rebond 0,002 0,004 0,012 0,04 0,12 0,4 1,2 4 0,002 Définir la valeur de filtrage (en ms) permettant de réduire l'effet de rebond sur l'entrée A. Entrées de contrôle Entrée Z 0,002 0,004 0,012 0,04 0,12 0,4 1,2 4 0,002 Définir la valeur de filtrage (en ms) permettant de réduire l'effet de rebond sur l'entrée Z. Général EIO0000004178 09/2020 Filtre de rebond 159 Mode Incrémental avec un codeur Paramètre Capture Surveillance Valeur Valeur par défaut Description Entrée CAP 0 Emplacement Désactivé I1.6 Désactivé Sélectionner l'entrée API utilisée pour la capture de la première valeur de comptage. Entrée CAP 1 Emplacement Désactivé I3.6 Désactivé Sélectionner l'entrée API utilisée pour la capture de la deuxième valeur de comptage. Mode CAP0 Aucun Z montant Aucun Sélectionner la condition pour effectuer la première capture de la valeur de comptage actuelle. Mode CAP1 Aucun Z montant Aucun Sélectionner la condition pour effectuer la deuxième capture de la valeur de comptage actuelle. Dispositif de surveillance de l'alimentation Désactivé Activé Désactivé Activer le dispositif de surveillance de l'alimentation. Filtre programmable La valeur de filtrage sur l'entrée du Codeur de mouvement détermine la fréquence maximale du compteur, comme indiqué dans le tableau suivant : 160 Entrée Valeur de filtrage Fréquence maximale du compteur A 0,002 ms 200 kHz 0,004 ms 100 kHz 0,012 ms 40 kHz 0,04 ms 10 kHz 0,12 ms 4 kHz 0,4 ms 1 kHz 1,2 ms 400 Hz 4 ms 100 Hz EIO0000004178 09/2020 Modicon LMC058 Motion Controller Mode SSI avec un codeur EIO0000004178 09/2020 Chapitre 19 Mode SSI avec un codeur Mode SSI avec un codeur Présentation Ce chapitre décrit chacun des codeurs disponibles en mode SSI. Contenu de ce chapitre Ce chapitre contient les sous-chapitres suivants : Sous-chapitre Sujet Page 19.1 Description du principe SSI 162 19.2 Codeur standard en mode SSI sur l'interface du codeur 164 19.3 Codeur de mouvement en mode SSI sur l'interface du codeur 171 EIO0000004178 09/2020 161 Mode SSI avec un codeur Sous-chapitre 19.1 Description du principe SSI Description du principe SSI Description du principe du mode SSI Général Le mode SSI (Synchronous Serial Interface) permet de connecter un codeur absolu. La position du codeur absolu est lue via une liaison SSI. Schéma de principe La figure suivante représente une trame SSI : 162 EIO0000004178 09/2020 Mode SSI avec un codeur Informations sur les données Vous pouvez configurer les données pour ajuster les informations du codeur absolu : Paramètre Plage Commentaire Vitesse de transmission 100 ou 200 kHz – Longueur de trame 8 à 41 bits Longueur de trame = nombre implicite de bits d'en-tête (0 à 4) + nombre de bits de données (8 à 32) + nombre de bits d'état (0 to 4) + nombre de bit de parité (0 ou 1). Données 8 à 32 bits Code binaire ou Gray. Les bits les moins significatifs (8 à 32) indiquent la résolution par tour et les bits les plus significatifs (0 à 24) indiquent le nombre de tours. Bits de données par tour 8 à 16 bits Code binaire ou Gray. Bits d'état 0 à 4 bits – Parité 0 ou 1 bit Aucune, paire ou impaire Réduction de la résolution 0 à 17 bits Ce paramètre permet de filtrer les données. Les bits les moins significatifs sont ignorés. Vérification du bit d'erreur pas de vérification, actif 0, actif 1 pas de vérification : le contrôleur ignore toute erreur détectée générée par le codeur. actif 0 : le contrôleur ignore la trame contenant l'erreur détectée. Le niveau actif est 0. actif 1 : le contrôleur ignore la trame contenant l'erreur détectée. Le niveau actif est 1. EIO0000004178 09/2020 163 Mode SSI avec un codeur Sous-chapitre 19.2 Codeur standard en mode SSI sur l'interface du codeur Codeur standard en mode SSI sur l'interface du codeur Présentation Cette section décrit la configuration en mode SSI d'un codeur standard sur l'interface du codeur. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet 164 Page Caractéristiques du codeur standard 165 Configuration du Codeur standard sur une interface de Codeur 166 Programmation du codeur standard 168 EIO0000004178 09/2020 Mode SSI avec un codeur Caractéristiques du codeur standard Schéma synoptique Le schéma suivant présente le codeur standard en mode SSI sur l'interface du codeur : Fonction facultative Outre le mode SSI, le codeur standard peut proposer la fonction suivante : Capture (voir page 191) EIO0000004178 09/2020 165 Mode SSI avec un codeur Configuration du Codeur standard sur une interface de Codeur Fenêtre de configuration Pour configurer le type Codeur standard en mode SSI, procédez comme suit : Etape Action 1 Dans l'arborescence des Equipements, double-cliquez sur MonContrôleur → Expert → Codeur → Standard_Encoder_1. Résultat : la fenêtre de configuration s'affiche. 2 Sélectionnez l'onglet Configuration du codeur standard. Paramètres de configuration Le tableau suivant décrit les propriétés de l'onglet Configuration du codeur standard en mode SSI : Paramètre Valeur Valeur par défaut Description Incrémental SSI Incrémental Sélectionner le mode de codage. Général Mode Plage Préréglage 0 0 Définir la valeur initiale de comptage. Capture Entrée CAP 0 Emplacement Désactivé I1.6 Désactivé Sélectionner l'entrée API utilisée pour la capture de la première valeur de comptage. Entrée CAP 1 Emplacement Désactivé I3.6 Désactivé Sélectionner l'entrée API utilisée pour la capture de la deuxième valeur de comptage. Comparer Seuils Number of thresholds 0 1 2 3 4 0 Sélectionner le nombre de seuils (0 à 4). Mise à l'échelle Incréments 2048 2048 Incrément par tour Unités 360 360 Unité par tour Surveillance Dispositif de surveillance de l'alimentation Désactivé Activé Désactivé Activer le dispositif de surveillance de l'alimentation. 166 EIO0000004178 09/2020 Mode SSI avec un codeur Paramètre Valeur Valeur par défaut Description Synchronous Vitesse de transmission Serial Interface Nombre de bits par trame (SSI) Nombre de bits de données 100 200 200 Sélectionner la vitesse de transmission (en KHz). 8 8 Définir le nombre de bits par trame. 8 8 Définir le nombre de bits à réserver pour les données. Nombre de bits de données / tour 8 8 Définir le nombre de bits de données à réserver pour déterminer le nombre de tours. Nombre de bits d'état 0 0 Définir le nombre de bits à réserver pour l'état. Parité Aucune Paire Impaire Aucune Sélectionner la parité. Réduction de la résolution 0 0 Définir la réduction de la résolution Binary coding Binaire Gray Binaire Sélectionner le mode de codage binaire. EIO0000004178 09/2020 167 Mode SSI avec un codeur Programmation du codeur standard Présentation Un codeur standard est toujours géré par un bloc fonctionnel Encoder_LMC058 (voir page 235). Ajout d'un bloc fonctionnel de codeur standard Etape Action 1 Sélectionnez l'onglet Bibliothèques dans Catalogue de logiciels et cliquez sur Bibliothèques. Sélectionnez Contrôleur → LMC058 → LMC058 Expert IO → ENCODER → ENCODER_LMC058 dans la liste, faites glisser l'élément sur la fenêtre POU. 2 Entrez le nom de l'instance Encoder_LMC058 ou sélectionnez l'instance du bloc fonctionnel en cliquant sur : En utilisant l'Aide à la saisie, vous pouvez sélectionner l'instance Encoder_LMC058 dans l'emplacement suivant : Variables globales → Logique API → IoConfig_Globals. 168 EIO0000004178 09/2020 Mode SSI avec un codeur Utilisation des variables d’E/S Le tableau suivant décrit les variables d'entrée : Entrées Type Commentaire EN_Enable BOOL Non utilisé EN_Preset BOOL Non utilisé EN_Cap BOOL Si au moins une entrée CAP est configurée, la fonction de capture via les entrées (voir page 191) est autorisée. EN_Compare BOOL TRUE = active l'opération de comparaison en utilisant les seuils 0, 1, 2 et 3 (voir page 177) : comparaison de base (bits de sortie TH0, TH1, TH2, TH3) réflexe (bits de sortie Reflex0, Reflex1) événements (pour déclencher des tâches externes en cas de franchissement de seuil) EN_Out0 BOOL Non utilisé EN_Out1 BOOL Non utilisé F_Enable BOOL Force la condition d'activation Enable (voir page 200). En cas de détection d'une erreur SSI, le réglage de l'entrée F_Enable sur 0 permet d'acquitter l'erreur. F_Preset BOOL Force la condition de préréglage Preset (voir page 196). F_Out0 BOOL Non utilisé F_Out1 BOOL Non utilisé ACK_Overflow BOOL Sur le front montant, réinitialise Overflow_Flag. ACK_Preset BOOL Sur le front montant, réinitialise Preset_Flag (voir page 196). ACK_Cap0 BOOL Sur le front montant, réinitialise Cap0_Flag (voir page 191). ACK_Cap1 BOOL Sur le front montant, réinitialise Cap1_Flag (voir page 191). SuspendCompare BOOL Non utilisé EIO0000004178 09/2020 169 Mode SSI avec un codeur Le tableau suivant décrit les variables de sortie : Sorties Type Commentaire ENC_REF EXPERT_REF Référence au codeur standard. A utiliser avec l'entrée EXPERT_REF_IN du bloc fonctionnel d'Administration. Encoder_Err BOOL TRUE = indique qu'une erreur a été détectée. Pour obtenir des informations sur cette erreur détectée, utilisez le bloc fonctionnel EXPERTGetDiag (voir page 228) Validity BOOL TRUE = indique que les valeurs de sortie du bloc fonction sont valides. TRUE après le premier préréglage. TH0 BOOL Défini à 1 lorsque CurrentValue > Seuil 0 (si configuré) (voir page 178). TH1 BOOL Défini à 1 lorsque CurrentValue > Seuil 1 (si configuré) (voir page 178). TH2 BOOL (voir page 214) Défini à 1 lorsque CurrentValue > Seuil 2 (si configuré) (voir page 178). 170 TH3 BOOL Défini à 1 lorsque CurrentValue > Seuil 3 (si configuré) (voir page 178). Overflow_Flag BOOL Défini à 1 lorsque le codeur dépasse ses limites. Preset_Flag BOOL Défini à 1 après le préréglage (voir page 198) du codeur. Cap0_Flag BOOL Défini à 1 lorsqu'une nouvelle valeur de capture est stockée dans le registre de capture (voir page 191). Cet indicateur doit être réinitialisé pour qu'une nouvelle capture puisse être effectuée. Cap1_Flag BOOL Défini à 1 lorsqu'une nouvelle valeur de capture est stockée dans le registre de capture (voir page 191). Cet indicateur doit être réinitialisé pour qu'une nouvelle capture puisse être effectuée. Réflexe 0 BOOL Etat de Reflex0 (voir page 178). Réflexe 1 BOOL Etat de Reflex1 (voir page 178). Out0 BOOL Non pertinent Out1 BOOL Non pertinent Low_Limit BOOL Non pertinent High_Limit BOOL Non pertinent EncoderValue DINT Valeur actuelle du codeur. La valeur n'est pas valide si une erreur est détectée. EIO0000004178 09/2020 Mode SSI avec un codeur Sous-chapitre 19.3 Codeur de mouvement en mode SSI sur l'interface du codeur Codeur de mouvement en mode SSI sur l'interface du codeur Présentation Cette section décrit la configuration en mode SSI d'un codeur de mouvement sur l'interface du codeur. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet Page Caractéristiques du codeur de mouvement 172 Configuration du Codeur de mouvement sur l'interface du Codeur 173 EIO0000004178 09/2020 171 Mode SSI avec un codeur Caractéristiques du codeur de mouvement Schéma synoptique Le schéma suivant présente le codeur de mouvement en mode SSI sur l'interface du codeur : Fonction facultative Outre le mode SSI, le codeur de mouvement peut proposer la fonction suivante : Capture (voir page 191) Un codeur de mouvement prend en charge toutes les fonctions SoftMotion de la bibliothèque SM3_Basic (préréglage, sonde tactile, etc.). De plus, les fonctions MC_GetImmediateValue_LMC058 (voir page 219) et MC_Reset_LMC058 (voir page 221) sont disponibles dans la bibliothèque Motion du LMC058. 172 EIO0000004178 09/2020 Mode SSI avec un codeur Configuration du Codeur de mouvement sur l'interface du Codeur Fenêtre de configuration Pour configurer le type Codeur de mouvement en mode SSI, double-cliquez sur MonContrôleur → Expert → Codeur → Motion_Encoder_1. Résultat : la fenêtre Configuration du codeur de mouvement s'affiche. Paramètres de configuration Le tableau suivant décrit les propriétés de l'onglet Configuration du codeur de mouvement en mode SSI : Paramètre Valeur Valeur par défaut Description Incrémental SSI Incrémental Sélectionner le mode de codage. Général Mode Capture Entrée CAP 0 Emplacement Désactivé I1.6 Désactivé Sélectionner l'entrée API utilisée pour la capture de la première valeur de comptage. Entrée CAP 1 Emplacement Désactivé I3.6 Désactivé Sélectionner l'entrée API utilisée pour la capture de la deuxième valeur de comptage. Désactivé Activé Désactivé Activer le dispositif de surveillance de l'alimentation. Surveillance Dispositif de surveillance de l'alimentation Synchronous Serial Interface (SSI) Vitesse de transmission 100 200 200 Sélectionner la vitesse de transmission (en KHz). Nombre de bits par trame 8 8 Définir le nombre de bits par trame. Nombre de bits de données 8 8 Définir le nombre de bits à réserver pour les données. Nombre de bits de données / tour 8 8 Définir le nombre de bits de données à réserver pour déterminer le nombre de tours. Nombre de bits d'état 0 0 Définir le nombre de bits à réserver pour l'état. Parité Aucune Paire Impaire Aucune Sélectionner la parité. Réduction de la résolution 0 0 Définir la réduction de la résolution Binary coding Binaire Gray Binaire Sélectionner le mode de codage binaire. EIO0000004178 09/2020 173 Mode SSI avec un codeur 174 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Fonctions facultatives EIO0000004178 09/2020 Partie IX Fonctions facultatives Fonctions facultatives Présentation Cette section contient des informations sur les fonctions facultatives d'un compteur rapide. Contenu de cette partie Cette partie contient les chapitres suivants : Chapitre Titre du chapitre Page 20 Fonction de comparaison 177 21 Fonction de capture 187 22 Fonctions de présélection et d'activation 195 EIO0000004178 09/2020 175 Fonctions facultatives 176 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Fonction de comparaison EIO0000004178 09/2020 Chapitre 20 Fonction de comparaison Fonction de comparaison EIO0000004178 09/2020 177 Fonction de comparaison Sous-chapitre 20.1 Comparaison avec le type principal Comparaison avec le type principal Présentation Cette section contient des informations sur la fonction de comparaison d'un compteur de type principal ou d'un codeur. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet 178 Page Principe de comparaison avec un type Principal ou un codeur 179 Configuration de la comparaison sur un type Principal ou un codeur 184 Configuration d'un événement externe 185 EIO0000004178 09/2020 Fonction de comparaison Principe de comparaison avec un type Principal ou un codeur Présentation Le bloc de comparaison avec le type Principal gère les seuils, les sorties réflexes et les événements dans les modes suivants : One-shot (voir page 43) Modulo-loop (voir page 57) Free-Large (voir page 77) Le bloc de comparaison avec un codeur gère les seuils, les sorties réflexes et les événements. La comparaison est configurée dans l'écran de configuration (voir page 184) par l'activation d'au moins un seuil. La comparaison permet de déclencher : une action de programmation sur les seuils (voir page 181) ; un événement sur un seuil associé à une tâche externe (voir page 180) ; NOTE : Cette option n'est disponible que pour les modules d'extension TM3XF•, qui prennent en charge les événements externes. sorties réflexes (voir page 181). Principe d'une comparaison Le type Principal ou un codeur peut gérer jusqu'à quatre seuils. Un seuil est une valeur configurée qui est comparée à la valeur de comptage. Les seuils permettent de définir jusqu'à cinq zones ou de réagir à un franchissement de valeur. Les valeurs de seuil sont définies dans la fenêtre de configuration et sont réglables dans le programme de l'application à l'aide du bloc fonction EXPERTSetParam (voir page 233). Si le seuil x (x= 0, 1, 2, 3) est configuré et si la comparaison est activée (EN_Compare = 1), la broche de sortie THx du bloc fonction HSCMain_LMC058 (Encoder_LMC058) est : définie si la valeur de compteur est >= seuil x réinitialisée si la valeur de compteur est < seuil x NOTE : si EN_Compare est définie sur 0 dans le bloc fonction HSCMain_LMC058 (Encoder_LMC058), les fonctions de comparaison sont désactivées, y compris les tâches externes déclenchées par un événement de seuil et les sorties réflexes. EIO0000004178 09/2020 179 Fonction de comparaison L'exemple suivant pour une Boucle modulo à deux seuils montre la comparaison dans le bloc fonction HSCMain_LMC058 (Encoder_LMC058) : Configuration du déclenchement d'événement sur compteur HSC principal monophasé ou biphasé La configuration d'un événement en cas de franchissement d'un seuil permet de déclencher une tâche externe (voir page 185). Vous pouvez choisir de déclencher un événement en cas de franchissement d'un seuil configuré, comme suit : Croisement ascendant. L'événement est déclenché lorsque la valeur mesurée dépasse la valeur du seuil. Croisement descendant. L'événement est déclenché lorsque la valeur mesurée est inférieure à la valeur du seuil. Croisement dans les deux sens. L'événement est déclenché lorsque la valeur mesurée dépasse le seuil ou lorsqu'elle chute au-dessous du seuil. Configuration du déclenchement d'événement en mode Compteur de durées La configuration d'un événement permet de déclencher une tâche externe (voir page 185). Vous pouvez choisir de déclencher un événement comme suit : Au-dessous de la valeur de seuil. L'événement est déclenché lorsque la valeur mesurée est inférieure à la valeur du seuil. Au-dessus de la valeur de seuil. L'événement est déclenché lorsque la valeur mesurée est supérieure à la valeur du seuil. Entre valeurs de seuils. L'événement est déclenché lorsque la valeur mesurée est comprise entre deux valeurs de seuils. 180 EIO0000004178 09/2020 Fonction de comparaison Comportement des seuils L'utilisation des états de comparaison des seuils disponibles dans le contexte d'une tâche (broches de sortie TH0 à TH2 du bloc fonction) convient pour une application qui tolère le décalage inhérent des temps de cycle et l'asynchronisme des communications, en particulier si les modules sont utilisés sur un bus de champs dans des architectures distribuées. Configuration d'une sortie réflexe Suivez cette procédure pour configurer les sorties réflexes. Etape Action 1 Dans Comparer → Seuils → Nombre de seuils, sélectionnez un nombre de seuils. Résultat : les valeursde seuil et les sorties réflexes sont affichées. 2 Renseignez chaque champ valeur de chaque valeur de seuil. NOTE : EcoStruxure Machine Expert Suit cette règle pour configurer les valeurs de seuil et les adapter si nécessaire : TH0 < TH1 < TH2 < TH3 < TH4. NOTE : Pour les fonctions HSC principal, vous pouvez définir pour les seuils une valeur supérieure à celle définie dans le champ Preset. 3 Configurez les sorties réflexes. Fonctionnement des sorties réflexes La configuration de sorties réflexes permet de déclencher des sorties réflexes physiques. Ces sorties ne sont pas contrôlées dans le contexte d'une tâche, ce qui minimise le temps de réaction. Elles conviennent aux applications exigeant une exécution rapide. Les sorties utilisées par le compteur rapide ou un codeur ne sont accessibles que par le bloc fonction. Elles ne peuvent pas être lues ni écrites directement dans l'application. Les performances sont directement liées au type de sortie utilisée : rapide ou normale. EIO0000004178 09/2020 181 Fonction de comparaison Exemple de sorties réflexes déclenchées par seuil : NOTE : L'état des sorties réflexes dépend de la configuration. 182 EIO0000004178 09/2020 Fonction de comparaison Modification des valeurs de seuil Lorsque les comparaisons de seuil sont actives, il est recommandé de bien faire attention pour éviter des résultats accidentels ou inattendus des sorties ou l'exécution soudaine d'une tâche événement. Si la fonction de comparaison est désactivée, les valeurs de seuil sont modifiables librement. Cependant, si la fonction de comparaison est activée, suspendez au moins la fonction de comparaison de seuils lorsque vous modifiez les valeurs de seuil. AVERTISSEMENT FONCTIONNEMENT IMPRÉVU DE L'ÉQUIPEMENT Ne modifiez pas les valeurs de seuil, sans utiliser l'entrée SuspendCompare si EN_Compare est égal à 1. Avant de réactiver la fonction de comparaison de seuil, vérifiez que TH0 est inférieur à TH1, que TH1 est inférieur à TH2 et que TH2 est inférieur à TH3. Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des dommages matériels. Lorsque EN_Compare = 1, la comparaison est active et il est nécessaire de suivre cette procédure pour appliquer les modifications aux valeurs de seuil : Etape 1 Action Réglez SuspendCompare sur 1. La comparaison est figée sur la valeur de comptage : Les bits de sortie TH0, TH1, Reflex0, Reflex1, Out0, Out1 du bloc fonction conservent leur dernière valeur. Les sorties physiques 0 et 1 conservent leur dernière valeur. Les événements sont masqués. NOTE : EN_Compare, EN_Out0, EN_Out1, F_Out0 et F_Out1 restent opérationnels tandis que SuspendCompare est définie. 2 Modifiez les valeurs de seuil au besoin avec le bloc fonction EXPERTSetParam (voir page 231). 3 Réglez SuspendCompare sur 0. Les nouvelles valeurs de seuil sont appliquées et la comparaison reprend. NOTE : Suivez cette règle pour configurer les valeurs de seuil : TH0 < TH1 < TH2 < TH3. EIO0000004178 09/2020 183 Fonction de comparaison Configuration de la comparaison sur un type Principal ou un codeur Procédure de configuration Pour configurer la fonction de comparaison sur un compteur de type Principal ou un codeur, procédez comme suit : Etape Action 1 Dans l'arborescence Equipements, double-cliquez sur le nœud Expert → DM72F• → HSCMain ou Standard_Encoder. 2 Sélectionnez l'onglet Configuration HSC principale ou Configuration du codeur standard. 3 Dans Nombre de seuils, sélectionnez le nombre de seuils à utiliser. 4 Réglez la valeur de chaque seuil. NOTE : respectez la règle suivante pour configurer les valeurs de seuil : TH0 < TH1 < TH2 < TH3. 5 184 Eventuellement, configurez le comportement (voir page 179) des sorties réflexes. Résultat : les événements externes du groupe sélectionné (HSCx_TH0, HSCx_TH1, HSCx_TH2, HSCx_TH3, HSCx_STOP) s'affichent sous Seuil x Evénement externe. EIO0000004178 09/2020 Fonction de comparaison Configuration d'un événement externe Procédure La procédure ci-dessous décrit la configuration d'un événement externe pour activer une tâche : Etape Action 1 Dans l'onglet Applications, ajoutez une tâche. 2 Double-cliquez sur le nœud de tâche à associer à un événement externe. 3 Dans le menu déroulant Type, sélectionnez Externe. 4 Dans le menu déroulant Evénement externe, sélectionnez l'événement à associer à la tâche (voir la liste ci-dessous). Evénements externes Ce tableau contient une description des événements externes pouvant être associés à une tâche : Nom de l'événement Description BLOCK0_I0 La tâche est activée lorsque l'entrée I0 du bloc DM72F0 passe à 1. BLOCK0_I1 La tâche est activée lorsque l'entrée I1 du bloc DM72F0 passe à 1. BLOCK0_I2 La tâche est activée lorsque l'entrée I2 du bloc DM72F0 passe à 1. BLOCK0_I3 La tâche est activée lorsque l'entrée I3 du bloc DM72F0 passe à 1. BLOCK1_I0I4 La tâche est activée lorsque l'entrée I0 du bloc DM72F1 passe à 1. BLOCK1_I1I5 La tâche est activée lorsque l'entrée I1 du bloc DM72F1 passe à 1. BLOCK1_I2I6 La tâche est activée lorsque l'entrée I2 du bloc DM72F1 passe à 1. BLOCK1_I3I7 La tâche est activée lorsque l'entrée I3 du bloc DM72F1 passe à 1. BLOCK0_TH0 La tâche est activée lorsque le seuil TH0 du compteur rapide ou du codeur du bloc DM72F0 passe à 1. BLOCK0_TH1 La tâche est activée lorsque le seuil TH1 du compteur rapide ou du codeur du bloc DM72F0 passe à 1. BLOCK0_TH2 La tâche est activée lorsque le seuil TH2 du compteur rapide ou du codeur du bloc DM72F0 passe à 1. BLOCK0_TH3 La tâche est activée lorsque le seuil TH3 du compteur rapide ou du codeur du bloc DM72F0 passe à 1. BLOCK1_TH0 La tâche est activée lorsque le seuil TH0 du compteur rapide ou du codeur du bloc DM72F1 passe à 1. BLOCK1_TH1 La tâche est activée lorsque le seuil TH1 du compteur rapide ou du codeur du bloc DM72F1 passe à 1. BLOCK2_TH2 La tâche est activée lorsque le seuil TH2 du compteur rapide ou du codeur du bloc DM72F1 passe à 1. EIO0000004178 09/2020 185 Fonction de comparaison 186 Nom de l'événement Description BLOCK3_TH3 La tâche est activée lorsque le seuil TH3 du compteur rapide ou du codeur du bloc DM72F1 passe à 1. ENCODER_TH0 La tâche est activée lorsque le seuil TH0 d'un codeur de l'interface Codeur est réglé sur 1. ENCODER_TH1 La tâche est activée lorsque le seuil TH1 d'un codeur de l'interface Codeur est réglé sur 1. ENCODER_TH2 La tâche est activée lorsque le seuil TH2 d'un codeur de l'interface Codeur est réglé sur 1. ENCODER_TH3 La tâche est activée lorsque le seuil TH3 d'un codeur de l'interface Codeur est réglé sur 1. BLOCK0_HSCSTOP La tâche est activée lorsque la valeur du compteur rapide lié au bloc DM72F0 atteint 0 en mode Mono-utilisation. BLOCK1_HSCSTOP La tâche est activée lorsque la valeur du compteur rapide lié au bloc DM72F1 atteint 0 en mode Mono-utilisation. CAN0_SYNC La tâche est activée lorsque le gestionnaire CANopen envoie un message Sync (activé lorsque la case Activer le générateur Sync est cochée dans la fenêtre de configuration du gestionnaire CANopen). CAN1_SYNC La tâche est activée lorsque le gestionnaire CANopen envoie un message Sync (activé lorsque la case Activer le générateur Sync est cochée dans la fenêtre de configuration du gestionnaire CANopen). EIO0000004178 09/2020 Modicon LMC058 Motion Controller Fonction de capture EIO0000004178 09/2020 Chapitre 21 Fonction de capture Fonction de capture Présentation Ce chapitre contient des informations sur la fonction de capture d'un compteur rapide. Contenu de ce chapitre Ce chapitre contient les sous-chapitres suivants : Sous-chapitre Sujet Page 21.1 Capture avec un compteur de type Principal 188 21.2 Capture avec un codeur 191 EIO0000004178 09/2020 187 Fonction de capture Sous-chapitre 21.1 Capture avec un compteur de type Principal Capture avec un compteur de type Principal Présentation Cette section contient des informations sur la fonction de capture avec un compteur de type Principal. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet 188 Page Principe de capture avec un compteur de type Principal 189 Configuration de la capture sur un compteur de type Principal 190 EIO0000004178 09/2020 Fonction de capture Principe de capture avec un compteur de type Principal Présentation La fonction de capture enregistre la valeur de comptage lors de la détection d'un signal d'entrée externe. Cette fonction est disponible pour le compteur de type Principal dans les modes suivants : One-shot (voir page 49) Modulo-loop (voir page 69) Free-large (voir page 85) Pour utiliser cette fonction : Configurez l'entrée de capture facultative CAP. Utilisez le paramètre EXPERTGetCapturedValue (voir page 226) pour récupérer la valeur capturée dans votre application. Principe d'une capture Ce graphique représente le fonctionnement de la capture en mode Boucle modulo : Etape Action 1 Lorsque EN_Cap = 0, la fonction n'est pas opérationnelle. 2 Lorsque EN_Cap a pour valeur 1, le front sur CAP capture la valeur de comptage, la place dans le registre de capture et déclenche le front montant de Cap_Flag. 3 Obtention de la valeur stockée via EXPERTGetCapturedValue (voir page 226). 4 Lorsque Cap_Flag a pour valeur 1, tout nouveau front sur l'entrée physique CAP est ignoré. 5 Le front montant de l'entrée du bloc fonction HSCMain_LMC058 (voir page 238) ACK_Cap déclenche le front descendant de la sortie Cap_Flag. Une nouvelle capture est autorisée. EIO0000004178 09/2020 189 Fonction de capture Configuration de la capture sur un compteur de type Principal Procédure de configuration Pour configurer la fonction de capture sur un compteur de type Principal, procédez comme suit : Etape 190 Action 1 Dans l'arborescence Equipements, double-cliquez sur le nœud Expert → DM72F• → HSCMain ou Standard_Encoder. 2 Sélectionnez l'onglet Configuration HSC principale ou Configuration du codeur standard. 3 Sélectionnez une valeur pour le paramètre Capture → Entrée CAP → Emplacement. 4 Sélectionnez la valeur du paramètre Capture → Entrée CAP → Filtre de rebond. 5 Définissez le mode de déclenchement du paramètre Capture → Mode. EIO0000004178 09/2020 Fonction de capture Sous-chapitre 21.2 Capture avec un codeur Capture avec un codeur Présentation Cette section fournit des informations sur la fonction de capture avec un codeur standard ou un codeur de mouvement. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet Page Capture avec un codeur 192 Configuration de la capture sur un Codeur 194 EIO0000004178 09/2020 191 Fonction de capture Capture avec un codeur Présentation La fonction de capture enregistre la valeur de comptage actuelle lors d'un signal d'entrée externe. Chaque codeur possède 2 registres de capture (CAP0 et CAP1). Ceux-ci peuvent être utilisés de deux façons : pour capturer jusqu'à 2 positions, pour capturer 1 distance. Cette fonction oblige à : configurer des entrées de capture facultatives : CAP Utilisez le bloc fonction EXPERTGetCapturedValue (voir page 226) pour récupérer la valeur capturée dans votre application. Principe d'une capture Ce graphique illustre comment fonctionne la capture de position (un seul registre affiché) : 1 2 4 CAP EN_Cap 5 ACK_Cap Cap_Flag Comptage t Registre de capture Etape 192 Valeur exemple Action 1 Si En_Cap a pour valeur 0, la fonction n'est pas opérationnelle. 2 Lorsque EN_Cap a pour valeur 1, le front sur CAP capture la valeur de comptage actuelle, la place dans le registre de capture et déclenche le front montant de Cap_Flag. 3 Récupérez la valeur stockée, à l'aide de EXPERTGetCapturedValue (voir page 226). 4 Lorsque Cap_Flag a pour valeur 1, tout nouveau front sur l'entrée physique CAP est ignoré. 5 Le front montant de l'entrée ACK_Cap du bloc fonction Encoder (voir page 238) déclenche la sortie Cap_Flag du front descendant. Une nouvelle capture est autorisée. EIO0000004178 09/2020 Fonction de capture Principe de la capture de distance Lorsque vous utilisez un codeur, la capture de distance permet d'obtenir la différence entre chaque front de l'entrée CAP, comme indiqué dans le schéma suivant : Y Position Mesure X A chaque front, la position est capturée. La différente entre les positions est affichée. Temps 1 2 3 CAP Cap0_Flag 4 ACK_Cap0 Registre de capture 1 Registre de capture 2 Etape X Y Action 1 Le front montant de CAP capture la valeur actuelle du compteur et la place dans le premier registre de capture. 2 Le front descendant de CAP capture la valeur actuelle du compteur, la place dans le second registre de capture et déclenche le front montant de Cap0_Flag. 3 Récupérez la valeur stockée, à l'aide de EXPERTGetCapturedValue (voir page 226). Le bloc fonction EXPERTGetCapturedValue (voir page 226) permet de recueillir : la position sur le front montant, la position sur le front descendant, la valeur de distance. 4 Si Cap0_Flag a pour valeur 1, tout nouveau front sur l'entrée physique CAP est ignoré. 5 Le front montant de l'entrée ACK_Cap du bloc fonction Encoder (voir page 238) déclenche la sortie Cap_Flag du front descendant. Une nouvelle capture est autorisée. NOTE : dans le cas d'un axe rotatif, la distance est toujours positive même si la position sur le front montant est inférieure à la position sur le front descendant. EIO0000004178 09/2020 193 Fonction de capture Configuration de la capture sur un Codeur Procédure de configuration sur un module Expert Pour configurer la fonction de capture d'un Codeur, procédez comme suit : Etape Action 1 Dans l'arborescence des Equipements, double-cliquez sur Expert → DM72Fx → Standard_Encoder ou Motion_Encoder. 2 Sélectionnez l'onglet Configuration. 3 Sélectionnez une valeur pour le paramètre Capture → Entrée CAP → Emplacement. 4 Sélectionnez une valeur pour le paramètre Capture → Entrée CAP → Filtre de rebond. 5 Si nécessaire, sélectionnez les paramètres Mode CAP0 et Mode CAP1. 6 Si nécessaire, activez le paramètre Distance de capture. Procédure de configuration sur l'interface d'un Codeur Pour configurer la fonction de capture d'un Codeur, procédez comme suit : Etape 194 Action 1 Dans l'arborescence des Equipements, double-cliquez sur Expert → Codeur → Standard_Encoder ou Motion_Encoder. 2 Sélectionnez l'onglet Configuration. 3 Sélectionnez une valeur pour le paramètre Capture → Entrée CAP 0 ou Entrée CAP 1 → Emplacement. 4 Sélectionnez une valeur pour le paramètre Capture → Entrée CAP 0 ou Entrée CAP 1 → Filtre de rebond. 5 Si nécessaire, sélectionnez les paramètres Mode CAP0 et Mode CAP1. 6 Si nécessaire, activez le paramètre Distance de capture. EIO0000004178 09/2020 Modicon LMC058 Motion Controller Fonctions de synchronisation et d'activation EIO0000004178 09/2020 Chapitre 22 Fonctions de présélection et d'activation Fonctions de présélection et d'activation Présentation Ce chapitre contient des informations sur les fonctions de présélection et d'activation d'un compteur rapide (HSC) ou d'un codeur. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Fonction de préréglage (Preset) Page 196 Conditions de présélection du mode Large libre ou Compteur de durées 198 Enable : autoriser l'opération de comptage 200 EIO0000004178 09/2020 195 Fonctions de synchronisation et d'activation Fonction de préréglage (Preset) Présentation La fonction de préréglage permet de définir/réinitialiser le fonctionnement du compteur. La fonction de préréglage autorise la fonction de comptage, la synchronisation et le démarrage dans les modes de comptage suivants : Compteur Mono-utilisation : prédéfinir et démarrer le compteur. Compteur Boucle modulo : réinitialiser et démarrer le compteur. Comptage d'événements : redémarrer la base de temps interne au début. NOTE : La condition Sync d'un compteur HSC de type Simple correspond à l'entrée Sync du bloc fonction. Description ?Cette fonction permet de synchroniser le compteur en fonction de l'état et la configuration de l'entrée physique SYNC facultative et des entrées F_Preset et EN_Preset du bloc fonctionnel. Ce schéma représente les conditions de synchronisation du compteur HSC : EN_Preset entrée du bloc fonction HSC F_Preset entrée du bloc fonction HSC SYNC Entrée physique SYNC La sortie Preset_Flag du bloc fonctionnel est définie sur 1 lorsque la condition Sync est atteinte. L'un des événements suivants déclenche la capture de la condition Sync : Front montant de l'entrée F_Preset Front montant, front descendant ou front montant ou descendant de l'entrée physique SYNC (si l'entrée SYNC est configurée et si l'entrée EN_Preset est TRUE). 196 EIO0000004178 09/2020 Fonctions de synchronisation et d'activation Configuration Pour configurer une fonction de préréglage, procédez comme suit : Étape Action 1 Dans l'arborescence Equipements, double-cliquez sur MonContrôleur → DM72F• → HSCMain. 2 Sélectionnez l'onglet Configuration HSC principale. 3 Réglez la valeur du paramètre Fonction de comptage sur HSC principal monophasé, HSC principal biphasé, ou Compteur de durées. 4 Sélectionnez la valeur du paramètre Entrées de contrôle → Entrée SYNC → Emplacement. 5 Sélectionnez la valeur du paramètre Entrées de contrôle → Entrée SYNC → Filtre de rebond. 6 Sélectionnez la valeur du paramètre Entrées de contrôle → Détection de front. Type de transition Le type de transition de l'entrée physique SYNC est déterminé par le paramètre Détection de fronts. 3 transitions sont disponibles, lesquelles sont définies par configuration : Front montant de l'entrée SYNC Front descendant de l'entrée SYNC Deux fronts de l'entrée SYNC 3 transitions sont disponibles, lesquelles sont définies par configuration : Valeur Description Sync Montant Détection effectuée sur le front montant. Sync Descendant Détection effectuée sur le front descendant. Sync deux fronts Détection effectuée sur le front montant et le front descendant. EIO0000004178 09/2020 197 Fonctions de synchronisation et d'activation Conditions de présélection du mode Large libre ou Compteur de durées Présentation En mode Large libre, la condition Présélection est créée à l'aide de deux entrées physiques : SYNC (respectivement Z pour le codeur) REF Sept conditions de présélection sont disponibles : sur le front (montant, descendant ou les deux) de l'entrée SYNC ; sur le front montant de l'entrée REF ; sur le front montant de l'entrée SYNC si l'entrée REF est à l'état haut actif ; sur la première impulsion SYNC qui suit la montée du signal d'entrée REF ; sur la première impulsion SYNC qui suit la descente du signal d'entrée REF ; sur le front (montant, descendant ou les deux) de l'entrée SYNC. Le compteur effectue la synchronisation à partir du point de référence du codeur. Lors du front montant de l'entrée REF Le compteur effectue la synchronisation à partir de la position mécanique. Sur le front montant de l'entrée SYNC si l'entrée REF est à l'état haut actif Le compteur est synchronisé au point de référence du codeur lorsque le signal REF prend la valeur TRUE, comme indique ci-après : Avec préréglage Sans préréglage Préréglage 4 fois SYNC REF temps La croix indique le temps de préréglage 198 EIO0000004178 09/2020 Fonctions de synchronisation et d'activation A la première impulsion SYNC qui suit la montée du signal d'entrée REF : Avec préréglage Sans préréglage Premier front préréglé uniquement SYNC REF temps La croix indique le temps de préréglage A la première impulsion SYNC qui suit la descente du signal d'entrée REF : Avec préréglage Premier front préréglé uniquement SYNC REF temps La croix indique le temps de préréglage EIO0000004178 09/2020 199 Fonctions de synchronisation et d'activation Enable : autoriser l'opération de comptage Présentation La fonction d'activation (Enable) permet d'autoriser l'opération de comptage. Description Cette fonction permet d'autoriser les modifications de la valeur de comptage en fonction de l'état de l'entrée physique EN facultative et des entrées F_Enable et EN_Enable du bloc fonction. Le diagramme ci-dessous représente les conditions d'activation : EN_Enable entrée du bloc fonctionnel HSC F_Enable entrée du bloc fonction HSC EN activation d'entrée physique Tant que la fonction n'est pas activée, les impulsions de comptage sont ignorées. NOTE : la condition d'activation d'un type Simple correspond à l'entrée Enable du bloc fonction. Configuration La procédure suivante indique comment configurer une fonction d'activation : Etape 200 Action 1 Dans l'arborescence Equipements, double-cliquez sur MonContrôleur → DM72F• → HSCMain. 2 Sélectionnez l'onglet Configuration HSC principale. 3 Sélectionnez la valeur du paramètre Entrées de contrôle → Entrée EN → Emplacement. 4 Sélectionnez la valeur du paramètre Entrées de contrôle → Entrée EN → Filtre de rebond. EIO0000004178 09/2020 Modicon LMC058 Motion Controller EIO0000004178 09/2020 Annexes Présentation Les annexes présentent les types de données, les blocs fonction et fournissent des informations générales sur les blocs fonction utilisés. Contenu de cette annexe Cette annexe contient les chapitres suivants : Chapitre Titre du chapitre Page A Informations générales 203 B Types de données 207 C Blocs fonction 217 D Représentation des fonctions et blocs fonction 245 EIO0000004178 09/2020 201 202 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Informations générales EIO0000004178 09/2020 Annexe A Informations générales Informations générales Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Fonctions dédiées 204 Informations générales sur la gestion des blocs fonction d'administration et de mouvement 205 EIO0000004178 09/2020 203 Informations générales Fonctions dédiées Filtre de rebond Ce tableau indique les fréquences de compteur maximales, déterminées par les valeurs de filtrage utilisées pour réduire l'effet de rebond sur l'entrée : Entrée Valeur du filtre de rebond (ms) Fréquence maximale du compteur Expert Fréquence maximale du compteur Normal A B 0,000 200 kHz 1 kHz 0,001 200 kHz 1 kHz 0,002 200 kHz 1 kHz 0,005 100 kHz 1 kHz 0,01 50 kHz 1 kHz 0,05 25 kHz 1 kHz 0,1 5 kHz 1 kHz 0,5 1 kHz 1 kHz 1 500 Hz 500 Hz 5 100 Hz 100 Hz A est l'entrée de comptage du compteur. B est l'entrée de comptage du compteur biphasé. Sorties dédiées Les sorties utilisées par les fonctions expertes de compteur rapide sont accessibles uniquement via le bloc fonctionnel. Elles ne peuvent pas être lues ni écrites directement dans l'application. AVERTISSEMENT FONCTIONNEMENT IMPRÉVU DE L'ÉQUIPEMENT N'utilisez pas la même instance de bloc fonction dans différentes tâches de programme. Ne modifiez pas la référence du bloc fonction (AXIS) pendant l'exécution de celui-ci. Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des dommages matériels. 204 EIO0000004178 09/2020 Informations générales Informations générales sur la gestion des blocs fonction d'administration et de mouvement Gestion des variables d'entrée Le bloc fonction démarre sur le front montant de l'entrée Execute. Les modifications postérieures des variables d'entrée ne sont pas prises en compte. Selon les normes CEI 61131-3, s'il manque une entrée de variable dans un bloc fonction, c'est-àdire, si le bloc fonction reste ouvert ou n'est pas connecté, c'est la valeur de l'appel précédent de l'instance du bloc fonction qui est utilisée. Lors du premier appel, la valeur configurée initiale s'applique dans ce cas. Par conséquent, il est préférable de toujours attribuer des valeurs connues aux entrées d'un bloc fonction pour éviter des difficultés lors du débogage du programme. Pour les blocs fonction HSC et PTO, il est recommandé d'utiliser l'instance une seule fois et que celle-ci se trouve dans la tâche principale. Gestion des variables de sortie La sortie Done, InVelocity ou InFrequency est mutuellement exclusive avec les sorties Busy, CommandAborted et Error : une seule d'entre elles peut être TRUE sur un même bloc fonction. Si l'entrée Execute a pour valeur TRUE, l'une de ces sorties a également la valeur TRUE. Au front montant de l'entrée Execute, la sortie Busy est définie. Cette sortie Busy reste définie pendant l'exécution du bloc fonction et est réinitialisée sur le front montant de l'une des autres sorties (Done, InVelocity, InFrequency, CommandAborted ou Error). La sortie Done, InVelocity ou InFrequency est définie une fois l'exécution du bloc fonction achevée. Lorsque l'exécution d'un bloc fonction est interrompue par un autre, c'est la sortie CommandAborted qui est définie. Lorsque l'exécution d'un bloc fonction est arrêtée en raison de la détection d'une erreur, la sortie Error est définie et le numéro de l'erreur détectée est fourni par la sortie ErrId. Les sorties Done, InVelocity, InFrequency, Error, ErrID et CommandAborted sont réinitialisées sur le front descendant de l'entrée Execute. Si l'entrée Execute est réinitialisée avant la fin de l'exécution, les sorties sont définies pour un cycle de tâches à la fin de l'exécution. Lorsqu'une instance d'un bloc fonction reçoit une nouvelle entrée Execute avant la fin de son exécution, le bloc fonction ne génère aucun retour, tel que Done, pour l'action précédente. EIO0000004178 09/2020 205 Informations générales Gestion d'une erreur détectée Tous les blocs comportent 2 sorties qui peuvent signaler une erreur détectée lors de l'exécution du bloc fonction : Error = TRUE lorsqu'une erreur est détectée. ErrID : Lorsque Error = TRUE, renvoie l'ID de l'erreur détectée. 206 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Types de données EIO0000004178 09/2020 Annexe B Types de données Types de données Présentation Ce chapitre décrit les types de données de la bibliothèque HSC. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page EXPERT_ERR_TYPE : type de variable d'erreur du bloc fonction EXPERT 208 EXPERT_FREQMETER_TIMEBASE_TYPE : Type de variable de base de temps pour fréquencemètre 209 EXPERT_IMMEDIATE_ERR_TYPE : type de variable d'erreur du bloc fonctionnel GetImmediateValue 210 MC_IMMEDIATE_ERR_TYPE : type de variable d'erreur du bloc fonction MC_GetImmediateValue_LMC058 211 EXPERT_PERIODMETER_RESOLUTION_TYPE : Type de variable de base de temps pour compteur de durées 212 EXPERT_PARAMETER_TYPE : type des paramètres à extraire ou à définir sur EXPERTle bloc fonction 213 EXPERT_REF : valeur de référence de EXPERT 214 EXPERT_TIMEBASE_TYPE : type de variable de base de temps HSC 215 EIO0000004178 09/2020 207 Types de données EXPERT_ERR_TYPE : type de variable d'erreur du bloc fonction EXPERT Description du type énumération Le type de données ENUM contient les différents types d'erreur détectée, avec les valeurs suivantes : 208 Enumérateur Valeur Description EXPERT_NO_ERROR 00 hex Aucune erreur détectée. EXPERT_UNKNOWN 01 hex La référence EXPERT est incorrecte ou non configurée. EXPERT_UNKNOWN_PARAMETER 02 hex La référence de paramètre est incorrecte. Consultez la section PARAMETER_TYPE pour connaître les paramètres valides (voir page 213). EXPERT_INVALID_PARAMETER 03 hex La valeur du paramètre est incorrecte. Par exemple, Preset Value est inférieure à TH1 ou à TH0. EXPERT_COM_ERROR 04 hex Une erreur de communication a été détectée avec le module EXPERT. EXPERT_CAPTURE_NOT_CONFIGURED 05 hex La capture n'est pas configurée. Il est impossible d'obtenir une valeur capturée. EIO0000004178 09/2020 Types de données EXPERT_FREQMETER_TIMEBASE_TYPE : Type de variable de base de temps pour fréquencemètre Description du type de données Enumération Le type de données ENUM contient les différentes valeurs de base de temps autorisées avec un bloc fonction EXPERT : Nom Valeur EXPERT_FREQMETER_10ms 10 EXPERT_FREQMETER_100ms 100 EXPERT_FREQMETER_1000ms 1000 EIO0000004178 09/2020 209 Types de données EXPERT_IMMEDIATE_ERR_TYPE : type de variable d'erreur du bloc fonctionnel GetImmediateValue Description du type Enumération Le type de données ENUM contient les différents types d'erreur détectée, avec les valeurs suivantes : 210 Enumérateur Valeur Description EXPERT_IMMEDIATE_NO_ERROR 0 Aucune erreur détectée. EXPERT_IMMEDIATE_UNKNOWN 1 La référence de la fonction IMMEDIATE est incorrecte ou non configurée. IMMEDIATE_UNKNOWN_PARAMETER 2 Une référence de paramètre est incorrecte. EIO0000004178 09/2020 Types de données MC_IMMEDIATE_ERR_TYPE : type de variable d'erreur du bloc fonction MC_GetImmediateValue_LMC058 Description du type d'énumération Le type de données ENUM contient les différents types d'erreur détectée avec les valeurs suivantes : Enumérateur Valeur Description MC_IMMEDIATE_NO_ERROR 0 Aucune erreur détectée. MC_IMMEDIATE_UNKNOWN 1 La référence de la fonction IMMEDIATE est incorrecte ou non configurée. MC_IMMEDIATE_UNKNOWN_PARAMETER 2 Une référence de paramètre est incorrecte. EIO0000004178 09/2020 211 Types de données EXPERT_PERIODMETER_RESOLUTION_TYPE : Type de variable de base de temps pour compteur de durées Description du type de données Enumération Le type de données ENUM contient les différentes valeurs de base de temps autorisées avec un bloc fonction EXPERT : 212 Nom Valeur EXPERT_PERIODMETER_100ns -1 EXPERT_PERIODMETER_1µs 1 EXPERT_PERIODMETER_100µs 100 EXPERT_PERIODMETER_1000µs 1000 EIO0000004178 09/2020 Types de données EXPERT_PARAMETER_TYPE : type des paramètres à extraire ou à définir sur EXPERTle bloc fonction Description du type énuméré Le type de données ENUM contient les valeurs suivantes : Enumérateur Valeur Description EXPERT_PRESET 00 hex Permet d'extraire ou de définir la valeur Preset (Offset pour un codeur) d'une fonction EXPERT. EXPERT_MODULO 01 hex Permet d'extraire ou de définir la valeur modulo d'une fonction Expert. EXPERT_OFFSET 02 hex Permet d'extraire ou de définir l'OFFSET d'une fonction EXPERT. EXPERT_TIMEBASE 03 hex Permet d'extraire ou de définir la valeur de la base de temps (Timebase) (voir page 215) d'une fonction Expert. EXPERT_SLACK 04 hex Permet d'extraire ou de définir la valeur Slack d'une fonction Expert (uniquement pour un codeur). EXPERT_SCALING 05 hex Permet d'extraire ou de définir le paramètre d'échelle. Le paramètre d'échelle (ParamValue dans le bloc fonction) comprend deux sous-paramètres : INT de poids fort = Incréments INT à faible signification = Unités EXPERT_THRESHOLD0 06 hex Permet d'extraire ou de définir la valeur du seuil 0 d'une fonction Expert. EXPERT_THRESHOLD1 07 hex Permet d'extraire ou de définir la valeur du seuil 1 d'une fonction Expert. EXPERT_THRESHOLD2 08 hex Permet d'extraire ou de définir la valeur du seuil 2 d'une fonction Expert. EXPERT_THRESHOLD3 09 hex Permet d'extraire ou de définir la valeur du seuil 3 d'une fonction Expert. EXPERT_REFLEX0 0A hex Permet d'extraire ou de définir le mode réflexe de la sortie 0 d'une fonction EXPERT. EXPERT_REFLEX1 0B hex permet d'extraire ou de définir le mode réflexe de la sortie 1 d'une fonction EXPERT. EIO0000004178 09/2020 213 Types de données EXPERT_REF : valeur de référence de EXPERT Description du type de données EXPERT_REF est un octet permettant d'identifier la fonction EXPERT associée au bloc d'administration. 214 EIO0000004178 09/2020 Types de données EXPERT_TIMEBASE_TYPE : type de variable de base de temps HSC Description du type Enumération Le type de données ENUM contient les différentes valeurs de base de temps autorisées dans un bloc fonction EXPERT : Nom Valeur EXPERT_100ms 100 EXPERT_1s 1000 EXPERT_10s 10000 EXPERT_60s 60000 EIO0000004178 09/2020 215 Types de données 216 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Blocs fonction EIO0000004178 09/2020 Annexe C Blocs fonction Blocs fonction Présentation Ce chapitre décrit les fonctions et les blocs fonction de la partie HSC (compteur rapide) et codeur de la bibliothèque Expert I/O. Contenu de ce chapitre Ce chapitre contient les sous-chapitres suivants : Sous-chapitre Sujet Page C.1 Bibliothèque Motion du LMC058 218 C.2 Bibliothèque EXPERT IO du LMC058 223 EIO0000004178 09/2020 217 Blocs fonction Sous-chapitre C.1 Bibliothèque Motion du LMC058 Bibliothèque Motion du LMC058 Présentation Cette section décrit les fonctions disponibles dans la bibliothèque Motion du LMC058. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet 218 Page MC_GetImmediateValue_LMC058 : lecture de la valeur d'une fonction MotionEncoder 219 MC_Reset_LMC058 : effacer l'erreur détectée sur le codeur SoftMotion 221 EIO0000004178 09/2020 Blocs fonction MC_GetImmediateValue_LMC058 : lecture de la valeur d'une fonction MotionEncoder Description de fonctions Cette fonction permet de lire la valeur du compteur d'un codeur de mouvement en contournant le cycle du contrôleur. Représentation graphique Représentation en langage IL et ST Pour voir la représentation générale en langage IL ou ST, consultez le chapitre Représentation des fonctions et blocs fonction (voir page 245). Description des variables d'E/S Le tableau suivant décrit les variables d'entrée : Entrée Type Commentaire Axis AXIS_REF_SM3 Référence de l'axe. Le tableau suivant décrit les variables de sortie : Sortie Type Commentaire MCGetImmediateValue_LMC058 LREAL Contient la valeur du compteur. Le tableau suivant décrit les variables de sortie : Entrée/sortie Type Commentaire Erreur BOOL TRUE = indique qu'une erreur a été détectée. L'exécution du bloc fonctionnel est terminée. MC_IMMEDIATE_ERR_TYPE Si la valeur de Error est TRUE : type de l'erreur détectée. ErrID EIO0000004178 09/2020 (voir page 211) 219 Blocs fonction Ajout d'une fonction MC_GetImmediateValue_LMC058 Etape 220 Description 1 Sélectionnez l'onglet Bibliothèques dans Catalogue de logiciels et cliquez sur Bibliothèques. 2 Sélectionnez Contrôleur → LMC058 → LMC058 Motion → MC_GetImmediateValue_LMC058 dans la liste, faites glissez l'élément sur la fenêtre POU. 3 Reliez l'entrée Axis à la sortie Axis_Ref du codeur de mouvement. EIO0000004178 09/2020 Blocs fonction MC_Reset_LMC058 : effacer l'erreur détectée sur le codeur SoftMotion Description des fonctions Cette fonction permet d'effacer le codeur SoftMotion en cas de détection d'erreur. Consultez la section Programmation avec EcoStruxure Machine Expert de l'aide en ligne, SoftMotion/Interface de programmation/Bibliothèques SoftMotion/SM3_Basic_library. Représentation graphique Représentation en langage IL et ST Pour voir la représentation générale en langage IL ou ST, consultez le chapitre Représentation des fonctions et blocs fonction (voir page 245). Description des variables d'E/S Le tableau suivant décrit les variables d'entrée : Entrée Type Commentaire Axis AXIS_REF_SM3 Référence de l'axe. Execute BOOL Lors d'un front montant, lance l'exécution du bloc fonctionnel. Sur un front descendant, réinitialise les sorties du bloc fonctionnel à la fin de son exécution. Le tableau suivant décrit les variables de sortie : Entrée Type Commentaire Done BOOL Référence de l'axe. Busy BOOL TRUE = indique que l'exécution du bloc fonction est en cours. Error BOOL TRUE = indique qu'une erreur a été détectée. L'exécution du bloc fonctionnel est terminée. ErrorID SMC_ERROR Si la valeur de Error est TRUE : type de l'erreur détectée. EIO0000004178 09/2020 221 Blocs fonction Ajout d'un MC_Reset_LMC058 Etape 222 Description 1 Sélectionnez l'onglet Bibliothèques dans le Catalogue de logiciels et cliquez sur Bibliothèques. 2 Sélectionnez Contrôleur → LMC058 → LMC058 Motion → MC_Reset_LMC058 dans la liste, faites glissez l'élément sur la fenêtre POU. 3 Reliez l'entrée Axis à la sortie Axis_Ref du codeur de mouvement. EIO0000004178 09/2020 Blocs fonction Sous-chapitre C.2 Bibliothèque EXPERT IO du LMC058 Bibliothèque EXPERT IO du LMC058 Présentation Cette section décrit les blocs fonction liés au compteur rapide ou au codeur standard de la bibliothèque EXPERT IO du LMC058. Contenu de ce sous-chapitre Ce sous-chapitre contient les sujets suivants : Sujet Page EXPERTGetImmediateValue : lire la valeur du compteur d'une fonction HSCou de la fonction codeur (Encoder) 224 EXPERTGetCapturedValue: renvoie le contenu des registres de capture 226 EXPERTGetDiag: fournit les détails de l'erreur détectée sur une fonction d'E/S expertes principale 228 EXPERTGetParam: renvoie les paramètres de la fonction EXPERT I/O principale 231 EXPERTSetParam : régler les paramètres d'une fonction HSC 233 Encoder_LMC058 : bloc fonctionnel du codeur 235 HSCMain : Bloc fonction HSC Principal 238 HSCSimple_LMC058 : contrôler un compteur de type simple pour LMC058 242 EIO0000004178 09/2020 223 Blocs fonction EXPERTGetImmediateValue : lire la valeur du compteur d'une fonction HSCou de la fonction codeur (Encoder) Description de fonction Ce fonction administratif permet de lire la valeur du compteur d'une fonction HSC ou Encoder contournant le cycle du contrôleur. Représentation graphique Représentation en langage IL et ST Pour voir la représentation générale en langage IL ou ST, consultez le chapitre Représentation des fonctions et blocs fonction (voir page 245). Description des variables d'E/S Le tableau suivant décrit les variables d'entrée : Entrées Type Commentaire EXPERT_REF_IN EXPERT_REF Référence du bloc fonction EXPERT. BOOL Sur le front montant, lance l'exécution du bloc fonction. Sur le front descendant, réinitialise les sorties du bloc fonction à la fin de son exécution. (voir page 214) Execute 224 EIO0000004178 09/2020 Blocs fonction Le tableau suivant décrit les variables de sortie : Sorties Type Commentaire EXPERT_REF_OUT EXPERT_REF Référence du bloc fonction EXPERT. Done BOOL TRUE indique que ExpertDiag est valide. L'exécution du bloc fonction est terminée. Error BOOL TRUE = indique qu'une erreur a été détectée. ErrID IMMEDIATE_FUNC_ERR_ Lorsque Error est TRUE : type de l'erreur TYPE (voir page 210) détectée. ImmediateValue DINT (voir page 214) Contient la valeur du compteur. Ajout du bloc fonction EXPERTGetImmediateValue Etape Description 1 Sélectionnez l'onglet Bibliothèques dans le Catalogue de logiciels et cliquez sur Bibliothèques. Sélectionnez Contrôleur → LMC058 → LMC058 Expert IO → Administration → EXPERTGetImmediateValue dans la liste, faites glisser l'élément sur la fenêtre POU. 2 Reliez l'entrée EXPERT_REF_IN à la sortie HSC_REF du compteur rapide. EIO0000004178 09/2020 225 Blocs fonction EXPERTGetCapturedValue: renvoie le contenu des registres de capture Description de bloc fonction Ce bloc fonction d'administration renvoie le contenu d'un registre de capture. Représentation graphique Représentation en langage IL et ST Pour voir la représentation générale en langage IL ou ST, consultez le chapitre Représentation des fonctions et blocs fonction (voir page 245). Description des variables d'E/S Ce tableau décrit les variables d'entrée : Entrées Type Commentaire EXPERT_REF_IN EXPERT_REF Référence du bloc fonction EXPERT. Ne doit pas être modifiée pendant l'exécution du bloc. Execute BOOL Lors d'un front montant, lance l'exécution du bloc fonctionnel. Sur un front descendant, réinitialise les sorties du bloc fonctionnel à la fin de son exécution. CaptureNumber BYTE Index du registre de capture : pour HSCMain : toujours 0 pour le codeur : 0 : Cap0, 1 : Cap1 ou 2 : Distance (voir page 214) Le tableau suivant décrit les variables de sortie : Sorties Type Commentaire EXPERT_REF_OUT EXPERT_REF Référence du bloc fonction EXPERT. BOOL TRUE = indique que CaptureValue est valide. L'exécution du bloc fonction est terminée. (voir page 214) Done 226 EIO0000004178 09/2020 Blocs fonction Sorties Type Commentaire Busy BOOL TRUE = indique que l'exécution du bloc fonctionnel est en cours. Error BOOL TRUE = indique qu'une erreur a été détectée. L'exécution du bloc fonction est terminée. ErrID EXPERT_ERR_TYPE Lorsque Error est réglée sur TRUE : type de l'erreur détectée. DINT Lorsque Done est réglé sur TRUE : valeur valide du registre de capture. (voir page 208) CaptureValue NOTE : si une erreur est détectée, les variables prennent la dernière valeur capturée. NOTE : pour plus d'informations sur les broches Done, Busy et Execute, reportez-vous à la rubrique Informations générales sur la gestion des blocs fonction (voir page 205). Ajout du bloc fonction EXPERTGetCapturedValue Étape Description 1 Sélectionnez l'onglet Bibliothèques dans le Catalogue de logiciels et cliquez sur Bibliothèques. Sélectionnez Contrôleur → LMC058 → LMC058 Expert IO → Administration → EXPERTGetCapturedValue dans la liste, puis faites glisser l'élément vers la fenêtre POU. 2 Reliez l'entrée EXPERT_REF_IN à la sortie HSC_REF du compteur rapide. EIO0000004178 09/2020 227 Blocs fonction EXPERTGetDiag: fournit les détails de l'erreur détectée sur une fonction d'E/S expertes principale Description de bloc fonction Ce bloc fonction renvoie les détails d'une erreur HSC détectée. Représentation graphique Représentation en langage IL et ST Pour voir la représentation générale en langage IL ou ST, consultez le chapitre Représentation des fonctions et blocs fonction (voir page 245). Description des variables d'E/S Le tableau suivant décrit les variables d'entrée : Entrées Type Commentaire EXPERT_REF_IN EXPERT_REF Référence du bloc fonction EXPERT. Ne doit pas être modifiée pendant l'exécution du bloc. BOOL Lors d'un front montant, lance l'exécution du bloc fonctionnel. Sur le front descendant, réinitialise les sorties du bloc fonction à la fin de son exécution. (voir page 214) Execute Le tableau suivant décrit les variables de sortie : Sorties Type Commentaire EXPERT_REF Référence du bloc fonction EXPERT. Done BOOL TRUE = indique que HSCDiag est valide. L'exécution du bloc fonction est terminée. Busy BOOL TRUE = indique que l'exécution du bloc fonctionnel est en cours. Error BOOL TRUE = indique qu'une erreur a été détectée. L'exécution du bloc fonction est terminée. EXPERT_REF_OUT (voir page 214) 228 EIO0000004178 09/2020 Blocs fonction Sorties ErrID Type Commentaire EXPERT_ERR_TYPE Lorsque Error est réglée sur TRUE : type de l'erreur détectée. DWORD Lorsque Done a pour valeur TRUE : la valeur de diagnostic est valide. Consultez le tableau ci-dessous. (voir page 208) EXPERTDiag NOTE : pour plus d'informations sur les broches Done, Busy et Execute, reportez-vous à la rubrique Informations générales sur la gestion des blocs fonction (voir page 205). Ce tableau indique les valeurs de diagnostic : Bit HSC 0 Erreur détectée sur les entrées physiques Codeur standard 1 – Erreur détectée sur les sorties physiques 2 – – 3 – – 4 – Information sur la distribution d'alimentation du codeur 5 (1) – Erreur détectée sur la transmission de la trame du codeur SSI absolu 6 (1) – Signale une erreur de parité détectée dans la trame du codeur SSI absolu. 7 Configuration non valide détectée 8 Paramètres de réglage non valides détectés 9 – Configuration du codeur en cours 10 – – 11(1) – Bit d'état 0 du codeur SSI absolu. Reportez-vous au guide utilisateur de votre codeur. 12 (1) – Bit d'état 1 du codeur SSI absolu. Consultez le guide utilisateur de votre codeur. 13 (1) – Bit d'état 2 du codeur SSI absolu. Consultez le guide utilisateur de votre codeur. 14 (1) – Bit d'état 3 du codeur SSI absolu. Consultez le guide utilisateur de votre codeur. 15 (1) – – (1) En cas de détection d'une erreur SSI, réglez la condition Enable (voir page 200) sur 0 pour acquitter la condition d'erreur. EIO0000004178 09/2020 229 Blocs fonction Ajout du bloc fonction EXPERTGetDiag Etape 230 Description 1 Sélectionnez l'onglet Bibliothèques dans le Catalogue de logiciels et cliquez sur Bibliothèques. Sélectionnez Contrôleur → LMC058 → LMC058 Expert IO → Administration → EXPERTGetDiag dans la liste, puis faites glisser l'élément vers la fenêtre POU. 2 Reliez l'entrée EXPERT_REF_IN à la sortie HSC_REF du compteur rapide. EIO0000004178 09/2020 Blocs fonction EXPERTGetParam: renvoie les paramètres de la fonction EXPERT I/O principale Description du bloc fonction Ce bloc fonction renvoie la valeur d'un paramètre d'une fonction HSC. Représentation graphique Représentation en langage IL et ST Pour voir la représentation générale en langage IL ou ST, consultez le chapitre Représentation des fonctions et blocs fonction (voir page 245). Description des variables d'E/S Le tableau suivant décrit les variables d'entrée : Entrées Type Commentaire EXPERT_REF_IN EXPERT_REF Référence du bloc fonction EXPERT. Ne doit pas être modifiée pendant l'exécution du bloc. Execute BOOL Lors d'un front montant, lance l'exécution du bloc fonctionnel. Sur un front descendant, réinitialise les sorties du bloc fonctionnel à la fin de son exécution. Param EXPERT_PARAMETER_TYPE Paramètre à lire. (voir page 214) (voir page 213) Ce tableau décrit les variables de sortie : Sorties Type Commentaire EXPERT_REF_OUT EXPERT_REF Référence du bloc fonction EXPERT. BOOL TRUE = indique que ParamValue est valide. L'exécution du bloc fonction est terminée. (voir page 214) Done EIO0000004178 09/2020 231 Blocs fonction Sorties Type Commentaire Busy BOOL TRUE = indique que l'exécution du bloc fonctionnel est en cours. Error BOOL TRUE = indique qu'une erreur a été détectée. L'exécution du bloc fonctionnel est terminée. (voir page 208) EXPERT_ERR_TYPE Lorsque Error est réglée sur TRUE : type de l'erreur détectée. DINT Valeur du paramètre lu. ErrID ParamValue NOTE : pour plus d'informations sur les broches Done, Busy et Execute, reportez-vous à la rubrique Informations générales sur la gestion des blocs fonction (voir page 205). Ajout du bloc fonction EXPERTGetParam Etape 232 Description 1 Sélectionnez l'onglet Bibliothèques dans le Catalogue de logiciels et cliquez sur Bibliothèques. Sélectionnez Contrôleur → LMC058 → LMC058 Expert IO → Administration → EXPERTGetParam dans la liste, puis faites glisser l'élément vers la fenêtre POU. 2 Reliez l'entrée EXPERT_REF_IN à la sortie HSC_REF du compteur rapide. EIO0000004178 09/2020 Blocs fonction EXPERTSetParam : régler les paramètres d'une fonction HSC Description de blocs fonction Ce bloc fonction modifie la valeur d'un paramètre d'un compteur rapide. Représentation graphique Représentation en langage IL et ST Pour voir la représentation générale en langage IL ou ST, consultez le chapitre Représentation des fonctions et blocs fonction (voir page 245). Description des variables d'E/S Le tableau suivant décrit les variables d'entrée : Entrées Type Commentaire EXPERT_REF_IN EXPERT_REF (voir page 214) Référence du bloc fonction EXPERT. Ne doit pas être modifiée pendant l'exécution du bloc. Execute BOOL Lors d'un front montant, lance l'exécution du bloc fonctionnel. Sur un front descendant, réinitialise les sorties du bloc fonctionnel à la fin de son exécution. EXPERT_PARAMETER_TYPE Paramètre à lire. DINT Valeur de paramètre à écrire. Param (voir page 213) ParamValue Ce tableau décrit les variables de sortie : Sorties EXPERT_REF_OUT Type Commentaire EXPERT_REF Référence du bloc fonction EXPERT. BOOL TRUE = indique que le paramètre a été écrit. L'exécution du bloc fonction est terminée. (voir page 214) Done EIO0000004178 09/2020 233 Blocs fonction Sorties Type Commentaire Busy BOOL TRUE = indique que l'exécution du bloc fonctionnel est en cours. Error BOOL TRUE = indique qu'une erreur a été détectée. L'exécution du bloc fonction est terminée. ErrID EXPERT_ERR_TYPE Lorsque Error est réglée sur TRUE : type de l'erreur détectée. (voir page 208) NOTE : pour plus d'informations sur les broches Done, Busy et Execute, reportez-vous à la rubrique Informations générales sur la gestion des blocs fonction (voir page 205). Ajout du bloc fonction EXPERTSetParam Etape 234 Description 1 Sélectionnez l'onglet Bibliothèques dans le Catalogue de logiciels et cliquez sur Bibliothèques. Sélectionnez Contrôleur → LMC058 → LMC058 Expert IO → Administration → EXPERTSetParam dans la liste, puis faites glisser l'élément vers la fenêtre POU. 2 Reliez l'entrée EXPERT_REF_IN à la sortie HSC_REF du compteur rapide. EIO0000004178 09/2020 Blocs fonction Encoder_LMC058 : bloc fonctionnel du codeur Description des fonctions Ce bloc fonctionnel contrôle un compteur de type codeur : Le nom d'instance du bloc fonctionnel doit correspondre au nom défini par la configuration. Représentation graphique Représentation en langage IL et ST Pour voir la représentation générale en langage IL ou ST, consultez le chapitre Représentation des fonctions et blocs fonction (voir page 245). EIO0000004178 09/2020 235 Blocs fonction Description des variables d'E/S Le tableau suivant décrit les variables d'entrée : 236 Entrées Type Commentaire EN_Enable BOOL TRUE = autorise l'activation du codeur via l'entrée Enable (si elle est configurée). EN_Preset BOOL TRUE = autorise la synchronisation et le démarrage du codeur via l'entrée Sync (si elle est configurée). EN_Cap BOOL TRUE = active l'entrée Capture (si elle est configurée). EN_Compare BOOL TRUE = active l'opération de comparaison (en utilisant les seuils 0, 1, 2 et 3) : comparaison de base (bits de sortie TH0, TH1, TH2, TH3) réflexe (bits de sortie Reflex0, Reflex1) événements (pour déclencher des tâches externes en cas de franchissement de seuil) EN_Out0 BOOL TRUE = permet à Output0 de renvoyer la valeur de Reflex0 (si elle est configurée, sur les modules DM72F). EN_Out1 BOOL TRUE = permet à Output1 de renvoyer la valeur de Reflex1 (si elle est configurée, sur les modules DM72F). F_Enable BOOL Force la condition d'activation Enable (voir page 200). En cas de détection d'erreur SSI, la mise à 0 de l'entrée F_Enable acquitte l'erreur. F_Preset BOOL Force la condition de préréglage Preset. F_Out0 BOOL TRUE = force Output0 à prendre la valeur 1 (si Reflex0 est configuré). F_Out1 BOOL TRUE = force Output1 à prendre la valeur 1 (si Reflex1 est configuré). ACK_Overflow BOOL Sur le front montant, réinitialise Overflow_Flag. ACK_Preset BOOL Sur le front montant, réinitialise Preset_Flag. ACK_Cap0 BOOL Sur le front montant, réinitialise Cap0_Flag. ACK_Cap1 BOOL Sur le front montant, réinitialise Cap1_Flag. SuspendCompare BOOL TRUE = les résultats de l'opération de comparaison sont figés : Les bits de sortie TH0, TH1, TH2, TH3, Reflex0, Reflex1 conservent leur dernière valeur. Les sorties matérielles 0 et 1 conservent leur dernière valeur. Les événements sont masqués. Les variables EN_Compare, EN_Reflex0, EN_Reflex1, F_Out0, F_Out1 restent opérationnelles tant que SupendCompare est défini. EIO0000004178 09/2020 Blocs fonction Le tableau suivant décrit les variables de sortie : Sorties Type Commentaire ENC_REF EXPERT_REF Référence du codeur Encoder_Err BOOL TRUE = indique qu'une erreur a été détectée. Pour obtenir des informations sur cette erreur détectée, utilisez le bloc fonctionnel EXPERTGetDiag (voir page 228) Validity BOOL TRUE = indique que les valeurs de sortie du bloc fonctionnel sont valides. TH0 BOOL Défini à 1 lorsque CurrentValue > Seuil 0 (si configuré). Actif uniquement si EN_Compare est défini. TH1 BOOL Défini à 1 lorsque CurrentValue > Seuil 1 (si configuré). Actif uniquement lorsque EN_Compare est défini. TH2 BOOL Défini à 1 lorsque CurrentValue > Seuil 2 (si configuré). Actif uniquement si EN_Compare est défini. TH3 BOOL Défini à 1 lorsque CurrentValue > Seuil 3 (si configuré). Actif uniquement si EN_Compare est défini. Overflow_Flag BOOL Défini à 1 lorsque le codeur dépasse ses limites. Preset_Flag BOOL Défini à 1 après le préréglage (voir page 198) du codeur. Cap0_Flag BOOL Défini à 1 lorsqu'une nouvelle valeur de capture est stockée dans le registre de capture. Cet indicateur doit être réinitialisé pour qu'une nouvelle capture puisse être effectuée. Cap1_Flag BOOL Défini à 1 lorsqu'une nouvelle valeur de capture est stockée dans le registre de capture. Cet indicateur doit être réinitialisé pour qu'une nouvelle capture puisse être effectuée. Réflexe 0 BOOL Etat de Reflex0 (si configuré). Actif uniquement si EN_Compare est défini. Réflexe 1 BOOL Etat de Reflex1 (si configuré). Actif uniquement si EN_Compare est défini. Out0 BOOL Indique l'état de Output0. Out1 BOOL Indique l'état de Output1. Low_Limit BOOL Géré uniquement pour les modes Incrémental et Linéaire dans Verrouiller les limites. Défini à 1 lorsque le codeur dépasse - 2 147 483 648. Réinitialisé à 0 lors du préréglage ou la réinitialisation du codeur. High_Limit BOOL Géré uniquement pour les modes Incrémental et Linéaire dans Verrouiller les limites. Défini à 1 lorsque le codeur dépasse + 2 147 483 648. Réinitialisé à 0 lors du préréglage ou la réinitialisation du codeur. EncoderValue DINT Valeur actuelle du codeur. (voir page 214) EIO0000004178 09/2020 237 Blocs fonction HSCMain : Bloc fonction HSC Principal Description du bloc fonction Ce bloc fonction contrôle un compteur de type Principal doté des fonctions suivantes : comptage croissant/décroissant ; fréquencemètre ; seuils ; événements ; compteur de durées ; biphasé. Le bloc fonction HSCMain est obligatoire lorsque vous utilisez un compteur Principal. Le nom de l'instance de bloc fonction doit correspondre au nom défini dans la configuration. Les informations liées au matériel gérées par cette fonction sont synchronisées avec le cycle de la tâche MAST. AVERTISSEMENT VALEURS DE SORTIE INATTENDUES Utilisez uniquement l'instance de bloc fonction dans la tâche MAST. N'utilisez pas la même instance de bloc fonction dans une autre tâche. Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des dommages matériels. NOTE : Le forçage des valeurs de sortie logique du bloc fonction (FB) est autorisé par EcoStruxure Machine Expert, mais il n'a aucune incidence sur les sorties matérielles si la fonction est active (en cours d'exécution). 238 EIO0000004178 09/2020 Blocs fonction Représentation graphique Représentation en langage IL et ST Pour voir la représentation générale en langage IL ou ST, consultez le chapitre Représentation des fonctions et blocs fonction (voir page 245). Description des variables d'E/S Le tableau suivant décrit les variables d'entrée : Entrée Type EN_Enable BOOL TRUE = permet l'activation du compteur en utilisant l'entrée Enable. EN_Preset BOOL TRUE = permet de synchroniser le compteur et de le démarrer via l'entrée Sync. EN_Cap BOOL TRUE = active l'entrée Capture (si configuration en mode Mono-utilisation, Boucle modulo ou Large libre). EN_Compare BOOL TRUE = active l'opération de comparaison (à l'aide des seuils 0, 1, 2, 3) : comparaison de base (bits de sortie TH0, TH1, TH2, TH3) réflexe (bits de sortie Reflex0, Reflex1) événements (pour déclencher des tâches externes en cas de franchissement de seuil) EN_Out0 BOOL TRUE = autorise Output0 à renvoyer la valeur de Reflex0 (si configuration en mode Mono-utilisation, Boucle modulo ou Large libre). EN_Out1 BOOL TRUE = autorise Output1 à renvoyer la valeur de Reflex1 (si configuration en mode Mono-utilisation, Boucle modulo ou Large libre). F_Enable BOOL TRUE = active le compteur et prend en compte les impulsions sur son entrée. EIO0000004178 09/2020 Description 239 Blocs fonction Entrée Type Description F_Preset BOOL Sur le front montant, cette entrée permet la synchronisation et le démarrage de la fonction de comptage dans les modes de comptage suivants : Compteur Mono-utilisation : pour présélectionner et démarrer le compteur. Compteur Boucle modulo : pour réinitialiser et démarrer le compteur. Compteur Large libre : pour présélectionner et démarrer le compteur. Compteur Evénements : pour redémarrer la base de temps interne au début. Fréquencemètre : pour redémarrer le minuteur interne par rapport à la base de temps F_Out0 BOOL TRUE = force Output0 à prendre la valeur 1 (si configuration en mode Monoutilisation, Boucle modulo ou Large libre). F_Out1 BOOL TRUE = force Output1 à prendre la valeur TRUE (si configuration en mode Monoutilisation, Boucle modulo ou Large libre). ACK_Modulo BOOL Lors d'un front montant, réinitialise Modulo_Flag (modes Boucle modulo et Large libre). ACK_Preset BOOL Sur le front montant, réinitialise Preset_Flag. ACK_Cap BOOL Sur le front montant, réinitialise Cap_Flag (modes Mono-utilisation, Boucle modulo et Large libre). SuspendCompare BOOL TRUE = les résultats de la comparaison sont suspendus : Les bits de sortie TH0, TH1, TH2, TH3, Reflex0, Reflex1, Out0 et Out1 du bloc conservent leur dernière valeur. Les sorties physiques Output0 et Output1 conservent leur dernière valeur. Les événements de comparaison sont masqués. NOTE : EN_Compare, EN_Out0, EN_Out1, F_Out0, F_Out1 restent opérationnels tant que SuspendCompare est définie. Le tableau suivant décrit les variables de sortie : Sorties Type Commentaire EXPERT_REF Référence à HSC. Error BOOL TRUE = indique qu'une erreur a été détectée. Pour en savoir plus sur l'erreur détectée, utilisez le bloc fonction EXPERTGetDiag (voir page 228). Validity BOOL TRUE = indique que les valeurs de sortie du bloc fonction sont valides. En mode Compteur de durées, si la valeur de timeout est dépassée, Validité = FALSE. Run BOOL TRUE = compteur en cours d'exécution. En mode Mono-utilisation, le bit Run prend la valeur 0 lorsque CurrentValue atteint 0. HSC_REF (voir page 214) 240 EIO0000004178 09/2020 Blocs fonction Sorties Type Commentaire TH0 BOOL TRUE = valeur de compteur en cours > Seuil 0 (si configuré dans les modes Mono-utilisation, Boucle modulo, Large libre). Active uniquement lorsque EN_Compare est définie. TH1 BOOL TRUE = valeur de compteur en cours > Seuil 1 (si configuré dans les modes Mono-utilisation, Boucle modulo, Large libre). Active uniquement lorsque EN_Compare est définie. TH2 BOOL TRUE = valeur de compteur en cours > Seuil 2 (si configuré dans les modes Mono-utilisation, Boucle modulo, Large libre). Active uniquement lorsque EN_Compare est définie. TH3 BOOL TRUE = valeur de compteur en cours > Seuil 3 (si configuré dans les modes Mono-utilisation, Boucle modulo, Large libre). Active uniquement lorsque EN_Compare est définie. Modulo_Flag BOOL Définie sur TRUE si le compteur passe ses limites dans les modes suivants : Compteur Boucle modulo : lorsque le compteur dépasse le modulo ou 0 Compteur Large libre : lorsque le compteur dépasse ses limites Preset_Flag BOOL Définie sur TRUE par la synchronisation de : compteur Mono-utilisation : lorsque le compteur est préréglé et démarre compteur Boucle modulo : lorsque le compteur est réinitialisé compteur Large libre : lorsque le compteur est préréglé compteur d'événements : lorsque le temporisateur interne lié à la base de temps redémarre Fréquencemètre : lorsque le temporisateur interne lié à la base de temps redémarre Cap_Flag BOOL TRUE = indique qu'une valeur a été mémorisée dans le registre de capture. Cet indicateur doit être réinitialisé pour qu'une nouvelle capture puisse être effectuée. Reflex0 BOOL Etat de Reflex0 (si configuration en mode Mono-utilisation, Boucle modulo ou Large libre). Active uniquement lorsque EN_Compare est définie. Reflex1 BOOL Etat de Reflex1 (si configuration en mode Mono-utilisation, Boucle modulo ou Large libre). Active uniquement lorsque EN_Compare est définie. Out0 BOOL Indique l'état de Output0. Out1 BOOL Indique l'état de Output1. CurrentValue DINT Valeur du compteur. EIO0000004178 09/2020 241 Blocs fonction HSCSimple_LMC058 : contrôler un compteur de type simple pour LMC058 Description du bloc fonction Ce bloc fonction permet de contrôler un compteur de type Simple offrant les fonctions réduites suivantes : comptage monocanal aucun seuil aucun événement aucune capture aucun réflexe Le bloc fonction HSCSimple est obligatoire lors de l'utilisation d'un compteur de type Simple. Le nom de l'instance de bloc fonction doit correspondre au nom défini dans la configuration. Les informations liées au matériel gérées par cette fonction sont synchronisées avec le cycle de la tâche MAST. AVERTISSEMENT VALEURS DE SORTIE INATTENDUES Utilisez uniquement l'instance de bloc fonction dans la tâche MAST. N'utilisez pas la même instance de bloc fonction dans une autre tâche. Le non-respect de ces instructions peut provoquer la mort, des blessures graves ou des dommages matériels. NOTE : Le forçage des valeurs de sortie logique du bloc fonction (FB) est autorisé par EcoStruxure Machine Expert, mais il n'a aucune incidence sur les sorties matérielles si la fonction est active (en cours d'exécution). Représentation graphique Représentation en langage IL et ST Pour voir la représentation générale en langage IL ou ST, consultez le chapitre Représentation des fonctions et blocs fonction (voir page 245). 242 EIO0000004178 09/2020 Blocs fonction Description des variables d'E/S Ce tableau décrit les variables d'entrée : Entrées Type Commentaire Enable BOOL TRUE = active le compteur et prend en compte les impulsions sur son entrée. Sync BOOL Lors du front montant, charge la présélection du compteur. ACK_Modulo BOOL Mode boucle modulo : sur le front montant, réinitialise l'indicateur de modulo Modulo_Flag. Le tableau suivant décrit les variables de sortie : Sorties Type Commentaire HSC_REF EXPERT_REF Référence à HSC. HSC_Err BOOL TRUE = indique qu'une erreur a été détectée. Pour en savoir plus sur l'erreur détectée, utilisez le bloc fonction EXPERTGetDiag (voir page 228). Validity BOOL TRUE = indique que les valeurs de sortie du bloc fonction sont valides. Run BOOL TRUE = compteur activé. En mode mono-utilisation, bascule vers 0 lorsque CurrentValue atteint 0. Un front montant est requis sur Sync pour redémarrer le compteur. Modulo_Flag BOOL Mode boucle modulo : défini sur TRUE lorsque le compteur dépasse la valeur modulo. CurrentValue DWORD Valeur du compteur. (voir page 214) EIO0000004178 09/2020 243 Blocs fonction 244 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Représentation des fonctions et blocs fonction EIO0000004178 09/2020 Annexe D Représentation des fonctions et blocs fonction Représentation des fonctions et blocs fonction Présentation Chaque fonction peut être représentée dans les langages suivants : IL : (Instruction List) liste d'instructions ST : (Structured Text) littéral structuré LD : (Ladder Diagram) schéma à contacts FBD : Function Block Diagram (Langage à blocs fonction) CFC : Continuous Function Chart (Diagramme fonctionnel continu) Ce chapitre fournit des exemples de représentations de fonctions et blocs fonction et explique comment les utiliser dans les langages IL et ST. Contenu de ce chapitre Ce chapitre contient les sujets suivants : Sujet Page Différences entre une fonction et un bloc fonction 246 Utilisation d'une fonction ou d'un bloc fonction en langage IL 247 Utilisation d'une fonction ou d'un bloc fonction en langage ST 251 EIO0000004178 09/2020 245 Représentation des fonctions et blocs fonction Différences entre une fonction et un bloc fonction Fonction Une fonction : est une POU (Program Organization Unit ou unité organisationnelle de programme) qui renvoie un résultat immédiat ; est directement appelée par son nom (et non par une instance) ; ne conserve pas son état entre deux appels ; peut être utilisée en tant qu'opérande dans des expressions. Exemples : opérateurs booléens (AND), calculs, conversions (BYTE_TO_INT) Bloc fonction Un bloc fonction : est une POU qui renvoie une ou plusieurs sorties ; doit être appelé par une instance (copie de bloc fonction avec nom et variables dédiées). Chaque instance conserve son état (sorties et variables internes) entre deux appels à partir d'un bloc fonction ou d'un programme. Exemples : temporisateurs, compteurs Dans l'exemple, Timer_ON est une instance du bloc fonction TON : 246 EIO0000004178 09/2020 Représentation des fonctions et blocs fonction Utilisation d'une fonction ou d'un bloc fonction en langage IL Informations générales Cette partie explique comment mettre en œuvre une fonction et un bloc fonction en langage IL. Les fonctions IsFirstMastCycle et SetRTCDrift, ainsi que le bloc fonction TON, sont utilisés à titre d'exemple pour illustrer les mises en œuvre. Utilisation d'une fonction en langage IL La procédure suivante explique comment insérer une fonction en langage IL : Étape Action 1 Ouvrez ou créez une POU en langage IL (Instruction List, ou liste d'instructions). NOTE : La procédure de création d'une POU n'est pas détaillée ici. Pour plus d'informations, reportez-vous à la section Ajout et appel de POU (voir EcoStruxure Machine Expert, Programming Guide). 2 Créez les variables nécessaires à la fonction. 3 Si la fonction possède une ou plusieurs entrées, chargez la première entrée en utilisant l'instruction LD. 4 Insérez une nouvelle ligne en dessous et : saisissez le nom de la fonction dans la colonne de l'opérateur (champ de gauche), ou utilisez l'Aide à la saisie pour sélectionner la fonction (sélectionnez Insérer l'appel de module dans le menu contextuel). 5 Si la fonction a plus d'une entrée et que l'assistant Aide à la saisie est utilisé, le nombre requis de lignes est automatiquement créé avec ??? dans les champs situés à droite. Remplacez les ??? par la valeur ou la variable appropriée compte tenu de l'ordre des entrées. 6 insérez une nouvelle ligne pour stocker le résultat de la fonction dans la variable appropriée : saisissez l'instruction ST dans la colonne de l'opérateur (champ de gauche) et le nom de la variable dans le champ de droite. Pour illustrer la procédure, utilisons les fonctions IsFirstMastCycle (sans paramètre d'entrée) et SetRTCDrift (avec paramètres d'entrée) représentées graphiquement ci-après : Fonction Représentation graphique sans paramètre d'entrée : IsFirstMastCycle avec paramètres d'entrée : SetRTCDrift EIO0000004178 09/2020 247 Représentation des fonctions et blocs fonction En langage IL, le nom de la fonction est utilisé directement dans la colonne de l'opérateur : Fonction Représentation dans l'éditeur IL de POU Exemple en IL d'une fonction sans paramètre d'entrée : IsFirstMastCycle Exemple IL d'une fonction avec des paramètres d'entrée : SetRTCDrift 248 EIO0000004178 09/2020 Représentation des fonctions et blocs fonction Utilisation d'un bloc fonction en langage IL La procédure suivante explique comment insérer un bloc fonction en langage IL : Étape Action 1 Ouvrez ou créez une POU en langage IL (Instruction List, ou liste d'instructions). NOTE : La procédure de création d'une POU n'est pas détaillée ici. Pour plus d'informations, reportez-vous à la section Ajout et appel de POU (voir EcoStruxure Machine Expert, Programming Guide). 2 Créez les variables nécessaires au bloc fonction (y compris le nom de l'instance). 3 L'appel de blocs fonction nécessite l'utilisation d'une instruction CAL : Utilisez l'Aide à la saisie pour sélectionner le bloc fonction (cliquez avec le bouton droit et sélectionnez Insérer l'appel de module dans le menu contextuel). L'instruction CAL et les E/S nécessaires sont automatiquement créées. Chaque paramètre (E/S) est une instruction : Les valeurs des entrées sont définies à l'aide de « := ». Les valeurs des sorties sont définies à l'aide de =>. 4 Dans le champ CAL de droite, remplacez les ??? par le nom de l'instance. 5 Remplacez les autres ??? par une variable ou une valeur immédiate appropriée. Pour illustrer la procédure, utilisons le bloc fonction TON représenté graphiquement ci-après : Bloc fonction Représentation graphique TON EIO0000004178 09/2020 249 Représentation des fonctions et blocs fonction En langage IL, le nom du bloc fonction est utilisé directement dans la colonne de l'opérateur : Bloc fonction Représentation dans l'éditeur IL de POU TON 250 EIO0000004178 09/2020 Représentation des fonctions et blocs fonction Utilisation d'une fonction ou d'un bloc fonction en langage ST Informations générales Cette partie décrit comment mettre en œuvre une fonction ou un bloc fonction en langage ST. La fonction SetRTCDrift et le bloc fonction TON sont utilisés à titre d'exemple pour illustrer les mises en œuvre. Utilisation d'une fonction en langage ST La procédure suivante explique comment insérer une fonction en langage ST : Étape Action 1 Ouvrez ou créez une POU en langage ST (Structured Text ou Littéral structuré). NOTE : La procédure de création d'une POU n'est pas détaillée ici. Pour plus d'informations, reportezvous à la section Ajout et appel de POU (voir EcoStruxure Machine Expert, Programming Guide). 2 Créez les variables nécessaires à la fonction. 3 Utilisez la syntaxe générale dans l'éditeur ST de POU pour la représentation en langage ST d'une fonction. La syntaxe générale est la suivante : RésultatFonction:= NomFonction(VarEntrée1, VarEntrée2, … VarEntréex); Pour illustrer la procédure, utilisons la fonction SetRTCDrift représentée graphiquement ciaprès : Fonction Représentation graphique SetRTCDrift La représentation en langage ST de cette fonction est la suivante : Fonction Représentation dans l'éditeur ST de POU SetRTCDrift PROGRAM MyProgram_ST VAR myDrift: SINT(-29..29) := 5; myDay: DAY_OF_WEEK := SUNDAY; myHour: HOUR := 12; myMinute: MINUTE; myRTCAdjust: RTCDRIFT_ERROR; END_VAR myRTCAdjust:= SetRTCDrift(myDrift, myDay, myHour, myMinute); EIO0000004178 09/2020 251 Représentation des fonctions et blocs fonction Utilisation d'un bloc fonction en langage ST La procédure suivante explique comment insérer un bloc fonction en langage ST : Étape Action 1 Ouvrez ou créez une POU en langage ST (Structured Text ou Littéral structuré). NOTE : La procédure de création d'une POU n'est pas détaillée ici. Pour plus d'informations, reportez-vous à la section Ajout et appel de POU (voir EcoStruxure Machine Expert, Programming Guide). 2 Créez les variables d'entrée, les variables de sortie et l'instance requises pour le bloc fonction : Les variables d'entrée sont les paramètres d'entrée requis par le bloc fonction. Les variables de sortie reçoivent la valeur renvoyée par le bloc fonction. 3 Utilisez la syntaxe générale dans l'éditeur ST de POU pour la représentation en langage ST d'un bloc fonction. La syntaxe générale est la suivante : FunctionBlock_InstanceName(Input1:=VarInput1, Input2:=VarInput2,... Ouput1=>VarOutput1, Ouput2=>VarOutput2,...); Pour illustrer la procédure, examinez cet exemple avec le bloc fonction TON représenté graphiquement ci-après : Bloc fonction Représentation graphique TON 252 EIO0000004178 09/2020 Représentation des fonctions et blocs fonction Le tableau suivant montre plusieurs exemples d'appel de bloc fonction en langage ST : Bloc fonction Représentation dans l'éditeur ST de POU TON EIO0000004178 09/2020 253 Représentation des fonctions et blocs fonction 254 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Glossaire EIO0000004178 09/2020 Glossaire A application Programme comprenant des données de configuration, des symboles et de la documentation. B bloc fonction Unité de programmation qui possède 1 ou plusieurs entrées et renvoie 1 ou plusieurs sorties. Les blocs fonction (FBs) sont appelés via une instance (copie du bloc fonction avec un nom et des variables dédiés) et chaque instance a un état persistant (sorties et variables internes) d'un appel au suivant. Exemples : temporisateurs, compteurs C CAN Acronyme de Controller Area Network. Protocole (ISO 11898) pour réseaux de bus série qui assure l'interconnexion d'équipements intelligents (de différentes marques) dans des systèmes intelligents pour les applications industrielles en temps réel. Développé initialement pour l'industrie automobile, le protocole CAN est désormais utilisé dans tout un éventail d'environnements de surveillance d'automatisme. CANmotion Bus de mouvement basé sur le protocole CANopen avec un mécanisme supplémentaire qui permet d'assurer la synchronisation entre le contrôleur de mouvement et les unités d'entraînement. CFC codeur Acronyme de continuous function chart (diagramme fonctionnel continu). Langage de programmation graphique (extension de la norme IEC 61131-3) basé sur le langage de diagramme à blocs fonction et qui fonctionne comme un diagramme de flux. Toutefois, il n'utilise pas de réseaux et le positionnement libre des éléments graphiques est possible, ce qui permet les boucles de retour. Pour chaque bloc, les entrées se situent à gauche et les sorties à droite. Vous pouvez lier les sorties de blocs aux entrées d'autres blocs pour créer des expressions complexes. Equipement de mesure de longueur ou d'angle (codeurs linéaires ou rotatifs). EIO0000004178 09/2020 255 Glossaire contrôleur Automatise des processus industriels. On parle également de Logic Controller programmable (PLC) ou de contrôleur programmable. CPDM Acronyme de controller power distribution module (module de distribution d'alimentation du contrôleur). Désigne la connexion du contrôleur aux alimentations 24 VCC externes et le début de la distribution d'alimentation de la configuration locale. E E/S Entrée/sortie F FB Acronyme de function block, bloc fonction. Mécanisme de programmation commode qui consolide un groupe d'instructions de programmation visant à effectuer une action spécifique et normalisée telle que le contrôle de vitesse, le contrôle d'intervalle ou le comptage. Un bloc fonction peut comprendre des données de configuration, un ensemble de paramètres de fonctionnement interne ou externe et généralement une ou plusieurs entrées et sorties de données. fonction Unité de programmation possédant 1 entrée et renvoyant 1 résultat immédiat. Contrairement aux blocs fonction (FBs), une fonction est appelée directement par son nom (et non via une instance), elle n'a pas d'état persistant d'un appel au suivant et elle peut être utilisée comme opérande dans d'autres expressions de programmation. Exemples : opérateurs booléens (AND), calculs, conversion (BYTE_TO_INT). H hex HSC (hexadécimal) Abréviation de high speed counter, compteur à grande vitesse. Fonction qui compte le nombre d'impulsions sur le contrôleur ou les entrées du module d'extension. I ID 256 (identificateur/identification) EIO0000004178 09/2020 Glossaire IEC 61131-3 Partie 3 d'une norme en 3 parties de l'IEC pour les équipements d'automatisation industriels. La norme IEC 61131-3 traite des langages de programmation des contrôleurs. Elle définit 2 normes pour la programmation graphique et 2 normes pour la programmation textuelle. Les langages de programmation graphiques sont le schéma à contacts (LD) et le langage à blocs fonction (FBD). Les langages textuels comprennent le texte structuré (ST) et la liste d'instructions (IL). IL INT Acronyme de instruction list, liste d'instructions. Un programme écrit en langage IL est composé d'instructions textuelles qui sont exécutées séquentiellement par le contrôleur. Chaque instruction comprend un numéro de ligne, un code d'instruction et un opérande (voir la norme IEC 61131-3). Abréviation de integer, nombre entier codé sur 16 bits. L langage en blocs fonctionnels Un des 5 langages de programmation de logique ou de commande pris en charge par la norme IEC 61131-3 pour les systèmes de commande. FBD est un langage de programmation orienté graphique. Il fonctionne avec une liste de réseaux où chaque réseau contient une structure graphique de zones et de lignes de connexion représentant une expression logique ou arithmétique, un appel de bloc fonction ou une instruction de retour. LD Acronyme de ladder diagram, schéma à contacts. Représentation graphique des instructions d'un programme de contrôleur, avec des symboles pour les contacts, les bobines et les blocs dans une série de réseaux exécutés séquentiellement par un contrôleur (voir IEC 61131-3). LMC058 Lexium Motion Controller, un Logic Controller Modicon N nœud Equipement adressable sur un réseau de communication. O octet Type codé sur 8 bits, de 00 à FF au format hexadécimal. EIO0000004178 09/2020 257 Glossaire P POU Acronyme de program organization unit, unité organisationnelle de programme. Déclaration de variables dans le code source et jeu d'instructions correspondant. Les POUs facilitent la réutilisation modulaire de programmes logiciels, de fonctions et de blocs fonction. Une fois déclarées, les POUs sont réutilisables. programme Composant d'une application constitué de code source compilé qu'il est possible d'installer dans la mémoire d'un Logic Controller. PTO PWM Acronyme de pulse train output, sortie à train d'impulsions. Sortie rapide qui oscille entre OFF et ON au cours d'un cycle de service 50-50 fixe, ce qui produit une forme d'onde carrée. Les sorties PTO conviennent particulièrement pour les applications telles que les moteurs pas à pas, les convertisseurs de fréquence et le contrôle servomoteur. Acronyme de pulse width modulation, modulation de largeur d'impulsion. Sortie rapide qui oscille entre OFF et ON au cours d'un cycle de service réglable, ce qui produit une forme d'onde rectangulaire (ou carrée selon le réglage). R réseau Système d'équipements interconnectés qui partageant un chemin de données et un protocole de communications communs. réseau de commande Réseau incluant des contrôleurs logiques, des systèmes SCADA, des PC, des IHM, des commutateurs, etc. Deux types de topologies sont pris en charge : à plat : tous les modules et équipements du réseau appartiennent au même sous-réseau. à 2 niveaux : le réseau est divisé en un réseau d'exploitation et un réseau intercontrôleurs. Ces deux réseaux peuvent être indépendants physiquement, mais ils sont généralement liés par un équipement de routage. run 258 Commande qui ordonne au contrôleur de scruter le programme d'application, lire les entrées physiques et écrire dans les sorties physiques en fonction de la solution de la logique du programme. EIO0000004178 09/2020 Glossaire S sortie réflexe Parmi les sorties de HSC (compteur rapide), les sorties réflexes sont associées à une valeur seuil qui est comparée à la valeur de comptage conformément à la configuration du HSC. Les sorties réflexes passent à l'état ON ou OFF en fonction de la relation configurée avec le seuil. ST STOP Acronyme de structured text, texte structuré. Langage composé d'instructions complexes et d'instructions imbriquées (boucles d'itération, exécutions conditionnelles, fonctions). Le langage ST est conforme à la norme IEC 61131-3. Commande ordonnant au contrôleur de cesser d'exécuter un programme d'application. T tâche Ensemble de sections et de sous-programmes, exécutés de façon cyclique ou périodique pour la tâche MAST, ou périodique pour la tâche FAST. Une tâche présente un niveau de priorité et des entrées et sorties du contrôleur lui sont associées. Ces E/S sont actualisées par rapport à la tâche. Un contrôleur peut comporter plusieurs tâches. V variable Unité de mémoire qui est adressée et modifiée par un programme. EIO0000004178 09/2020 259 Glossaire 260 EIO0000004178 09/2020 Modicon LMC058 Motion Controller Index EIO0000004178 09/2020 Index A absolu SSI modes de codeur, 162 B blocs fonction EXPERTGetCapturedValue, 226 EXPERTGetDiag, 228 EXPERTGetParam, 231 EXPERTSetParam, 233 HSCMain, 238, 238 HSCSimple, 7, 223, 242 HSCSimple_LMC058, 7, 223, 242 blocs fonctionnels codeur, 235 Busy gestion des variables d'état, 205 C capture codeur, 192 HSCMain, 189 codeur blocs fonctionnels, 235 capture, 192 CommandAborted gestion des variables d'état, 205 comparaison HSCMain, 179 comptage d'événements modes de la fonction intégrée HSC, 95 Compteur - Décompteur infini modes de la fonction HSC intégrée, 59 compteur de durées configuration, 123 paramètres, 127 programmation, 124 synoptique, 122 EIO0000004178 09/2020 configuration du type HSC Principal mode Boucle modulo, 71 mode Evénement, 99 mode Large libre, 87 configuration du type HSC principal mode Mono-utilisation, 51 configuration du type HSC Simple mode Boucle modulo, 65 mode Mono-utilisation, 45 configuration du type principal HSC mode boucle modulo, 137 D Done gestion des variables d'état, 205 E Enable autoriser l'opération de comptage, 200 ErrID gestion d'une erreur détectée, 206 gestion des variables d'état, 205 Error gestion d'une erreur détectée, 206 gestion des variables d'état, 205 Execute gestion des variables d'état, 205 EXPERT_ERR_TYPE Types de données, 208 EXPERT_FREQMETER_TIMEBASE_TYPE types de données, 209 EXPERT_IMMEDIATE_ERR_TYPE Types de données, 210 EXPERT_PARAMETER_TYPE types de données, 213 EXPERT_PERIODMETER_RESOLUTION_TYPE types de données, 212 261 Index EXPERT_TIMEBASE_TYPE Types de données, 215 EXPERTGetCapturedValue blocs fonction, 226 EXPERTGetDiag blocs fonction, 228 EXPERTGetImmediateValue fonctions, 224 EXPERTGetParam, 231 EXPERTSetParam blocs fonction, 233 F fonctions différences entre une fonction et un bloc fonction, 246 Enable, 200 EXPERTGetImmediateValue, 224 MC_GetImmediateValue_LMC058, 219 MC_Reset_LMC058, 221 utilisation d'une fonction ou d'un bloc fonction en langage IL, 247 utilisation d'une fonction ou d'un bloc fonction en langage ST, 251 fonctions de diagnostic EXPERTGetDiag, 228 fonctions de réglage EXPERTGetParam, 231 fonctions dédiées, 204 fréquencemètre configuration, 111 description, 107, 119 programmation, 112 schéma synoptique, 110 G gestion d'une erreur détectée ErrID, 206 Error, 206 262 gestion des variables d'état Busy, 205 CommandAborted, 205 Done, 205 ErrID, 205 Error, 205 Execute, 205 H HSC_REF types de données, 214 HSCMain capture, 189 comparaison, 179 Compteur HSC de type principal, 238 HSCSimple_LMC058 compteur HSC de type simple, 7, 223, 242 I incrémental modes de codeur, 132 L Large libre modes de la fonction intégrée HSC, 80 M MC_GetImmediateValue_LMC058 fonctions, 219 MC_IMMEDIATE_ERR_TYPE types de données, 211 MC_Reset_LMC058 fonctions, 221 modes de codeur absolu SSI, 162 incrémental, 132 modes de la fonction HSC intégrée Compteur - Décompteur infini, 59 EIO0000004178 09/2020 Index modes de la fonction intégrée HSC comptage d'événements, 95 Large libre, 80 R réglage de fonctions EXPERTSetParam, 233 T Types de données EXPERT_ERR_TYPE, 208 types de données EXPERT_FREQMETER_TIMEBASE_TYPE, 209 Types de données EXPERT_IMMEDIATE_ERR_TYPE, 210 types de données EXPERT_PARAMETER_TYPE, 213 EXPERT_PERIODMETER_RESOLUTION_TYPE, 212 Types de données EXPERT_TIMEBASE_TYPE, 215 types de données HSC_REF, 214 MC_IMMEDIATE_ERR_TYPE, 211 EIO0000004178 09/2020 263 Index 264 EIO0000004178 09/2020