I have a sine wave signal centered around 2.5 volts (1/2 Vcc) in which I require the the upper half only, brought down to 0 volts, so a 2 volt peak-to-peak input around 2.5V would become a half sine wave from 0 - 1 Volts.

I have tried a subtracting amplifier configuration to simply subtract the DC level from the sin wave but this introduces a 0.5 volt to 1 volt DC offset onto the output signal or generates spikes at the start of the output waveform depending on what op amp I use.

Hopefully someone can help or I may have to re-think my design completely.

/******************** Additional information ********************/

Here is the initial schematic I had for this circuit,

enter image description here

The input sine wave of variable amplitude but centred around 2.5 Volts.
R1 and C2 low pass filter the signal at 0.1 Hz to get the DC level which is then buffered by IC1B and used as a reference for all the other operations
IC1A inverts the original signal around the DC level
IC2A and B then subtract the DC level from the inverted and non inverted versions of the signal.

Monitoring the points between sections of the circuit on an oscilloscope showed the expected values at all points except Out A and Out B, which had waveforms as shown in the link below.

enter image description here

the peaks of the waveforms when using a normal LM358 op amp were correct but there seemed to be a 0.5 - 1 Volt floor on the signal, trying an OPA2333 rail to rail op amp as IC2 gave the third waveform with a large spike at the initial phase of the signal which is not really desirable.

unfortunately adding the following active rectifier circuit prior to R4 and R10 did not have any effect on the output with an LM358 and I then managed to kill my only OPA2333 amplifier so can't test if it would have any effect on that.

enter image description here

the signals from Out A and Out B will be used to drive power transistors to source the two halves of a centre tapped transformer.

  • \$\begingroup\$ If the frequency of your sine wave is too high, could it be a problem caused by the bandwidth of your op amp? \$\endgroup\$
    – acm
    Jul 23, 2014 at 15:07
  • \$\begingroup\$ Can you post any relevant schematics? Possibly the subtracting amplifier you tried, or maybe your current design? \$\endgroup\$
    – Funkyguy
    Jul 23, 2014 at 15:08
  • 1
    \$\begingroup\$ First a disclaimer, I haven't done many single supply opamp circuits. So I'd try doing it in two steps, first a half wave rectifier. (Try searching for "active rectifier" or "precision half wave rectifier".) And then do your subtraction. What are you trying to do? Maybe there is an easier method. (I'm not sure if this is an answer or a comment.) \$\endgroup\$ Jul 23, 2014 at 15:41
  • \$\begingroup\$ The frequency is 50HZ as its part of a sine wave inverter circuit im working on. The active rectifier idea looks promising though, I shall do some testing and post schematics if nothing comes from it. \$\endgroup\$
    – SlyRaccoon
    Jul 23, 2014 at 17:12
  • \$\begingroup\$ Just a thought. Try using 4 x silicon diodes (e.g. 1N4148 signal diodes) in series with a 1k0 resistor from the final cathode to ground. Each should drop just over 0.6V leaving only the positive half cycle across the resistor. Anything lower (i.e. the negative half cycle) should be blocked by the diodes. If you can tweak the 2.5V to a slightly lower value you should be able to get the waveform just right. \$\endgroup\$ Jul 23, 2014 at 17:23

2 Answers 2


I think a series clipper can do this job. The circuit of which is shown below.


Vd in schematic is the forward drop of diode D.


Just to flesh out my comment above.

enter image description here

D1 - D4 would be small signal silicon diodes such as 1N4148. The 1k0 is not a critical value but will draw a small current through the diodes and set an operating point.

Generally the forward voltage drop of a diode is a problem when constructing a precision rectifier. In this case it is used to advantage to eliminate the standing DC voltage level. It should be possible to adjust this DC standing level to match the forward drops on the diodes leaving only the top half of the cycle as output.

  • \$\begingroup\$ Hi Jim, This works quite well but is a bit "dirty" for my liking, I am looking for something a bit more accurate and repeatable. \$\endgroup\$
    – SlyRaccoon
    Jul 24, 2014 at 8:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.