Tachometer Negative and Positive Output to an Analog Input Pin?

I have a tachometer on a DC motor (built in), that outputs +6.67V at full speed clockwise, 0 when stopped, and -6.67V at full speed counter clockwise. I know the arduino analog inputs can't take a negative voltage, but is there any way to convert it, or a workaround to allow it to accept both voltages (even if on different analog input pins). I don't think a simple converter circuit with a 555 timer will work because at slow speeds, the output voltage will be close to 0. Thanks for the help or any ideas.

Use a precision rectifier to invert the signal and a comparator to provide a pos/negative digital output.

Note: you need a precision full-wave rectifier.

Thanks, I also came up with a different way in a simulation that should work, but I think the rectifier will be the easier option. Thanks again.

You didn't mention what the 6.67 volt signal really is or what granularity of measurement is required .. For pulsating dc counting the pulses would be a possibility. The easiest method for measuring DC I can think of is to scale the voltage by a factor of four and using an op-amp for dc level shifting to move the +/- 6V signal to a +/- 1.5V signal where 0 volts is centered in the scaled measurement window. This way 0 RPM is centered in the detection window and variations speed and rotation affect the polarity and magnitude of the measured signal from the motor tachometer. The only real issue I see is the possible requirement for a different AVref to calibrate the device since it is measuring a small piece of the tach signal.

Bob

Docedison: You didn't mention what the 6.67 volt signal really is or what granularity of measurement is required .. For pulsating dc counting the pulses would be a possibility. The easiest method for measuring DC I can think of is to scale the voltage by a factor of four and using an op-amp for dc level shifting to move the +/- 6V signal to a +/- 1.5V signal where 0 volts is centered in the scaled measurement window. This way 0 RPM is centered in the detection window and variations speed and rotation affect the polarity and magnitude of the measured signal from the motor tachometer. The only real issue I see is the possible requirement for a different AVref to calibrate the device since it is measuring a small piece of the tach signal.

Bob

It sounded to me like a simple plain DC generator tachometer that generates a DC voltage proportional to the speed and polarity depending on rotation direction, such tachometer generators are pretty common, they are basically just DC permanent magnet motors used backwards. And yes a full wave bridge would work and then a simple voltage divider to scale to 5vdc max output should work, You might have a little 'dead zone' around 0 due to diode forward voltage drop but that part of the measurement range may not be useful to you anyway, but if it is then a op-amp based 'precision rectifier' could be used.

Lefty

Yes, that is exactly what I have. I think I will try the precision rectifier route with the voltage divider . Thank you all for the help.

The issue @ Lefty is that there is a .6V dead band X 2 which represents +/- 1/2 of the measurement range with a 1.1V V Vref. This is the reason that I suggested scaling the input and Vref as I did. Once the voltage is shifted to 'fit', less than half might mean CW rotation and CCW rotation would be indicated by a voltage greater than 1/2 the input window. Even with small signal schottky diodes, 1N5711 or the HP hot carrier diodes there is a .2 - .3 V dead band which is still 20 - 30% of full scale. Thus the recommendation for level shifting and scaling rather than the ones expressed so far, IMO solutions that simply won't work as expected. Shifting Vref to 1V1 or another more appropriate voltage and scaling/level shifting the input will restore the input granularity and accuracy.

Bob

dpd814: Yes, that is exactly what I have. I think I will try the precision rectifier route with the voltage divider . Thank you all for the help.

That would work but keep in mind then that you must provide proper DC voltage for the op-amp(s) to be able to track the full DC voltage input range the tach is generating. Of course you could always use a voltage divider directly on the generator's voltage output to cut the measurement range down so that you might be able to just utilize a 'rail to rail' op-amp powered by +5vdc. The actual scaling math is done in your sketch anyway so you can work with just about any primary DC measurement voltage. Look around for appropriate circuits.

Lefty