Difference between revisions of "Damped oscillation"

From TheAnalogThing
Line 61: Line 61:
 
[[File:DO Inverter01.png|thumb|300px|Basic Inverter Scheme]]
 
[[File:DO Inverter01.png|thumb|300px|Basic Inverter Scheme]]
 
|-
 
|-
| '''The integrator''', the input (or inputs) can be found on the left and the output on the right. Coming from above you find '''ẍ<sub>0</sub>''', which represents the starting condition of the integrator and can be thought of as the integration constant.
+
| '''The integrator''', the input (or inputs) can be found on the left and the output on the right.
 +
 
 +
Coming from above you find '''ẍ<sub>0</sub>''', which represents the starting condition of the integrator (often referred to initial condition) and can be thought of as the integration constant. When there is no initial condition drawn in the circuit, it is set to 0.
  
 
'''Note: Due to technical reasons the output of an integrator is negated! ẍ -->-ẋ'''
 
'''Note: Due to technical reasons the output of an integrator is negated! ẍ -->-ẋ'''
Line 69: Line 71:
 
|}
 
|}
  
With these basic computing elements we are able to generate '''ẍ = -(d*ẋ + k*x) / m'''
+
With these basic computing elements we are able to generate '''ẍ = -(d*ẋ + k*x) / m'''.
 +
 
 +
The basic idea is to '''start with an integrator assuming ẍ as it´s input.'''  
  
 
{| class="wikitable"
 
{| class="wikitable"
Line 75: Line 79:
 
|-
 
|-
 
! Description !! Circuit
 
! Description !! Circuit
 +
|-
 +
|As mentioned above, start with an integrator and assume the highest derivative as input.
 +
 +
'''ẍ''' represents the deflection over time. If '''ẍ<sub>0</sub>''' is set to 1, the damped oscillation starts with maximum deflection.
 +
||[[File:IntegratorSymbol.png|thumb|300px|Generating all derivatives]]
 
|-
 
|-
 
| When putting two integrators together, you can generate '''ẋ''' and '''x''' || [[File:TwoIntegrators.png|thumb|300px|Generating all derivatives]]
 
| When putting two integrators together, you can generate '''ẋ''' and '''x''' || [[File:TwoIntegrators.png|thumb|300px|Generating all derivatives]]

Revision as of 16:31, 7 December 2021

Execution of an analog simulation

The modeling of a damped oscillation is a good starting point for analog programming beginners. This article shall give a detailed explanation how to implement a simulation on The Analog Thing using the full repatriation method to derive a computer circuit (originally developed by Lord Kelvin around 1875) and to get results on an oscilloscope.

There are four major steps, all of which are equally crucial:

  1. Describe the to be simulated system with differential equations
  2. Derive a computer circuit from these equations
  3. Wire the computer circuit on the analog computer and adjust parameters
  4. Choose viable visualization method (usually oscilloscopes) and connect the computer circuit

This article will focus on point 2. to 4. and requires a basic understanding of differential equations.

1. Mathematical description of a damped oscillation

Basic model of a damped oscillation

The first and often hardest step of modeling a to be simulated system on an analog computer is to give an exact mathematical description of the system in the form of differential equations. For this example the description is rather short:

Find all acting forces, three in this case:

  - Spring  force Fs = k*x;
    k = spring coefficient, x = deflection
  - Inertia force Fm = m*a;
    m = mass, a = acceleration
  - Damper  force Fd = d*v;
    d = damper coefficient, v = velocity

Set the sum of all forces to zero (definition of an isolated system):

  Fm  + Fd  + Fs  = 0
  m*a + d*v + k*x = 0

Replace the velocity v with and the acceleration a with

  v = ẋ
(the velocity equals the first derivative of x)
  a = ẍ
(the acceleration equals the second derivative of x)
    m*a + d*v + k*x 
  = m*ẍ + d*ẋ + k*x = 0

Now we have an exact description the damped oscillation in the form of a differential equation.

Lastly, solve this equation for the highest derivative the finish the full repatriation:

-> ẍ = -(d*ẋ + k*x) / m

2. Derivation of a computer circuit

At first, we need three basic computing elements which can probably be found on every electrical analog computer:

Description Circuit
The coefficient potentiometer, which is used to to multiply an input x with the factor a so a*x is generated.

Note: a can only accept values between 0 and 1!

Can also be used as dividing factor so a/x is generated.

Coefficient potentiometer Scheme
The inverter // summer, the input (or inputs) can be found on the left and the output on the right.

Note: Due to technical reasons the output of a summer is negated! x+y --> -(x+y)

At the basis of the output inversion a summer with one input functions as inverter and therefore the summer and the inverter share the same circuit symbol.

Basic Summer Scheme
Basic Inverter Scheme
The integrator, the input (or inputs) can be found on the left and the output on the right.

Coming from above you find 0, which represents the starting condition of the integrator (often referred to initial condition) and can be thought of as the integration constant. When there is no initial condition drawn in the circuit, it is set to 0.

Note: Due to technical reasons the output of an integrator is negated! ẍ -->-ẋ

Electrical analog integrators can only integrate over time.

Basic Integrator Scheme

With these basic computing elements we are able to generate ẍ = -(d*ẋ + k*x) / m.

The basic idea is to start with an integrator assuming ẍ as it´s input.

Description Circuit
As mentioned above, start with an integrator and assume the highest derivative as input.

represents the deflection over time. If 0 is set to 1, the damped oscillation starts with maximum deflection.

Generating all derivatives
When putting two integrators together, you can generate and x
Generating all derivatives
Example Example
Example Example
Example Example