After making good progress on my robot arm, it became obvious that to be useful the arm could not remain confined to a table. Instead it had to be mobile. So the next logical step is to build a platform that would be able to move around and eventually have an arm (or maybe even two of them) attached.
So I started experimenting with wheels and motors, which led to Hawi: a holonomic drive platform, which instead of using omni-wheels, simply rotates all four wheels completely independently.
This is achieved by mounting each wheel on a servo.
Of course Hawi is a work in progress, I expect to upgrade different parts as needed, just like I did with my robot arm.
Here is a video showing Hawi in action:
An Asus Eee PC Netbook is the main brains. It runs the software that commands the microcontrollers and servos. It’s pretty basic for the moment as just uses the keyboard for commands. It’s not very pratical to chase Hawi and type on his keyboard while it’s moving. So I use VNC and control it from another laptop.
Under the belly:
- 2 Arduino Duemilanove controllers are used to drive the h-bridges and handle back-emf. Each Arduino handles 2 DC-motors.
- A PhidgetAdvancedServo 8-Motor is used to handle the 4 servos that control wheel direction.
- 4 L298 H-bridges from Solarbotics: one per DC-motor. Although each L298 can handle 2 DC-motors, the way I wired back-emf only allows me to control a single DC-motor, as explained here.
- Power is provided by a 12V sealed lead-acid battery.
Wheels, motors and gearbox are all from banebots:
- BaneBots Wheel, 2-7/8″ x 0.8″
- 64:1, 36mm Planetary Gearmotor
- RS-540 Motor
The wheels are mounted to the chassis through a 3″ lazy susan, and you can almost see the HS-322HD servo under the wheel.
Mechanically Hawi can handle pretty heavy weights. The wheels are mounted to the platform through 3″ lazy susan bearings, and both ends of my motor shafts are supported by bearing blocks.
I’m turning the wheels using cheapo HS-322HDs, they work for now and were even able to turn the wheels on carpet. I may have to move to something with more torque in the future though, or maybe get rid of the servos entirely (but that’s a whole other subject).
As far as electronics are concerned, my h-bridges are going to be my first limiting factor. I’m currently using L298s, which are limited to 2 amps. This is far below the stall current of my motors. So far I’ve been able to get away with it by adding heat sinks. The good part is that they are cheap to replace if I smoke them 🙂
But for now software is main area that needs to progress. Using VNC to remote login into the netbook was a quick but limited solution. Hawi’s software needs to have its own client-server code.
And of course Hawi needs to become more autonomous, by receiving high-level tasks and figuring out how to accomplish them, instead of the forward/backward commands it handles now.