Continuous (24/7) use of servos OK?

Viewed 29 times

I’m using a Raspberry Pi, a PCA9685 controller, and a servo to control the air intake lever on my woodstove based on stove and room temperatures. My code adjusts the servo position every 2 minutes and there is no force from the stove lever on the servo except when it’s moving to a new position (and the servos were perfectly quiet when idle). The system runs 24/7 and is working great. Except that now two servos have burned out – the first lasted 6 weeks and the 2nd one only 4 (seems the internal electrics failed, all the gears are fine). Are servos designed to be “on” 24/7 for months at a time? If not, is there a way to turn the servo off via the PCA9685 controller to lengthen its lifespan?

  • Nothing to do with the Pi. There should be a better stackexchange site for the question. – joan 14 hours ago
  • 1
    The expected lifespan should be specified in the documentation. If they don’t last as long then (a) they’re crap or (b) you exceed the maximum ratings while using them. – Dmitry Grigoryev 9 hours ago
  • 1
    Common servos are built for radio controlled models and are not designed for 24/7. Expect to pay much more for better rated actuators. – NomadMaker 7 hours ago
  • Well, there are 101 tricks, Rpi or non Rpi, to make your servo last longer, or for ever: (1) Use metal geared servos, they worth your extra money, (2) Use not so crappy servos. let me know the web link of your servos, if they are the brand recommended by most Ri official tutorials, I am happy to give an evaluation basic on spec reading and do a stress test for you. (3) Your remark “no force from lever” is very likely WRONG. Show me a photo and I can estimate the force applied to your poor servo, and perhaps suggest how to reduce the loading on the servo, … Cheers. – tlfong01 6 hours ago
  • You might like to read the following article, saying that the industrial grade servo’s MTBF is round 20k hours: So crappy toy motors is hard to say 🙂 Lifespan of a Servo Motor blog.repairzone.com/lifespan-of-a-servo-motor – tlfong01 4 hours ago
  • As the expert says, lower servo speed lengths servo life span. So perhaps you thing you can try is the following: (1) Modify your Rpi python program to slow down the servo speed by moving servo in many small steps instead of one big steps. For example, if you want to move the servo from say 90 degrees to 180 degrees, you don’t specify the duty cycle for 180 degrees. Instead you say, 95, 100, … 180 degrees. – tlfong01 4 hours ago
  • There is an Amtel 4 bit mcu inside the servo, adjusting the carbon film pot which is sort of feedback control. So if you move the carbon film pot contact slowly in small steps, the wear and tear, also fiction causing heat might be smaller. This way, even crappy hobbyist servos MIGHT last 3 times longer, … 🙂 – tlfong01 4 hours ago
  • And one good thing of moving slowly in small steps, instead of one abrupt big step is that in the last steps before settling down, there is smaller overshoot/undershoot, sort of ringing which are indeed oscillations, causing unnecessary to and fro movements and therefore more wear and tear. – tlfong01 4 hours ago
  • You can arrange you moving steps as trapizoidaly PID pattern: in the beginning bigger steps until you reach the plateau speed, then smaller and smaller steps when reaching the end. So you will see air intake level sort of “fading in, fading out” moving, making your crappy cheapy servos move like the CalTech rocket scientists designed space ship’s flaps, slowly and elegantly, and as I used to say, your neighbours will from now on respect you more than you deserve. Cheers. – tlfong01 4 hours ago
  • One more thing, your poor servo is actually NOT moving continuously 24/7, but only one little movement every two minutes. In other word the servo’s duty cycle is only perhaps 5 seconds movement every 120 seconds, or 5/120 == 4%. In other words it is 96% idle. Otherwise your crappy servo would break in perhaps 24 hours. 🙂 – tlfong01 4 hours ago
  • Yes, one more trick to prolong your life, I mean your servo’s life is the following: As you said, the stove air intake level needs “no force” or little torque, then you power the servo with a lower voltage: The spec for torque and speed is summarized below: (1) TowerPro MG995 Servo Spec servodatabase.com/servo/towerpro/mg995 Torque: 4.8V: 130.54 oz-in (9.40 kg-cm) 6.0V: 152.76 oz-in (11.00 kg-cm) Speed: 4.8V: 0.20 sec/60° 6.0V: 0.16 sec/60° – tlfong01 3 hours ago
  • The servo spec of power supply is 4.8V to 6V. But usually hackers “over clock” to stretch/stress to limits of 7.5+V for higher torque and speed. In you case you neither need high torque nor high speed, so you can do the opposite, “under clock”, ie, decrease power supply to 4.5V or even lower. Now speed and torque are lowered which you never mind, but you should be happy to live longer! – tlfong01 3 hours ago
  • I understand you are using PCA9685 which I found hard to mess with the 24 bit control word to vary, say the duty cycle. Using Rpi’s 4 built in hardware GPIO PWM pins is 10 times easier to develop python programs. You can find a couple of debugged python PWM controlling servo program examples in these posts: (1) “Control PWM duration with python”: raspberrypi.stackexchange.com/questions/108358/…. – tlfong01 1 hour ago
  • It is not clear what you meant by “gears OK, internal electrics failed” Usually it is the motor getting too hot and burned, or also the loading is too high, or gets stuck at the extreme points when not able to move further, the motor stalls and the current is excessively high, may be a couple of times than usual, so if the servo is using metal gear, then the motor curns out. I attach a picture of the servo, in case you would like to tear down the servo, and use a multi-meter to check the resistance of the motor coil: imgur.com/gallery/eFNWgwO. – tlfong01 3 mins ago
  • As John Maynard Keynes says “In the long run we [servos] are all dead”. Usually expensive servos [like rich people] live longer. So you need to make an engineering trade off or business cost benefit analysis. You may like to read the following on why crappy servos live shorter: Why are servos so expensive? – Earlwb, RCgroups 2009sep12 rcgroups.com/forums/… / to continue, … – tlfong01 2 mins ago   Edit
  • There are a lot of sublities involved. You can have two different brand servos that appear to use the same case and look the same superficially. But the cheap servo uses the cheapest parts the company can get and still have a working servo. The servo would use cheaper plastic gears a cheaper motor, cheaper feedback potentiometer, cheapest controller they could find and smaller guage wires even (less copper is cheaper). – tlfong01 46 secs ago   Edit
  • Then the servo may not have good accuracy, slower movement, higher current draw and may not be very good at centering. The factory uses the cheapest labor they can get to assemble the servos, and skips quality control almost completely. Quality control is actually fairly expensive. Then they do not have a warranty program, no repair capabilities, no spare parts, no returns. They have little or no interest in their image in the marketplace, only sell, sell sell and sell more. – tlfong01 17 secs ago   Edit
  • On the other hand the higher end more expensive servo uses higher quality parts. Better high grade plastic gears, machined to a higher more precise tolerance, better motor, better poteniometer and a much better controller circuit. So the servo tends to be faster, more precise accuracy and centering and draw less current doing it all. The company has some quality control program in effect (quality control is expensive). They usually offer warranty program, and have spare parts available too. Plus they care about their image in the marketplace too. – tlfong01 just now   Edit   Delete

Categories: Uncategorized

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: