Need help with high current draw from my bot electronics (found a poss. culprit)

Hello,
I'm in need of some help with current draw for my electrical components on my robot.
First, see if I can do a quick rundown of my setup:
I have the 2 main lead-acid 12V (motorcycle size) batteries in series to provide power to the Sabertooth 2X25 motor driver that drives the main wheelchair DC motors (nothing else).
I have a seperate 12V 7Ah lead-acid battery dedicated to powering all my electronics.

The multimeter I'm using is an older Fluke 27 (still a great DMM). I don't believe it has rms or gives readings in rms. Does this mean I'm getting an average Amp reading?

When I first hook up the meter to read Amps DC to my dedicated electronics battery, I get a reading of 2.70A. After 5 minutes it goes down to 2.57A and after 10 minutes it reads 2.53A.

It seems to settle out or level of at 2.48A (after 30 minutes). Btw, why do the Amps drop down after some time?

I thought I would list the components that I had hooked up with their rated current draw, but when I was disconnecting one component at a time I noticed something that didn't seem right.

When I got to my Arduino Mega 2560 and disconnected the power from it (powering it through the barrel socket w/ 9VDC), the Amp consumption read 0.28A!?
This is a 2.2A draw from the Arduino Mega 2560. Interesting enough, I'm using a dedicated 9V voltage regulator rated at 2.2A...

Another interesting thing is when the reading leveled out at 2.48A and I turned my Stepper motor left & right the amps draw actually went down to about 2.11A (when in motion, then goes back to 2.48A when stopped)

Here is just a quick rundown of the components I have installed at the time of testing:

-Arduino Mega 2560
-Arduino motor shield R3 (to drive stepper), also disconnected this but didn't make a big difference. I did add a small heatsink on the motor shield IC a while back and noticed the heatsink was a bit hot..
-RC receiver Spektrum AR600
-Servo for the head tilt up and down. Getting a bit of servo buzz, which I'm working to resolve. The reading of 2.48A was without the buzz.
-(x4) Parallax PING sensors
-(x2) Parallax PIR Motion sensors
-Rear 80mm exhaust fan

-Also have 6 voltage regulators getting different volts from the 12V battery:
-(x3) 5V, 3A regulators (1 is dedicated to the RC receiver, 1 is not connected & other goes to the 5V terminal screw block)
-(x1) 6V, 1.5A regulator dedicated to powering my stepper motor.
-(x2) 9V, 2.2A regulators (1 is dedicated to the Arduino Mega 2560, and other goes to the 9V terminal screw block)

Any help, suggestions would greatly be appreciated, especially on the 2.2A draw from the Arduino Mega 2560 :confused:

Thomas

A couple of things:

  1. Do you have the proper caps on these regulators to prevent any oscillation?
  2. Assuming #1 is true, why are you powering the Mega from the 9V regulator?

Regarding #2, I presume you are feeding the 9V from the regulator into the Mega via the barrel jack (and/or otherwise -not- bypassing the on-board 5V regulator)? If this is so, why no just bypass the on-board regulator, and feed the Mega 5 volts from one of your 5 volt regulators (and eliminate the 9 volt regulators if not needed)?

Even so, what you are describing seems odd...

I get a reading of 2.70A. After 5 minutes it goes down to 2.57A

OK... that.... About 1/2% drop, right? I would guess that the voltage has dropped by about 1/2% as the battery discharges. With a constant load (constant resistance) current is proportional to voltage ([u]Ohm's Law[/u]).

Amp consumption read 0.28A!? ...This is a 2.2A draw from the Arduino Mega 2560.

Unlikely, unless the Arduino is fried. Something else is going-on. Probably, the Arduino is powering turning-on something else, and perhaps there was no common ground with the 9V power supply connected and the "someting else" wasn't getting turned-on when you used the 9V supply. Can the 9V supply even provide that much current?

When the stepper motor is stationary, do you have one set of coils active, or is the whole thing powered off?

**Little update:
Removed the official Arduino motor shield r3, so I just had my mega 2560 powered (from same 9V reg.) and got better results: about 0.30A. Nothing is fried...but will have to re-check my wiring (power and stepper motor) going to the motor shield.

cr0sh:
A couple of things:

  1. Do you have the proper caps on these regulators to prevent any oscillation?
  2. Assuming #1 is true, why are you powering the Mega from the 9V regulator?

Regarding #2, I presume you are feeding the 9V from the regulator into the Mega via the barrel jack (and/or otherwise -not- bypassing the on-board 5V regulator)? If this is so, why no just bypass the on-board regulator, and feed the Mega 5 volts from one of your 5 volt regulators (and eliminate the 9 volt regulators if not needed)?

Even so, what you are describing seems odd...

Thanks for the reply cr0sh,
No caps, but I'm about to hook it up to my oscilloscipe just to see how it looks.
As far as powering the Mega 2560 from 9V, reading the PDF file on the Mega2560, it recommended using 7-12VDC (external through the barrel plug jack).
Also depending on how many inputs, servos, motors, etc.. I might connect.
I just wish there was better documentation on the official Arduino motor shield.

I'm wondering if I leave the Vin jumper connected on the motor shield, this would be enough to power the Mega2560, the motor shield and the stepper motor (stepper motor is rated at 5.4VDC, 1.5A). The 9V regulator that will supply the power is rated at 2.2A.

@ DVDdoug:
Thanks for responding.
No Arduino Mega and motor shield work great. I did take the motor shield off and checked the current draw with just the Mega 2560 hooked up and getting 0.30A (much better).

I think I just have to recheck my wiring on the motor shield...

@ majenko:

When the stepper motor is stationary, do you have one set of coils active, or is the whole thing powered off?

I will check...the stepper motor I'm using is a unipolar, 4 phase stepper, but connected to the motor shield as a bipolar stepper.

*I may have a few more questions on the motor shield, involving the Vin jumper, external power & possibly (double checking) my stepper motor wiring.

I guess I'll start with the stepper motor I'm using.
Here is the datasheet on my stepper motor:
Any suggestions/options for the best way of hooking it up to the official Arduino motor shield would be greatly appreciated.

What power source are you using for this stepper?

The stepper motor is rated at 5.4VDC, 1.5A. I'm powering it (and this is where I heard conflicting ideas) through the 2 center coil taps.
Some say combine center coil taps and hook to your V+ supply for the stepper, while others say combine center coil taps and connect to ground.
Anyway, powering it with a 6V, 1.5A volt. reg. With the Vin jumper on the official Arduino motor shield Vin jumper cut.

Btw, it works great...except for the excess current draw which (I'm guessing) is coming from the Ard. motor shield... :confused:

The real concern first is your unknown drain... bad driver? leaky or a floating input... pull up or down? Second is the heat being wasted.. it takes Power to heat things up and I don't suppose you have a coffee warmer there as well. Fix the current drain and then use switchers for power... filtering isn't usually a problem, a Pi configuration filter with a 100uHy choke and 2 47uF ceramics (one on either side of the choke to ground) will fix that just make sure the coil is a low resistance high current type. The only caution about that filter is that it Must be on or close to the switcher for maximum filtering.

Doc

Just a little update.
Since I'm using the stepper motor as bipolar, I disconnected & seperated the 2 center coil taps.
As of right now, the Vin jumper on the Ard. motor shield r3 is shorted (which, from what I gather, gets it's power from the Ard. Mega 2560. So I don't have anything connected to the Vin screw terminal on the motor shield.

My current draw has dropped to 1.60A. I have a connector for the stepper motor wires, where when I disconnect it, the amps drop down to about 0.32A.
With the stepper motor connected and at idle(not rotating) it's 1.60A. With the Stepper at idle, shouldn't I be getting something close to that 0.32A?
Also, a bit strange again, when the stepper is moving left and right, I still get a drop in Amps(it goes down to 1.30A)...

Here is a quick schematic of my setup. Please note the Vin jumper on the motor shield. The test above was WITH the jumper shorted and power through the Mega 2560.
If I decide to power the motor shield on it's own, could I cut the Vin jumper and supply 6V, 1.5A (from my VR) and attach it to the Vin screw terminal shown in the schematic below? Does this still supply the voltage to the logic circuit (L298 IC, etc..) or does the Mega 2560?
Here is a link to the official Arduino Motor shield R3:

And please excuse the schematics..first time drawing one up (well digitally)...hope it's understandable :slight_smile:

It sounds like when the stepper is idle one coil is on. Can you turn the stepper easily by hand when it's in the idle state?

No, when powered and at idle it's hard to move.

There's your culprit then.

One coil remains active to "lock" the spindle in the current position.

When the motor is turning, the coils are turning on and off. The average current will be lower as there are times when there are no coils on.

If you can set the motor shield so all the coils are off (is that the "brake" setting?) then it should consume much less power, but the spindle will move easily.

Ahh ok :slight_smile: The coils are 'fighting' each other..possibly? hehe At the same time, when at idle and the bot is moving around I don't want it to rotate/sling around at random.
But I see what you're saying about the brake, I'll see if I can dig up some info about the brake on the motor shield...

Appreciate the help and info :slight_smile:

majenko:
There's your culprit then.

One coil remains active to "lock" the spindle in the current position.

When the motor is turning, the coils are turning on and off. The average current will be lower as there are times when there are no coils on.

If you can set the motor shield so all the coils are off (is that the "brake" setting?) then it should consume much less power, but the spindle will move easily.

Thanks again majenko,
There are 2 brake (A & B) jumpers that are enabled (shorted), I left those alone.
This part is probably more to do with the programming...
I went back and looked at my code for my stepper. I'm currently controlling it with my RC Tx.
I may try and add:

digitalWrite(brakeA, HIGH);
digitalWrite(brakeB, HIGH);

..when the stick is in neutral or steppers are at idle, and see what happens.

thanks again,
t