Filter topology and cuttof guess

Status
Not open for further replies.

dark

Member
I have been given this schematic (hard to see, low resolution) , can't get the original source as shown, can anyoune guess the corner frequency/ poles in this filter . The filter is for interfacing to ADC . I uess butterworth/sallenkey ??

Regards/
 

Attachments

  • filter.GIF
    10.2 KB · Views: 241
It's a couple of cascaded Sallen-Key low pass filters followed by one more R/C pole.

If you want to annotate the schematic with your best guess as to component values, it wouldn't be too hard to determine the pole frequencies.
 
Thanks , but still can you guess the cuttof frequency and the number of poles this filter might be providing for ADC.
 
Hi Dark,

It appears to be a fifth order filter but you need to draw or scan the
schematic better to show the component values if you want someone
to tell you what the cutoff frequency is. The pic you posted is too
blurry to see the component values.
The number of poles will most likely be 5.
 
Hi MrAl ,

I too cannot see it properly its blurry in the pdf , anyways I guess the components as attached below.


Regards
-Adi
 

Attachments

  • filter2.GIF
    10 KB · Views: 225
These plots were generated using the annotated resistor values, with the value 120 changed to 120k (edited in response to audioguru's comment). The capacitors were all assumed to be .1uF. The gains are not in dB, but just the numerical gains. The frequency axis is in Hz.

The first image, Plota, shows the responses of the various stages.

Red is the response of the first opamp stage, blue is the response of the second stage, black is the response of the final RC roll off. Green is the overall response.

Plotb shows the pole positions. The pole at -40 + j0 is due to the final RC roll off. It looks like it's a little off if the goal was to get a Butterworth response.

Plotc shows the pole positions if the resistor associated with the final RC roll off is changed to 30k.
 

Attachments

  • Plota.jpg
    15.6 KB · Views: 230
  • Plotb.jpg
    6.3 KB · Views: 196
  • Plotc.jpg
    6.3 KB · Views: 191
Last edited:
Dark,

The Electrician did great work for you!

I've attached a PDF of some class notes I have on common OPAMP filters, including the one in your schematic. This is helpful if you want to understand the basic cutoff locations, the Q and the gain of the stages. However, The Electrician is showing you the correct way to study this type of circuit. It's best to look at the pole placement to optimize a filter response.

The first stage has a second order low-pass role off, as does the second. Then the final RC is just a first order low pass with cutoff w=1/RC.
 

Attachments

  • Filters.pdf
    26.9 KB · Views: 225
A 2nd-order Sallen and key filter oscillates when it has equal component values and has a gain exceeding 3.0.
The second filter with annotated parts values has a gain of 834 so it is an oscillator, not a filter.

I think the simulation used 120k, not 120 ohms.
The first stage should have a little more gain to add some peaking so the total response of the filter is flatter.
 

Attachments

  • bad 5th-order filter.PNG
    19.5 KB · Views: 218
Hi again,


To find the poles in terms of R1,R2, C2, C2, etc all you have to do
is look up two things:

1. The Transfer function for the Sallen Key type used in the schematic
2. The transfer function for the first order LP filter (last filter) used

You can then calculate the poles for #1 algebraically in terms of R1, R2, etc.
You can also then calculate same for #2 above.
Once you have all these poles (two for each SK filter and one for the last filter)
you have all the poles of the transfer function.

Since the three filter stages are all current isolated the poles of the
individual stages are the poles of the total response, plus, since the
highest order of any given stage is 2 you can calculate the poles
algebraically so you can come up with a form like this:
H(s)=(s-z1)*(s-z2)/((s-p1)*(s-p2)*(s-p3)) or similar where
all of the values are actually the circuit elements like R1,R2, etc.
This will give you a formula like this:
H(s)=R1*R2*C1...
where you dont have to plug in the actual values of R1, etc., just yet.
You can do the poles the same:
p1=R1*R2*C1...etc.
p2=...
p3=...
Then when you get around to determining what values you want to use
you can plug them into the formula that you calculated earlier.
This saves work sometimes when you want to look at the response or
the poles or zeros with a lot of different values for the components.

Of course it also helps when you want to look at the sensitivity of
the response to a given component value.

After i wrote this i realized a better way to explain this stage independence
is to say that the total response H(s) can also be expressed in terms of the
individual stage responses:
H(s)=S1(s)*S2(s)*S3(s)
where each stage has poles and zeros of their own:
S1=sum(z)/sum(p)
and since each stage response is multiplied that means any pole of any stage
is also a pole of the total response. This makes it rather easy to calculate
the poles and keep the form of the resulting equations in terms of R1, R2, etc.
rather than have to plug in values like 1k, 10k, 100k, right away.
 
Last edited:
The first stage should have a little more gain to add some peaking so the total response of the filter is flatter.

The attached plot is as before (with the R in the final RC changed to 30k), but with the addition of an ideal 5th order Butterworth characteristic in yellow-orange.

It just goes to show you that it's not enough to get the poles on a semicircle; they have to be at the right places on the semicircle.
 

Attachments

  • Plotd.jpg
    16.4 KB · Views: 202
Hi All ,

Thanks for the help . What is troubling me is the response isnt flat as simulated by "The Electritian " (what software you use). I am attaching my simulation below and draw in color BLUE with hand what is likely to be expected by the input side of the ADC . The cuttof frequency looks like to be 30Hz or around it . But I am afraid the resistor and capacitor values arnt doing a good job.
This shows that I couldnt guess the resistor values exactly but it was pretty close . Now as I have attached the requirement can anyone suggest me the values of R and C in reverse engineer .

One more question as we are feeding a DC to our ADC , then what does it means to leave this 25-30Hz at the input ? , it should have been cut off as low as possible 5-10Hz with some attenuation to the 60HZ humm as well.
The sensor is a PZT type which oscillates when when measuring at low frequency due to its placement on a moving vehicle .I think it shoould be filtered much lower then this to get more clean DC or its an over kill!!



Regards
-Adi
 

Attachments

  • filter3.GIF
    17.3 KB · Views: 341
Hi again,


I am not sure if you are doing the simulation right or not, but depending
on what values you make those feedback resistors (the two that go to
the inverting terminals) you will either see a peaked response or a
flat response. I am assuming you want a flat response typical of a
passive low pass filter for this app.

The easiest way to get there is to eliminate the two feedback resistors
(the two that go to the inverting terminal of each amplifier) and short
the output directly to the inverting terminal.
Next, make all the remaining resistors equal to each other, and all
caps equal to each other.
Since now all of the cutoff frequencies are the same, it makes it
very easy to calculate the cutoff frequency of the entire filter:
Fo=1/(2*pi*R*C)

Now with C=0.1uf for example, for a cutoff frequency around 7Hz
(just for example) R would come out to about 230k. That means
all four caps get set to 0.1uf and all five resistors get set to 230k.
The cutoff level for the second order sections will be -6db and for
the last section -3db, so you will end up with around -15db at the
cutoff. The rolloff is -40 for each second order section and -20db
for the last, so that's about -100db per decade for the entire filter.

A practical problem that comes up next is that the last resistor
might be too large to properly feed the input to the next stage
(such as an AD converter input). The AD converter may require
a lower impedance in that the real part of it has to be lower.
Lets say that the AD converter requires a max of 25k ohms input.
To get there from what we have already in the example, we
divide 230k by 25k and we get 9.2, and then take that 9.2 and
multiply the cap value (0.1uf) by 9.2 and we get 0.92uf.
This means we can change the last resistor (only) to 25k to meet
the AD converter input impedance requirement if we also change
the last cap to 0.92uf. Since 1uf is a close standard value, we
can use that and either keep the 25k or reduce it to 23k.
Many AD converters require 10k input or less, so for that type
we would have to divide 230k by 10k (and get 23) and multiply
that 23 times 0.1uf to get 2.3uf as the value for the last cap
when we change the last resistor to 10k.

That should get you there pretty quick.

Just to recap:
1. Remove all the feedback resistors and jump outputs to inverting inputs.
2. Compute the value of every R and C using Fo=1/(2*pi*R*C).
3. Impedance scale the last stage resistor to meet the AD input requirement
by using Cnew=Cold*Rold/Rnew and Rnew=Zad.

Please let us know how you make out with this.
 
Hi MrAl,
The filter you describe is a Bessel type with a very droopy cutoff.
We are talking about a Butterworth type with an absolutely flat response then a sharp cutoff. The active filters in a Butterworth filter are peaked a little so that the response is down only -3dB at the cutoff frequency.
 

I've attached a Matlab bode plot for the component values you quoted. This seems to agree with what you expect and what The Electrician showed too. You must have made a mistake in your simulation because at low frequency you show a 90 degree phase shift instead of 0 degrees. This indicates a low fequency zero. Also, your phase shift at high frequency is 180 degrees which indicates that, if the circuit really has 5 poles, there is other zeros hiding in the midband somewhere. The circuit you showed us should not be capable of doing this since it should have 5 poles and no zeros. No combination of component values can produce what you simulated. You must have set up the circuit wrong.
 

Attachments

  • bode.jpg
    39 KB · Views: 208
Last edited:


Hi audioguru,

Thanks for mentioning that. I do have to wonder however, why you
want to choose that filter response when it sounds like he wants to
filter the dc from a low frequency noisy input mixed with dc.
I could have misunderstood the application, but it seems to be that
we would want to reject all frequencies above dc as
well as possible and not attenuate any if possible. Forcing the
response to be -3db at the cutoff doesnt seem to have any useful
purpose for this app, again unless i misunderstood something.
He also didnt mention what kind of time profile he needed so i
didnt think that was important either.

BTW, there is another approach we have not talked about yet and
that is going totally digital (well almost). The implementation of
such would reduce the hardware requirement to one resistor and
one capacitor, regardless of the type of characteristic response
required.
This kind of implementation might require a bit more program code
memory but probably not a huge amount. A few calculations have
to be performed, usually done as part of the micro controller program.
 
Last edited:
It is a lowpass filter, it is DC coupled.
A PZT sensor doesn't pass DC so the circuit will not be biased correctly anyway without a buffer amplifier at the input.

The original circuit appeared as a Butterworth filter because it had equal RC values and the opamps had gain.
 
Hello again,


Oh a piezo sensor? This makes a little sense now (some pun intended).
 
I don't know if the piezo sensor senses vibration, engine knock or G-force.
 
Hi again,


Yeah i dont know anything else yet either...tire pressure?

I also dont know if he is using the sensor directly or it is part of
something else like a wireless tire pressure sensor.
 
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…