Second Order Low Pass Filter Proteus Simulation

I am trying to simulate the following circuit on proteus but on the oscilloscope I see the signal has no change in between input and output. In accordance with the data sheet (LM348) I am supplying 18V from pin 11 and -18V from pin 4. I have also attached pin 4 to ground and tried other possible ways but the oscilloscpoe shows the same result. Input voltage is 100mVp-p, frequency 2kHz. What am I doing wrong or what is missing?

• (This schematic is scarily similar to another one posted, recently. But of course the question is different.) If you are doing a transient analysis, you probably want to hook up a small AC signal, via an adequate capacitor in series, to your input resistor point. This circuit can work with DC, but it's usually used with AC signals. I'm a bit confused by what's at the input node there, though. And I don't use that software. So I'll leave this to others to worry about.
– jonk
May 8, 2021 at 2:45
• To debug , remove R6 and cap and check for linear gain on 1st stage of 10k/1k5. This ought to be a BPF on 1st stage and 2nd order 9kHz filter on stages 2 and 3 is inverted. I also do not use Proteus. Maybe your signal source is floating and this is all common mode floating signal which explains why the output is not inverted . Aha the scope has to be grounded ? And why is ch B shorted to D yet not the same wrong signal.... hmmm buggy May 8, 2021 at 2:52
• @TonyStewartEE75 Actually, the whole thing is a low-pass filter. In fact, $R_1$ doesn't even appear in the roll-off frequency calculation. Not in any way, at all. You can change it in any way you want and it has zero effect. It is only used to control the damping factor.
– jonk
May 8, 2021 at 3:06
• Check the wires at the B, C, and D inputs on the oscilloscope, they look like they might be all shorted together, which means the whole 1st stage is bypassed. Don't draw the wires straight across the pins, as you did, leave some room, at least a grid point wide. May 8, 2021 at 7:37
• @TonyStewartEE75 I don't have Proteus, so I don't know if it does, indeed, short out the pins, but it seems like a sensible choice to leave at least one grid point tolerance, especially if you're asking for help on ee.se because you can't debug it yourself. May 8, 2021 at 13:16

1 Answer

Here's your schematic drawn up in LTspice:

(I've used $$\U_4\$$ instead of $$\U_3\$$ and I've added some resistors at the (+) inputs of each opamp.)

The transfer function is:

\begin{align*} \frac{V_\text{OUT}}{V_\text{IN}}=\mathcal{H}\left(s\right)&=K\frac{\omega_{_0}^{\,2}}{s^2+2\zeta\,\omega_{_0}s+\omega_{_0}^{\,2}}\\\\ &\text{where,}\\\\ A_{v}&=\frac{R_5}{R_4}\\\\ K&=\frac1{A_v}\frac{R_6}{R_2}\\\\ \omega_{_0}&=\frac1{\sqrt{\frac1{A_v} R_3 R_6 C_1 C_2}}\\\\ \zeta &= \frac1{2\sqrt{A_v}}\cdot \sqrt{\frac{C_2}{C_1}}\cdot \frac{\sqrt{R_3 R_6}}{R_1} \end{align*}

If you set $$\R_3=R_6=R\$$ and $$\R_4=R_5\$$ and $$\C_1=C_2=C\$$, then this nicely reduces to:

\begin{align*} K&=\frac{R}{R_2}\\\\ \omega_{_0}&=\frac1{R \cdot C}\\\\ \zeta &= \frac1{2}\cdot \frac{R}{R_1} \end{align*}

Given that you select a convenient value for $$\C\$$, you then simply select a value for $$\R\$$ in order to set a desired $$\\omega_{_0}\$$. Once that's done, you use $$\R_2\$$ to set the overall voltage gain and you set $$\R_1\$$ to set the damping factor. It's really simple!! Which is the cool thing about this particular schematic. (Also known as a state-variable filter.)

Bearing in mind that the gain-bandwidth of the LM348 is $$\1\:\text{MHz}\$$, here's a Bode plot from the above, using LTspice:

We expect about a low-pass band voltage gain of $$\20\log_{10}\left(\frac{15\:\text{k}\Omega}{1.5\:\text{k}\Omega}\right)=20\:\text{dB}\$$. Which the above shows.

If I run a transient analysis (.TRAN) then I get the following with an input of $$\2\:\text{kHz}\$$ with a peak-to-peak voltage of $$\1\:\text{V}\$$:

Which looks about as you'd expect, since $$\K=10\$$.

Now, from the Bode plot I expect that at $$\f=100\:\text{kHz}\$$ that $$\k\approx \frac1{10}\$$. So let's plot that out using a transient plot:

Almost exactly as expected, yes?

Frankly? I'm not having any troubles at all. I suspect that you may have not connected up the (+) and (-) rails, properly. That's the place I'd be looking, right now. I simply do not have problems with the circuit. It works just as analysis would suggest.

I can't tell you specifically what is wrong because I don't use your Spice tool and I really don't know what you did wrong. But it's clear that when I attempt to replicate your issues using a different tool, LTspice, then I find exactly what I do expect to see.

Hopefully, someone familiar with your tool will be able to find your error. I apologize that I cannot do more than I have.