Let's Make Robots!

A spider called "Chopsticks"

Plays with brave children, runs from large fly swatters!
AttachmentSize
Chopsticks_servo_alignment.zip591 bytes
_28_servo_RedBack10.zip6.73 KB

I have seen a number of fantastic Hexapod style robots, most using laser cut parts and very expensive servos. Chopsticks is a robot Spider made from cheap standard servos, polymorph and yes you guessed it... Chopsticks!

Think of it as a Chinese version of Frits's paintsticks and hotglue philosophy.
I have added videos in YouKu as well as YouTube for my Chinese friends.
Detailed assembly instructions can now be found on Make Projects.

The disposable chopsticks are made from a very lightweight wood (Bamboo) that gives the chassis a good strength to weight ratio. The polymorph is much heavier by comparison but perfect for creating the custom shapes needed.

I am using 28 servos on this robot, 24 for the 8 legs, 3 for head movements and 1 for the mandibles. Because 28 servos are quite heavy and these are not heavyduty servos I cut the chopsticks in half to reduce the size of the legs and the strain on the servos. This should also increase the battery life.

The polymorph servo mount in the center of this leg piece slides along the chopsticks making it easier to get the servo in.

After some experimentation I now have one spider leg I am happy with. Just 7 more to be made :-)

 


 

Tues 5th of April 2011

I now have 4 left and 4 right legs made. This took a lot longer than I though largly because of waiting for the polymorph to cool. Occasionally the polymorph would be too hot and glue itself to the servo housings. Then I would have to pry/melt/scrap it off and start again. I rushed towards the end so if I ever need to replace a broken servo then I will probably have to rebuild half of the leg as well.

I've made a simple spine consisting of 2 whole chopsticks joined by 4 sections of polymorph. Now I need to work out how to mount the Spider controller and the batteries. Once I have it walking I will add the head and mandibles.

 


 

Sunday 10th of April 2011

I had a lot of problems when I had more than 16 servos connected at once. The power would "brown out" and the current indicated a short circuit. I built a sheild using some prototype PCB so that I could power the servos directly from the battery but I still had the same problem. This eliminated the Spider controller as a source of the problem.

If I connected the servos one at a time then I had no problems and the total current draw was only about 2A. I added 17x 220nF monolithic ceramic capacitors to suppress any noise being generated from the servos but the problem persisted. The servos I am using tend to twitch a bit when you apply power to them.

It seems that 28 servos twitching at once causes a current spike. Although my 2700mAH NiMh batteries should be able to handle the current surge I suspect that the battery holder is limiting the current. I switched over to a 7.2V, 4500mAH NiMh racing pack that I normally use for the Wild Thumper chassis along with the high power switch and heavy duty power cable.

This solved the brownout problem and allowed Chopsticks to stand under his own power. Since servos connected to an Arduino can twitch a bit while the bootloader is active I have added power FETs to my shield so that power to the servos is controlled by digital outputs D11 and D12.

I have wired my sheild so I have two banks of 16 servos that can be individually turned on or off. This further reduced the current surge and means that when the spider is standing still it can turn off the servos not used to support it's weight to conserve power. I did a quick test to see how much current is being drawn while standing still. At the moment there are only the 24 leg servos connected as I have not built the head yet.

Now that I have the robot powering up ok I can mount the battery and controller properly and tidy up the leg wiring. To begin with I need a frame to mount the PCBs on. Out come the chopsticks and polymorph.

Mounting the Frame was a bit tricky. The polymorph wanted to bond to the servos and the battery. I'm trying to keep this robot so that it can be easily disasembled for repairs which means NOT glueing everything together into one big lump.

After a bit of experimentation I got the high current switch mounted so thet the switch was easily accessible at the rear of the robot. The Spider controller is sitting high enough that the legs can fold up underneath.

After plugging in all the servos (24 for now) I tried to tidy up the cables a bit. I checked the weight. The robot is now 2.2Kg (4.85lb). At this point about 1/4 of that weight is polymorph. The rest is almost all servos and the battery. The chopstick weigh almost nothing.

Once I have the robot walking I can add the head and sensors.

Since it is a Spider robot it seems only right to use the IR compound eye but I am going to take things up a couple of notches. To begin with I will use multiple eyes to give the robot a wider range of view. Secondly I will increase the range of the eyes by increasing the maximum current that can flow throught the IR LEDs from 50mA to at least 250mA. As long as I keep the duty cycle down to 1% with a maximum on time of 100uS then the LEDs are rated for up to 1A of current.

 


 

Monday 11th of April 2011

My new heavy duty servo shield arrived today. I designed it specifically for robots like Chopsticks where the servos need a higher voltage and more current than the Spiders on board switch mode regulator can supply. I designed this PCB before the whole issue of switching power to the servos in groups came up.

Since my earlier problems were largely due to using batteries and wire that could not handle the current load I started off with some cable that had a 30A rating. I was not sure if these servos are 6V or 7.2V so I put some heavy duty diodes in series to drop the voltage to aproximately 6V. I use 4x 3A diodes in parallel to effectively make a 12A diode and put two of these 12A diodes in series to give me roughly 1.2V drop.

You can see this ugly lump of diodes cable tied to the frame.I am waiting to hear back from the servo factory as to the voltage rating of these servos. I'm hoping they are rated at 7.2V so I can ditch the diodes and increase the power of the servos.

I powered up the new servo sheild and everything worked fine. All my previous problems were due to underestimating the current requirements of 28 servos (I have seen the ampmeter spike above 10A on power up).

 


Wednesday 13th of April 2011

 

I now have the servo specifications from the factory and they are 4.8V - 6V servos. Good thing I played it safe. I decided to make a new sheild for the robot with a high current switch and voltage drop diodes mounted in the prototype area.

Now power to the servos is controlled by D12. When D12 is low the Pch FETs turn on. This allows the 7.2V from the battery to go through the diodes where it looses 1.2V and provide 6V to the servos. There is a 3mm yellow LED that lights up when D12 goes low to let me know the servos have power.

 


 

Saturday 16th April 2011

I am somewhere in China (Longnan City, JiangXi province) and I brought Chopsticks along to work on at night in the Hotel. I finally have him walking!

The gait I am using only lifts one foot at a time because he ways nearly 2.5Kg (5.5lb) and these servos are only cheap standard servos so they are struggling. If I replace 8 of the servos with stronger servos then I could change to a much faster gait that lifts 4 feet at once.

I managed to tweak the code to get a more reasonable speed. Added another video and attached the code for anyone interested in how I generate the gait.

Still a lot of work to be done, He needs a head, I wanted to add pan/tilt/roll and mandibles but unless I reduce the weight (LiPo battery would help) or replace 8 servos then I might have to stick with an array of compound eyes.

 


Sunday 17th April 2011

I am back in the office and had a chance to get Chopsticks doing basic maneuvers. Aside from moving sideways which I haven't had time for, the maneuvering code is mostly done. He sounds a bit like a drunken horse in the new video :D

I have attached the code as "RedBack4.zip". You will see that I had to break the walk sequence down into left/right legs for both forward and backward. In this case the speed for left and right legs range from -4 to +4 with 0 being stop. This allows gentle turns as well as turning on the spot.

 

 


 

Monday 18th April 2011

Now that I have the Chopsticks mobile I'm starting work on the head beginning with 4x IR compound eyes arranged as 2 pairs. I looked at photos of spider eyes on Google and decided that this robot should also have many eyes of which these are only the first 2.

On this robot I want to extend the range of the eyes to improve it's interaction with people. I am connecting more sensors in parallel which increases the amount of light being detected and the LEDs will be driven at higher currents. I hope to increase the range to around 1 meter.

To make this robot more interesting, these two "Primary Eyes" are on seperate pan/tilt kits mounted at 90 degees to each other. This allows the robot to track two objects simultaneously or use both eyes in stereo mode to determine distance with reasonable accuracy.

 


 

Tuesday 19 of April 2011

I upgraded the 8 "thigh" servos that support most of the robots weight from 5Kg/cm to 12Kg/cm servos. The robot now draws less power when standing still as the new servos are not struggling to support the robots weight.

This has allowed me to add a new faster walking gait. I've added a video showing the two gaits one after another for comparison.

 

 


 

Friday 22nd of April 2011

I've had a lot of trouble with the eyes. I'm not getting the range I hoped for. I've written some simple code just to get the robot to follow my hand which was complicated slightly by two very curious and completely independant eyes. I have attached the code as RedBack6.

I'm trying to keep the code for each eye relatively independant so that the robot is capable of playing with 2 children at once. Later I want to add personality to the robot. Planned personality features are:

  • Boredom when no moving objects are present for a certain period of time - go and explore
  • Fear when children have it trapped - curl up on the floor and play dead
  • Annoyance if you do not play nice - avoid you until you leave it alone
  • Sleepy if the batteries are getting low - avoid playing, move slowly to save power
  • Happy when receiving a lot of attention - more tolerant of negative traits like fear and boredom
  • Sad when ignored and cannot find a friend when exploring. May sulk or sleep.

To make the personality more realistic some traits will affect others, for example being sleepy will increase tolerance for boredom. A full battery will make it more eager to explore. Some traits will transform such as fear turning to anger if kept in that state too long.

 


 

Tuesday 26th of April 2011

I haven't had time to do much but I have begun on his personality. If something gets too close for comfort then he tries to hide. after a short while he looks about to see if it's safe. For anyone interested I have attached the code as version 9.

 

 


 

Friday 24th of June 2011

Chopsticks was announced the winner of MAKE magazines "Robots with character" competition.

 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

You Sir, made me wanna make my own. But i started with the junior version :D

Take a look if you have some time...

Yet Another Chopstick Robot

Hello,

 

Your robot is very cool! I am starting to gather the parts to build my own for my Physics term project, so this is my first robot(so exicited!). As i read into this project, i have found that things change (as you worked on it), and im having trouble figuring out exactly what parts i need for this project. Do you have a complete parts list available? also - for the production version you have little rubber feet pads that sence when it might step off a ledge, where could i find those?

 

Thanks so much!

 

Sal

There are full instructions here: http://makezine.com/projects/chopsticks-the-spider-robot/

You don't need to build a full 8 legged robot, if you search for "Chopsticks Junior" on LMR then you will see a nice little 4 legged version.

I found the makezine page, But the parts list at the top doesn't seem to cover all the parts in your writeup (such as the eyes, which i found). Im feeling pretty comfortable with the wood and poly part of the construction, im just concerened about properly following your electronic and wiring directions, there are parts soldered to your HD board (behind the diodes, i think they are mosfets?) that i dont see specs for. just trying to get the full picture before i start to buy parts.

 

as for chopsticks junior, i need something a bit more complex that i can spend the next 3 mounths tinkering with. 

 

Thanks

You will need the Spider controller: http://www.robotshop.com/en/dagu-spider-robot-controller.html

You will need the HD servo shield: http://www.robotshop.com/en/dagu-servo-controller-shield-spider-robot-controller.html

originally I had some diodes to reduce the voltage from 7.2V to 6V for some cheap servos but these days you can buy servos that can work on 7.2V.

The FET was to allow the processor to switch power to the high powered servos. This prevents them twitching (sometimes vilolently) when power is first turned on.

It is easier to just used DAGU's high current switch: http://www.robotshop.com/en/10a-to-60a-high-power-switch.html

I suggest you use servos with metal gears, especially for the hip and thigh servos as these have a lot of strain on them: http://www.robotshop.com/en/s06nf-std-servo-motor.html

You will need heavy duty automotive wires for the power. They should be rated for at least 20A. Since NiMh and LiPo batteries in particular can deliver very high currents when a short occurs you should also add a 20A fuse for safety reasons.

The Eyes are DAGU's IR compound eyes: http://www.robotshop.com/en/dagu-compound-infrared-sensor.html and are mounted on the DAGU pan/tilt kits: http://www.robotshop.com/en/dagu-mini-pan-and-tilt-kit.html

You will also need some servo extension cables of various sizes. These can be bought at any hobby store that sells RC models. If possible get heavy duty cables. The thin ones can limit the power to the servos a little bit.

I have listed parts from RobotShop simply because they are the only store I know that stocks all the parts. I do not know if they are convienient for you or not.

You can buy a complete kit however it is much more expensive because all the body parts are CNC milled from polycarbonite. This kit had some heavy duty push buttons on the feet so that the robot could detect an edge such as stairs. If you want to use an analog sensor then force sensitive resistors might be better.

http://www.robotshop.com/en/interlink-02-circular-fsr.html

 

Quick question about batteries,

http://www.amazon.com/Bioenno-Power-Lightweight-Battery-Models/dp/B008I7MB4K/ref=sr_1_1?ie=UTF8&qid=1392148325&sr=8-1&keywords=7.4V+battery+4500mAH

would this work?, its a 7.4V 4500mAH LiPo. or does it have to be a 7.2 4500mAH NiMh? im not sure what the difference is other then the slighty higher voltage.

 

Thanks!

 

6677 answered your question very well.

Overall I like NiMh because the output voltage stays relatively constant for 90% of the discharge cycle (stays at 7.2V or higher) where the LiPo will start at 8.4V when fully charged and steadily drop. At 6V the battery is considered flat and further discharge can damage them. 7.4V is the nominal voltage.

The only real advantage a LiPo has in this situation is weight. My 5000mAh LiPo is about 2/3 the weight of the 4700mAh NiMh.

The battery you show will do but I suggest getting at least 5000mAh as all those servos drink a lot of juice.

 

 

LiPo and NiMh have very different chemistries and handling precautions. LiPo definitely offer the superior performance as they have the higher discharge current, are available in higher capacities, self discharge slower (ie losing charge when not in use), can be charged at higher rates and weigh less than their NiMh counterparts but they do have increased danger. Do not overheat a lipo as it may self combust, do not overcharge them as they will self combust, do not trickle charge them for the same reason as overcharging them, do not discharge them too deeply and they don't like water either as it may combust (lithium ftw). If they combust they have a tendacy to go boom instead.

 

Not to scare you or anything :P We happily stick LiPo and Li-Ion batteries in phones which we hold to our faces. They just need handling with more care. Invest in a lipo cutoff, it prevents discharging the battery too far (3v per cell or less can kill the cell although sometimes you can resurrect them). You also need a specialist LiPo charger.

 

Get the cutoff (or alarm units are more common, or use an arduino analog input to monitor battery level yourself), get the charger and then just handle the thing with a bit of respect and I would imagine LiPo would be fine.

 

Take heed of oddbots note regarding diodes in series to drop voltage. Servo motors are usually only rated for a max of 6v and can be sensitive to anything more. In RC cars you tend to find that the ESC includes circuitry to regulate the battery voltage down to 6v for the radio and servo power as the 7.2V of a 6 cell NiMh will kill them otherwise.

Thank you so much!  I am sure i will come up with more questions as i move into the project, but ill try not to bug you too much.

Thanks again.

 

Sal

Make sure and shop around for the servos. You can get them for a lot less than $30 each.

Ebay and HobbyKing are a couple places where you can find relatively inexpensive servos. There are also servos with an added pivot point to make then easier to use in robots.

I also think OddBot's Chopsticks is a great robot. I was very intrigued to see such a cool robot made with such simple materials. Not having many chopsticks myself, I use popsicle sticks in my attempt to make an inexpensive hexapod. The micro servos weren't strong enough for such long legs, but it was still a fun experience.