Roombots: Design and Implementation of a Modular Robot for Reconfiguration and Locomotion THÈSE N O 4803 (2010) PRÉSENTÉE LE 19 NOVEMBRE 2010 À LA FACULTÉ SCIENCES ET TECHNIQUES DE L'INGÉNIEUR LABORATOIRE DE BIOROBOTIQUE (SV/STI) PROGRAMME DOCTORAL EN SYSTÈMES DE PRODUCTION ET ROBOTIQUE ÉCOLE POLYTECHNIQUE FÉDÉRALE DE LAUSANNE POUR L'OBTENTION DU GRADE DE DOCTEUR ÈS SCIENCES PAR Alexander SPRÖWITZ acceptée sur proposition du jury: Prof. A. Martinoli, président du jury Prof. A. Ijspeert, directeur de thèse Prof. D. Floreano, rapporteur Prof. H. Lipson, rapporteur Prof. K. Stoy, rapporteur Suisse 2010
Abstract In this thesis we present the design and implementation of a novel self-reconfiguring modular (SR-MR) robotic system: Roombots. We are aiming at three main applications with Roombots; locomotion through self-reconfiguration in the regular cubic 3D-lattice on structured surfaces, locomotion in non-structured environments applying central pattern generators (CPG) as the locomotion controller, and self-assembly and reconfiguration of static objects of the day-to-day environment, such as furniture. Robot assemblies from self-reconfigurable modular robots have the ability to adapt to a given task and working environment by altering their shape through a series of reconfiguration moves, and attachments and detachments between the modules. We are interested in self-reconfiguring modular robots for their shape-changing capabilities, and their distributed characteristics. We envision the following applications for Roombots: First, self-reconfiguration in a structured 3D lattice, i.e. a floor and walls equipped with connectors. Embedded connectors can provide pivot points for locomotion of SR-MR assemblies, and docking and recharging places for our adaptive furniture pieces. Second, our proposed concept for locomotion control of modular robots on nonstructured ground are are central pattern generators. Third, we would like to built adaptive and versatile furniture from modular robots and light-weight elements. In the following we are able to count more than 60 modular robotic systems, developed over the last two decades. However we were unable to identify an existing system which could provide us with all desired kinematic and geometric capabilities. This led us to design and implement a novel self-reconfiguring modular robotic system: Roombots. To tackle the module design we attempt to identify both meaningful design parameters from existing modular robots, and essential features for our applications. The combination of both leads to the kinematic and geometric description of the Roombots modules, and eventually to its implementation. In order to be able to assemble furniture from our Roombots units in the future, we need a reconfiguration framework which supports the specific requirements of Roombots. Metamodules made of two units attached in-series are attracted and guided by a virtual force-field, they use broadcast signals, look-up tables of collision clouds and simple assumptions about their near environment to reach their seeding positions, which are currently hand coded. For the task of locomotion in non-structured environments we propose a framework for learning to move with modular robots using central pattern generators and online optimization. The distributed implementation of CPGs offers an ideal substrate for producing locomotion patterns and for online learning, and an optimization framework for fast learning. iii
Abstract Keywords - self-reconfiguring modular robots, central pattern generators, active connection mechanism, locomotion through reconfiguration, adaptive robotic furniture, online optimization iv
Zusammenfassung Im Rahmen dieser Dissertation stellen wir die Konstruktion und Implementierung eines neuartigen, selbst-rekonfigurierbaren modularen Roboter Systemes vor: Roombots. Wir zielen mit Roombots auf drei Hauptanwendungen ab. Einmal die Nutzung von Roombots Modulen zur Bewegung im 3-dimensionalen Raum, mit Hilfe von im Boden eingebetteten Konnektoren. Des Weiteren nutzen wir Roombots zur Fortbewegung in der unstrukturierten Umgebung. Die notwendigen Bewegungsmuster werden von central pattern generators (CPGs), biologisch inspirierten Mustergeneratoren übernommen. Zum Dritten möchten wir Roombots in Alltag integrieren. Ziel ist es statische Objekte aus einer Vielzahl von Roombots Einheiten zusammenzubauen, oder in diese zu verschmelzen. Selbstrekonfigurierende, kooperative Roboter können sich im Idealfall durch morphologische Veränderungen auf wechselnde Aufgaben und Situationen anpassen. Wir sind an modularen Systemen aufgrund ihrer Veränderbarkeit und ihren vernetzten, zellulären Strukturen und Eigenschaften interessiert. Dabei stellen wir uns folgende Anwendungen vor: Zum Einen die Rekonfiguration innerhalb einer 3-dimensionalen Schachbrettstruktur (3D-lattice), unter Zuhilfenahme von Konnektoren welche in der Umgebung eingebettet sind. Letztere ermöglichen es den Robotern sich einzuhaken und diese als Drehpunkt und zur Energieversorgung zu nutzen. Zum Zweiten möchten wir das Prinzip der CPGs auf unser modulares System übertragen. Ausserdem versuchen wir adaptive Systeme aus dem täglichen Leben mit Systemen aus modularen Robotern zu ergänzen. In der folgenden Arbeit stellen wir eine Liste mit über 60 modularen Robotersystemen vor, welche in den letzten 20 Jahren entwickelt wurden. Trotz intensiver Suche war es uns nicht möglich ein vorhandenes System auf unsere Anforderungen anzupassen. Daher entwickelten wir einen neuen modularen Roboter: Roombots. Um die Schlüsseleigenschaften herausstellen zu können analysieren wir die vorhandene Systeme, und die von uns gestellten Aufgaben. Dies führt letztendlich zur Implementierung von Roombots. Um passive Strukuren automatisiert zusammenzubauen entwickeln wir eine Lösung welche Roombots Metamodule nutzt. Diese sind aus zwei gekoppelten Roombots Einheiten zusammengesetzt. Roombots Metamodule orientieren sich dabei an einem Feld aus virtuellen Kraftlinien, und ihrer Position im strukuriertem Raum. Für die Aufgabenstellung der Fortbewegung auf unstrukturiertem Untergrund (keine Konnektoren) nutzen wir CPGs. Deren Parameter werden automatisch erlernt, und kontinuierlich und in Echtzeit optimiert. Schlagwörter - selbstrekonfigurierende modulare Roboter, zentrale biologische Musterund Rhythmusgeneratoren, aktiver Verbindungsmechanismus, Fortbewegung mittels Rekonfiguration, adaptive robotische Möbel v
Contents Abstract Zusammenfassung Acknowledgements iii v vii 1 Introduction 1 1.1 Goals...................................... 1 1.2 Motivation................................... 1 1.3 Outline..................................... 3 1.4 Contributions.................................. 4 2 Background and Related Work 5 2.1 History of Modular Robots.......................... 5 2.2 Classifications Modular Robots........................ 12 2.3 Scalability of Modular Robotic Systems................... 15 2.3.1 Granularity, Number of Modules and Redundancy......... 15 2.3.2 Actuator Efficiency........................... 16 2.3.3 Parallelizing Modular Robots..................... 16 2.3.4 Module Strength............................ 17 2.4 Active and Adaptive Furniture........................ 17 3 Active Connection Mechanism 23 3.1 Coupling Principles for Modular Robots................... 23 3.1.1 Permanent-magnet based magnetic forces.............. 23 3.1.2 Electromagnetic forces......................... 25 3.1.3 Electrostatic forces........................... 25 3.1.4 Hydrostatic pressure and hydrodynamic forces........... 26 3.1.5 Atmospheric and vacuum pressure.................. 26 3.1.6 Physical latching............................ 27 3.1.7 Melting................................. 30 3.1.8 Combination of principles....................... 31 3.2 Extracting Commonly Required Features from Coupling Mechanisms... 31 3.3 Detailed Roombots ACM Requirements................... 34 3.4 Summarized Roombots ACM design details................. 36 3.5 Overview ACMv1, ACMv2, and ACMv3 design............... 38 3.6 ACM kinematics................................ 41 ix
Contents 3.6.1 Spur-gear train............................. 41 3.6.2 Crank-slider kinematics........................ 42 3.6.3 Slider-latch kinematics......................... 46 3.7 ACMv3 Implementation Details........................ 47 3.8 First Experiments............................... 51 3.8.1 Axial forces along the attachment axis, torques........... 51 3.8.2 Misalignment.............................. 52 3.9 Summary and Conclusion........................... 52 4 Roombots Module Design 55 4.1 Identification and definition of the Roombots morphology......... 55 4.1.1 Reconfiguration and locomotion through reconfiguration...... 56 4.1.2 Locomotion on unstructured terrain................. 61 4.1.3 Roombots as Building Blocks for Furniture............. 62 4.2 Roombots DOF and housing......................... 63 4.3 Motor and Gearbox.............................. 68 4.4 Electronics, Sensors.............................. 73 4.5 Kinematics, Terminology, and Labeling.................... 76 4.5.1 Roombots Module Configurations and Labeling........... 76 4.5.2 Metamodule Configurations and Labeling.............. 77 4.5.3 Metamodule Shapes.......................... 78 4.6 Reconfiguration Test Setup.......................... 78 4.7 Planar and concave edge module movements................. 80 4.8 Mockups..................................... 82 4.9 Conclusion................................... 84 5 Experiments I: Reconfigurable Modular Robots for Adaptive Furniture 87 5.1 Introduction................................... 87 5.2 Related Work.................................. 88 5.3 Distributed Reconfiguration.......................... 90 5.3.1 Strategy................................. 92 5.3.2 Results and Discussion......................... 94 5.4 Conclusion................................... 95 6 Experiments II: First Roombots hardware tests & Furniture Design 99 6.1 Metamodule Locomotion Tests........................ 99 6.2 Planar reconfiguration through locomotion on a structured surface.... 102 6.3 Joint torques simple stool........................... 104 6.4 Furniture design examples........................... 105 6.5 Summary.................................... 105 7 Experiments III: YaMoR, Central Pattern Generators and Online Learning 107 7.1 Introduction................................... 107 7.2 Related work.................................. 109 x
Contents 7.3 The modular robotic system YaMoR..................... 112 7.3.1 Mechanical and electronic design................... 112 7.3.2 Bluetooth communication protocol.................. 113 7.4 Locomotion control............................... 116 7.4.1 CPG model............................... 117 7.4.2 Optimization algorithm........................ 120 7.5 Results...................................... 121 7.5.1 Suitability of CPGs for modular robots............... 122 7.5.2 Experimental setup with the YaMoR robots............. 125 7.5.3 Snake robot............................... 126 7.5.4 Tripod robot.............................. 128 7.5.5 Quadruped robot............................ 131 7.5.6 Changing frequency.......................... 134 7.6 Discussion.................................... 135 8 Epilogue 139 8.1 Original Contributions............................. 139 8.2 Discussion and conclusions........................... 140 8.3 Outlook..................................... 143 Bibliography 153 xi