Rectifying a very low voltage signal turns out to be very hard. (for me) I've tried this a few different ways without good results. I'm looking for a reasonable simple solution that performs well enough.
The most direct question I can ask is, "How do I rectify a low-voltage signal so that it can be then amplified when my power supply is only 4V and I'm trying to keep the solution simple, efficient, and needing of few components." It's a specific situation.
I'm trying to create a toy that uses the signal from a bluetooth stereo module to drive a VU meter and a DC motor. I'm trying to use a 4V lithium battery (not sure if it's li-poly or not) as the power source to keep the project compact and light. I want the design to remain small and contain as few components as needed. The signal can range from tens of milivolts to hundreds of milivolts at low volumes or up to around 1.5V at high volumes.
I'm trying to amplify that range of signals to close to 3 or 4 volts, then use a cascade of diode voltage drops to segregate the levels and display a bar graph, like in this example.
My device only needs 4 about volume levels. The VU display is an LED aray. Additionally, each progressive level of volume on the bar graph drives the DC motor faster. Because the signal is music and oscilates quickly, I think 4 levels is close enough to analog output to the motor - basically a 2 bit ADC driving 4 transistors (or Darlington pairs if needed) that drive the motor. I may use a capacitor to smooth out the input to the motor. The motor is rated for 3V and draws about 300mA when given that voltage. If each transistor switch delivers 75mA to the motor, that should be about right. (Though I may have the first switch deliver more amps because 75mA won't actually move the motor.) Also, with that much current, perhaps a small capacitor won't actually help the motor.
I want the device to have a pot to control gain on the input amplifier, the LED array to display output so you know when the amplification is about right, a capacitor and another pot as an adjustable low-pass filter, and a bonus would be a pot to set the minimum voltage that will drive the thing to move at all. And I want the device to be able to accept a wide range of input amplitudes.
I tried using the op-amp as an ideal diode. If that worked, I could amplify that signal to the range I need. Unfortunately, because the negative rail is ground on the op-amp, the negative half of the waveform drives the non-inverting input below ground and the output goes nuts. It's not a useful output signal with an input signal at a low milivolt range.
I tried this design without any luck.
The op-amp chip I'm using is a LMC660 CMOS quad op amp. It doesn't like this design, but I don't have a working osciloscope to see exactly what is wrong with it. The output is offset several hundred milivolts above ground, not really linear, and still needs an input of at least 150 mv to produce meaningful output. In my testing the chip will produce output within 5mV of the negative supply and .8V of the positive supply.
I used a different op amp with a 9V split rail configuration and got results I liked. This was enough headroom to amplify the full waveform and then rectify that, but the 9V battery is not an acceptable solution.
What if I bias the input signal by one diode voltage drop, then rectify that signal. That should get me reliable half-wave rectification, right? Is this the most reasonable approach? How do I get that 0.7V reference voltage? I think I can throw a diode into the feedback loop of an opamp and use the output to get my 0.7V.
I keep failing in this when the implementation details (and physics) gets in the way. That 4V battery might be 3V when it's discharged. If my op amp is only getting within 0.8V of the positive rail, then my output signal is now only 2V. If I'm using diode drops to separate the volume levels, I'm only going to be able to fit two into that range. I have to actually test the op-Amp working at 3V and the theory that the battery might get that low.
Opto-coupler - I tried to get this done quick and dirty orginally. I rectified the signal with an LED with a pot for attenuation and a pot/capacitor combo for adjustable low-pass filter. I taped a photoresistor to the LED, used that as one half of a voltage divider to drive a darlington pair to drive the motor. I tried a variation on that where I used a pot as an adjustable voltage divider and fed those two voltages to a comparitor to toggle the motor on and off. This basically worked but only if the volume was set high enough (very high) to overcome the voltage drop on the LED. Also the 1-bit response on the motor was a let-down. Also, the response on the photoresistor/LED combo as I had it configured was not even close to linear. Also, it was laggy. The photoresistor seemed to take time to respond.
An article suggests using a difference amplifier to get low-power precision rectification with single supply. I don't want to add another component if I can avoid it, and I don't really want to track one of these down just to prototype it. I found the article "More Value from Your Absolute Value Circuit—Difference Amplifier Enables Low-Power, High-Performance Absolute Value Circuit"
Pulse Width Modulation
I'm not sure yet whether I'm going to get the near linear response to signal amplitude I'm hoping for on the motor with the approach I'm suggesting. I was thinking if I can get a rectified output waveform scaled to 3 or 4 volts, and create a sawtooth wave at the same amplitude, I cold use a comparitor on the two waveforms and get pretty good PWM out of it. But I still need a rectified signal.
I looked at this entry on StackExchange, but it suggests using a split-rail or dual-supply, but with my op-amp and voltage levels, the best I could do is a signal that is 2-3V peak to peak, which will rectify to a 1V signal, then maybe(?) I could remove the bias and amplify that signal back up to the range I'm looking for. I would have two biased op-amps delivering a biased rectified signal to another stage of the op amp... I tried to prototype this yesterday without good results.