Strange noise on motors
Hello again.
I'm having a very bad experience with my new motors. They are Futaba standard servos. I don't really know what happened to them. I'm posting two videos so the more experienced people can see what is the problem and pleeeease help me out with this.
The motors are getting stuck all the time and do a very strange and creepy sound
Plus, can somebody give me a code example to control a standard servo? i saw the code on the servo's technical page. but i cannot understand the logic. I programed a servo in the exact way that says in the technical page with different numbers but i cannot understand the big idea.
The videos are at youtube.com
MOV00387.MPG <-- showing the noise i'm talking about.
MOV00388.MPG <-- I don't know what happened to this motor. I just gave a simple instruction to move to a certain position but this happened.
I'm having a very bad experience with my new motors. They are Futaba standard servos. I don't really know what happened to them. I'm posting two videos so the more experienced people can see what is the problem and pleeeease help me out with this.
The motors are getting stuck all the time and do a very strange and creepy sound
Plus, can somebody give me a code example to control a standard servo? i saw the code on the servo's technical page. but i cannot understand the logic. I programed a servo in the exact way that says in the technical page with different numbers but i cannot understand the big idea.
The videos are at youtube.com
MOV00387.MPG <-- showing the noise i'm talking about.
MOV00388.MPG <-- I don't know what happened to this motor. I just gave a simple instruction to move to a certain position but this happened.
Comments
A pulse, from one millisecond to two milliseconds in width (depending on desired output position) repeated every 20 milliseconds to 50 milliseconds. Period.
Don't try to repeat the pulse more often, that's outside the specification and simply won't work.
Now, the 'plain vanilla' BS2 "PULSOUT" command is in 2 uSec units. So, to get a 1 millisecond pulse, you give it 500 ( 500 * 2 uS == 1 mSec). To get a 2 millisecond pulse you give it 1000. And to make it 'stop' you send it a 'center' position command -- which is a pulse of 1.5 mSec, or 750.
Now, you still need to 'refresh' the commanded position every 20 milliseconds, or the servo won't "hold" position.
So, what 'flavor' BS2 do you have, and what does your 'control' code look like?
http://www.parallax.com/Portals/0/Downloads/docs/prod/motors/stdservo.pdf
The truth is that these little servos are fragile and the long arm you built has very high load requirements. The internal gears are nylon and the tiny gear teeth get damaged easily. Servos are intended for low loads and fast response, you need just the opposite. The old saying about "cheap, fast & accurate, pick two" needs to be amended to read "cheap, fast, accurate & strong, pick two".
There are "high torque" servos out there with metal gears (cheaper servos use nylon) that can cost $100 and up. They would last longer in your arm application, but IMHO I doubt if you will get great accuracy from them. They still use fairly cheap potentiometers for position sensing, and their repeatability is within a few degrees. That's fine for a servo horn arm length of an inch or less, but your joints each appear to be 12" or longer. The longer the arm, the more the error will likely be. Also affecting your accuracy: your long joints will flex, and your drive belts will stretch a bit under load.
If you want to continue using servos, I would recommend scaling your arm down to one-third of its current size or less. Your results will be better and the servos will last longer.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
·"If you build it, they will come."
-Phil