Maison > Périphériques technologiques > IA > Comment simplifier l'accélération matérielle des robots à l'aide de ROS 2

Comment simplifier l'accélération matérielle des robots à l'aide de ROS 2

王林
Libérer: 2023-04-09 16:01:11
avant
1127 Les gens l'ont consulté

Traducteur | Li Rui

Réviseur | Sun Shujuan

Lors du développement de robots, l'intégration du système occupe souvent la plupart des ressources du projet, ce qui est plus important que le développement de l'application finale. Avec l’émergence des robots collaboratifs industriels bas de gamme, certains développeurs de logiciels se sont concentrés uniquement sur le développement de logiciels fonctionnant sur le matériel existant. Cependant, il existe une relation cruciale entre les capacités matérielles et logicielles d’un robot. Le contrôle de la conception du matériel informatique doit être conservé pour créer des robots plus professionnels, plus économes en énergie, plus sûrs et plus performants.

Comment simplifier l'accélération matérielle des robots à l'aide de ROS 2

Défis matériels et compétences logicielles

Si les roboticiens espèrent fournir les robots meilleurs et plus rapides que l'avenir exigera, il existe des obstacles matériels qui doivent être surmontés. Dans le monde informatique post-Moore, la mise à niveau du matériel pour adopter la dernière génération de microprocesseurs ne permettra pas d’améliorer les performances des applications souhaitées. Sa voie à suivre ne consiste plus à attendre la dernière puce. L’accélération matérielle est souvent le seul moyen d’obtenir les gains nécessaires.

Ce défi matériel complique le travail des développeurs dans des disciplines telles que la robotique, dont les compétences sont souvent orientées vers le développement de logiciels. Cela signifie qu’ils doivent faire face à la perspective de concevoir du matériel informatique adaptatif s’ils veulent répondre à la demande du marché pour de nouveaux robots industriels. Les entreprises qui utilisent des robots pour augmenter leur productivité dans des domaines tels que les lignes de production et les entrepôts recherchent des appareils offrant une flexibilité supplémentaire, un contrôle de position plus précis, des capacités de vision supérieures, une capture de données améliorée et une consommation d'énergie réduite.

Le principe principal de l'accélération matérielle robotique est que, contrairement aux approches traditionnelles basées sur le contrôle, une approche hybride du développement logiciel basée sur le contrôle et les données permet aux équipes de concevoir des architectures informatiques personnalisées qui allouent la quantité optimale de ressources matérielles aux applications.

En termes de mise en œuvre, des modèles informatiques hétérogènes sont nécessaires. Cela tire parti des processeurs et des GPU, qui excellent dans les calculs de flux de contrôle, tout en exploitant les atouts des FPGA pour gérer les calculs de flux de données. Cette approche offre à la fois flexibilité et contrôle total sur le CPU/GPU pour mettre en œuvre des calculs complexes avec une faible consommation d'énergie, des performances élevées, une faible latence et le déterminisme de l'accélération matérielle. Divers fournisseurs proposent désormais des dispositifs adaptatifs de type système sur puce (SoC) et système sur module (SOM), tels que le SOM AMD-Xilinx Kria™ et sa pile robotique Kria associée, qui offrent les avantages de ce modèle informatique hybride. . Ce tableau compare ces différents modèles.

Comment simplifier l'accélération matérielle des robots à l'aide de ROS 2

Les systèmes sur puce adaptatifs (SoC) et les modules au niveau système (SOM) permettent aux experts en robotique de créer le comportement des machines en programmant l'architecture qui crée les chemins de données et les mécanismes de contrôle corrects. Cependant, des compétences d'ingénierie sophistiquées sont nécessaires pour programmer de telles architectures à l'aide d'outils et de techniques établis.

Les roboticiens manquent d'expertise en matière de matériel informatique et de conception embarquée et sont habitués à créer des comportements sous la forme de graphiques informatiques pour résoudre les tâches robotiques actuelles. Ils utilisent souvent C++ pour créer des systèmes déterministes complexes en temps réel grâce à des pratiques avancées d’ingénierie logicielle.

Construit sur le système d'exploitation robot (ROS)

Une approche différente est désormais nécessaire pour aider les roboticiens à tirer parti de la technologie d'accélération matérielle disponible. Idéalement, cette approche devrait leur permettre de créer du matériel personnalisé dans un environnement de développement familier (tel que ROS) et de le simuler à l'aide d'outils familiers (tels que Gazebo).

ROS est la norme de facto de l'industrie pour le développement d'applications robotiques, encore plus depuis l'introduction de ROS2 en 2020. Il est devenu le kit de développement logiciel (SDK) par défaut pour les applications robotiques dans tous les secteurs, de nombreux groupes utilisant désormais ROS et Gazebo.

Les initiatives précédentes visant à intégrer l’informatique adaptative dans ROS ont relevé ce défi du point de vue d’un ingénieur matériel. Ils supposent que les utilisateurs ont une expérience préalable des flux embarqués et matériels et sont donc familiers avec des concepts tels que RTL, HDL et HLS ainsi que les outils de conception utilisés pour les faire fonctionner. De même, le déploiement sur des cibles embarquées nécessite une certaine compréhension de Yocto, OpenEmbedded et des outils associés.

Comprenant que la plupart des experts en robotique ne viennent pas de ce milieu, le groupe de travail sur l'accélération matérielle ROS2 (HAWG) adopte une approche centrée sur ROS pour intégrer les processus embarqués directement dans l'écosystème ROS. Il vise à offrir une expérience similaire à celle dont bénéficient les roboticiens lors de la création d’un espace de travail ROS sur un poste de travail de bureau. Les travaux de

HAWG s'appuient sur des recherches publiées sur l'optimisation des graphiques informatiques ROS pour tirer parti du calcul adaptatif, ainsi que sur des recommandations sur les outils et méthodes permettant d'accélérer des parties de graphiques en logique programmable. Au-delà de cela, HAWG propose désormais une architecture (photo ci-dessous) qui se concentre sur des langages familiers comme C++ et OpenCL.

Comment simplifier l'accélération matérielle des robots à l'aide de ROS 2

ROS 2 et HAWG facilitent ensemble l'accélération matérielle

L'architecture proposée est indépendante de la plate-forme et donc adaptée aux installations de périphérie, aux postes de travail, aux centres de données ou aux plates-formes de cloud computing, et indépendante de la technologie pour permettre le ciblage des FPGA, des CPU et des GPU ainsi que Easy à porter sur divers modules et cartes mères.

À terme, ces travaux devraient permettre à la plupart des experts en robotique de profiter des opportunités de l'accélération matérielle pour mettre en œuvre la prochaine génération de robots avancés et complexes.

Titre original : Simplifier l'accélération matérielle pour les robots avec ROS 2, auteur : Ben Dickson

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:51cto.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal