OK to use 30V5A wth an A4988?(USE GROUND ON POWER SUPPLY?)


I have a 1205 Stepper motor and a

Pololu item 1183: A4988 Stepper Motor Driver Carrier with Voltage Regulators,

hooked to an Arduino Mega 2560 and it all works fairly well. I have a 30V 0.83A adapter as a power source.

Would it hurt anything if I changed to a 30V 5A adapter.

Also, would this help the motor run a little stronger?


It should be fine to switch to an adapter that is rated for a higher current.

Make sure you understand that the current rating is simply the maximum current the adapter can provide. The adapter does not “push” current through the motor; the motor will just draw as much current as it wants based on the voltage it is provided (though in this case, if the current limit on the driver is set to a lower value, the driver will limit the current by PWMing the voltage to the motor). For this reason, switching power supplies should not affect the torque or speed of the motor unless your previous supply was overloaded.

- Kevin

I used a 30A unit but I shorted it out. I bought another one and tested its output. I looks to be OK but
when I use a 5A 30V power supply instead of the .83A 30V,the ground wire starts to over heat. Do you know why?

Just as back ground, this is how I have it wired.

Yes. Your previous supply was under-capacity for what the motor wants to draw. Hence, it was overloaded. Probably a reason why it doesn’t work anymore. An overloaded power supply will typically end up delivering less power, and finally fail unless it’s designed to allow permanent overload (and thus permanent under-voltage.)

Now that you have a power supply capable of delivering what your motor wants to draw, enough current flows in the ground wire that the resistance in the wire (or a connector of that wire) causes heating. The first thing I’d look at would be looking for loose connections, tighten screws, etc. If it still heats up too much, the gauge of the wire is probably too high (too narrow) and you need to change the wire to something beefier.

Power equals current squared times resistance. If your wire has a resistance of 0.1 Ohms, and you send 5 A through it, that will end up burning (5 * 5 * 0.1) == 2.5 watts in the wire, which would be enough to make it heat up a fair bit, especially if the insulation is thick compared to the wire. If the heat loss capacity of the wire itself is something like 100 degrees C per Watt, you’d get a temperature rise of 250 degrees C from this particular illustration example. Chances are the resistance of your wire is a lot lower, but you’re still seeing a significant amount of heating, because that’s how the math works out.

OK thank you. That explains a lot.

Now I guess my next question is, can I use the ground terminal on the power supply? The ones on the Mega are populated all ready.

If the Arduino ground is connected to the power supply ground, then yes, you can use that ground. In fact, it may be better to do that than try to go through the Arduino board, for two reasons:

  1. The power supply is low impedance, and EMI that is created by the motor may have a harder time going “past” the power supply into the Arduino.

  2. The Arduino PCB is not built for high currents. The traces are thin, and trying to cram several amps through them will cause heating, and worst case, de-laminating of the board.

I don’t quite understand? I have the ground on the lower left hand corner of the Popolu board (viewed from the bottom side) as shown in the above graphic. That is the one that is over heating. Do I leave it attached? The upper right hand ground is empty.

I hooked up the VMOT (above the 2B) to the V+ on the power supply and the GND to the the COM. Should I attach the GND to the termanal marked with the ground symbol instead?

The ground terminal is likely the safety ground for your mains voltage.

You should make sure COM on your supply is connected to GND on your Mega and Pololu board (directly or indirectly.) Connecting the motor GND to the COM on the power supply is the right thing to do.

The reason I said “don’t go through the Arduino” was that you mentioned the GND terminals on the Mega:

So this is all that I have to do? …and I don’t need to mess with VDD?

You might want to try connecting the COM of the power supply to the GND of the logic circuit, too. You can probably do this as a bridge on the motor controller side.
You can also connect the COM of the power supply to the GND/- of the Mega power/battery.

If the ground to the Mega gets warm, that’s a bad sign, because there is not supposed to be any high-power circuit running through that path.

Not knowing much about electronics, I don’t know what this means.

Yes, I’m thinking you should add that second wire, to perhaps avoid the first one getting hot. It could go between the two “GND” connectors on the board, if you want to solder more than one wire to the same connector – it doesn’t need to run all the way to the PSU.