1. Programmable Matter
with Modular Robots
Daniela Rus
CSAIL, MIT
Z. Butler, P. Corke, C. Detweiler, B. Donald, K. Gilpin, K. Kotay,
C. Levey, I. Paprotny, I. Vasilescu, M. Vona, Y. Yoon
Motivation
Fixed architecture robot = fixed task set
Flexible architecture robot = versatility
•Multiple locomotion gaits
•Multiple manipulation gaits
•Self-assembly
•Self-repair
How do living cells differentiate?
•Synthetic engineering exploration
1
2. Self-reconfiguring Robots
slinky
snake
blob
•Multiple modules
•Physically connected
•Capable of autonomous
structural change
•Multiple functionalities--
-form follows function
Programming matter by
self-reconfiguration
All modules identical/active
Connections
Actuation by rotation, sliding, scaling
Local communication
2
3. Programming Matter Example:
The Molecule
2 atoms, 1 bond, 5 connectors/atom
4 rotational degrees of freedom
4 Futaba S9204
10 Micro Mo motors
FDM fabrication
Programming Matter Example
3
4. Programming Matter:
Distributed Control
Abstract model of relative motion: cube
Synthesize task-specific local rules (manually or learning)
Prove correctness
Compile to specific hardware actuation
Programming Matter:
Distributed Locomotion
4
5. Programming Matter
Distributed Control Analysis
Correctness:
Some rule can always be applied
Eastward motion results form all possible
sequences of rule activations
The robot remains connected
Obstacle field must be shorter than the
robot
Programming Matter:
Another Way
Proof outline
1. A rule can always be applied
2. Rule applications Þ east movement
3. The cell array remains connected
Graph equivalence
1. No leaves
2. Cycles : eastward displacement
3. Nodes are connected cell arrays
Automated proofs can be produced
for a given rule set and cell array
5
6. Programming Matter
by Disassembly
Initial configuration Finished product
Self-assembly as Sculpting
Programming Matter by
Disassembly Trade-offs
Simple actuation Must start from pre-
mechanism for assembled structure
disconnection Must rely on
Disconnection external force for
easier, faster, more discarding modules
robust than making (gravity)
connections
Gravity pulls
modules away
6
7. Programming Matter
by Disassembly Example
Motor
ARM Processor
Li-Poly Hall Effect Sensor
Batteries
Magnet Assembly
Tilt Sensor
IR LED
IR Photodiode “Switchable” Magnet
2-D Accelerometer Miche Module
Programming Matter
Self-disassembly Algorithm
7
8. Programming Matter
Self-Disassembly Execution
5 trials, 120 secs average
completion, some units can’t fall
Programming Matter
Localization with Tokens
Idea: each module computes a relative coordinate
Benefits: global structure not known/needed
8
9. Programming Matter
Shape Distribution
Idea: included modules only receive message along shortest path
Benefits: no global knowledge/need of shape
Programming Matter:
Self-disassembly Example
15 trials, 90 secs average completion
9
10. What Types of Modular Robots?
Spectrum of capabilities:
Self-reconfiguring: Actuation, Connection,
Computation, Sensing, Communication
Self-disassembling: Connection, Computation, Sensing,
Communication
Computation, Sensing, Communication
Computation and Communication
Inert
Spectrum of sizes: Large to Tiny Robots
Spectrum of applications: ground, water, space
Programming Matter
with Microrobots
Untethered actuators
Self-release
Power-delivery
With B. Donald
10
11. Programming Matter
with Microrobots
Plate length: 80 microns; width 2 microns; speed 1.5 mm/sec
Programming Matter with
Robots and Passive Blocks
11
13. Summary
Modular robots as alternative to fixed
architecture robots
A spectrum of capabilities for modules
The future:
BioChemical+Electromechanical Robotics
(Wet+Dry)
Distributed control of millions of tiny modules
Questions
13