After lots of thinking about what my next robot should look like, I couldn't resist the temptation of trying to improve Edward. I never really made a good program for him and everybody who sees him ask me to switch him on and let him run around. When they do, i shrug and tell them "the batteries are dead" or "I'm still working on the programming".
So while I was waiting for my circuit boards to arrive, i decided to write a decent program for Edward to be able to properly demonstrate him whenever anyone would ask. But soon I came to the same frustrations I had when I had just made him: His display kept resetting and flashing the backlight when the motors change directions too suddenly and more importantly: he had no arms.
One thing led to another and I started altering his board. Adding more and bigger caps, more pins and so on.
Here is a picture of the new and improved board. See
how I managed to squeeze in two big 470uF caps before and after the voltage regulator? That totally cleaned up the resetting display problem
Now I figured I could manage to give Edward arms and hands. I would need extra output pins to control the servo's and I had to add pins to the two remaining analog inputs on Edwards board. To make things worse; I have to fit it all inside this spaghetti you see on the right here.
To provide the needed output pins, I made the smallest 4 channel servo driver I could think of. A picaxe 08M without a board. Pin 3 is used for serial input from the main board and pins 0,1,2 and 4 are used for driving the servos.
The messy bottom of this thing will be "encased" in a ball of hot-glue to prevent shorts. That is important as I intend to chuck it somewhere between the ever growing ball of wires inside Edwards belly. Off course i will hold off the glue until this thing is fully tested. I dont want to find out that I need extra caps or that I have a loose wire after I poored glue all over the contacts and soldering points.
I am currently in the process of writing the program for the servodriver. It needs to be done on a breadboard, because there is no decent way to connect the programming serial jack to this mini contraption.
Edwards arms are done. Mostly glued instead of skrewed, just to keep things smaller. I have yet to decide on how to build the hands. The aluminium pipe I used is reachable in the arm, so there is a possibility of running wires to the hands.
I was thinking of putting an LED and a phototransistor in each hand. When the hands are positioned correctly, the light from the LED will shine directly into the phototransistor in the other hand.
This makes it possible to detect an object that is sitting between the two hands. When the light from the left hand doesn't reach the sensor on the right hand, an object is inbetween the hands.
When the hands move towards the object, the photo transistor will pick up the reflection of the object until the hand touches it, blocking the light from the LED to the transistor. Off course, this has to be done without interfering with the IR sensors that monitor the tracks and it has to fit into hands that do not look like Edward is a goalkeeper for the local ice-hockey team.
Anyway: when I have programmed the servo driver and when I have Edward doing some cool moves, I'l update his main page. Any experiments on the hands, will be on a separate blog page.