My Robot

So I’ve been working on a robot…

I’ve succeeded at making it autonomous… kind of… well it works most of the time. Before about a week ago it was a big mess of wires. Then I etched a circuit board so that it wouldn’t be a big mess of wires. Then i realized that I swapped the headers on the motor controller board… so again… it is a big mess of wires. To fix this I’m going to make a patch board that swaps the headers again. Here’s a video of it before the custom board was added (please excuse the crappy quality)

As you can see in the video, an LED turns on when it sees something and reacts. This was more of a debugging feature, but it lets you know that it is seeing things and reacting accordingly.

So anyway, there is a 180 degree servo in the front with a ultrasonic range finder mounted on it. This is the eyeball. It looks forward, right, and left for anything within a certain distance. If it finds anything close enough when it looks in one of those directions, then it reacts accordingly. If something is too close in front of it, it turns about 90 degrees to the left and continues onward. If it sees anything too close to the right or to the left, it turns a little left or a little right, respectively.

Below is the custom PCB with no parts on it. I used muriatic acid and hydrogen peroxide to etch it (more details on that process here)

custom board with almost no parts on it

Here’s the board with all the parts soldered in

Custom PCB with parts soldered in

And here’s the board on the robot. You can see how much of a mess it is because of my mistake with with headers. I was really hoping to avoid this, but I’ll fix it with a patch board.

I’ve put headers on the board for my wireless receiver module (seen below). However, when I implemented control through the WiiChuck using this wireless module, it couldn’t receive a signal after the bot started moving. Maybe I’m getting noise on the lines because of the motors? I don’t know. If anyone has an idea what the problem is then let me know.

The next step is to get the robot to use the gap counters to map out the dimensions of the room it is in. Essentially I’ll figure out how far the robot goes for one full rotation of the tracks. Then I’ll have to figure out angles and whatever else… should be fun. (more on the gap counter)