Data Logging Current Usage
Archiver
Posts: 46,084
Hi,
I'd like to use a Basic Stamp to log current drawn by a robot. This is for a
robot-combat type of thing, so ideally, I'll be able to monitor and record
relatively high currents over a 3 to 5 minute period. The amperage will be
anywhere from 0 to 50 amps at a given time, and I can afford relatively grainy
sampling rates (i.e. every 1/10th of a second would be more than fine).
I've already designed a stamp application to measure temperature and battery
voltage within the robot (largely based on stuff from this list and the Parallax
site), but I'd also like to get an indication of the current being pulled from
my battery packs.
I'm generally OK with the basicstamp stuff, but I'm not experienced with
measuring current flow with anything other than a DMM. Are there different
strategies for creating a microcontroller readable current indicator?
Simplicity is more important than accuracy.
Thanks for any ideas -- it's a great group.
Joe
[noparse][[/noparse]Non-text portions of this message have been removed]
I'd like to use a Basic Stamp to log current drawn by a robot. This is for a
robot-combat type of thing, so ideally, I'll be able to monitor and record
relatively high currents over a 3 to 5 minute period. The amperage will be
anywhere from 0 to 50 amps at a given time, and I can afford relatively grainy
sampling rates (i.e. every 1/10th of a second would be more than fine).
I've already designed a stamp application to measure temperature and battery
voltage within the robot (largely based on stuff from this list and the Parallax
site), but I'd also like to get an indication of the current being pulled from
my battery packs.
I'm generally OK with the basicstamp stuff, but I'm not experienced with
measuring current flow with anything other than a DMM. Are there different
strategies for creating a microcontroller readable current indicator?
Simplicity is more important than accuracy.
Thanks for any ideas -- it's a great group.
Joe
[noparse][[/noparse]Non-text portions of this message have been removed]
Comments
joe@j... writes:
> I'm generally OK with the basicstamp stuff, but I'm not experienced with
> measuring current flow with anything other than a DMM. Are there different
> strategies for creating a microcontroller readable current indicator?
> Simplicity is more important than accuracy.
>
> Thanks for any ideas -- it's a great group.
>
> Joe
Joe,
To measure current the inexpensive way, here is one approach.
Connect a 0.01 ohm in series with the positive or negative lead that carries
the current you want to measure. The resistor will need a heat sink (there is
probably a large mass on your robot you can use to mount the resistor, the
mass will act as your heat sink).
You will monitor the voltage across this resistor. The voltage is equal to
the amps times the resistance. 50 amps across 0.01 ohms will yield 0.5 volts. 0
amps consumption will yield 0 volts across the resistor. The resitor acts to
convert current into a voltage.
This 0.5 volts (at 50 amps) can then be amplified times 10 with an op-amp for
a 5 volt output at 50 amps.
An analogue to digital converter can be used to convert the 5 volts to a
digital byte (8 bits), something the stamp can understand.
The resistor needs to be very small (0.01 ohms) for minimal voltage loss to
your robot at the maximum current consumption. For example, if the resitor was
0.1 ohms, at 50 amps consumption there will be 5 volts across the resitor,
that means 5 volts less available to your robot.
This should get you started.
[noparse][[/noparse]Non-text portions of this message have been removed]
resistor.
AND, you need to confirm if the resistor body ( the section that will be heat
sinked) is isolated from the leads.
In a message dated 7/26/2003 7:30:17 PM Pacific Daylight Time,
smartdim@a... writes:
> >I'm generally OK with the basicstamp stuff, but I'm not experienced with
> >measuring current flow with anything other than a DMM. Are there different
>
> >strategies for creating a microcontroller readable current indicator?
> >Simplicity is more important than accuracy.
> >
> >Thanks for any ideas -- it's a great group.
> >
> >Joe
>
> Joe,
>
> To measure current the inexpensive way, here is one approach.
>
> Connect a 0.01 ohm in series with the positive or negative lead that carries
>
> the current you want to measure. The resistor will need a heat sink (there
> is
> probably a large mass on your robot you can use to mount the resistor, the
> mass will act as your heat sink).
>
> You will monitor the voltage across this resistor. The voltage is equal to
> the amps times the resistance. 50 amps across 0.01 ohms will yield 0.5
> volts. 0
> amps consumption will yield 0 volts across the resistor. The resitor acts to
>
> convert current into a voltage.
>
> This 0.5 volts (at 50 amps) can then be amplified times 10 with an op-amp
> for
> a 5 volt output at 50 amps.
>
> An analogue to digital converter can be used to convert the 5 volts to a
> digital byte (8 bits), something the stamp can understand.
>
> The resistor needs to be very small (0.01 ohms) for minimal voltage loss to
> your robot at the maximum current consumption. For example, if the resitor
> was
> 0.1 ohms, at 50 amps consumption there will be 5 volts across the resitor,
> that means 5 volts less available to your robot.
>
> This should get you started.
>
[noparse][[/noparse]Non-text portions of this message have been removed]
>Connect a 0.01 ohm in series with the positive
> negative lead that
>carries the current you want to measure.
One way of doing this without placing an additional
resistor is to look at a main power lead from the
battery. These are often rather thinner than is ideal
and cause voltage drop. Although the resitance is
'unknown' you could calibrate the circuit with an
inline ammeter.
As a more hitech approach what about this:
http://www.maxim-ic.com/quick_view2.cfm/qv_pk/3801
a coulomb counter 1 wire circuit. This uses very low
external resitances so voltage drop minimal. You'ld
know battery usage too!
Adrian
Adrian
=====
-
*********************************************
________________________________________________________________________
Want to chat instantly with your online friends? Get the FREE Yahoo!
Messenger http://uk.messenger.yahoo.com/
I'd like to add -- a paper clip can be
made into a good current sensor resistor.
Take a fairly thick paper clip, straighten
it out, and measure its resistance. You want
the .01 ohm mentioned earlier. Cut the proper
length (as measured by your ohm-meter) and
solder your wires to it.
I don't know that I'd take this approach
for 50 Amps -- a commercial unit with good
heat-sinking might be better for this.
--- In basicstamps@yahoogroups.com, "Joe McCartin" <joe@j...> wrote:
> Hi,
>
> I'd like to use a Basic Stamp to log current drawn by a robot.
This is for a robot-combat type of thing, so ideally, I'll be able to
monitor and record relatively high currents over a 3 to 5 minute
period. The amperage will be anywhere from 0 to 50 amps at a given
time, and I can afford relatively grainy sampling rates (i.e. every
1/10th of a second would be more than fine).
>
> I've already designed a stamp application to measure temperature
and battery voltage within the robot (largely based on stuff from
this list and the Parallax site), but I'd also like to get an
indication of the current being pulled from my battery packs.
>
> I'm generally OK with the basicstamp stuff, but I'm not experienced
with measuring current flow with anything other than a DMM. Are
there different strategies for creating a microcontroller readable
current indicator? Simplicity is more important than accuracy.
>
> Thanks for any ideas -- it's a great group.
>
> Joe
>
> [noparse][[/noparse]Non-text portions of this message have been removed]
You just run the wire off your battery through the center of the sensor, and
the sensor will convert the magnetic field strength into a voltage that is
proportional to current. Getting hall effect sensors designed for this purpose
can be tricky... I've used some from LEM (www.lem.com) with great success.
In a message dated 7/26/2003 6:23:37 PM Pacific Daylight Time,
joe@j... writes:
> I'm generally OK with the basicstamp stuff, but I'm not experienced with
> measuring current flow with anything other than a DMM. Are there different
> strategies for creating a microcontroller readable current indicator?
> Simplicity is more important than accuracy.
>
> Thanks for any ideas -- it's a great group.
>
> Joe
chips available to help out with that function. Two that come to
mind are the Zetex ZXCT1009 <http://www.zetex.com/isense> and the
Maxim MAX471/472. You provide the sense resistor, and the chip has
the op-amp and other circuit inside that scales the signal for your
ADC or RCtime.
A 0.002 ohm resistor carrying 50 amps will drop 0.1 volt, which is
about right for the current sensing chips. (50 amps * 0.1 volt = 5
watts). To make the resistor, look up the copper wire gage you are
using in a table, which will show you the resistance per unit length.
Calculate the length that gives 0.002 ohm, and solder the sense wires
onto the power leads that far apart. That goes on "high side", the
positive side of the battery. The sense wires go to the chip and
the output of the chip to the ADC or to RCtime.
-- Tracy
>In a message dated 7/26/2003 6:23:37 PM Pacific Daylight Time,
>joe@j... writes:
>The amperage will be anywhere from 0 to 50 amps at a given time, and
>I can afford relatively grainy sampling rates (i.e. every 1/10th of
>a second would be more than fine).
>
>
>> I'm generally OK with the basicstamp stuff, but I'm not experienced with
>> measuring current flow with anything other than a DMM. Are there different
>> strategies for creating a microcontroller readable current indicator?
>> Simplicity is more important than accuracy.
>>
>> Thanks for any ideas -- it's a great group.
>>
>> Joe
>
>Joe,
>
>To measure current the inexpensive way, here is one approach.
>
>Connect a 0.01 ohm in series with the positive or negative lead that carries
>the current you want to measure. The resistor will need a heat sink (there is
>probably a large mass on your robot you can use to mount the resistor, the
>mass will act as your heat sink).
>
>You will monitor the voltage across this resistor. The voltage is equal to
>the amps times the resistance. 50 amps across 0.01 ohms will yield
>0.5 volts. 0
>amps consumption will yield 0 volts across the resistor. The resitor acts to
>convert current into a voltage.
>
>This 0.5 volts (at 50 amps) can then be amplified times 10 with an op-amp for
>a 5 volt output at 50 amps.
>
>An analogue to digital converter can be used to convert the 5 volts to a
>digital byte (8 bits), something the stamp can understand.
>
>The resistor needs to be very small (0.01 ohms) for minimal voltage loss to
>your robot at the maximum current consumption. For example, if the resitor was
>0.1 ohms, at 50 amps consumption there will be 5 volts across the resitor,
>that means 5 volts less available to your robot.
>
>This should get you started.
amp unit with very good success.
Try the AMP50 at $16.00 a pop or the AMP100 at $19 bucks. Not cheap but they
are small, light weight and easily interface to an ADC.
Find Ampsense at http://www.ampsense.com
Hank