I’ll keep this short, because I don’t think many people read my blog. If you want me to dive a bit deeper into the maths then let me know, and maybe I’ll explain further what’s going on. Blogging mathematics is hard, though, as HTML is ill-suited to mathematical notation.
I have been tempted to analyse an RC (Resistor-Capacitor) circuit again. Here’s the schematic you’re usually presented with:
Seems like it out to be easy enough. The voltage across the capacitor against time is given by
Vout(t) = Vin * (1 – exp(-t/R/C)) … EQN1
What’s not to like? Well, quite a bit, actually. I ran into this problem when I tried to build my brown noise generator. I ended up using resistors and capacitors that were much higher than i was expecting.
What went wrong? Well, the problem is that the calculation above doesn’t take into account what other stuff there might be attached to Vout. Text books and tutorials never mention the nitty-gritty details that may have profound effects on a circuit.
The unstated assumption is that the load across Vout has a high impedance (resistance). But what if the resistance is low. Say you attach a small speaker across Vout. Well, small speakers might only have a resistance of 4 ohms. That changes everything!
To gauge how things change, let’s model a load across Vout, giving it some resistance. Here’s our revised circuit:
Note that when the diagram says “Node”, it should of course read “Mesh”.
Let i1, i2, ic be the currents flowing through R1, R2 and C respectively, with corresponding voltages flowing across them as V1, V2, and Vc.
Then, in Mesh A, i1 = (Vin – Vc)/R1.
In Mesh B, i2 = Vc/R2
and i1 = i2 + ic.
For the capacitor, ic is related to Vc by the differential formula:
ic = C dVc/dt
Put the equations above together to get first-order ODE (Ordinary Differential Equation):
C dVc/dt + (1/R1 + 1/R2) Vc = Vin/R1
This yields the solution:
Vc(t) = Vin * R2/(R1+R2) * ( 1 – exp(-(R1+R2)t/(C*R1*R2)) … EQN2
I will consider going into further detail if there’s sufficient interest in this blog article.
You’ll notice that it has the same basic form, but with a bit more terms tagged on. You’ll notice some voltage divider stuff going on, and stuff related to the charging-time.
But let’s take a look at some simplifications. If I assume that there is a high impedance across the capacitor – i.e. R2 is large, esp. in relation to R1 – then R2/(R1+R2) ~~ 1, and (R1+R2)/(R1*R2) ~~ 1/R1. I’m using “~~” to denote the approximation symbol.
So, EQN2 reduces to EQN1, which is exactly what we’d expect.
If we go the other way, and assume that R2 << R1 ( “<<” means very much less than) – say for example where you put a small speaker across the capacitor in place of R2, then R2/(R1+R2) ~~ R2/R1 and (R1+R2)/(R1 * R2) ~~ 1/R2.
So EQN2 reduces to
Vc(t) = Vin * R2/R1 * (1 – exp( -t/(R2*C)) … EQN3
Notice that nasty term R2/R1. It means that the speaker isn’t getting much voltage.
This means that as a result of putting in a low-pass filter, the power to the speaker is reduced compared to if you removed the filter, so you may need to amplify the signal to the speak.
But there’s more. You have affected the charging time of the capacitor. Look at the exponential term. The resistance is R2, which is less than R. So your cut-off frequency is higher than it was before.
This is something that I have never seen discussed on other sites: how to actually design circuits to account for all this. You’re left to figure it out for yourself, and the problems are left unstated.
As to what to do: hmmm, that’s something that I need to look into. An Opamp springs to mind, although I have used a BJT successfully in the past. I’ve only a loose grip on how to handle these problems, and I’ll post about them in a future post, assuming I’ve got my head around them.