Servo shield output current

Hello everyone

I am developing a custom servo shield for high-powered servos (TD-8130MG). These servos operate at 4.8-7.2V and draw up to 3.4A (at maximum voltage, I presume). The shield is to have 16 servo channels, but I've been told that the maximum simultaneous servo usage will be 5 at a time. The input voltage will be supplied from a 7.4V battery.

Based on that, I've decided to implement a buck converter based on LTC3613, which can supply 5.5V at up to 15A output power, which I will use to power the servos.

In my current prototype shield PCB design, output of the converter is connected to a big VOUT copper area, to which all the servo ports are connected.

Now, I am fairly certain this is a newbie question, but please help me understand for sure.

As I understand, servos will only draw high stall current from the VCC power pin when the PWM control signal tries to move the potentiometer inside the servo, and will only draw idle current otherwise. Because the current draw is controlled by the servo resistance, which is controlled by the servo potentiometer, which is controlled by the PWM signal. Therefore, no PWM = big potentiometer resistance = no current (except idle).

Is this correct? Or am I in danger of destroying the servos, because they will always be exposed to the high powered VOUT copper plane on my board?

Servos draw stall current every time the motor starts to move, running current when the motor moves, and idle current when the motor is not moving.
You might see that averaged out if you measure current with a DMM.
Best to design with stall current for all servos at the same time.

Why not use an Adafruit PCA9685 16-servo board, like everybody else does.
That chip offloads all the work for the processor, and only uses two wires to communicate (I2C).
Leo..

I found: "Note: This servo can draw relatively high currents, especially with a load (up to approximately 2500mA at 6V at standstill). So choose a suitable power supply for the servo. It is not recommended to use the Arduino as power supply."

I would guess that is while it has some load it is supporting.
What mAH battery are you planning?

Your layout seems to show two power, one gnd for each servo. I don't see the servo signal control line.
You might want to plan for a larger pin for the current coming if 15A is coming into the board.

And some mounting holes.

Servos are like any other load - they will only draw the current they need. You could have a 100A capable supply, the servos will stiff just draw the ~3A they need. You may want to power a servo up with no load and not-moving and see how much current it needs at a standstill.

Just like your house - you have 100A or 200A amp service coming in. Your stove or dryer or water heater may need 15-20A to run, but the 40W LED bulb in your lamp only needs perhaps 0.3A, yet they all run off the same 120V bus in the house. (or 220V in non-US households).

The Adafruit board does not supply the servo current, that still comes from off board.
"Terminal block for power input (or you can use the 0.1" breakouts on the side)"
so a power source is still needed.

Wawa:
Servos draw stall current every time the motor starts to move, running current when the motor moves, and idle current when the motor is not moving.
You might see that averaged out if you measure current with a DMM.
Best to design with stall current for all servos at the same time.

Why not use an Adafruit PCA9685 16-servo board, like everybody else does.
That chip offloads all the work for the processor, and only uses two wires to communicate (I2C).
Leo..

Thanks! As for why not Adafruit, this is for an electronics project at my uni, I have to make my own PCB. Plus the people programming the servo control use DE0-nano instead of Arduino for some reason. But I did closely study the Adafruit boards, they're very cool!

CrossRoads:
I found: "Note: This servo can draw relatively high currents, especially with a load (up to approximately 2500mA at 6V at standstill). So choose a suitable power supply for the servo. It is not recommended to use the Arduino as power supply."

I would guess that is while it has some load it is supporting.
What mAH battery are you planning?

Your layout seems to show two power, one gnd for each servo. I don't see the servo signal control line.
You might want to plan for a larger pin for the current coming if 15A is coming into the board.

And some mounting holes.

Servos are like any other load - they will only draw the current they need. You could have a 100A capable supply, the servos will stiff just draw the ~3A they need. You may want to power a servo up with no load and not-moving and see how much current it needs at a standstill.

Just like your house - you have 100A or 200A amp service coming in. Your stove or dryer or water heater may need 15-20A to run, but the 40W LED bulb in your lamp only needs perhaps 0.3A, yet they all run off the same 120V bus in the house. (or 220V in non-US households).

Thanks for the reply and your questions!
The guys that are programming these servos for a robot so far showed me a 7.4V 1500mAh battery. Apparently they're going to connect a few of them together, but I'm not sure if that's what they end up using.
As for the current board layout, it's a work in progress indeed, much is to be fixed with this design. :smiley:
The 3-pin servo connectors only have the middle pin connected to the VOUT plane, but that is hard to see in this picture. Also I suspect that this VOUT plane should be more isolated from GND and PWM pins, which I'm also trying to consider.
I don't really get what you mean by "You might want to plan for a larger pin for the current coming if 15A is coming into the board." What pin exactly are you referring to? And how do I make it larger if I'm using the standard foorprints for my servo connectors?
Mounting holes will definitely be there once I'm told the exact dimensions of the enclosure this board is to be placed in and where the holes should be. So far I only know that the PCB should be about 90x80mm. I am also going to add some reverse voltage and/or current protection, which I now realize is missing.

ivanmclennon:
As I understand, servos will only draw high stall current from the VCC power pin when the PWM control signal tries to move the potentiometer inside the servo, and will only draw idle current otherwise. Because the current draw is controlled by the servo resistance, which is controlled by the servo potentiometer, which is controlled by the PWM signal. Therefore, no PWM = big potentiometer resistance = no current (except idle).

Hmm, that's not really it.

Current draw depends on the torque presented to the internal motor in the servo.

This is due to the load torque on the servo output, and additional torque when accelerating to change
position.

If the servo is overloaded mechanically it will draw large currents constantly, and cook itself - most
servos are not designed to handle their nominal max torque continuously, only for short periods.

Trying to move a servo past its end-stops is the most sure way to cook it, as it will pull stall current
until it overheats. (small cheap servos do not have consistent end points or angles of operation, you
should check you aren't pushing these beyond their limits).

Metal bodied servos can handle higher currents than plastic bodied ones as the heat can escape
better, and its usually worthwhile paying the premium for metal bodied servos in any robotic
application.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.