WIM publie sous licence Apache 2.0 la couche d’entraînement de PLEM, sa plateforme de contrôle robotique pour NVIDIA Jetson. La version 0.11.0 pilote jusqu’à huit axes CiA 402 par EtherCAT et les expose à ROS 2 sans demander aux intégrateurs d’écrire leur propre boucle temps réel.
Du fichier YAML aux moteurs EtherCAT
PLEM se place entre les applications robotiques et les variateurs. Un fichier YAML décrit le bus, les entraînements, les unités, les limites et les modes de chaque axe. La commande plem drive check vérifie la configuration avant tout mouvement. La commande plem drive run lance ensuite le bus dans une boucle temps réel intégrée à ros2_control.
La couche prend en charge les modes de position, de vitesse et de couple cycliques de la norme CiA 402. Un même bus peut mélanger ces modes sur huit axes au maximum. Les applications envoient une trajectoire FollowJointTrajectory, un flux de commandes ROS 2 ou utilisent le petit client Python fourni par WIM.
La plateforme de référence associe un Jetson AGX Orin sous JetPack 7.2.1, un noyau PREEMPT_RT, ROS 2 Jazzy et le maître EtherCAT IgH 1.6.13. Le dépôt contient un exemple testé avec deux variateurs Panasonic A6B derrière des réducteurs.
Des contrôles avant le premier mouvement
La sécurité de configuration tient une place importante dans le projet. Un fichier non approuvé doit passer par une procédure de banc qui enregistre son état et les entraînements détectés. Toute modification d’une valeur ou tout remplacement matériel invalide cette approbation.
PLEM déclenche aussi un arrêt de protection lorsque les commandes cessent d’arriver ou dépassent les limites définies. Le ralentissement dépend ensuite des réglages propres au variateur. Le projet ne remplace donc pas les fonctions de sécurité certifiées du robot ou de l’entraînement.
WIM publie des mesures obtenues à 1 kHz avec une carte réseau Intel I210. Trois essais de cinq minutes n’ont enregistré ni dépassement de cycle ni erreur de compteur EtherCAT. Le constructeur recommande cette carte pour les usages à 1 kHz, tandis que le port réseau intégré au kit Jetson reste destiné à l’évaluation.
Un défaut de synchronisation ramené de 328 à 3,5 microsecondes
Le travail a également mis en évidence une interaction avec le pilote nvpps de NVIDIA. Le verrouillage matériel PTP-TSC activé au démarrage faisait monter périodiquement l’écart des horloges distribuées EtherCAT jusqu’à 328 microsecondes. Sa désactivation par une propriété de l’arbre matériel a ramené le maximum mesuré à 3,5 microsecondes pendant vingt minutes.
Cette correction est intégrée à l’assistant d’installation. Elle montre l’intérêt d’une couche documentée pour des intégrateurs qui doivent réunir calcul embarqué, réseau industriel et ROS 2 sur la même machine.
La publication ne transforme pas encore PLEM en contrôleur complet pour n’importe quel robot. Le dépôt couvre la couche variateur. Les fonctions de cinématique, de planification, de calibration et de gestion de flotte restent dans l’offre PLEM Pro. Pour les équipes qui développent leur propre architecture, la version ouverte fournit néanmoins une base vérifiable pour relier Jetson, EtherCAT et des axes réels.
