Powering DC Motor & Arduino = Same Battery?

Hi everyone!

I will try to be brief.

I am building a quadrocopter with four 6V DC motors and an arduino nano. I have the motors running beautifully using four AA batteries (2 parallel and 2 in series to provide 6V with NPN transistors and diodes to protect the nano), but obviously I will need a much smaller battery pack to get it up in the air. I was using the AA's just for testing purposes while I learned how to control the motors from the arduino.

I have two 3.6V batteries that would be perfect for this purpose. If I wired them in series so that the voltage is 7.2V, and then cut down the voltage to 6V using resistors, I believe I could power the motors with them just fine. But how can I possibly supply the nano with power using the same batteries? Trying to supply 4 motors and the nano, which have different voltages, is confusing to me. Can anyone please point me to a good resource that would help with this question?

Thanks!

With 7.2v you have enough voltage to use a basic 5v regulator.

Weedpharma

weedpharma:
With 7.2v you have enough voltage to use a basic 5v regulator.

Weedpharma

Would I hook the Arduino and all four motors up to the same battery in parallel, and then just use the 5V regulator to make sure the Arduino gets exactly 5V?

A voltage regulator is not enough in this case. Motors inject a lot of electrical noise into circuitry and without proper power supply decoupling (noise filters) you are guaranteed to have problems. This is not a good problem for a beginner to tackle.

jremington:
A voltage regulator is not enough in this case. Motors inject a lot of electrical noise into circuitry and without proper power supply decoupling (noise filters) you are guaranteed to have problems. This is not a good problem for a beginner to tackle.

I am using diodes to ensure that voltage doesn't travel in the wrong direction. It seems to be working just fine, I have not had any issues with the motors. Using diodes seems to be a very common solution to this problem. Are you sure that it's not enough?

I am a beginner but I am a quick learner. Or at least I like to think that I am lol. I have already got the motors working though, I can control their speed using a custom PWM system and they're working perfectly.

Using diodes is a very common bandaid, not a general solution. Diodes do not protect from positive overvoltage spikes. However, the problem depends on the motors and such an approach could work in your case.

jremington:
Using diodes is a very common bandaid, not a general solution. Diodes do not protect from positive overvoltage spikes. However, the problem depends on the motors and such an approach could work in your case.

Thanks very much for your response. In regards to powering the arduino and the 4x 6V DC motors off of the same 7.2V battery, do you have any thoughts? The battery would be composed of two high capacity LiPo 3.6V batteries wired in parallel to produce 7.2V.

Would I just wire the four motors and the arduino (via a 5V regulator) to the battery all in parallel?

Thanks!

nightsd01:
Would I hook the Arduino and all four motors up to the same battery in parallel, and then just use the 5V regulator to make sure the Arduino gets exactly 5V?

As has been said, you would also need some noise suppression. This can be using 0.1uF capacitors on the input and output of the regulator.

What current is being drawn by the motors? If they are low power motors with low current, a couple of suitable size diodes will drop the voltage.

I would be happy running it all on the series connected cells (assuming they are both charged, same capacity and type) with the Arduino being powered via the regulator.

If noise is a problem after fitting capacitors, then look for more ways of fixing the problem.

Weedpharma

For simple brushed DC motors, it helps a lot to use 3x0.1 uF capacitors. One goes directly across the motor terminals and the other two from each terminal to the motor casing. This tutorial from Pololu shows you how: Pololu - 9. Dealing with Motor Noise

weedpharma:
As has been said, you would also need some noise suppression. This can be using 0.1uF capacitors on the input and output of the regulator.

What current is being drawn by the motors? If they are low power motors with low current, a couple of suitable size diodes will drop the voltage.

I would be happy running it all on the series connected cells (assuming they are both charged, same capacity and type) with the Arduino being powered via the regulator.

If noise is a problem after fitting capacitors, then look for more ways of fixing the problem.

Weedpharma

Thanks for the advice!

Just a question, if you wire the motors together in a series, how can you use transistors to selectively increase and decrease power to each individual motor? For a quadrocopter it is a requirement in order to make it able to move in the X Y plane and rotate.

You cannot independently control motors wired in series.

nightsd01:
Thanks for the advice!

Just a question, if you wire the motors together in a series, how can you use transistors to selectively increase and decrease power to each individual motor? For a quadrocopter it is a requirement in order to make it able to move in the X Y plane and rotate.

Wiring two 6v motors in series across a 7.2v battery will not supply enough to drive them correctly.

My reference to "series" was in regard to the two 3.6v batteries.

Weedpharma

Thank you both SO much for your help weedpharma and jremington I appreciate it so much.

I have wired the two batteries in series to produce 7.2V. I ended up buying an adjustable voltage regulator (LM317T) and it is producing a consistent 5.05V. I have it powering the Arduino just fine. I have the motors hooked up to the battery in parallel with the Arduino (before the LM317). My motors say 6V but they run on 7.2V without problems, I will be careful not to run them for too long. I am using a diode to protect the Arduino.

If you guys see any problems with this let me know!

PS - for anyone attempting this in the future, it is best to put a 100µF electrolytic capacitor between the 5V regulator and the arduino VIN. In my case, the battery provides plenty of current between the motors and the arduino but there is a lot of "noise" causing issues. As previous posters in this thread have said, it smooths out a lot of the bumps.

Hey, I faced the same issue. The solution, like others have mentioned in the forum is to use decoupling capacitors. The motors take up too much current initially, and the Arduino keeps resetting itself. I added 2x 1uf capacitors across Vin and ground, and it worked! . Start with small value of capacitors like 1nf and keep increasing.

Start with small value of capacitors like 1nf and keep increasing.

Or, start with a large capacitor, like 100uF, and you are done.