Construct a High-Pass Filter to Pass 5Hz and Above

  • Thread starter Thread starter DefaultName
  • Start date Start date
  • Tags Tags
    Filter
AI Thread Summary
The discussion revolves around constructing a high-pass filter to allow signals above 5Hz while eliminating DC offsets. Two designs are explored: a series RC filter that works in SPICE and a differentiator using an op-amp that is not functioning correctly. Participants emphasize the importance of selecting appropriate resistor and capacitor values to achieve the desired cutoff frequency without significant attenuation of low frequencies. Issues with DC offset removal in a square wave signal are noted, suggesting potential problems with the circuit setup, particularly regarding grounding. The conversation highlights the practical considerations of filter design, including load effects and the need for high impedance measurements.
DefaultName
Messages
179
Reaction score
0
Hi, I need to construct a filter to pass 5Hz and above. I'm also using this circuit to prevent any DC signals from passing (I have a DC offset that I need to get rid of). I'm using the equation f = 1 / 2*pi*RC (in which I found after derivation).

As of right now, I have two designs:

1) Series RC - works fine in SPICE.
2) Differentiator (OpAmp config) - can't get working on SPICE. I have no idea why it's not working. I've tried connecting pins 1 and 5 of the opamp to GND, as well.

This is what I have below:

http://img138.imageshack.us/img138/3764/14914103um3.png

Code:
* Schematics Netlist *
V_V2         $N_0001 0 5v
V_V3         0 $N_0002 5v
R_R1         $N_0004 $N_0003  79.5k  
C_C1         $N_0005 $N_0004  .1u  
R_R2         $N_0003 $N_0006  79.5k  
X_U2         0 $N_0003 $N_0001 $N_0002 $N_0006 uA741
C_C2_BYPASS         $N_0001 $N_0002  .01u  
V_V_INPUT         $N_0005 0 DC 0 AC 1
+SIN 2.4 50m 100 0 0 0
R_R3         0 $N_0006  10k

I am using PSpice Schematics, Evaluation Version 9.1 - Web Update 1 for my simulations.
 
Last edited by a moderator:
Engineering news on Phys.org
DefaultName said:
Hi, I need to construct a filter to pass 5Hz and above. I'm also using this circuit to prevent any DC signals from passing (I have a DC offset that I need to get rid of). I'm using the equation f = 1 / 2*pi*RC (in which I found after derivation).

As of right now, I have two designs:

1) Series RC - works fine in SPICE.

you should take your output from in between the C and the R.

input ------| |------------------> output
...... |
..... Z resistor.
...... |
...... ---
...... GND (edit out the dots. the dumb PF code doesn't let us use white space)

i see no need for an opamp circuit unless you want a higher order HPF.
 
Oh... so a regular series RC will do then. As far as picking a practical value of R and C... how do I do that if I want to just block DC values? This means I would have to pick something obviously above a few Hz for it to properly filter... Frequency_cutoff > 0. If a real engineer were to design this, how would he/she go about this?

So one of the advantages of using an opamp for filtering is for a higher range of frequencies?
 
DC will always be blocked. but you want your RC product to be large enough that none of the low frequencies that you are interested in are attenuated more than you want them to be. that's what that formula:

f_0 = \frac{1}{2 \pi R C}

is about. your transfer function will be

H(s) = \frac{RCs}{1 + RCs} = \frac{1}{1 + \frac{1}{RCs}}

if you plug in s = j 2 \pi f, evaluate the transfer function for that s, and compute the magnitude, you get for a frequency response

H(j 2 \pi f) = \frac{1}{1 + \frac{1}{j 2 \pi RC f}} = \frac{1}{1 - j \frac{f_0}{f}}

or

|H(j 2 \pi f)|^2 = \frac{1}{1 + \left( \frac{f_0}{f} \right)^2 }

or, in dB,

20 \log_{10}|H(j 2 \pi f)| = -10 log_{10} \left(1 + \left( \frac{f_0}{f} \right)^2 \right)

when f=f0, then you're down to -3.01 dB. at what frequency are you willing to be attenuated by 3 dB? when you decide that, you will know what the RC product (sometimes called a "time constant") is.
 
rbj said:
DefaultName said:
i see no need for an opamp circuit unless you want a higher order HPF.
Or to isolate the load. As it is that R to ground is added to the load; an op amp makes R look ~ infinite to the load.
 
Thank you.

If I were to send a small signal through the circuit, something along the lines of a sine wave with a 100 mV peak to peak signal, would this work at such a low amplitude? This wave will be traveling at f = 200 Hz. I'm planning on using a metal-film resistor and a electrolytic capacitor of some sort. I won't have access to lab until two weeks later, so I was just curious :/ It works on spice... but that isn't as realistic.
 
Sure it will work if you are measuring the output of your filter w/ a high impedance tool like and oscilloscope. However if you actually want to do anything with the filter - like feed it into some small load, say an 8 ohm speaker, then the cut off frequency you originally calculated above will change drastically. To avoid this use the op amp.
 
When choosing RC for filter, are there any difference between values R and C other than tolerance?

For example :
10uF and 8.2k produces cutoff of 1.94Hz
1uF and 82k produces cutoff of 1.94Hz.

The reason i ask is because i was trying to remove a DC offset for my square wave and it didn't do it until i increase the capacitance to 20uF and reduce the resistance to 4.7k. Even so, my square wave goes from -1.45V to 1.85V rather than -1.65V to 1.65V
How can i make it symmetric? Input going in looks good, 0-3.3V.

I have no idea why..?? If i change the resistance to 47k or 82k and keep 20uF it remove just a little like -0.8V to 2.5V.

Thanks
 
edmondng said:
When choosing RC for filter, are there any difference between values R and C other than tolerance?

For example :
10uF and 8.2k produces cutoff of 1.94Hz
1uF and 82k produces cutoff of 1.94Hz.
Im assuming you are building a simple RC circuit, no op amp. No it doesn't make any difference, theoretically. However, the output and input impedances of the filter will differ so that, practically speaking, when you connect the filter to some load the total (R+Rload)C will be different and you'll have a different cut off.

The reason i ask is because i was trying to remove a DC offset for my square wave and it didn't do it until i increase the capacitance to 20uF and reduce the resistance to 4.7k. Even so, my square wave goes from -1.45V to 1.85V rather than -1.65V to 1.65V
How can i make it symmetric? Input going in looks good, 0-3.3V.

I have no idea why..?? If i change the resistance to 47k or 82k and keep 20uF it remove just a little like -0.8V to 2.5V.

Thanks
Something is wrong in your setup, probably some kind of ground loop. Any value of series of capacitance should block the DC voltage.
 
  • #10
capacitance block DC but if you just put a cap in series with the input and no resistor there is no path for the DC to flow to ground.

The setup is just simple. Square wave coming out from an op amp, goes through the RC to remove the DC offset then into another amplifier to increase the amplitude. I have a ground plane so with the via it goes straight to ground. Its puzzling for me too...
 
  • #11
edmondng said:
capacitance block DC but if you just put a cap in series with the input and no resistor there is no path for the DC to flow to ground.

The setup is just simple. Square wave coming out from an op amp, goes through the RC to remove the DC offset then into another amplifier to increase the amplitude. I have a ground plane so with the via it goes straight to ground. Its puzzling for me too...
Im assuming the RC circuit shown in post https://www.physicsforums.com/showpost.php?p=1597214&postcount=2". If you connect your biased square wave generator to the input the DC part will not enter the circuit. In reference to the ground plane loop I mentioned, imagine an additional 'hidden resistance' somewhere in the ground return path. The effect of this is that as the ground current flows through this resistance it creates a voltage drop across the hidden resistance which appears as bias on top of your idea output.
 
Last edited by a moderator:
Back
Top