Possible to have different torque levels on MG966R servo with Rotary Potentiometer?

Arduino Asked by CaptainLemon on September 25, 2021

I want to apologise first and foremost, and say that I am very new to Arduinos!

I wanted to control the torque on a MG966R servo so that I can separate it into 4 different torque levels. I read that by adjusting the input voltage, you can run the servo at different speed, hence, i was thinking if I could incorporate a rotary potentiometer to adjust the speed of the servo.

Also wondering if changing angle stepsize of MG966R servo will affect torque in anyway?

Thanks all!

One Answer

Generally it is not easy to control the torque of a standard servo, since mostly they aren't meant for that. A servo has an internal controller, which will read the input PWM signal and control the geared motor, so that the desired position will be reached. And to get there, the most servos will use the maximum torque. Also the torque of a servo motor depends on more variables, for example speed and type of load (See here for more information about this.

I read that by adjusting the input voltage, you can run the servo at different speed

That's not really true. Most servos only support a rather small voltage range, where they will work. You can get more torque, if you use a higher voltage, but it is not a simple linear relationship, since the torque depends on way more variables. One way may be to always drive the servo to it's current maximum torque and change this maximum torque by changing the input voltage inside the working range. Though this might not get you 4 torque levels, that are different enough for you.

Also wondering if changing angle stepsize of MG966R servo will affect torque in anyway?

It is unclear, what exactly you mean by "stepsize" here. If you mean to control the speed of the servo: Yes, it will affect the torque, but not in a linear way. And this greatly depends on the load, that you apply.

In the answer to this question, sensing the current of the servo is suggested as a measurement of (applied) torque. If you use a feedback loop with this, you might be able to control the (applied) torque. I haven't done this kind of thing, so I'm not sure, if this can really work.

That said, you should again think about wether a normal servo is really the best way to go here, since it controls electronics, that you don't control yourself. For example you may use a geared DC motor, which you can directly control without any other electronics getting in your way.

Answered by chrisl on September 25, 2021

Add your own answers!

Related Questions

How to Set RTC in ES32 using NTP server?

1  Asked on December 7, 2021 by abdul-wasey


Holding buttons (keyboard)

1  Asked on December 7, 2021 by amin-abbasi


Is it required to delete variables before going to sleep?

1  Asked on November 30, 2021 by tono-nam


Running Arduino with 2 outputs and 2 inputs

2  Asked on November 25, 2021


How to read a specific amount of data via serial?

1  Asked on November 20, 2021 by noxus-nexus


Can you access the EEPROM of an ATtiny with Arduino Code?

4  Asked on November 17, 2021 by isabel-alphonse


GPS detecting stationary?

1  Asked on November 15, 2021 by linuxferlife


What exactly does the return type do in a function?

2  Asked on November 13, 2021 by grant-scott


MPU6050 Problem with NodeMCU

1  Asked on November 5, 2021


AccelStepper library advanced codes!

1  Asked on September 25, 2021 by 2012user


Arduino I2C external 32Kb fram data organization

1  Asked on September 25, 2021 by steven-gangaram


Ask a Question

Get help from others!

© 2022 All rights reserved. Sites we Love: PCI Database, MenuIva, UKBizDB, Menu Kuliner, Sharing RPP, SolveDir