Unexpected results when simulating 3rd Order Bessel Filter

Thread Starter

the.juc

Joined Oct 5, 2020
8
Hi all. I'm kind of new to filter design and am currently working on a project for a pulse oximeter. I wanted to simulate a 3rd Order Bessel filter with a cut off frequency of 6Hz (I wrote 3Hz a few times accidentally, but I calculated with 6Hz). I've included an attachment of the work I did to obtain resistor and capacitor values in case I went wrong there.

I used Circuitlab to simulate the circuit and test its step response and frequency response (I've included the plots for both). The frequency response seems relatively normal with the appropriate corner frequency. However, the step response seems quite odd with a small spike initially and then a negative voltage before rising up. Any clues as to why this is happening and where I have gone wrong?

Screen Shot 2020-10-05 at 1.39.56 AM.png
Screen Shot 2020-10-05 at 1.40.19 AM.png
Screen Shot 2020-10-05 at 1.35.24 AM.png
Screen Shot 2020-10-05 at 1.39.13 AM.png
Screen Shot 2020-10-05 at 1.36.25 AM.png
 
Last edited by a moderator:

LvW

Joined Jun 13, 2013
1,752
Tran-Analysis: Why do you stop at 340µsec? The step reponse is in the nV range only...
You should extend the time at least up to one period of the input signal.
Remember: Even the Bessel step response has a certain kind of overshoot.
 

Papabravo

Joined Feb 24, 2006
21,158
Question: Why did you choose a Bessel filter for this application? Like all choices it involves some compromises. Do you know what they are?
 

Thread Starter

the.juc

Joined Oct 5, 2020
8
Hello,

To start, the first section is not correct.
It is missing a resistor on the input, to work as a filter.
See the attached PDF for filter design.
Section 16.3 shows the higher order configurations.

Bertus
The first section does not have a resistor as it has a current input which in practice will actually be photodiodes. So the first op-amp serves as a current-to-voltage converter and shouldn't have a resistor on input.
 

Thread Starter

the.juc

Joined Oct 5, 2020
8
Tran-Analysis: Why do you stop at 340µsec? The step reponse is in the nV range only...
You should extend the time at least up to one period of the input signal.
Remember: Even the Bessel step response has a certain kind of overshoot.
Screen Shot 2020-10-05 at 11.31.26 AM.png

Here it is extended significantly. The current to voltage amplifier should theoretically result in a 200mV response as the resistor is 200kΩ and the current supplied is 1uA. I'm not quite sure why it is not producing the expected step response.

Additionally, here is the exact same circuit I have done previously with different values (meant to produce a higher voltage) and its responses.
Screen Shot 2020-10-05 at 11.26.22 AM.png
Screen Shot 2020-10-05 at 11.26.45 AM.png
Screen Shot 2020-10-05 at 11.27.19 AM.png
 
Last edited by a moderator:

Thread Starter

the.juc

Joined Oct 5, 2020
8
Question: Why did you choose a Bessel filter for this application? Like all choices it involves some compromises. Do you know what they are?
I chose a Bessel filter as it has little ripple in the frequency response and little to no overshoot in the step response. From my understanding, ripples in the frequency would cause greater deviations which we do not want when using a photodiode to measure oxygen levels.
 

Papabravo

Joined Feb 24, 2006
21,158
I chose a Bessel filter as it has little ripple in the frequency response and little to no overshoot in the step response. From my understanding, ripples in the frequency would cause greater deviations which we do not want when using a photodiode to measure oxygen levels.
The primary feature of a Bessel filter, indeed the reason for choosing to use this topology, is uniform group delay in the passband. If you don't know what group delay is or why it may or may not be important in your application, then it is likely that you have chosen poorly.

A filter with a maximally flat (no ripples) response in the passband is called a Butterworth filter. Unless there is some other reason you can't use this filter it is what I recommend.
Even if you used a Chebyshev filter which does have ripple in the passband, you can reduce the ripple to the point that you cannot see it on a frequency response plot.
You may be obsessing about things with no relevance.

The way to write a proper specification for a filter is to define the edges of the passband, the stopband, and the transition band in terms of the required attenuation at each point. then you will be in a position to determine both the topology and the order of candidate filters with engineering precision, That is the only proper way to do it.
 

Thread Starter

the.juc

Joined Oct 5, 2020
8
Why is it either/or?
A Bessel has both a flat response in the passband and very little overshoot.
I think Bessel accomplishes the task pretty well. Butterworth could potentially do it too. But the question is not a matter of which type I chose but why the responses are not what would be expected.
 

Thread Starter

the.juc

Joined Oct 5, 2020
8
So I think I have figured it out. The cut off frequency was set to 6 Hz but the function generator was set to 250Hz. So it would make sense for the response to be so small as it falls outside of the passband. I lowered the function generator to 3Hz and got the following step response.
 

Attachments

crutschow

Joined Mar 14, 2008
34,280
I lowered the function generator to 3Hz and got the following step response.
Step response is done with a step (pulse) input, not a sinewave.

To check the sinewave frequency response you would sweep the generator over the desired frequency range.
 

Thread Starter

the.juc

Joined Oct 5, 2020
8
Step response is done with a step (pulse) input, not a sinewave.

To check the sinewave frequency response you would sweep the generator over the desired frequency range.
The function generator was set to a square wave. So it should be the same as a simulated “step” I believe.
 

crutschow

Joined Mar 14, 2008
34,280
The function generator was set to a square wave. So it should be the same as a simulated “step” I believe.
Okay.
When you mentioned the generator frequency, I assumed it was a sinewave, since frequency is not particularly relevant for observing the step response unless it's to fast to observe the full risetime of the step to a steady-state output, (which your plot does not show).
 

soyez

Joined Aug 17, 2020
51
The main segment doesn't have a resistor as it has a current info which by and by will really be photodiodes. So the first operation amp fills in as a current-to-voltage converter and shouldn't have a resistor on input.
Hi all. I'm kind of new to filter design and am currently working on a project for a pulse oximeter. I wanted to simulate a 3rd Order Bessel filter with a cut off frequency of 6Hz (I wrote 3Hz a few times accidentally, but I calculated with 6Hz). I've included an attachment of the work I did to obtain resistor and capacitor values in case I went wrong there.

I used Circuitlab to simulate the circuit and test its step response and frequency response (I've included the plots for both). The frequency response seems relatively normal with the appropriate corner frequency. However, the step response seems quite odd with a small spike initially and then a negative voltage before rising up. Any clues as to why this is happening and where I have gone wrong?

View attachment 218792
View attachment 218791
View attachment 218795
View attachment 218793
View attachment 218794
The main segment doesn't have a resistor as it has a current info which by and by will really be photodiodes. So the first operation amp fills in as a current-to-voltage converter and shouldn't have a resistor on input.
 
Top