Let's Make Robots!

How do I know when to give up on a servo?

ianverheyden's picture

Hi everybody,

First servo I ever tried to get running (on the Start Here bot) seems to be just not working right. I had originally plugged the cables into the PICAXE board the wrong way (ie black ground cable went where the white data cable was supposed to go, V+ red cable was plugged where it was supposed to be). I finally noticed this and corrected the orientation, but now the servo just doesn't seem to respond in a reliable way to basic commands. I tell it center (servo 0, 150) and it sometimes does, sometimes doesn't. It definitely is receiving juice because it's twitching away, just not in a reliable fashion with no decernable pattern to when it decides to move and when it doesn't.

Is this a common problem? I've checked out all the gear teeth and there's nothing amiss there. When do I know to give up on the thing and just fork out another ten bucks? Oh, by the way its a GWS S03N STD servo.

 

Thanks,

 

Ian

Comment viewing options

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

Whoa, thanks for all the help guys. It turns out that it was servo. I got my hands on another, plugged it in with the same programing and it worked fine. But thanks for explaining why theres always got to be that pause! I hadn't thought about that.

CHeers,

 

Ian

ignoblegnome's picture

Well, don't throw out that servo. If the board was fried, you still have a nice little gear motor in there. Or use it for spare parts if you have more servos of the same type.

GroG's picture

Never give up..
I have a bag of "broken" servos...  I never throw them away

My suggested strategy would be:

  • Order the Servo - if you can afford the $10 .. do it
  • Waiting for parts is torture, so in this difficult time, experiment like crazy on the "broken" servo
  • Try different Arduino libraries, different voltage levels, different power supplies..
  • Always scale..  start with the least risky, least invasive experiment to the most riskly..  (i.e. start experimenting with very small changes)
  • This way if you experiment and find the root cause you will have 2 working servos !  If the "broken" servo is really broken you will learn a battery of tests to preform on servos and your understanding of the details will have increased..

Good luck

Calculon320's picture

you'll know it's time to give up on the servo when you can test what you're doing successfully with another servo. until that point, you should keep troubleshooting.

lumi's picture

Besides Chuicks comment and OddBots help here is another possibility.

I also was wondering once when I tried my code and forgot to plug the battery in. Some of the hungry sevos just don't work with the provided USB power...so the servo just do unpredicted moves because of the brownout of the µC due the low current provided by USB

OddBot's picture

The servo cannot be damaged by swapping the ground and signal wires, it just doesn't work. Most likely your program is at fault.

As Chuck suggested, if your code tries to update the servo position faster than the servo can move it will give similar results. Try adding a 25mS delay between each movement of the servo. Make sure the servo is only changing position by a few degrees each time through the loop.

 

ChuckCrunch's picture

did you put a pause/ delay after the servo comand