Roomba Pilot

Author: Spooky67
Created: 8/8/2015
Updated: 2 years ago
Filesize: 949,194
My first attempt to use JD and an old roomba 530 at the same time, JD acting as a pilot, using his feet on the "brakes and throttle", moving a joystick around and displaying turn, backup and brake signals with his leds . First step,go through all the roomba tutorials here, perfect to learn the pinout on the roomba side. Turns out that in order to use JD as a pilot, I need to go another way, the main tutorial being about using only the microcontroller on the Roomba. I finally decided to use UART port 0 to send commands to the Roomba, using Richard R's Roomba 500 custom movement panel2 (thanks) I simply changed the port to 0 (in Richard's panel it's set to port 1) so that makes the roomba respond to keyboard, joystick or voice inputs . Now for JD ( known around our house as Joe! ) JD is positioned on top of his "vehicle" with a movable joystick made out of a Gopro flexible stand (and I could still add the gopro to it !) and holding on to a metal bracket I added on the opposite side. I created some moves for JD, hands, feet, head and led signals, so he could "drive", then merged my project with Richard's panel... WRONG, roomba would drive off, but JD would try to walk, not execute my clever driver moves The answer was somewhere in the forum by DJ, remove JD original movement panel, install a custom panel, import my "driver" moves and voila, it works perfectly. Vid here : https://www.youtube.com/watch?v=G6Ksh2ETVa4 V2 edit : Roomba now drives at full speed ( added a metal bracket as a backrest so JD would not get thrown by the monstrous G-Forces :) + reverse beep sound effect.
 
Load the robot project into EZ-Builder
Get
Purchase EZ-Bits for this robot
Buy
 

Step 1

Add Humanoid Body as Chest and Shoulder Servos
  1. Connect Left Shoulder to Servo port D3
  2. Connect Right Shoulder to Servo port D2


Step 2

Add Humanoid Head with Camera as Head
  1. Connect RGB Eyes to i2c port
  2. Connect Camera to Camera port
  3. Connect Horizontal to Servo port D0
  4. Connect Vertical to Servo port D1


Step 3

Add Lever Servo - 90 Degrees as Left Upper Arm
  1. Connect to Servo port D4


Step 4

Add Lever Servo - 90 Degrees as Left Forearm
  1. Connect Servo to Servo port D5


Step 5

Add Servo Gripper as Left Gripper
  1. Connect Servo to Servo port D6


Step 6

Add Lever Servo - 90 Degrees as Right Upper Arm
  1. Connect to Servo port D7


Step 7

Add Lever Servo - 90 Degrees as Right Forearm
  1. Connect Servo to Servo port D8


Step 8

Add Servo Gripper as Right Gripper
  1. Connect Servo to Servo port D9


Step 9

Add Lever Servo - 90 Degrees as Left Upper Leg
  1. Connect Servo to Servo port D12


Step 10

Add Humanoid Left Foot Assembly as Left Foot
  1. Connect Ankle to Servo port D14
  2. Connect Knee to Servo port D13


Step 11

Add Lever Servo - 90 Degrees as Right Upper Leg
  1. Connect Servo to Servo port D16


Step 12

Add Humanoid Right Foot Assembly as Right Foot
  1. Connect Ankle to Servo port D18
  2. Connect Knee to Servo port D17