in

PHYSFRAME : aide les systèmes robotiques à se positionner dans l’espace

PHYSFRAME
Advertisement

Des chercheurs de l’université de Purdue et de l’université de Virginie ont récemment mis au point est un système capable de détecter automatiquement le type de trame d’une variable et d’identifier d’éventuelles incohérences liées à la trame dans le code ROS existant. Un système qu’ils ont baptisé PHYSFRAME.

Pour se déplacer efficacement et en toute sécurité dans différents environnements, les systèmes robotiques surveillent généralement à la fois leurs propres mouvements et leur environnement. Ceci afin d’essayer de naviguer en toute sécurité et d’éviter les obstacles proches. Les mesures qu’ils recueillent ont généralement un sens par rapport à un cadre de référence donné, également appelé système de coordonnées.

Par exemple, dans un système de coordonnées tridimensionnel (3D), la position d’un robot est sans importance si l’on ne connaît pas le cadre auquel cette position se réfère. Comme les robots sont généralement de conception modulaire, leurs différentes parties ont généralement des cadres différents (par exemple, le cadre de la caméra, le cadre du corps, etc.). Ainsi les mesures relatives à un cadre doivent être translatées d’un cadre à l’autre avant de pouvoir être utilisées pour effectuer des calculs.

La plupart des systèmes robotiques sont basés sur des langages à usage général tels que C/C++. Des langages qui ne supportent pas intrinsèquement la complexité associée à l’utilisation de cadres multiples. Même si certains outils logiciels, tels que le Robot Operating System (ROS), proposent des stratégies pour simplifier les traductions entre les cadres, c’est finalement aux développeurs qu’il incombe de déterminer les cadres de référence des variables individuelles du programme. C’est aussi à eux d’identifier les cas où des traductions sont nécessaires et de les mettre en œuvre.

Des processus plus simplifiés

Cependant, la traduction manuelle des mesures entre différents cadres peut s’avérer très difficile. De plus, ces traductions sont souvent sujettes à des erreurs. Certains développeurs ont donc essayé de concevoir des méthodes pour simplifier ce processus de traduction. L’objectif étant de minimiser les erreurs liées à la traduction.

Des chercheurs de l’université de Purdue et de l’université de Virginie ont récemment mis au point PHYSFRAME. Il s’agit d’un système capable de détecter automatiquement le type de trame d’une variable et d’identifier les éventuelles incohérences liées à la trame dans le code ROS existant. Leur système pourrait contribuer à améliorer l’efficacité et la fiabilité des pratiques de traduction de trames en robotique.

advertisement

« Puisque toute variable d’état peut être associé à un certain cadre, les cadres de référence peuvent être naturellement modélisés comme des types de variables. Nous avons donc développé un nouveau type de système capable d’inférer automatiquement les types de cadres des variables. Un système qui peut aussi détecter à son tour toute incohérence de type et toute violation des conventions de cadre. »

PHYSFRAME : Une technique d’inférence et de vérification de type entièrement automatisée

PHYSFRAME est une technique d’inférence et de vérification de type entièrement automatisée. Un système capable de détecter les incohérences de cadre et les violations de convention dans les programmes basés sur ROS. Les chercheurs ont évalué leur système sur 180 projets basés sur ROS publiés sur GitHub.

« L’évaluation montre que notre système peut détecter 190 incohérences avec 154 vrais positifs (81,05 %). Nous en avons signalé 52 aux développeurs et avons reçu 18 réponses jusqu’à présent, dont 15 corrigées/accusées de réception. Notre technique a également trouvé 45 violations des pratiques courantes », écrivent les chercheurs dans leur article.

Grâce au système qu’ils ont développé, l’équipe a déjà identifié plusieurs incohérences et violations dans des projets existants basés sur ROS. À l’avenir, PHYSFRAME pourrait donc s’avérer un outil très précieux pour vérifier le code robotique existante. Il permettra aussi identifier les erreurs liées à la traduction des mesures dans différents cadres.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *