Continuous (24/7) use of servos OK?

Viewed 44 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 yesterday
  • 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 yesterday
  • 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 yesterday
  • 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 yesterday
  • 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 yesterday
  • 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 yesterday
  • 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 yesterday
  • 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 yesterday
  • 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 yesterday
  • 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 yesterday
  • 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 yesterday
  • 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 yesterday
  • 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 23 hours 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 22 hours 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 22 hours ago
  • 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 21 hours ago
  • 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 21 hours ago
  • 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 21 hours ago
  • Ah, I forgot your second question: “… Is there a way to turn the servo off via the PCA9685 controller to lengthen its lifespan?” To turn off servo using PCA9685 might be difficult. If your PWM pulse width is small (500uS) servo moves to one side, and if big (1500uS) servo moves to the other side. If the width is out of the operating range, usually the servo stay at that extreme side, and perhaps all trembling. – tlfong01 21 hours ago
  • But a work around is like this, use another PCA9685 pin, not as PWM, but a High/Low logical level GPIO pin, my trick is just setting duty cycle set 100%. Now you use this PCA9685 GPIO pin TO CUT POWER TO SERVO, I usually cut LM2596 PSU, as described in my answer to this question: “Rpi3B+ / Rpi4B Watchdog and LM2956 / LM2941 PSU Remote Control Problem”: raspberrypi.stackexchange.com/questions/99584/…. – tlfong01 21 hours ago
  • Ah, I read th OP’s question again and I found I made a big mistake when reading the comment “… 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).. ” I actually interpreted the sentences: I wrong thought that “the lever was light, so no force is needed for the servo to move it”. Now I need to looked at my long winded paragraphs again, and see if over half of the paragraphs must be removed, in order not to mislead the readers, / to continue, … – tlfong01 1 hour ago
  • Actually I might have made a couple of very severe wrong assumptions on the OP’s question. For example, I might have, in the very beginning, wrongly assumed that the project uses RC (Radio Controlled) toy motors such as the very popular TowerPro standard toy servo, but the real thing might be a 10kg heavy industrial 3 phase 346VAC induction motor. Actually I have never seen a real wood stove in real life. Is it something used in a queen’s palace? I need to google this Sunday afternoon, … – tlfong01 1 hour ago
  • So I wikied and learned a new word: “Wood Stove” is actually is actually “Wood Burning Stove” for short. It has a chimney and so it is also called a “Chimney Stove”and a “damper” is used to control the air flow. Actually I never saw a real chimney, never knew how to correctly spell it. I do see it in XMas cards and also in books and movies. Anyway, I now have a rough idea of what is a “damper” and should be connected to what the OP’s “level” moved by the servo. – tlfong01 1 hour ago
  • Now that I know what roughly is a wood stove, I go to AliExpress to look at the real thing: AliExpress Outdoor ultralight titanium alloy wood stove multipurpose camping tent heating stove outdoor survival – US$270 (1) aliexpress.com/w/wholesale-wood-stove.html, (2) aliexpress.com/item/…, – tlfong01 53 mins ago
  • Now I know that the wood stove damper lever must be very light, as the OP says,. little force from the servo is required: (3) aliexpress.com/item/… XunHhuo Titanium Wood stove tent furnace (a) Tent stove’s main functions: keeping warm in the tent, cooking outdoors and boiling water / to continue, … – tlfong01 44 mins ago
  • (b) Type of fuel: dry wood and withered branches (indiscriminate cutting is prohibited) (c) Long-term heating method: reduce the chimney exhaust valve and oven door intake valve accordingly, and fill the hearth with firewood, which can last for more than 8 hours. (d) Safety Matters: Ventilation must be paid attention to when tent stove is used in tents (including other enclosed spaces) to prevent carbon monoxide poisoning. – tlfong01 43 mins ago
  • Now I know what a wood stove damper lever is like and a standard toy servo should be OK to move it: imgur.com/gallery/lfpWJ8n. – tlfong01 26 mins ago
  • To prevent carbon monoxide poisioning, perahsp the OP should consider using CO gas sensor: “Rpi3B+ Detect MQ9 Gas Sensor’s Carbon Monoxide Leakage, Without Using ADC?” (1) raspberrypi.stackexchange.com/questions/105116/…, (2) chat.stackexchange.com/rooms/100573/…. – tlfong01 2 mins ago   Edit

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 )

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: