Maître
Une instance du type « IoDrvEtherCAT » est générée pour chaque maître EtherCAT inséré dans l'arborescence des appareils.
Name | Type de données | Description |
---|---|---|
xRestart | BOOL | Front montant : le maître est redémarré et tous les paramètres de configuration sont rechargés. |
xStopBus | BOOL | TRUE : la communication est interrompue. Aucun autre télégramme EtherCAT n'est envoyé. La plupart des appareils doivent ensuite être redémarrés car ils sont passés à l'état d'erreur. |
Name | Type de données | Description |
---|---|---|
xConfigFinished | BOOL | TRUE : le transfert de tous les paramètres de configuration s'est terminé sans erreur. La communication sur le bus est en cours. |
xDistributedClockInSync | BOOL | Si des horloges distribuées sont utilisées, l'automate est synchronisé avec le premier esclave EtherCAT pour lequel l'option DC est activée. |
xError | BOOL | La sortie devient TRUE si |
xSyncInWindow | BOOL | La sortie devient TRUE si l'option Sync Window Monitoring est activée et que tous les esclaves sont synchronisés dans la Sync Window. |
Exemples
- Lancer un redémarrage du maître via la variable xRestart :
EtherCAT_Master.xRestart := xRestart;
- Arrêter la communication sur le bus à l'aide de la variable xStop :
EtherCAT_Master.xStopBus := xStop;
- Appel du maître pour obtenir des informations sur le succès du téléchargement des paramètres de configuration :
EtherCAT_Master(); xFinish := EtherCAT_Master.xConfigFinished;
Paramètres | Description |
---|---|
AutoSetOperational | TRUE : Le maître essaie de redémarrer les esclaves immédiatement après une interruption de la communication. |
ConfigRead | TRUE : la lecture de la configuration est terminée et l'utilisateur peut modifier les paramètres, par exemple pour ajouter des SDO qu'il a lui-même définis. |
DCInSyncWindow | Fenêtre de temps pour XDistributedClockInSync. La gigue doit se trouver dans la fenêtre pour que le signal de sortie XDistributedClockInSync reste définitivement TRUE. |
DCClockReferenceTime | Renvoie l'heure actuelle du premier esclave avec « Distributed Clock ». Ce temps est le temps de référence pour tous les autres esclaves et l'automate lui-même. |
DCIntegralDivider | Facteur intégral pour la boucle de contrôle d'horloge distribuée ; |
DCPropFactor | Facteur proportionnel pour la boucle de contrôle d'horloge distribuée ; |
DCSyncToMaster | Synchronisation d'horloge distribuée sur le maître ; s'il est défini sur TRUE, alors tous les esclaves sont synchronisés avec le maître au lieu d'une synchronisation du premier esclave avec l'API. |
DCSyncToMasterWithSysTime | Synchronisation d'horloge distribuée sur le maître |
EnableTaskOutputMessage | Les messages EtherCAT sont normalement envoyés par la tâche de cycle de bus et les sorties esclaves sont également utilisées par chaque tâche. Dans la tâche de cycle de bus, toutes les sorties sont écrites et toutes les entrées sont lues. Dans d'autres tâches, les sorties sont transférées une fois de plus afin qu'elles puissent être immédiatement écrites dans les esclaves correspondants. Il s'agit d'une tentative de maintenir le temps mort jusqu'à l'écriture aussi court que possible. Avec les horloges distribuées, cela peut causer des problèmes dans certains appareils, par exemple les servo-contrôleurs ne sont pas synchronisés avec l' « interruption de synchronisation », mais utilisent le temps d'écriture pour la synchronisation interne. Dans ce cas, plusieurs accès en écriture peuvent se produire au cours d'un cycle. Si « EnableTaskOutputMessage » est défini sur FALSE, seule la tâche de cycle de bus est utilisée. D'autres tâches ne généreront aucun autre message. |
FirstSlave | Pointeur vers le premier esclave sous le maître |
FrameAtTaskStart | TRUE : La trame pour les esclaves est transmise au début de la tâche (avant la tâche CEI), ce qui assure une gigue minimale. Cette commande est utilisée pour obtenir des mouvements fluides des servocommandes. Si ce flag est mis à TRUE, la trame du tampon de sortie est écrite au cycle suivant (voir schéma ci-dessous). |
LastInstance | Pointeur vers la liste principale liée -> maître précédent |
LastMessage | Cette propriété renvoie une chaîne avec le dernier message de la pile EtherCAT. Si le démarrage a réussi, « All slaves done » est renvoyé. La même chaîne est utilisée pour le message de diagnostic, qui est affiché dans la fenêtre de l'éditeur d'appareil maître EtherCAT en mode en ligne. |
NextInstance | Pointeur vers la liste principale liée -> prochain maître |
NumberActiveSlaves | Cette propriété renvoie le nombre d'esclaves réellement connectés. StartConfigWithLessDevice := TRUE: le nombre d'appareils réels peut être déterminé. |
OpenTimeout | Délai d'expiration pour l'ouverture de la carte réseau. |
StartConfigWithLessDevice | Est utilisé pour influencer le comportement de démarrage de la pile. La pile EtherCAT s'arrête normalement si, par exemple, cinq servocontrôleurs sont configurés dans le projet, mais que trois seulement sont connectés. Cependant, si StartConfigWithLessDevice := TRUE dans le premier cycle, la pile essaiera quand même de démarrer. Il est ainsi possible, par exemple, de réaliser une configuration universelle de 10 servo-contrôleurs, mais de conserver le nombre de variable réellement connectée. Il est à noter que l'ID fabricant et l'ID produit de chaque esclave sont toujours vérifiés. Si une incompatibilité est trouvée, la pile est arrêtée. |