Go Down

Topic: Current Sensoring with a Shunt-Resistor  (Read 139 times) previous topic - next topic

grainpow

Hello together,

i would like to ask for your help. I need to measure the motor current of a DC-Motor with 18V nominal voltage. I measured the current with a ammeter and got 160 mA as maximum value during opearation.

I need to build an experiment, where the current is measured in loop during the operation of the motor, to record the motor-torque. Therefore, i thought about using a shunt-resistor. The problem is, i dont know how to choose the right value of the shunt. Could you help me please?
If i would choose 1 Ohm as shunt-resistor-value, the measured voltage drop would be like 160 mV for a motor current of 160 mA. Can i go with that?

Additionaly, i need to measure the voltage drop of the shunt-resistor with the arduino. How can i do that on a easy way? The Arduino has 10bit ADC, so 5V/1024 = 4,88 mV resolution per bit right? Would that be enough for application?

I would be really thankful for helpful comments.


MarkT

Too large a shunt will waste power and generate heat which is difficult to get rid of.
Too small a shunt will mean the signal is noisy and less accurate.

Here you have 18V to play with and 0.2A full scale would be sensible.

Sacrificing 0.5V to the shunt isn't too problematical (that's 0.1W wasted power at most),
and gives 0 -- 0.5V output voltage which could be sensed directly (using 1.1V internal reference
perhaps).  Add 10k resistor in series with the analog pin to protect it should the shunt fail open.

0.5V / 0.2A = 2.5 ohms.  In practice 2.2 ohm is the nearest standard value.

If the output voltage was much lower I'd recommend amplifying the shunt voltage (there are chips
designed specifically for this purpose).

Have you any idea of the motor's stall current?  You should rate the power of the shunt resistor to
handle this.
[ I will NOT respond to personal messages, I WILL delete them, use the forum please ]

Wawa

#2
Aug 27, 2019, 12:48 pm Last Edit: Aug 27, 2019, 12:51 pm by Wawa
The Arduino has 10bit ADC, so 5V/1024 = 4,88 mV resolution per bit right?
Most Arduinos also have a 1.1volt Aref that you can switch to in setup().

analogReference(INTERNAL); // switch to 1.1volt Aref

Then A/D resolution becomes ~1mV.
The pin can still take 0-5volt, but the A/D value of 1023 is already reached at about 1volt.
As MarkT said, wise to add a 10k protection resistor between shunt and A/D pin.
That value should not influence the measurements.
Leo..

Edit: I saw that you also posted this in the German section of the forum, and someone there gave the same solution. Thanks for wasting out time here.

Go Up