7.1 KiB
+++ title = "Mass Spring Damper Systems" author = ["Dehaeze Thomas"] draft = false +++
- Tags
- [Tuned Mass Damper]({{< relref "tuned_mass_damper.md" >}})
One Degree of Freedom
Model and equation of motion
Let's consider Figure 1 where:
- \(m\) is the mass in [kg]
- \(k\) is the spring stiffness in [N/m]
- \(c\) is the damping coefficient in [N/(m/s)]
- \(F\) is the actuator force in [N]
- \(F_d\) is external force applied to the mass in [N]
- \(w\) is ground motion
- \(x\) is the absolute mass motion
{{< figure src="/ox-hugo/mass_spring_damper_system.png" caption="<span class="figure-number">Figure 1: Mass Spring Damper System" >}}
Transmissibility:
\begin{equation} \frac{x}{w}(s) = \frac{c s + k}{m s^2 + c s + k} = \frac{2 \xi \frac{s}{\omega_0} + 1}{\frac{s^2}{\omega_0^2} + 2 \xi \frac{s}{\omega_0} + 1} \end{equation}
Compliance:
\begin{equation} \frac{x}{F}(s) = \frac{x}{F_d}(s) = \frac{1}{m s^2 + c s + k} = \frac{1/k}{\frac{s^2}{\omega_0^2} + 2 \xi \frac{s}{\omega_0} + 1} \end{equation}
with:
- \(\omega_0 = \sqrt{k/m}\) the natural frequency in [rad/s]
- \(\xi = \frac{1}{2} \frac{c}{\sqrt{km}}\) the damping ratio [unit-less]
A quality factor \(Q\) can also be defined:
\begin{equation} Q = \frac{1}{2\xi} \end{equation}
This corresponds to the amplification at the natural frequency \(\omega_0\).
Matlab model
%% Mechanical properties
m = 1; % Mobile mass [kg]
k = 1e6; % stiffness [N/m]
xi = 0.1; % Modal Damping
c = 2*xi*sqrt(k*m);
%% Compliance: Transfer function from F [N] to x [m]
Gf = 1/(m*s^2 + c*s + k);
%% Transmissibility: Transfer function from w [m] to x [m]
Gw = (c*s + k)/(m*s^2 + c*s + k);
{{< figure src="/ox-hugo/mass_spring_damper_1dof_compliance.png" caption="<span class="figure-number">Figure 2: 1dof Mass spring damper system - Compliance" >}}
{{< figure src="/ox-hugo/mass_spring_damper_1dof_transmissibility.png" caption="<span class="figure-number">Figure 3: 1dof Mass spring damper system - Transmissibility" >}}
Two Degrees of Freedom
Model and equation of motion
Consider the two degrees of freedom mass spring damper system of Figure 4.
{{< figure src="/ox-hugo/mass_spring_damper_2dof.png" caption="<span class="figure-number">Figure 4: 2 DoF Mass Spring Damper system" >}}
We can write the Newton's second law of motion to the two masses:
\begin{align} m_2 s^2 x_2 &= F_2 + (k_2 + c_2 s) (x_1 - x_2) \\ m_1 s^2 x_1 &= F_1 + (k_1 + c_1 s) (x_0 - x_1) + (k_2 + c_2 s) (x_2 - x_1) \end{align}
The goal is to have \(x_1\) and \(x_2\) as a function of \(F_1\), \(F_2\) and \(x_0\).
When, we have:
\begin{equation} \boxed{x_1 = \frac{(m_2 s^2 + c_2 s + k_2) F_1 + (k_1 + c_1 s) (m_2 s^2 + c_2 s + k_2) x_0 + (k_2 + c_2 s) F_2}{(m_1 s^2 + c_1 s + k_1)(m_2 s^2 + c_2 s + k_2) + m_2 s^2 (c_2 s + k_2)}} \end{equation}
\begin{equation} \boxed{x_2 = \frac{(c_2s + k_2)F_1 + (c_2s + k_2)(k_1 + c_1 s) x_0 + (m_1 s^2 + c_1 s + k_1 + c_2 s + k_2) F_2}{(m_1 s^2 + c_1 s + k_1)(m_2 s^2 + c_2 s + k_2) + m_2 s^2 (c_2 s + k_2)}} \end{equation}
We can see that the effects of \(x_0\) and \(F_1\) are related with a factor \((c_1 s + k_1)\).
If we are interested by \(x_2-x_1\):
\begin{equation} (x_2 - x1) = \frac{- m_2 s^2 F_1 - (m_2 s^2)(k_1 + c_1 s) x_0 + (m_1 s^2 + c_1 s + k_1) F_2}{(m_1 s^2 + c_1 s + k_1)(m_2 s^2 + c_2 s + k_2) + m_2 s^2 (c_2 s + k_2)} \end{equation}
x1 | x2 | x2-x1 | |
---|---|---|---|
x0 | (c1s + k1)(m2s2 + c2s + k2) | (c1s + k1)(c2s + k2) | - m2s2*(k1 + c1s) |
F1 | m2s2 + c2s + k2 | c2s + k2 | - m2s2 |
F2 | c2s + k2 | m1s2 + c1s + k1 + c2s + k2 | m1s2 + c1s + k1 |
Matlab model
%% Values for the 2dof Mass-Spring-Damper system
m1 = 5e2; % [kg]
k1 = 2e6; % [N/m]
c1 = 2*0.01*sqrt(m1*k1); % [N/(m/s)]
m2 = 10; % [kg]
k2 = 1e6; % [N/m]
c2 = 2*0.01*sqrt(m2*k2); % [N/(m/s)]
%% Transfer functions
G_x0_to_x1 = (c1*s + k1)*(m2*s^2 + c2*s + k2)/((m1*s^2 + c1*s + k1)*(m2*s^2 + c2*s + k2) + m2*s^2*(c2*s + k2));
G_F1_to_x1 = (m2*s^2 + c2*s + k2)/((m1*s^2 + c1*s + k1)*(m2*s^2 + c2*s + k2) + m2*s^2*(c2*s + k2));
G_F2_to_x1 = (c2*s + k2)/((m1*s^2 + c1*s + k1)*(m2*s^2 + c2*s + k2) + m2*s^2*(c2*s + k2));
G_x0_to_x2 = (c1*s + k1)*(c2*s + k2)/((m1*s^2 + c1*s + k1)*(m2*s^2 + c2*s + k2) + m2*s^2*(c2*s + k2));
G_F1_to_x2 = (c2*s + k2)/((m1*s^2 + c1*s + k1)*(m2*s^2 + c2*s + k2) + m2*s^2*(c2*s + k2));
G_F2_to_x2 = (m1*s^2 + c1*s + k1 + c2*s + k2)/((m1*s^2 + c1*s + k1)*(m2*s^2 + c2*s + k2) + m2*s^2*(c2*s + k2));
G_x0_to_d2 = -m2*s^2*(c1*s + k1)/((m1*s^2 + c1*s + k1)*(m2*s^2 + c2*s + k2) + m2*s^2*(c2*s + k2));
G_F1_to_d2 = -m2*s^2/((m1*s^2 + c1*s + k1)*(m2*s^2 + c2*s + k2) + m2*s^2*(c2*s + k2));
G_F2_to_d2 = (m1*s^2 + c1*s + k1)/((m1*s^2 + c1*s + k1)*(m2*s^2 + c2*s + k2) + m2*s^2*(c2*s + k2));
From Figure 5, we can see that:
- the low frequency transmissibility is equal to one
- the high frequency transmissibility to the second mass is smaller than to the first mass
{{< figure src="/ox-hugo/mass_spring_damper_2dof_x0_bode_plots.png" caption="<span class="figure-number">Figure 5: Transfer functions from x0 to x1 and x2 (Transmissibility)" >}}
The transfer function from \(F_1\) to the mass displacements (Figure 6) has the same shape than the transmissibility (Figure 5).
However, the low frequency gain is now equal to \(1/k_1\).
{{< figure src="/ox-hugo/mass_spring_damper_2dof_F1_bode_plots.png" caption="<span class="figure-number">Figure 6: Transfer functions from F1 to x1 and x2" >}}
The transfer functions from \(F_2\) to the mass displacements are shown in Figure 7:
- the motion \(x_1\) is smaller than \(x_2\)
{{< figure src="/ox-hugo/mass_spring_damper_2dof_F2_bode_plots.png" caption="<span class="figure-number">Figure 7: Transfer functions from F2 to x1 and x2" >}}