0
\$\begingroup\$

I am making a small robot using an Arduino and two servo motors. There are two ways that I can provide power to the motors:

1) Run power and GND wires from the battery holder to the motors, then connect the GND pin on the Arduino to the GND wire going to the servos, like this:

enter image description here

2) Run a power wire from the battery holder to the servos, then connect the GND pin on the Arduino to the servos (no GND wire going directly from the batteries to the servos):

enter image description here

One of the concerns I had about 2) is that the motors can draw several amps when stalled, so I wasn't sure if that would be too much current for the GND trace on the Arduino to handle. However, after looking at the PCB layout for the Arduino I see that there is a GND plane instead of a trace, so I assume the amount of current flowing through it is a non-issue?

My second concern is noise. I know that motors generate a lot of noise and so my main question here is whether not having a wire from the batteries to the servos (instead routing the current through the GND plane on the Arduino) will create a lot of noise that could cause problems for the microcontroller and ICs on the Arduino?

\$\endgroup\$
  • 1
    \$\begingroup\$ "However, after looking at the PCB layout for the Arduino I see that there is a GND plane instead of a trace, so I assume the amount of current flowing through it is a non-issue?" ... Not the main answer (see Andy's answer), but I just wanted to point out that you should not overlook the current ratings of the connectors. The GND plane can handle much more current than that header socket labeled "GND" which most likely is not rated for "several amps". For that matter, I don't know the contact rating of your breadboard, but you may be better served with direct connection to the battery. \$\endgroup\$ – Tut Mar 24 '14 at 10:33
4
\$\begingroup\$

There is little choice about this. Quite simply, the power wires to the motor connect directly to the motor and the supply wires to the arduino tee off from the battery and do not go via the motor: -

enter image description here

The reasoning you have given is correct too. Noise can still be a problem to a ground plane so why inflict this unnecessary burden on the power plane of the Arduino or any other MCU that might be controlling a motor.

If it were a dc motor with the control transistor (say NPN grounding transistor) on an MCU board, the rest of the electronics on the MCU board would tee-off their ground from the emitter of the transistor i.e. no motor current through any unnecessary circuitry/ground-plane.

\$\endgroup\$
  • \$\begingroup\$ I'm finding your first sentence a little confusing to read. Are you saying you think it's best to have a ground wire going from the battery pack to the motors, instead of hooking them up to the GND plane on the Arduino? \$\endgroup\$ – Nate Mar 23 '14 at 18:06
  • \$\begingroup\$ I'll try and make it clearer with a picture \$\endgroup\$ – Andy aka Mar 23 '14 at 18:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.