Page 1 of 1

Question about about servos (jitter/buzzing/struggling)

Posted: Wed Oct 05, 2016 3:26 am
by datguy.dev
Greetings,
Recently bought a meArm. I'm using MG90S 9g metal gear micro servos and a PCA9685 16-Channel 12-bit driver. One thing that concerns me about this arm is the servos sometimes are in a position where they buzz. They buzz even when not under any stress. Though sometimes they don't buzz in certain positions; random. It kind of sounds like a bees nest when its not moving. :D

This buzzing is generating a lot of heat for the motors in the servo. I've ran a rather stressful test and it seems like they should work for my application. But I want to get more powerful micro servos and would like to avoid this buzzing if possible.

Any advice?
Thanks

Re: Question about about servos (jitter/buzzing/struggling)

Posted: Wed Oct 05, 2016 6:19 am
by joan
The most likely explanation is you are telling the servo to try to move beyond its physical end stops. If it had plastic gears they would probably have been stripped.

The standard servo range is to accept pulses between 1000 and 2000 µs long. That range should be safe for any servo. My cheap 9g servos accept pulses in the range 500 to 2500 µs long.

The acceptable range is broadly defined by the make/model of servo you buy, and there will be small variations on a servo by servo basis within each make/model. You need to establish the range by (cautious) experiment,

Re: Question about about servos (jitter/buzzing/struggling)

Posted: Wed Oct 05, 2016 4:10 pm
by datguy.dev
Thanks for replying, but I strongly don't believe that is the issue.

The arm can move to the full extent of its motion without reaching the limits of the servos. There is additional room and I have to make sure to use values which don't exceed that range of motion. For instance, if the specific servo can do 300,600; min/max. I'll just have it do 400,500 while testing.

Re: Question about about servos (jitter/buzzing/struggling)

Posted: Wed Oct 05, 2016 4:32 pm
by ewaller
Do you have a scope to see if the control output is jittering?
If you dampen the servo output with a finger, do they settle down?
Is you program continually writing to the port, or does it only write when a change needs to be made?

Re: Question about about servos (jitter/buzzing/struggling)

Posted: Wed Oct 05, 2016 5:11 pm
by datguy.dev
ewaller wrote:Do you have a scope to see if the control output is jittering?
If you dampen the servo output with a finger, do they settle down?
Is you program continually writing to the port, or does it only write when a change needs to be made?
Nope. Pushing them to relieve stress stops the buzzing, but it is a very tiny window. Writes once, because that is the drivers job.

I made a short video demonstrating the buzz. https://youtu.be/Jplor6R2NJ4 https://youtu.be/s9QCqEh3y4Q

Hopefully that clarifies things a bit better. Note: The most bottom servo is 'crunchy' and you'll hear it. I received a defective servo and have a replacement in the mail. It works normally but just sounds awful. The additional bits are a current sensor hooked up to a digispark Attiny85, that blinks its LED when the servo is "under stress." The DC convertor board only takes the digisparks 5v output down 1.5v so its Pi safe.

Re: Question about about servos (jitter/buzzing/struggling)

Posted: Wed Oct 05, 2016 5:26 pm
by ewaller
I won't be able to see the video until I get home tonight.
What happens if you take the current sense out of the circuit and shunt it? I'm wondering if is creating enough IR drop on the power rail to the servo to cause the servo to get squirrelly

Re: Question about about servos (jitter/buzzing/struggling)

Posted: Wed Oct 05, 2016 5:48 pm
by datguy.dev
ewaller wrote:I won't be able to see the video until I get home tonight.
What happens if you take the current sense out of the circuit and shunt it? I'm wondering if is creating enough IR drop on the power rail to the servo to cause the servo to get squirrelly
This buzz occurred even before I added the sensor.

I've added another video to the previous post showing just the claw moving; if that helps at all? It is closing to a random number between 600 & 625, on purpose to show how the position could be relative to the buzzing. It maybe just these servos aren't strong enough to reach certain positions.

Re: Question about about servos (jitter/buzzing/struggling)

Posted: Sat Oct 08, 2016 12:36 am
by datguy.dev
bump

Re: Question about about servos (jitter/buzzing/struggling)

Posted: Sat Oct 08, 2016 12:53 am
by mikronauts
could be:

- poor power supply stability

- poor quality potentiometer in the servo

Re: Question about about servos (jitter/buzzing/struggling)

Posted: Sat Oct 08, 2016 7:54 pm
by datguy.dev
mikronauts wrote:could be:

- poor power supply stability

- poor quality potentiometer in the servo
Its not the power supply.

Re: Question about about servos (jitter/buzzing/struggling)

Posted: Sun Oct 09, 2016 3:49 pm
by mikerr
You can also stop sending pulses altogether once the servo is in place. I.e. turn off servo. (Detach)
The servo should stay where it is if it isn't under mechanical stress.

Or try a 100uF electrolytic cap right on the servo power lead.

Re: Question about about servos (jitter/buzzing/struggling)

Posted: Sun Oct 09, 2016 5:01 pm
by scruss
Sounds like standard servo noise to me, but then I'm used to driving servos from fairly poor-quality PWM sources.

As mikerr suggested, a big cap across the power lead might quiet this down. Startup currents can be quite large for RC servos.