Sizing a servo for my project - does this motor have enough torque?

Hi everyone,

I am pretty new to all this arduino and DC motor stuff, so this is probably a pretty noob question, but how do I know if this DC motor is the right size for this application?

I am making a motorized trap door so we can train our cat to enter and leave at his own will. The servo I'm using is 20kg/cm, 4.8V-6.8V (and its connected to 5V power). Take a look at this video with sound on and tell me if you think this motor is overloaded. It goes up much slower than it goes down, which I guess is normal because of gravity, but it sounds to me like it might be struggling but I'm not sure. Sometimes it makes sort of clicking sounds as it holds open at the top.

Link to the video on YouTube here

The door is made out of 1/2" plywood and its dimensions are about 9cm W x 38cm H. The force is applied to a point on the door that is about 11cm down from the hinge point. I dont really know how to calculate torque. Do I need a large servo? The next size up is 35kg/cm. Or should I tree to connect it to 6.8V? OR does it seem fine to you guys?

Thank you in advance for any info!!
Ian

AT this point you don't need to calculate torque. You need to MEASURE the force required to raise the door. Remember the plywood will swell and get harder to move during your wet season.

So, go to your local hardware store and buy a spring scale that will measure the pull necessary to raise the cat door. Then you can compute the torque necessary to apply the force to raise the door.

Paul

Difficult to say much without knowing exactly what you are using to power the servo and what code is driving it. Certainly it will have more potential power on a higher voltage.

Steve

The servo will probably have 25% more power when operated at 6v instead of 5v. You can take some load off of the servo by putting a counter weight on the door top so it is somewhat balanced on the hinge. You might use the forum search tool and search for "coop door" to see many similar projects.

ianmurphy:
The door is made out of 1/2" plywood and its dimensions are about 9cm W x 38cm H. The force is applied to a point on the door that is about 11cm down from the hinge point. I dont really know how to calculate torque. Do I need a large servo? The next size up is 35kg/cm. Or should I tree to connect it to 6.8V? OR does it seem fine to you guys?

Firstly servos are not normally able to work heavy loads at all - they simply overheat if holding their
max torque for any length of time. Metal cased servos are better at losing heat and will be more robust.

Torque is simply the product of a force with the distance between the force's line-of-action and the axle.

It is not a ratio, the units are newtons x metres, written Nm, or Ncm, or whatever - no division!!!

I estimate your door mass at about 0.35kg, so its weight is about 3.5N, the centre-of-mass acting 19cm
from the hinge, so torque to hold it fully open is 0.19 x 3.5 = 0.67Nm.

With the actuator operating 0.11 from the hinge it needs a force of 0.67 / 0.11 = 6N

Without knowing more about the mechanism I get stuck there. And I've ignored hinge friction.

Thanks everyone for all the input. I finally bought a scale and measured the weight of the door as Paul suggested. It is about 2.2lbs, plus I will be adding about 0.3lbs of insulation so, to round up, I will assume 3lbs. The radius from lift point to the motor output shaft is about 6inches, so it will require about 18in-lbs of torque which is 20.7kg/cm which is very close to the upper limit of the motors capability. Motor specs are as follows: '

Stall Torque (5V): 19 kg/cm (263.8oz/in)
Stall Torque (6.8V): 21.5 kg/cm (298.5 oz/in)

I will connect the motor and the Arduino to 7V to illuminate the need for any voltage conversion. I know I am running the risk of burning out the motor by operating it at 7V and max load, but it has metal gears and has a very small duty cycle - it only gets used for a few seconds at a time and only a couple of times a day.

If anyone thinks I made a mistake in any of my assumptions let me know! All opinions welcome, thanks again for all the input.

Scratch that, I can't find a 7V power supply, so I will get a 12V power supply for the Arduino and use a buck converter to step it down to 6.8V for the motor. If there is a better way to do that please let me know.

Thanks
Ian

ianmurphy:
Scratch that, I can't find a 7V power supply, so I will get a 12V power supply for the Arduino and use a buck converter to step it down to 6.8V for the motor. If there is a better way to do that please let me know.

Thanks
Ian

That wasn't so difficult, was it? BUT.... did you use the scale to measure the "weight" when you first began to raise the door?

Paul

Paul_KD7HB:
That wasn't so difficult, was it? BUT.... did you use the scale to measure the "weight" when you first began to raise the door?

Paul

I measured the weight at 90 degrees when it would be heaviest. I got a couple different readings but 2.2lbs was the heaviest so I went with that.

If that is the weight the end of the servo arm will see, then it is correct.

Paul

ianmurphy:
Thanks everyone for all the input. I finally bought a scale and measured the weight of the door as Paul suggested. It is about 2.2lbs, plus I will be adding about 0.3lbs of insulation so, to round up, I will assume 3lbs. The radius from lift point to the motor output shaft is about 6inches, so it will require about 18in-lbs of torque which is 20.7kg/cm

No, torque is still not a ratio, its a product of force and radius.

If your door is 9cm x 38cm, then the mass of about 1.3kg acts 38/2 = 19cm from the hinge, so the torque
is 1.3 x 9.8 x 0.19 = 2.4Nm

At 15cm from the hinge the force needed is thus 2.4 x 0.15 = 0.36N. Again without details of the linkage
geometry between door and servo there's nothing more to say. The linkage turns the servo's torque to a force, and is essential to any calculation relating the servo's requirements.

BTW your 9cm x 38cm x 1/2" 'plywood' has a calculated density about 2.3g/cm^3, so its definitely not plywood
if your dimensions and mass are correct.

Can you provide a good diagram and check all the numbers?

MarkT:
No, torque is still not a ratio, its a product of force and radius.

If your door is 9cm x 38cm, then the mass of about 1.3kg acts 38/2 = 19cm from the hinge, so the torque
is 1.3 x 9.8 x 0.19 = 2.4Nm

At 15cm from the hinge the force needed is thus 2.4 x 0.15 = 0.36N. Again without details of the linkage
geometry between door and servo there's nothing more to say. The linkage turns the servo's torque to a force, and is essential to any calculation relating the servo's requirements.

BTW your 9cm x 38cm x 1/2" 'plywood' has a calculated density about 2.3g/cm^3, so its definitely not plywood
if your dimensions and mass are correct.

Can you provide a good diagram and check all the numbers?

Hi Mark, thanks for the response.

I am not really sure what you mean when you say torque is not a ratio, did I imply it was? I multiplied the weight in pounds to the radius in inches to get 18inch-pounds of torque. Is that incorrect? I understand the linkage might make things more complicated but I am trying to get a ballpark.

The plywood door is definitely plywood… see pictures if you don’t believe me. Also see attached photo with the scale where I measured about 2.2lbs. The door itself doesn’t weight 2.2lbs, just at the point where I’m lifting from which is in-between the hinges and centre of gravity.

I rounded 2.2lbs to 3lbs, and I measured 6 inches away from the motor centre of rotation, so I multiplied to get 18 inch-pounds of force.

I didn’t draw up a diagram but annotated the images with dimensions. Also, apologies I said the door was 9cm wide originally, i meant 19cm. Let me know know if there is any info still missing.

ianmurphy:
Hi Mark, thanks for the response.

I am not really sure what you mean when you say torque is not a ratio, did I imply it was? I multiplied the weight in pounds to the radius in inches to get 18inch-pounds of torque. Is that incorrect? I understand the linkage might make things more complicated but I am trying to get a ballpark.

You used kg/cm and oz/in in several places.

The torque on the door and the torque on the servo are different, inter-related by the linkage, unless
the hinge of the door is concentric with the servo hub. You need better than ball park to be sure there's enough
torque.

The torque of the door is defined by its weight and the horizontal distance of its centre-of-mass from the hinge.

Where the servo connects to it doesn't affect the torque, but that attachment linkage will convert that torque to a linear force in the linkage, which will then act on the servo arm to produce a torque there.
The geometry of the linkage matters.

The plywood door is definitely plywood… see pictures if you don’t believe me. Also see attached photo with the scale where I measured about 2.2lbs. The door itself doesn’t weight 2.2lbs, just at the point where I’m lifting from which is in-between the hinges and centre of gravity.

You are not measuring the weight, you are measuring the linear force in a linkage connected to the door. Weight is an object's mass times acceleration due to gravity. Stick the loose door on some scales to measure its weight.

I rounded 2.2lbs to 3lbs, and I measured 6 inches away from the motor centre of rotation, so I multiplied to get 18 inch-pounds of force.

18 inch-pounds is not a force, its a torque.

I didn’t draw up a diagram but annotated the images with dimensions. Also, apologies I said the door was 9cm wide originally, i meant 19cm. Let me know know if there is any info still missing.

Well if you want correct answers you need to avoid getting things wrong by a factor of two, nature never gets
its sums wrong.

The position of the servo hub compared to the hinge is missing, both x and y directions... Need the actual weight of the door (you can use the mid-point of the door to measure that with the spring balance if removing the door is tricky. At the midpoint you are lifting the centre of mass directly.

Update: our cat hasn't figured out how to operate the switch lever on his own yet. He actually destroyed the servo motor because he tries to force his way back in and it stripped the gears on the motor. Any idea how to prevent this? I was thinking I could add a second servo that slides a latch lock so if the lever isn't pressed, he cant force his way in. That seems like more places for things to go wrong, maybe I can just use a motor with a higher torque rating that a cat isn't cable of stripping gears on. Any ideas?