Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Differential Equation for a Wien Bridge Oscillator

  1. Oct 10, 2013 #1
    I am trying to write out a differential equation for the Wien bridge oscillator circuit. I have attached a picture of the circuit. I am considering ideal conditions. I am trying to solve for the output voltage but I need help setting up the differential equation.

    Attached Files:

  2. jcsd
  3. Oct 11, 2013 #2
    I went through this a couple of times and still haven't arrived at a right answer.

    I attached my differential equation, some initial conditions and the plot of the solution. However, the solution EXPLODES. Now I'm stuck. By the way, I used the component values from the circuit shown in the picture in my first post.

    Attached Files:

    • DE.PNG
      File size:
      3.6 KB
  4. Oct 11, 2013 #3
    This is exactly what an oscillator should do. In a real oscillator, you will need a non-linear element to reduce the gain when the oscillations reach a particular amplitude. Search the web for Wien Bridge oscillator and you will find discussion of various methods to achieve this.
  5. Oct 11, 2013 #4
    Bill Hewlett used a lamp to decrease the gain as the output increased. That's not exactly my problem. I have attached a picture of the output from an LTspice simulation. You can see that it oscillates with an amplitude of about 420mV. My simulation has two problems. It grows extremely quickly and its frequency is incorrect. I have verified that the frequency is incorrect by using Mathematica to solve the equation that I derived symbolically. The frequency was way too high. This suggests that I did not set up the differential equation correctly.

    I just need help in setting up a differential equation assuming ideal components.

    Attached Files:

  6. Oct 11, 2013 #5
    Your LTspice schematic shows V1 and V2, but your differential equation uses V(t). How does your diffeq correspond to some node on the schematic? Which node?

    Why is the amplitude in your simulation not increasing without bound? What limits the amplitude?
  7. Oct 11, 2013 #6
    It's the output of the op amp.
  8. Oct 11, 2013 #7
    The period of oscillation in your LT spice simulation appears to be about 65 mS; similarly in the image of post #2. This corresponds to a frequency of about 15 Hz.

    The frequency of oscillation for a Wien bridge oscillator is given by 1/(2 Pi R C):


    Your component values give a frequency of 15.9 Hz.

    All three are consistent. I don't see what the problem is.

    Does the image in post #2 show the result of a numerical solution to the diffeq? Is the problem that your symbolic solution is not giving the same frequency?
  9. Oct 11, 2013 #8
    The image (w/a white background) in post #2 is the numerical solution using the built-in numerical ODE solver. I can't recall what the frequency was in the symbolic solution, BUT it wasn't 15.9Hz.
  10. Oct 11, 2013 #9
    Since the numerical diffeq solution is indicating about 15 Hz, and the formula from the Wikipedia page also gives about 15 Hz (15.9 to be exact), it would appear that the diffeq shown in post #2 is correct.

    Unless you post your Mathematica work and result I can't help you any further.
  11. Oct 11, 2013 #10
    If I haven't made a mistake then here is the symbolic solution

    In[1]:= r1 = 10^6; c1 = 10*10^-9; r2 = 10^6; c2 = 10*10^-9; r3 = 20*10^3; r4 = 10^4;
    DSolve[{v''[t] r4/(r3 + r4) + v'[t]*(r4/(r3 + r4)*(1/(r1*c1) + 1/(r2*c2)) - 1/(r1*c2)) + v[t] (r4/(r3 + r4)*1/(r1*r2*c1*c2)) == 0, v[0] == 1/10, v'[0] == 1/10}, v, t]

    Out[1]={{v->Function[{t}, (E^(50*t)*(150*Cos[50*Sqrt[3]*t] - 49*Sqrt[3]*Sin[50*Sqrt[3]*t]))/1500]}}

    In[2]:= 50 Sqrt[3]/(2 Pi) // N

    Out[2]= 13.7832
  12. Oct 11, 2013 #11
    It should be 15.9 Hz, you're correct. The LTspice simulation gives me 15.9Hz. The Mathcad solution seems to give me ~15Hz. The Mathematica solution seems to give me 50/√3 radians/sec which is equivalent to ~13.8 Hz.

    Attached Files:

  13. Oct 12, 2013 #12
    If I adjust the plot range of the plot of the symbolic solution, I get a plot that looks exactly like the one you have in post#2.


    Obviously, the frequency is actually 13.8 Hz. It's not easy to get a good estimate from visual inspection of the plot.

    To better see what's going on, lets take the absolute value of the function v[t] (so we don't get any negative values) and do a log plot. That way we have a lot more dynamic range visible. We can see the increase in amplitude over the whole zero to 1 second range of t:


    You can see the frequency is approximately 13.8 Hz. But now let's see if we can adjust the gain of the circuit and get the oscillations started by your initial conditions to decay, rather than increasing. I think you may have made an error in your diffeq, but by fooling around with the value of R3 I got what I wanted. For example, if I make R3 equal to 5k ohms, the oscillations decay.

    Now, the critical question you're asking is why is the frequency not equal to 15.9 Hz. The reason is found in the behavior of damped systems. See:


    Notice what they say about the frequency of underdamped systems: "The system oscillates (at reduced frequency compared to the undamped case) with the amplitude gradually decreasing to zero."

    The same effect (frequency not equal to the natural frequency, ωo) happens if the system gain is such that the oscillations are increasing in amplitude. Any time the solution consists of a sinusoidal function multiplied by an exponential the frequency will not be ωo.

    Here's a plot of the decaying oscillations with R3 set to 5k ohms; now the frequency is 15.4 Hz:


    Now with R3 set to 10k ohms the oscillations neither decay nor increase, with a peak amplitude of .1, your initial condition. The solution has no exponential multiplying the sinusoidal part of the solution, and the oscillation frequency is equal to ωo, which is 1/(2 Pi R C) in the case of a Wien bridge circuit):


    Attached Files:

  14. Oct 12, 2013 #13
    A. I wish I could thank you more than once. You've done a fantastic job.

    B. Yes, I was asking why the frequency in the original solution was not 15.9Hz, but I believe that there might be an error with the DiffEq rather than assume damping.

    C. Thank you!
  15. Oct 12, 2013 #14
    I asked you earlier (post #5) why the amplitude in the (LT spice) simulation was not increasing. I now know that the reason is that LT spice is implicitly using the right diffeq to simulate the circuit. Your component values are giving the right gain (gain of 3) for a Wien bridge oscillator to run without increasing or decreasing amplitude, which is what LT spice shows.

    You must have made a mistake in setting up your diffeq involving the circuit gain (R3 and R4; this affects damping), but apparently not in the frequency determining part. :frown:
  16. Oct 12, 2013 #15
    I found the error in your diffeq--you left out a term. Now with this term included, the oscillations are sustained, no increase or decrease with time, with R3 equal to 20k as expected:


    Attached Files:

    • Pic5.png
      File size:
      47.1 KB
  17. Oct 12, 2013 #16
    I notice that what I said in post #12 about solutions with exponential terms having a different frequency than ωo doesn't apply to this Wien bridge oscillator. Changing the value of R3 not only changes the damping, but maintains the frequency constant because it appears in all three of the constant coefficients of the diffeq.
  18. Oct 12, 2013 #17
    Can you post how you arrived at that equation? I just want to see the process you went through. I really appreciate all the work you're doing to help me out. :D

    EDIT: Never mind. Figured it out!
    Last edited: Oct 12, 2013
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Similar Discussions: Differential Equation for a Wien Bridge Oscillator
  1. Wien Bridge Oscillator (Replies: 3)

  2. Wien-bridge oscillator (Replies: 2)