Build, learn and share robotics.
New to this site? Get started here to share your creation

Made with bits borrowed from other projects, Mr Hairy attempts to navigate around things. He has a single infrared sensor mounted on a servo to scan for obstacles. Main components are an old Arduino Duemilanove, a Pololu Qik 2s9v1 serial motor driver and two 30:1 low power micro motors.
Mr Hairy has been a few things in the past. He has a lot of extra wires because there are wheel encoders and a motor controller board underneath. This is a work in progress.

The goal of Mr Hairy is to have him navigate around objects effectively while exploring the surroundings. In a previous life he also had four mechanical switches to detect when he ran into things. They kept breaking off as I had hot glued them on. I plan to put some short range sharp sensors on instead.

The video below shows that just one sharp sensor makes it hard to avoid things as the beam on the sensor is quite narrow plus at this stage the code isn't very smart. The sensor sits on a servo and scans left-right for anything too close. If something is in front the robot will turn to avoid it but it doesn't work out the best way to go or the angle where the obstacle was detected.

Here is the first attempt at getting around in the kitchen. He gets completely stuck on a tin of paint.

Putting Together

I soldered some capacitors on the motors to help with noise suppression with the for the motors. Then screwed the motors, wheels and encoders onto the RRC04A chassis. The Pololu motor driver was held down with 3M picture hangers. These are like super Velcro.

Next up the Arduino board was mounted on top with a few spare standoffs.

Then the proto shield and a lot of wires! Things are getting out of hand. I think I will need to rethink this.

The servo was also mounted on the front with some 3M sticky Velcro and the Sharp sensor was stuck on the servo horn and the battery pack mounted on the back with more 3M stickies.

Here's what it looks like from the back.


And underneath

The motors are driven by the Pololu qik2s9v1 motor driver at 7-9v depending on the batteries which are wired to the motor driver. In the video above they are only running at 70% power.

The batteries are plugged into the DC jack socket of the Arduino board. It's on board regulator is used to power the servo and the sensor.

Next Steps

Mr Hairy is not very good at getting around. The 4-30cm range of the sharp sensor doesn't give much time to react to things in front. Also, the code doesn't work out where the obstacle is, only that it is somewhere in the servo's sweep.

I plan to add some short range sharp sensors to detect objects to the side and behind the robot and either use another longer range sharp sensor or an ultrasonic to detect front object. The code will be changed to determine where the obstacle is in order to make a better decision on where to turn.

Parts Used