Monday, November 30, 2015

Fix for adding Servos on the Arduino Analog Port/Pins of Servo/Sensor Shield

Over the weekend I found and fixed the design bug that prevents servos from working properly when they are connected to the analog port connectors of the standard servo/sensor shield.  The problem is that the logic five volts is always used to power those servos.  If there is any load on the servos they will overload and shut down the logic five volt voltage regulator.  The fix involves cutting two runs and adding two jumpers.  This change is needed to route the five volts around the servo connectors.
The problem showed up with my spider robot project.  Some servos tried to come to life without the six volt power supply being turned on.  It took a while to figure out where they were getting their power from.  The logic five volts was being pulled down to about two volts!

Also do not forget to remove the green jumper near the six volt power input screws.  It will also short the five volt logic power into powering the servos.  That could seriously damage the Arduino!

Another thing you might need to do to use more than 12 servos is to change a line in servo.h.  This limit gets mistaken as to why servos do not work on the analog pins.  There are usually 12 servos already on the digital pins and when you try to use the analog pins you have exceeded the 12 servo limit.  The line says something like "Maximum servos per timer = 12" and you will need to change it to 18 or even 20 if you want.  I have made the change months ago and it does not hurt anything to increase the maximum servos per timer.  Servo.h can be found in your Arduino/libraries/servo folder.

While working on my "Spider" smoke rolled off the Servo/Sensor shield.  This time a run had burned off the board!  I never had these problems with my home made servo shield!  Here is a picture of the burned run in the top left corner:
Here is the cure for the burnt run as well as a cure for the power distribution issues.  basically you take power from the screw terminal and distribute it to the top and middle of the 16 digital pin servo connectors as well as to the top of the 6 analog pin servo connectors.  With this change the spider worked perfectly.

While I am showing fried stuff, here is what happens when you buy a cheap servo on eBay:

Get real servos that say "Tower Pro" not "TowardPro".  Do not buy them if the seller intentionally hides the manufacturer name.  There are a lot of junk servos on eBay!

Another issue I just confirmed is that all HiTec servos work in the opposite direction of all other servos.  I now have five HiTec servos!  There are two options: Sell them or figure out how to reverse them internally.  I might do that and then post on how to reverse them.


Friday, November 20, 2015

Arduino Powered Hexapod/Spider 18 DOF Robot

My next project is a six legged robot.  I look at these projects that are all using an Arduino Uno and servos like they are a modern day version of the "erector set" that I played with as a kid.  This is a more economical way to build these various projects instead of buying several expensive kits.  Basically I am using the same parts to make all of the following projects:
5,9,13,17 DOF Humanoid robots
14 DOF Dog robot
17 DOF Dinosaur robot
18 DOF Spider robot

I have looked at several hexapod designs and so far I have been able to reproduce the body using standard parts.  The other designs use two custom plates spaced about two inches apart.  My design uses:
4 - Angled "U" brackets
2 - Straight "U" brackets
2 - Waist brackets
4 - Straight brackets
2 - "L" Shaped brackets.

Here is a top view of my design for the hexapod body.

This next picture is a side view of the hexapod body: 

So now to collect at least 18 servos to make it work.

I decided to make my own lower legs.  I used a picture from a kit on ebay and blew it up to the actual size.  Then I cut it out and used it as a model.  These legs were cut out with a hand held jig saw.  They did not look that good in clear plastic so I painted them black.

This is after two coats of paint.

This is what they look like on the assembled spider.  They are still a little rough.

 Here is how I assembled the servo mounting brackets.  Then I added the servos and then mounted them on the robot.

 The Arduino mounted real nicely using some of the existing holes in the bracket.

Here is the completed spider as far as the mechanical assembly.


Monday, November 9, 2015

Walking "Dog" and "Dinosaur" 17 DOF robot from Humanoid robot kit.

I plan on making some more creations besides the 9, 13, and 17 DOF humanoid robots from the robot kit.  The next one is this 14 DOF "Dog" robot.  This is actually the third revision and there will be more to come.  As you can see I have had a hard time with attaching the "tail".  The "Mouth" is a robot hand or it was....

He is starting to work.  Here is the latest picture of him.  He lost his "feet" and has a more solid rear end.
And now for his first video appearance.


The next thing to do is to add a tail and make him into a dinosaur.

Here is the dinosaur video.


He has now grown to three feet long and has LED eyes.

Here is his second video with greatly improved software.