EtherCAT MainDevice EC-Master pour ROS
trait de séparation
Temps de lecture : 5 minutes
Le système d'exploitation robotique (ROS) est un framework open source et un ensemble de bibliothèques logicielles et d'outils conçus spécifiquement pour simplifier le développement d'applications robotiques. Malgré son nom, ROS n'est pas un véritable système d'exploitation comme Windows ou Linux, mais est souvent considéré comme un métasystème d'exploitation ou une couche intermédiaire. Il s'exécute généralement sur un système d'exploitation hôte (principalement Linux ; macOS et Windows sont également pris en charge).
ROS repose sur une architecture modulaire utilisant des nœuds, qui représentent des programmes ou composants exécutables individuels (par exemple, des commandes de capteurs ou de moteurs, des algorithmes). Ces nœuds communiquent entre eux via un système de messagerie standardisé de type publication/abonnement (appelé sujets), ce qui permet une distribution aisée du traitement, même sur plusieurs ordinateurs.
ROS sert de plateforme standardisée et de kit de développement logiciel (SDK) pour le développement et le contrôle de systèmes robotiques complexes.
ROS est largement utilisé pour le développement et le contrôle des robots humanoïdes. Il est notamment utilisé pour la planification des mouvements et le contrôle de la marche (locomotion), les systèmes de capteurs pour la perception de l'environnement et l'interaction homme-robot (IHR).
Contrôle des sous-périphériques EtherCAT dans ROS
Dans ROS, le contrôle matériel s'effectue via une architecture multicouche et standardisée qui masque la complexité de la communication matérielle directe aux algorithmes de contrôle de niveau supérieur, rendant ainsi ces algorithmes de contrôle universellement applicables.
Pour intégrer des sous-périphériques EtherCAT, un logiciel MainDevice EtherCAT (pile de protocoles EtherCAT) est nécessaire. Ce logiciel gère et contrôle tous les sous-périphériques et met les données de processus (variables d'entrée et de sortie) à la disposition de la couche application via deux zones mémoire. De plus, le logiciel MainDevice offre de nombreuses autres fonctions, notamment pour la transmission de paramètres (protocole d'application CAN sur EtherCAT) et de firmware (accès aux fichiers via EtherCAT). Parmi les autres fonctions essentielles de ce logiciel figurent la détection et la localisation des défauts à tous les niveaux (couche physique et couche application) avec envoi de messages détaillés à la couche application.
L'acontis EC-Master prend également en charge des fonctions avancées telles que le branchement et le débranchement dynamiques de sous-périphériques, sans interruption du réseau ni de l'application. Ces opérations de connexion à chaud sont également possibles pour les sous-périphériques utilisant la technologie d'horloges distribuées pour un fonctionnement hautement synchrone. Pour plus d'informations sur la connexion à chaud, consultez cet article de blog.
Les applications nécessitant une sécurité fonctionnelle peuvent également être mises en œuvre avec EC-Master. La logique de sécurité peut être implémentée de manière centralisée dans le MainDevice ou décentralisée dans un SubDevice. Le protocole FSoE (FailSafe over EtherCAT) est utilisé pour la communication entre les acteurs de sécurité. Pour plus d'informations sur FSoE, consultez cet article de blog .
Pour intégrer des sous-périphériques EtherCAT, un logiciel MainDevice EtherCAT (pile de protocoles EtherCAT) est nécessaire. Ce logiciel gère et contrôle tous les sous-périphériques et met les données de processus (variables d'entrée et de sortie) à la disposition de la couche application via deux zones mémoire. De plus, le logiciel MainDevice offre de nombreuses autres fonctions, notamment pour la transmission de paramètres (protocole d'application CAN sur EtherCAT) et de firmware (accès aux fichiers via EtherCAT). Parmi les autres fonctions essentielles de ce logiciel figurent la détection et la localisation des défauts à tous les niveaux (couche physique et couche application) avec envoi de messages détaillés à la couche application.
L'acontis EC-Master prend également en charge des fonctions avancées telles que le branchement et le débranchement dynamiques de sous-périphériques, sans interruption du réseau ni de l'application. Ces opérations de connexion à chaud sont également possibles pour les sous-périphériques utilisant la technologie d'horloges distribuées pour un fonctionnement hautement synchrone. Pour plus d'informations sur la connexion à chaud, consultez cet article de blog.
Les applications nécessitant une sécurité fonctionnelle peuvent également être mises en œuvre avec EC-Master. La logique de sécurité peut être implémentée de manière centralisée dans le MainDevice ou décentralisée dans un SubDevice. Le protocole FSoE (FailSafe over EtherCAT) est utilisé pour la communication entre les acteurs de sécurité. Pour plus d'informations sur FSoE, consultez cet article de blog .
Variante A : Périphérique principal EtherCAT en tant que nœud ROS 2 – « EcMasterRos2Node »
Le nœud ECMasterRos2Node d'Acontis implémente la pile de protocoles EtherCAT MainDevice EC-Master en tant que nœud ROS autonome. La paramétrisation du réseau EtherCAT s'effectue via le fichier ENI (EtherCAT Network Information) standardisé et prend en charge tous les sous-périphériques EtherCAT disponibles sur le marché, y compris les périphériques FSoE sécurisés.
Après l'initialisation du réseau EtherCAT, les sujets ROS correspondants sont automatiquement générés pour toutes les données d'entrée et de sortie. Ceci permet un accès aisé aux données de processus EtherCAT cycliques par d'autres nœuds ROS.
De plus, ECMasterRos2Node fournit, entre autres, un service ROS permettant de vérifier l'état des sous-périphériques et de l'ensemble du réseau. Les API EC-Master pertinentes sont déjà disponibles sous forme d'actions ROS. Par exemple, des paramètres arbitraires peuvent être transférés aux sous-périphériques via le protocole « CAN application protocol over EtherCAT ».
ECMasterRos2Node est actuellement encore en développement et devrait être disponible au premier trimestre 2026.
Après l'initialisation du réseau EtherCAT, les sujets ROS correspondants sont automatiquement générés pour toutes les données d'entrée et de sortie. Ceci permet un accès aisé aux données de processus EtherCAT cycliques par d'autres nœuds ROS.
De plus, ECMasterRos2Node fournit, entre autres, un service ROS permettant de vérifier l'état des sous-périphériques et de l'ensemble du réseau. Les API EC-Master pertinentes sont déjà disponibles sous forme d'actions ROS. Par exemple, des paramètres arbitraires peuvent être transférés aux sous-périphériques via le protocole « CAN application protocol over EtherCAT ».
ECMasterRos2Node est actuellement encore en développement et devrait être disponible au premier trimestre 2026.
Variante B : Périphérique principal EtherCAT comme interface matérielle pour ros2_control
Le framework de contrôle ros2_control assure la liaison entre la logique ROS et les interfaces matérielles. Ros2_control fournit des pilotes et des interfaces permettant de standardiser le contrôle de divers capteurs (caméras, lidars, etc.) et actionneurs (moteurs, bras robotiques, etc.). La gestion du matériel est assurée par le gestionnaire de ressources via des classes d'interface matérielle spécifiques. Cette couche d'abstraction matérielle est essentielle pour le transfert de données, le cycle de vie du matériel et la gestion des erreurs dans toute application.
La configuration des interfaces matérielles s'effectue via le fichier URDF (Unified Robot Definition Format). La balise <ros2_control> décrit le module d'interface matérielle et ses interfaces.
EC-Master est connecté en tant que composant matériel de type Système et fournit toutes les variables d'entrée et de sortie définies dans le fichier ENI (EtherCAT Network Information). Les variables d'entrée des sous-périphériques sont fournies via <state_interface> et les variables de sortie via <command_interface>.
La description de l'interface matérielle EC-Master pour le fichier URDF peut être facilement générée à l'aide de l'outil EC-Engineer et du fichier ENI. Cette méthode est très efficace et garantit la cohérence.
L'interface EcMasterRos2HwInterface est actuellement encore en développement et devrait être disponible au premier trimestre 2026.
La configuration des interfaces matérielles s'effectue via le fichier URDF (Unified Robot Definition Format). La balise <ros2_control> décrit le module d'interface matérielle et ses interfaces.
EC-Master est connecté en tant que composant matériel de type Système et fournit toutes les variables d'entrée et de sortie définies dans le fichier ENI (EtherCAT Network Information). Les variables d'entrée des sous-périphériques sont fournies via <state_interface> et les variables de sortie via <command_interface>.
La description de l'interface matérielle EC-Master pour le fichier URDF peut être facilement générée à l'aide de l'outil EC-Engineer et du fichier ENI. Cette méthode est très efficace et garantit la cohérence.
L'interface EcMasterRos2HwInterface est actuellement encore en développement et devrait être disponible au premier trimestre 2026.
