Good solution. If someone wanted to do similar with a COTS product they could use the LJTick-InAmp from us.
Another consideration is that with a differential channel you can read an input down to about -0.3V. Connect some other channel to GND with a small jumper, and then take a differential reading of your channel compared to that grounded channel.
We usually suggest hall-effect sensors for measuring current. Many of these have an offset so a bipolar current produces a unipolar signal voltage. Following is text from a support email about buying a hall-effect sensor:
For current, you need a current sensor. I suggest a hall-effect
sensor. A hall-effect sensor is isolated so you don't have to worry
about grounding or common-mode voltage issues. You simply connect
VS/GND to the sensor to provide it power, and then connect the signal
wire to an analog input.
When I am looking for Hall Effect sensors I start here at Digikey:
http://www.<span><sp...66573?k=current
First I go to the "Voltage - Supply" column and ctrl-select all ranges
that include 5.0V, then click "Apply Filters". Then I go to the
"Current - Sensing" column and ctrl-select ranges that might work. You
also might check the "In stock" box. That usually leaves me with about
1 page of results.
When you select which ranges you want in the "Current - Sensing"
column, it is not always straightforward. For example, if the max
current you want to measure is 10 amps, that does not necessarily mean
you should select a sensor rated for exactly 10 amps. You have to
consider:
- The signal output voltage of the sensor at different currents.
- The signal input range of the LabJack.
For example, consider the SCD10PUN. Following are its signal output
at different currents:
0A 0.3V
10A 2.3V
20A 4.3V
The U3-HV, U6, UE9, and T7, all have analog inputs that can measure up
to 5 or 10 volts, so the SCD10PUN is good for measuring up to 20 amps
with those devices. The analog inputs on the U3-LV have an input
range of 0-2.4 or 0-3.6 volts, so it is good for 0-10.5 or 0-16.5 amps
with the SCD10PUN.