0
\$\begingroup\$

I am trying to develop a battery monitoring for a solar system. I have a shunt which is rated at 500 A, 50 mV. and I want to measure current in both directions here. I plan to use the amplifier by AdaFruit ADS1015 to amplify my signal to the Arduino.

The problem is that the shunt sees current in both directions while charging the battery, the current flows to the battery and while discharging, the current flows from the battery to the system.

If I ground one side of the analog output of the shunt, then I would only get single direction of current flow.

How do I wire up a two way current sensing circuit to an Arduino or AVR?

| improve this question | | | | |
\$\endgroup\$
  • \$\begingroup\$ A schematic may help, but what you describe makes no sense. \$\endgroup\$ – Jack Creasey Nov 21 '17 at 23:05
2
\$\begingroup\$

You need to offset your measurement to some reference, maybe half of your ADC range. You can do this easily with a bi-directional current shunt amplifier:

One example is here: INA303

You would also need to generate a reference voltage, and supply that to the reference input of the amplifier. Then, 0A is equal to the reference voltage and the output will increase with positive current and decrease with negative current. Scale the gain appropriately.

You can feed the output of that into your AdaFruit A/D. It's also possible to do the same thing with discrete op-amps, but the shunt amplifier parts are much easier to use.

| improve this answer | | | | |
\$\endgroup\$
0
\$\begingroup\$

OK so this is what i learned doing this project. There is a thing called a Differential Analog Input. That is what i used with the ADS1115. I set my analog in 0 and analog in 1 as 2 differential inputs. So this way it measures mV in both directions and gives me positive or negative value in respect to the voltage direction.

| improve this answer | | | | |
\$\endgroup\$
  • \$\begingroup\$ Thanks for the update and if it succeeds you can accept it to indicate that it's the correct solution. What you are describing, however, is not clear. How do you prevent the inputs going negative with respect to GND? \$\endgroup\$ – Transistor Nov 30 '17 at 22:23

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.