Cots Bots An OfftheShelf Platform for Distributed Robotics
Cots. Bots: An Off-the-Shelf Platform for Distributed Robotics Sarah Bergbreiter and Dr. Kris Pister Berkeley Sensor and Actuator Center October 29, 2003
History of Cots. Bots 1 mm CCRs Add Legs 1 mm Solar Cell Array XL CMOS IC Smart Dust (Warneke, et al. Sensors 2002) Microrobots (Hollar, Flynn, Pister. MEMS 2002) Add Robot Body COTS Dust (Hill, et al. ACM OS Review 2000)
Goals for Cots. Bots • Open-source hardware and software platform for distributed robotics • Small, cheap, off-the-shelf, and modular robots • Emphasize application design software for large (> 50) robot networks • Reduce startup costs to demonstrate distributed multirobot algorithms
Similar Robot Platforms • Khepera II: expensive • Robomote (USC): custom design • Millibots (CMU): custom design • Soccer Robots: custom design • Pioneer: large and expensive Size TARGET SPACE Pione er Khepera Millibots Robomote ”Off-the-shelf” 1 Cos t Soccer Robots Microrobot s
Cots. Bots Hardware Mica Mote • • Atmel ATmega 128 – 4 Mhz 8 -bit CPU – 4 KB RAM – 128 KB Program Memory • RFM TR 1000 radio Kyosho Mini-Z RC Car Platform – 50 kb/s – ASK (or others…) – Focused hardware acceleration • Network programming Motor. Board Atmel ATmega 8 L – 1 -8 MHz CPU – 8 KB Program Memory – 1 KB RAM 2 Discrete H-Bridge Circuits – Speed and Direction Control of Motors – up to 4 A, 30 V load 51 -pin bus Sensor boards available including ADXL 202 e, magnetometer, light, temp, sound, etc.
Cots. Bots Hardware: Stats Size 6 cm Part Cost (quantity 50) RC Car/Tank Mica Mote Motor. Board 13 cm 6 cm 1 $37. 12 $14. 82 Board $6. 30 Total ”Off-the-shelf”- $125 Parts Assembly Approximately 10 robots assembled per hour from purchased components $54. 95 $16 $217. 07 Cos t • Power: ~1 hour on 4 AAA batteries • Speed: Over 120 cm/sec • Turning Radius: +/- 30 o • 80 robots built thus far
Cots. Bots Software Robot Application Mica Software Radio Timer Robot Motor Packet Motor Software Mini. Z Motor 1 ADC MZServo Motor Packet Motor 2 Motor. Board Software • Use open-source Nes. C language and code provided by Tiny. OS group (available on Source. Forge) • Tiny. OS is an event-driven operating system useful for behavioral and FSM-type applications • Try to abstract as much as possible from the application writer (developer should focus on algorithms) • Remain flexible by keeping component-based design
Cots. Bots Software Robot Application Mica Software Radio Timer Robot Motor Packet Motor Software Mini. Z Motor 1 ADC MZServo Motor Packet Motor 2 Motor. Board Software • Use open-source Nes. C language and code provided by Tiny. OS group (available on Source. Forge) • Tiny. OS is an event-driven operating system useful for behavioral and FSM-type applications • Try to abstract as much as possible from the application writer (developer should focus on algorithms) • Remain flexible by keeping component-based design
Cots. Bots Software Robot Application Mica Software Radio Timer Motor Software Robot Motor Packet Tank Motor 1 Motor 2 Motor Packet Motor. Board Software • Use open-source Nes. C language and code provided by Tiny. OS group (available on Source. Forge) • Tiny. OS is an event-driven operating system useful for behavioral and FSM-type applications • Try to abstract as much as possible from the application writer (developer should focus on algorithms) • Remain flexible by keeping component-based design
Building an Application: Beep Diffusion • Simple algorithm to spread robots apart • Adjusting microphone gain adjusts distance robots move apart Time Slot Manager Done Drivin g Obstacle Send Msg/Beep My Slot Heard Msg Listen Done Drivin g Hit Obstacle Heard Beep Drive
Building an Application: Beep Diffusion Acoustic Beacon Tone Sampling Timer Buzzer Radio Timer Mic Radio Slot. Manager Robot Radio Timer Motor. Packet ADC • Build the component graph • Write some components (blue boxes are free!) • Add a sensorboard with sensors required (4 k. Hz buzzer, mic, 2 axis accelerometer) UART Obstacle Accelerometer Timer ADC
Building an Application: Beep Diffusion Implementation • 5 robots in 10 ft x 10 ft area • 3. 5 second slot time • Difficulties with buzzer/tone detector hardware lead to inconsistent beep radius
Conclusions Reduced the startup costs (time and money) for designing distributed robot applications – A small, inexpensive, off-the-shelf, and modular hardware platform has been built for distributed robot applications – Tiny. OS provides an open-source software platform which promotes abstraction, code re-use, and flexibility – Simplified application development for simple distributed algorithms
Acknowledgements Doug Gage and DARPA/SDR, DARPA/NEST for funding Dr. David Culler and the Tiny. OS group Mica motes distributed by: http: //www. xbow. com Tiny. OS and Cots. Bots code available at: http: //www. sourceforge. net/projects/tinyos
- Slides: 14