P.BECMMPCOSWFR - Automate industriel Festo - Notice d'utilisation et mode d'emploi gratuit
Retrouvez gratuitement la notice de l'appareil P.BECMMPCOSWFR Festo au format PDF.
| Type de produit | Automate industriel / Contrôleur de moteur |
| Marque | Festo |
| Modèle | P.BECMMPCOSWFR |
| Référence produit | 557346 |
| Interface de communication principale | CANopen (conforme DS301 avec profil DSP402) |
| Protocoles supportés | CANopen, FHPP (Festo) |
| Modes de fonctionnement | Régulation de courant, vitesse, position, contrôle de couple, homing, interpolation |
| Alimentation logique | 24 V DC (module de commande) |
| Alimentation de puissance | Circuite intermédiaire (tension variable selon application) |
| Indice de protection | IP20 |
| Température de fonctionnement | 0 °C à 50 °C (estimation) |
| Nombre d'entrées/sorties TOR | 16 entrées, 3 sorties (configurables) |
| Nombre d'entrées analogiques | 3 (voies 0, 1, 2) |
| Type de codeur supporté | Résolveur, codeur incrémental, codeur numérique |
| Fonctions de sécurité intégrées | Surveillance de tension, courant, température, erreur de poursuite, fin de course |
| Connecteur CAN | Sub-D 9 points (mâle) |
| Connecteur RS232 | Oui (pour paramétrage et diagnostic) |
| Affichage | 7 segments (codes d'erreur et état) |
| Logiciel de paramétrage | Festo Configuration Tool (CMMP) |
| Langue du manuel | Français |
FOIRE AUX QUESTIONS - P.BECMMPCOSWFR Festo
Questions des utilisateurs sur P.BECMMPCOSWFR Festo
0 question sur cet appareil. Repondez a celles que vous connaissez ou posez la votre.
Poser une nouvelle question sur cet appareil
Téléchargez la notice de votre Automate industriel au format PDF gratuitement ! Retrouvez votre notice P.BECMMPCOSWFR - Festo et reprennez votre appareil électronique en main. Sur cette page sont publiés tous les documents nécessaires à l'utilisation de votre appareil P.BECMMPCOSWFR de la marque Festo.
MODE D'EMPLOI P.BECMMPCOSWFR Festo
CANopen pour contrôleur de moteur CMMP

FESTO
Manuel
CANopen
CMMP
Édition fr 0708NH
Désignation P.BE-CMMP-CO-SW-FR
Référence 557346
Toute transmission ou reproduction de ce document, ainsi que toute exploitation ou communication de son contenu sont interdites, sauf autorisation expresse. Tout non-respect de cette règle est illicite et expose son auteur au versement de dommages et intérêts. Tous droits réservés, notamment en termes de demande de brevet, de modèle déposé et de protection par dessin ou modèle.
Listedes revisions
| Auteur : | Festo SE & Co. KG | ||
| Nom du manuel : | CANopen pour contrôleur de moteur CMMP | ||
| Nom du fichier : | |||
| Emplacement d'archivage du fichier : | |||
| N° d'ordre | Manuel | Index de révision | |
| 001 | Création | 0708NH | |
Marques déposées
Microsoft et Windows sont des marques déposées ou des marques de fabrique de Microsoft Corporation aux États-Unis et dans d'autres pays.
TABLE DES MATIÈRES
TABLE DES MATIÈRES
1. Généralités 9
1.1 Documentation 9
1.2 CANopen 10
2. Consignes de sécurité pour les entrainements et les commandes électriques 11
2.1 Consignes generales 11
2.2 Dangers liés à une utilisation incorrecte 13
2.3 Consignes de sécurité 13
2.3.1 Consignes generales de sécurité 13
2.3.2 Consignes de sécurité liées au montage et à l'entretien 15
2.3.3 Protection contre le contact avec les pieces electriques 17
2.3.4 Protection par très bassé tension de sécurité (TBTS) contre les chocs électriques 19
2.3.5 Protection contre les mouvements dangereux 20
2.3.6 Protection contre le contact avec les pieces chaudes 20
2.3.7 Protection lors de la manipulation et du montage 21
3. Câblage et affectation des broches 22
3.1 Affectations des broches 22
3.2 Conseils de câblage 22
4. Activation de CANopen 24
4.1 Aperçu 24
5. Procedure d'acces 25
5.1 Introduction 25
5.2 AccesSDO 26
5.2.1 Séquences SDO de lecture et d'écriture 26
5.2.2 Messages d'erreur SDO 28
5.2.3 Simulation d'acces SDO via RS232 29
5.3 Message PDO 30
5.3.1 Description des objets 31
5.3.2 Objects de paramétrage des PDO 34
5.3.3 Activation des PDO 40
5.4 Message SYNC 40
5.5 Message d'URGENCE 41
5.5.1 Apercu 41
5.5.2 Structure du message d'URGENCE 42
5.5.3 Description des objets 45
5.6 Gestion du réseau (Service NMT) 47
TABLE DES MATIÈRES
5.7 Bootup 49
5.7.1 Apercu 49
5.7.2 Structure du message Bootup 49
5.8 Heartbeat (Error Control Protocol) 49
5.8.1 Apercu 49
5.8.2 Structure du message Heartbeat 50
5.8.3 Description des objets 50
5.9 Nodeguarding (Error Control Protocol) 51
5.9.1 Apercu 51
5.9.2 Structure du message Nodeguarding 51
5.9.3 Description des objets 52
5.9.4 Object 100D h: life_time_factor.. 53
- Réglage des paramètres 54
6.1 Charger et enregistrer des jours de paramétres 54
6.1.1 Récapitulatif 54
6.1.2 Description des objets 56
6.2 Reglages de compatibilité 57
6.2.1 Apercu 57
6.2.2 Description des objets 57
6.3 Facteurs de conversion (Factor Group) 59
6.3.1 Apercu 59
6.3.2 Description des objets 61
6.4 Parametres d'etage de sortie 70
6.4.1 Apercu 70
6.4.2 Description des objets 70
6.5 Regulateur de courant et adaptation du moteur 78
6.5.1 Apercu 78
6.5.2 Description des objets 79
6.6 Regulateur de vitesse 87
6.6.1 Apercu 87
6.6.2 Description des objets 87
6.7 Asservissement de position (Position Control Function) 89
6.7.1 Apercu 89
6.7.2 Description des objets 91
6.8 Limitation de valeur de consigne 101
6.8.1 Description des objets 101
6.9 Adaptations de codeur 103
6.9.1 Apercu 103
6.9.2 Description des objets 103
TABLE DES MATIÈRES
6.10 Emulation de codeur incremental 108
6.10.1 Apercu 108
6.10.2 Description des objets 108
6.11 Injection de valeur de consigne/elle 110
6.11.1 Aperçu 110
6.11.2 Description des objets 110
6.12 Entres analogiques 113
6.12.1 Aperçu 113
6.12.2 Description des objets 113
6.13 Entrées et sorties TOR 116
6.13.1 Apercu 116
6.13.2 Description des objets 116
6.14 Capteur de fin de course / Capteur de reférence 120
6.14.1 Apercu 120
6.14.2 Description des objets 120
6.15 Echantillonnage de positions 123
6.15.1 Aperçu 123
6.15.2 Description des objets 123
6.16 Commande du frein 126
6.16.1 Apercu 126
6.16.2 Description des objets 127
6.17 Informations sur les apparêils 128
6.17.1 Description des objets 128
6.18 Gestion des erreurs 135
6.18.1 Aperçu 135
6.18.2 Description des objets 135
7. Commande d'appareils (Device Control) 138
7.1 Diagramme d'etat (State Machine) 138
7.1.1 Apercu 138
7.1.2 Le diagramme d'etat du contrôleur de moteur (State Machine) 139
7.1.3 Controlword (mot de commande) 144
7.1.4 Lecture de l'etat du contrôleur de moteur 147
7.1.5 Statuswords (mots d'etat) 148
7.1.6 Description des autres objets 156
TABLE DES MATIÈRES
8. Modes de fonctionnement 159
8.1 Réglage du mode de fonctionnement 159
8.1.1 Apercu 159
8.1.2 Description des objets 159
8.2 Mode de fonctionnement Course de referrerce (Homing Mode) 162
8.2.1 Apercu 162
8.2.2 Description des objets 163
8.2.3 Processus de course de reference 167
8.2.4 Commande de la course de reference 172
8.3 Mode Positionnement (Profile Position Mode) 173
8.3.1 Apercu 173
8.3.2 Description des objets 173
8.3.3 Description des fonctions 178
8.4.1 Aperçu 180
8.4.2 Description des objets 180
8.4.3 Description des fonctions 187
8.5 Mode Regulation de la vitesse (Profile Velocity Mode) 189
8.5.1 Apercu 189
8.5.2 Description des objets 191
8.6 Rampes de vitesse 198
8.7 Mode Contrôle du couple de rotation (Profile Torque Mode) 201
8.7.1 Apercu 201
8.7.2 Description des objets 202
9. Index 208
1. Généralités
1. Généralités
1.1 Documentation
Le present manuel décrit comment les contrôleurs de moteur de la gamme CMMP peuvent être intégrés dans un environnement réseau CANopen. Il décrit le réglage des paramétres physiques, l'activation du protocole CANopen, l'intégration dans le réseau CAN ainsi que la communication avec le contrôleur de moteur. Il s'adresse aux personnes déjà familiariées avec cette gamme de contrôleurs de moteur.
Il comporte des consignes de sécurité à observer impératifement.
Vous trouvez des informations plus détaillées dans les manuels suivants relatifs à la famille de produits CMMP :
- Mise en service “Contrôleur de moteur CMMP” :
Description de la fonctionnalité de l'appareil et des fonctions logicielles du firmware ainsi que de la communication RS232. Description du logiciel de paramétrage avec des instructions pour la première mise en service d'un contrôleur de moteur de la gamme CMMP.
Description "Contrôleur de moteur CMMP":
Description des caractéristiques techniques et de la fonctionnalité de l'appareil et conseils relatifs à l'installation et à l'exploitation du contrôleur de moteur CMMP.
Informations relatives à la version
La version du matériel indique la version de la mécanique et de l'électronique. La version du firmware indique la version du système d'exploitation.
Pour trouver les données relatives à la version :
- Version du matériel et version du firmware dans le logiciel de paramétrage pendant la liaison active avec l'appareil sous "Données d'appareil".
| Firmware | Matériel | Logiciel de paramétrage | Remarque |
| V 1.0 | |||
1. Généralités
1.2 CANopen
CANopen est une norme élaborée par l'association "CAN in Automation". Un grand nombre de fabricants d'appareils font partie de cette association. À quelques détails préc, cette norme a remplaced les précédents protocôles CAN spécifiques aux constructeurs. L'utilisateur final dispose ainsi d'une interface de communication non dépendante des fabricants.
Yououpuvezyouprocuerrlesmanuelssuivantsaupresde l'association:
Norme CiA Draft Standard 201 ... 207
Ces ouvragestraitent des principes de base et de l'intégration de CANopen dans le modele d'architecture en couche OSI. Les points significatifs de ce livre sont presentés dans le presenteit manuel CANopen, si bien que l'achat du DS201 ... 207 s'avere généralement inutile.
Norme CiA Draft Standard 301
Cet ouvrage déscrit la structure fondamentale du réseau d'objects d'un apparéil CANopen ainsi que l'accès à ce réseau. Par ailleurs, les propositions du DS201 ... 207 sont concretisées. Les éléments du réseau d'objects nécessaires aux familles de contrôleurs de moteur CMMP ainsi que les méthodes d'accès sont décrits dans leprésent manuel. L'achat de l'ouvrage DS301 est conseillé mais pas impératif.
Norme CiA Draft Standard 402
Ce livre aborde la mise en œuvre concrète de CANopen dans des régulateurs d'entrainment. Bien que tous les objets implémentés soient documentés et décrits sous forme abrégée dans leprésent manuel CANopen, il est conseilé à l'utilisateur de posseder cet ouvrage.
Adresse d'achat :
L'implémentation CANopen du contrôleur de moteur se refère aux normes suivantes :
[1] - ] Norme CiA Draft Standard 301, version 4.02, 13.février 2002
[2] -] Norme CiA Draft Standard Proposal 402, version 2.0, 26. juillet 2002
- Consignes de sécurité pour les entrainements et les commandes électriques
2. Consignes de sécurité pour les entrainements et les commandes électriques
2.1 Consignes generales
En cas de dommages dus au non respect des averissements figurant dans ces instructions de service, Festo SE & Co. KG se dégage de toute responsabilité.

Nota
Avant la mise en service, il convient de dire les Consignes de sécurité pour les entrainements et les commandes électriques à partir de la page 11.
Si la documentation n'est pas comprise de manière claire dans la presente langue, veuillez contacter le fournisseur et l'en informer.
Le fonctionnement correct et sûr du contrôleur de moteur est tributaire d'un transport ajustat et correct, du stockage, du montage et de l'installation ainsi que de la commande minutieuse et de l'entretien.

Nota
Seul du personnel dûment formé et compétent doit être amné à travailler sur les installations électriques :
Personnel dûment formé et compétent
Au sens du présence manuel de produit ou des consignes d'advertissement figurant sur le produit lui-même, ce sont des personnes suffisamment familiarisées avec l'installation, le montage, la mise en service et l'exploitation du produit ainsi qu'avocé l'ensemble des averituresments et mesures de précaution conformément aux présentes instructions de service figurant dans ce manuel et disposant des compétences nécessaires à leur activités :
- formation, instruction ou autorisation quant à l'activation/la désactivation d'appareils/de systèmes conformément aux normes techniques de sécurité, à la mise à terre et à l'identification appropriée conformément aux exigences du travail.
- formation ou instruction conforme aux normes techniques de sécurité en matière d'entretien et d'utilisation de l'équipment de sécurité approprié.
- formation aux premiers secours.
Lire impératifement les consignes suivantes avant la première mise en service de l'installation pour éviter les blessures corporelles et/ou les dommages matériels :

Observer à tout moment ces consignes de sécurité.

N'essayez pas d'instructor ni de mettre en service le contrôle de moteur avant d'avoir soigneusement lu l'intégrality des consignes de sécurité relatives aux entrainements et aux commandes électriques figurant dans ce document.
Lire impératifement ces instructions de sécurité ainsi que toutes les autres indications pour l'usage avant de travailler avec le contrôleur de moteur.

Si vous ne disposez d'aucune indication pour l'usage pour le contrôleur de moteur, veuillez vous adresser à votre distributeur compétent.
- Exigez l'envoi immédiat de ces documents au(x) responsable(s) du fonctionnement correct du contrôleur de moteur.

En cas de vente, de prét et/ou d'autre transfert du contrôleur de moteur, ces consignes de sécurité doivent impérativement être remises.

Pour des raisons de sécurité et de garantie, toute ouverture du contrôleur de moteur par l'exploitant est interdite.

La condition primordiale d'un fonctionnement parfait du contrôleur de moteur est une planification appropriée!

Avertissement
DANGER!
Toute'utilisation non appropriée du contrôleur de moteur et toute non-observation des consignes d'advertissement données ici ainsi que toute intervention incorrecte sur le dispositif de sécurité peuvent occasionalnier des dommages matériels, des blessures corporelles, un choc électrique, voire entraîner la mort.
2.2 Dangers liés à une utilisation incorrecte

Avertissement
DANGER!
Haute tension électrique et courant de travail de haute intense!
Danger de mort ou de graves blessures par chocoléctrique!

Avertissement
DANGER!
Haute tension électrique due à un raccordement erroné!
Danger de mort ou de graves blessures par chocolélectrique!

Avertissement
DANGER!
Surface chaudes possibles sur le boîtier de l'appareil !
Risque de blessure! Risque de brûlures!

Avertissement
DANGER!
Mouvements potentiellement dangereux!
Danger de mort, de graves blessures ou de dommages matériels suite à des mouvements inopinés des moteurs!
2.3 Consignes de sécurité
2.3.1 Consignes générales de sécurité

Avertissement
Le contrôleur de moteur est conforme à la classe de protection IP20, ainsi qu'à la classe d'encrassement 1.
- Il faut veiller à ce que l'environnement corresponde à cette classe de protection ou d'encrassement.

Avertissement
N'utiliser que des accessoires et des pieces de rechange agreés par le fabricant.

Avertissement
Les contrôleurs de moteur doivent être raccordés au réseau conformément aux normes EN et aux prescriptions VDE, de manière à pouvoir être débranchés du réseau à l'aide d'appareils de déconnexion appropriés (p. ex. interrupteur principal, contacteur-disjoncteur, sectioneur de puissance).

Le contrôleur de moteur peut être protégé par un interrupteur de protection contre les courants de court-circuit (RCD = Residual Current protective Device) de 300 mA.

Avertissement
Utiliser des contacts dorés ou des contacts à forte pression de contact pour la commutation des contacts de commande.

Des mesures d'antiparasitage préventives doivent être prises pour les installations de commutation, comme les contacteurs-disjoncteurs et les reliais à circuit RC ou le câblage des diodes.

Observer les consignes et les directives de sécurité du pays dans lequel l'appareil va être utilisé.

Avertissement
Respecter les conditions ambantes indiquées dans la documentation du produit.
Les applications critiques en termes de sécurité sont interdites à moins qu'elles ne soient expressement autorisées par le fabricant.

Les indications relatives à une installation conforme aux normes CEM figurent dans le manuel des produits de la famille CMMP.
Les fabricants de l'installation ou de la machine sont tenus de respecter les valeurs seuils préconisées par les directives nationales en vigueur.

Avertissement
Les caractéristiques techniques, les conditions de raccordement et d'installation du contrôleur de moteur figurent dans ce manuel produit et doivent impérativement être respectées.

Avertissement
DANGER!
Il convient de respecter les directives générales d'installation et de sécurité relatives au travail sur les installations à courant fort (p. ex. DIN, VDE, EN, CEI ou autres prescriptions nationales et internationales).
Tout non-respect peut entraîner la mort, des blessures corporelles ou de graves dommages matériels.

Les directives suivantes en particulier s'appliquent, sans etre exhaustives :
- VDE 0100 Directive relative à la création et à la mise en place d'installations de puissance jusqu'à 1000 Volts
- EN 60204 Equipement electrique des machines
- EN 50178 Equipement en matériel electronique des installations de puissance
2.3.2 Consignes de sécurité liées au montage et à l'entretien
Le montage et l'entretien de l'installation sont dans tous les cas soumis aux directives DIN, VDE, EN et CEI en vigueur, ainsi qu'à toutes les directives nationales et locales en matière de sécurité et de prévention des accidents. Le constructeur ou l'exploitant de l'installation est tenu de veiller au respect de ces consignes :

Avertissement
La commande, l'entretien et/ou la réparation du contrôle de moteur doivent uniquement être effectués par du personnel compétent et dûment formé au travail sur ou avec les apparèils électriques.
Éviter les accidents, les blessures corporelles et/ou les dommages matériels :

Avertissement
Le frein d'arrêt du moteur livre de série ou tout autre frein d'arrêt du moteur externe commandé par un régulateur d'entrainment seul n'est pas prévu pour la protection des personnes!
-
Protégier les axes verticaux de toute chute ou de tout affaisissement possible après mise hors circuit du moteur, par exemple par :
-
verrouillage mécanique des axes verticaux,
-dispositif de freinage, de surete ou de blocage ou - équilibrage de poids suffisant de l'axe.

Avertissement
En cours de fonctionnement, la résistance de freinage externe ou interne entraine et peut entraîner jusqu'à 5 minutes après mise hors circuit du contrôleur de moteur une dangereuse tension de circuit intermédiaire susceptible, en cas de contact, d'entrainer la mort ou de graves blessures corporelles.
- Avant d'effectuer les travaux d'entretien, il convient de s'assurer que l'alimentation électrique est coupée, verrouillée et que le circuit intermédiaire est décharge.
-
Mettre l'équipement électrique hors tension en actionnant l'interrupteur principal et le protégger contre toute remise en marche, attendre jusqu'à ce que le circuit intermédiaire soit déchargé pour :
-
les travaux d'entretien et de réparation
- les travaux de nettoyage
- les longues interruptions de fonctionnement.

Avertissement
Procedure au montage avec précaution. Il faut s'assurer, tant pour le montage que pendant le fonctionnement ultérieur de l'entrainment que ni copeaux de forage, poussière metallique ni pieces de montage (vis, écrous, bouts de cable) ne tombent dans le contrôleur de moteur.

Il convient également de s'assurer que l'alimentation électrique externe du module de commande (24 V) soit coupée.

Une coupure de l'alimentation électrique de l'unité de puissance doit toujours précérer la coupure de l'alimentation 24 V du module de commande.

Avertissement
Toujours effectuer les travaux dans la zone de la machine après avoir coupé et verrouillé l'alimentation en courant alternatively ou continu.
Les étages de sortie mis hors circuit ou la libération de régulateur désactivée ne constituent pas des verrouillages appropriés. En cas de défaillance, un déplacement inopiné de l'entrainment peut tout à fait se produit.

Avertissement
- Proceder à la mise en service en faisant tourner les moteurs à vide pour éviter tout dommage mécanique, dû, p. ex. à un sens de rotation incorrect.

Avertissement
Par principe, les apparciels électroniques n'ont pas de suture intégrée.
- En cas de défaillance de l'appareil électrique, l'utilisateur est tenu de préserver l'état sur de son installation.

Avertissement
DANGER!
Le contrôleur de moteur et la résistance de freinage en particulier, exter ou interne, peuvent absorber des températures élevées susceptibles, en cas de contact, de provoquer de graves brûlures corporelles.
2.3.3 Protection contre le contact avec les pieces électriques
Ce chapitre ne concerne que les apparciels et les composants d'entrainment fonctionnant à des tensions supérieures à 50 Volts. Tout contact avec des pieces fonctionnant à des tensions supérieures à 50 Volts peut s'avérer dangereux pour les personnes et entraîner un choc électrique. Lors du fonctionnement des apparciels électriques, certaines pieces de ces apparciels se trouvent inévitablement sous une tension dangereuse.

Avertissement
Tension mortelle!
Tension électrique de grande intensité!
Danger de mort, risque de blessures par chocoléctrique ou risque de graves blessures corporelles!
2. Consignes de sécurité pour les entrainements et les commandes électriques
Le fonctionnement est dans tous les cas soumis aux normes DIN, VDE, EN et CEI en vigueur, ainsi qu'à toutes les directives nationales et internationales en matière de sécurité et de prévention des accidents. Le constructeur ou l'exploitant de l'installation est tenu de veiller au respect de ces consignes :

Avertissement
Avant toute mise en marche, monter les capotages et les dispositifs prévus de protection contre les contacts sur les apparêils.
Pour les apparèils à monter, la protection contre tout contact direct avec les pieces électriques doit être assurée par un carter externe, comme p. ex. une armoire électrique.
Observer les directives VGB4!

Avertissement
Toujours raccorder le conducteur de protection de l'équipement électrique et des apparèils au réseau d'alimentation.
En raison du filtrer reseau integre,le courant de fuite est supérieur à 3,5mA!

Avertissement
Observer la section de cuivre minimale préconisée conformément à la norme EN 60617 sur toute la longueur de la liaison du conducteur de protection!

Avertissement
Avant toute mise en service, même pour des besoines temporaires de mesure et d'essayi, toujours raccorder le conducteur de protection à l'ensemble des appareils électriques conformément au schéma de câblage ou le relier au conducteur de terre.
Sinon, de fortes tensions peuvent survenir sur le carter et provoquer un chocoléctrique.

Avertissement
Ne pas toucher les points de raccordement électrique des composants à l'etat sous tension.

Avertissement
- Avant d'acceder aux pieces électriques soumises à des tensions supérieures à 50 Volts, débrancher l'appareil du secteur ou de la source d'alimentation.
- Le protégger contre toute remise en marche.

Avertissement
Lors de l'installation et surtout en matière d'isolement et de mesures de protection, il convient de tener compte de la tension de circuit intermédiaire.
Il faut prévoir une mise à la terre et un dimensionnement des conducteurs appropriés ainsi qu'une protection contre les courts-circuits correspondante.

Avertissement
L'appareil est doté d'un circuit de décharge rapide de circuit intermédiaire conforme à la norme EN 60204, article 6.2.4. Dans certaines configurations d'appareil, surtout lors de la commutation parallele de plusieurs contrôleurs de moteur dans le circuit intermédiaire ou en cas d'une résistance de freinage non raccordée, le dispositif de décharge rapide peut s'avérer sans effet. jusqu'à 5 minutes après la mise hors circuit, les contrôleurs de moteur peuvent alors être parcours d'une tension dangereuse (charge résiduelle de condensateur).
2.3.4 Protection par très bassé tension de sécurité (TBTS) contre les chocs électriques
L'intégrality des raccordements et des bornes du contrôleur de moteur soumises à des tensions compris entre 5 et 50 Vols sont des très basses tensions de sécurité protégées contre les contacts accidentels conformément aux normes suivantes :
- au niveau international : CEI 60364-4-41
- dans les pays européens membres de l'UE : EN 50178/1998, article 5.2.8.1

Avertissement
DANGER!
Danger de mort ou de blessures par chocoléctrique!
Seuls des appareils, des composants et des cables électriques représentant une très basse tension de sécurité (TBTS / PELV = Protective Extra Low Voltage) peuvent être raccordés aux raccordements et aux bornes soumises à des tensions comprises entre 0 et 50 Volts.
Ne raccorder que des tensions et des circuits électriques séparés avec suturetés des tensions dangereuses.
Une séparation sûre est par exemple obtenu par le raccordement de transformateurs de séparation, d'optocoupleurs à sécurité intrinsèque ou par un fonctionnement sur pile.
2.3.5 Protection contre les mouvements dangereux
Les mouvements dangereux peuvent être occasionnés par une commande erronée des moteurs raccordés. Les causes peuvent être des plus diverses :
- câblage mal effectué ou erroné
- erreur lors de la commande des composants
- erreurs des transducteurs et des générateurs de signaux
- composants défectueux ou non conformes CEM
- erreur logicielle du système de commande de niveau supérieur.
Ces erreurs peuvent survenir immédiatement après la mise en marche ou après une période indéterminée en cours de service.
Les surveillances intégrées aux composants d'entrainment excluent quasiment tout dysfonctionnement des entrainements raccordés. En matière de protection des personnes et tout particulièrement de risque de blessures corporelles et/ou de dommages matériels, il convient de se fier uniquement à ces faits. jusqu'à l'activation des surveillances intégrées, il faut dans tous les cas s'attendre à un mouvement d'entrainment erroné dont l'ampleur dépend du type de commande et de l'état de fonctionnement.

Avertissement
DANGER!
Mouvements potentiellement dangereux!
Danger de mort, risque de blessures, de graves blessures corporelles ou de dommages matériels!
Pour les raisons indiquées ci-dessus, la protection des personnes doit être assurée par des surveillancees ou des mesures de niveau supérieur et applicables à toute l'installation. Le fabricant de l'installation doit les prévoir en fonction des caractéristiques spécifiques de l'installation après voir procédé à une analyse des dangers et des erreurs. Sans outlier d'intégrer les directives de sécurité valables pour l'installation. La désactivation, le pontage ou l'activation erronée des dispositifs de protection peut provoquer des mouvements arbitraires de la machine ou d'autres dysfonctionnements.
2.3.6 Protection contre le contact avec les pièces chaudes

Avertissement
DANGER!
Surface chaudes possibles sur le boîtier de l'appareil !
Risque de blessure! Risque de brûlures!

Avertissement
Risque de brûlures!
- Ne pas toucher la surface du carter à proximé de sources de chaleur!
- Avant toute intervention, laisser refroidir les apparèils 10 minutes après la désactivation.
Tout contact avec des parties chaudes de l'équipement, comme le carter de l'appareil, contenant des dissipateurs de chaleur et des résistances, risque de provoquer des brûlures!
2.3.7 Protection lors de la manipulation et du montage
La manipulation et le montage de certains composants et pieces de manière inappropriée peut, dans des conditions défavorables, entraîner des blessures.

Avertissement
DANGER!
Risque de blessure dû à une manipulation incorrecte!
Blessures corporelles par écrasement, cisaillement, coupure, chocs!
Consignes generales de sécurité applicables :

Avertissement
- Observer les consignes d'installation et de sécurité en matière de manipulation et de montage.
Utiliser des dispositifs de montage et de transport appropriés. - Empêcher tout blocage et tout écrasement enPNANT des mesures préventives appropriées.
- N'utiliser que des outils ajustats. Dans la mesure où cela est préconisé, utiliser des outils spéciaux.
- Mettre en œuvre les dispositifs de levage et les outils de manière ajustate.
- Si nécessaire, utiliser les équipements de protection appropriés (par exemple, lunettes de protection, chaussures de sécurité, gants de protection).
- Ne pas stationner en dessous de charges suspendues.
-
Essuyer immédiatement les fuites de liquides sur le sol pour éviter de glisser.
-
Câblage et affection des broches
3. Câblage et affectation des broches
3.1 Affectations des broches
Sur la famille d'appareils CMMP, l'interface CAN est deja intégrée au contrôleur de moteur et, ainsi, toujours disponible.
Conformément à la norme, la connexion de bus CAN est assurée par un connecteur Sub-D à 9 pôles (côté contrôle).

Fig. 3.1: Connecteur CAN pour CMMP

Attention
Câblage du bus CAN
Lors du câblage du contrôleur de moteur par le bus CAN, vous devez impératifement observer les informations et les directives suivantes pour réaliser un système stable et sans dysfonctionnements. En cas de câblage incorrect, des troubles peuvent survenir en cours de service sur le bus CAN et entraîner une désactivation pour raisons de sécurité du contrôleur de moteur suite à une erreur.

120 Ω-Résistance terminale
Aucune résistance terminale n'est intégrée aux apparéils de la gamme CMMP.
3.2 Conseils de câblage
Le bus CAN offre une possibilité simple et fiable de relier ensemble en réseau tous les composants d'une installation. À condition toutefois d'observer tous les conseils suivants en matière de câblage.

Fig. 3.2: Exemple de câblage
3. Câblage et affection des broches
- Par principe, les différences nœuds du réseau sont reliés ensemble de manière linéaire, ce qui signifie que le cable CAN est bouclé de contrôleur en contrôleur (voir Fig. 3.2).
- Les deux extrémités du cable CAN doivent chacune être dotées d'une résistance de terminaison de 120 ± 5% . Souvent, les cartes CAN ou l'API sont déjà pré-équipés d'une telle résistance de terminaison qu'il faut prendre en compte de manière correspondante.
- Pour le câblage, il convient d'utiliser un cable blindo avec exactement deux paires de fils torsadés.
Une paire de fils torsadés est utilisé pour le raccordement de CAN-H et CAN-L.
Les fils de l'autre paire sont utilisées conjointement pour CAN-GND.
Au niveau de tous les nœuds, le blinding est relié aux raccordements CAN-Shield.
À la fin de ce chapitre, vous trouvez un tableau des caractéristiques techniques des cables utilisables.
- Nous déconseillons l'utilisation de connecteurs intermédiaires pour le câblage CAN. Si toute fois cela avait s'avérer nécessaire, il faut savoir que des boîtiers de connecteurs métalliques sont utilisés pour relier le blindage du cable.
- Afin de maintainir le couplage parasitique aussi faible que possible, par principe les câbles de moteur ne doivent pas être posés de manière parallele aux cables de signaux.
Les cables de moteur doivent être conçus conformément aux specifications.
Les cables de moteur doivent etre correctement blindés et mis à la terre.
- Pour de plus amples informations sur la pose d'un câblage de bus CAN sans troubles, nous vous renvoyons à la Controller Area Network protocol specification, Version 2.0 de la Robert Bosch GmbH, 1991.
- Caracteristiques techniques des câbles de bus CAN :
2 paires à 2 fils torsadés, d ≥0,22 mm² Résistance de boucle < 0,2 Ω/m
Blindés
Impedance caractéristique 100 ... 120 Ω
- Activation de CANopen
4. Activation de CANopen
4.1 Aperçu
L'activation de l'interface CAN avec le protocole CANopen s'effectue une seule fois par l'intérimédiaire de l'interface série du contrôleur de moteur. Le protocole CAN s'active dans la fenêtre de bus CAN du logiciel de paramétrage.

Il faut régler au total 3 paramètres différents :
Vitesse de transmission
Ce paramètre déterminé le début en baud utilisé sur le bus CAN et exprimé en kBaud. Sachez que des vitesses de transmission élevées nécessitent une faible longueur de cable maximale.
- Numéro de nœud
Pour les besoin de l'identification claire sur le réseau, chaque participant se voit affecté d'un numéro de nœud qui ne survient qu'une seule fois sur le réseau. C'est par l'intérimédiaire de ce numéro de nœud que l'appareil est adressé.
- Protocole
Pour la communication sur le bus CAN, vous disposez au besoin des profils suivants :
- protocole CANopen conforme DS301 avec profil d'application DSP402 ou
- profil de positionnement de Festo FHPP.
Sachez que vous ne pouvez modifier les paramètres cités qu'une fois le protocole désactisé.

Sachez que le paramétrage de la fonctionnalité CANopen est uniquement réservé après une réinitialisation si le jeu de paramètres du contrôleur de moteur a été sauvégardié.
5. Procedure d'accès
5.1 Introduction
CANopen offre une possibilité simple et normalisée d'accès aux paramêtres du contrôleur de moteur (p. ex. le courant maximal du moteur). En outre, chaque paramètre (Objet CAN) recoit un numéro univoque (index et sous-index). L'intégrality de tous les paramêtres configurable est désignée par le nom de repertoire d'objets.
Pour acceder aux objets CAN via le bus CAN, il existe essentiellement deux méthodes : un type d'accès confirmé au cours duquel le contrôleur de moteur acquiitte chaque accès aux paramétres (par messages SDO) et un type d'accès non confirmé se caractérisant par l'absence d'acquittement (par messages PDO).



Fig. 5.1: Procedure d'accès
En règle générale, le contrôleur de moteur se paramètre et se commande par le biais d'accès SDO. Pour les cas d'application spéciaux, sont définis bien d'autres types de messages (ce que l'on appelle des objets de communication) qui sont envoyés par le contrôleur de moteur ou la commande de niveau supérieur :
SDO Service Data Object Sont utilisés pour le paramétrage normal du contrôleur de moteur.
PDO Process Data Object Permettent un échange rapide des données de processus (p. ex. vitesse réelle).
SYNC Message de Synchronisation de plusieurs nœuds CAN Synchronisation
EMCY Emergency Message Transmission de messages d'erreur.
NMT Network Management Service de réseau : Il est p. ex. possible d'agir simultanément sur tous les nœuds CAN.
HEARTBEAT Error Control Protocol Surveillance des partenaires de communication par des messages réguliers.
Chaque message qui est envoyé sur le bus CAN contient uneASF deresse grace à laquelle il est possible de déterminer a quel participant du bus le message est destiné. On désigne ce numero par le terme d'identificateur. Plus l'identificateur est faible, plus la priorité du message est grande.
5.Procedure d'acces
Des identificateurs sont définis pour chacun des objets de communication cités ci-dessus. Le croquis suivant montre la structure de principe d'un message CANopen :

5.2 Accès SDO
Les Service-Data-Objects (SDO) permettent d'acceder au repertoire d'objects du contrôleur de moteur. Cet accès est particulièrement simple et clair. Pour cette raison, il est recommendé de ne commencer à concevoir l'application qu'avac des SDO et de ne transformer que plus tard quelques objets d'accès en Process-Data-Objects (PDO) certes plus rapides, mais aussi plus complexes.
Les accès SDO se font toujours à partir de la commande de niveau supérieur (hôte). La commande de niveau supérieur envoie au contrôleur soit une commande d'écriture, pour modifier un paramètre du réseau d'objects, soit une commande de lecture pour dire un paramètre. À chaque commande, la commande de niveau supérieur reçoit une réponse qui comprend la valeur lue ou, en cas de commande d'écriture, sert de validation.
Afin que le contrôleur de moteur reconnaissse que la commande lui est destinée, l'hote doit envoyer la commande assortie d'un identifient spécifique. Ce dernier se compose de la base 600_h + le numero de nœud du contrôleur de moteur concerné. Le contrôleur de moteur répond de manière par l'identificateur 580_h + le numero de nœud.
La structure des commandes ou des réponses dépend du type de données de l'objet à dire ou à écrire, car il faut envoyer ou receivevoir que 1, 2 ou 4 octets de données. Les types de données suivants sont pris en charge :
| UINT8 | 8 bits sans signe + ou - | 0 | ... | 255 |
| INT8 | 8 bits avec signe + ou - | -128 | ... | 127 |
| UINT16 | 16 bits sans signe + ou - | 0 | ... | 65535 |
| INT16 | 16 bits avec signe + ou - | -32768 | ... | 32767 |
| UINT32 | 32 bits sans signe + ou - | 0 | ... | (232 - 1) |
| INT32 | 32 bits avec signe + ou - | -(231) | ... | (231 - 1) |
5.2.1 Séquences SDO de lecture et d'écriture
Afin de dire ou de déscrie des objets de ces types numériques, il faut utiliser les séquences énoncées ci-après. Les commandes dédiées à l'écriture d'une valeur dans le contrôleur de moteur, commence, selon le type de données, par un identificateur différent.
A contrario, l'identificateur de réponse est toujours identique. Les commandes de lecture commencent toujours par le même identificateur et le contrôleur de moteur répond différemment selon le type de données renvoyé. Tous les nombres sont exprimés en écriture hexadécimale.
5.Procedure d'acces

EXAMPLE
| UINT8 / INT8 | Lecture de l'obj. 6061_00h Données de renvoi : 01h | Écriture de l'obj. 1401_02h Données : EFh | |
| Instruction | 40h 61h 60h 00h | 2Fh 01h 14h 02h EFh | |
| Réponse : | 4Fh 61h 60h 00h 01h | 60h 01h 14h 02h | |
| UINT16 / INT16 | Lecture de l'obj. 6041_00h Données de renvoi : 1234h | Écriture de l'obj. 6040_00h Données : 03E8h | |
| Instruction | 40h 41h 60h 00h | 2Bh 40h 60h 00h E8h 03h | |
| Réponse : | 4Bh 41h 60h 00h 34h 12h | 60h 40h 60h 00h | |
| UINT32 / INT32 | Lecture de l'obj. 6093_01h Données de renvoi : 12345678h | Écriture de l'obj. 6093_01h Données : 12345678h | |
| Instruction | 40h 93h 60h 01h | 23h 93h 60h 01h 78h 56h 34h 12h | |
| Réponse : | 43h 93h 60h 01h 78h 56h 34h 12h | 60h 93h 60h 01h | |

Attention
Il faut dans tous les cas attendre l'acquittement du contrôleur de moteur!
C'est uniquement lorsque le contrôleur de moteur a acquitté la demande que d'autres demandes peuvent être envoyées.
5.2.2 Messages d'erreur SDO
En cas d'erreur de lecture ou d'ecriture (p. ex. parce que la valeur ecrite est trop grande), le contrôleur de moteur repond avec un message d'erreur à la place d'un acquittement :

| Code d'erreur F3 F2 F1 F0 | Signification |
| 05 03 00 00h | Erreur de protocole : bit Toggle (déclenchement) n'a pas été modifié |
| 05 04 00 01h | Erreur de protocole : spécifique de commande client / serveur invalide ou inconnu |
| 06 06 00 00h | Accès erroné suite à un problème matériel *1) |
| 06 01 00 00h | Ce type d'accès n'est pas pris en charge |
| 06 01 00 01h | Accès en lecture à un objet qui peut uniquement être écrit |
| 06 01 00 02h | Accès en écriture à un objet qui peut uniquement être lu |
| 06 02 00 00h | L'objet adressé n'existe pas dans le répertoire d'objects. |
| 06 04 00 41h | L'objet ne peut pas figurer dans un PDO (p. ex. objet-ro dans RPDO) |
| 06 04 00 42h | La longueur des objets inscrites dans le PDO dépasse la longueur de PDO |
| 06 04 00 43h | Erreur de paramétrage générale |
| 06 04 00 47h | Dépassement d'une grandeur interne / Erreur générale |
| 06 07 00 10h | Erreur de protocole : la longueur du paramètre de service ne concorde pas |
| 06 07 00 12h | Erreur de protocole : longueur trop grande du paramètre de service |
| 06 07 00 13h | Erreur de protocole : longueur trop petite du paramètre de service |
| 06 09 00 11h | Le sous-index adressé n'existe pas |
| 06 09 00 30h | Les données dépassent la plage de valeur de l'objet |
| 06 09 00 31h | Les données sont trop volumineuses pour l'objet |
| 06 09 00 32h | Les données sont trop réduites pour l'objet |
| 06 09 00 36h | Le seuil supérieur est inférieur au seuil inférieur |
| 08 00 00 20h | Les données ne peuvent pas être transmises ou sauvegardées *1) |
| 08 00 00 21h | Les données ne peuvent pas être transmises ou sauvegardées car le régulateur travaillée en local |
| 08 00 00 22h | Les données ne peuvent pas être transmises ou sauvegardées car le régulateur ne se trouve pas dans l'état ajustat *3) |
| 08 00 00 23h | Aucun dictionnaire d'objects n'existe *2) |
^1) Sont returnés conformém. à DS301 en cas d'accès erroné aux store_parameters / restore_parameters.
^ 2) Cette erreur est returnee, p. ex. quand un autre système de bus contrôle le contrôleur de moteur ou quand l'accès au paramètre n'est pas autorisé.
^ 3) "Etat" doit être compris au sens général du terme : Il peut aussi bien s'agir du mode de fonctionnement incorrect que d'un module technologique non existant ou similaire.
5.2.3 Simulation d'accès SDO via RS232
Le firmware du contrôleur de moteur offre la possibilité de simuler des accès SDO via l'interface RS232. Ce qui permet ainsi pendant la phase d'essay après l'inscription via le bus CAN de dire et de contrôleur des objets via l'interface RS232. L'utilisation du terminal CI du logiciel de paramétrage facilitite ainsi la création de l'application.
La syntaxe des commandes est la suivante :

Sachez qu'il faut saisir les commandes sous la forme de caractères sans espaces.

1) En cas d'erreur, la reponse est structurée de manière identique pour les 3 commandes d'écriture (8, 16, 32 bits).
Les commandes sont saisies sous forme de caractères sans espaces.

Attention
N'utilisez jamais ces commandes d'essay dans des applications! L'accès via RS232 est exclusivement utilisé pour les besoin d'essay et ne se préte pas à une communication compatible temps réel. La syntaxe des commandes d'essay peut en outre être modifiée à tout moment.
5.3 Message PDO
Les Process-Data-Objects (PDO) permettent de transférer des données orientées événement. Le PDO transfère un ou plusieurs paramètres préalablement définis. À la différence d'un SDO, il n'y a pas d'acquittement lors du transfert d'un PDO. ÀpRES l'activation du PDO, tous les récepteurs doivent donc pouvoir Traitser à tout moment d'eventuels PDO entrants. Ce qui est la plupart du temps synonyme d'une solicitation logicielle importante sur l'ordinateur hote. À cet inconvenient s'oppose l'avantage que l'ordinateur hote n'a pas besoin d'intéroger de manière cyclique les paramètres transférés par un PDO, ce qui entraîne une sollicitation plus réduite du bus CAN.
EXAMPLE
L'ordinaire hote souhaite savoir quand le contrôleur de moteur a terminé son positionnement de A en B.
En cas d'utilisation de SDO, pour ce faire, il doit interroger en permanence, par exemple toutes les milliseconds, l'objet statusword, ce qui a pour effet de fortement exploiter la capacité du bus.
En cas d'utilisation d'un PDO, dés le début de l'application, le contrôleur de moteur est paramétré pour déposer, à chaque modification de l'objet statusword un PDO contenant l'objet statusword.
Au lieu d'intéroger en permanence, un message correspondant est ainsi automatiquement envoyé à l'ordinaire hote dés que l'évenement est survenu.
On distinguish les types de PDO suivants :
Le contrôleur de moteur envoie un PDO dés qu'un événement donné survient
Receive-PDO
Hôte
Le contrôleur de moteur évalue le PDO dés qu'un événement donné survient
le contrôleur de moteur dispose de quatre Transmit PDO et de quatre Receive-PDO.
Dans les PDO, quasiment tous les objets du repertoire d'objets peuvent être inscrits (adressés), c'est-à-dire que le PDO contient comme données p. ex. la valeur réelle de vitesse de rotation, la valeur réelle de position ou similaires. Il faut au préalable indiquer au contrôleur de moteur quelles sont les données à transférer car le PDO ne contient que des données utiles et aucune information sur le type de paramètre. Dans l'exemple ci-dessous, la valeur réelle de position est transférée dans les octets de données 0 ... 3 du PDO et la valeur réelle de vitesse de rotation dans les octets 4 ... 7.

Cette manière permet de définir n'importe quel type de télégramme de données. Les chapitres suivants decrivent les réglages nécessaires.
5.3.1 Description des objets
Identificaturdu PDO
COB_ID_used_by_PDO
Dans l'objet COB_ID_used_by_PDO, il faut introduire
l'identificateur sur lequel le PDO concerné doit être envoyé ou reçu. Si le bit 31 est activé, le PDO correspondant est désactivé. Ceci est le réglage préalable pour tous les PDO.
Le COB-ID ne peut être modifié que lorsque le PDO est désactivé, c'est-à-dire quand le bit 31 est activé. Il n'est ainsi possible d'écrit un autre identificateur que celui actuèlement régle dans le contrôleur que si le bit 31 est simultanément activé.
Le bit 30 activé lors de la lecture de l'identificateur indique que l'objet ne peut pas été interrogé par un Remoteframe. Ce bit est ignoré lors de l'écriture et il est toujours activé lors de la lecture.
Nombre d'objets à transférer
number_ofmappedobjects
Cet objet indique combien d'objets peuvent être adressés dans le PDO correspondant. Tenez compte des limitations suivantes :
Par PDO, 4 objets max. peuvent être adressés.
Un PDO peut contenir au max. 64 bits (8 octets).
Objets à transférer
Pour chaque objet censé être place dans le PDO, il faut communiquer au contrôleur de moteur l'index correspondant, le sous-index et la longueur. L'indication de longueur doit coïncider avec l'indication de longueur dans le dictionnaire d'objets. Il n'est pas possible d'adresser des parties d'un objet.
Les informations d'adressage sont au format suivant :

Pour simplifier l'adressage, la procEDURE suivante est préconisée :
- Le nombre d'objets adressés est réglé sur 0.
- Les paramètres firstmapped_object ... fourthmapped_object peuvent être décrits (la longueur totale de tous les objets n'étant pas significative).
- Le nombre d'objets adressés est régé sur une valeur comprise entre 1 et 4. La longueur de tous ces objets ne doitrialment pas dépasser 64 bits.
Mode de transmission
Pour chaque PDO, il est possible de déterminer quel événement entraîne l'émission (Transmit-PDO) ou l'évaluation (Receive-PDO) d'un message :
| Valeur | Signification | Autorisé pour |
| \( 01_h - F0_h \) | SYNC-MessageLa valeur numérique indique combien de SYNC-Messages doivent être arrivés avant que le PDO- ne soit envoyé (T-PDO) ou- ne soit évalué (R-PDO) | TPDORPDO |
| \( FE_h \) | CycliquementLe PDO de transfert est actualisé de manièrecyclique et envoyé par le contrôleur de moteur.L'intervalle de temps est définir par l'objetinhibit_time.Les PDO de réception, quant à eux, sont évalués dés leur réception. | TPDO(RPDO) |
| \( FF_h \) | ModificationLe PDO de transfert est envoyé quand au moins 1 bita changé dans les données du PDO.inhibit_time permet aussi de définir l'intervalle detempoals minimal entre l'envoi de deux PDO parincréments de 100 μs. | TPDO |
L'utilisation de toutes les autres valeurs n'est pas autorisée.
Masquage
transmit_mask_high et transmit_mask_low
Si "Modification" est besoin comme transmission_type, le TPDO est toujours envoyé quand au moins 1 bit du TPDOs change. Mais souvent, il s'avéré nécessaire de n'envoyer le TPDO que si certains bits ont changé. C'est pourquoit le TPDO peut être doté d'un masque. Seuls les bits du TPDO, régés dans le masque sur "1", sont pris en compte pour l'évaluation d'un changement du PDO. Comme cette fonction est spécifique au constructeur, par défaut tous les bits des masques sont activés.
EXAMPLE
Les objets suivants doivent être transférés ensemble dans un PDO :
| Nom de l'objet | Index_Sous-index | Signification |
| statusword | 6041h_00h | Commande du contrôleur |
| modes_of_operation_display | 6061h_00h | Mode de fonctionnement |
| digital_entries | 60FDh_00h | Entrées numériques |
Il faut utiliser le premier PDO d'émission (TPDO1) devant toujours être envoyé quand l'une des entrées numériques a changé, mais au maximum toutes les 10 ms. Pour ce PDO, il faut utiliser 187_h comme identificateur.
1.) Désactiver PDO
Si le PDO est activé, il faut commencer par le désactiver.
Écriture de l'identificateur avec
bit 31 activé (PDO est
désactivé) : ⇒ cob_id_used_by_pdo = C0000187h
2.) Effacer le nombre des objets
Afin de pouvoir modifier
1'adressage des objets,mettre le
nombre d'objets à zéro. number_ofmappedobjects = 0
3.) Paramétrer les objets destinés à être adressés
Les objets indiqués ci-dessus
doivent être combinés pour former
une valeur de 32 bits :
Index Sous-ind. Longueur => firstmapped_object = 60410010h
= 6041h = 00h = 10h
Index Sous-ind. Longueur => secondmapped_object = 60610008h
= 6061h = 00h = 08h
Index Sous-ind. Longueur => thirdmapped_object = 60FD0020h
= 60FDh = 00h = 20h
4.) Paramétre r le nombre d'objects Le PDO doit containir 3 objets number_ofmappedobjects = 3_h
5.) Paramétrer le mode de transfert
Le PDO est censé être envoyé en
cas de modification (des entrées ⇒ transmission_type = FFh
numériques).
Afin que seule la modification des
entretes numériques déclenché ⇒ transmit_mask_high = 00FFFFF00h
l'envoi, le PDO est masqué de
sorte à ne "laisser passer" que ⇒ transmit_mask_low = 00000000h
les 16 bits de l'objet 60FDn.
Le PDO doit être envoyé au plus
toutes les 10 ms (100x100 μs). ⇒ inhibit_time = 64h
6.) Paramétrer l'identificateur
Le PDO doit être envoyé avec l'identificateur 187_h .
Écriture du nouvel identificateur
et activation du PDO par
effacement du bit 31 : cob_id_used_by_pdo = 40000187,

Veuillez notes que le paramétrage des PDO ne peut, de manière générale, être modifié que quand l'état du réseau (NMT) n'est pas operational. Voir également à ce sujet le chapitre 5.3.3.
5.3.2 Objets de paramétrage des PDO
Les contrôleurs de moteur de la gamme CMMP disposent au total de 4 PDO Transmit et de 4 PDO Receive. Les différents objets dédiés au paramétrage de ces PDO sont identiques pour tous les 4 TPDO et tous les 4 RPDO. Pour cette raison, seule la description de paramètres du premier TPDO est indiquée ci-après de manière explicite. Elle est à utiliser en substance pour tous les autres PDO indiqués ci-après sous forme de tableau :
| Index | \( {1800}_{\mathrm{h}} \) |
| Nom | transmit_pdo_parameter_tpdo1 |
| Object Code | RECORD |
| No. of Elements | 3 |
| Sub-Index | 01h |
| Description | cob_id_used_by_pdo_tpdo1 |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 181h ... 1FFh, Bit 30 et 31 peuvent être activés |
| Default Value | C0000181h |
| Sub-Index | \( {\mathbf{{02}}}_{\mathbf{h}} \) |
| Description | transmission_type_tpdo1 |
| Data Type | UINT8 |
| Access | rw |
| PDO Mapping | no |
| Units | - |
| Value Range | \( 0\ldots 8{\mathrm{C}}_{\mathrm{h}},{\mathrm{{FE}}}_{\mathrm{h}},{\mathrm{{FF}}}_{\mathrm{h}} \) |
| Default Value | \( {\mathrm{{FF}}}_{\mathrm{h}} \) |
5. Procedure d'accès
| Sub-Index | \( {\mathbf{{03}}}_{\mathbf{h}} \) |
| Description | inhibit_time_tpdo1 |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | \( {100\mu }\mathrm{s} \) (p. ex. \( {10} = 1\mathrm{{ms}} \) ) |
| Value Range | - |
| Default Value | 0 |
| Index | 1A00h |
| Nom | transmit_pdo_mapping_tpdo1 |
| Object Code | RECORD |
| No. of Elements | 4 |
| Sub-Index | \( {\mathbf{{00}}}_{\mathrm{h}} \) |
| Description | number_ofmapped_objects_tpdo1 |
| Data Type | UINT8 |
| Access | rw |
| PDO Mapping | No |
| Units | - |
| Value Range | 0 ... 4 |
| Default Value | voir tableau |
| Sub-Index | 01h |
| Description | firstmapped_object_tpdo1 |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | -- |
| Default Value | voir tableau |
5.Procedure d'acces
| Sub-Index | 02h |
| Description | secondmapped_object_tpdo1 |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | -- |
| Default Value | voir tableau |
| Sub-Index | 03h |
| Description | thirdmapped_object_tpdo1 |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | -- |
| Default Value | voir tableau |
| Sub-Index | 04h |
| Description | fourthmapped_object_tpd01 |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | -- |
| Default Value | voir tableau |

Veuillez noter que les groupes d'objects transmit_pdo_parameter_xxx et transmit_pdo_mapping_xxx ne peuvent etre décrites que si le PDO est désactivé (bit 31 dans cob_id_used_by_pdo_xxx activé).
1. Transmit-PDO
Afin que le contrôleur de moteur envoie ou receive des PDO, les points suivants doivent être satisfaits :
- L'objet number_ofmappedobjects doit être différent de zéro.
- Dans l'objet cob_id_used_for_pdos, le bit 31 doit être effacé.
- L'etat de communication du contrôleur de moteur doit être operational (voir chapitre 5.6Fehler! Verweisquelle konnte nicht gefunden werden., Gestion du réseau : Service NMT)
Afin de pouvoir paramétrer les PDO, les points suivants doivent être satisfaits :
- L'etat de communication du contrôleur de moteur ne doit pas'être operational.
5.4 Message SYNC
Plusieurs apparèils d'une installation peuvent être synchronisés. Pour ce faire, l'un des apparèils (généralement la commande de niveau supérieure) envoie périodiquement des messages de synchronisation. Tout les contrôleurs connectés reçoivent ces messages et les utilisent pour Traits le PDO (voir chapitre 5.3).

L'identificateur sur lequel le contrôleur de moteur reçoit le message SYNC est régle par défaut sur 080_h . L'objet cob_id_sync permet de consulter l'identificateur.
5. Procedure d'accès
| Index | 1005h |
| Nom | cob_id_sync |
| Object Code | VAR |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 80000080h, 00000080h |
| Default Value | 00000080h |
5.5 Message d'URGENCE
Le contrôleur de moteur survoie le fonctionnement de ses principaux composants. En font partie l'alimentation électrique, l'étage de sortie, le dispositif d'évaluation du codeur angulaire et les emplacements technologiques. En outre, le moteur (température, codeur angulaire) et les capteurs de fin de course sont surveillés en permanence. Meme des paramétrages erronés peuvent déclencher des messages d'erreur (Division par zéro, etc.) Dès l'apparition d'une erreur, le numéro d'erreur s'affiche sur l'afficheur du contrôleur de moteur. Si plusieurs messages d'erreur survennent simultanément, sur l'afficheur, c'est toujours le message de priorité supérieure (nummer le plus petit) qui s'affiche.
5.5.1 Aperçu
Dés l' apparition d'un message ou lors de l'execution d'un acquittement d'erreur, le régulateur envoie un message EMERGENCY. L'identificateur de ce message se compose de l'identificateur 80_h et du nombre de nœud du régulateur concerné.

Après une réinitialisation, le régulateur se trouve dans l'etat error free (qu'il quitte immédiatement parce qu'une erreur est présente depuis le début). Il est possible de procéder aux transitions d'etat suivantes :
5.Procedure d'acces
Tab. 5.1: Transitions d'etat possibles
| \( {\mathrm{N}}^{\mathrm{o}} \) | Cause | Signification |
| 0 | Initialisation terminée | |
| 1 | Une erreur est survenue | Il n'y avait pas d'erreur et une erreur est survenue. Un télégramme EMERGENCY avec le code d'erreur de l'erreur survenue est envoyé. |
| 2 | Validation des erreurs | Une validation des erreurs (voir chapitre 7.1.5) est tentée mais toutes les causes ne sont pas éliminées. |
| 3 | Une erreur est survenue | Il y a déjà une erreur et une autre erreur est survenue. Marche le télégramme EMERGENCY avec le code d'erreur de la nouvelle erreur est envoyé. |
| 4 | Validation des erreurs | Une validation des erreurs est tentée et toutes les causes sont éliminées. Un télégramme EMERGENCY avec le code d'erreur 0000 est envoyé. |
5.5.2 Structure du message d'URGENCE
Dès l' apparition d'une erreur, le contrôleur de moteur envoie un message d'URGENCE. L'identificateur de ce message se compose de l'identificateur 81_h et du numero de nœud du contrôleur de moteur concerné.
Le message d'URGENCE est constitué de 8 octets de données, les deux premiers octets contenant un error_code, figurant dans le tableau suivant. Le troisième octet contient un autre code d'erreur (Objet 1001_h ). Les cinq autres octets contiennent des zéros.

Les codes d'erreur suivants peuvent survenir :
| error_code (hex) | Affichage | Signification |
| 0000 | -- | Le régulateur est sans erreur |
| 6180 | E 01 0 | Stack Overflow (Débordement de pile) |
| 3220 | E 02 0 | Tension insuffisante du circuit intermédiaire |
| 4310 | E 03 x | Surchauffe du moteur |
| 4210 | E 04 0 | Echauffement de l' étage de sortie |
| 4280 | E 04 1 | Surchauffe circuit intermédiaire |
| 5114 | E 05 0 | Panne tension interne 1 |
| 5115 | E 05 1 | Panne tension interne 2 |
| 5116 | E 05 2 | Panne alimentation circuit d'attaque |
| 5410 | E 05 3 | Tension insuffisante E/S numériques |
| 5410 | E 05 4 | Surintensité de courant E/S numériques |
| 2320 | E 06 x | Court-circuit étage de sortie |
| 3210 | E 07 0 | Sur-tension |
| 7380 | E 08 0 | Erreur de codeur angulaire (résoluver) |
| 7382 | E 08 2 | Erreur signaux de piste Z0 codeur incrémental |
| 7383 | E 08 3 | Erreur signaux de piste Z1 codeur incrémental |
| 7384 | E 08 4 | Erreur signaux de piste codeur incrémental numérique |
| 7385 | E 08 5 | Erreur signaux de piste capteur à effet Hall codeur incrémental |
| 7386 | E 08 6 | Erreur de communication codeur angulaire |
| 7387 | E 08 7 | Amplitude des signaux piste incrémentale erronée |
| 7388 | E 08 8 | Erreur interne du codeur angulaire |
| 7389 | E 08 9 | Codeur angulaire sur X2b non pris en charge |
| 73A1 | E 09 0 | Jeu de paramètres codeur angulaire type CMMP |
| 73A2 | E 09 1 | Impossible de découvert le jeu de paramètres du codeur angulaire |
| 73A3 | E 09 2 | Jeu de paramètres du codeur angulaire : version inconnue |
| 73A4 | E 09 3 | Jeu de paramètres du codeur angulaire : structure des donnéesées algérisée |
| 73A5 | E 09 7 | EEPROM codeur angulaire protégée en écriture |
| 73A6 | E 09 9 | EEPROM codeur angulaire trop petite |
| 8A80 | E 11 0 | Déplacement de référence : erreur au démarrage |
| 8A81 | E 11 1 | Erreur pendant la course de ↔reference |
| 8A82 | E 11 2 | Déplacement de ↔reference : erreur d'impulsion nulle |
| 8A83 | E 11 3 | Déplacement de ↔reference : découvert du temps |
| 8A84 | E 11 4 | Déplacement de ↔reference : capteur de fin de course incorrect / invalide |
| 8A85 | E 11 5 | Déplacement de ↔reference : l' et / erreur de poursuite |
| 8A86 | E 11 6 | Déplacement de ↔reference : fin du trajet de recherche |
| 8180 | E 12 0 | Bus CAN : numéro de nœud en double |
| 8120 | E 12 1 | Erreur de communication CAN : BUS OFF |
| 8181 | E 12 2 | Erreur de communication CAN lors de l'envoi |
| 8182 | E 12 3 | Erreur de communication CAN lors de la ↔ception |
| 6185 | E 15 0 | Division par 0 |
| 6186 | E 15 1 | Dépassement de plage (dépassement/sous-dépassement) |
| 6181 | E 16 0 | Échec de l'exécution du programme |
| 6182 | E 16 1 | Interruption illicite |
| 6187 | E 16 2 | Erreur d'initialisation |
| 6183 | E 16 3 | État inattendu |
| 8611 | E 17 x | Dépassement de la valeur seul erreur de poursuite |
| 5280 | E 21 1 | Erreur 1 Mesure du courant U |
| 5281 | E 21 1 | Erreur 1 Mesure du courant V |
| 5282 | E 21 2 | Erreur 2 Mesure du courant U |
| 5283 | E 21 3 | Erreur 2 Mesure du courant V |
| 6080 | E 25 0 | Type d'appareil invalide |
| 6081 | E 25 1 | Type d'appareil non pris en charge |
| 6082 | E 25 2 | Révision matérielle non prise en charge |
| 6083 | E 25 3 | Fonction d'appareil limitée |
| 5580 | E 26 0 | Jeu de paramètres utilisateur manquant |
| 5581 | E 26 1 | Erreur de somme de contrôle |
| 5582 | E 26 2 | Mémoire : erreur d'écriture |
| 5583 | E 26 3 | Mémoire : erreur de suppression |
| 5584 | E 26 4 | Mémoire : erreur dans la mémoire interne |
| 5585 | E 26 5 | Données de calibrage manquantes |
| 5586 | E 26 6 | Articles de données de position, de données d'utiliser manquants |
| 8611 | E 27 0 | Seuil d'advertissement erreur de poursuite |
| FF01 | E 28 0 | Compteur du nombre d'heures de fonctionnement manque |
| FF02 | E 28 1 | Compteur du nombre d'heures de fonctionnement : erreur d'écriture |
| FF03 | E 28 2 | Compteur d'heures de fonctionnement corrigé |
| FF04 | E 28 3 | Compteur d'heures de fonctionnement converti |
| 6380 | E 30 0 | Erreur de conversion interne |
| 2312 | E 31 0 | Moteur l²t |
| 2311 | E 31 1 | Contrôleur de moteur l²t |
| 2313 | E 31 2 | l²t - PFC |
| 2314 | E 31 3 | Résistance de freinage l²t |
| 3280 | E 32 0 | Temps de charge circuit intermédiaire dépasse |
| 3281 | E 32 1 | Tension insuffisante pour PFC actifs |
| 3282 | E 32 5 | Surcharge vibreur de freinage |
| 3283 | E 32 6 | Temps de décharge circuit intermédiaire dépasse |
| 3284 | E 32 7 | Alimentation en puissance manque pour libération contrôleur |
| 3285 | E 32 8 | Défaillance de l'alimentation en puissance pour libération contrôleur |
| 3286 | E 32 9 | Défaillance de phase |
| 8A87 | E 33 0 | Erreur de poursuite émulation de codeur |
| 8780 | E 34 0 | Erreur de synchronisation (synchronisation correcte) |
| 8781 | E 34 1 | Erreur de Synchronisation (défaillance de la synchronisation) |
| 8480 | E 35 0 | Protection contre l'embalement moteur linéaire |
| 6320 | E 36 x | Paramètre a été limité |
5. Procedure d'accès
| error_code (hex) | Affichage | Signification |
| 8612 | E 40 x | Fin de course logicielle atteinte |
| 8680 | E 42 0 | Positionnement : l'entrainment s'arrêté suite à un positionnement de connecteur manquant |
| 8681 | E 42 1 | Positionnement : l'entrainment s'arrêté car renversement de sens de rotation interdit |
| 8682 | E 42 2 | Positionnement : Inversion non autorisé du sens de rotation après HALT |
| 8081 | E 43 0 | Capteur de fin de course : valeur de consigne négative bloquée |
| 8082 | E 43 1 | Capteur de fin de course : valeur de consigne positive bloquée |
| 8083 | E 43 2 | Capteur de fin de course : positionnement supprimé |
| 8084 | E 45 0 | Alimentation du circuit d'attaque impossible à déconnecter |
| 8085 | E 45 1 | Alimentation du circuit d'attaque impossible à activer |
| 8086 | E 45 2 | Alimentation du circuit d'attaque a été activée |
| 7580 | E 60 0 | Ethernet I |
| 7581 | E 61 0 | Ethernet II |
| F080 | E 80 0 | Dépassement IRQ du régulateur de courant |
| F081 | E 80 1 | Dépassement IRQ du régulateur de vitesse |
| F082 | E 80 2 | Dépassement IRQ de l'asservissement de position |
| F083 | E 80 3 | Dépassement IRQ de l'interpolateur |
| F084 | E 81 4 | Dépassement IRQ niveau bas |
| F085 | E 81 5 | Dépassement IRQ MDC |
| 5080 | E 90 x | Erreur matérielle |
| 6000 | E 91 0 | Erreur d'initialisation interne |
5.5.3 Description des objets
Objet 1003_h : pre_defined_error_field
Le error_code correspondant des messages d'erreur est également archivé dans une mémoire d'erreurs à quatre niveaux. Celle-ci est structurée comme un registre à tiroirs de sorte que la dernière erreur survenue est toujours déposée dans l'objet 1003h_01h (standard_error_field_0). Par le biais d'un accès en lecture à l'objet 1003h_00h (pre_defined_error_field), il est possible de déterminer combien de messages d'erreur sont actuellement déposés dans la mémoire d'erreurs. La mémoire d'erreurs est effacée par écriture de la valeur 00h dans l'objet 1003h_00h (pre_defined_error_field). Afin de pouvoir réactiver l'étage de sortie du contrôleur de moteur après une erreur, il faut aussi effectuer un acquittement d'erreur (voir chapitre 7.1 : Modification d'état 15).
5.Procedure d'acces
| Index | 1003h |
| Nom | pre_defined_error_field |
| Object Code | ARRAY |
| No. of Elements | 4 |
| Data Type | UINT32 |
| Sub-Index | 01h |
| Description | standard_error_field_0 |
| Access | ro |
| PDO Mapping | no |
| Units | -- |
| Value Range | -- |
| Default Value | -- |
| Sub-Index | 02h |
| Description | standard_error_field_1 |
| Access | ro |
| PDO Mapping | no |
| Units | -- |
| Value Range | -- |
| Default Value | -- |
| Sub-Index | 03h |
| Description | standard_error_field_2 |
| Access | ro |
| PDO Mapping | no |
| Units | -- |
| Value Range | -- |
| Default Value | -- |
| Sub-Index | 04h |
| Description | standard_error_field_3 |
| Access | ro |
| PDO Mapping | no |
| Units | -- |
| Value Range | -- |
| Default Value | -- |
5.6 Gestion du réseau (Service NMT)
Tous les apparèils CANopen peuvent être pilotés par l'intérimédiaire du système de gestion du réseau. Pour ce faire, l'identificateur de priorité maximal (000h) est réservé.
NMT permet d'envoyer des commandes à un ou à tous les régulateurs. Chaque commande se compose de deux octets, le premier octet contient le code de commande (command specifier, CS) et le deuxième code, l'adresse du noeud (node id, NI) du régulateur adressé. L'adresse de noeud zéro permet d'adresser simultanément tous les nœuds se trouvant sur le réseau. Il est ainsi possible de déclencher p. ex. simultanément une réinitialisation dans tous les appareils. Les régulateurs n'acquittent pas les commandes NMT. L'exécution reussie ne peut être supposée que de manière indirecte (p. ex. par le biais du message d'activation après une réinitialisation).
Structure du message NMT:

Pour l'etat NMT du nœud CANopen, les états sont définis dans un diagramme d'etat. L'octet CS du message NMT permet de déclencher des modifications d'etat. Ces derniers s'orientent essentiellement par rapport à l'etat cible.
Tab. 5.2 : État NMT Machine
| État NMT Machine | Signification | CS | État cible | ||
| Initialisation Reset Application 15 Reset Communication 16 Initialising 14 Pre-Operational (7Fn) 3 5 7 10 Stopped (04n) 6 8 12 Operational (05) | 2 | Bootup | -- | Pre-Operational | 7Fh |
| 3 | Start Remote Node | 01h | Operational | 05h | |
| 4 | Enter Pre-Operational | 80h | Pre-Operational | 7Fh | |
| 5 | Stop Remote Node | 02h | Stopped | 04h | |
| 6 | Start Remote Node | 01h | Operational | 05h | |
| 7 | Enter Pre-Operational | 80h | Pre-Operational | 7Fh | |
| 8 | Stop Remote Node | 02h | Stopped | 04h | |
| 9 | Reset Communication | 82h | Reset Communication *1) | ||
| 10 | Reset Communication | 82h | Reset Communication *1) | ||
| 11 | Reset Communication | 82h | Reset Communication *1) | ||
| 12 | Reset Application | 81h | Reset Application *1) | ||
| 13 | Reset Application | 81h | Reset Application *1) | ||
| 14 | Reset Application | 81h | Reset Application *1) | ||
| *1) L'état cible final est Pre-Operational (7Fh), car les transitions 15, 16 et 2 sont automatiquement exécutées par le régulateur. | |||||
5.Procedure d'acces
Toutes les autres transitions d'etat sont executées de manière autonome par le régulateur, p. ex. parce que l'initialisation est terminée.
Dans le paramètre NI, il faut indiquer le nombre de nœud du régulateur ou zéro, quand il s'agit d'adresser tous les nœuds se trouvant sur le réseau (Broadcast). En fonction de l'état NMT, certains objets de communication ne peuvent pas être utilisés : Il est ainsi p. ex. impératifement nécessaire de régler l'état NMT sur operational, afin que le régulateur puisse envoyer des PDO.
Tab. 5.3 : État NMT Machine
| Nom | Signification | SDO | PDO | NMT |
| Reset Application | Pas de communication. Les valeurs de réinitialisation (jeu de paramètres d'application) de tous les objets CAN sont restaurées | - | - | - |
| Reset Communication | Pas de communication Le contrôleur CAN est en cours de réinitialisation | - | - | - |
| Initialising | État après réinitialisation matérielle. Réinitialisation du nœud CAN, envoi du message d'amorçage (Bootup) | - | - | - |
| Pre-Operational | Communication via SDO possible PDO non actifs (pas d'envoi / d'évaluation) | X | - | X |
| Operational | Communication via SDO possible Tous les PDO actifs (Envoi / Évaluation) | X | X | X |
| Stopped | Pas de communication hormis de type Heartbeat | - | - | X |

Les télégrammes NMT ne peuvent pas etre envoyes dans un meme burst (immediatement les uns après les autres) !
Entre deux messages NMT successifs sur le bus (meme pour differents nœuds!), il doit y avoir au moins le double du temps de cycle d'asservissement de position afin que le régulateur puisse traiter correctement les messages NMT.

Le cas échéant, l'instruction NMT “Reset Application” est temporisée jusqu'à ce qu'une opération d'archivage en cours soit terminée, sinon l'opération d'archivage resterait incomplete (jeu de paramètres défectueux).
La temporisation peut être de l'ordre de quelques secondes.

L'etat de communication doit être réglé sur operational afin que le régulateur envoie et receive des PDO.
5.7 Bootup
5.7.1 Aperçu
Après l'activation de l'alimentation électrique ou après une réinitialisation, le régulateur signale que la phase d'initialisation est terminée en envoyant un message de Bootup. Le régulateur est alors dans l'état NMT preoperaional (voir chapitre 5.6, Gestion du réseau : Service NMT).
5.7.2 Structure du message Bootup
Le message Bootup est construit pratiquement de la même façon que le message Heartbeat suivant.
À la différence qu'un zéro est envoyé à la place de l'etat NMT.

5.8 Heartbeat (Error Control Protocol)
5.8.1 Aperçu
Pour surveiller la communication entre l'esclave (entrainment) et le maître, il est possible d'activer le protocole Heartbeat. Ici, l'entrainment envoie des messages cycliques au maître. Le maître peut vérifier l' apparition cyclique de ces messages et prendre les mesures correspondantes si ces derniers n'arrivent pas. comme les télégrammes Heartbeat et Nodeguarding (voir chapitre 5.9) sont envoyés avec l'identificateur 700_h + numéro de nœud , les deux protocoles ne peuvent pas être simultanément actifs. Si les deux protocoles sont activés simultanément, seul le protocole Heartbeat est actif.
5. Procedure d'accès
5.8.2 Structure du message Heartbeat
Le télégramme Heartbeat est envoyé avec l'identificateur 700_h + numéro de nœud . Il ne contient qu'1 octet de données utiles, l'état NMT du régulateur (voir chapitre 5.6, gestion du réseau : Service NMT).

5.8.3 Description des objets
Objet 1017_h : producer-heartbeat_time
Afin d'activer la fonctionnalité Heartbeat, il est possible de définir le temps entre deux télégrammes Heartbeat par l'intémediaire de l'objet producer-heartbeat_time.
| Index | 1017h |
| Nom | producer-heartbeat_time |
| Object Code | VAR |
| Data Type | UINT16 |
| Access | rw |
| PDO | no |
| Units | ms |
| Value Range | 0 ... 65535 |
| Default Value | 0 |
Le producer-heartbeat_time peut être archivé dans le jeu de paramètres. Si le régulateur démarre avec un producer-heartbeat_time non égal à zéro, le message Bootup compte comme premier Heartbeat.
Le régulateur ne peut être utilisé que comme Heartbeat Producer. L'objet 1016h (consumer-heartbeat_time) est donc implémenté uniquement pour des raisons de compatibilité et returne toujours 0.
5.9 Nodeguarding (Error Control Protocol)
5.9.1 Aperçu
Également pour surveiller la communication entre l'esclave (entrainment) et le maître, il est possible d'utiliser le protocole Nodeguarding. À la différence du protocole Heartbeat, le maître et l'esclave se surveillent mutuellement :
Le maître s'informe de manière cyclique de l'etat NMT de l'entrainment. Dans chaque réponse du régulateur, un bit donné est inversé (basculé). Si ces réponses ne sont pas envoyées ou si le régulateur répond toujours avec le même bit de changement d'etat, le maître peut réagir en conséquence. De même, l'entrainment survoie l'arrivée régulière des requêtes Nodeguarding du maître : Si les messages ne sont pas envoyés pendant une période donnée, le régulateur déclenché l'erreur 12-4. Comme les télégrammes Heartbeat et Nodeguarding (voir chapitre 5.8) sont envoyés avec l'identificateur 700_h + numéro de nœud , les deux protocoles ne peuvent pas être simultanément actifs. Si les deux protocoles sont activés simultanément, seul le protocole Heartbeat est actif.
5.9.2 Structure du message Nodeguarding
La requête du maître doit être envoyée en tant que Remoteframe avec l'identificateur 700_h + numéro de nœud . Dans un remoteframe, un bit spécifique du télégramme est activé, le bit Remote. Généralement les remoteframe n'ont pas de données.

La réponse du régulateur est structurée de manière analogue au message Heartbeat. Il ne contient qu'1 octet de données utiles, le bit de changement d'etat et l'état NMT du régulateur (voir chapitre 5.6).

5. Procedure d'accès
Le premier octet de donnée (T / N) est structure comme suit :
| Bit | Valeur | Nom | Signification |
| 7 | 80h | toggle_bit | Change avec chaque télégramme |
| 0 ... 6 | 7Fh | nmt_state | 04h Stopped 05h Operational 7Fh Pre-Operational |
Le temps de surveillance est paramétrable pour les requêtes du maître. La surveillance commence avec la première requête distance reçue du maître. À partir de cet instant, les requêtes distantes doivent arriver avant expiration du premier temps de surveillance définir au risque de déclencher une erreur 12-4.
Le bit de changement d'etat est réinitialisé par la commande NMT Reset Communication. Il est donc effacé de la première réponse du régulateur.
5.9.3 Description des objets
Objet 100C_h : guard_time
Pour activer la surveillance Nodeguarding, il faut paramétre le temps maximal entre deux requêtes distances du maître. Ce temps est défini dans le régulateur par le produit du guard_time (100C_h) et du life_time_factor (100D_h) . Il est donc recommandé de déscrire le life_time_factor par 1 et de prédéfinir ensuite le temps directement via le guard_time en milliseconds.
| Index | 100Ch |
| Nom | guard_time |
| Object Code | VAR |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | ms |
| Value Range | 0 ... 65535 |
| Default Value | 0 |
5.9.4 Object 100D : life_time_factor
Le life_time_factor doit être précrit par 1 pour prédéfinir directement le guard_time.
| Index | 100Dh |
| Nom | life_time_factor |
| Object Code | VAR |
| Data Type | UINT8 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0, 1 |
| Default Value | 0 |
Tableau des identificateurs
Le tableau suivant montre un aperçu des identificateurs utilisé.
| Type d'objet | Identificateur (hexadécimal) | Remarque |
| SDO (Hôte au contrôleur) | 600h + numéro de nœud | |
| SDO (Contrôleur à l'hôte) | 580h + numéro de nœud | |
| TPDO1 | 181h | Valeurs standard. Peuvent être modifiées si nécessaire. |
| TPDO2 | 281h | |
| TPDO3 | 381h | |
| TPDO4 | 481h | |
| RPDO1 | 201h | |
| RPDO2 | 301h | |
| RPDO3 | 401h | |
| RPDO4 | 501h | |
| SYNC | 080h | |
| EMCY | 080h + numéro de nœud | |
| HEARTBEAT | 700h + numéro de nœud | |
| NODEGUARDING | 700h + numéro de nœud | |
| BOOTUP | 700h + numéro de nœud | |
| NMT | 000h |
6. Réglage des paramètres
Avant que le contrôleur de moteur puisse executer la tâche souhaiée (régulation des couples, de la vitesse de rotation, positionnement), il faut adapter de nombreux paramètres du contrôleur de moteur au moteur utilisé et à l'application spécifique. Pour ce faire, il faut procéder selon l'ordre indiqué dans les chapitres suivants. ÀpRES le réglage des paramètres, nous aborderons la commande de l'appareil et l'exploitation des différents modes de fonctionnement.

L'afficheur du contrôleur de moteur affiche un "A" (Attention)
quand le contrôleur de moteur n'a pas encore eté paramétré de manière appropriée. Si le contrôleur de moteur doit être intégralement paramétré via CANopen, vous doivent déscrire l'objet 6510_h - C0_h pour supprimer cet affichage;
(voir page 134, Objet 6510_h - C0_h : commissioning_state.
En plus des paramètres décrits ici en détail, le réseau des objets du contrôleur de moteur contient d'autres paramètres qu'il faut implémenter selon CANopen. En règle générale, ils ne contiennent pas d'informations susceptibles d'être utilisées de manière judicieuse lors de la conception d'une application avec la famille CMMP. Si nécessaire, consulter la spécification de tels objets dans [1] et (2) (voir à la page 10).
6.1 Charger et enregistrer des jours de paramètres
6.1.1 Récapitulatif
Le contrôleur de moteur dispose de troisleans de paramétres :
- Jeu de paramètres actuel
Ce jeu de paramètres se trouve dans la mémoire volatile (RAM) du contrôleur de moteur. Il peut être lu et écrit à loisir à l'aide du logiciel de paramétrage via le bus CAN. Lors de la mise en marche du contrôleur de moteur, le jeu de paramètres d'application est copié dans le jeu de paramètres actuel.
- Jeu de paramètres par défaut
Il s'agit du jeu de paramètres prédéfini par défaut par le constructeur et non modifiable du contrôleur de moteur. Une opération d'écriture dans l'objet CANopen 1011_h_01_h (restore_all_default_parameters) permet de copier le jeu de paramètres par défaut dans le jeu de paramètres actuel. Cette opération de copie n'est possible qu'avac l'étage de sortie désactivé.
- Jeu de paramètres d'application
Le jeu de paramètres actuel peut être enregistré dans la mémoire Flash non-volatile. L'opération d'enregistrement est déclenchée par un accès en écriture à l'objet CANopen 1010_h 01 (save_all_parameters). Lors de la mise en marche du contrôleur de moteur, le jeu de paramètres d'application est automatiquement copie dans le jeu de paramètres actuel.
6. Reglage des paramêtres
Le graphique suivant illustrer les relations entre les différents jours de paramètres.

Fig. 6.1: Relations entre les jours de paramètres
On peut envisager deux concepts différents de gestion des jours de paramétres :
- Le jeu de paramètres est créé à l'aide du logiciel de paramétrage et transmis en intégralité aux différents contrôleurs. Lors de cette méthode, seuls les objets exclusivement accessibles via CANopen doivent être régés par l'intérimédiaire du bus CAN. L'inconvénient étant ici que, pour chaque mise en service d'une nouvelle machine ou dans le cas d'une réparation (remplacement de contrôleur), le logiciel de paramétrage sera indispensable. Par conséquent, cette méthode ne s'avère judicieuse que pour les pieces isolées.
- Cette variante est basée sur le fait que la plupart des jours de paramétres spécifique à l'application ne diffèrent du jeu de paramétres par défaut qu'au niveau de quelques paramétres. Il est alors possible que le jeu de paramétres actuel soit nouvellement concu après chaque mise en marche de l'installation via le bus CAN. Pour ce faire, la commande de niveau supérieur commence par charger le jeu de paramétres par défaut (appel de l'objet CANopen 1011h-01h (restore_all_default_parameters)). Ensuite, seuls les objets divergents sont transmis. L'opération compte dure moins d'une seconde pour chaque contrôleur. L'avantage est que cette méthode fonctionne aussi avec les contrôleurs non paramétrés, si bien que la mise en service de nouvelles installations ou le remplacement de différents contrôleurs s'effectue sans problèmes et que le logiciel de paramétrage s'avéré inutilie pour cette opération. Nous recom-mandons l'utilisation de cette méthode.

Avertissement
Avant la toute première mise en route de l'étage de sortie, assurez-vous que le contrôleur comporte juste les paramètres que vous désirez.
Un contrôleur paramétré de manière incorrecte peut tournier de manière incontrôlée et cause des dommages corporels et matériels.
6.1.2 Description des objets
Objet 1011_h : restore_default_parameters
| Index | 1011h |
| Nom | restore_parameters |
| Object Code | ARRAY |
| No. of Elements | 1 |
| Data Type | UINT32 |
| Sub-Index | 01h |
| Description | restore_all_default_parameters |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 64616F6Ch ("load") |
| Default Value | 1 (accès en écriture) |
L'objet 1011_h - 01_h (restore_all_default_parameters) permet demettre le jeu de parametes actuel dans un etat defini. Pour ce faire, le jeu de parametes par défaut est copied dans le jeu de parametes actuel. L'opération de copie est déclenchée par un accès en écriture à cet objet, sachant que l'article de la chaine "load" doit être transmis sous forme hexadécimale.
Cette commande ne peut être executée qu' étage de sortie désactivé. Sinon, l'erreur SDO "Les données ne peuvent pas être transmises ou enregistrées car le contrôleur de moteur ne se trouve pas dans l'état ajustat" est générée. En cas d'envoi d'un identificateur erroné, l'erreur "Les données ne peuvent pas être transmises ou enregistrées" est générée. En cas d'accès en lecture à l'objet, un 1 est renvoyé pour indiquer que la restauration des valeurs par défaut est prise en charge.
Les paramètres de la communication CAN (N° de nœud, vitesse de transmission et mode de fonctionnement) ainsi que de nombreux réglage du codeur angulaire (necessitant pour la plupart une réinitialisation pour prendre effet) restent inchangés.
Objet 1010_h : store_parameters
| Index | 1010h |
| Nom | store_parameters |
| Object Code | ARRAY |
| No. of Elements | 1 |
| Data Type | UINT32 |
6. Réglage des paramètres
| Sub-Index | 01h |
| Description | save_all_parameters |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 65766173h ("save") |
| Default Value | 1 |
Si le jeu de paramètres par défaut est également censé être repris dans le jeu de paramètres d'application, alors, il faut également appeler l'objet 1010h_01h (save_all_parameters).
Si l'objet est écrit par l'intérimédiaire d'un SDO, par défaut, le comportement est de répondre immidiatement au SDO. La ↔ponse ne reflète ainsi par la fin de l'opération de sauvegarde.
Il est néanmoins possible de modifier le comportement par l'intérimédiaire de l'objet 6510_h F0h (compatibility_control).
6.2 Réglages de compatibilité
6.2.1 Aperçu
Afin, d'une part, de pouvoir rester compatible avec les precedentes implémentations CANopen (p. ex. aussi dans d'autres familles d'appareil) et d'autre part de pouvoir executer des modifications et des corrections par rapport à la DSP402 et à la DS301, l'objet compatibilité_control a été inséré. Dans le jeu de paramètres par défaut, cet objet returne 0, c'est-à-dire une compatibilité avec les anciennes versions. Pour les nouvelles applications, nous recommendons d'activer les bits définis afin de permettre une concordance la plus importante possible avec les normes mentionnées.
6.2.2 Description des objets
Objets traités dans ce chapitre
| Index | Objet | Nom | Type | Attr. |
| 6510h_F0h | VAR | compatibility_control | UINT16 | rw |
6. Réglage des paramètres
Objekt 6510_h - FO_h :compatibility_control
| Sub-Index | \( {\mathbf{{FO}}}_{\mathrm{h}} \) |
| Description | compatibility_control |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | - |
| Value Range | 0 ... \( 1{\mathrm{{FF}}}_{\mathrm{h}} \) ,voir tableau |
| Default Value | 0 |
| Bit | Valeur | Nom |
| 0 | \( 0001_h \) | homing_methodscheme* |
| 1 | \( 0002_h \) | reserved |
| 2 | \( 0004_h \) | homing_methodscheme |
| 3 | \( 0008_h \) | reserved |
| 4 | \( 0010_h \) | response_after_save |
| 5 | \( 0020_h \) | reserved |
| 6 | \( 0040_h \) | homing_to_zero |
| 7 | \( 0080_h \) | device_control |
| 8 | \( 0100_h \) | reserved |
Bit 0 homing_method_method*
Le bit a la même signification que le bit 2 et c'est pour des raisons de compatibilité qu'il est present. Si le bit 2 est activé, ce bit est également activé et inversé.
Bit 1 reserved
Le bit est réservé. Il ne doit pas être activé.
Bit 2 homing_methodscheme
Si ce bit est activé, les méthodes de prise de référence 32 ... 35 sont numéroétées selon DSP402, sinon la numération est compatible avec les anciennes implémentations ; (voir aussi chapitre 0). Si ce bit est activé, le bit 0 est également activé et inversé.
Bit 3 reserved
Le bit est réservé. Il ne doit pas être activé.
Bit 4 response_after_save
Si ce bit est activé, la réponse est d'abord envoyée sur save_all_parameters quand l'enregistrement est terminé. Cela peut durer plusieurs secondes, ce qui, le cas échéant entraine un dépassement de temps (timeout) dans la commande. Si le bit est supprimé, la réponse est immédiatement envoyée en tenant toute fois compte du fait que l'opération d'enregistrement n'est pas terminée.
6. Reglage des paramêtres
Bit 5 reserved
Le bit est réservé. Il ne doit pas être activé.
Bit 6 homing_to_zero
Jusqu'ici un déplacement de référence sous CANopen n'est constitué que de 2 phases (phase de recherche et avance lente). Ensuite, l'entrainment ne se déplace pas vers la position zéro calculée (qui, p. ex. peut être décalée par le homing_offset vers la position de référence détectée).
Si ce bit est activé, ce comportement standard est modifié et l'entrainment enchaîne le déplacement de referencia par un déplacement vers le zéro. Voir à ce sujet, le chapitre 1.1, Fehler! Kein gultiges Resultat für Tabelle.
Bit 7 device_control
Si ce bit est activé, le bit 4 du statusword (voltage_enabled) est émis selon DSP 402 v2.0.
Par ailleurs, l'etat FAULT_REACTION.Active se distinguue de I'etat FAULT.
Voir a ce sujet le chapitre 7.
Bit 8 reserved
Le bit est réservé. Il ne doit pas être activé.
6.3 Facteurs de conversion (Factor Group)
6.3.1 Aperçu
Les contrôleurs de moteur sont utilisés dans nombre d'applications concrêtes : en tant qu'entrainment direct, avec réducteur commuté en aval, pour entrainements linéaires. Afin de permettre un paramétrage simple de toutes ces applications, le contrôleur de moteur peut être paramétré avec le Factor Group de manière à ce que l'utilisateur puisse entre rôté sortie toutes les grandeurs, comme p. ex. la vitesse de rotation directement dans les unités souhaïées (p. ex. pour un axe linéaire, les valeurs de position en millimétres et celles de vitesse en millimétres par seconde). Le contrôleur de moteur convertit ensuite les valeurs entreés à l'aide du programme Factor Group dans ses propres valeurs internes. Pour chaque grandeur physique (position, vitesse et accélération) il existe un facteur de conversion destiné à adapter les unités de l'utilisateur à la propre application. Les unités créées par le programme Factor Group sont généralement qualifiées de position.units, speed.units ou de acceleration.units. Le croquis suivant clarifie la fonction du programme Factor Group :
6. Réglage des paramètres

Fig. 6.2 : Factor group
Par principe, tous les paramètres sont enregistrés dans les propres unités internes du contrôleur de moteur et uniquement convertis lors de l'écriture ou de la lecture à l'aide du programme Factor Group.
C'est pourquoi le programme Factor Group doit être régle avant le tout premier paramétrage et qu'il ne faut pas le modifier pendant un paramétrage.
Par défaut le programme Factor Group est réglé sur les unités suivantes :
| Grandeur | Désignation | Unité | Explication |
| Longueur | position.units | Incréments | 65536 Pas de progression par rotation |
| Vitesse | speed.units | \( \mathbf{min}^{-1} \) | Rotations par minute |
| Accélération | acceleration.units | \( \left( \mathbf{min}^{-1} \right)/s \) | Augmentation de vitesse de rotation par seconde |
- Reglage des paramètres
6.3.2 Description des objets
Objets traités dans ce chapitre
| Index | Objet | Nom | Type | Attr. |
| 6093h | ARRAY | position_factor | UINT32 | rw |
| 6094h | ARRAY | velocity Encoder_factor | UINT32 | rw |
| 6097h | ARRAY | acceleration_factor | UINT32 | rw |
| 607Eh | VAR | polarity | UINT8 | rw |
Objet 6093_h : position_factor
L'objet position_factor sert à convertir toutes les unités de longueur de l'application de position.units en unité interne Pas de progression (65536 pas de progression correspondant à 1 rotation). Il est composé d'un numérateur et d'un diviseur.

Fig. 6.3: Récapitulatif: Factor group
| Index | 6093h |
| Nom | position_factor |
| Object Code | ARRAY |
| No. of Elements | 2 |
| Data Type | UINT32 |
6. Reglage des paramètres
| Sub-Index | 01h |
| Description | numerator |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | -- |
| Default Value | 1 |
| Sub-Index | 02h |
| Description | divisor |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | -- |
| Default Value | 1 |
La formule de calcul du position_factor contient les grandeurs suivantes :
gear_ratio
Rapport d'engrenage entre rotations à l'entrée (TRENTRE) et rotations à la sortie (TRSORTIE)
feed_constant
Rapport entre les rotations à la sortie (TR_sortie) et le déplacement en position.units (p. ex. 1 TR = 360° degrés)
Le calcul du position_factors s'effectue à l'aide de la formule suivante :
$$ \text {p o s i t i o n} = \frac {\text {n u m e r a t o r}}{\text {d i v i s o r}} = \frac {\text {g e a r} _ {\text {r a t i o}} \times 6 5 5 3 6}{\text {f e e d} _ {\text {c o n s t a n t}}} $$
Le position_factor doit être écrit séparément par numérateur et dénominateur dans le contrôleur de moteur. Il peut donc s'avérer nécessaire d'arrondir la fraction en nombres entiers par extension appropriée.

Le position_factor ne doit pas etre supérieur a 2^24
EXAMPLE
Tout d'abord, il faut déterminer l'unité souhaitée (colonne 1) et les nombres de décimales souhaités (NK), ainsi que le facteur d'engrenage et, le cas échéant la constante d'avance de l'application. Cette constante d'avance est ensuite exprimée dans les unités de position souhaitées (colonne 2).

1.) Unité souhaïée en sortie (position.units)
2.) feed_constant: Combien de position.units correspondant à 1 rotation (TRSORTTE)
3.) Facteur d'engrenage (gear_ratio): TR ENTREE par TR SORTTE
4.) Insérer les valeurs dans la formule
| 1. | 2. | 3. | 4. | RÉSULTAT Abrégé |
| Pas de progression, 0 NK Pas. | 1 TRSORTIE = 65536 Pas | 1/1 | 1U/1U·65536 Ink/65536 Ink/1U = 1 Ink/1 Ink | num:1 div:1 |
| Degré, 1 NK 1/10 de degré (°/10) | 1 TRSORTIE = 3600 °/10 | 1/1 | 1U/1U·65536 Ink/3600% = 65536 Ink/1U = 3600% | num:4096 div:225 |
| Rotat., 2 NK 1/100 Rotat. (TR/100) | 1 TRSORTIE = 100 TR/100 | 1/1 | 1U/1U·65536 Ink/100% = 65536 Ink/100% | num:16384 div:25 |
| 2/3 | 2U/3U·65536 Ink/100% = 131072 Ink/300% | num:32768 div:75 | ||
| mm, 1 NK 1/10 mm (mm/10) | 63.15 mm/TR ⇒ 1 TRSORTIE = 631.5 mm/10 | 4/5 | 4U/5U·65536 Ink/631.5 mm/1U = 2621440 Ink/31575 mm/10 | num:524288 div:6315 |
6094_h : velocityEncoder_factor
L'objet velocityEncoder_factor sert à convertir toutes les valeurs de vitesse de l'application de speed.units dans l'unité interne Rotations par 4096 minutes. Il est composé d'un numérateur et d'un diviseur.
| Index | 6094h |
| Nom | velocityEncoder_factor |
| Object Code | ARRAY |
| No. of Elements | 2 |
| Data Type | UINT32 |
| Sub-Index | 01h |
| Description | numerator |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | -- |
| Default Value | 1000h |
| Sub-Index | 02h |
| Description | divisor |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | -- |
| Default Value | 1 |
Le calcul du velocityEncoder_factor se compose en principe de deux parties : d'un facteur de conversion d'unités de longueur internes en position.units et d'un facteur de conversion d'unités de temps internes en unités de temps définies par l'utilisateur (p. ex. de secondes en minutes). La première partie correspond au calcul du position_factor, pour la deuxième partie, un facteur supplémentaire vient s'ajouter au calcul :
| time_factor_v | Rapport entre unité de temps interne et unité de temps définie par l'utilisateur ; (p. ex. 1 min = 1/4096 4096 min) |
| gear_ratio | Rapport d'engrenage entre rotations à l'entrée (TRENTREE) et rotations à la sortie (TRSORTIE) |
| feed_constant | Rapport entre les rotations à la sortie (TRSORTIE) et le déplacement en position_units (p. ex. 1 TR = 360° degrés) |
6. Reglage des paramètres
Le calcul du velocityEncoder Factors s'effectue à l'aide de la formule suivante :
VelocityEncoder_factor = numerator/divisor = gear_ratio x time_factor_v / feed_constant

Le velocityEncoder_factor ne doit pas etre supérieur a 2^24
À l'instar du position_factor, le velocityEncoder_factor s'écrit également séparément par numérique et diviseur dans le contrôleur de moteur. Il peut donc s'avérer nécessaire d'arrondir la fraction en nombres entiers par extension appropriée.
6. Reglagedes parametes
EXAMPLE
Tout d'abord, il faut déterminer l'unité souhaïée (colonne 1) et les nombres de décimalles souhaïés (NK), ainsi que le facteur d'engrenage et, le cas échéant la constante d'avance de l'application. Cette constante d'avance est ensuite exprimée dans les unités de position souhaïées (colonne 2). Ensuite, l'unité de temps souhaïée est convertie dans l'unité de temps du contrôleur de moteur colonne 3). Pour finir, toutes les valeurs peuvent être adressées dans la formule et la fraction peut être calculée:

1.) Unite souhaitation en sortie (speed.units)
2.) feed_constant: Combien de position.units correspondent à l rotation (TRcomng) ?
3.) time factor v: Unité de temps souhaitée par unité de temps interne
4.) Facteur d'engrenage (gear_ratio) TRRMR par TRORTE
5.) Insérer les valeurs dans la formule
| 1. | 2. | 3. | 4. | 5. | RÉSULTAT Abrege |
| TR/min 0 MK | 1 TRMONITOR = 1 mm | 1 mm= | 1/1 | 1U 4096 %min/1U 1%/1m= 4096 %min | num:4096 |
Objet 6097_h : acceleration_factor
L'objet acceleration_factor sert à convertir toutes les valeurs d'accelération de l'application de acceleration.units dans l'unité interne Rotations par minute par 256 secondes. Il est composé d'un numérateur et d'un diviseur.
| Index | 6097h |
| Nom | acceleration_factor |
| Object Code | ARRAY |
| No. of Elements | 2 |
| Data Type | UINT32 |
| Sub-Index | 01h |
| Description | numerator |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | -- |
| Default Value | 100h |
| Sub-Index | 02h |
| Description | divisor |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | -- |
| Default Value | 1 |
Le calcul du acceleration_factor se compose également de deux parties : d'un facteur de conversion d'unités de longueur internes en position.units et d'un facteur de conversion d'unités de temps internes au carré en unités de temps au carré définies par l'utilisateur (p. ex. de secondes² en minutes²). La première partie correspond au calcul du position_factor, pour la deuxième partie, un facteur supplémentaire vient s'ajouter :
time_factor_a Rapport entre unité de temps au carré interne et unité de temps au carré définie par l'utilisateur (p. ex. 1 min² = 1 min·1 min = 60 s·1 min = 60/256 256 min·s)
gear_ratio Rapport d'engrenage entre rotations à l'entrée (TRENTRE) et rotations à la sortie (TRSORTIF)
feed_constant Rapport entre les rotations à la sortie (TR_sortie) et le déplacement en position.units (p. ex. 1 TR = 360° degrés)
6. Reglagedes parametes
Le calcul des acceleration factors s'effectue à l'aide de la formule suivante :
acceleration_factor numerator gear_ratio xtime_factor_a divisor feed_constant
Le acceleration_factor s'écrit, lui-aussi, séparément par numérateur et diviseur dans le contrôleur de moteur, ce qui entraine eventuellement la nécessité d'une extension.
EXAMPLE
Tout d'abord, il faut déterminer l'unité souhaïée (colonne 1) et les nombres de décimalles souhaïées (NK), ainsi que le facteur d'engrenage et, le cas échéant la constante d'avance de l'application. Cette constante-d'avance est ensuite exprimée dans les unités de position souhaïées (colonne 2). Ensuite, l'unité de temps² souhaïée est convertie dans l'unité de temps² du contrôleur de moteur (colonne 3). Pour finir, toutes les valeurs peuvent être adressées dans la formule et la fraction peut être calculée :

1.) Unité souhaïée en sortie (acceleration units)
2.) feed_constant: Combien de position.units correspondant à l rotation (TR_ROT) ?
3.) time_factor_a: Unité de temps² souhaïtée par unité de temps² interne
6. Réglage des paramètres
| TR/min22 NK1/100 TR/min, (TR/100 min2) | 1 TRSORTIE=100 TR/100 | 1min2=160 1/mins =256 1/min256·s | 2/3 | 2U.256 1/256 min/s3U.60 1/min2=512 U/min/256 s100 u/100 min2 | num:32div:1125 |
| mm/s21 NK1/10 mm/s, (mm/10s2) | 63.15 mm/TR⇒1 TRSORTIE=631.5 mm/10 | 1s2=60 min·s =160·256 1/min256·s | 4/5 | 4U.60·256 1/min 256 5U.1/s2=122880 U/min/s2631.5 mm/10/1U=6315 mm/s2 | num:8192div:421 |
Objet 607E_h : polarity
Le signe mathématique des valeurs de position et de vitesse du contrôleur de moteur peut être régle à l'aide du polarity_flag correspondant. Cela peut servir à inverser le sens de rotation du moteur en conservant les mêmes valeurs de consigne.
Dans la plupart des applications, il est judicieux de régler le position_polarity_flag et le velocity_polarity_flag sur les mêmes valeurs.
Le réglage du polarity_flag n'influe sur les paramètres que lors de la lecture et de l'écriture. Les paramètres déjà précises dans le contrôleur de moteur ne sont pas modifiés.
| Index | 607Eh |
| Nom | polarity |
| Object Code | VAR |
| Data Type | UINT8 |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 40h, 80h, COh |
| Default Value | 0 |
6.4 Paramètres d'étage de sortie
6.4.1 Aperçu
La tension d'alimentation est envoyée dans l'étage de sortie par l'intérimédiaire d'un circuit de précharge. Lors de la mise sous tension de l'alimentation en puissance, le courant de démarrage est limité et le chargement survillement. Une fois le circuit intermédiaire précharge, le circuit de charge est pointé. Cet état est une condition pour la délivrance de la validation du régulateur. La tension d'alimentation redressée est filtrée par les condensateurs du circuit intermédiaire. Le moteur est alimenté par le circuit intermédiaire par le biais des transistors IGBT. L'étage de sortie contient toute une série de fonctions de sécurité qui, pour la plupart, peuvent se paramétrer :
- Logique de validation du régulateur (validation logicielle et matérielie)
- Surveillance des surintensités de courant
- Surveillance des surtensions / sous-tensions du circuit intermédiaire
- Surveillance de l'unité de puissance
6.4.2 Description des objets
| Index | Objet | Nom | Type | Attr. |
| 6510h | VAR | drive_data |
Objet 6510_h - 10_h : enable_logic
Afin de pouvoir activer l'étage de sortie du contrôleur de moteur, les entrées numériques Validation des étages de sortie et Validation du régulateur doivent être activées : La validation de l'étage de sortie agit directement sur les signaux de commande des transistors de puissance et les couperaient aussi en cas de défaillance du microprocesseur. Le retrait de la validation de l'étage de sortie pendant que le moteur tourne fait en sortie que le moteur s'arrête en roue libre ou qu'il n'est arrêté que par le frein d'arrêt évientuellesment monté. La validation du régulateur est traitée par le microcontrôleur du contrôleur de moteur. Selon le mode de fonctionnement, le contrôleur de moteur réagit différemment après le retrait de ce signal :
Mode de positionnement et fonctionnement régulé en vitesse
Après le retrait du signal, le moteur est freiné avec une rampe de freinage définie. L'étage de sortie n'est désactivé que lorsque le régime moteur est inférieur à 10 min-1 et que le frein d'arrêt eventuellement present est serré.
- Fonctionnement contrôle par couple
L'étage de sortie est désactivé immidiatement après le retrait du signal. Simultanément, un frein d'arrêt évientuèlement present est serré. Le moteur s'arrêt alors en roue libre ou n'est arrêté que par le frein d'arrêt évientuèlement present.

Avertissement
Tension mortelle!
Les deux signaux ne garantissant pas que le moteur est juste hors tension.
6. Réglage des paramètres
En cas de fonctionnement du contrôleur de moteur sur le bus CAN, il est possible de brancher les deux entrées numériques Validation des étages de sortie et Validation du régulateur ensemble sur 24 V et de commander la validation sur le bus CAN. Pour ce faire, l'objet 6510_h - 10_h (enable_logic) doit être activé sur deux. Pour des raisons de sécurité, cela se fait automatiquement lors de l'activation de CANopen (meme après une réinitialisation du contrôleur de moteur).
| Index | \( 6510_{\mathrm {h}} \) |
| Nom | drive_data |
| Object Code | RECORD |
| No. of Elements | 51 |
| Sub-Index | 10h |
| Description | enable_logic |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0 ... 2 |
| Default Value | 2 |
| Valeur | Signification |
| 0 | Entrées numériques Validation des étages de sortie + validation du régulateur |
| 1 | Entrées numériques Validation des étages de sortie + validation du régulateur + RS232 |
| 2 | Entrées numériques Validation des étages de sortie + validation du régulateur + CAN |
Objet 6510_h\_30_h : pwm_frequency
Les pertes de commutation de l'étage de sortie sont proportionnelles à la fréquence de commutation des transistors de puissance. Sur certains appareils de la famille CMMP, la division en deux de la fréquence PWM normale permet de dégager plus de puissance. Ce qui fait toute fois augmenter l'ondulation du courant occasionnée par l'étage de sortie. La commutation n'est possible qu'avocé l'étage supérieur désactivé.
6. Reglage des paramètres
| Sub-Index | 30h |
| Description | pwm_freqency |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0, 1 |
| Default Value | 0 |
| Valeur | Signification |
| 0 | Fréquence d' étage de sortie normale |
| 1 | Demi-fréquence d' étage de sortie |
Objet 6510_h - 3A_h : enable_enhanced_modulation
L'objet enable_enhanced_modulation permet d'activer une modulation sinusoïde étendue. Elle permet une meilleure exploitation de la tension du circuit intermédiaire et des vitesses de rotation d'env. 14% supérieures. Avec pour inconvenient, dans certaines applications que le comportement de régulation et le fonctionnement harmonieux du moteur se dégrément légèrement à très faible vitesse. L'accès en écriture n'est possible qu'avac l'étage supérieur désactivé. Pour prendre la modification en compte, le jeu de paramètres doit être enregistré et il faut procéder à une réinitialisation.
| Sub-Index | \( 3{A}_{n} \) |
| Description | enable_enhanced_modulation |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | - |
| Value Range | 0,1 |
| Default Value | 0 |
| Valeur | Signification |
| 0 | Modulation sinusoïde étendue ARRÊT |
| 1 | Modulation sinusoïde étendue MARCHE |

L'activation de la modulation sinusoïde étendue ne prend effet qu'après une réinitialisation. Le jeu de paramètres doit d'abord être enregistré (save_all_parameters) et, ensuite, il faut procéder à une réinitialisation.
Objet 6510_h\_31_h : power stage temperature
ll est possible de consulter la température de l'étage de sortie par l'intérimédiaire de l'objet power stage temperature. Si la température indiquée dans l'objet 6510_h - 32_h (max_power_stage_temperature) est dépassée, l'étage de sortie se coupe et un message d'erreur est activé.
| Sub-Index | \( 31_{h} \) |
| Description | power stage temperature |
| Data Type | INT16 |
| Access | ro |
| PDO Mapping | yes |
| Units | °C |
| Value Range | -- |
| Default Value | .. |
Objet 6510_h - 32_h : max_power_stage_temperature
ll est possible de consulter la température de l'étage de sortie par l'intérimédiare de l'objet 6510_h - 31_h (power stage temperature). Si la température indiquée dans l'objet max_power_stage_temperature est dépassée, l'étage de sortie se coupe et un message de sortie est activé.
| Sub-Index | 32h |
| Description | max_power_stage_temperature |
| Data Type | INT16 |
| Access | ro |
| PDO Mapping | no |
| Units | °C |
| Value Range | 100 |
| Default Value | en fonction de l'appareil |
| Type d'appareil | Valeur |
| CMMP-AS-C2-3A | 100 °C |
| CMMP-AS-C5-3A | 80 °C |
| CMMP-AS-C5-11A-P3 | 80 °C |
| CMMP-AS-C10-11A-P3 | 80 °C |
6. Reglage des paramètres
Objet 6510_h33_h : nominal dc link circuit voltage
L'objet nominal dc_link_circuit_voltage permet de consulter la tension nominale de l'appareil en millivolts.
| Sub-Index | 33h |
| Description | nominal_dc_link_circuit_voltage |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | mV |
| Value Range | -- |
| Default Value | en fonction de l'appareil |
| Type d'appareil | Valeur |
| CMMP-AS-C2-3A | 360000 |
| CMMP-AS-C5-3A | 360000 |
| CMMP-AS-C5-11A-P3 | 560000 |
| CMMP-AS-C10-11A-P3 | 560000 |
Objet 6510_h34_h : actual_dc_link_circuit_voltage
L'objet actual dc link circuit voltage permet de consulter la tension actuelle en millivolts du circuit intermédiaire.
| Sub-Index | 34h |
| Description | actual_dc_link_circuit_voltage |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | yes |
| Units | mV |
| Value Range | -- |
| Default Value | -- |
Objet 6510_h35_h : max_dc_link_circuit_voltage
L'objet max_dc_link_circuit_voltage indique à partir de chaque tension de circuit intermédiaire l'étage de sortie est coupé pour des raisons de sécurité et un message d'erreur est activé.
| Sub-Index | \( 35_{\mathrm {h}} \) |
| Description | max_dc_link_circuit_voltage |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | mV |
| Value Range | -- |
| Default Value | en fonction de l'appareil |
| Type d'appareil | Valeur |
| CMMP-AS-C2-3A | 460000 |
| CMMP-AS-C5-3A | 460000 |
| CMMP-AS-C5-11A-P3 | 800000 |
| CMMP-AS-C10-11A-P3 | 800000 |
Objet 6510_h36_h :min_dc_link_circuit_voltage
Le contrôleur de moteur dispose d'une surveillance des sous-tensions. Cette dernière peut être activée par l'intermédiaire de l'objet 6510_h - 37_h (enable_dc_link_ undervoltage_error). L'objet 6510_h - 36_h (min_dc_link_circuit_voltage) indique jusqu'à qu'elle tension minimale de circuit intermédiaire le contrôleur de moteur doit travailler. En dessous de cette tension, l'erreur E 02-0 est activée si cela a eté activé avec l'objet suivant.
| Sub-Index | \( {36}_{\mathrm{h}} \) |
| Description | min_dc_link_circuit_voltage |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | no |
| Units | mV |
| Value Range | 0 ... 1000000 |
| Default Value | 0 |
Objet 6510_h\_37_h : enable_dc_link_undervoltage_error
L'objet enable(dc_link_undervoltage_error permet d'activer la surveillance des sous-tensions. Il faut indiquer dans l'objet 6510h-36h (min dc link circuit voltage) jusqu'àquelle tension minimale de circuit intermédiaire le contrôleur de moteur doit travailler.
| Sub-Index | \( 37_{h} \) |
| Description | enable_dcl_link_undervoltage_error |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0, 1 |
| Default Value | 0 |
| Valeur | Signification |
| 0 | Erreur de sous-tension ARRÊT (réaction AVERTISSEMENT) |
| 1 | Erreur de sous-tension MARCHE (réaction VALIDATION RÉGULATEUR ARRÊT) |
L'activation de l'erreur 02-0 est obtenue par la modification de la reaction d'erreur. Les réactions qui entraînent l'arrêt de l'entrainment sont returnées en tant que MARCHE, toutes les autres en tant que ARRÊT. Une description par 0 active la reaction d'erreur AVERTISSEMENT, une description par 1 la reaction d'erreur VALIDATION RÉGULATEUR ARRÊT.
Voir aussi à ce sujet chapitre 6.18, gestion des erreurs.
Objet 6510_h40_h : nominal_current
L'objet nominal_current permet de consulter le courant nominal de l'appareil. Il s'agit simultanément de la valeur limite supérieure susceptible d'être inscrite dans l'objet 6075_h (motor-rated_current).
| Sub-Index | 40h |
| Description | nominal_current |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | mA |
| Value Range | -- |
| Default Value | en fonction de l'appareil |
6. Reglage des paramêtres
| Type d'appareil | Valeur |
| CMMP-AS-C2-3A | 2500 |
| CMMP-AS-C5-3A | 5000 |
| CMMP-AS-C5-11A-P3 | 2500 |
| CMMP-AS-C10-11A-P3 | 5000 |

En raison d'un déclassement de puissance, d'autres valeurs s'affichent le cas échéant en fonction du temps de cycle du régulateur et de la fréquence de l'étage de sortie.
Objet 6510_h - 41_h : peak_current
L'objet peak_current permet de consulter le courant de pointe de l'appareil. Il s'agit simultanément de la valeur limite supérieure susceptible d'être inscrite dans l'objet 6073h (max_current).
| Sub-Index | 41h |
| Description | peak_current |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | mA |
| Value Range | -- |
| Default Value | en fonction de l'appareil |
| Type d'appareil | Valeur |
| CMMP-AS-C2-3A | 5000 |
| CMMP-AS-C5-3A | 10000 |
| CMMP-AS-C5-11A-P3 | 7500 |
| CMMP-AS-C10-11A-P3 | 15000 |

En raison d'un déclassement de puissance, d'autres valeurs s'affichent le cas échéant en fonction du temps de cycle du régulateur et de la fréquence de l'étage de sortie.
6.5 Régulateur de courant et adaptation du moteur

Attention
Des réglages erronés des paramètres du régulateur de courant et des limitations de courant peuvent détruire le moteur et, eventuellement le contrôleur de moteur en l'espace de très peu de temps!
6.5.1 Aperçu
Le jeu de paramètres du contrôleur de moteur doit être adapté pour le moteur raccordé et le jeu de câbles utilisé. Cela concerne les paramètres suivants :
Courant nominal Dependant du moteur
Capacité de surcharge Dépendant du moteur
Nombre de pôles Dépendant du moteur
Régulateur de courant Dépendant du moteur
Sens de rotation Dépendant du moteur et de l'ordre des phases dans le cable du moteur et du codeur angulaire
Angle de décalage Dépendant du moteur et de l'ordre des phases dans le cable du moteur et du codeur angulaire
Ces données doivent être définies avec le logiciel de paramétrage lors de la première utilisation d'un type de moteur. Pour la gamme de moteurs Festo EMMS-AS, vous trouvrez des jours de paramètres sur votre CD d'installation. D'autres jours de paramètres sont disponibles sur Internet sous www.festo.com/download.
Veuillez notes que le sens de rotation et l'angle de décalage dépendant aussi du jeu de cables utilisé. Par conséquent, les produits de paramètres ne fonctionnent qu'avac un câblage identique.

Attention
L'inversion de l'ordre des phases dans le cable du moteur ou du codeur angulaire peut entrainer une contreréaction positive empêchant la vitesse de rotation du moteur. Le moteur peut s'emballer de manière incontrélée!
6.5.2 Description des objets
| Index | Objet | Nom | Type | Attr. |
| 6075h | VAR | motor Rated Current | UINT32 | rw |
| 6073h | VAR | max Current | UINT16 | rw |
| 604Dh | VAR | pole_number | UINT8 | rw |
| 6410h | RECORD | motor_data | rw | |
| 60F6h | RECORD | torque_control_parameters | rw |
Objets concernés traités dans d'autres chapitres
| Index | Objet | Nom | Type | Chapitre |
| 2415h | RECORD | current_limitation | 6.8 Limitation de valeur de consigne |
Objet 6075_h : motor-rated_current
Cette valeur figure sur la plaque signalétique et elle est exprimée dans l'unité milliampère. C'est toujours la valeur effective (RMS) qui est prise. Il est impossible de définir un courant supérieur au courant nominal du contrôleur de moteur (6510_h - 40_h : nominal_current).
Si une nouvelle valeur est écrite dans l'objet 6075h (motor_rate_current), il faut, dans tous les cas, également reparamétrer l'objet 6073h (max_current).
Objet 6073_h : max_current
En règle générale, les servomoteurs peuvent être soumis à des surcharges pendant un certain temps. Cet objet permet de régler le courant moteur maximal admissible. Il se refère au courant nominal du moteur (Objet 6075h: motor-rated_current) et se règle en millièmes. La plage de valeurs est limitée vers le haut par le courant maximal du contrôleur (Objet 6510h-41h: peak_current). De nombreux moteurs peuvent être brievement surcharges du facteur 2. Dans ce cas, il faut inscrite la valeur 2000 dans cet objet.

L'objet 6073h (max_current) ne peut être écrit que si, aparavant l'objet 6075h (motor-rated_current) a été écrit de manière valide.
| Index | 6073h |
| Nom | max_current |
| Object Code | VAR |
| Data Type | UINT16 |
Le nombre de pôles du moteur figure sur la fiche signalétique du moteur ou dans le logiciel de paramétrage. Le nombre de pôles est toujours pair. Souvent, à la place du nombre de pôles, l'on indique le nombre de paires de pôles. Le nombre de pôles correspondant donc au double du nombre de paire de pôles.
Cet objet n'est pas modifié par restore_default_parameters.
| Index | 604Dh |
| Nom | pole_number |
| Object Code | VAR |
| Data Type | UINT8 |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 2 ... 254 |
| Default Value | 4 (selon INIT!) |
6. Réglage des paramètres
Objet 6410_h03_h : iit_time_motion
En règle générale, les servomoteurs peuvent être soumis à des surcharges pendant un certain temps. Cet objet indique combien de temps le moteur connecté peut être mis sous tension selon le courant indiqué dans l'objet 6073h (max_current). Une fois le temps l't écoulé, le courant est limité automatiquement sur la valeur définie dans l'objet 6075h (motor_rate_current) pour la protection du moteur. Le réglage par défaut est de deux secondes et concerne la plupart des moteurs.
| Index | 6410h |
| Nom | motor_data |
| Object Code | RECORD |
| No. of Elements | 5 |
| Sub-Index | 03h |
| Description | iit_time_motion |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | ms |
| Value Range | 0 ... 10000 |
| Default Value | 2000 |
Objet 6410_h04_h : iit_ratio_motion
L'objet iit_ratio_motor permet de consulter le taux d'utilisation actuel en pour mille de la limitation 1^2t .
| Sub-Index | 04h |
| Description | iit_ratio_motion |
| Data Type | UINT16 |
| Access | ro |
| PDO Mapping | no |
| Units | pour mille |
| Value Range | -- |
| Default Value | -- |
6. Réglage des paramètres
Objet 6510_h\_38_h : iit_error_enable
L'objet iit_error_enable permet de déterminer comment le contrôleur de moteur se comporte en cas d'apparition de la limitation l^2 t . Soit c'est uniquement indiqué dans le statusword, soit l'erreur E 31-0 est déclenchée.
| Index | 6510h |
| Nom | drive_data |
| Object Code | RECORD |
| No. of Elements | 51 |
| Sub-Index | \( 38_{h} \) |
| Description | iit_error_enable |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0, 1 |
| Default Value | 0 |
| Valeur | Signification | |
| 0 | Erreur 1²t ARRÊT | (priorité AVERTISSEMENT) |
| 1 | Erreur 1²t MARCHÉ | (priorité VALIDATION RÉGULATEUR ARRÊT) |
L'activation de l'erreur 31-0 est obtenue par la modification de la reaction d'erreur. Les réactions qui entraînent l'arrêt de l'entrainment sont retournées en tant que MARCHE, toutes les autres en tant que ARRÊT. Une description par 0 active la reaction d'erreur AVERTISSEMENT, une description par 1 la reaction d'erreur VALIDATION RÉGULATEUR ARRÊT. Voir chapitre 6.18, gestion des erreurs.
6. Reglage des paramètres
Objet 6410_h\_10_h : phase_order
Dans l'ordre des phases (phase_order), les torsions entre les cables du moteur et les cables du codeur angulaire sont prises en compte. Il figure dans le logiciel de paramétrage. Un zéro correspond à "droite", un un à "gauche".
| Sub-Index | 10h |
| Description | phase_order |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 0, 1 |
| Default Value | 0 |
| Valeur | Signification |
| 0 | A droite |
| 1 | A gauche |
Objet 6410_h - 11_h : encoder_offset_angle
Sur les servomoteurs utilisés, des aimants permanents sont montés sur le rotor. Ces derniers générent un champ magnétique dont l'orientation par rapport au stator dépend de la position du rotor. Pour la commutation électrique, le contrôleur de moteur doit régler le champ electromagnétique du stator toujours dans le bon angle par rapport à ce champ magnétique permanent. Pour ce faire, il déterminé en permanence la position du rotor à l'aide d'un codeur angulaire (résoluver, etc.).
L'orientation du codeur angulaire par rapport au champ magnétique permanent doit être inscrite dans l'objet encoder_offset_angle. Le calcul de paramétrage permet de définir cet angle. L'angle défini à l'aide du calcul de paramétrage se situe autour de ± 180^ . Il doit être converti de la manière suivante :
encoder_offset_angle = "Angle de décalage du codeur angulaire" × 32767180^
Cet objet n'est pas modifié par restore_default_parameters.
| Index | 6410h |
| Nom | motor_data |
| Object Code | RECORD |
| No. of Elements | 5 |
6. Reglage des paramètres
| Sub-Index | 11h |
| Description | encoder_offset_angle |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | yes |
| Units | ... |
| Value Range | -32767 ... 32767 |
| Default Value | E000h (-45°) (selon INIT!) |
Objet 6410_h - 14_h : motor_temperature}sensor_polarity
Cet objet permet de déterminer si un contact à ouverture ou à fermetre est utilisé en tant que capteur numérique de température du moteur.
| Sub-Index | 14h |
| Description | motor temperatur_sensor_polarity |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 0, 1 |
| Default Value | 0 |
| Valeur | Signification |
| 0 | Contact à ouverture |
| 1 | Contact à fermeture |
6. Réglage des paramètres
Objet 6510_h - 2E_h : motor_tempature
Cet objet permet de consulter la température actuelle du moteur en cas de raccordement d'un capteur de température analogique. Sinon, l'objet est indéfini.
| Index | 6510h |
| Nom | drive_data |
| Object Code | RECORD |
| No. of Elements | 51 |
| Sub-Index | \( 2{\mathrm{E}}_{\mathrm{h}} \) |
| Description | motor_temperature |
| Data Type | INT16 |
| Access | ro |
| PDO Mapping | yes |
| Units | ℃ |
| Value Range | - |
| Default Value | - |
Objet 6510_h - 2F_h : max_motor_temperature
En cas de dépassement de la température du moteur définie dans cet object, il se produit une réaction conformément à la gestion des erreurs (erreur 3-0, surchauffe moteur analogique). En cas de paramétrage d'une réaction conduisant à l'arrêt de l'entrainment, un message Emergency est envoyé.
Pour le paramétrage de la gestion des erreurs, voir chapitre 6.18.
| Sub-Index | \( 2{\mathrm{F}}_{\mathrm{h}} \) |
| Description | max_motion_temperature |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | no |
| Units | ℃ |
| Value Range | 20 ... 300 |
| Default Value | 100 |
Objet 60F6_h : torque_control_parameters
Les données du régulateur de courant doivent être prélevées dans le logiciel de paramétrage. Lors de cette opération, il faut observer les conversions suivantes :
L'amplification du régulateur de courant doit être multipliee par 256. Pour une amplification de 1,5 au menu "Régulateur de courant" du logiciel de parametrage, l'objet torque_control_gain doit être renseigné avec la valeur 384 = 180_h
La constante de temps du régulateur de courant est indiquée en milliseconds dans le logiciel de paramétrage. Afin de pouvoir transférer cette constante de temps dans l'objet torque_control_time, elle doitAAPARAVANTetre convertie en microsecondes.
En conséquence, pour une valeur de temps indiquée de 0,6 milliseconds, il faut inscrite la valeur 600 dans l'objet torque_control_time.
| Index | 60F6h |
| Nom | torque_control_parameters |
| Object Code | RECORD |
| No. of Elements | 2 |
| Sub-Index | 01h |
| Description | torque_control_gain |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | 256 = “1” |
| Value Range | 0 ... 32 * 256 |
| Default Value | 3 * 256 (768) |
| Sub-Index | 02h |
| Description | torque_control_time |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | μs |
| Value Range | 104 ... 64401 |
| Default Value | 1020 |
6.6 Régulateur de vitesse
6.6.1 Aperçu
Le jeu de paramètres du contrôleur de moteur doit être adapté pour l'application. C'est sur tout l'amplification qui dépend fortement des masses eventuelsment accouplées au moteur. Lors de la mise en service de l'installation, les données doivent être déterminées de manière optimale à l'aide du logiciel de paramétrage.

Attention
Des réglages erronés des paramètres du régulateur de vitesse peuvent entraîner de fortes vibrations et évientulement détruire des parties de l'installation!
6.6.2 Description des objets
| Index | Objet | Nom | Type | Attr. |
| 60F9n | RECORD | velocity_control_parameters | rw | |
| 2073n | VAR | velocity_display_filter_time | UINT32 | rw |
Objet 60F9_h : velocity_control_parameters
Les données du régulateur de vitesse doivent être prélevées dans le logiciel de paramétrage. Lors de cette opération, il faut observer les conversions suivantes :
L'amplification du régulateur de vitesse doit être multipliee par 256.
Pour une amplification de 1,5 au menu "Régulateur de vitesse" du logiciel de paramétrage, l'objet velocity_control_gain doit être renseigné avec la valeur 384 = 180_n
La constante de temps du régulateur de vitesse est indiquée en milliseconds dans le logiciel de paramétrage. Afin de pouvoir transférer cette constante de temps dans l'objet velocity_control_time, elle doitAAPARAVANT être convertie en microsecondes.En conséquence, pour une valeur de temps indiquée de 2,0 milliseconds, il faut inscrite la valeur 2000 dans l'objet velocity_control_time.
| Index | 60F9h |
| Nom | velocity_control_parameter_set |
| Object Code | RECORD |
| No. of Elements | 3 |
6. Reglage des paramètres
| Sub-Index | 01h |
| Description | velocity_control_gain |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | 256 = Gain 1 |
| Value Range | 20 ... 64 * 256 (16384) |
| Default Value | 256 |
| Sub-Index | 02h |
| Description | velocity_control_time |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | μs |
| Value Range | 1 ... 32000 |
| Default Value | 2000 |
| Sub-Index | 04h |
| Description | velocity_control_filter_time |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | μs |
| Value Range | 1 ... 32000 |
| Default Value | 400 |
Objet 2073_h : velocity_display_filter_time
L'objet velocity_display_filter_time permet de régler le temps de filtré du filtré de valeur réelle de vitesse affichée.
| Index | 2073h |
| Nom | velocity_display_filter_time |
| Object Code | VAR |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | no |
| Units | μs |
| Value Range | 1000 ... 50000 |
| Default Value | 20000 |

Sachez que l'objet velocityactual_value-filtered est utilisé pour la protection contre l'embalement. En cas de temps de filtré important, une erreur d'embalement ne sera détectée qu'vec une temporisation correspondante.
6.7 Asservissement de position (Position Control Function)
6.7.1 Aperçu
Ce chapitre décrit tous les paramètres nécessaires à l'asservissement de position. À l'entrée de l'asservissement de position se trouve la valeur de consigne de position (position_demand_value) du générateur de courbes de déplacement. En outre, la valeur réelle de position (positionactual_value) du codeur angulaire (résoluver, codeur incremental, etc.) est ajoutée. Le comportement de l'asservissement de position peut être influencé par certains paramètres. Afin deMAINTRER le circuit de régulation de position stable, une limitation de la grandeur de sortie (control_effort) est possible. La grandeur de sortie est ajoutée au régulateur de vitesse en tant que valeur de consigne de vitesse. Toutes les grandeurs d'entrée et de sortie de l'asservissement de position sont converties dans le Factor Group des unités spécifiques à l'application dans les unités internes correspondantes du régulateur.
Les sous-fonctions suivantes sont définies dans ce chapitre :
1. Erreur de poursuite (Following_Error)
L'erreur de poursuite désigne l'écart de la valeur réelle de position (positionactual_value) par rapport à la valeur de consigne de position (position_demand_value). Lorsque, pendant une période donnée, cette erreur de poursuite est plus grande que la valeur indiquée dans la fenêtre d'erreur de poursuite (following_error_window), le bit 13 following_error est activé dans l'objet statusword. La période admissible peut être définie grâce à l'objet following_error_time_out.

Fig. 6.4: Erreur de poursuite - Aperçu de la fonction
6. Réglage des paramètres
La Fig. 6.5 montre comment la fonction de fenêtre est définie pour le message "Erreur de poursuite". De manière symétrique autour de la position de consigne (position_demand_value) x1, la plage entre x_i - x_0 et x_i + x_0 est définie. Les positions x_t2 et x_t3 se trouvent, p. ex. en dehors de cette fenêtre (following_error_window). Lorsque l'entrainment quitte cette fenêtre et qu'il ne returne pas dans la fenêtre selon le délai prédéfini dans l'objet following_error_time_out, le bit 13 following_error dans statusword est activé.

Fig. 6.5: Erreur de poursuite
Cette fonction offre la possibilité de définir une fenêtre de position autour de la position cible (target_position). Lorsque la position réelle de l'entrainment, la position_window_time se trouve dans cette zone pendant une période donnée, le bit 10 associé (targetReached) est activé dans statusword.

Fig. 6.6: Position atteinte - Aperçu de la fonction
La Fig. 6.7 montre comment la fonction de fenêtre est définie pour le message "Position atteinte". De manière symétrique autour de la position cible (target_position) x_i , la zone de position entre x_i - x_0 et x_i + x_0 est définie. Les positions x_t0 et x_t1 se trouvent, p. ex. à l'intérieur de cette fenêtre de position (position_window). Lorsque l'entrainment se trouve dans cette fenêtre, un temporisateur est lancé dans le contrôleur de moteur. Lorsque ce temporisateur atteint le temps prédéfini dans l'objet position_window_time et que l'entrainment se trouve sans interruption pendant cette période dans la plage valide entre x_i - x_0 et x_i + x_0 , le bit 10 targetReached est activé dans le statusword. Dés que l'entrainment quitte la plage admissible, le bit 10 et le temporisateur sont remis à zéro.
6. Réglage des paramètres

Fig. 6.7: Positionatteinte
6.7.2 Description des objets
Objets traités dans ce chapitre
| Index | Objet | Nom | Type | Attr. |
| 202Dh | VAR | position_demand-sync_value | INT32 | ro |
| 2030h | VAR | set_position absolute | INT32 | wo |
| 6062h | VAR | position_demand_value | INT32 | ro |
| 6063h | VAR | positionactual_value* | INT32 | ro |
| 6064h | VAR | positionactual_value | INT32 | ro |
| 6065h | VAR | following_error_window | UINT32 | rw |
| 6066h | VAR | following_error_time_out | UINT16 | rw |
| 6067h | VAR | position_window | UINT32 | rw |
| 6068h | VAR | position_window_time | UINT16 | rw |
| 607Bh | ARRAY | position_range_limit | INT32 | rw |
| 60FAh | VAR | control_effort | INT32 | ro |
| 60FBh | RECORD | position_control_parameter_set | rw | |
| 60FCh | VAR | position_demand_value* | INT32 | ro |
| 6510h_20h | VAR | position_range_limit_enable | UINT16 | rw |
| 6510h_22h | VAR | position_error.switch_off_limit | UINT32 | rw |
Objets concernés traités dans d'autres chapitres
| Index | Objet | Nom | Type | Chapitre |
| 607Ah | VAR | target_position | INT32 | 8.3 Mode de fonctionnement Positionnement |
| 607Ch | VAR | home_offset | INT32 | 8.1 Déplacement de référence |
| 607Dh | VAR | software_position_limit | INT32 | 8.3 Mode de fonctionnement Positionnement |
| 607Eh | VAR | polarity | UINT8 | 6.3 Facteurs de conversion |
| 6093h | VAR | position_factor | UINT32 | 6.3 Facteurs de conversion |
| 6094h | ARRAY | velocityEncoder_factor | UINT32 | 6.3 Facteurs de conversion |
| 6096h | ARRAY | acceleration_factor | UINT32 | 6.3 Facteurs de conversion |
| 6040h | VAR | controlword | INT16 | 7.1.3 Controlword (mot de ommande) |
| 6041h | VAR | statusword | UINT16 | 7.1.5 Statusword (mot d'état) |
Objet 60FB_h : position_control_parameter_set
Le jeu de paramètres du contrôleur de moteur doit être adapté pour l'application. Lors de la mise en service de l'installation, les données de l'asservissement de position doivent être déterminées de manière optimale à l'aide du logiciel de paramétrage.

Attention
Des réglages erronés des paramètres d'asservissement de position peuvent entraîner de fortes vibrations et évientulement détruire des parties de l'installation!
L'asservissement de position compare la position de consigne à la position réelle et déterminé, en tenant compte de l'amplification et évientuellesment de l'intégrateur, une vitesse de correction (Objet 60FA_h : control_effort), qui est ajoutée au régulateur de vitesse. Comparé au régulateur de courant et au régulateur de vitesse, l'asservissement de position est relativement lent. Le régulateur travaille donc en interne avec des valeurs de consigne injectées, ce qui minimise le travail de réglage pour l'asservissement de position et permet au régulateur de répondre rapidement.
Normalement, un circuit proportionnel suffit en tant qu'asservissement de position. L'amplification de l'asservissement de position doit être multipliee par 256. Pour une amplification de 1,5 au menu "Asservissement de position" du logiciel de parametrage, la valeur 384 doit être inscrite dans l'objet position_control_gain.
Normalement, l'asservissement de position peut se passer d'un intégrateur. Dans ce cas, il faut inscrite la valeur zéro dans l'objet position_control_time. Sinon, il faut convertir la constante de temps de l'asservissement de position en microseconds. Pour une valeur de temps 4,0 millisecond, il faut inscrite la valeur 4000 dans l'objet position_control_time.
6. Reglage des paramètres
Comme l'asservissement de position convertit deja les écarts de position les plus infimes en vitesses de correction notables, dans le cas d'une courte panne (p. ex. blocage bref de l'installation),ILAentrainerait de très importantes opérations de réglage avec d'importantes vitesses de correction.C'est a eviter quand,via I'objet position_control_v_max,la sortie de l'asservissement de position est limite de maniere significative (p.ex. 500min^-1
L'objet position_error_tolerance_window permet de définir l'ampleur d'un écart de position synonyme de non intervention de l'asservissement de position (zone morte). Ceci peut être mis en œuvre pour la stabilisation quand, p. ex. il y a du jeu dans l'installation.
| Index | \( {60}{\mathrm{{FB}}}_{\mathrm{h}} \) |
| Nom | position_control_parameter_set |
| Object Code | RECORD |
| No. of Elements | 4 |
| Sub-Index | 01h |
| Description | position_control_gain |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | 256 = “1” |
| Value Range | 0 ... 64 * 256 (16384) |
| Default Value | 102 |
| Sub-Index | 02h |
| Description | position_control_time |
| Data Type | UINT16 |
| Access | ro |
| PDO Mapping | no |
| Units | μs |
| Value Range | 0 |
| Default Value | 0 |
| Sub-Index | 04h |
| Description | position_control_v_max |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | no |
| Units | speed units |
| Value Range | 0 ... 131 072 min-1 |
| Default Value | 500 min-1 |
| Sub-Index | \( 05_h \) |
| Description | position_error_tolerance_window |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | no |
| Units | position units |
| Value Range | 1 ... 65536 (1 TR) |
| Default Value | 2 (1 / 32768 TR) |
Objet 6062_h : position_demand_value
Cet objet permet de consulter la position de consigne actuelle. Cette dernière est envoyée à l'asservissement de position par le générateur de courbes de déplacement.
| Index | 6062h |
| Nom | position_demand_value |
| Object Code | VAR |
| Data Type | INT32 |
| Access | ro |
| PDO Mapping | yes |
| Units | position units |
| Value Range | -- |
| Default Value | -- |
Objet 202D_h : position_demand_sync_value
Cet objet permet de consulter la position de consigne du capteur de synchronisation. Cette dernière est définie par l'objet 2022h synchronizationEncoder_select (chapitre 6.11). Cet objet est renseigné en unités définies par l'utilisateur.
| Index | 202Dh |
| Nom | position_demand_sync_value |
| Object Code | VAR |
| Data Type | INT32 |
| Access | ro |
| PDO Mapping | no |
| Units | position units |
| Value Range | -- |
| Default Value | -- |
6. Réglage des paramètres
Objet 6064_h : positionactual_value
Cet objet permet de consulter la position réelle. Cette dernière est envoyée à l'asservissement de position par le codeur angulaire. Cet objet est renseigné en unités définies par l'utilisateur.
| Index | 6064h |
| Nom | positionactual_value |
| Object Code | VAR |
| Data Type | INT32 |
| Access | ro |
| PDO Mapping | yes |
| Units | position units |
| Value Range | -- |
| Default Value | -- |
Objet 6065_h : following_error_window
L'objet following_error_window (fenêtre d'erreur de poursuite) définit une zone symétrique autour de la valeur de consigne de position (position_demand_value). Lorsque la valeur réelle de position (positionactual_value) se situe en dehors de la fenêtre d'erreur de poursuite (following_error_window), une erreur de poursuite se produit et le bit 13 est activé dans l'objet statusword. Une erreur de poursuite peut être générée par les causes suivantes :
- l'entrainment est bloqué
- la vitesse de positionnement est trop grande
- les valeurs d'accelération sont trop élevées
- l'objet following_error_window contient une valeur trop faible
- l'asservissement de position n'est pas correctement paramétré.
| Index | 6065h |
| Nom | following_error_window |
| Object Code | VAR |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | yes |
| Units | position units |
| Value Range | -- |
| Default Value | 9101 (9101 / 65536 TR = 50°) |
6. Réglage des paramètres
Objet 6066_h : following_error_time_out
Si une erreur de poursuite se produit, plus longue que définie dans cet objet, le bit 13 following_error correspondant est activé dans le statusword.
| Index | 6066h |
| Nom | following_error_time_out |
| Object Code | VAR |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | yes |
| Units | ms |
| Value Range | 0 ... 27314 |
| Default Value | 0 |
Objet 60FA_h : control_effort
La grandeur de sortie de l'asservissement de position peut être consultée par l'inté médiaire de cet objet. Cette valeur est ajoutée en interne au régulateur de vitesse en tant que valeur de consigne.
| Index | 60FAh |
| Nom | control_effort |
| Object Code | VAR |
| Data Type | INT32 |
| Access | ro |
| PDO Mapping | yes |
| Units | speed units |
| Value Range | -- |
| Default Value | -- |
6. Réglage des paramètres
Objet 6067_h : position_window
L'objet position_window permet de définir une zone symétrique autour de la position cible (target_position). Quand la valeur réelle de position (positionactual_value) se trouve pendant une période donnée à l'intérieur de cette zone, la position cible (target_position) est considérée comme atteinte.
| Index | 6067h |
| Nom | position_window |
| Object Code | VAR |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | yes |
| Units | position units |
| Value Range | -- |
| Default Value | 1820 (1820 / 65536 TR = 10°) |
Objet 6068_h : position_window_time
Lorsque la position réelle de l'entrainment se trouve à l'intérieur de la fenêtre de positionnement (position_window), à savoir aussi longtemps que définis dans cet objet, le bit 10 target_reached correspondant est activé dans le statusword.
| Index | 6068h |
| Nom | position_window_time |
| Object Code | VAR |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | yes |
| Units | ms |
| Value Range | -- |
| Default Value | 0 |
Objet 6510_h22_h : position_error_SWITCH_off_limit
L'objet position_error_SWITCH_off_limit permet d'entrez l'écart maximal admissible entre la position de consigne et la position réelle. À la différence au message d'erreur de poursuite mentionné plus haut, en cas de dépassement, l'étage de sortie est immédiatement coupé et une erreur est déclenchée. Le moteur s'arrête ainsi en roue libre (à moins qu'il n'y ait un frein d'arrêt).
6. Reglage des paramètres
| Index | 6510h |
| Nom | drive_data |
| Object Code | RECORD |
| No. of Elements | 51 |
| Sub-Index | \( 22_{\mathrm {h}} \) |
| Description | position_error.switch_off_limit |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | no |
| Units | position units |
| Value Range | \( 0\ldots 2^{32} - 1 \) |
| Default Value | 0 |
| Valeur | Signification |
| 0 | Valeur limite erreur de poursuite ARRÊT (réaction : AUCUNE ACTION). |
| >0 | Valeur limite erreur de poursuite MARCHE (réaction : DÉSACTIVER IMMÉDIATEMENT ÉTAGE DE SORTIE) |
L'activation de l'erreur 17-0 est obtenue par la modification de la reaction d'erreur. La reaction DÉSACTIVER IMMÉDIATEMENT ÉTAGE DE SORTIE est retournée en tant que MARCHE, toutes les autres en tant que ARRÉT. En cas d'écriture de 0, la reaction d'erreur AUCUNE ACTION est activée, en cas d'écriture d'une valeur supérieure à 0, la reaction d'erreur DÉSACTIVER IMMÉDIATEMENT ÉTAGE DE SORTIE. Voir aussi à ce sujet le chapitre 6.18 Gestion des erreurs.
Objet 607B_h : position_range_limit
Le groupe d'objects position_range_limit contient deux sous-paramêtres qui limitent la plage numérique des valeurs de position. Si l'une de ces limites est dépassée, la valeur de position saute automatiquement à l'autre limite Ce qui permet le paramétrage d'axes circulaires. Il faut indiquer les limites censées physique correspondre à la même position, ainsi par exemple 0^ et 360^ .
Afin que ces limites agissant, un mode axe circulaire doit être sélectionné par l'intermédiaire de l'objet 6510_h - 20_h (position_range_limit_enable).
| Index | 607Bh |
| Nom | position_range_limit |
| Object Code | ARRAY |
| No. of Elements | 2 |
| Data Type | INT32 |
6. Reglage des paramètres
| Sub-Index | 01h |
| Description | min_position_range_limit |
| Access | rw |
| PDO Mapping | yes |
| Units | position units |
| Value Range | .. |
| Default Value | -- |
| Sub-Index | 02h |
| Description | max_position_range_limit |
| Access | rw |
| PDO Mapping | yes |
| Units | position units |
| Value Range | .. |
| Default Value | .. |
Objet 6510_h20_h : position_range_limit_enable
L'objet position_range_limit_enable permet d'activer les limites de plage définies par l'objet 607B_h . Plusieurs modes sont possibles:
Si vous optez pour le mode "Trajet le plus court", les positionnements s'effectueront toujours selon le trajet physiquement le plus court possible. L'entrainment adapte de lui-même le signe mathématique de la vitesse de déplacement. Dans les deux modes "Vitesse de rotation fixe", le positionnement s'effectue uniquement dans le sens indiquedans le mode.
| Index | \( 6510_{\mathrm {h}} \) |
| Nom | drive_data |
| Object Code | RECORD |
| No. of Elements | 51 |
| Sub-Index | 20h |
| Description | position_range_limit_enable |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0 ... 5 |
| Default Value | 0 |
6. Reglage des paramètres
| Valeur | Signification |
| 0 | Arrêt |
| 1 | Trajets le plus court (pour des raisons de compatibilité) |
| 2 | Trajet le plus court |
| 3 | Réserve |
| 4 | Sens de rotation fixe "positif" |
| 5 | Sens de rotation fixe "négatif" |
Objet 2030_h : set_positionAbsolutely
L'objet set_position absolue permet de décaler la position réelle lisible sans que la position physique ne soit modifiée. L'entrainment n'effectue aucun déplacement.
En cas de connexion d'un codeur absolu, le décalage de position est archivé dans le codeur dans la mesure où le système de codeur le permet. Ainsi, dans ce cas, le décalage de position reste réservé après une réinitialisation. Cette opération d'archivage se déroule en arrêté-plan indépendamment de cet object. Tous les paramètres figurant dans la mémoire du codeur sont également archivées avec leurs valeurs actuelles.
| Index | 2030h |
| Nom | set_position absolute |
| Object Code | VAR |
| Data Type | INT32 |
| Access | wo |
| PDO Mapping | no |
| Units | position units |
| Value Range | -- |
| Default Value | -- |
6.8 Limitation de valeur de consigne
6.8.1 Description des objets
Objets traités dans ce chapitre
| Index | Objet | Nom | Type | Attr. |
| 2415h | RECORD | current_limitation | rw | |
| 2416h | RECORD | speed_limitation | rw |
Objet 2415_h : current_limitation
Le groupe d'objects current_limitation permet de limiter le courant maximal pour le moteur dans les modes de fonctionnement profile_position_mode,
interpolated_position_mode, homing_mode et velocity_mode, autorisant p. ex. un fonctionnement limité en couple de rotation. L'objet limit_current_input_channel permet de définir la source de consigne du couple de limitation. Ici, vous avez le besoin entre la définition d'une valeur de consigne directe (valeur fixe) ou la définition via une entrée analogique. En fonction de la source choisisie, l'objet limit_current permit de définir soit le couple de limitation (source = valeur fixe) ou le coefficient d'échelle pour les entrées analogiques (source = entrée analogue). Dans le premier cas, la limitation s'applique directement au courant en mA proportionnel au couple, dans le deuxième cas, le courant est indiqué en mA, ce qui correspond à une tension appliquée de 10 V.
| Index | 2415h |
| Nom | current limitation |
| Object Code | RECORD |
| No. of Elements | 2 |
| Sub-Index | 01h |
| Description | limit_current_input_channel |
| Data Type | UINT8 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0 ... 4 |
| Default Value | 0 |
6. Reglage des paramètres
| Sub-Index | 02h |
| Description | limit_current |
| Data Type | INT32 |
| Access | rw |
| PDO Mapping | no |
| Units | mA |
| Value Range | -- |
| Default Value | 0 |
| Valeur | Signification |
| 0 | Pas de limitation |
| 1 | AIN0 |
| 2 | AIN1 |
| 3 | AIN2 |
| 4 | Bus de terrain (sélecteur B) |
Objet 2416_h : speed_limitation
Dans le mode profile_torque, le groupe d'objets speed_limitation permet de limiter la vitesse de rotation maximale du moteur, ce qui permet un fonctionnement limité en vitesse. L'objet limit_speed_input_channel permet de définir la source de consigne de la vitesse de limitation. Ici, vous avez le besoin entre la définition d'une valeur de consigne directe (valeur fixe) ou la définition via une entrée analogue. En fonction de la source choisisie, l'objet limit_speed permit de définir soit la vitesse de limitation (valeur fixe) ou le coefficient d'échelle pour les entrées analogiques (source = entrée analogue). Dans le premier cas, la limitation s'applique directement à la vitesse de rotation indiquée, dans le deuxième cas, c'est la vitesse censée correspondre à une tension appliquée de 10 V qui est indiquée.
| Index | 2416h |
| Nom | speed_limitation |
| Object Code | RECORD |
| No. of Elements | 2 |
| Sub-Index | 01h |
| Description | limit_speed_input_channel |
| Data Type | UINT8 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0 ... 4 |
| Default Value | 0 |
6. Reglage des paramètres
| Sub-Index | 02h |
| Description | limit_speed |
| Data Type | INT32 |
| Access | rw |
| PDO Mapping | no |
| Units | speed units |
| Value Range | -- |
| Default Value | -- |
| Valeur | Signification |
| 0 | Pas de limitation |
| 1 | AIN0 |
| 2 | AIN1 |
| 3 | AIN2 |
| 4 | Bus de terrain (selecteur B) |
6.9 Adaptations de codeur
6.9.1 Aperçu
Ce chapitre déscrit la configuration de l'entrée du codeur angulaire X2A, X2B et l'entrée du codeur incrémental X10.

Attention
Un réglage erroné du codeur angulaire peut faire tourner l'entrainment de manière incontrêtée et détruire eventulement des composants de l'installation.
6.9.2 Description des objets
Objets traités dans ce chapitre
| Index | Objet | Nom | Type | Attr. |
| 2024h | RECORD | encoder_x2a_data_field | ro | |
| 2024h_01h | VAR | encoder_x2a_resolution | UINT32 | ro |
| 2024h_02h | VAR | encoder_x2a numerator | INT16 | rw |
| 2024h_03h | VAR | encoder_x2a_divisor | INT16 | rw |
| 2025h | RECORD | encoder_x10_data_field | ro | |
| 2025h_01h | VAR | encoder_x10_resolution | UINT32 | rw |
| 2025h_02h | VAR | encoder_x10 numerator | INT16 | rw |
| 2025h_03h | VAR | encoder_x10_divisor | INT16 | rw |
| 2025h_04h | VAR | encoder_x10counter | UINT32 | ro |
| 2026h | RECORD | encoder_x2b_data_field | ro | |
| 2026h_01h | VAR | encoder_x2b_resolution | UINT32 | rw |
| 2026h_02h | VAR | encoder_x2b numerator | INT16 | rw |
| 2026h_03h | VAR | encoder_x2b_divisor | INT16 | rw |
| 2026h_04h | VAR | encoder_x2b(counter | UINT32 | ro |
Objet 2024h: encoder_x2a_data_field
L'enregistrement encoder_x2a_data_field regroupe des paramètres nécessaires au fonctionnement du codeur angulaire sur le connecteur X2A.
Comme de nombreux réglages de codeur angulaire prennt uniquement effet après une réinitialisation, le besoin et le réglage des codeurs doit s'effectuer par l'intémédiaire du logiciel de paramétrage. Sous CANopen, les réglages suivants peuvent être consultés ou modifiés :
L'objet encoder_x2a_resolution indique combien de pas sont généres par le codeur pour chaque rotation ou unité de longueur. comme l'entrée X2A n'accepte que des résolvements toujours évalués en 16 bits, c'est always la valeur 65536 qui est returnée ici. Les objets encoder_x2a numerator et encoder_x2a_divisor permettent de tener compte d'un évientuel réducteur (aussi avec signe mathématique) entre l'arbre moteur et le codeur.
| Index | 2024h |
| Nom | encoder_x2a_data_field |
| Object Code | RECORD |
| No. of Elements | 3 |
| Sub-Index | 01h |
| Description | encoder_x2a_resolution |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | pas (4 * nombre detraits) |
| Value Range | -- |
| Default Value | 65536 |
6. Réglage des paramètres
| Sub-Index | 02h |
| Description | encoder_x2a numerator |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | -32768 ... 32767 ('0 excepté) |
| Default Value | 1 |
| Sub-Index | 03h |
| Description | encoder_x2a_divisor |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 1 ... 32767 |
| Default Value | 1 |
Objet 2026h: encoder_x2b_data_field
L'enregistrement encoder_x2b_data_field regroupe des paramètres nécessaires au fonctionnement du codeur angulaire sur le connecteur X2B.
L'objet encoder_x2b_resolution indique combien de pas sont généres par rotation par le capteur (avec des codeurs incrémentaux, cela correspond au quadruple du nombre de traits ou des périodes par rotation).
L'objet encoder_x2bcounter fournit le nombre de pas actuellément comptés. Il fournit donc des valeurs comprises entre 0 et le nombre de pas définir-1.
Les objets encoder_x2b numerator et encoder_x2b_divisor permettent de tener compte d'un réducteur entre l'arbre moteur et le codeur connecté en X2b.
| Index | 2026h |
| Nom | encoder_x2b_data_field |
| Object Code | RECORD |
| No. of Elements | 4 |
6. Reglage des paramètres
| Sub-Index | 01h |
| Description | encoder_x2b_resolution |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | no |
| Units | pas (4 * nombre de traits) |
| Value Range | dépend du codeur utilisé |
| Default Value | dépend du codeur utilisé |
| Sub-Index | 02h |
| Description | encoder_x2b numerator |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | -32768 ... 32767 |
| Default Value | 1 |
| Sub-Index | 03h |
| Description | encoder_x2b_divisor |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 1 ... 32767 |
| Default Value | 1 |
| Sub-Index | 04h |
| Description | encoder_x2b counter |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | yes |
| Units | pas (4 * nombre de traits) |
| Value Range | 0 ... (encoder_x2b_resolution - 1) |
| Default Value | -- |
Objet 2025h: encoder_x10_data_field
L'enregistrement encoder_x10_data_field regroupe des paramêtres nécessaires au fonctionnement de l'entrée incrémentale X10. Il est ici possible de connecter au besoin un codeur incrémental numérique ou des signaux incrémentaux émulés d'un autre CMMP par exemple. Les signaux d'entrée via X10 peuvent être utilisés comme valeur de consigne ou valeur réelle. Pour obtenir de plus amples informations, se reporter au chapitre 6.11.
Dans l'objet encoder_X10_resolution, il faut indiquer combien de pas doivent être générés par le codeur par rotation de ce dernier. Cela correspond au quadruple du nombre de traits. L'objet encoder_X10counter fournit le nombre de pas actuellement compté (entre 0 et le nombre de pas définir-1).
Les objets encoder_X10 numerator et encoder_X10_divisor permettent de tener compte d'un eventuel réducteur (aussi avec signe mathématique).
En cas d'utilisation du signal X10 comme valeur réelle, cela correspondrait à un réducteur entre le moteur et le codeur de valeur réelle connecté en X10 et monté sur l'entrainment. En cas d'utilisation du signal X10 comme valeur de consigne, des rapports de démultiplication peuvent être réalisés entre le maître et l'esclave.
| Index | 2025h |
| Nom | encoder_x10_data_field |
| Object Code | RECORD |
| No. of Elements | 4 |
| Sub-Index | 01h |
| Description | encoder_x10_resolution |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | no |
| Units | pas (4 * nombre de traits) |
| Value Range | dépend du codeur utilisé |
| Default Value | dépend du codeur utilisé |
| Sub-Index | 02h |
| Description | encoder_x10 numerator |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | -32768 ... 32767 ('0 excepté) |
| Default Value | 1 |
6. Réglage des paramètres
| Sub-Index | 03h |
| Description | encoder_x10_divisor |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 1 ... 32767 |
| Default Value | 1 |
| Sub-Index | 04h |
| Description | encoder_x10 counter |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | yes |
| Units | pas (4 * nombre de traits) |
| Value Range | 0 ... (encoder_x10_resolution - 1) |
| Default Value | -- |
6.10 Émulation de codeur incrémental
6.10.1 Aperçu
Ce groupe d'objets permet de paramétrer la sortie du codeur incrémental X11. Ce qui permet de paramétrer sous CANopen des applications maître-esclave dans lesquelles la sortie X11 du maître est connectée à l'entrée X10 de l'esclave.
6.10.2 Description des objets
Objets traités dans ce chapitre
| Index | Objet | Nom | Type | Attr. |
| 2028h | VAR | encoder_emulation_resolution | INT32 | rw |
| 201Ah | RECORD | encoder_emulation_data | ro | |
| 201Ah_01h | VAR | encoder_emulation_resolution | INT32 | rw |
| 201Ah_02h | VAR | encoder_emulation_offset | INT16 | rw |
6. Reglage des paramètres
Objet 201A_h : encoder emulation_data
L'enregistrement d'objet encoder_emulation_data englobe toutes les possibités de réglage pour la sortie du codeur incrémental X11 :
L'objet encoder_emulation_resolution permet de régler librement le nombre de pas émis (= quadruple nombre de traits) en tant que multiple de 4. Dans une application maître-esclave, ce nombre doit correspondre à la encoder_X10_resolution de l'esclave pour atteindre un rapport de 1:1.
L'objet encoder_emulation_offset permet de décaler la position de l'impulsion zéro émise par rapport à la position zéro du codeur de valeur réelle.
| Index | 201A_h |
| Nom | encoder_emulation_data |
| Object Code | RECORD |
| No. of Elements | 2 |
| Sub-Index | 01h |
| Description | encoder_emulation_resolution |
| Data Type | INT32 |
| Access | rw |
| PDO Mapping | no |
| Units | pas (4 * nombre detraits) |
| Value Range | 4 * (1 ... 8192) |
| Default Value | 4096 |
| Sub-Index | 02h |
| Description | encoder_emulation_offset |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | no |
| Units | 32767 = 180° |
| Value Range | -32768 ... 32767 |
| Default Value | 0 |
Objet 2028h: encoder_emulation_resolution
L'objet encoder_emulation_resolution n'este que pour des raisons de compatibilité. Il correspond à l'objet 201Ah - 01h
| Index | 2028h |
| Nom | encoder_emulation_resolution |
| Object Code | VAR |
| Data Type | INT32 |
| Access | rw |
| PDO Mapping | no |
| Units | voir 201Ah_01h |
| Value Range | voir 201Ah_01h |
| Default Value | voir 201Ah_01h |
6.11 Injection de valeur de consigne/réelle
6.11.1 Aperçu
Les objets suivants permettent de modifier la source de la valeur de consigne ainsi que la source de la valeur réelle. Par défaut, le contrôleur de moteur utilise l'entrée pour le codeur moteur X2A ou X2B comme valeur réelle pour l'asservissement de position. En cas d'utilisation d'un asservissement de position externe, p. ex. derrière un réducteur, la valeur de position envoyée via X10 peut être injectée comme valeur réelle pour l'asservissement de position. Il est en outre possible d'injecter des signaux entrants par X10 (p. ex. venant d'un deuxième contrôleur) en tant que valeur de consigne supplémentaire, ce qui permet les modes synchrones.
6.11.2 Description des objets
Objets traités dans ce chapitre
| Index | Objet | Nom | Type | Attr. |
| 2021h | VAR | position Encoder_selection | INT16 | rw |
| 2022h | VAR | synchronisation Encoder_selection | INT16 | rw |
| 2023h | VAR | synchronisation_filter_time | UINT32 | rw |
| 202Fh | RECORD | synchronisation_selector_data | ro | |
| 202Fh-07h | VAR | synchronisation_main | UINT16 | rw |
Objet 2021h: positionEncoder_selection
L'objet position Encoder_selection indique l'entrée du codeur utilisé pour déterminer la position réelle (codeur de valeur réelle). Cette valeur peut être modifiée pour passer en asservissement de position par l'intérimédiaire d'un codeur externe (raccordé en sortie). Il est possible de commuter entre X10 et l'entrée de codeur sélectionnée comme codeur de commutation (X2A / X2B). Si l'une des entrées de codeur X2A / X2B est sélectionnée comme coddeur de valeur réelle, il faut alors utiliser celui qui est utilisé comme codeur de commutation. En cas de selection de l'autre codeur, le programme bascule automatiquement sur le codeur de commutation.
| Index | 2021h |
| Nom | position Encoder_selection |
| Object Code | VAR |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0 ... 2 (voir tableau) |
| Default Value | 0 |
| Valeur | Désignation |
| 0 | X2A |
| 1 | X2B |
| 2 | X10 |

Il est possible deCHOISIR entre I'ENTREE de codeur X10 et le codeur de commutation correspondant X2A ou X2B en tant que codeur de valeur reelle de position. La configuration utilisant X2A comme codeur de commutation et X2B comme codeur de valeur reelle de position est impossible.
Objet 2022h: synchronisationEncoder_selection
L'objet synchronisationEncoder_selection indique l'entrée de codeur censée être utilisée comme valeur de consigne de synchronisation. Selon le mode de fonctionnement, cela correspond à une valeur de consigne de position (Profile Position Mode) ou à une valeur de consigne de vitesse de rotation (Profile Velocity Mode).
Seule X10 peut être utilisé comme entrée de synchronisation. Vous avez donc le besoin entre X10 et aucune entrée. Ne pas désoir pour valeur de consigne de synchronisation la même entrée que cette可以选择 pour le codeur de valeur réelle.
6. Reglage des paramètres
| Index | 2022h |
| Nom | synchronisationEncoder_selection |
| Object Code | VAR |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | -1, 2 (voir tableau) |
| Default Value | 2 |
| Valeur | Désignation |
| -1 | aucun codeur / indéfini |
| 2 | X10 |
Objet 202F_h : synchronisation_selector_data
L'objet synchronisation_main permet d'injecter une valeur de consigne synchrone.
Afin que la valeur de consigne synchrone puisse etre calculée, le bit 0 doit etre activé.
Le bit 1 permet de n'injecter la position synchrone que lors du demarrage d'une course de positionnement. Pour le moment, seul 0 est paramétrable si bien que la position synchrone est toujours activée. Le bit 8 permet de déterminer que le déplacement de réference doit s'effectuer sans injection de la position synchrone afin de pouvoir effectuer séparément la prise de référence pour le maître et l'esclave.
| Index | 202Fh |
| Nom | synchronisation_selector_data |
| Object Code | RECORD |
| No. of Elements | 1 |
| Sub-Index | 07h |
| Description | synchronisation_main |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | voir tableau |
| Default Value | -- |
| Bit | Valeur | Signification |
| 0 | \( 0001_h \) | 0 : Synchronisation inactive1 : Synchronisation active |
| 1 | \( 0002_h \) | "Scie volante" impossible |
| 8 | \( 0100_h \) | 0 : Synchronisation pendant le déplacement de référence1 : Aucune synchronisation pendant le déplacement de référence |
Objet 2023h: synchronisation_filter_time
L'objet synchronisation_filter_time définit la constante de temps du filtré d'un filtré PT1 permettant de lisser la vitesse de synchronisation. Cela peut surtout s'avérer nécessaire en cas d'un nombre peu important de traits car ici de légères modifications de la valeur d'entrée correspondant déjà à des vittesses élevées. D'autre part, en cas de temps de filtré élevés, l'entrainment n'est eventuellement plus en mesure de suivre suffisamment vite un signal d'entrée dynamique.
| Index | 2023h |
| Nom | synchronisation_filter_time |
| Object Code | VAR |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | no |
| Units | μs |
| Value Range | 10...50000 |
| Default Value | 600 |
6.12 Entrées analogiques
6.12.1 Aperçu
Les contrôleurs de moteur de la gamme CMMP disposent de trois entrées analogiques permettant par exemple de prédéfinir des valeurs de consigne pour le contrôleur de moteur. Pour toutes ces entrées analogiques, les objets suivants offrent la possibilité de consulter la tension d'entrée actuelle (analog_input_voltage) et de régler un décalage (analog_input_offset).
6.12.2 Description des objets
| Index | Objet | Nom | Type | Attr. |
| 2400h | ARRAY | analog_input_voltage | INT16 | ro |
| 2401h | ARRAY | analog_input_offset | INT32 | rw |
Objet 2400_h : analog_input_voltage (tension d'entrée)
Le groupe d'objects analog_input_voltage fournit la tension d'entrée actuelle du canal concerné en tenant compte du décalage en millivolts.
| Index | 2400h |
| Nom | analog_input_voltage |
| Object Code | ARRAY |
| No. of Elements | 3 |
| Data Type | INT16 |
| Sub-Index | 01h |
| Description | analog_input_voltage_ch_0 |
| Access | ro |
| PDO Mapping | no |
| Units | mV |
| Value Range | -- |
| Default Value | -- |
| Sub-Index | 02h |
| Description | analog_input_voltage_ch_1 |
| Access | ro |
| PDO Mapping | no |
| Units | mV |
| Value Range | -- |
| Default Value | -- |
| Sub-Index | 03h |
| Description | analog_input_voltage_ch_2 |
| Access | ro |
| PDO Mapping | no |
| Units | mV |
| Value Range | -- |
| Default Value | -- |
Objet 2401_h : analog_input_offset (décalage entrées analogiques)
Le groupe d'objects analog_input_offset permet d'activer ou de dire la tension de décalage en millivolts pour les entrées concernées. Le décalage permet de compenser une tension continue éventuelle. Un décalage positif compensant ainsi une tension d'entrée positive.
| Index | 2401h |
| Nom | analog_input_offset |
| Object Code | ARRAY |
| No. of Elements | 3 |
| Data Type | INT32 |
| Sub-Index | 01h |
| Description | analog_input_offset_ch_0 |
| Access | rw |
| PDO Mapping | no |
| Units | mV |
| Value Range | -10000 ... 10000 |
| Default Value | 0 |
| Sub-Index | 02h |
| Description | analog_input_offset_ch_1 |
| Access | rw |
| PDO Mapping | no |
| Units | mV |
| Value Range | -10000 ... 10000 |
| Default Value | 0 |
| Sub-Index | 03h |
| Description | analog_input_offset_ch_2 |
| Access | rw |
| PDO Mapping | no |
| Units | mV |
| Value Range | -10000 ... 10000 |
| Default Value | 0 |
6.13 Entrées et sorties TOR
6.13.1 Aperçu
Toutes les entrées numériques du contrôleur de moteur peuvent être lues via le bus CAN et presque toutes les sorties numériques peuvent être activées à loisir. En outre, des messages d'etat peuvent être affectés aux sorties numériques du contrôleur de moteur.
6.13.2 Description des objets
Objets traités dans ce chapitre
| Index | Objet | Nom | Type | Attr. |
| 60FDh | VAR | digital_entries | UINT32 | ro |
| 60FEh | ARRAY | digital_outputs | UINT32 | rw |
| 2420h | RECORD | digital_output_state_mapping | ro | |
| 2420h_01h | VAR | dig_out_stateMappings_dout_1 | UINT8 | rw |
| 2420h_02h | VAR | dig_out_stateMappings_dout_2 | UINT8 | rw |
| 2420h_03h | VAR | dig_out_stateMappings_dout_3 | UINT8 | rw |
Objet 60FD_h : digital_input
L'objet 60FD_h permit de dire les entrées numériques :
| Index | 60FDh |
| Nom | digital_entries |
| Object Code | VAR |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | yes |
| Units | -- |
| Value Range | conformément au tableau ci-dessous |
| Default Value | 0 |
| Bit | Valeur | Entrée numérique |
| 0 | 00000001h | Capteur de fin de course négatif |
| 1 | 00000002h | Capteur de fin de course positif |
| 2 | 00000004h | Capteur de référence |
| 3 | 00000008h | Interverrouillage - (libération du régulateur ou de l'étage de sortiemanquante) |
6. Reglage des paramètres
| Bit | Valeur | Entrée numérique |
| 16 ... 23 | 00FF0000h | réservé |
| 24 ... 27 | 0F000000h | DINO ... DIN3 |
| 28 | 10000000h | DIN8 |
| 29 | 20000000h | DIN9 |
Objet 60Fe_h : digital_output
L'objet 60FE_h permet de commander les sorties numériques : L'objet digital_outputsMASK permet d'indiquer les sorties numériques qu'il faut commander. L'objet digital_outputs_data permet ainsi d'activer a loisir les sorties selectionnées. Il est à noter que, lors de la commandes des sorties numériques, une temporisation maximale de 10 ms peut survenir. La relecture de l'objet 60FE_h permet de définir quand les sorties doivent effectivement être activées.
| Index | 60FEh |
| Nom | digital_outputs |
| Object Code | ARRAY |
| No. of Elements | 2 |
| Data Type | UINT32 |
| Sub-Index | 01h |
| Description | digital_outputs_data |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | -- |
| Default Value | (en fonction de l'état du frein) |
| Sub-Index | 02h |
| Description | digital_outputs_mask |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | -- |
| Default Value | 00000000h |
| Bit | Valeur | Sortie numérique |
| 0 | 00000001h | 1 = serrer le frein |
| 16 ... 23 | 0E000000nh | réservé |
| 25 ... 27 | 0E000000nh | DOUT1 ... DOUT3 |

Avertissement
Quand la commande de freinage est libre par digital_output_mask, l'effacement du bit 0 dans digital_output_data purge manuellement le frein d'arrêt!
Ce qui, pour des axes suspendus, peut entraîner un affaisissement de l'axe.
Objet 2420_h : digital_output_state_mapping
Le groupe d'objets digital_output_state_mapping permet d'envoyer différents messages d'etat du contrôleur de moteur sur les sorties numériques.
À cet effet, les sorties numériques intégrées du contrôleur de moteur possèdent un sous-index propre à chaque sortie. Ainsi chaque sortie comporte un octet dans lequel il faut insérer le numéro de fonction.
Lorsqu'une fonction de ce type a ete affectee a une sortie numérique et que la sortie est directement activée ou desactivée via digital_outputs (60FE_h) , l'objet digital_outputs_state.mapping est etalement force sur ARRET (O) ou MARCHE (12).
| Index | \( {2420}_{\mathrm{h}} \) |
| Nom | digital_outputs_statemapped |
| Object Code | RECORD |
| No. of Elements | 5 |
| Sub-Index | 01h |
| Description | dig_out_state_mapp_dout_1 |
| Data Type | UINT8 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0 ... 16, voir tableau |
| Default Value | 0 |
| Sub-Index | \( {\mathbf{{02}}}_{\mathbf{h}} \) |
| Description | dig_out_state_mapp_dout_2 |
| Data Type | UINT8 |
| Access | rw |
| PDO Mapping | no |
| Units | - |
| Value Range | 0 ... 16, voir tableau |
| Default Value | 0 |
6. Réglage des paramètres
| Sub-Index | 03h |
| Description | dig_out_state_mapp_dout_3 |
| Data Type | UINT8 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0 ... 16, voir tableau |
| Default Value | 0 |
| Valeur | Désignation |
| 0 | Arrêt (sortie est Low) |
| 1 | Position Xconsigné = Xcible |
| 2 | Position Xeffectif = Xcible |
| 3 | Réservé |
| 4 | Distance résiduelle |
| 5 | Déplacement de référence activé |
| 6 | Vitesse de comparaison atteinte |
| 7 | surveillance l'2t active |
| 8 | Erreur de poursuite |
| 9 | Tension insuffisante du circuit intermédiaire |
| 10 | Frein de serrage purgé |
| 11 | Etage de sortie actif |
| 12 | Marche (sortie est High) |
| 13 | Réservé |
| 14 | Réservé |
| 15 | Moteur linéaire identifié |
| 16 | Position de référence valide |
- Réglage des paramètres
6.14 Capterur de fin de course / Capterur de reference
6.14.1 Aperçu
Pour la définition de la position de référence du contrôleur de moteur, il est possible deCHOISIR un capteur de fin de course (limit switch) ou un capteur de referencia (homing switch). Vous trouvez de plus amples informations sur les différentes méthodes de prise de referencia au chapitre 1.1,
6. Reglage des paramètres
Mode de fonctionnement Course de reférence (Homing Mode).
6.14.2 Description des objets
| Index | Objet | Nom | Type | Attr. |
| 6510h | RECORD | drive_data | rw |
Objet 6510_h - 11_h : limit switch polarity
La polarité des capteurs de fin de course peut être programmée à l'aide de l'objet 6510_h-111_h (limit.switch_polarity). Pour les capteurs de fin de course à contact à ouverture, cet objet contient un zéro et en cas d'utilisation de contacts à fermeture, il faut entre un 1.
| Index | \( 6510_{\mathrm {h}} \) |
| Nom | drive_data |
| Object Code | RECORD |
| No. of Elements | 51 |
| Sub-Index | 11h |
| Description | limit.switch_polarity |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0, 1 |
| Default Value | 1 |
| Valeur | Signification |
| 0 | Contact à ouverture |
| 1 | Contact à fermeture |
Objet 6510_h - 12_h : limit switch selector
L'objet 6510_h-12_h (limit_SWITCH_selector) permet d'inverser l'aftection des capteurs de fin de course (négatif, positif) sans être obligé de proceder à des changements de câblage. Pour inverser l'aftection des capteurs de fin de course, il faut entra un 1.
| Sub-Index | 12h |
| Description | limit.switch_selector |
| Data Type | INT16 |
6. Réglage des paramètres
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0, 1 |
| Default Value | 0 |
Tab. 6.1 : Affection des capteurs de fin de course
| Valeur | Signification |
| 0 | DIN6 = E0 (capteur de fin de course négatif) |
| DIN7 = E1 (capteur de fin de course positif) | |
| 1 | DIN6 = E1 (capteur de fin de course positif) |
| DIN7 = E0 (capteur de fin de course négatif) |
Objet 6510_h14_h : homing switch polarity
La polarité du capteur ↔ reference peut être programmée à l'aide de l'objet 6510h-14h (homing switch polarity). Pour les capteurs de ↔ reference à contact à ouverture, cet objet contient un zéro et en cas d'utilisation de contacts à fermeture, il faut entraun un "1".
| Sub-Index | 14h |
| Description | homing_SWITCH_polarity |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0, 1 |
| Default Value | 1 |
| Valeur | Signification |
| 0 | Contact à ouverture |
| 1 | Contact à fermeture |
Objet 6510_h13_h : homing switch selector
L'objet 6510_h-13_h (homing_SWITCH_selector) détermine si DIN8 ou DIN9 doit être utilisé comme capteur de referencia.
| Sub-Index | 13h |
| Description | homing_SWITCH_selector |
| Data Type | INT16 |
| Access | rw |
6. Reglage des paramètres
| PDO Mapping | no |
| Units | -- |
| Value Range | 0, 1 |
| Default Value | 0 |
| Valeur | Signification |
| 0 | DIN9 |
| 1 | DIN8 |
Objet 6510_h - 15_h : limit.switch_deceleration
L'objet limit_SWITCH_deceleration détermine l'accelération de freinage lorsque le capteur de fin de course est atteint en mode de fonctionnement normal (Rampe d'arrêt d'urgence capteur de fin de course).
| Sub-Index | \( {15}_{\mathrm{h}} \) |
| Description | limit.switch_deceleration |
| Data Type | INT32 |
| Access | rw |
| PDO Mapping | no |
| Units | acceleration units |
| Value Range | 0 ... 3000000 min \( {}^{-1}/\mathrm{s} \) |
| Default Value | 2 000 000 min \( {}^{-1}/\mathrm{s} \) |
6.15 Echantillonnage de positions
6.15.1 Aperçu
La famille CMMP offre la possibilite d'archiver la valeur reelle de position sur le front ascendant ou descendant d'une entrée numérique. Cette valeur de position peut alors p.ex. etre consultee pour le calcul au sein d'une commande numérique.
Tous les objets nécessaires sont regroupés dans l'enregistrement sample_data : L'objet sample_mode déterminé le type d'échantillonnage : Faut-il n'enregistre qu'un événement d'échantillonnage unique ou faut-il procédé à un échantillonnage continu ? L'objet sample_status permet d'introger la commande pour savoir si un événement d'échantillonnage est survenu. Cela est signalé par un bit activé qui peut également être affché dans le statusword si l'objet sample_status_mask est activé en conséquence.
L'objet sample_control sert à commander la libération de l'évenement d'échantillonnage et, pour finir, les objets sample_position_rising_edge et sample_position_falling_edge permettent de consulter les positions échantillonnées.
Le logiciel de paramétrage permet de déterminer l'entrée numérique à utiliser sous Paramètres / I/S / Entrées numériques / Définir entrée d'échantillonnage.
6.15.2 Description des objets
Objets traités dans ce chapitre
| Index | Objet | Nom | Type | Attr. |
| 204Ah | RECORD | sample_data | ro | |
| 204Ah-01h | VAR | sample_mode | UINT16 | rw |
| 204Ah-02 | VAR | sample_status | UINT8 | ro |
| 204Ah-03h | VAR | sample_status_mask | UINT8 | rw |
| 204Ah-04h | VAR | sample_control | UINT8 | wo |
| 204Ah-05h | VAR | sample_position_rising_edge | INT32 | ro |
| 204Ah-06h | VAR | sample_position_falling_edge | INT32 | ro |
6. Réglage des paramètres
Objet 204A_h : sample_data
| Index | 204A |
| Nom | sample_data |
| Object Code | RECORD |
| No. of Elements | 6 |
L'objet suivant permet deCHOISIR s'il faut déterminer la position à chaque apparition d'un événement d'échantillonnage (échantillonnage continu) ou s'il faut verrouiller l'échantillonnage après un événement d'échantillonnage jusqu'à ce que l'échantillonnage soit à nouveau libéré. Sachez néanmoins que cela peut déclencher un bondissement des deux fronts!
| Sub-Index | 01h |
| Description | sample_mode |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0 ... 1, voir tableau |
| Default Value | 0 |
| Valeur | Désignation |
| 0 | Echantillonnage continu |
| 1 | Autoblocage Echantillonnage |
L'objet suivant indique un nouvel événement d'échantillonnage.
| Sub-Index | 02h |
| Description | sample.status |
| Data Type | UINT8 |
| Access | ro |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 0 ... 3, voir tableau |
| Default Value | 0 |
| Bit | Valeur | Nom | Manuel |
| 0 | \( 01_h \) | falling_edge_occurred | = 1 : Nouvelle position d'échantillonnage (front descendant) |
| 1 | \( 02_h \) | rising_edge_occurred | = 1 : Nouvelle position d'échantillonnage (front descendant) |
6. Réglage des paramètres
L'objet suivant permet de définir les bits de l'objet sample_status censés également entraîner l'activation du bit 15 du statusword. Ce qui générale la présence de l'information "Evénement d'échantillonnage survenu" dans le statusword à transférer de toutes les manières indiquant à la commande qu'elle ne doit consulter l'objet sample_status que dans ce cas pour évientuellesment constater quel front est survenu.
| Sub-Index | 03h |
| Description | sample_status_mask |
| Data Type | UINT8 |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 0 ... 1, voir tableau |
| Default Value | 0 |
L'activation du bit correspondant dans sample_control réinitialise d'une part le bit d'état correspondant dans sample_status et libéré à nouveau l'échantillonnage dans le cas d'un "autoblocage" de l'échantillonnage.
| Sub-Index | 04h |
| Description | sample_control |
| Data Type | UINT8 |
| Access | wo |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 0 ... 1, voir tableau |
| Default Value | 0 |
| Bit | Valeur | Nom | Manuel |
| 0 | 01h | falling_edge_enable | Echantillonnage avec front descendant |
| 1 | 02h | rising_edge_enable | Echantillonnage avec front descendant |
Les objets suivants contiennent les positions échantillonnées.
6. Réglage des paramètres
| Sub-Index | 05h |
| Description | sample_position_rising_edge |
| Data Type | INT32 |
| Access | ro |
| PDO Mapping | yes |
| Units | position units |
| Value Range | -- |
| Default Value | -- |
| Sub-Index | 06h |
| Description | sample_position_falling_edge |
| Data Type | INT32 |
| Access | ro |
| PDO Mapping | yes |
| Units | position units |
| Value Range | -- |
| Default Value | -- |
6.16 Commande du frein
6.16.1 Aperçu
Les objets suivants permettent de paramétrer comment le contrôleur de moteur commande un frein d'arrêt évientuèlement intégré au moteur. Le frein d'arrêt est toujours libéré des que la libération du régulateur est activée. Pour les freins d'arrêt à force inertie mécanique, il est possible de paramétrer une durée de temporisation afin que le frein d'arrêt intervienne avant que l'étage de sortie ne soit désactivé (affaisissement des axes verticaux). Cette temporisation est paramétrée par l'objet brake_delay_time. comme le montre le croquis, lors de l'activation de la libération du régulateur, la vitesse de consigne n'est libérée qu'après la brake_delay_time et lors de la désactivation de la libération du régulateur, la coupure de la régulation est temporisée de ce déliai.
6. Reglage des paramètres

Fig. 6.8 : Fonction de la temporisation de freinage (en cas de régulation de vitesse / positionnement)
6.16.2 Description des objets
| Index | Objet | Nom | Type | Attr. |
| 6510h | RECORD | drive_data | rw |
Objet 6510_h - 18_h : brake_delay_time
L'objet brake_delay_time permet de paramétre la durée de temporisation de freinage.
| Index | 6510h |
| Nom | drive_data |
| Object Code | RECORD |
| No. of Elements | 51 |
| Sub-Index | \( 18_{h} \) |
| Description | brake_delay_time |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | ms |
| Value Range | 0 ... 32000 |
| Default Value | 0 |
6.17 Informations sur les apparêils
| Index | Objet | Nom | Type | Attr. |
| 1018h | RECORD | identity_object | rw | |
| 6510h | RECORD | drive_data | rw |
De nombreux objets CAN permettent de dire les informations les plus diverses comme le type de contrôleur de moteur, le firmware utilisé, etc. dans l'appareil.
6.17.1 Description des objets
Objet 1018h: identity_object
Le identity_object défini dans le DS301 permet d'identifier le contrôleur de moteur de manière explicite dans un réseau CANopen. Dans ce but, il est possible de consulter le code fabricant (vendor_id), un code produit explicite (product_code), le numéro de révision de l'implémentation CANopen (revision_number) et le numéro de série de l'appareil (serial_number).
| Index | 1018h |
| Nom | identity_object |
| Object Code | RECORD |
| No. of Elements | 4 |
| Sub-Index | 01h |
| Description | vendor_id |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | -- |
| Value Range | 000000E4 |
| Default Value | 000000E4 |
6. Reglage des paramètres
| Sub-Index | 02h |
| Description | product_code |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | -- |
| Value Range | voir ci-après |
| Default Value | voir ci-après |
| Valeur | Signification |
| 2005h | CMMP-AS-C2-3A |
| 2006h | CMMP-AS-C5-3A |
| 200Ah | CMMP-AS-C5-11A-P3 |
| 200Bh | CMMP-AS-C10-11A-P3 |
| Sub-Index | \( 03_h \) |
| Description | revision_number |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | \( M M M S S S S _{h} \) (M : main version, S : sub version) |
| Value Range | -- |
| Default Value | -- |
| Sub-Index | 04h |
| Description | serial_number |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | -- |
| Value Range | -- |
| Default Value | -- |
6. Reglage des paramètres
6.17.1.2 Obj 6510_h - A0_h : drive_serial_number
L'objet drive_serial_number permet de consulter le numéro de série du régulateur.
Cet objet sert à la compatibilité avec les versions antérieures.
| Index | 6510h |
| Nom | drive_data |
| Object Code | RECORD |
| No. of Elements | 51 |
| Sub-Index | A0h |
| Description | drive Serifal_number |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | -- |
| Value Range | -- |
| Default Value | -- |
6.17.1.3 Obj 6510_h - A1_h : drive_type
L'objet drive_type permet de consulter le type d'appareil du régulateur. Cet objet sert à la compatibilité avec les versions antérieures.
| Sub-Index | A1h |
| Description | drive_type |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | -- |
| Value Range | voir 1018h_02h, product_code |
| Default Value | voir 1018h_02h, product_code |
6. Reglage des paramètres
Objet 6510_h - A9_h : firmware_main_version
L'objet firmware_main_version permet de dire le nombre de version principale du firmware (niveau produit).
| Sub-Index | A9h |
| Description | firmware_main_version |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | MMMMSSSsM (M : main version, S : sub version) |
| Value Range | -- |
| Default Value | -- |
Objet 6510_h-AA_h : firmwarecustom_version
L'objet firmware custom_version permet de dire le nombre de version de la variante du firmware spécifique au client.
| Sub-Index | \( {\mathbf{{AA}}}_{\mathrm{h}} \) |
| Description | firmware_custom_version |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | \( {\mathrm{{MMMSSSS}}}_{\mathrm{h}}\left( {\mathrm{M} : \text{main version,}\mathrm{S} : \text{sub version}}\right) \) |
| Value Range | - |
| Default Value | - |
6.17.1.6 Obj 6510_hAD_h : km_release
Le numéro de version du km_release permet de faire la distinction entre les versions de firmware de la même gamme de produits.
| Sub-Index | \( {\mathbf{{AD}}}_{\mathbf{h}} \) |
| Description | km_release |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | - |
| Value Range | MMMMSSSSh (M : main version, S : sub version) |
| Default Value | - |
6. Réglage des paramètres
Objet 6510_h - AC_h : firmware_type
L'objet firmware_type permet de consulter pour chaque famille d'appareil et pour quel type de codeur angulaire, le firmware charge est destiné. comme dans le cas de la famille CMMP, l'interface du codeur angulaire n'est plus enfichable, tous les bits sont systématiquement activés dans le paramètre G (F_h) .
| Sub-Index | ACh |
| Description | firmware_type |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | 000000GXh |
| Value Range | 00000F2h |
| Default Value | 00000F2h |
| Valeur(x) | Signification |
| \( 0_h \) | IMD-F |
| \( 1_h \) | CMMP-AS |
| \( 2_h \) | CMMP-AS-C2-3A |
Objet 6510_h - B0_h : cycletime_current_controller
L'objet cycletime_current_controller permet de consulter le temps de cycle du régulateur de courant en microseconds.
| Sub-Index | B0h |
| Description | cycletime_current_controller |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | μs |
| Value Range | -- |
| Default Value | 00000068h |
Objet 6510_h -B1h: cycletime_velocity_controller
L'objet cycletime_velocity_controller permet de consulter le temps de cycle du régulateur de vitesse en microseconds.
| Sub-Index | B1h |
| Description | cycletime_velocity_controller |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | μs |
| Value Range | -- |
| Default Value | 000000DOh |
Objet 6510_h B2h: cycletime_position_controller
L'objet cycletime_position_controller permet de consulter le temps de cycle de l'asservissement de position en microseconds.
| Sub-Index | B2h |
| Description | cycletime_position_controller |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | μs |
| Value Range | -- |
| Default Value | 000001A0h |
Objet 6510_h -B3h: cycletime_trjectory_generation
L'objet cycletime_trjectory_generation permet de consulter le temps de cycle de la commande de positionnement en microseconds.
| Sub-Index | B3h |
| Description | cycletime_trjectory_generation |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | μs |
| Value Range | -- |
| Default Value | 00000341h |
Objet 6510_h CO_h : commissioning_state
L'objet commissioning_state est renseigné par le logiciel de paramétrage en cas d'exécution de certains paramétrages (p. ex. du courant nominal). ÀpRES la livraison et après restore_default_parameter, cet objet contient un zéro. Dans ce cas, un “A” s'affiche sur l'afficheur à 7 segments du contrôleur de moteur pour indiquer que cet apparéil n'a pas encore été paramétré. Si le contrôleur de moteur est intégralement paramétré sous CANopen, au moins un bit de cet objet doit être activé pour supprimer l'affichage“A”. Naturellement, si nécessaire, il est également possible d'utiliser cet objet pour se souvenir de l'état de paramétrage du contrôleur. Dans ce cas, sachez que le logiciel de paramétrage accès également à cet objet.
| Sub-Index | \( {\mathrm{C}}_{{\mathrm{o}}_{\mathrm{n}}} \) |
| Description | commisioning_state |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | no |
| Units | - |
| Value Range | - |
| Default Value | 0 |
| Valeur | Signification |
| 0 | Courant nominal valide |
| 1 | Courant maximal valide |
| 2 | Nombre de pôles du moteur valide |
| 3 | Ecart angulaire / sens de rotation valide |
| 4 | Réservé |
| 5 | Ecart angulaire / sens de rotation capteur à effet Hall valide |
| 6 | Réservé |
| 7 | Position absolue système de codeur valide |
| 8 | Paramètre du régulateur de courant valide |
| 9 | Réservé |
| 10 | Unités physiques valides |
| 11 | Régulateur de vitesse valide |
| 12 | Asservissement de position valide |
| 13 | Paramètres de sécurité valides |
| 14 | Réservé |
| 15 | Polarité capteur de fin de course valide |
| 16 ... 31 | Réservé |

Attention
Cet objet ne contient aucune information selon laquelle le contrôleur de moteur a ete correctement parametre pour le moteur et l'application mais indique uniquement si les points mentionnés ont ete parametrés au moins une fois après la livraison.

"A" sur l'afficheur à 7 segments
Sachez qu'au moins un bit doit être activé dans l'objet commissioning_state pour faire disparaitre le "A" sur l'afficheur de votre contrôleur de moteur.
6.18 Gestion des erreurs
6.18.1 Aperçu
Les contrôleurs de moteur de la famille CMMP offrent la possibilité de modifier la réaction d'erreur de divers événements comme p. ex. l' apparition d'une erreur de poursuite. Ce qui permet au contrôleur de moteur de réagir différemment en cas d' apparition d'un événement donné. Selon le réglage, il est ainsi possible de freiner, de désactiver immédiatement l'étage de sortie mais aussi de n'afficher qu'un averissement sur l'afficheur.
Pour chaque événement, le fabricant a prévu une réaction minimale qui ne doit pas être sousdépasse. Ce qui rend ainsi impossible tout reparamétrage des erreurs "critiques" comme par exemple 06-0 Court-circuit étage de sortie, car, ici, une désactivation immédiate est nécessaire afin de protéger le contrôleur de moteur d'une destruction eventuelle.
En cas de renseignement d'une réaction d'erreur plus faible que celle admise pour l'erreur, la valeur est limitée à la réaction d'erreur la plus faible admissible. Vous trouverez une liste des numérios d'erreur dans le manuel du logiciel "Contrôleurs de moteur CMMP".
6.18.2 Description des objets
Objets traités dans ce chapitre
| Index | Objet | Nom | Type | Attr. |
| 2100h | RECORD | error_management | ro | |
| 2100_01h | VAR | error_number | UINT8 | rw |
| 2100_02h | VAR | error_reaction_code | UINT8 | rw |
| 200Fh | VAR | lastwarning_code | UINT16 | ro |
Objet 2100_h : error_management
| Index | \( {2100}_{\mathrm{h}} \) |
| Nom | error_management |
| Object Code | RECORD |
| No. of Elements | 2 |
L'objet error_number doit containir le numéro d'erreur principal dont il s'agit de modifier la réaction. En règle générale, le numéro d'erreur principal est indiqué avant le tiret (p. ex. erreur 08-2, numéro d'erreur principal 8). Pour les numéro d'erreur possibles, se reporter au chapitre 5.5.
| Sub-Index | 01h |
| Description | error_number |
| Data Type | UINT8 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 1 ... 96 |
| Default Value | 1 |
L'objet error_reaction_code permet de modifier la réaction de l'erreur. En cas de sousdépassement de la réaction minimale du fabricant, la réaction est limitée à cette dernière. La réaction effectivement réglée peut être déterminée par relecture.
| Sub-Index | 02h |
| Description | error_reaction_code |
| Data Type | UINT8 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0, 1, 3, 5, 7, 8 |
| Default Value | dépend du error_number |
| Valeur | Signification |
| 0 | Aucune action |
| 1 | Entrée dans la mémoire tampon |
| 3 | Avertissement sur l'afficheur à 7 segments |
| 5 | Libération régulateur arrêt |
| 7 | Freiner avec courant maximal |
| 8 | Arrêt de l'étage de sortie |
6. Réglage des paramètres
Objet 200F_h : lastwarning_code
Les averissements sont des événements remarquables de l'entrainment (p. ex. une erreur de poursuite) qui, contrairement à une erreur, ne doivent pas entraîner d'arrêt de l'entrainment. Les averissements s'affichent sur l'afficheur à 7 segments du régulateur et sont ensuite automatiquement réinitialisés.
Le dernier averissement survenu peut être lu par l'intermédiaire de l'objet suivant : le bit 15 indique alors si l'ajretissement est encore actuellément actif.
| Index | \( {200}{\mathrm{\;F}}_{\mathrm{h}} \) |
| Nom | lastwarning_code |
| Object Code | VAR |
| Data Type | UINT16 |
| Access | ro |
| PDO Mapping | yes |
| Units | -- |
| Value Range | -- |
| Default Value | -- |
| Bit | Valeur | Manuel |
| 0 ... 3 | 000Fh | Sous-numéro de l'advertisement |
| 4 ... 11 | OFFOn | Numéro principal de l'advertisement |
| 15 | 800On | Avtissement est actif |
7. Commande d'appareils (Device Control)
7.1 Diagramme d'etat (State Machine)
7.1.1 Aperçu
Le chapitre suivant décrit comment le contrôleur de moteur est commandé sous CANopen, et notamment comment l' étage de sortie est activé ou une erreur est acquittée.
Sous CANopen, toute la commande du contrôleur de moteur est réalisée via deux objets : Le contrôleword permet à l'hôte de commander le contrôleur de moteur, tandis que l'etat du contrôleur de moteur peut être reliu dans le statusword. Pour expliquer la commande du contrôleur, nous utilisons les concepts suivants :
| Etat (State) | Selon que par exemple l'étage de sortie est activé ou qu'une erreur est survenue, le contrôleur de moteur se trouve dans différents états. Les états définis sous CANopen serontprésentés tout au long du chapitre. Exemple: SWITCH_ON DISABLED |
| Transition d'etat (State Transition) | À l'instar des états, il est également définis sous CANopen comment l'on passe d'un état à un autre (p.ex. pour-acquitter une erreur). Les transitions d'etat sont déclenchées par l'activation par l'hôte de bits dans le contrôleword ou en interne par le contrôleur de moteur, lorsque, par exemple, ce dernier détecte une erreur. |
| Commande (Command) | Pour déclencher des transitions d'etat, certaines combinaisons de bits doivent être activées dans le contrôleword. Une telle combinaison est qualifiée de commande. Exemple: Enable Operation |
| Diagramme d'etat (State Machine) | Les états et les transitions d'etat forment ensemble le diagramme d'etat, c'est-à-dire l'aperçu de tous les états et des transitions possibles à partir de ces derniers. |
7.1.2 Le diagramme d'etat du contrôleur de moteur (State Machine)

Fig. 7.1: Diagramme d'etat du contrôleur de moteur
Le diagramme d'etat peut principalement être divisé en trois zones: "Power Disabled" signifie que l'étage de sortie est désactivé et "Power Enabled" que l'étage de sortie est activé. La zone "Fault" récapitule les états nécessaires au traitement des erreurs.
Les états les plus importants du contrôleur de moteur sont représentés en gras dans le diagramme. Àpres l'activation, le contrôleur de moteur s'initialise et atteint finalement l'état SWITCH_ON_DISABLED. Dans cet état, la communication CAN est totallement opérationnelle et le contrôleur de moteur peut être paramétré (p. ex. pour régler le mode de fonctionnement "Régulation de vitesse"). L'étage de sortie est désactifé et l'arbre tourne ainsi librement. Les transitions d'état 2, 3, 4, ce qui correspond en principe à la libération du régulateur CAN, permettent d'atteindre l'état OPERATION_ENABLE. Dans cet état, l'étage de sortie est activé et le moteur est régulé conformément au mode de fonctionnement régle. Assurez-vous donc avant impérativement que l'entrainment est correctement paramétré et qu'une valeur de consigne correspondante est égale à zéro.
La transition d'etat 9 correspond au retrait de la libération, c'est-à-dire qu'un moteur encore en train de tourner s'arrêteait de manière incontrélée.
Si une erreur survient, (à partir de n'importequel état), le programme active l'état FAULT. En fonction de la gravité de l'erreur, certaines actions, comme p. ex. un freinage d'urgence, peuvent encore être effectuees (FAULT_REACTION.Active).
Afin d'executer les transitions d'etat mentionnées, certaines combinaisons de bits doivent être activées dans le contrôle (voir ci-dessous). Les 4 bits inférieurs du contrôle sont évalués ensemble pour déclencher une transition d'etat. Nous n'expliquerons par la suite que les transitions d'etat les plus importantes 2, 3, 4, 9 et 15. Vous trouvez à la fin de ce chapitre un tableau de tous les états et de toutes les transitions d'etat possibles.
Le tableau suivant contient dans la première colonne la transition d'etat souhaitee et dans la deuxieme colonne les conditions nécessaires a ladite transition (generalement une commande envoyee par l'hote, ici représentée encadrée). La troisieme colonne indique comment cette commande est generée, c'est-à-dire quels sont les bits a activer dans le controword (x = non significatif).
Tab. 7.1: Transitions d'etat les plus importantes du contrôleur de moteur
| N° | Est exécuté quand | Combinaison de bits(controlword) | Action | ||||
| Bit | 3 | 2 | 1 | 0 | |||
| 2 | Libér. étage de sortie et régulateur avant + commande Shutdown | Shutdown | x | 1 | 1 | 0 | Aucune |
| 3 | Commande Switch On | Switch On | x | 1 | 1 | 1 | Activation de l'étage de sortie |
| 4 | Commande Enable Operation | Enable Operation | 1 | 1 | 1 | 1 | Régulation conformément au mode de fonctionnement régé |
| 9 | Commande Disable Voltage | Disable Voltage | x | x | 0 | x | L'étage de sortie est verrouillé. Le moteur tourne librement. |
| 15 | Erreur éliminée+Commande Fault Reset | Fault Reset | Bit 7 = | Acquitter l'erreur | |||
EXAMPLE
Après que le contrôleur de moteur a été paramétré, le contrôleur de moteur doit être "validé", c'est-à-dire que l'étage de sortie doit être activé :
1.) Le contrôleur de moteur est dans l'etat SWITCH_ON_DISABLED
2.) Le contrôleur de moteur doit passer à l'etat OPERATION_ENABLE
3.) Selon le diagramme d'etat (Fig. 7.1), les transitions 2, 3 et 4 doivent être executées.
4.) Le Tab. 7.1 montre :
Trans. 2: controlword = 0006h Nouvel état: READY_TO_SWITCH_ON ^1) Trans. 3: controlword = 0007h Nouvel état: SWITCHED_ON ^1) Trans. 4: controlword = 000Fh Nouvel état: OPERATION_ENABLE ^*1)
Nota :
1.) L'exemple part du principe qu'aucun autre bit n'est activé dans le controlword(pour les transitions, seuils les bits 0 ... 3 sont importants).
2.) Les transitions 3 et 4 peuvent être regroupées en réglant le contrôle tout de suite sur 000F_h . Pour la transition d'etat 2, le bit 3 acté n'est pas significatif.
*1) L'hote doit attendre jusqu'à ce que l'état dans le statusword puisse être reliu. Ceci fera l'objet d'unelication détaillée plus loin.
Diagramme d'etat : états
Le tableau suivant récapitule tous les états ainsi que leur signification :
| Nom | Signification |
| NOT_READY_TO_SWITCH_ON | Le contrôleur de moteur effectue un autotest. La communication CAN ne fonctionne pas encore. |
| SWITCH_ON_DISABLED | Le contrôleur de moteur a terminé son autotest. La communication CAN est possible. |
| READY_TO_SWITCH_ON | Le contrôleur de moteur attend que les entrées numériques "Validation étage de sortie" et "Validation régulateur" soient alimentées en 24 V. (Logique de validation de régulateur "Entrée numérique et CAN"). |
| SWITCHED_ON *1) | L'étage de sortie est activé. |
| OPERATION_ENABLE *1) | Le moteur est sous tension et il est régulé conformément au mode de fonctionnement. |
| QUICKSTOPACTIVE *1) | La fonction Quick Stop (Arrêt rapide) est exécutée (voir : quick_stop_option_code). Le moteur est sous tension et il est régulé conformément à la fonction Quick Stop. |
| FAULT_REACTION.Active *1) | Une erreur est survenue. En cas d'erreurs critiques, le programme passé immédiatement à l'état Fault. Sinon, l'action préconisée dans le fault_reaction_option_code est exécutée. Le moteur est sous tension et il est régulé conformément à la fonction Fault Reaction. |
| FAULT | Une erreur est survenue. Le moteur est hors tension. |
| *1) L'étage de sortie est activé. | |
Diagramme d'etat : transitions d'etat
Le tableau suivant récapitule tous les états ainsi que leur signification :
| N° | Est exécuté quand | Combinaison de bits(controlword) | Action | ||||
| Bit | 3 | 2 | 1 | 0 | |||
| 0 | Activé ou réinitialisation | Transition interne | Exécuter l'autotest | ||||
| 1 | Autotest réussi | Transition interne | Activation de la communication CAN | ||||
| 2 | Libér. étage de sortie et régulateur avant + commande Shutdown | Shutdown | x | 1 | 1 | 0 | - |
| 3 | Commande Switch On | Switch On | x | 1 | 1 | 1 | Activation de l'étage de sortie |
| 4 | Commande Enable Operation | Enable Operation | 1 | 1 | 1 | 1 | Régulation conformément au mode de fonctionnement régèle |
| 5 | Commande Disable Operation | Disable Operation | 0 | 1 | 1 | 1 | L'étage de sortie est verrouillé. Le moteur tourne librement |
| 6 | Commande Shutdown | Shutdown | x | 1 | 1 | 0 | L'étage de sortie est verrouillé. Le moteur tourne librement |
| 7 | Commande Quick Stop | Quick Stop | x | 0 | 1 | x | - |
| 8 | Commande Shutdown | Shutdown | x | 1 | 1 | 0 | L'étage de sortie est verrouillé. Le moteur tourne librement |
| 9 | Commande Disable Voltage | Disable Voltage | x | x | 0 | x | L'étage de sortie est verrouillé. Le moteur tourne librement. |
| 10 | Commande Disable Voltage | Disable Voltage | x | x | 0 | x | L'étage de sortie est verrouillé. Le moteur tourne librement |
| 11 | Commande Quick Stop | Quick Stop | x | 0 | 1 | x | Un freinage est déclenché conformément au quick_stopoption_code. |
| No | Est exécuté quand | Combinaison de bits(controlword) | Action | ||||
| Bit | 3 | 2 | 1 | 0 | |||
| 12 | Freinage terminé ou commande Disable Voltage | Disable Voltage | x | x | 0 | x | L' étage de sortie estverrouillé. Le moteur tournelibrement |
| 13 | Erreur survenue | Transition interne | En cas d'erreurs critiques,réaction conformément aufault_reaction_option_code.En cas d'erreurs critiques, la transition 14 est activée. | ||||
| 14 | Traitement des erreurs terminé | Transition interne | L' étage de sortie estverrouillé. Le moteur tournelibrement | ||||
| 15 | Erreur éliminée+Commande Fault Reset | Fault Reset | Bit 7 = | Acquitter l'erreur(pour front ascendant) | |||

Attention
Étage de sortie verrouillé...
...signifie que les semi-conducteurs de puissance (transistors) ne sont plus commandés. Si cet état intervient sur un moteur en train de tourner, ce dernier s'arrête de manière non freinée. Un frein moteur mécanique eventuellement monté est automatiquement serré.
Le signal ne garantit pas que le moteur est effectivement hors tension.

Attention
Libérer l'étage de sortie...
...signifie que le moteur est commandé et régulé conformément au mode de fonctionnement sélectionné. Un frein moteur mécanique eventuel est automatiquement déclenché. Un défaut ou une erreur de paramétrage (courant moteur, nombre de pôles, angle de décalage du résoluvant, etc.) peut entraîner un comportement incontrolé de l'entrainment.
7.1.3 Controlword (mot de commande)
Objet 6040_h : controlword
Le contrôle permit de modifier l'etat actuel du contrôleur de moteur ou de déclencher directement une action précise (p. ex. début de la course de reférence). La fonction des bits 4, 5, 6 et 8 dépend du mode de fonctionnement actuel (modes_of_operation) du contrôleur de moteur qui sera expliqué après ce chapitre.
| Index | 6040h |
| Nom | controlword |
| Object Code | VAR |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | -- |
| Default Value | 0 |
Tab. 7.2 : Affection de bits du controlword
| Bit | Valeur | Fonction |
| 0 | 0001h | Commande des transitions d'etat.(Ces bits sont évalués en commun) |
| 1 | 0002h | |
| 2 | 0004h | |
| 3 | 0008h | |
| 4 | 0010h | new_set_point / start_homing_operation / enable_ip_mode |
| 5 | 0020h | change_set_immediately |
| 6 | 0040h | absolute / relative |
| 7 | 0080h | reset_fault |
| 8 | 0100h | halt |
| 9 | 0200h | reserved - set to 0 |
| 10 | 0400h | reserved - set to 0 |
| 11 | 0800h | reserved - set to 0 |
| 12 | 1000h | reserved - set to 0 |
| 13 | 2000h | reserved - set to 0 |
| 14 | 4000h | reserved - set to 0 |
| 15 | 8000h | reserved - set to 0 |
Comme nous l'avons déjà décrit en détails, les bits 0 ... 3 permettent d'exéçuter les transitions d'état. Les commandes nécessaires à ces actions sont ici encore représentées dans un tableau. La commande Fault Reset est généraee par un changement de front positif (de 0 à 1) du bit 7.
Tab. 7.3: Aperçu de toutes les commandes (x = non significatif)
| Commande : | Bit 7 | Bit 3 | Bit 2 | Bit 1 | Bit 0 |
| \( 0080_{h} \) | \( 0008_{h} \) | \( 0004_{h} \) | \( 0002_{h} \) | \( 0001_{h} \) | |
| Shutdown | × | × | 1 | 1 | 0 |
| Switch On | × | × | 1 | 1 | 1 |
| Disable Voltage | × | × | × | 0 | × |
| Quick stop | × | × | 0 | 1 | × |
| Disable Operation | × | 0 | 1 | 1 | 1 |
| Enable Operation | × | 1 | 1 | 1 | 1 |
| Fault Reset | × | × | × | × |

Comme certaines modifications d'etat nécessiter un certain laps de temps, toutes les modifications déclenchées par le contrôle word doivent être relues par le statusword. C'est uniquement lorsque l'etat demandé peut également être lu dans le statusword qu'une autre commande peut être écrite par le contrôle word.
Vous trouvrez ci-après une explication des bits restants du controlword. En fonction du mode de fonctionnement (modes_of_operation), c'est-à-dire si le contrôleur de moteur est p. ex. régulé en termes de vitesse ou de couples de rotation, certains bits ont différentes significations :
Bit 4
En fonction de modes_of_operation:
new_set_point
En Profile Position Mode:
Un front ascendant signale au contrôleur de moteur qu'une nouvelle instruction de translation doit être prise en charge. Consulter impératifement à ce sujet le chapitre 8.3.
Un front ascendant déclenché le démarrage de la course de référence paramétrée. Un front descendant interrompt de manière prématurée une course de référence en cours.
enable_ip_mode
Ce bit doit être activé quand les articles d'interploation doivent être évalués. Il est acquitté par le bit ip_mode.active dans le statusword.
Consulter impératifement à ce sujet le chap. 8.4.
| Bit 5 | change_set_immediately | Uniquement en Profile Position Mode: Quand ce bit n'est pas activé, lors d'une nouvelle instruction de translation, une instruction évienttement en cours est d'abord exécutée avant de commencer par la nouvelle. En cas d'activation du bit, un positionnement en cours est immidiatement interrompu et replacé par la nouvelle instruction de translation. Consulter impératifement à ce sujet le chapitre 8.3. |
| Bit 6 | relative | Uniquement en Profile Position Mode: En cas d'activation du bit, le contrôleur de moteur rapporte la position cible (target_position) de l'instruction de translation actuelle à la position de consigne (position_demand_value) de l'asservissement de position. |
| Bit 7 | reset_fault | |
| Lors du passage de zéro à un, le contrôleur de moteur tente d'acquitter les erreurs prsentes. Cela n'est possible que si la cause de l'erreur a été éliminée. | ||
| Bit 8 | En fonction de modes_of_operation : | |
| halt | En Profile Position Mode: Si le bit est activé, le positionnement en cours est interrompu. Le freinage est alors assureé par l'objet profile_deceleration. Une fois l'opération terminée, dans le statusword, le bit target_reached est activé. L'effacement du bit n'a peu impact. | |
| halt | En Profile Velocity Mode: Si le bit est activé, la vitesse de rotation est réduite à zéro. Le freinage est alors assureé par l'objet profile_deceleration. L'effacement du bit entraîne la réaccélération du contrôleur de moteur. | |
| halt | En Profile Torque Mode: Si le bit est activé, le couple de rotation est réduit à zéro. Opération assurée par torque_slope. L'effacement du bit entraîne la réaccélération du contrôleur de moteur. |
halt
En Homing Mode:
Si le bit est activé, la course de référence en cours est interrompue. L'effacement du bit n'aaucun impact.
7.1.4 Lecture de l'etat du contrôleur de moteur
De la même façon que différentes transitions d'etat peuvent être déclenchées par la combinaison de plusieurs bits du contrôle, la combinaison de différents bits du statusword permet de dire dans quel état le contrôleur de moteur se trouve.
Le tableau suivant énuméré les états possibles du diagramme d'etat ainsi que la combinaison de bits correspondante permettant de l'indiquer dans le statusword.
| Etat | Bit 6 | Bit 5 |
| 0040h | 0020h | |
| Not_Ready_To_Switch_On | 0 | × |
| Switch_On_Disabled | 1 | × |
| Ready_to_Switch_On | 0 | 1 |
| Switched_On | 0 | 1 |
| OPERATION_ENABLE | 0 | 1 |
| QUICK_STOP.Active | 0 | 0 |
| Fault_Reaction_Active | 0 | × |
| Fault | 0 | × |
| FAULT (selon DS402) 1) | 0 | × |
Tab. 7.4 : État de l'appareil (x = non significatif)
| Bit 3 | Bit 2 | Bit 1 | Bit 0 | Masque | Valeur |
| 0008h | 0004h | 0002h | 0001h | ||
| 0 | 0 | 0 | 0 | 004Fh | 0000h |
| 0 | 0 | 0 | 0 | 004Fh | 0040h |
| 0 | 0 | 0 | 1 | 006Fh | 0021h |
| 0 | 0 | 1 | 1 | 006Fh | 0023h |
| 0 | 1 | 1 | 1 | 006Fh | 0027h |
| 0 | 1 | 1 | 1 | 006Fh | 0007h |
| 1 | 1 | 1 | 1 | 004Fh | 000Fh |
| 1 | 1 | 1 | 1 | 004Fh | 0008h |
| 1 | 0 | 0 | 0 | 004Fh | 0008h |
EXAMPLE
L'exemple ci-dessus montre les bits du controlword qu'il faut activer pour libérer le contrôleur de moteur. Le nouvel état inscrit doit maintainer etre lu dans le statusword : Transition de SWITCH_ON DISABLED a OPERATION ENABLE:
1.) Écrire la transition d'etat 2 dans le contrôle.
2.) Attendre jusqu'à ce que l'état READY_TO_SWITCH_ON apparaisse dans le statusword. Transition 2: controlword = 0006h Attendre jusqu'à ce que (statusword & 006Fh) = 0021h
3.) Les transitions d'etat 3 et 4 peuvent être écrites de manière regroupée dans le contrôleword.
4.) Attendre jusqu'à ce que l'état OPERATION_ENABLE apparaisse dans le statusword. Transition 3+4: controlword = 000Fh Attendre jusqu'à ce que (statusword & 006Fh) = 0027h
Nota : L'exemple part du principe qu'aucun autre bit n'est activé dans le controword pour les transitions, seuils les bits 0 ... 3 sont importants).
*¹ Pour l'identification des états, les bits non actifs doivent aussi être évalués (voir tableau). C'est pourquoi le statusword doit être masqué en conséquence.
7.1.5 Statuswords (mots d'etat)
Objet 6041_h :statusword
| Index | 6041h |
| Nom | statusword |
| Object Code | VAR |
| Data Type | UINT16 |
| Access | ro |
| PDO Mapping | yes |
| Units | -- |
| Value Range | -- |
| Default Value | -- |
Tab. 7.5 : Affection des bits du mot d'etat
| Bit | Valeur | Fonction |
| 0 | 0001h | État du contrôleur de moteur (cf.Tab. 7.4). (Ces bits doivent être évalués en commun) |
| 1 | 0002h | |
| 2 | 0004h | |
| 3 | 0008h | |
| 4 | 0010h | voltage_enabled |
| 5 | 0020h | État du contrôleur de moteur (cf.Tab. 7.4). |
| 6 | 0040h | |
| 7 | 0080h | warning |
| 8 | 0100h | drive_is-moving |
| 9 | 0200h | remote |
| 10 | 0400h | target_reached |
| 11 | 0800h | internal_limit.active |
| 12 | 1000h | set_pointNOWLEDGE / speed_0 / homing_attained / ip_mode.Active |
| 13 | 2000h | following_error / homing_error |
| 14 | 4000h | manufacturer_statusbit |
| 15 | 8000h | Entrainnement_référencé |

Tous les bits du statusword ne sont pas mis en mémoire tampon.
Ils représentent l'objet actuel de l'appareil.
Outre l'état du contrôleur de moteur, le statusword permet d'indiquer divers événements, c'est-à-dire qu'un événement donné est affecté à chaque bit, comme p. ex. une erreur de poursuite. Les différents bits ont la signification suivante :
Bit 4 voltage-enabled
Ce bit est activé quand les transistors de l'étage de sortie sont activés.
Si le bit 7 est activé dans l'objet 6510_h-FO_h (compatibility_control), cela donne (voir chap. 6.2):
Ce bit est activé quand les transistors de l'étage de sortie sont activés.

Avertissement
En cas de défaut, le moteur peut malgré tout se trouver sous tension.
Bit 5 quick_stop
En cas de bit efface, l'entrainment exécute un Quick Stop conformément au quick_stop_option_code.
Bit 7 warning
Ce bit indique qu'un sens de rotation est bloqué parce que l'un des interrupteurs de fin de course s'est déclenché. Le blocage de valeur de consigne est à nouveau effacé après l'exécution d'un accuittement d'erreur (voir contrôle, fault_reset)
Bit 8 drive_is-moving
Spécifique au fabricant
Indépendamment de modes_of_operation, ce bit est activé quand la vitesse de rotation réelle actuelle (velocityactual_value)de l'entrainmente se situe en dehors de la fenêtre de tolérance correspondante (velocity_threshold).
Bit 9 remote
Ce bit indique que l'étage de sortie du contrôleur de moteur peut être libéré sur le réseau CAN. Il est activé quand la logique de libération du régulateur est régée en conséquence via l'objet enable_logic.
Bit 10
En fonction de modes_of_operation:
targetReached
En Profile Position Mode:
Le bit est activé quand la position cible actuelle est atteinte et que la position actuelle (positionactual_value) se trouve dans la fenêtre de position paramétrée (position_window).
Il est en outre activé quand l'entrainement s'immobilise avec le bit Halt activé.
Il est effacé des qu'une nouvelle cible est définie.
targetReached
En Profile Velocity Mode:
Le bit est activé quand la vitesse de rotation (velocityactual_value) de l'entraînement se trouve dans la fenêtre de tolérance (velocity_window, velocity_window_time).
Bit 11 internal_limit.active
Ce bit indique que la limitation I^2t est activée.
Bit 12
En fonction de modes_of_operation:
Ce bit est activé quand le contrôleur de moteur a reconnu le bit activé new_set_point dans le controlword. Il est à nouveau effacé après que le bit new_set_point du controlword a été mis à zéro. Consulter impératifement à ce sujet le chapitre 8.3.
speed_0
En Profile Velocity Mode:
Ce bit est activé quand la vitesse de rotation réelle actuelle (velocityactual_value) de l'entrainment se trouve dans la fenêtre de tolérance correspondante (velocity_threshold).
homing_attained
En Homing Mode:
Ce bit est activé quand la course de référence a été achevée sans erreur.
| ip_mode.active | En Interpolated Position Mode: Ce bit indique que l'interpolation est activée et que les articles d'interpolation sont évalués. Il est activé quand le bit enable_ip_mode du contrôle le demande. Consulter impérative-ment à ce sujeit le chapitre 8.4. | |
| Bit 13 | En fonction de modes_of_operation : | |
| following_error | En Profile Position Mode: Ce bit est activé quand la position réelle actuelle (positionactual_value) s'écartetelltement de la position de consigne (position_demand_value) que la différence se trouve en dehors de la fenêtre de tolérance paramétrée (following_error_window, following_error_time_out). | |
| homing_error | En Homing Mode: Ce bit est activé quand la course de référence est interrompue (bit Halt), que les deux capteurs de fin de course se déclenchent ou que la course de recherche de capteur de fin de course est plus grande que l'espace de positionnement prédéfini (min_position_limit, max_position_limit). | |
| Bit 14 | manufacturer_statusbit | Spécifique au fabricant |
| La signification de ce bit peut être configurée : il peut être activé quand un bit quelconque du manufacturer_statusword_1 est activé ou réinitialisé. Voir aussi à ce sujeit le chapitre 7.1.5, Objet 2000h | ||
| Bit 15 | trigger_result | Spécifique au fabricant |
| La signification de ce bit peut être configurée : il est activé quand un événement d'échantillonnage est survenu et que le masque d'échantillonnage est activé en conséquence. Voir aussi chapitre 6.15. |
Objet 2000_h : manufacturer_statuswords
Afin de pouvoir illustrer d'autres états de régulateur ne devant pas obligatoirement figurer dans le statusword souvent interrogé de manière cyclique, nous avons introduit le groupe d'objets manufacturer_statuswords.
Tab. 7.6 : Affection des bits dans le manufacturer_statusword_1
Le bit est activé quand le régulateur est référencé. C'est le cas quand un déplacement de réference s'est soldé par un succès ou que, en version du système de codeur connecté (p. ex. avec un codeur de valeur absolu), aucun déplacement de référence n'est nécessaire.
Bit 1 commutation_valid
Le bit est activé quand l'information de commutation est valide. Ceci s'avère particulièrement utile avec des systèmes de codeurs sans information de commutation (p. ex. les moteurs linéaires) parce que la détction de commutation automatique peut prendre quelles temps. Une surveillance de ce bit permet, p. ex. d'empêcher une déconnexion de la commande en cas de libération du régulateur.
Le bit est activé en présence de toutes les conditions nécessaires à la libération du régulateur et que seule la libération du régulateur manque encore. Les conditions suivantes doivent être données :
- l'entraînement est sans erreur
- le circuit intermédiaire est charge
- l'évaluation du codeur angulaire est préte à fonctionner.aucun processus (p.ex.transmission série) susceptibled'empêcher une libération n'est actif.
-aucun processus de blocage n'est actif (p.ex.l'identification automatique des parametes du moteur).
Les objets manufacturer_status Masks et manufacturer_status_invert permettent d'afficher un ou plusieurs bits des manufacturer_statuswords au bit 14 (manufacturer_statusbit) du mot d'etat (6041_h) . Tous les bits du manufacturer_statusword_1 peuvent être inversés par l'intémédiaire du bit correspondant de manufacturer_status_invert_1. Ce qui permet également de surveiller l'état "réinitialisé" des bits. Àpres l'inversion, les bits sont masqués, ce qui signifie que le bit continuera d'être évalué uniquement si le bit correspondant de manufacturer_status_mask_1 est activé. Si, après le masquage, au moins encore un bit est actif, le bit 14 du mot d'état est également activé.
La figure suivantemontrecicde maniereexemplaire.
Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit
0 1 1 3 4 ... ... 27 28 29 30 31
1 1 1 1 0 0 0 0 0 0 0 0 0 0 0
0 0 1 1 0 ... 0 ... 0 1 1 0
1 1 0 0 0 0 ...
0 1 0 1 0 ... 1 1 ... 0 0 1 0 0 manufacturer_status_ mask_12005h_01h
0 1 0 0 0 0 ...
soit
Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit Bit
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
A) Le bit 14 du statusword doit être activé quand l'entrainment est référencé. Entrainiment référencé est le bit 0 du manufacturer_statusword_1 manufacturer_status_invert = 0x00000000 manufacturer_status_mask = 0x00000001 (bit 0)
B) Le bit 14 du statusword doit etre activé quand l'entrainement ne possede aucune position de commutation valide. Position de commutation valide est le bit 1 du manufacturer_statusword_1. Ce bit doit etre inversé afin qu'il soit activé quand l'information de commutation n'est pas valide : manufacturer_status_invert = 0x00000002 (bit 1) manufacturer_status_mask = 0x00000002 (bit 1)
C) Le bit 14 du statusword doit etre activé quand l'entrainement n'est pas pret pour la libération OU que l'entrainement est refereNCe. Position de commutation valide est le bit 2 du manufacturer_statusword_1. Entrainement referencé est le bit O. Le bit 2 doit etre inversé afin qu'il soit activé quand l'entrainement n'est pas pret pour la libération : manufacturer_status_invert = 0x00000004 (bit 2) manufacturer_status_mask = 0× 00000005 (bit 2, bit 0)
Objet 2005_h : manufacturer_status Masks
Ce groupe d'objects permet de définir quels bits actifs des manufacturer_statuswords sont affichés dans le statusword. Voir également à ce sujet le chapitre 7.1.5.
Ce groupe d'objets permet de définir quels bits des manufacturer_statuswords inversés dans le statusword sont affichés. Voir également à ce sujet le chapitre 7.1.5.
7.1.6 Description des autres objets
Objets traités dans ce chapitre
| Index | Objet | Nom | Type | Attr. |
| 605Bh | VAR | shutdown_option_code | INT16 | rw |
| 605Ch | VAR | disable_operation_option_code | INT16 | rw |
| 605Ah | VAR | quick_stop_option_code | INT16 | rw |
| 605Eh | VAR | fault_reaction_option_code | INT16 | rw |
Objet 605B_h : shutdown_option_code
L'objet shutdown_option_code permet de prédéfinir comment le contrôleur de moteur se comporte lors de la transition d'état 8 (de OPERATION ENABLE vers READY TO SWITCH ON). L'objet montre le comportement implémenté du contrôleur de moteur. Il ne peut pas être modifié.
| Index | 605Bh |
| Nom | shutdown_option_code |
| Object Code | VAR |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0 |
| Default Value | 0 |
| Valeur | Signification |
| 0 | L'état de sortie est désactivé, le moteur tourne librement |
Objet 605C_h : disable operation option code
L'objet disable_operation_option_code permet de prédéfinir comment le contrôleur de moteur se comporte lors de la transition d'etat 5 (de OPERATION ENABLE vers SWITCH ON). L'objet montre le comportement implémenté du contrôleur de moteur. Il ne peut pas être modifié.
| Index | 605Ch |
| Nom | disable_operation_option_code |
| Object Code | VAR |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | -1 |
| Default Value | -1 |
| Valeur | Signification |
| -1 | Freiner avec quickstop_deceleration |
Objet 605A_h : quick_stop_option_code
Le paramètre quick_stop_option_code permet de prédéfinir comment le contrôleur de moteur se comporte en cas de Quick Stop. L'objet montre le comportement implémenté du contrôleur de moteur. Il ne peut pas être modifié.
| Index | 605A |
| Nom | quick_stop_option_code |
| Object Code | VAR |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 2 |
| Default Value | 2 |
| Valeur | Signification |
| 2 | Freiner avec quickstop_deceleration |
Objet 605E_h : fault_reaction_option_code
Le paramètre fault_reaction_stop_option_code permet de prédéfinir comment le contrôleur de moteur se comporte en cas d'erreur (fault. Comme, pour la gamme CMMP, la réaction d'erreur dépend de l'erreur correspondante, cet object ne peut pas être paramétré et returne toujours 0. Pour modifier la réaction d'erreur des différentes erreurs, voir chapitre 6.18, Gestion des erreurs.
| Index | 605Eh |
| Nom | fault_reaction_option_code |
| Object Code | VAR |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0 |
| Default Value | 0 |
8. Modes de fonctionnement
8.1 Réglage du mode de fonctionnement
8.1.1 Aperçu
Le contrôleur de moteur peut être mis dans un grand nombre de modes de fonctionnement. Seuls quelques-uns d'entre eux sont spécifiés en détails sous CANopen :
- Fonctionnement contrôle par couple - profile torque mode
- Fonctionnement régulé en vitesse - profile velocity mode
- Déplacement de referencia - homing mode
- Mode de positionnement - profile position mode
- Mode de positionnement synchrone - interpolated position mode
8.1.2 Description des objets
Objets traités dans ce chapitre
| Index | Objet | Nom | Type | Attr. |
| 6060h | VAR | modes_of_operation | INT8 | wo |
| 6061h | VAR | modes_of_operation_display | INT8 | ro |
Objet 6060_h : modes_of_operation
L'objet modes_of_operation permet de régler le mode de fonctionnement du contrôleur de moteur.
| Index | 6060h |
| Nom | modes_of_operation |
| Object Code | VAR |
| Data Type | INT8 |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 1, 3, 4, 6, 7 |
| Default Value | -- |
8. Modes de fonctionnement
| Valeur | Signification |
| 1 | Profile Position Mode (asservissement de position avec mode de positionnement) |
| 3 | Profile Velocity Mode (Régulateur de vitesse par rampe de consigne) |
| 4 | Torque Profile Mode (Contrôleur de couple avec rampe de consigne) |
| 6 | Homing Mode (Course de référence) |
| 7 | Interpolated Position Mode |

Le mode de fonctionnement actuel peut uniquement etre lu dans l'objet modes_of_operation_display!
Comme un changement de mode de fonctionnement peut nécessiter un certain temps, il faut attendre jusqu'à ce que le nouveau mode sélectionné apparaissé dans l'objet modes_of_operation_display.
Objet 6061_h : modes_of_operation_display
L'objet modes_of_operation_display permet de dire le mode de fonctionnement actuel du contrôleur de moteur. Si un mode de fonctionnement est reglé par l'intérimédiaire de l'objet 6060h, outre le mode de fonctionnement proprement dit, les injections de valeurs de consigne (selecteur de valeurs de consigne) nécessaires pour un fonctionnement du contrôleur de moteur sous CANopen sont également effectuées. Il s'agit de
| Sélecteur | Profile Velocity Mode | Profile Torque Mode |
| A | Valeur de consigne de vitesse (bus de terrain 1) | Valeur de consigne de couple de rotation (bus de terrain 1) |
| B | Limitation de couple éventuelle | inactif |
| C | Valeur de consigne de vitesse (vitesse synchrone) | inactif |
La ramppe de consigne est en outre activée de manière systématique. C'est uniquement quand ces injections sont régles de la manière indiquée que l'un des modes de fonctionnement CANopen est renvoyé. Si ces réglages sont p. ex. modifiés à l'aide du logiciel de paramétrage, un mode de fonctionnement "User" correspondant est renvoyé pour indiquer que la sélection a été modifiée.
8. Modes de fonctionnement
| Index | 6061h |
| Nom | modes_of_operation_display |
| Object Code | VAR |
| Data Type | INT8 |
| Access | ro |
| PDO Mapping | yes |
| Units | -- |
| Value Range | voir tableau |
| Default Value | 3 |
| Valeur | Signification |
| -1 | Mode de fonctionnement inconnu / Changement de mode de fonctionnement |
| -11 | User Position Mode |
| -13 | User Velocity Mode |
| -14 | User Torque Mode |
| 1 | Profile Position Mode (asservissement de position avec mode de positionnement) |
| 3 | Profile Velocity Mode (Régulateur de vitesse par rampe de consigne) |
| 4 | Torque Profile Mode (Contrôleur de couple avec rampe de consigne) |
| 6 | Homing Mode (Course de référence) |
| 7 | Interpolated Position Mode |

Le mode de fonctionnement ne peut être activé que via l'objet modes_of_operation. Comme un changement de mode de fonctionnement peut nécessiter un certain temps, il faut attendre jusqu'à ce que le nouveau mode sélectionné apparaïssé dans l'objet modes_of_operation_display. Pendant ce laps de temps, "mode de fonctionnement invalide" (-1) peut s'afficher brievement.
8.2 Mode de fonctionnement Course de-reference (Homing Mode)
8.2.1 Aperçu
Ce chapitre déscrit comment le contrôleur de moteur recherche la position de départ (également appelé, point de référence, ou point zéro). Il existe diverses méthodes de détermination de cette position, selon que l'on utilise soit les capteurs de fin de course à la fin de la plage de positionnement ou un capteur de référence (capteur de point zéro) à l'intérieur de la course de déplacement possible. Afin d'obtenir une reproductibilité la plus importante possible, pour quelques méthodes, il est possible d'intégrer l'impulsion de mise à zéro du codeur angulaire utilisé (résolveur, codeur incrémental, etc.).
L'utilisateur peut déterminer la vitesse, l'accelération et le type de course de referencia. L'objet home_offset permet de décaler la position zéro de l'entrainment vers un point quelconque.
Il existe deux vitesses de course de référence. La vitesse de recherche la plus importante (speed_during_search_for.switch) est utilisé pour trouver le capteur de fin de course ou le capteur de référence. Afin de pouvoir déterminer avec exactitude la position du front de commutation correspondant, le programme passé en vitesse d'avance lente (speed_during_search_for_zero).
Si l'entrainment ne doit pas de nouveau reférencé, mais que seule la position doit être forcee sur une valeur prédéfinie, il est possible d'utiliser l'objet 2030_h (set_position_ absolute). Voir a ce sujet Objet 2030_h : set_position absolute à la page 100.

Sous CANopen, la course jusqu'à la position zéro ne fait généralement pas partie intégrante de la course de referencia. Si le contrôleur de moteur connait toutes les grandeurs nécessaires (p. ex, parce qu'il connait déjà la position de l'impulsion de mise zéro) aucun déplacement physique n'est effectué.
Ce comportement peut être modifié par l'objet 6510_h - F0_h (compatibility_control, voir chapitre 6.2) de manière à toutes executer un déplacement vers zéro.
8.2.2 Description des objets
Objets traités dans ce chapitre
| Index | Objet | Nom | Type | Attr. |
| 607Ch | VAR | home_offset | INT32 | rw |
| 6098h | VAR | homing_method | INT8 | rw |
| 6099h | ARRAY | homing_speeds | UINT32 | rw |
| 609Ah | VAR | homing acceleraion | UINT32 | rw |
| 2045h | VAR | homing_timeout | UINT16 | rw |
Objets concernés traités dans d'autres chapîtres
| Index | Objet | Nom | Type | Chapitre |
| 6040h | VAR | controlword | UINT16 | 7.1.3 Controlword (mot de commande) |
| 6041h | VAR | statusword | UINT16 | 7.1.5 Statusword (mot d'état) |
Objet 607C_h : home_offset
L'objet home_offset déterminé le décalage de la position zéro par rapport à la position de reference calculée.

Fig. 8.2: Home Offset
| Index | 607Ch |
| Nom | home_offset |
| Object Code | VAR |
| Data Type | INT32 |
| Access | rw |
| PDO Mapping | yes |
| Units | position units |
| Value Range | -- |
| Default Value | 0 |
Objet 6098_h : homing_method
Pour une course de référence, vous disposez de toute une série de méthodes différentes. L'objet homing_method permet alors de sélectionner la variante nécessaire pour l'application. Il existe quatre signaux de déplacement de référence possibles : le capteur de fin de course négatif et positif, le capteur de référence et l'impulsion de mise à zéro (périodique) du codeur angulaire. En outre, le contrôleur de moteur peut se référencer sur la butée négative ou positive tout à fait sans signal supplémentaire. En cas de détermination d'une méthode de prise de référence par l'intérimédiaire de l'objet homing_method, les réglages suivants sont effectués :
- la source de référence (capteur de fin de course nég./pos., le capteur de référence, la butée nég./pos.)
- la direction et le déroulement du déplacement de referencia
- le type d'évaluation de l'impulsion de mise à zéro du codeur angulaire utilisé.
| Index | 6098h |
| Nom | homing_method |
| Object Code | VAR |
| Data Type | INT8 |
| Valeur | Direction | Objectif | Point de référence pour le zéro |
| -18 | positif | Butée | Butée |
| -17 | négatif | Butée | Butée |
| -2 | positif | Butée | Impulsion de mise à zéro |
| -1 | négatif | Butée | Impulsion de mise à zéro |
| 1 | négatif | Capteur de fin de course | Impulsion de mise à zéro |
| 2 | positif | Capteur de fin de course | Impulsion de mise à zéro |
| 7 | positif | Capteur de référence | Impulsion de mise à zéro |
| 11 | négatif | Capteur de ↔équence | Impulsion de mise à zéro |
| 17 | négatif | Capteur de fin de course | Capteur de fin de course |
| 18 | positif | Capteur de fin de course | Capteur de fin de course |
| 23 | positif | Capteur de ↔équence | Capteur de ↔équence |
| 27 | négatif | Capteur de ↔équence | Capteur de ↔équence |
| 33 | négatif | Impulsion de mise à zéro | Impulsion de mise à zéro |
| 34 | positif | Impulsion de mise à zéro | Impulsion de mise à zéro |
| 35 | Pas de course | Position réelle actuelle |
8. Modes de fonctionnement
La homing_method ne peut se régler que lorsque la course de référence n'est pas active. Sinon, un message d'erreur (voir chapitre 5.5) est renvoyé.
Le déroulement des différentes méthodes est décrit de manière explicite au chapitre 0.
Objet 6099_h : homing_speeds
Cet objet détermine les vitesses utilisées pendant la course de referencia.
Si le bit 6 est activé dans l'objet compatibilité_control, (voir chap. 6.2), après le déplacement de reference, un déplacement vers le zéro est effectué.
Si ce bit est activé et que l'objet speed_during_search_for_SWITCH est renseigné, c'est aussi bien la vitesse de recherche du capteur que la vitesse du déplacement vers le zéro qui est renseignée.
Objet 609A_h : homing acceleration
L'objet homing acceleration définit l'accelération qui sera utilisé pendant la course de reference pour toutes les opérations d'acceleration et de freinage.
| Index | 609Ah |
| Nom | homing acceleraion |
| Object Code | VAR |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | yes |
| Units | acceleration units |
| Value Range | -- |
| Default Value | 1000 min-1/s |
Objet 2045_h : homing_timeout
Le temps maximal d'exécution du déplacement de referencia peut être surveillé. L'objet homing_timeout permet alors d'indiquer le temps d'exécution maximal. Si ce temps est dépasse sans que le déplacement de referencia ne soit terminé, cela déclenché l'erreur 11-3.
| Index | 2045h |
| Nom | homing_timeout |
| Object Code | VAR |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | no |
| Units | ms |
| Value Range | 0 (arrêt), 1 ... 65535 |
| Default Value | 60000 |
8.2.3 Processus de course de reference
Les différentes méthodes de course de referencia sont illustrées dans les figures suivantes. Les nombres encercrés correspondant au code à inscire dans l'objet homing_method.
Méthode 1: capteur de fin de course négatif avec évaluation de l'impulsion de mise à zéro
Avec cette méthode, l'entrainment se déplace d'abord relativement vite en direction négative, jusqu'à ce qu'ilatteigne le capteur de fin de course négatif. Ce dernier est représenté sur le diagramme par le front ascendant. Ensuite, l'entrainment repart lentement en arrêté etcherche la position exacte du capteur de fin de course. La position zéro se refère à la première impulsion de mise à zéro du codeur angulaire en direction positive à partir du capteur de fin de course.

Fig. 8.3 : Course de referencia en direction du capteur de fin de course négatif avec évaluation de l'impulsion de mise à zéro
Méthode 2: capteur de fin de course positif avec évaluation de l'impulsion de mise à zéro
Avec cette méthode, l'entrainment se déplace d'abord relativement vite en direction positive, jusqu'à ce qu'il attigne le capteur de fin de course positif. Ce dernier est représenté sur le diagramme par le front ascendant. Ensuite, l'entrainment repart lentement en arrêté etcherche la position exacte du capteur de fin de course. La position zéro se refère à la première impulsion de mise à zéro du codeur angulaire en direction négative à partir du capteur de fin de course.

Fig. 8.4 : Course de referencia en direction du capteur de fin de course négatif avec évaluation de l'impulsion de mise à zéro
Méthodes 7 et 11: capteur de référence et évaluation de l'impulsion de mise à zéro
Ces deux méthodes exploitent le capteur de référence qui n'est actif que sur une partie du trajet. Ces méthodes de prise de référence se présent plus particulièrement aux applications dotées d'axes circulaires où le capteur de référence n'est activé qu'une fois par rotation.
Avec la méthode 7, l'entrainment se déplace d'abord dans le sens positif et avec la méthode 11 dans le sens négatif. En fonction du sens de déplacement, la position zéro se refère à la première impulsion de mise à zéro dans le sens négatif ou positif du capteur de reference. Ce que montrent les deux schémas suivants.

Fig. 8.5 : Course de référence en direction du capteur de référence avec évaluation de l'impulsion de mise à zéro avec déplacement initial positif

Lors des déplacements de referencia sur le capteur de referencia, les capteurs de fin de course sont d'abord utilisés pour le changement de direction de recherche. Si ensuite le capteur de fin de course oppose est atteint, une erreur est déclenchée.

Fig. 8.6: Course de reférence en direction du capteur de reférence avec évaluation de l'impulsion de mise à zéro avec déplacement initial négatif
Méthode 17 : course de référence en direction du capteur de fin de course négatif
Avec cette méthode, l'entrainment se déplace d'abord relativement vite en direction négative, jusqu'à ce qu'il attigne le capteur de fin de course négatif. Ce dernier est représenté sur le diagramme par le front ascendant. Ensuite, l'entrainment repart lentement en arrêté etcherche la position exacte du capteur de fin de course. La position zéro se refère au front descendant à partir du capteur de fin de course négatif.

Fig. 8.7 : Course de referencia en direction du capteur de fin de course négatif
Méthode 18 : course de référence en direction du capteur de fin de course positif
Avec cette méthode, l'entrainment se déplace d'abord relativement vite en direction positive, jusqu'à ce qu'il attaigne le capteur de fin de course positif. Ce dernier est représenté sur le diagramme par le front ascendant. Ensuite, l'entrainment repeats lentement en arrêté etcherche la position exacte du capteur de fin de course. La position zéro se refère au front descendant à partir du capteur de fin de course positif.

Fig. 8.8 : Course de référence en direction du capteur de fin de course positif
Méthodes 23 et 27 : course de référence en direction du capteur de référence
Ces deux méthodes exploitent le capteur de référence qui n'est actif que sur une partie du trajet. Cette méthode de prise de référence se préte plus particulièrement aux applications dotées d'axes circulaires où le capteur de référence n'est activé qu'une fois par rotation.
Avec la méthode 23, l'entrainment se déplace d'abord dans le sens positif et avec la méthode 27 dans le sens négatif. La position zéro se refère au front du capteur de reference. Ce que montrent les deux schémas suivants.
8. Modes de fonctionnement

Fig. 8.9: Course de reférence en direction du capteur de reférence avec déplacement initial positif

Lors des déplacements de referencia sur le capteur de referencia, les capteurs de fin de course sont d'abord utilisés pour le changement de direction de recherche. Si ensuite le capteur de fin de course oppose est atteint, une erreur est déclenchée.

Fig. 8.10 : Course de référence en direction du capteur de référence avec déplacement initial négatif
Méthode -1: butée négative avec évaluation de l'impulsion de mise à zéro
Avec cette méthode, l'entrainment se déplace en direction négative, jusqu'à ce qu'il attaigne la butée. Ce faisant, l'intégrale 1^2 t du moteur monte jusqu'à 90% max. La butée doit être dimensionnée mécaniquement de manière à ne pas subir de dommages avec le courant maximal paramétré. La position zéro se refère à la première impulsion de mise à zéro du codeur angulaire en direction positive à partir de la butée.

Fig. 8.11: Course de referencia en direction de la butée négative avec évaluation de l'impulsion de mise à zéro
Méthode 2: butée positive avec évaluation de l'impulsion de mise à zéro
Avec cette méthode, l'entrainment se déplace d'abord relativivement vite en direction positive, jusqu'à ce qu'il attaigne la butée. Ce faisant, l'intégrale 1^2 t du moteur monte jusqu'à 90% max. La butée doit être dimensionnée mécaniquement de manière à ne pas subir de dommages avec le courant maximal paramétré. La position zéro se refère à la première impulsion de mise à zéro du codeur angulaire en direction négative à partir de la butée.

Fig. 8.12 : Course de referencia en direction de la butée positive avec évaluation de l'impulsion de mise à zéro
Méthode 17: course de réference en direction de la butée négative
Avec cette méthode, l'entrainment se déplace en direction négative, jusqu'à ce qu'il attaigne la butée. Ce faisant, l'intégrale 1^2t du moteur monte jusqu'à 90% max. La butée doit être dimensionnée mécaniquement de manière à ne pas subir de dommages avec le courant maximal paramétré. La position zéro de refère directement à la butée.

Fig. 8.13 : Course de référence en direction de la butée négative
Méthode 18: course de réference en direction de la butée positive
Avec cette méthode, l'entrainment se déplace d'abord relativement vite en direction positive, jusqu'à ce qu'il attaigne la butée. Ce faisant, l'intégrale 1^2t du moteur monte jusqu'à 90% max. La butée doit être dimensionnée mécaniquement de manière à ne pas subir de dommages avec le courant maximal paramétré. La position zéro de refère directement à la butée.

Fig. 8.14 : Course de referencia en direction de la butée positive
Méthodes 33 et 34 : course de référence en direction de l'impulsion de mise à zéro
Avec les méthodes 33 et 34, la direction de la course de référence est négative ou positive. La position zéro se refère à la première impulsion de mise à zéro du codeur angulaire dans le sens de recherche.

Fig. 8.15 : Course de référence se rapportant uniquement à l'impulsion de mise à zéro
Méthode 35 : course de réference en direction de la position actuelle
Avec la méthode 35, la position zéro de refère à la position actuelle.
Si l'entrainment ne doit pas de nouveau reférencé, mais que seule la position doit être forcee sur une valeur prédéfinie, il est possible d'utiliser l'objet 2030_h (set_position absolute). Voir a ce sujet, le chapitre 6.7.2.
8.2.4 Commande de la course de reference
La course de reférence est commande et surveillée par le controlword / statusword.
Le démarrage est assure par l'activation du bit 4 dans le controlword. L'issue positive de la course est indiquée par un bit 12 activé dans l'objet statusword. Un bit 13 activé dans l'objet statusword indique qu'une erreur est survenue pendant la course de reférence.
La cause de l'erreur peut être déterminée par les objets error register et pre_defined error_field.
Tab. 8.1 : Description des bits dans le contrôle word (mot de commande)
| Bit 4 | Signification |
| 0 | La course de référence n'est pas active |
| 0→ | Lancement d'une course de ↔reference |
| 1 | La course de ↔reference est active |
| 1-0 | Interrompre la course de ↔reference |
Tab. 8.2 : Description des bits dans le statusword (mot d'objet)
| Bit 13 | Bit 12 | Signification |
| 0 | 0 | La course de référence n'est pas encore terminée |
| 0 | 1 | Course de ↔jurence achievée avec succès |
| 1 | 0 | La course de ↔jurence s'est soldée par un échec |
| 1 | 1 | Etat interdit |
8.3 Mode Positionnement (Profile Position Mode)
8.3.1 Aperçu
La structure de ce mode de fonctionnement estprésentée à la Fig. 8.16 : La position cible (target_position) est transmise au générateur de courbes de déplacement. Ce dernier génère une valeur de consigne de position (position_demand_value) pour l'asservissement de position précrit au chapitre Asservissement de position (Position Control Function, chapitre 6.7). Ces deux blocs de fonction peuvent être régés indépendamment l'un de l'autre.

Fig. 8.16 : Générateur de courbes de déplacement et asservissement de position Toutes les grandeurs d'entrée du générateur de courbes de déplacement sont converties avec les grandeurs du Factor-Group (cf. chapitre 6.3) dans les unités internes du régulateur. Les grandeurs internes sont identifiées ici par un astérisque et ne sont généralement pas utilisées par l'utilisateur.
8.3.2 Description des objets
Objets traités dans ce chapitre
| Index | Objet | Nom | Type | Attr. |
| 607Ah | VAR | target_position | INT32 | rw |
| 6081h | VAR | profile_velocity | UINT32 | rw |
| 6082h | VAR | endvelocity | UINT32 | rw |
| 6083h | VAR | profile acceleraion | UINT32 | rw |
| 6084h | VAR | profile_deceleration | UINT32 | rw |
| 6085h | VAR | quick_stop_deceleration | UINT32 | rw |
| 6086h | VAR | motion_profile_type | INT16 | rw |
Objets concernés traités dans d'autres chapitres
| Index | Objet | Nom | Type | Chapitre |
| 6040h | VAR | controlword | INT16 | 7.1.3 Controlword (mot de commande) |
| 6041h | VAR | statusword | UINT16 | 7.1.5 Statusword (mot d'état) |
| 605Ah | VAR | quick_stop_option_code | INT16 | 7.1.6 Description des autres objets |
| 607Eh | VAR | polarity | UINT8 | 6.3 Facteurs de conversion |
| 6093h | ARRAY | position_factor | UINT32 | 6.3 Facteurs de conversion |
| 6094h | ARRAY | velocityEncoder_factor | UINT32 | 6.3 Facteurs de conversion |
| 6097h | ARRAY | acceleration_factor | UINT32 | 6.3 Facteurs de conversion |
Objet 607A_h : target_position
L'objet target_position (position cible) détermine jusqu'à chaque position le contrôleur de moteur doit se déplacer. En tenant notamment compte du réglage actuel de vitesse, d'accelération, de décélération et du type de profil d'avance (motion_profile_type), etc. La position cible (target_position) est interprétable comme indication absolue ou relative (controlword, bit 6).
| Index | 607A_h |
| Nom | target_position |
| Object Code | VAR |
| Data Type | INT32 |
| Access | rw |
| PDO Mapping | yes |
| Units | position units |
| Value Range | -- |
| Default Value | 0 |
Objet 6081h:profile_speedy
L'objet profile_velocity indique la vitesse normalement atteinte pendant un positionnement à la fin de la ramppe d'accelération. L'objet profile velocity est indiqué en speed units (unités de vitesse).
| Index | 6081h |
| Nom | profile_velocity |
| Object Code | VAR |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | yes |
| Units | speed.units |
| Value Range | -- |
| Default Value | 1000 |
Objet 6082_h : end_speed
L'objet end_velocity (vitesse finale) définit la vitesse que l'entrainment doit atteindre quand il arrive à la position cible (target_position). Normalement, il faut régler cet objet sur zéro afin que le contrôleur de moteur s'arrête une fois la position cible atteinte (target_position). Pour un positionnement sans intervalle, il est possible de définir une vitesse s'écartant de zéro. L'objet end velocity est indiqué dans les mêmes unités que l'objet profile velocity.
| Index | 6082h |
| Nom | end_velocity |
| Object Code | VAR |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | yes |
| Units | speed units |
| Value Range | -- |
| Default Value | 0 |
Objet 6083:profile acceleration
L'objet profile accelération indique l'accelération appliquée à la course en direction de la valeur de consigne. Elle est indiquée en unités d'accelération (acceleration units) définies par l'utilisateur. (voir chapitre 6.3, Factor Group).
| Index | 6083h |
| Nom | profile acceleration |
| Object Code | VAR |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | yes |
| Units | acceleration units |
| Value Range | -- |
| Default Value | 10 000 min-1/s |
Objet 6084_h :profile_deceleration
L'objet profile_deceleration indique l'accelération nécessaire au freinage. Elle est indiquée en unités d'accelération (acceleration units) définies par l'utilisateur; (voir chapitre 6.3, Factor Group).
| Index | 6084h |
| Nom | profile_deceleration |
| Object Code | VAR |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | yes |
| Units | acceleration units |
| Value Range | -- |
| Default Value | 10 000 min-1/s |
Objet 6085_h : quick_stop_deceleration
L'objet quick_stop_deceleration indique avecquelle decélation le moteur s'arrête en cas d'exécution d'un Quick Stop (voir chapitre 7). L'objet quick_stop_deceleration est indiquédans la même unité que l'objet profile_deceleration.
| Index | 6085h |
| Nom | quick_stop_deceleration |
| Object Code | VAR |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | yes |
| Units | acceleration units |
| Value Range | -- |
| Default Value | 14 100 min-1/s |
Objet 6086_h : motion_profile_type
L'objet motion_profile_type sert à Sélectionner le type de profil de positionnement.
| Index | 6086h |
| Nom | motion_profile_type |
| Object Code | VAR |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 0, 2 |
| Default Value | 0 |
| Valeur | Forme de courbe |
| 0 | Ramppe linéaire |
| 2 | rampe sans â-coups |
8.3.3 Description des fonctions
Il existe deux possibités pour transmettre une position cible au contrôleur de moteur :
Instruction de translation simple
Quand le contrôleur de moteur a atteint sa position cible, il en informe l'hote avec le bit target_reached (bit 10 dans l'objet statusword). Dans ce mode de fonctionnement, le contrôleur de moteur s'arrête quand il a atteint sa cible.
Suite d'instructions de translation
Après que le contrôleur de moteur a atteint une cible, il commence aussitôt à se diriger vers la cible suivante. Cette transition peut se dérouler de manière fluide sans que le contrôleur de moteur ne s'arrête entre temps.
Ces deux méthodes sont contrôleés par les bits new_set_point et change_set_immediately dans l'objet controlword et set_pointNOWLEDGE dans l'objet statusword. Ces bits se trouvent dans un rapport question-réponse les uns par rapport aux autres. Ce qui permet ainsi de préparer une instruction de translation pendant qu'une autre est encore en train de se dérouler.

Fig. 8.17: Transmission d'une instruction de translation par un hôte
Sur la Fig. 8.17, vous pouvez voir comment l'hôte et le contrôleur de moteur communiquent par l'intermédiaire du bus CAN :
Tout d'abord, les données de positionnement (position cible, vitesse d'avance, vitesse finale et accelération) sont transmises au contrôleur de moteur. Quand l'article de positionnement est intégralement enregistré (1), l'hote peut lancer le positionnement en réglant le bit new_set_point dans le controword sur "1" (2). ÀpRES que le contrôleur de moteur a reconnu les nouvelles données et qu'il les a prises en compte dans sa mémoire tampon, il en informe l'hôte en activant le bit set_pointNOWLEDGE dans le statusword (3).
À la suite de quoi l'hôte peut commencer à enregistrer un nouvel article de positionnement dans le contrôleur de moteur (4) et effacer à nouveau le bit new_set_point(5). C'est uniquement quand le contrôleur de moteur peut accepter une nouvelle instruction de translation (6) qu'il le signale par un "0" dans le bit set_pointNOWLEDGE. Avant, l'hôte n'est pas autorisé à lancer un nouveau positionnement (7).
8. Modes de fonctionnement
Sur la Fig. 8.18, un nouveau positionnement n'est lancé qu'après que le précédent est entiement terminé. Pour ce faire, l'hote évalue le bit target_reached dans l'objet statusword.

Fig. 8.18: Instruction de translation simple
Sur la Fig. 8.19, un nouveau positionnement est déjà lancé pendant que le précédent est encore en cours de traitement. Pour ce faire, l'hote transmet au contrôleur de moteur la cible suivante des le moment où ce dernier signale par l'effacement du bit set_point_acknowledge qu'il a lu la mémoire tampon et qu'il a lancé le positionnement correspondant. De cette manière, les positionnements sont ajoutés les uns aux autres sans intervalle. Afin que le contrôleur de moteur ne freine pas à chaque fois brievement au zéro entre les différents positionnements, pour ce mode de fonctionnement, il faut déscrie l'objet end_velocity avec la même valeur que l'objet profile_velocity.

Fig. 8.19: Suite sans intervalle d'instructions de translation
Quand dans le contrôle, en plus du bit new_set_point, le bit change_set_immediately est lui aussi réglé sur "1", l'hôte indique ainsi au contrôleur de moteur de démarrer immidiatement la nouvelle instruction de translation. Dans ce cas, une instruction de translation déjà en cours de traitement est interrompue.
Le Interpolated Position Mode (IP) permet de prédéfinir des valeurs de consigne de position dans une application à plusieurs axes du contrôleur de moteur. Pour ce faire, dans un système à tranche de temps fixe (intervalle de synchronisation), des télégrammes de synchronisation (SYNC) et des valeurs de consigne de position sont prédéfinies par une commande de niveau supérieur. comme en règle générale, l'intervalle est supérieur à un cycle d'asservissement de position, le contrôleur de moteur interpôle de manière autonome les valeurs de données entre deux valeurs de position prédéfinies, comme illustré sur le croquis suivant.

Fig. 8.20 : Instruction de translation interpolation linéaire entre deux valeurs de données Ci-après sont d'abord décrits les objets nécessaires pour le interpolated position mode. Dans une description fonctionnelle à partir, nous allons aborder plus en détaill l'activation et l'ordre du paramétrage.
8.4.2 Description des objets
Objets traités dans ce chapitre
| aIndex | Objet | Nom | Type | Attr. |
| 60C0h | VAR | interpolation_submode_select | INT16 | rw |
| 60C1h | REC | interpolation_data_record | rw | |
| 60C2h | REC | interpolation_time_period | rw | |
| 60C3h | ARRAY | interpolation_SYNC-definition | UINT8 | rw |
| 60C4h | REC | interpolation_data_configuration | rw |
Objets concernés traités dans d'autres chapitres
| Index | Objet | Nom | Type | Chapitre |
| 6040h | VAR | controlword | INT16 | 7.1.3 Controlword (mot de commande) |
| 6041h | VAR | statusword | UINT16 | 7.1.5 Statusword (mot d'état) |
| 6093h | ARRAY | position_factor | UINT32 | 6.3 Facteurs de conversion |
| 6094h | ARRAY | velocity Encoder_factor | UINT32 | 6.3 Facteurs de conversion |
| 6097h | ARRAY | acceleration_factor | UINT32 | 6.3 Facteurs de conversion |
Objet 60CO_h : interpolation_submode_select
L'objet interpolation_submode_select permet de définir le type d'interpolation. Pour le moment, seule la variante spécifique au constructeur "Interpolation linéaire sans mémoire tampon" est disponible.
| Index | 60C0h |
| Nom | interpolation_submode_select |
| Object Code | VAR |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | -2 |
| Default Value | -2 |
| Valeur | Type d'interpolation |
| -2 | Interpolation linéaire sans mémoire tampon |
Objet 60C1h: interpolation_data_record
L'enregistrement d'objet interpolation_data_record représenté l'article de données proprement dit. Il est constitué d'une entrée pour la valeur de position (ip_data_position) et d'un mot de commande (ip_data_controlword), indiquant si la valeur de position doit être interprétable de manière absolue ou relative. L'indication du mot de commande est facultative. S'il n'est pas indiqué, la valeur de position est interprétable comme valeur absolue. Si le mot de commande est censé être indiqué, pour des raisons de consistance des données, il faut d'abord écrire le sous-index 2 (ip_data_controlword) et ensuite le sous-index 1 (ip_data_position), car, en interne, la prise en compte des données est déclenchée par un accès en écriture à ip_data_position.
8. Modes de fonctionnement
| Index | 60C1h |
| Nom | interpolation_data_record |
| Object Code | RECORD |
| No. of Elements | 2 |
| Sub-Index | 01h |
| Description | ip_data_position |
| Data Type | INT32 |
| Access | rw |
| PDO Mapping | yes |
| Units | position units |
| Value Range | -- |
| Default Value | -- |
| Sub-Index | 02h |
| Description | ip_data_controlword |
| Data Type | UINT8 |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 0, 1 |
| Default Value | 0 |
| Valeur | ip_data_position+réelle |
| 0 | Position absolue |
| 1 | Distance relative |

La prise en charge interne des données s'effectue lors de l'accès en écriture au sous-index 1. Si par ailleurs le sous-index 2 est censé être utilisé, ce dernier doit être décrit avant le sous-index 1.
Objet 60C2_h : interpolation_time_period
L'enregistrement d'objet interpolation_time_period permet de régler l'intervalle de synchronisation. ip_time_index permet de définir l'unité (ms ou 1/10 ms) de l'intervalle paramétré via ip_time.units. Pour la synchronisation, la cascade de régulateurs complète (regulateur de courant, de vitesse et asservissement de position) sont synchronisés sur le pas externe. Ainsi, la modification de l'intervalle de synchronisation n'agit qu'après une réinitialisation. Si l'intervalle d'interpolation doit être modifié via le bus CAN, il faut donc enregistrer le jeu de paramêtres (voir chapitre 6.1) et effectuer une réinitialisation (voir chapitre 5.6) afin que le nouvel intervalle de synchronisation puisse agir. L'intervalle de synchronisation doit être respecté avec la plus grande précision.
| Index | 60C2h |
| Nom | interpolation_time_period |
| Object Code | RECORD |
| No. of Elements | 2 |
| Sub-Index | 01h |
| Description | ip_time.units |
| Data Type | UINT8 |
| Access | rw |
| PDO Mapping | yes |
| Units | conformément à ip_time_index |
| Value Range | ip_time_index = -3: 1, 2 ... 9, 10 ip_time_index = -4: 10, 20 ... 90, 100 |
| Default Value | -- |
| Sub-Index | 02h |
| Description | ip_time_index |
| Data Type | INT8 |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | -3, -4 |
| Default Value | -3 |
| Valeur | ip_time.units est indiqué en |
| -3 | 10-3seconds (ms) |
| -4 | 10-4seconds (0,1 ms) |

La modification de l'intervalle de synchronisation n'agit qu'aupres une réinitialisation. Si l'intervalle d'interpolation doit être modifié via le bus CAN, le jeu de paramètres doit être enregistré et il faut procéder à une réinitialisation.
Objet 60C3_h : interpolation_sync_defined
L'objet interpolation_sync_definedimension permet de prédéfinir le type (synchronize_on_group) et le nombre (ip_sync EVERY_n_event) de téléGRAMmes de synchronisation par intervalle de synchronisation. Pour la gamme CMMP, seul le télégramme SYNC standard et 1 SYNC peut être définir par intervalle.
| Index | 60C3h |
| Nom | interpolation_sync_defined |
| Object Code | ARRAY |
| No. of Elements | 2 |
| Data Type | UINT8 |
| Sub-Index | 01h |
| Description | syncrize_on_group |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 0 |
| Default Value | 0 |
| Valeur | Signification |
| 0 | Utiliser télégramme SYNC standard |
| Sub-Index | 02h |
| Description | ip_synceverything_n_event |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 1 |
| Default Value | 1 |
Objet 60C4_h : interpolation_data_configuration
L'enregistrement d'objet interpolation_data_configuration permet de configurer le type (buffer組織ation) et la taille (max_buffer_size, actual_buffer_size) d'une mémoire tampon éventuellesment présente ainsi que l'accès à cette (buffer_position, buffer_clear). L'objet size_of_data_record permet de consulter la taille d'un élément de mémoire tampon. Bien que pour le type d'interpolation "Interpolation linéaire sans mémoire tampon" aucune mémoire tampon ne soit disponible, l'accès doit néanmoins être, dans ce cas validé par l'intérimédiaire de l'objet buffer_clear.
| Index | 60C4h |
| Nom | interpolation_data_configuration |
| Object Code | RECORD |
| No. of Elements | 6 |
| Sub-Index | 01h |
| Description | max_buffer_size |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | no |
| Units | -- |
| Value Range | 0 |
| Default Value | 0 |
| Sub-Index | 02h |
| Description | actual_size |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 0 ... max_buffer_size |
| Default Value | 0 |
| Sub-Index | 03h |
| Description | buffer組織ation |
| Data Type | UINT8 |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 0 |
| Default Value | 0 |
8. Modes de fonctionnement
| Valeur | Signification |
| 0 | FIFO |
| Sub-Index | 04h |
| Description | buffer_position |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 0 |
| Default Value | 0 |
| Sub-Index | 05h |
| Description | size_of_data_record |
| Data Type | UINT8 |
| Access | wo |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 2 |
| Default Value | 2 |
| Sub-Index | 06h |
| Description | buffer_clear |
| Data Type | UINT8 |
| Access | wo |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 0, 1 |
| Default Value | 0 |
| Valeur | Signification |
| 0 | Effacer mémoire tampon / Accès à 60C1h non autorisé |
| 1 | Accès à 60C1h validé |
8.4.3 Description des fonctions
Paramétrage préparatoire
Avant que le contrôleur de moteur ne puisse être commuté en mode interpolated position mode, il faut procéder à différents réglages : dont notamment le réglage de l'intervalle d'interpolation (interpolation_time_period), à savoir le laps de temps entre deux télégrammes SYNC, le type d'interpolation (interpolation_submode_select) et le type de synchronisation (interpolation_SYNC_defined). En outre, il faut valider l'accès à la mémoire tampon de position via l'objet buffer_clear.
EXAMPLE
| Tâche | Objet CAN / COB |
| Type d'interpolation -2 | 60C0h, interpolation_submode_select = -2 |
| Unité de temps 0,1 ms | 60C2h_02h, interpolation_time_index = -04 |
| Intervalle de temps 4 ms | 60C2h_01h, interpolation_time.units = 40 |
| Sauvegarder les paramètres | 1010h_01h, save_all_parameters |
| Effectuer une réinitialisation | NMT reset node |
| Attendre l'amorçage | Message d'amorçage |
| Validation du tampon 1 | 60C4h_06h, buffer_clear = 1 |
| Générer SYNC | SYNC (tranche de temps 4 ms) |
Activation du mode Interpolated Position Mode et essai de synchronisation
L'IP est activé via l'objet modes_of_operation (6060_) . À partir de ce moment, le contrôleur de moteur essaire de se synchroniser sur le système à tranche de temps externe prédéfini par les télégrammes SYNC. Si le contrôleur de moteur a réussi à se synchroniser, il signale le mode de fonctionnement interpolated position mode dans l'objet modes_of_operation_display (6061_) . Pendant l'essay de synchronisation, le contrôleur de moteur returne mode de fonctionnement invalide (-1). Si après la réussite de l'essay de synchronisation, les télégrammes ne sont pas envoyés dans la tranche de temps correcte, le contrôleur de moteur returne en mode de fonctionnement invalide.
Une fois le mode de fonctionnement adopté, la transmission des données de position à l'entrainment peut commencer. Intelligemment, la commande de niveau supérieure lit d'abord la position réelle actuelle dans le régulateur et l'écrit de manière cyclique comme nouvelle valeur de consigne (interpolation_data_record) dans le contrôleur de moteur. Par l'intérimédiaire de bits Handshake du contrôleword et du statusword, la prise en charge des données par le contrôleur de moteur est activée. En activant le bit enable_ip_mode dans le contrôleword, l'hôte indique qu'il faut commencer à évaluer les données de position. C'est uniquement quand le contrôleur de moteur acquitte cette information par l'intérimédiaire du bit d'état ip_mode_selected dans le statusword que les articles de données sont évalués.
Dans le détail, cela donne l'affection suivante et le déroulement suivant :
8. Modes de fonctionnement

Fig. 8.21 : Essai de synchronisation et validation des données
| \( {\mathrm{N}}^{ \circ } \) | événement | Objet CAN |
| 1 | Générer des messages SYNC | |
| 2 | Demande de mode de fonctionnement ip | \( {6060}_{\mathrm{h}} \) ,modes_of operation \( = {07} \) |
| 3 | Attendre jusqu'à ce que le mode de fonctionnement soit adopté | \( {6061}_{\mathrm{h}} \) ,modes_of operation display \( = {07} \) |
| 4 | Lecture de la position réelle actuelle | \( {6064}_{\mathrm{h}} \) ,positionactual_value |
| 5 | Réécriture comme position de consigne actuelle | \( {60C}{1}_{\mathrm{h}} - {01}_{\mathrm{h}} \) ,ip_data_position |
| 6 | Lancement de l'interpolation | \( {6040}_{\mathrm{h}} \) ,controlword,enable_ip_mode |
| 7 | Acquittement par le contrôleur de moteur | \( {6041}_{\mathrm{h}} \) ,statusword,ip_mode.active |
| 8 | Modification de la position de consigne actuelle conformément à la trajectoryire | \( {60C}{1}_{\mathrm{h}} - {01}_{\mathrm{h}} \) ,ip_data_position |
Une fois terminée l'opération de course synchrone, l'effacement du bit enable_ip_mode permet d'empêcher toute autre évaluation des valeurs de position. Ensuite, le cas échéant, il est possible de passer à un autre mode de fonctionnement.
8. Modes de fonctionnement
Interruption de l'interpolation en cas d'erreur
Si une interpolation en cours d'exécution (ip_mode.active activé) est interrompue par l' apparition d'une erreur du contrôleur, l'entraînement se comporte tout d'abord comme spécifique par l'erreur en question (p. ex. retrait de la validation du régulateur et passage à l'état SWITCH_ON_DISABLED).
L'interpolation ne peut être poursuivie que par un nouvel essai de synchronisation car le contrôleur de moteur doit à nouveau être transposé dans l'état OPERATION_ENABLE, ce qui a pour effet d'effacer le bit ip_mode.active.
8.5 Mode Régulation de la vitesse (Profile Velocity Mode)
8.5.1 Aperçu
Le mode de fonctionnement régulé en vitesse (Profile Velocity Mode) comporte les sous fonctions suivantes :
- Création d'une valeur de consigne par le générateur de rampes
- Détection de la vitesse par différenciation via le codeur angulaire
- Régulation de la vitesse par le biais de signaux d'entrée et de sortie appropriés
- Limitation de la valeur de consigne du couple de rotation (torque_demand_value)
- Surveillance de la vitesse réelle (velocityactual_value) à l'aide de la fonction de fenêtre/seuil
La signification des paramètres suivants est décrite au chapitre Positionnement (Profile Position Mode): profile acceleration, profile_deceleration, quick_stop.
8. Modes de fonctionnement


Fig. 8.22 : Structure du mode de fonctionnement régulé en vitesse (Profile Velocity Mode)
8.5.2 Description des objets
Objets traités dans ce chapitre
| Index | Objet | Nom | Type | Attr. |
| 6069h | VAR | velocity_sensoractual_value | INT32 | ro |
| 606Ah | VAR | sensor_selection_code | INT16 | rw |
| 606Bh | VAR | velocity_demand_value | INT32 | ro |
| 202Eh | VAR | velocity_demand_SYNC_value | INT32 | ro |
| 606Ch | VAR | velocityactual_value | INT32 | ro |
| 606Dh | VAR | velocity_window | UINT16 | rw |
| 606Eh | VAR | velocity_window_time | UINT16 | rw |
| 606Fh | VAR | velocity_threshold | UINT16 | rw |
| 6080h | VAR | max_motor_speed | UINT32 | rw |
| 60FFh | VAR | target_velocity | INT32 | rw |
Objets concernés traités dans d'autres chapitres
| Index | Objet | Nom | Type | Chapitre |
| 6040h | VAR | controlword | INT16 | 7.1.3 Controlword (mot de commande)s |
| 6041h | VAR | statusword | UINT16 | 7.1.5 Statusword (mot d'état) |
| 6063h | VAR | positionactual_value* | INT32 | 6.7 Asservissement de position |
| 6071h | VAR | target_torque | INT16 | 1.1 Contrôleur de couple |
| 6072h | VAR | max_torque_value | UINT16 | 1.1 Contrôleur de couple |
| 607Eh | VAR | polarity | UINT8 | 6.3 Facteurs de conversion |
| 6083h | VAR | profile acceleration | UINT32 | 8.3 Positionnement |
| 6084h | VAR | profile_deceleration | UINT32 | 8.3 Positionnement |
| 6085h | VAR | quick_stop_deceleration | UINT32 | 8.3 Positionnement |
| 6086h | VAR | motion_profile_type | INT16 | 8.3 Positionnement |
| 6094h | ARRAY | velocityEncoder_factor | UINT32 | 6.3 Facteurs de conversion |
Objet 6069_h : velocity_sensoractual_value
L'objet velocity_sensoractual_value permet de dire la valeur d'un évientuel capteur de vitesse exprimée en unités internes. Avec la famille des produits CMMP, aucun régulateur de vitesse sépare ne peut être raccordé. Pour déterminer la valeur réelle de vitesse, il faut donc systématiquement utiliser l'objet 606C_h .
| Index | 6069h |
| Nom | velocity_sensoractual_value |
| Object Code | VAR |
| Data Type | INT32 |
| Access | ro |
| PDO Mapping | yes |
| Units | TR / 4096 min |
| Value Range | -- |
| Default Value | -- |
Objet 606A_h : sensor_selection_code
Cet objet permet de sélectionner le capteur de vitesse. Pour le moment,aucun capteur de vitesse séparé n'est prévu.C'est pourquoi seul le codeur angulaire standard peut être sélectionné.
| Index | 606A |
| Nom | sensor_selection_code |
| Object Code | VAR |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 0 |
| Default Value | 0 |
Objet 606B_h : velocity_demand_value
Cet objet permet de dire la valeur de consigne de vitesse actuelle du régulateur de vitesse. C'est sur cet objet qu'agit la valeur de consigne du générateur de ramps ou du générateur de courbes de déplacement. En cas d'asservissement de position activé, sa vitesse de correction sera ajoutée.
| Index | 606Bh |
| Nom | velocity_demand_value |
| Object Code | VAR |
| Data Type | INT32 |
| Access | ro |
| PDO Mapping | yes |
| Units | speed units |
| Value Range | -- |
| Default Value | -- |
Objet 202E_h : velocity_demand_sync_value
Cet objet permet de consulter la vitesse de consigne du capteur de synchronisation. Cette dernière est définie par l'objet 2022h synchronizationEncoder_select (chapitre 6.11).
Cet objet est renseigné en unités définies par l'utilisateur.
| Index | 202Eh |
| Nom | velocity_demand_sync_value |
| Object Code | VAR |
| Data Type | INT32 |
| Access | ro |
| PDO Mapping | no |
| Units | velocity units |
| Value Range | -- |
| Default Value | -- |
Objet 606C_h : velocityactual_value
L'objet velocityactual_value permet de dire la valeur réelle de vitesse.
| Index | 606Ch |
| Nom | velocityactual_value |
| Object Code | VAR |
| Data Type | INT32 |
| Access | ro |
| PDO Mapping | yes |
| Units | speed units |
| Value Range | -- |
| Default Value | -- |
Objet 2074_h : velocityactual_value-filtered
L'objet velocityactual_value-filtered permit de consulter une valeur réelle de vitesse filtrée, censé toute fois ne servir que pour les besoin de l'affichage. Contrairement à velocityactual_value, velocityactual_value_filter n'est pas utilisé pour la régulation mais bien pour la protection anti-emballement du régulateur. La constante de temps de filtrer peut se régler par l'intérimédiaire de l'objet 2073h (velocity_displayment_filter_time). Voir chapitre 6.6.2, Obj 2073h.
| Index | 2074h |
| Nom | velocityactual_value filttered |
| Object Code | VAR |
| Data Type | INT32 |
| Access | ro |
| PDO Mapping | yes |
| Units | speed units |
| Value Range | -- |
| Default Value | -- |
8. Modes de fonctionnement

Fig. 8.23 : Détémination de velocityactual_value et de velocityactual_value-filtered
Objet 606D_h : velocity_window
L'objet velocity_window sert à régler le comparateur de fenêtre. Ce dernier compare la valeur réelle de vitesse avec la vitesse finale prédéfinie (Objet 60FF_h : target_velocity). Si, pendant une durée définie, la différence est inférieure à cette indiquée, le bit 10 target_reached de l'objet statusword est activé.
Voir aussi : objet 606E_h (velocity_window_time).
| Index | 606Dh |
| Nom | velocity_window |
| Object Code | VAR |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | yes |
| Units | speed units |
| Value Range | 0 ... 65 536 min-1 |
| Default Value | 4 min-1 |
Objet 60FE_h : velocity_window_time
L'objet velocity_window_time ainsi que l'objet 606D_h : velocity_window au réglage du comparateur de fenêtre. La vitesse doit se trouver à l'intérieur de la velocity_window et ce, pendant le début défini ici pour que le bit 10 target Reached de l'objet statusword soit activé.
| Index | 606Eh |
| Nom | velocity_window_time |
| Object Code | VAR |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | yes |
| Units | ms |
| Value Range | 0 ... 4999 |
| Default Value | 0 |
Objet 606F_h : velocity_threshold
L'objet velocity_threshold indique à partir de chaque valeur réelle de vitesse l'entrainment est considéré comme immobilisé. Si l'entrainment dépasse pendant un-delai défini la valeur de vitesse définie ici, le bit 12 (velocity = 0) est effacé dans le statusword. Le-delai est défini par l'objet velocity_threshold_time.
| Index | 606Fh |
| Nom | velocity_threshold |
| Object Code | VAR |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | yes |
| Units | speed units |
| Value Range | 0 ... 65 536 min-1 |
| Default Value | 10 |
Objet 6070_h : velocity_threshold_time
L'objet velocity_threshold_time indique combien de temps l'entrainment peut dépasser la valeur de vitesse prédéfinie avant que le bit 12 (velocity = 0) du statusword ne soit effacé.
| Index | 6070h |
| Nom | velocity_threshold_time |
| Object Code | VAR |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | yes |
| Units | ms |
| Value Range | 0 ... 4999 |
| Default Value | 0 |
Objet 6080_h : max_motor_speed
L'objet max_motor_speed indique la vitesse maximale autorisée pour le moteur en min ^-1 . L'objet sert à protéger le moteur et peut être prélevé sur la fiche technique du moteur. La vitesse de consigne est limitée à cette valeur.
| Index | 6080h |
| Nom | max_motor_speed |
| Object Code | VAR |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | yes |
| Units | \( \mathbf{min}^{-1} \) |
| Value Range | 0 ... 32 768 \( \mathbf{min}^{-1} \) |
| Default Value | 32768 \( \mathbf{min}^{-1} \) |
Objet 60FF_h : target_speed
L'objet target_velocity est la sélection de la consigne pour le générateur de rampses.
| Index | 60FFh |
| Nom | target_velocity |
| Object Code | VAR |
| Data Type | INT32 |
| Access | rw |
| PDO Mapping | yes |
| Units | speed units |
| Value Range | -- |
| Default Value | -- |
8.6 Rampes de vitesse
Si profile_velocity_mode est sélectionné pour modes_of_operation, la rampe de consigne est également systématiquement activée. Ainsi, il devient possible par l'intermédiaire des objets profile acceleration et profile_deceleration de limiter une modification discontinue de valeur de consigne à une modification de vitesse par période. Le régulateur permet non seulement d'indiquer des accélérations différentes pour les freins et les accelérations mais aussi de faire une distinction supplémentaire entre vitesse positive et négative. La figure suivante montre ce comportement de manière exemplaire :

Fig. 8.24: Rampes de vitesse
Afin de pouvoir paramétre séparément ces 4 escalations, nous disposons du groupe d'objets velocity_ramps. Il faut savoir que les objets profile acceleration et profile_deceleration modifiient les mêmes escalations que les velocity_ramps. Si profile_acceleration est renseigné, velocity acceleration_pos et velocity acceleration_neg sont modifiés ensemble, si profile_deceleration est renseigné, velocity_deceleration_pos et velocity_deceleration_neg sont modifiés. L'objet velocity_ramps_enable permet de déterminer si les valeurs de consigne sont commandées ou non par le générateur de rampses.
| Index | \( {2090}_{\mathrm{h}} \) |
| Nom | velocity_ramps |
| Object Code | RECORD |
| No. of Elements | 5 |
| Sub-Index | 01h |
| Description | velocity_ramps_enable |
| Data Type | UINT8 |
| Access | rw |
| PDO Mapping | no |
| Units | .. |
| Value Range | 0 : valeur de cons.PAS via le générateur de rampes 1 : valeur de consigne via le générateur de rampes |
| Default Value | 1 |
| Sub-Index | 02h |
| Description | velocity acceleraion_pos |
| Data Type | INT32 |
| Access | rw |
| PDO Mapping | no |
| Units | acceleration units |
| Value Range | .. |
| Default Value | 14 100 min-1/s |
| Sub-Index | \( {\mathbf{{03}}}_{\mathbf{h}} \) |
| Description | velocity_deceleration_pos |
| Data Type | INT32 |
| Access | rw |
| PDO Mapping | no |
| Units | acceleration units |
| Value Range | .. |
| Default Value | 14 100 min \( {}^{1} \) /s |
8. Modes de fonctionnement
| Sub-Index | \( 04_h \) |
| Description | velocity acceleration_neg |
| Data Type | INT32 |
| Access | rw |
| PDO Mapping | no |
| Units | acceleration units |
| Value Range | .. |
| Default Value | 14 100 min \( ^1/s \) |
| Sub-Index | \( {\mathbf{{05}}}_{\mathbf{h}} \) |
| Description | velocity_deceleration_neg |
| Data Type | INT32 |
| Access | rw |
| PDO Mapping | no |
| Units | acceleration units |
| Value Range | - |
| Default Value | \( {14}{100}{\mathrm{\;{min}}}^{-1}/\mathrm{s} \) |
8.7 Mode Contrôle du couple de rotation (Profile Torque Mode)
8.7.1 Aperçu
Ce chapitre déscrit le fonctionnement par contrôle du couple de rotation. Ce mode de fonctionnement permet de préselectionner pour le contrôleur de moteur une valeur de consigne externe de couple de rotation target_torque susceptible d'être lissée par le générateur de rampes intégré. Il est ainsi possible demettre en œuvre ce contrôleur de moteur pour les commandes continues sur lesquelles l'asservissement de position ainsi que le régulateur de vitesse sont déplacées sur un ordinateur externe.


Fig. 8.25 : Structure du fonctionnement par contrôle du couple de rotation
Pour le générateur de rampes, les paramètres Pente de rampe torque_slope et Forme de rampe torque_profile_type doivent être préselectionnés.
Si, dans le controlword le bit 8 halt est activé, le générateur de rampes fait chuter le couple de rotation jusqu'à zéro. De manière correspondante, il le fait repasser au couple de consigne target_torque, quand le bit 8 est à nouveau effacé. Dans les deux cas, le générateur de rampses tient compte de la pente de la rampe torque_slope et la forme de la pente torque_profile_type.
Toutes les définitions figurant dans leprésent document se reférènt à des moteurs rotatifs. En cas d'utilisation de moteurs linéaires, à la place, tous les objets de “couple de rotation” doivent se reférer à une “force”. Pour des raisons de simplicité, les objets ne sont pas représentés ici en double et leurs noms ne devraient pas été changés.
Pour fonctionner, les modes Positionnement (Profile Position Mode) et Régulateur de vitesse (Profile Velocity Mode) nécessitent le contrôleur de couple. C'est pourquoi il est toujours nécessaire de le paramétrer.
8.7.2 Description des objets
Objets traités dans ce chapitre
| Index | Objet | Nom | Type | Attr. |
| 6071h | VAR | target_torque | INT16 | rw |
| 6072h | VAR | max_torque | UINT16 | rw |
| 6074h | VAR | torque_demand_value | INT16 | ro |
| 6076h | VAR | motor-rated_torque | UINT32 | rw |
| 6077h | VAR | torqueactual_value | INT16 | ro |
| 6078h | VAR | currentactual_value | INT16 | ro |
| 6079h | VAR | DC_link_circuit_voltage | UINT32 | ro |
| 6087h | VAR | torque_slope | UINT32 | rw |
| 6088h | VAR | torque_profile_type | INT16 | rw |
| 60F7h | RECORD | power stage_parameters | rw | |
| 60F6h | RECORD | torque_control_parameters | rw |
Objets concernés traités dans d'autres chapitres
| Index | Objet | Nom | Type | Chapitre |
| 6040h | VAR | controlword | INT16 | 7 Commande d'appareils (Device Control) |
| 60F9h | RECORD | motor_parameters | 6.5 Régulateur de courant et adaptation du moteur | |
| 6075h | VAR | motor_rate_current | UINT32 | 6.5 Régulateur de courant et adaptation du moteur |
| 6073h | VAR | max_current | UINT16 | 6.5 Régulateur de courant et adaptation du moteur |
Objet 6071_h : target_torque
En mode de fonctionnement par contrôle du couple de rotation (Profile Torque Mode), ce paramètre sert de valeur d'entrée au contrôleur de couple. Il est exprime en millièmes du couple nominal (Objet 6076h).
| Index | 6071h |
| Nom | target_torque |
| Object Code | VAR |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | yes |
| Units | motor-rated_torque / 1000 |
| Value Range | -32768 ... 32768 |
| Default Value | 0 |
Objet 6072_h : max_torque
Cette valeur représentée le couple maximal admissible du moteur. Elle est exprimée en millièmes du couple nominal (Objet 6076h). Si, par exemple, une double surcharge du moteur est brièvement admissible, la valeur à indiquer ici est de 2000.

L'objet 6072h: max_torque correspond à l'objet 6073h: max_current et ne doit être renseigné que si l'objet 6075h: motor-rated_current aAAParavant eté renseigné à l'aide d'une valeur valide.
| Index | 6072h |
| Nom | max_torque |
| Object Code | VAR |
| Data Type | UINT16 |
| Access | rw |
| PDO Mapping | yes |
| Units | motor-rated_torque / 1000 |
| Value Range | 1000 ... 65536 |
| Default Value | 2023 |
Objet 6074_h : torque_demand_value
Cet objet permet de dire le couple de consigne actuel en millièmes du couple nominal (6076_h) . Tout en tenant compte des limitations internes du contrôleur (valeurs limites de courant et surveillance 1^2t ).
| Index | 6074h |
| Nom | torque_demand_value |
| Object Code | VAR |
| Data Type | INT16 |
| Access | ro |
| PDO Mapping | yes |
| Units | motor-rated_torque / 1000 |
| Value Range | -- |
| Default Value | -- |
Objet 6076_h : motor-rated_torque
Cet objet indique le couple nominal du moteur. Il figure sur la plaque signalétique du moteur. Il doit être indiqué dans l'unité 0,001 Nm.
| Index | 6076h |
| Nom | motor-rated_torque |
| Object Code | VAR |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | yes |
| Units | 0,001 Nm |
| Value Range | -- |
| Default Value | 296 |
Objet 6077_h : torqueactual_value
Cet objet permet de dire le couple de rotation réel du moteur exprime en millièmes du couple nominal (objet 6076h).
| Index | 6077h |
| Nom | torqueactual_value |
| Object Code | VAR |
| Data Type | INT16 |
| Access | ro |
| PDO Mapping | yes |
| Units | motor-rated_torque / 1000 |
| Value Range | -- |
| Default Value | -- |
Objet 6078_h : currentactual_value
Cet objet permet de dire la valeur réelle du courant du moteur exprimée en millièmes du courant nominal (Objet 6075h).
| Index | 6078h |
| Nom | currentactual_value |
| Object Code | VAR |
| Data Type | INT16 |
| Access | ro |
| PDO Mapping | yes |
| Units | motor Rated Current / 1000 |
| Value Range | -- |
| Default Value | -- |
Objet 6079_h : dc_link_circuit_voltage
Cet objet permet de consulter la tension du circuit intermédiaire du régulateur. La tension est indiquée dans l'unité millivolt.
| Index | 6079h |
| Nom | dc_link_circuit_voltage |
| Object Code | VAR |
| Data Type | UINT32 |
| Access | ro |
| PDO Mapping | yes |
| Units | mV |
| Value Range | -- |
| Default Value | -- |
Objet 6087_h : torque_slope
Ce paramètre déscrit la vitesse de modification de la rampe de consigne. Elle doit être indiquée en millièmes du couple nominale par seconde. Par exemple, la valeur de consigne de couple target_torque passé de 0 Nm à la valeur motor-rated_torque. Quand la valeur de sortie de la rampe de couple intercalée est censée atteindre cette valeur en une seconde, il faut inscrite la valeur 1000 dans cet objet.
| Index | 6087h |
| Nom | torque_slope |
| Object Code | VAR |
| Data Type | UINT32 |
| Access | rw |
| PDO Mapping | yes |
| Units | motor_rate_torque / 1000 s |
| Value Range | -- |
| Default Value | E310F94h |
8. Modes de fonctionnement
Objet 6088_h : torque_profile_type
L'objet torque_profile_type permet de prédéfinir avecquelle forme de courbe le saut de la valeur de consigne doit être effectué. À l'heure actuelle, seule la rampe linéaire est implémentée dans ce régulateur si bien que cet objet peut uniquement être écrit avec la valeur 0.
| Index | 6088h |
| Nom | torque_profile_type |
| Object Code | VAR |
| Data Type | INT16 |
| Access | rw |
| PDO Mapping | yes |
| Units | -- |
| Value Range | 0 |
| Default Value | 0 |
| Valeur | Signification |
| 0 | Ramppe linéaire |
9. Index
A
A en afficheur à 7 segments 134
Accélération
arrêt rapide (positionnement) 177
de freinage (positionnement) 176
en la course de reference 166
Accélération d'arrêt rapide 177
acceleration_factor 67
Accoster Position position 178
actual_dcl_link_circuit_voltage 74
actual_size 185
Afficheur 134
Amplification de l'asservissement de position 93
Amplification de régulateur de courant 86
analog_input_offset 115
analog_input_offset_ch_0 115
analog_input_offset_ch_1 115
analog_input_offset_ch_2 115
analog_input_voltage 114
analog_input_voltage_ch_0 114
analog_input_voltage_ch_1 114
analog_input_voltage_ch_2 114
Angle de décalage du résolventur 83
Asservissement de position 89
parametes 93
amplification 93
constante de temps 93
zone morte 94
sortiedu 96
B
Capeur de fin de course .... 120, 167, 169
polarité 120
rampe d'arrêt d'urgence 122
Capeur de reference 120, 122
Capeur de reference polarité 121
Charger parametes par défaut 56
Circuit intermédiaire
surveillance du 76
cob_id sync 40
cob_id_used_by_pdo
Code fabricant 128
Code produit 129
Coefficients d'échelle
Facteur de position 62
choix du signe arithmetique 69
Commanded'appareils 138
Commandederegulateur 138
Consigne de courant 204
Consignes de sécurité 11
Constante de temps de filtré
vitesse synchrone 113
Constante de temps de
l'asservissement de position 93
Constante de temps de régulateur
de courant 86
control_effort 96
Contrôle de couple 201
couple de consigne 203
couplecible 203
vitesse admissible 203
consigne de courant 204
couple nominal 204
valeur réelle de couple 205
profil de valeur de consigne 207
controlword 144
Affectation de bit 140, 144
commandes 145
description d'objet 144
Controlword pour données
d'interpolation 182
Couple admissible 203
Couplecible (controlede couple).....203
Couple de consigne
(contrôle de couple) 203
Couple nominal de moteur
Courant de pointe
Courant de pointe moteur 80
Courant de pointe du moteur 80
Courant maximal....
Courant nominal moteur 79
Courant nominal de l'appareil 76
9. Index
Courant nominal du moteur 79
Course de reference 162
Course de reference commande de la 172
Course de reference méthodes 167
Courses de reference
acceleration 166
décalagedu point zéro 163
methode 164
vitesse d'avance lente 165
vitesse de recherche 165
vitesses 165
currentactual_value 205
Décalage de codeur angulaire 83
Décalage du point zéro 163
Déceleration de positionnement 176
Déclencher erreur 12t 82
Délai de dépassement de l'erreur de poursuite 96
Délai du seuil d'immobilisation en régulation de vitesse 197
Délai fenêtre cible 97
Délai fenêtre cible en régulation de vitesse 196
Dépassement de la valeur seul erreur de poursuite. 98
Déplacement de reference Temps dépasse 166
Désactiver la surveillance des sous-tensions 76
Device Control 138
dig_out_state_mapp_dout_1 118
dig_out_state_map_dout_2 118
dig_out_state_mapp_dout_3 119
digitalInputs 116
digital_outputs 117
digital_outputs_data 117
digital_outputs_mask 117
digital_outputs_state_mapping 118
Données d'interpolation 181
drive_data 71,82,97,120,127
Durée de temporisation de freinage .. 127
Durée I²t 81
E
Emulation de codeur incremental Offset 109
Résolution 109, 110
enable_dcl_link_undervoltage_error .... 76
enable_enhanced_modulation 72
enable_logic 71
encoder_emulation_data 109
encoder_emulation_offset 109
encoder_emulation_resolution .. 109, 110
encoder_offset_angle 83
encoder_x10 counter 108
encoder_x10_data_field 107
encoder_x10_divisor 107
encoder_x10 numerator 107
encoder_x10_resolution 107
encoder_x2a_data_field 104
encoder_x2a_divisor 105
encoder_x2a numerator 104
encoder_x2a_resolution 104
encoder_x2b counter 106
encoder_x2b_data_field 105
encoder_x2b_divisor 106
encoder_x2b numerator 106
encoder_x2b_resolution 105
end Velocity 175
Enregistrer jeu de paramètres 57
Entree SAMPLE comme capteur de reference 122
Entree START comme capteur de reference 122
Entrées analogiques 113
Entres Entres tension d'entree cable 0 114
tension d'entrée cable 1 114
tension d'entrée cable 2 114
tension de décalage cable 0 115
9. Index
tension de décalage cable 1 115
tension de décalage cable 2 115
tensions de décalage 115
tensions d'entrees 114
Entrées, analogiques 113
Erreur
'A' en afficheur à 7 segments 134
Erreur du régulateur 42
messages d'erreur SDO 28
Erreur depoursuite 89
definon 89
fenetre d'erreur 95
délambdaedePASSMENT 96
dépassement de valeur limite 98
error_management 136
État
Etat de paramétrage 134
F
Facteurs de conversion 59
facteur de position 62
choix du signe arithmetique 69
Factor Group 59
acceleration_factor 67
polarity 69
position_factor 61
velocityEncoder_factor 64
fault_reaction_option_code 158
Fenetre cible
délai 97
fenetre de position 97
en régulation de vitesse 195
Fenetre de position cible 97
Fenetre d'erreur de poursuite 95
firmwarecustom_version 131
firmware_main_version 131
firstmapped_object 35
Following_error 89
following_error_time_out 96
following_error_window 95
Fonctionnement limité en vitesse .... 102
Durée de temporisation 127
Frequence PWM 72
G
Générateur de courbes
de déplacement 173
Gestion des erreurs 136
H
home_offset 163
homing mode
home_offset 163
homing_acceleration 166
homing_method 164
homing_speeds 165
Homing Mode 162
homing_acceleration 166
homing_method 164
homing_speeds 165
homing_SWITCH_polarity 121
homing_SWITCH_selector 122
homing_timeout 166
1
Identificateur pour PDO 34
Identification de l'appareil 128
identity_object 128
iit_error_enable 82
iit_ratio_motor. 81
iit_time_motor 81
inhibit_time 34
Interpolation de valeur de position .... 182
interpolation_data_configuration .... 185
interpolation_data_record 181
interpolation_submode_select 181
interpolationSync_definon 184
interpolation_time_period 183
ip_data_controlword 182
ip_data_position 182
Charger et enregistrer 54
Charger valeurs par défaut 56
Enregisterr jeu de paramètres 56
L
Lancement du positionnement 178
limit_current 101
limit_current_input_channel 101
limit_speed_input_channel 102
limit_SWITCH_deceleration 122
limit_SWITCH_polarity 120
Limitation de couple 101
source 101
valeur de consigne 101
facteur de multiplication 102
Limitation de courant. 101
Limitation de vitesse 102
source 102
facteur de multiplication 103
Logique de validation 71
Logique de validation du régulateur .... 71
M
max_buffer_size 185
max_current 80
max_dcl_link_circuit_voltage 75
max_motor_speed 197
max_position_range_limit 99
Mode de fonctionnement 159, 161
réglagedela. 159
modification de la 159
lecture de la 161
course de reférence 162
regulation de vitesse 189
contrôle de couple 201
Mode de transmission 34
modes_of_operation 159
modes_of_operation_display.....160,161
Modulation sinusoide etendue 72
Mot d'etat description d'objet 148
motion_profile_type 177
motor_data 81,83
Nombre de paires de pôles 80
Nombre de pôles 80
Nombre d'objets adressés 35
nominal_current 76
nominal_dcl_link_circuit_voltage 74
Numéro de version la firmware 131
Numéro de version la variante spéc. au client 131
0
Objects
Objet 1001_h 42
Objet 1003. 45
Objet 1003_h - 01_h 46
Objet 1003_h - 02_h 46
Objet 1003_h - 03_h 46
Objet 1003_h - 04_h 46
Objet 1005_h 40
Objet 1010_n 56
Objet 1010_h - 01_h 57
Objet 1011h 56
Objet 1011_h - 01_h 56
Objet 1018. 128
Objet 1018h-01 h. 128
Objet 1018h-02 h. 129
Objet 1018h-03h. 129
Objet 1018h-04h. 129
Objet 1401_h 39
Objet 1402_h 39
Objet 1403_h 39
Objet 1601h 39
Objet 1602h 39
Objet 1603_h 39
Objet 1800_h 34,36
Objet 1800_h - 01_h 34
Objet 1800_h - 02_h 34
Objet 1800_h - 03_h 34
Objet 1801h 37
Objet 1802h 37
Objet 1803.. 37
Objet 1A00h 35,36
Objet 1A00_h - 00_h 35
Objet 1A00_h - 01_h 35
Objet 1A00h-02h 35
Objet 1A00h-03h 36
Objet 1A00h-04h 36
Objet 1A01h 37
Objet 1A02h 37
Objet 1A03h 37
Objet 20143 38
Objet 2015. 38
Objet 2016_h 38
Objet 2017h 38
Objet 202Eh 193
Objet 2400h 114
Objet 2400h_01 h. 114
Objet 2400h_02 h. 114
Objet 2400_h - 03_h 114
Objet 2401h 115
Objet 2401_h - 01_h 115
Objet 2401_h - 02_h 115
Objet 2401_h - 03_h 115
Objet 2415_h 101
Objet 2415_h - 01_h 101
Objet 2415_h - 02_h 101
Objet 2416_h 102
Objet 2416_h - 01_h 102
Objet 6040h 144
Objet 6041_h 148
Objet 604D_h 80
Objet 605Ah 157
Objet 605B_h 156
Objet 605Ch 157
Objet 605Eh 158
Objet 6060h 159
Objet 6061_h 160,161
Objet 6062. 94
Objet 6064_h 95
Objet 6065_h 95
Objet 6066. 96
Objet 6067h. 97
Objet 6068. 97
Objet 6069_h 192
Objet 606A_n 192
Objet 606Bn 193
Objet 606C 194
Objet 606D_h 195
Objet 606En 196
Objet 606F_h 196
Objet 6070h 197
Objet 6071h 203
Objet 6072_h 203
Objet 6073_h 80
Objet 6074_h 204
Objet 6075_h 79
Objet 6076_n 204
Objet 6077. 205
Objet 6078. 205
Objet 6079_h 206
Objet 607An 174
Objet 607Cn 163
Objet 607E. 69
Objet 6080. 197
Objet 6081_h 175
Objet 6082_h 175
Objet 6083_h 176
Objet 6084. 176
Objet 6085_h 177
Objet 6086. 177
Objet 6087h 206
Objet 6088. 207
Objet 6093_h 61
Objet 6093_h - 01_h 61
Objet 6093_h - 02_h 62
Objet 6094_n 64
Objet 6094_h - 01_h 64
Objet 6094_h - 02_h 64
Objet 6097. 67
Objet 6097_h - 01_h 67
Objet 6097_h - 02_h 67
Objet 6098. 164
Objet 6099. 165
Objet 6099_h - 01_h 165
Objet 6099_h - 02_h 165
Objet 609Ah 166
Objet 60COh 181
Objet 60C1h. 181
Objet 60C1_h - 01_h 182
Objet 60C1h_02h 182
Objet 60C2_h 183
Objet 60C2_h - 01_h 183
Objet 60C2_h - 02_h 183
Objet 60C3h. 184
Objet 60C3_h - 01_h 184
Objet 60C3_h - 02_h 184
Objet 60C4_h 185
Objet 60C4_h - 01_h 185
Objet 60C4_h - 02_h 185
Objet 60C4h_03h 185
Objet 60C4_h - 04_h 186
Objet 60C4_h - 05_h 186
Objet 60C4_h - 06_h 186
60F6 86
60F601 86
Objet 60F6_h - 02_h 86
Objet 60F9. 87
Objet 60F90288
Objet 60F90488
Objet 60FA_h 96
Objet 60FBh 93
Objet 60FBh - 01_h 93
Objet 60FBh02h 93
Objet 60FBh - 04h 93
Objet 60FBh - 05h 94
Objet 60FDh 116
Objet 60FEh 117
Objet 60FE_h - 01_h 117
Objet 60FE_h - 02_h 117
Objet 60FFh 198
Objet 6410h 81,83
Objet 6410_h - 03_h 81
Objet 6410_h - 04_h 81
Objet 6410_h - 10_h 83
Objet 6410_h - 11_h 83
Objet 6410_h - 11_h 83
Objet 6510_h 71,82,97,120,127
Objet 6510_h - 10_h 71
Objet 6510_h - 11_h 120
Objet 6510_h - 13_h 122
Objet 6510_h - 14_h 121
Objet 6510_h - 15_h 122
Objet 6510_h - 18_h 127
Objet 6510_h - 30_h 72
Objet 6510_h - 31_h 73
Objet 6510_h - 32_h 73
Objet 6510_h - 33_h 74
Objet 6510_h - 34_h 74
Objet 6510_h - 35_h 75
Objet 6510_h - 36_h 75
Objet 6510_h - 37_h 76
Objet 6510_h - 38_h 82
Objet 6510_h - 3A_h 72
Objet 6510_h - 40_h 76
Objet 6510_h - 41_h 77
Objet 6510_h - A9_h 131
Objet 6510_h - AA_h 131
Objet 6510_h - BOh 132
Objet 6510h - B1_h 133
610B2 133
Objet 6510_h - B3_h 133
Objet 6510_h - COh 134
Objet 6410h - 14_h 84
Objet 202Dh 94
Objet 6510h - 22_h 98
Objet 607B. 98
Objet 607Bh - 01h 99
Objet 607Bn - 02n 99
Objet 6510_h - 20_h 99
Objet 2024. 104
Objet 202401. 104
Objet 2024_h - 02_h 104
Objet 2024_h - 03_h 105
Objet 2026. 105
Objet 2026_h - 01_h 105
Objet 2026_h - 02_h 106
Objet 2026_h - 03_h 106
Objet 2025. 107
Objet 2025_h - 01_h 107
Objet 2025_h - 02_h 107
Objet 2025_h - 03_h 107
Objet 2025_h - 04_h 108
Objet 201A. 109
Objet 201Ah-01h. 109
Objet 201A_h - 02_h 109
Objet 2028. 110
Objet 2021. 111
9. Index
Objet 2022. 111
Objet 202Fh 112
Objet 202Fh - 07_h 112
Objet 2023h. 113
Objet 2420_h 118
Objet 2420_h - 01_h 118
Objet 2420_h - 02_h 118
Objet 2420_h - 03_h 119
Objet 204A. 124
Objet 204A_h - 01_h 124
Objet 204A_h - 02_h 124
Obj 2024A03. 125
Obj 2026A04. 125
Objet 204A_h - 05_h 126
Objet 204A_h - 06_h 126
Objet 2100_h 136
Objet 2045_h 166
Objet 202En 193
Objet 2090h 199
Objet 2090_h - 01_h 199
Objet 2090_h - 02_h 199
Objet 2090_h - 03_h 199
Objet 2090_h - 04_h 200
Objet 2090_h - 05_h 200
P
Parametre d'adressage pour PDO .... 35
Parametre de transfert pour PDO 34
Parametres d'asservissement de position 93
Parametres d'etage de sortie 70
logique de validation 71
fréquence PWM 72
température maximale 73
tension nominale de l'appareil 74
iminale du circuit intermédiaire .... 74
max.minimale du circuit intermediaire 75
min.minimale du circuit intermediaire 76
courant nominal de l'appareil 76
courant maximal 77
Paramètres du moteur angle de décalage du résoluveur 83
courant nominal 79
durée I²t 81
Nombre de (paires de) pôles 80
PDO 30
- objet adressé 35
- objet adressé 35
- objet adressé 36
- objet adressé 36
TPD01
COB-ID used by PDO 36
Identifier 36
transmission type 36
Type de transmission 36
inhibit time 36
Durée de verrouillage 36
number of mapped objects 36
Nombre d'objets adressés 36
first mapped object 36
1. objet adressé 36
second mapped object 36
2. objet adressé 36
third mapped object 36
3. objet adressé 36
fourth mapped object 36
4. objet adressé 36
masque de transmission 38
TPDO2
COB-ID used by PDO 37
Identifier 37
transmission type 37
Type de transmission 37
inhibit time 37
Durée de verrouillage 37
number of mapped objects 37
Nombre d'objets adressés 37
first mapped object 37
1. objet adressé 37
second mapped object 37
2. objet adressé 37
third mapped object 37
3. objet adressé 37
fourth mapped object 37
4. objet adressé 37
masque de transmission 38
TPD03
Durée de verrouillage 37
number of mapped objects 37
Nombre d'objets adressés 37
first mapped object 37
1.objet adressé 37
second mapped object 37
2. objet adressé 37
third mapped object 37
3.objet adressé 37
fourth mapped object 37
4. objet adressé 37
masque de transmission 38
TPDO4
COB-ID used by PDO 37
Identifier 37
transmission type 37
Type de transmission 37
inhibit time 37
Durée de verrouillage 37
number of mapped objects 37
Nombre d'objets adressés 37
first mapped object 37
1.objet adressé 37
second mapped object 37
2.objet adressé 37
third mapped object 37
3. objet adressé 37
fourth mapped object 37
4. objet adressé 37
masque de transmission 38
RPDO2
COB-ID used by PDO 39
Identifier 39
transmission type 395
Type de transmission 39
number of mapped objects 39
Nombre d'objets adressés 39
first mapped object 39
1.objet adressé 39
second mapped object 39
2. objet adressé 39
third mapped object 39
3. objet adressé 39
fourth mapped object 39
4. objet adressé 39
RPDO3
acceleration d'arrêt rapide 177
decélération 176
positioncible 174
Vitesse pendant le 175
Handshake 178
Profil de positionnement linéaire 177
sans a-coups 177
Sinus 177
Profil Position Mode profile_deceleration 176
end Velocity 175
motion_profile_type 177
profile acceleraion 176
profile Velocity 175
quick_stop_deceleration 177
target_position 174
Profile Torque Mode 201
currentactual_value 205
dc_link_circuit_voltage. 206
max_torque 203
motor-rated_torque 204
target_torque 203
torqueactual_value 205
torque_demand_value 204
torque_profile_type 207
torque_slope 206
Profile Velocity Mode 189
max_motor_speed 197
sensor_selection_code 192
Réaction en Commande
'disable operation' 157
'quick stop'. 157
‘shutdown’ 156
Ready to Switch On 141
Receive_PDO_2 39
Receive_PDO_3 39
Receive_PDO_4 39
Registred'erreurs 42
Réglagedes paramétres 54
Réglage la mode de fonctionnem. .... 159
Regulateur de courant amplification. 86
constante de temps 86
paramètres 86
Régulateur de vitesse 87
paramétres 87
constante de temps 88
constante de temps de filtré 88
Régulation de vitesse 189
fenetre cible 195
délaifenétrecible 196
seuil d'immobilisation 196
délaiduseuild'immobilisation......197
vitesse max. du moteur 197
vitesse de consigne 198
vitesse cible 198
resolver_offset_angle 83
restore_all_default_parameters 56
restore_parameters 56
revision_number 129
R-PDO 2 39
R-PDO 3 39
R-PDO 4 39
s
sample_control 125
sample_data 124
sample_mode 124
sample_position_falling_edge 126
sample_position_rising_edge 126
sample_status 124
sample_status_mask 125
save_all_parameters 57
SDO 26
Messages d'erreurs 28
Sélection de la position de la valeur réelle 111
Sélection de la source de synchronisation 111
sensor_selection_code 192
serial_number 129
Seuil d'immobilisation en regulation de vitesse 196
shutdown_option_code 156
size_of_data_record 186
Sortie de l'asservissement de position 96
Sorties analogiques 116
Sorties numériques
adressage de DOUT1 118
adressage de DOUT2 118
adressage de DOUT3 119
Sorties numériques 117
états 117
masque 117
Mapping 118
Surveillance du circuit intermédiaire 75, 76
Switch On Disabled. 141
SYNC 40
Taux d'utilisation I²t 81
Température max. du moteur 197
Température max. de l'étage de sortie 73
Température min. du circuit intermédiaire 75
Temps de cycle asservissement de position 133
commandedepositionnement.....133
regulateur dcourant 132
regulateur de vitesse 133
Temps de cycle PDO 34
Tension du circuit intermédiaire actuelle 74
maximale 75
minimale 76
Tension minimale du circuit intermédiaire 74, 75
Tension nominale de l'appareil 74
Type d'interpolation 181
U
URGENCE 42
V
Valeur de consignee admissible 203
courant 204
vitesse de rotation synchrone (unités de vitesse) 193
Valeur de position de valeur de position 182
Valeur limite erreur de poursuite 98
Valeur réelle
couple (torqueactual_value) 205
position en position.units (positionactual_value) 95
Valeur réelle de couple 205
Valeur réelle de position (position de vitesse) 95
Valeur réelle de vitesse 194
Validation desétages de sortie 70
Validation du régulateur 70
velocityacceleration_neg 200
velocityacceleration_pos 199
velocityactual_value 194
Vitesse en la course de reférence 165
pendant le positionnement 175
Vitesse cible pour
régulation de vitesse 198....
Vitesse de correction 93
Vitesse de positionnement 175
Vitesse de rotation synchrone (unités de vitesse) 193
Vitesse limite par couple 101
X
X10 Compteur 108
Entrainement 107
Résolution 107
Sortie 107
X2A Entrainement 104
Résolution 104
Sortie 105
X2B Compteur 106
Entrainement 106
Résolution 105
Sortie 106