Files
jameswitzeman.net/content/articles/oscillators.html
T
2026-05-29 11:30:10 -07:00

351 lines
19 KiB
HTML
Executable File

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html >
<head><title>Oscillators</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="generator" content="TeX4ht (https://tug.org/tex4ht/)">
<meta name="originator" content="TeX4ht (https://tug.org/tex4ht/)">
<!-- html -->
<meta name="src" content="oscillators.tex">
<link rel="stylesheet" type="text/css" href="oscillators.css">
</head><body
>
<h3 class="sectionHead"><span class="titlemark">1 </span> <a
id="x1-10001"></a>Oscillating Circuits</h3>
<!--l. 12--><p class="noindent" >A discussion of synthesizer oscillators requires an introduction to simple oscillating circuits. We
will discuss the most basic oscillating circuits, then we will move on to oscillators with
easily-tunable frequencies. Then we will tackle the most complex issue for the purposes of musical
synthesis: <span
class="ecti-1000">voltage control. </span>This is the important part! If we can control an oscillator&#8217;s frequency by
voltage, then we can make another circuit change its voltage, like a sequencer for example. Let&#8217;s
check it out!
<!--l. 18--><p class="noindent" >
<h4 class="subsectionHead"><span class="titlemark">1.1 </span> <a
id="x1-20001.1"></a>Passive Oscillators</h4>
<!--l. 20--><p class="noindent" >The simplest oscillators are those which rely on <span
class="ecti-1000">passive components</span>, electrical components which
do not generate power or &#8217;add amplitude&#8217; to a signal. These are components like resistors,
inductors, and capacitors which only dissipate, store, or release already-existing power introduced
by another component. An example of a non-passive component would be a power supply or a
transistor. Passive components tend to be governed by simpler rules that are easier to understand
and exploit.
<!--l. 26--><p class="indent" > The simplest oscillating circuit to my knowledge is the Resistor-Inductor-Capacitor or RLC
circuit. It&#8217;s not an &#8217;RIC&#8217; circuit because the letter I commonly represents current in electrical
engineering, so we use L to indicate inductors or inductance.
<div class="center"
>
<!--l. 30--><p class="noindent" >
<!--l. 36--><p class="noindent" ><img
src="oscillators0x.svg" alt="RLC
" ></div>
<!--l. 39--><p class="indent" > The diagram above depicts an RLC-circuit, with each component in series. We can come up
with an equation to describe its behavior, but first we need to know how each component responds
to voltage and current. <span
class="ecbx-1000">Resistors </span>are governed by <span
class="ecbx-1000">Ohm&#8217;s Law</span>:
<div class="math-display" >
<img
src="oscillators1x.svg" alt="V = IR, I = V-,
R
" class="math-display" ></div>
<!--l. 43--><p class="nopar" > where <span
class="cmmi-10">R </span>is resistance, measured in Ohms (<span
class="cmr-10">&#x03A9;</span>). Resistors are called <span
class="ecbx-1000">linear components </span>because
their voltage-current response is linear i.e. an increase in voltage or current causes a linear increase
in the other. <span
class="ecbx-1000">Inductors </span>are governed by:
<div class="math-display" >
<img
src="oscillators2x.svg" alt=" &#x222B;
V = Ldi, i = 1 V dt
dt L
" class="math-display" ></div>
<!--l. 49--><p class="nopar" > where <span
class="cmmi-10">L </span>is inductance, measured in Henries (H). Note that this means that the voltage across an
inductor responds to a change in current. If a current is constant, then the voltage vanishes. But if
we change the current, a voltage is generated across the inductor. That means if we send an
<span
class="ecti-1000">alternating current </span>which is always changing through the inductor, then we will get a
voltage across the inductor. This is unusual because an inductor is essentially just a
short-circuit and yet when a changing current passes through it, it will have a voltage like a
resistive element! You could say that inductors <span
class="ecti-1000">resist a change in current </span>in this sense of
resistance.
<!--l. 59--><p class="indent" > Finally, <span
class="ecbx-1000">Capacitors </span>are governed by the equation:
<div class="math-display" >
<img
src="oscillators3x.svg" alt="i = C dv,
dt
" class="math-display" ></div>
<!--l. 60--><p class="nopar" > where <span
class="cmmi-10">C </span>is the capacitance of the component, measured in Farads (F). Here, the capacitor&#8217;s
behavior is similar but the relationship is sort of reversed or flipped, if you will. Now, if we have a
constant voltage across the capacitor then no current will flow. This makes sense because a
capacitor is essentially made from two conductive plates seperated from one another by a
non-conductive material. This is effectively a break in the circuit, as indicated by the standard
electrical symbol for a capacitor. But if we change the voltage across the capacitor, it starts to
conduct! changing the voltage somehow forces current to flow between the plates! It&#8217;s no mystery,
this is due to some complicated rules of physics known generally as <span
class="ecti-1000">electrodynamics</span>, but that&#8217;s for
another time.
<!--l. 69--><p class="indent" > Okay. We can connect these three equations mathematically by utilizing <span
class="ecbx-1000">Kirchoff&#8217;s Laws of</span>
<span
class="ecbx-1000">Voltage and Current</span>. This sounds a little complicated but it relies on some straightforward
principles. The core idea is that any current which enters a wire junction (usually called a <span
class="ecti-1000">node</span>)
must exit the junction in some way. For many reasons, another logical rule that follows from this is
that the voltages across each component in a loop must sum to zero. If this were not true, it would
result in charge pooling somewhere in the wire, which is almost always impossible. Here&#8217;s the
laws:
<ul class="itemize1">
<li class="itemize">
<!--l. 76--><p class="noindent" ><span
class="ecbx-1000">KIRCHOFF&#8217;S CURRENT LAW: </span>All current entering a node must exit i.e. the
sum of currents entering/leaving a node must always be <span
class="ecti-1000">zero.</span>
</li>
<li class="itemize">
<!--l. 78--><p class="noindent" ><span
class="ecbx-1000">KIRCHOFF&#8217;S VOLTAGE LAW: </span>The sum of component voltages over any loop
of wire must be zero.</li></ul>
<!--l. 81--><p class="indent" > If the current entering each node must also be leaving it, in our RLC circuit this means the
current through each node is the same. This is because the circuit is a closed loop! If the current
were not the same across each node, then it would have to pool somewhere or escape into thin air.
We can express this mathematically:
<div class="math-display" >
<img
src="oscillators4x.svg" alt="iR + iL + iC = 0.
" class="math-display" ></div>
<!--l. 84--><p class="nopar" > We know the equations for the current through a resistor and capacitor:
<div class="math-display" >
<img
src="oscillators5x.svg" alt="v dv
--+ iL + C --= 0.
R dt
" class="math-display" ></div>
<!--l. 86--><p class="nopar" > We know that voltage across an inductor is proportional to the change in current.
If we integrate with respect to time, we can get a figure for the current through an
inductor:
<div class="math-display" >
<img
src="oscillators6x.svg" alt=" &#x222B;
iL =-1 vdt
L
" class="math-display" ></div>
<!--l. 89--><p class="nopar" >
<div class="math-display" >
<img
src="oscillators7x.svg" alt="v 1 &#x222B; dv
R-+ L- v dt+ C-dt = 0.
" class="math-display" ></div>
<!--l. 90--><p class="nopar" > Now we just differentiate:
<div class="math-display" >
<img
src="oscillators8x.svg" alt="C d2v + 1-dv+ -1v = 0,
dt2 R dt L
" class="math-display" ></div>
<!--l. 92--><p class="nopar" > or
<div class="math-display" >
<img
src="oscillators9x.svg" alt=" &#x2032;&#x2032; &#x2032; 1 1
av + bv + cv = 0; a = C, b = R-, c = L-.
" class="math-display" ></div>
<!--l. 93--><p class="nopar" > I would like to state here that the variable <span
class="cmmi-10">v </span>is a function dependent on time, so it should be
written as <span
class="cmmi-10">v</span><span
class="cmr-10">(</span><span
class="cmmi-10">t</span><span
class="cmr-10">) </span>for clarity. We prefer to be unclear here, because it is less cluttered to write
equations that way. Just keep this in mind.
<!--l. 97--><p class="indent" > What we have stumbled upon here is a truth that I find quite exciting but it has been the
nightmare of many underclassmen electrical engineers forced to learn this before finishing their
math coursework (who could I possibly be talking about here?): This circuit is governed by a
<span
class="ecbx-1000">homogenous second-order ordinary differential equation! </span>Unfortunately we cannot go over
the basics of ODE&#8217;s here. Like many stressed undergraduate engineers before you, you
will have to take my word as gospel. A homogenous second-order ODE is basically
an equation where the function (<span
class="cmmi-10">v </span>in this case) is not defined directly in terms of an
independent variable like time or <span
class="cmmi-10">x </span>or space etc, but in terms of its own differentials. This
equation is <span
class="ecti-1000">second-order </span>because the function is defined in terms of its second differential.
If you are very clever, you may already be thinking of how one might solve such an
equation to find <span
class="cmmi-10">v</span><span
class="cmr-10">(</span><span
class="cmmi-10">t</span><span
class="cmr-10">) </span>in terms of <span
class="cmmi-10">t </span>alone and not in terms of its differentials. If you are
even cleverer, you may be thinking about the classic function <span
class="cmmi-10">f</span><span
class="cmr-10">(</span><span
class="cmmi-10">t</span><span
class="cmr-10">) = </span><span
class="cmmi-10">e</span><sup><span
class="cmmi-7">x</span></sup><span
class="cmmi-10">, </span>because its
differential/integral is itself. If you are some kind of genius, you may even be considering also the
trigonometric functions (sine, cosine, not so much tangent here), because they have a similar
property. This will put you on the right track. Going forward, you will find that the
equations that govern these circuits involve many natural exponentials and sine waves
because of this property. Most ordinary differential equations are solved using complicated
techniques that involve relating differentials with natural exponentials and waves. I
cannot get into specifics here but if you are interested, I would keep this property in
mind.
<!--l. 115--><p class="indent" > OKAY. Back to the equation. Our equation can be represented by something called its
<span
class="ecti-1000">characteristic equation:</span>
<div class="math-display" >
<img
src="oscillators10x.svg" alt="ar2 + br+ c = 0.
" class="math-display" ></div>
<!--l. 116--><p class="nopar" > This is just a representation of the equation that represents the order of each differential by a
power of the variable <span
class="ecti-1000">r</span>. If we solve it like a polynomial we get the quadratic formula:
<div class="math-display" >
<img
src="oscillators11x.svg" alt=" &#x221A; -2-----
r1,2 = - b±--b---4ac.
2a
" class="math-display" ></div>
<!--l. 119--><p class="nopar" > You might realize that it is possible for the root of our characteristic equation to be complex
(<span
class="cmmi-10">r </span><span
class="cmr-10">= </span><span
class="cmmi-10">&#x03BB; </span><span
class="cmr-10">+ </span><span
class="cmmi-10">&#x03BC;i</span>). When this is the case, our solution is of the form:
<div class="math-display" >
<img
src="oscillators12x.svg" alt="v(t) = C1e&#x03BB;tcos(&#x03BC;t)+ C2e&#x03BB;tsin(&#x03BC;t),
" class="math-display" ></div>
<!--l. 122--><p class="nopar" > where <span
class="cmmi-10">C</span><sub><span
class="cmr-7">1</span></sub><span
class="cmmi-10">,C</span><sub><span
class="cmr-7">2</span></sub> are constants determined by the <span
class="ecti-1000">initial conditions </span>of the system. Once all
the math is done, we will take a break to build some intuition for all this nonsense.
The important part is that the reason this is a solution has to do with the fact that
the differentials of exponentials and sine waves are equal to themselves or related to
themselves.
<!--l. 127--><p class="indent" > Now we can start getting specific with our constants. If we assume our system begins
with the components already charged (meaning we have allowed a current source to
keep a constant voltage across the components for enough time for the capacitor to
be charged to the positive voltage <span
class="cmmi-10">V</span> <sub><span
class="cmr-7">+</span></sub>), then we can say <span
class="cmmi-10">v</span><sub><span
class="cmr-7">0</span></sub> <span
class="cmr-10">= </span><span
class="cmmi-10">V</span> <sub><span
class="cmr-7">+</span></sub><span
class="cmmi-10">. </span>If it has sat for a
long long time, then there will be no change in voltage, so also we can say <span
class="cmmi-10">v</span><span
class="cmsy-10">&#x2032;</span><sub><span
class="cmr-7">0</span></sub> <span
class="cmr-10">= 0</span><span
class="cmmi-10">.</span>
So:
<div class="math-display" >
<img
src="oscillators13x.svg" alt="v(0) = V+ = C1, v&#x2032;(0) = 0 = &#x03BB;C1 + &#x03BC;C2,
" class="math-display" ></div>
<!--l. 131--><p class="nopar" >
<div class="math-display" >
<img
src="oscillators14x.svg" alt="C1 = V+, C2 = - &#x03BB;V+.
&#x03BC;
" class="math-display" ></div>
<!--l. 132--><p class="nopar" >
<!--l. 134--><p class="indent" > We can keep defining constants and it will quickly cause your mind to cloud over. The point
here is that if we charge up this circuit and then let it run, the voltage and current will oscillate
back and forth. I have included below a graph of a potential oscillation. The frequency of this
oscillation is determined by the constant <span
class="cmmi-10">&#x03BC;</span>, which is equal to the inverse of the root of
the product of inductance and capacitance (<span
class="cmmi-10">&#x03BC; </span><span
class="cmr-10">=</span> <img
src="oscillators15x.svg" alt="--1-
&#x221A;LC--" class="frac" align="middle">). In electrical engineering, it is
usually called the <span
class="ecbx-1000">angular frequency </span>and is more commonly denoted with the greek
character <span
class="cmmi-10">&#x03C9;</span>. We found the constants <span
class="cmmi-10">C</span><sub><span
class="cmr-7">1</span></sub><span
class="cmmi-10">,C</span><sub><span
class="cmr-7">2</span></sub> to show that they are dependent on the initial
voltage we charge the circuit to, as well as the properties of the three components. We
have shown mathematically that the behavior of the circuit under certain parameters
(such that <span
class="cmmi-10">b</span><sup><span
class="cmr-7">2</span></sup> <span
class="cmmi-10">&#x003C; </span><span
class="cmr-10">4</span><span
class="cmmi-10">ac</span>) will be oscillatory in nature. But why does the circuit oscillate
sometimes?
<div class="center"
>
<!--l. 147--><p class="noindent" >
<!--l. 148--><p class="noindent" ><img
src="./img/natural-RLC.png" alt="PIC"
width="21" height="21" ></div>
<!--l. 151--><p class="indent" > Well, recall that an inductor generates a voltage once the current through it changes, and that
a capacitor begins conducting current once the voltage across it changes. When we charge the
capacitor to some voltage and then close the circuit, the voltage across the capacitor suddenly
becomes the voltage across the resistor as well. When there is a voltage across a resistor which is
connected in a loop, then a current must flow. Conversely, the moment the circuit is closed it
forces the voltage to drop because a current must flow through the resistor. If the capacitor
were alone in series with the resistor, then it would simply discharge to a voltage of
0.
<!--l. 158--><p class="indent" > As the capacitor pushes current through the inductor, the inductor begins to respond. Initially
it acts as a short, but as the current through it changes, it begins to generate a voltage. That
voltage causes the inductor to push current into the capacitor again, charging it. Then once the
inductor has discharged its stored energy, the capacitor is recharged and it begins to conduct
again. This continues until all of the electrical energy is dissipated through the resistor (and
realistically also through the resistances in the capacitor and inductor) as heat until there is none
left. Kind of cool!
<!--l. 164--><p class="indent" > If we tuned the capacitance and inductance properly, we could get one of these circuits to
oscillate at an audible frequency. This would not be an ideal circuit for music making, and there
are two big reasons for this:
<ul class="itemize1">
<li class="itemize">
<!--l. 168--><p class="noindent" >The circuit will only oscillate for a short period after it is triggered, preventing us from
ever using it to play any sustained note.
</li>
<li class="itemize">
<!--l. 170--><p class="noindent" >YOU CAN&#8217;T TUNE THE FREQUENCY! You would need a variable inductor or
transformer, and those solutions quickly become impractical. Unless you like plucky
drone music, you&#8217;re out of luck here.</li></ul>
<!--l. 174--><p class="indent" > I&#8217;m sure there are many other kinds of passive oscillating circuits, but I think we have done
enough here. Next we will consider <span
class="ecti-1000">active oscillators.</span>
<!--l. 179--><p class="noindent" >
<h4 class="subsectionHead"><span class="titlemark">1.2 </span> <a
id="x1-30001.2"></a>Active Oscillators</h4>
</body></html>