Go Down

Topic: Servo slows down right before it stops. (Read 141 times) previous topic - next topic

Tofer

Hello.
Well, there is nothing new about it. The closer a servo is to a dictated angle the slower it moves. The slower it moves the less torque it performs. In my case it means it can't ever come to the position I need.
I've told already a have a simple follow focus project. I rotate a pot and my servo KST BLS 915 rotates a focus ring. But the focus ring is very stiff and when the servo slows down it can't come to a position. It just makes noises but when I rotate my pot a tiny bit back it becomes quite. Printing out the servo's position I found that the interval which it can't go through is about 2-5us. Is there a way to make something with a code to work it out?

Paul_KD7HB

Hello.
Well, there is nothing new about it. The closer a servo is to a dictated angle the slower it moves. The slower it moves the less torque it performs. In my case it means it can't ever come to the position I need.
I've told already a have a simple follow focus project. I rotate a pot and my servo KST BLS 915 rotates a focus ring. But the focus ring is very stiff and when the servo slows down it can't come to a position. It just makes noises but when I rotate my pot a tiny bit back it becomes quite. Printing out the servo's position I found that the interval which it can't go through is about 2-5us. Is there a way to make something with a code to work it out?
If what you write about the stepper torque reducing is true and I don't doubt it a bit, then you are reducing the current to the motor. The torque is the same for each step if the current the controller is providing is the same. Since you don't care to show the code, I guess you are disabling the controller and enabling the controller as you increase the time between steps.

But who knows?

Paul

outsider

Well, since the servo does not feed back a position signal telling the Arduino where it is (open loop control), the Arduino can only tell it where to go and and cares not where it went.  :)

Robin2

#3
May 18, 2018, 09:29 am Last Edit: May 18, 2018, 09:30 am by Robin2
I've told already a have a simple follow focus project. I rotate a pot and my servo KST BLS 915 rotates a focus ring. But the focus ring is very stiff and when the servo slows down it can't come to a position.
Sounds like a classic situation in which a much bigger servo is required.

Or lubrication.

...R

Two or three hours spent thinking and reading documentation solves most programming problems.

vinceherman

I agree.  Bigger servo.

Or, you might move the servo slightly past the target point and then back.
Before you give it a command, determine which direction it is from the current position.
Add (or subtract, depending on direction) the 2-5us.
Give the servo time to get there.
Then issue a new command for the actual position without the adjustment.

Johan_Ha

What #4 said. The new command is for making the servo stop buzzing. You could perhaps have a test program measure the current going to the servo. When the turning stops and the servo buzzes, it draws some current. When the new command turns the servo back, the buzz stops and the current goes down. Record how big the turn back has to be in all cases.
____________________

If you ask for help and write 'u' instead of 'you' because you think it's convenient, I will write 'no' instead of 'yes'. For same reasons.

Go Up