Voltage divider measurement with Arduino

Thread Starter

KKAMIN

Joined Sep 23, 2017
13
Hello,

I've got an old chart recorder that uses a pen to create curves on paper, akin to a seismograph. A solid sample is placed in a flame, and the distortion is measured by the displacement of pin that corresponds to a certain voltage. This voltage is measurable by voltmeter on two pins of the machine. The range of this system is -16VDC for the lowest level of distortion up to 16VDC for the highest possible distortion.

My goal is to connect an Arduino to the system so I can take the data and dump it into excel. My plan is to create a voltage divider and scale down the voltage to the 0-5V tolerance of the arduino. I've included my plan in the attached photo below. My understanding is that the arduino and the machine will need to share a GND connection, however when I'm join the grounds of the Arduino and machine together, the reading on the arduino goes to 0, and the reading by voltmeter goes to 56mV. I'm not sure what I'm doing wrong, am I missing something obvious in this scenario?




Thank you
 

Attachments

ebeowulf17

Joined Aug 12, 2014
3,307
Hello,

I've got an old chart recorder that uses a pen to create curves on paper, akin to a seismograph. A solid sample is placed in a flame, and the distortion is measured by the displacement of pin that corresponds to a certain voltage. This voltage is measurable by voltmeter on two pins of the machine. The range of this system is -16VDC for the lowest level of distortion up to 16VDC for the highest possible distortion.

My goal is to connect an Arduino to the system so I can take the data and dump it into excel. My plan is to create a voltage divider and scale down the voltage to the 0-5V tolerance of the arduino. I've included my plan in the attached photo below. My understanding is that the arduino and the machine will need to share a GND connection, however when I'm join the grounds of the Arduino and machine together, the reading on the arduino goes to 0, and the reading by voltmeter goes to 56mV. I'm not sure what I'm doing wrong, am I missing something obvious in this scenario?




Thank you
There may be more than this, but as a starting point, you've got really low resistances in your divider. With only 121 ohms total, a 16V signal will drive 132mA through the divider. It's quite possible that the +/-16V signal can't provide that much current.

I'd try values maybe 100 times higher, 8.2k and 3.9k. That should at least present a more reasonable load to the 16V signal.

Again, I'm not familiar with the inner workings of those plotters or their driving circuitry, so I may be missing something much bigger.

The other question that comes to mind is negative voltages. If the signal swings from +16 to -16, then when you divide it down, you'll get +5 to -5. Arduino inputs can't handle negative voltages (at all.) If the plotter voltage swings negative relative to ground, you'll need to scale things differently again and add an offset such that -16 signal translates into 0V or higher at the Arduino. This can be done with fairly basic op amp circuits if needed.
 

marcf

Joined Dec 29, 2014
299
Using the -16v of the chart recorder and 0v of the 5.0v as a common ground is the way to go.

I think that you are overloading the output of the chart recorder.

Try placing a more 'realistic' load across the +16 and the -16 voltage points. With the unloaded voltage output at 16v, measure the unloaded voltage. Now place a 10k resistor across the output and note the voltage reading. If the new (loaded) voltage reading is 1/2 of the unloaded voltage you know the output impedance of of the chart recorder is 10k. If it drops to 1.6v with the 10k load, you know the output resistance is 100k. When you get an idea if what the output impedance of the chart recorder is, select a voltage divider with a total resistance of at least 10 times greater than the chart reorder's output resistance.

Next compute the values of the voltage divider to obtain a maximum of 5 volts with the maximum chart recorder output.

It would also be a good idea to 'clamp' the voltage divider with a schottky diode to protect the ADC input of the Arduino.


https://www.elprocus.com/schottky-diode-working-and-applications/
 
Top