Page 1 of 1

RC Servo setEngaged(False) not relaxing servo

Posted: Fri Mar 06, 2020 8:17 pm
by Rhybot
Hello Phidgets Forums,

I have an 16X RC Servo Phidget (RCC1000_0), board version 110.

I am using a servo motor (https://www.amazon.com/gp/product/B076CNKQX4/), that when left powered, gets hot over time.

My setup is such that after motion, the servo has no load. To increase the lifetime of my servo, I am trying to relax the servo after motion.

The RC Servo API documentation says this under setEngaged().
This property is useful for relaxing a servo once it has reached a given position.
Thus, I am using this command:

Code: Select all

servo.setEngaged(False)
However, after disengaging the servo, I find it's not relaxed. When trying to move the servo horn by hand, it still stiffly holds position.

What am I doing wrong or missing? How does servo engaged/disengaged work under the hood?

Re: RC Servo setEngaged(False) not relaxing servo

Posted: Mon Mar 09, 2020 10:20 am
by Rhybot
One potential solution I've come up with is just interrupting the servo motor's power signal (red wire). I do this by adding a normally-closed (NC) relay between the RCC1000 and the servo motor, on the red (PWR+) wire. Cutting power to the motor definitely relaxes it.

Can anyone confirm that dis-engaging the servo actually stops any PWM signals coming over the white (PWM) wire?

My current solution is to make a wrapper on the servo motor, such that when disengage is called, it also opens the NC relay, preventing power from getting to the servo.

Re: RC Servo setEngaged(False) not relaxing servo

Posted: Sat Nov 06, 2021 2:17 am
by lpdemers
Hello,

I have the same issue. I got a 8 ch version 304.
It behaves the same result running Python or using their control panel in the system preferences on Mac Os.

If I remember, I did use older version of those controllers and they were able to de-energise the motors.

Is this a software/driver issue? I need to shut down power on the coils and I dont want to add relays, etc.

thx,
LP