Ballbot

Un article de Wikipédia, l'encyclopédie libre.
Ballbot de la CMU[1], le premier ballbot réussi, construit par le Pr Ralph Hollis[2] aux USA en 2005.
Le BallIP, développé par le Pr Masaaki Kumagai[3] à l'Université Tōhoku gakuin au Japon en 2008
Le Rezero[4] développé à l'ETH Zurich (Suisse) en 2010
Le ballbot Kugle[5] développé à l'Université d'Aalborg au Danemark en 2019
Le Ballbot CMU[1] avec une paire de bras à 2 degrés de liberté (2011). C'est le premier ballbot à bras.

Un robot en équilibre sur boule, plus connu sous le nom de ballbot, est un robot mobile dynamiquement stable conçu pour s'équilibrer sur une seule roue sphérique (c'est-à-dire une boule). Grâce à son point de contact unique avec le sol, un ballbot est omnidirectionnel et donc exceptionnellement agile, maniable et organique en mouvement par rapport aux autres véhicules terrestres. Sa stabilité dynamique permet une navigabilité améliorée dans des environnements étroits, encombrés et dynamiques. Les ballbots fonctionnent sur le même principe que celui d'un pendule inversé.

Historique[modifier | modifier le code]

Le premier ballbot fonctionnel est développé en 2005[6],[7],[8] par le Pr Ralph Hollis du Robotics Institute de l'Université Carnegie Mellon (CMU), et est breveté en 2010[9]. Le Ballbot CMU[8],[10],[11],[12] est construit pour être à échelle humaine, à la fois en taille et en encombrement. Le Pr Hollis et son groupe à la CMU ont démontré que le ballbot peut être résistant aux perturbations, y compris les coups de pied et les bousculades, et peut également gérer les collisions avec les meubles et les murs[13],[14],[15]. Ils ont montré qu'une variété de comportements d'interactions humain-robot physiques peuvent être développés avec le ballbot[16],[17], et ont présenté des algorithmes de planification et de contrôle pour obtenir des mouvements rapides, dynamiques et gracieux à l'aide du ballbot[18],[19],[20]. Ils ont également démontré la capacité du ballbot à naviguer de manière autonome dans des environnements humains pour réaliser des tâches de surveillance[21],[22],[23]. Une paire de bras à deux degrés de liberté est ajoutée au Ballbot CMU[8] en 2011, ce qui en fait le premier ballbot au monde doté de bras[24],[25],[26].

En 2005, à peu près au même moment où CMU Ballbot[8] est présenté, un groupe de chercheurs de l'Université de Tokyo présente la conception d'un fauteuil roulant ballbot, qui s'équilibre sur un ballon de basket et nommé "BB Rider"[27]. Cependant, ils n'en rapportent que la conception et ne présenteront jamais de résultats expérimentaux[27].

Depuis l'introduction du Ballbot CMU[8] en 2005, plusieurs autres groupes à travers le monde ont développé des ballbots. Pr Masaaki Kumagai a développé BallIP en 2008[28] à l'Université Tohoku Gakuin, au Japon. Kumagai et son groupe ont démontré la capacité des ballbots à transporter des charges et à être utilisés pour le transport coopératif[29]. Ils ont développé un certain nombre de petits ballbots et ont fait la démonstration du transport coopératif en les utilisant[29],[30]. Un groupe d'étudiants en génie mécanique de l'ETH Zurich, en Suisse, a développé Rezero en 2010[31]. Rezero a de nouveau souligné les mouvements rapides et gracieux qui peuvent être réalisés sur les ballbots[32].

Tomás Arribas (Espagne) a développé en 2008 le premier ballbot utilisant des LEGO Mindstorms NXT, dans le cadre de son projet de Master à l'Université d'Alcala[33],[34]. Il a développé un projet de simulation avec Microsoft Excel pour simuler facilement le système[35]. Dans le cadre des recherches menées au sein du Groupe de recherche spatiale de l'Université d'Alcalá (SRG-UAH), en Espagne, l'équipe de travail, spécialisée dans le contrôle optimal et la planification appliqués aux systèmes dynamiques non linéaires, a publié en 2012 l'article intitulé "A Monoball Robot Based on LEGO Mindstorms"[36]. Cet article décrit le modèle mathématique et le contrôle de trajectoire comme base pour les systèmes de contrôle instables et non linéaires.

Yorihisa Yamamoto (Japon), s'inspirant du projet de Tomás Arribas, a également développé un ballbot en utilisant LEGO Mindstorms NXT en 2009[37],[38]. Il a créé une démonstration détaillée pour construire, modéliser et créer des contrôleurs à l'aide de MATLAB[37].

Un groupe d'étudiants en génie mécanique de l'Université d'Adélaïde (Australie) a développé à la fois un ballbot LEGO et un ballbot à grande échelle en 2009[39]. Un groupe d'étudiants de l'Université ITMO (Russie) a introduit un algorithme et construit un ballbot basé sur le kit robotique LegoNXT qui a atteint la stabilité avec seulement deux actionneurs utilisés[40]. Des vidéos sur YouTube présentent des ballbots développés dans le monde entier. Certains d'entre eux ont été développés à l'aide de LEGO Mindstorms NXT[41],[42],[43],[44],[45].

D'autres conceptions utilisent des roues omnidirectionnelles pour actionner la balle[46],[47],[48],[49].

Thomas Kølbæk Jespersen (Danemark) a développé le ballbot Kugle dans le cadre de son mémoire de fin d'études à l'Université d'Aalborg en 2019[50]. Équipé de trois moteurs et de roues omnidirectionnelles, d'un Intel NUC embarqué, de deux Lidars SICK, d'un microprocesseur ARM et d'une tablette sur le dessus, le robot est capable de manœuvrer de manière autonome dans des environnements intérieurs et de guider les personnes. Son mémoire de Master et tout le matériel, y compris le code source MATLAB et les implémentations de contrôleur C++ sont accessibles publiquement sur GitHub[51].

Les ballbots apparaissent également dans le monde de la science-fiction. Le film Wall-E de Pixar en 2008 présente "MO" (Microbe Obliterator), un ballbot de nettoyage. La série télévisée Caprica de Syfy en 2010 présentait "Serge", un ballbot majordome[52].

Motivation et caractéristiques[modifier | modifier le code]

Historiquement, les robots mobiles ont été conçus pour être statiquement stables, ce qui signifie que le robot n'a pas besoin de dépenser d'énergie lorsqu'il est immobile. Ceci est généralement réalisé grâce à l'utilisation de trois roues ou plus sur une base. Afin d'éviter le basculement, ces robots mobiles statiquement stables ont le plus souvent une large base, pour un grand polygone de sustentation, et beaucoup de poids mort dans la base pour abaisser le centre de gravité. Ils ont également tendance à avoir une faible accélération ou décélération pour éviter le basculement. Les larges bases des robots mobiles statiquement stables compliquent leur navigation dans des environnements humains encombrés. De plus, ces robots ne sont souvent pas holonomes ce qui les rend peu adaptés aux environnements humains[8].

Le désir de construire des robots mobiles hauts et étroits qui ne basculent pas a conduit au développement de robots mobiles dynamiquement stables comme les ballbots. Un ballbot a généralement un corps qui s'équilibre au-dessus d'une seule roue sphérique (boule). Il forme un système sous-actionné, c'est-à-dire qu'il possède plus de degrés de liberté (DOF) que d'entrées de contrôle indépendantes. La boule est directement contrôlée à l'aide d'actionneurs, alors que le corps n'a pas de contrôle direct pour l'équilibre et la navigation. Le corps est maintenu debout autour de son point d'équilibre instable en contrôlant la boule, de façon comparable au contrôle d'un pendule inversé[8]. Ceci conduit à des déplacements de position limités mais perpétuels du ballbot. L'aspect contre-intuitif du mouvement du ballbot est que pour avancer, le corps doit se pencher vers l'avant, et pour se pencher vers l'avant, la balle doit rouler vers l'arrière. Toutes ces caractéristiques font de la planification des mouvements souhaités du ballbot une tâche difficile. Afin d'obtenir un mouvement en ligne droite vers l'avant, le ballbot doit se pencher en avant pour accélérer et se pencher en arrière pour décélérer[14],[18],[24],[31]. De plus, le ballbot doit se pencher dans les courbes afin de compenser les forces centripètes, ce qui se traduit par des mouvements élégants et gracieux[18],[22],[24],[31].

Contrairement aux robots mobiles d'équilibrage à deux roues comme le Segway, qui s'équilibrent dans une direction, mais qui ne peuvent pas se déplacer dans la direction latérale, les ballbots sont omnidirectionnels. Ils n'ont pas de rayon de braquage minimal et n'ont pas besoin de l'angle lacet (yaw) pour changer de direction.

Description du système[modifier | modifier le code]

Principaux paramètres de conception[modifier | modifier le code]

Les paramètres de conception les plus fondamentaux d'un ballbot sont sa hauteur, sa masse, son centre de gravité et le couple maximal que ses actionneurs peuvent fournir. Le choix de ces paramètres détermine le moment d'inertie du robot, l'angle de tangage (pitch) maximal et donc ses performances dynamiques et d'accélération et son agilité. La vitesse maximale est fonction de la puissance de l'actionneur et de ses caractéristiques. Outre le couple maximal, l'angle de tangage est en outre limité par la force maximale qui peut être transmise au sol par les actionneurs. Par conséquent, les coefficients de frottement de toutes les pièces impliquées dans la transmission de la force jouent également un rôle majeur dans la conception du système. De plus, une attention particulière doit être portée au rapport du moment d'inertie du corps du robot et de sa boule afin d'éviter une rotation indésirable de la boule, en particulier lors du lacet (yaw)[31].

Boule et actionnement[modifier | modifier le code]

La boule est l'élément central d'un ballbot puisqu'elle doit transmettre et supporter toutes les forces générées et résister à l'usure mécanique causée par des surfaces de contact rugueuses. Un coefficient de frottement élevé de sa surface et une faible inertie sont indispensables. Le Ballbot CMU[8] utilisent tous les trois une sphère métallique creuse avec un revêtement en polyuréthane. BB Rider[27] utilise un ballon de basket, tandis que BallIP[28] utilisent des boules de bowling recouvertes d'une fine couche de caoutchouc.

Afin de résoudre le problème assez complexe de l'actionnement d'une sphère, une variété de mécanismes d'actionnement différents ont été introduits. Le Ballbot CMU[8] a utilisé un mécanisme de boule de souris inversé. Contrairement à la boule de souris traditionnelle qui entraîne les rouleaux de la souris pour fournir une entrée informatique, l'entraînement par boule de souris inversée utilise quatre rouleaux pour entraîner la boule, chaque rouleau étant actionné par un moteur électrique indépendant. Afin d'obtenir un mouvement de lacet (yaw), le Ballbot CMU utilise un assemblage de roulement et de collecteur tournant et un moteur séparé pour faire tourner le corps sur le dessus de la balle[14]. Le Ballbot Lego[37] a également utilisé une boule de souris inversée, mais utilisait des roues normales pour entraîner la balle au lieu de rouleaux.

Contrairement au Ballbot CMU[14], BallIP[28], Rezero[31] et Kugle[50] utilisent tous les trois des roues omnidirectionnelles pour entraîner la boule. Ce mécanisme d'entraînement ne nécessite pas de mécanisme d'entraînement séparé pour le lacet (yaw), et permet un contrôle direct de la rotation en lacet de la balle. Contrairement au Ballbot CMU[14] qui utilise quatre moteurs pour entraîner la boule et un moteur pour la rotation en lacet, BallIP[28], Rezero[31] et Kugle[50] n'utilisent que trois moteurs pour les deux opérations. De plus, ils n'ont que trois points de transmission de force contre quatre points sur le Ballbot CMU. Étant donné que le contact entre une omni-roue et la boule doit être réduit à un seul point, la plupart des omni-roues disponibles ne conviennent pas correctement à cette tâche, en raison des écarts entre les roues individuelles plus petites qui entraînent un mouvement de roulement instable. Par conséquent, le projet BallIP[28] a introduit une roue omnidirectionnelle plus complexe, avec une ligne de contact circonférentielle continue. L'équipe Rezero[31] a équipé cette conception à roues omnidirectionnelles de roulements à rouleaux et d'un revêtement haute friction[31]. Ils ont également installé un système mécanique qui presse la boule contre les actionneurs afin d'augmenter encore les forces de friction, et une suspension pour amortir les vibrations[31]. Le robot Kugle est équipé d'une jupe qui maintient la boule en place pour éviter qu'elle ne soit repoussée lors de fortes inclinaisons. Le Ballbot de l'université d'Adélaïde[39] utilise des roues pour sa version LEGO et des roues omnidirectionnelles traditionnelles pour sa version grandeur nature.

Masaaki Kumagai[3], qui a développé BallIP[28],[53]. L'objectif de cette conception était de développer un actionnement à 3 degrés de liberté sur la boule, en utilisant un mécanisme à faible coût.

Capteurs[modifier | modifier le code]

Afin de contrôler activement la position et l'orientation du corps d'un ballbot par un framework capteur-ordinateur-actionneur, en plus d'un microprocesseur approprié ou d'une autre sorte d'unité informatique pour exécuter les boucles de contrôle nécessaires, un ballbot nécessite fondamentalement une série de capteurs qui permettent de mesurer l'orientation de la balle et du corps du ballbot en fonction du temps. Pour suivre les mouvements de la boule, des encodeurs rotatifs (CMU Ballbot[8]) sont généralement utilisés. La mesure de l'orientation du corps est plus compliquée et se fait souvent à l'aide de gyroscopes (NXT Ballbots[37],[39] ) ou, plus généralement, d'une centrale inertielle (CMU Ballbot[8], BallIP[28], Rezero[31], Kugle[50] ) qui comprend un accéléromètre, un gyroscope et éventuellement un magnétomètre dont les mesures sont fusionnées dans l'orientation du corps grâce à des algorithmes AHRS.

Le Ballbot CMU[8] utilise un télémètre laser Hokuyo URG-04LX pour se localiser sur une carte 2D de l'environnement[22],[23]. Il utilise également le télémètre laser pour détecter les obstacles et les éviter[22],[23]. À l'inverse, le robot Kugle[50] utilise deux LiDAR 2D SICK TiM571 pour se localiser, éviter les obstacles et détecter les personnes.

Bras[modifier | modifier le code]

Le Ballbot CMU[8] est le premier ballbot à être doté de bras[24],[25],[26]. Il possède une paire de bras à 2 degrés de liberté entraînés par des actionneurs élastiques en série. Ses bras sont des tubes creux en aluminium et l'on peut ajouter des poids à leurs extrémités. En raison de cette simplicité, les bras ne peuvent être utilisés pour aucune manipulation significative, mais sont utilisés pour étudier leurs effets sur la dynamique du ballbot[24],[25],[26].

Dispositifs de sécurité[modifier | modifier le code]

La plus grande préoccupation avec un ballbot est sa sécurité en cas de panne du système. Plusieurs tentatives ont été émises pour répondre à cette préoccupation. Le CMU Ballbot[8] a introduit trois pieds d'atterrissage rétractables qui permettent au robot de rester debout (statiquement stable) après avoir été mis hors tension. Il est également capable de passer automatiquement de cet état statiquement stable à son état d'équilibrage dynamiquement stable, et vice versa[13],[15]. Rezero comporte un mécanisme de sécurité en cas de renversement, afin d'éviter les gros dommages en cas de défaillance du système[31].

Applications possibles[modifier | modifier le code]

Grâce à sa stabilité dynamique, un ballbot peut être grand et étroit, et peut également être physiquement interactif, ce qui en fait un candidat idéal pour un robot mobile personnel[8]. Il peut agir comme un robot de service dans les maisons et les bureaux et offrir des conseils aux personnes, par exemple dans les centres commerciaux et les aéroports[50]. Les ballbots actuels[8],[28],[31],[11],[12],[30],[32], et plusieurs personnages ballbots sont apparus dans des films hollywoodiens[54],[52]. Par conséquent, le ballbot a aussi des applications possibles dans l'industrie du divertissement, y compris les jouets.

Projets de ballbots notables[modifier | modifier le code]

Références[modifier | modifier le code]

  1. a b et c CMU Ballbot
  2. Prof. Ralph Hollis
  3. a b et c Prof. Masaaki Kumagai
  4. a et b (en) Markus Waibel, « Project Rezero: Ball Balancing Robot With Style », sur spectrum.ieee.org, (consulté le )
  5. a et b Kugle - Modelling and Control of a Ball-balancing
  6. Tom Lauwers, George Kantor et Ralph Hollis, « One is Enough! », 12th International Symposium on Robotics Research,
  7. Tom Lauwers, George Kantor et Ralph Hollis, « A Dynamically Stable Single-Wheeled Mobile Robot with Inverse Mouse-Ball Drive », IEEE International Conference on Robotics and Automation, , p. 2884–2889
  8. a b c d e f g h i j k l m n o et p Ralph Hollis, « Ballbots », Scientific American, , p. 72–78
  9. Ralph Hollis, « Dynamic balancing mobile robot », US Patent #7847504,
  10. « CMU Ballbot on Discovery Channel's Daily Planet »,
  11. a et b « CMU Ballbot on ROBORAMA » [archive du ],
  12. a et b « CMU Ballbot on UK's Gadget Show »,
  13. a et b Umashankar Nagarajan, Anish Mampetta, George Kantor et Ralph Hollis, « State Transition, Balancing, Station Keeping and Yaw Control for a Dynamically Stable Single Spherical Wheel Mobile Robot », IEEE International Conference on Robotics and Automation, Kobe, Japan, , p. 998–1003
  14. a b c d et e Umashankar Nagarajan, George Kantor et Ralph Hollis, « Trajectory Planning and Control of a Dynamically Stable Single Spherical Wheel Mobile Robot », IEEE International Conference on Robotics and Automation, Kobe, Japan, , p. 3743–3748
  15. a et b « CMU Ballbot: Overview » [archive du ],
  16. Umashankar Nagarajan, George Kantor et Ralph Hollis, « Human-Robot Physical Interaction with Dynamically Stable Mobile Robots », IEEE International Conference on Robotics and Automation, San Diego, USA, , p. 3743–3748
  17. « CMU Ballbot: Human-Robot Physical Interaction » [archive du ],
  18. a b et c Umashankar Nagarajan, « Dynamic Constraint-based Optimal Shape Trajectory Planner for Shape-Accelerated Underactuated Balancing Systems », Robotics: Science and Systems, Zaragoza, Spain,
  19. « CMU Ballbot: Fast Motions » [archive du ],
  20. « CMU Ballbot: Fast, Graceful Maneuvers » [archive du ],
  21. Umashankar Nagarajan, George Kantor et Ralph Hollis, « Hybrid Control for Navigation of Shape-Accelerated Underactuated Balancing Systems », IEEE Conference on Decision and Control, Atlanta, USA, , p. 3566–3571
  22. a b c et d Umashankar Nagarajan, George Kantor et Ralph Hollis, « Integrated Planning and Control for Graceful Navigation of Shape-Accelerated Underactuated Balancing Mobile Robots », IEEE Conference on Decision and Control, St. Paul, USA,
  23. a b et c « CMU Ballbot: Autonomous Graceful Navigation » [archive du ],
  24. a b c d et e Umashankar Nagarajan, Byungjun Kim et Ralph Hollis, « Planning in High-dimensional Shape Space for a Single-wheeled Balancing Mobile Robot with Arms », IEEE Conference on Decision and Control, St. Paul, USA,
  25. a b et c « CMU Ballbot: Motion with Arms » [archive du ],
  26. a b et c « CMU Ballbot: Motions with Constraints on Arms » [archive du ],
  27. a b et c Tatsuro Endo et Yoshihiko Nakamura, « An Omnidirectional Vehicle on a Basketball », 12th International Conference on Advanced Robotics,‎ , p. 573–578
  28. a b c d e f g et h M Kumagai et T Ochiai, « Development of a Robot Balancing on a Ball », International Conference on Control, Seoul, Korea, Automation and Systems,‎ , p. 433–438
  29. a et b M Kumagai et T Ochiai, « Development of a Robot Balanced on a Ball: Application of passive motion to transport », International Conference on Robotics and Automation, Kobe, Japan,‎ , p. 4106–4111
  30. a et b « BallIP on IEEE Spectrum »,
  31. a b c d e f g h i j k et l Simon Doessegger, Peter Fankhauser, Corsin Gwerder, Jonathan Huessy, Jerome Kaeser, Thomas Kammermann, Lukas Limacher et Michael Neunert, « Rezero, Focus Project Report » [archive du ], Autonomous Systems Lab, ETH Zurich Institute of Technology,
  32. a et b « Rezero on TED Talks »,
  33. Tomás Arribas (August 2008). https://www.youtube.com/watch?v=FZ5K0tZ2ZOk
  34. Tomás Arribas, « NXT BallBot: Balancing Robot Omnidirectional Trajectory correction » [archive du ],
  35. Arribas, « NXTBallbot balancing robot Simulation with Microsoft Excel: NXT Ballbot Simulation with Microsoft Excel »
  36. ( S. Sánchez, T. Arribas, M. Gómez and O. Polo, “A Monoball Robot Based on LEGO Mindstorms,” IEEE Control Systems Magazine, vol. 32, no. 2, pp. 71–83, 2012.)
  37. a b c et d Yorihisa Yamamoto, « NXT Ballbot Model-Based Design.pdf » [PDF], , p. 47
  38. « LEGO NXT Ballbot » [archive du ],
  39. a b et c « Ballbot at University of Adelaide » [archive du ],
  40. « Ballbot stabilization algorithm », ntv.ifmo.ru/en
  41. Samuel Jackson, « Ballbot - A dynamically stable inverted pendulum balancing on a bowling ball » [archive du ],
  42. double051, « 2-Dimension Inverted Pendulum » [archive du ],
  43. « YouTube »
  44. « YouTube »
  45. « YouTube »
  46. antonio88m, « Ballbot - prima versione » [archive du ],
  47. StAstRobotics, « AST Ballbot - G1 » [archive du ],
  48. aoki2001, « 玉乗りロボット1号 » [archive du ],‎
  49. Jeroen Waning, « Self-balancing Arduino Ballbot - SPSU senior design project » [archive du ],
  50. a b c d e et f Thomas Kølbæk Jespersen, Kugle - Modelling and Control of a Ball-balancing, Master Thesis, AAU, (lire en ligne)
  51. Jespersen, « Kugle ballbot repository », GitHub
  52. a et b « Serge - Battlestar Wiki » [archive du ] (consulté le )
  53. « Ball Actuation using Partial Sliding Rollers » [archive du ],
  54. WALL-E
  55. (en) Hands-free wheelchair prototype achieves major milestone
  56. (en) Bossa Nova Robotics Launches Mobi Research Ballbot
  57. (en) BionicMobileAssistant: Mobile Robot System with Pneumatic Gripper Hand
  58. Elsa Bembaron, « CES 2023: avec Miroki, Enchanted Tools met du merveilleux dans les robots du quotidien », sur lefigaro.fr, (consulté le )