Electronic – Please troubleshoot this full-wave rectifier circuit using op-amps

controloperational-amplifierrectifier

I am designing a full-wave rectifier using op-amps, which need to rectify a signal between 0 and 10 V, to a voltage between 5 and 10 V.

This is the circuit I designed

The circuit works properly when the input voltage is between 0 and 5 V. That is:

Input -> Output
5 V -> 5 V
4 V -> 6 V
3 V -> 7 V
2 V -> 8 V
1 V -> 9 V
0 V -> 10 V

But when the input is between 5 V and 10 V, it works properly for the first few volts but then the voltage drops off, as if there is a voltage drop somewhere:

Input -> Output
6 V -> 6 V
7 V -> 7 V
8 V -> 8 V
9 V -> 7.8 V
10 V -> 6.86 V

Can anybody tell me how I can solve it, or what the issue is?

The desired result would be:
Input -> Output
6 V -> 6 V
7 V -> 7 V
8 V -> 8 V
9 V -> 9 V
10 V -> 10 V

By the way, I know it's not in the the schematic, but the LM324 is being powered from a single rail supply of 12 V.

Best Answer

Working with the limitations of output swing , it is possible to barely fit 10Vpp rectified to 5 to 10V with > 10k load on the output stage. The diode cause the 5Vp positive swing to be inverted towards -0.7 which clips the signal in the 1st stage. The 2nd stage inverts again with a gain of 2 but the BJT output with a high side Darlington and current source that drops from V+ by 2 to 3 V based on load from 10k to 2K.

The low side Vol is pretty close to 0V with a single Vce(sat) driver.

The solution is to cut positive swing gain then boost it for 2nd stage. This is easily done by reducing R11,R12 by the same % such as 50%. Then unity gain is restored. R11 cuts stage 1 gain then R12 restores the gain in stage 2 only for positive input swing.

Bonus

If you wanted to eliminate the 5V offset a resistor from 12V to U3-2 of 2.4k will reduce to x mV offset, resulting in 0 to 5V output. Other ways can achieve the same result.

Since the open loop gain is 1.5e4 the diode voltage error is reduced by 1.5e4, which is the “large signal gain”.