Skip to content
LIBRARY
Components.SpringDamper.md

Components.SpringDamper

Models a linear 1D rotational spring and damper acting in parallel.

This component represents a parallel combination of a linear rotational spring and a linear rotational damper. It calculates the total torque based on the relative angular displacement and velocity between its mechanical connection flanges. The spring torque ( ) is proportional to the angular displacement from an unstretched reference angle ( ), defined by the spring constant (). The damper torque ( ) is proportional to the relative angular velocity ( ), defined by the damping constant (). The governing equations are:

This component extends from RotationalComponents.Interfaces.PartialCompliantWithRelativeStates

Usage

RotationalComponents.Components.SpringDamper(d, c, phi_rel0=0.0)

Parameters:

NameDescriptionUnitsDefault value
dDamping constant of the rotational damperN.m.s/rad
cSpring constant of the rotational springN.m/rad
phi_rel0Unstretched (zero torque) relative angle of the springrad0.0

Connectors

  • spline_a - This connector represents a rotational spline with angle and torque as the potential and flow variables, respectively. (Spline)

  • spline_b - This connector represents a rotational spline with angle and torque as the potential and flow variables, respectively. (Spline)

Variables

NameDescriptionUnits
phi_relRelative rotation angle between spline_b and spline_arad
tauTorque transmitted between the splinesN.m
w_relRelative angular velocity between splinesrad/s
a_relRelative angular acceleration between splinesrad/s2
tau_cSpring torque contributionN.m
tau_dDamper torque contributionN.m

Behavior

Source

dyad
"""
Models a linear 1D rotational spring and damper acting in parallel.

This component represents a parallel combination of a linear rotational spring and a linear rotational damper. It calculates the total torque based on the relative angular displacement and velocity between its mechanical connection flanges.
The spring torque (\$\tau_c\$) is proportional to the angular displacement from an unstretched reference angle (\$\\phi_{rel0}\$), defined by the spring constant (\$c\$).
The damper torque (\$\tau_d\$) is proportional to the relative angular velocity (\$w_{rel}\$), defined by the damping constant (\$d\$).
The governing equations are:
```math
\begin{align*}
\tau_c &= c (\\phi_{rel} - \\phi_{rel0}) \\
\tau_d &= d w_{rel} \\
\tau &= \tau_c + \tau_d
\end{align*}
```
"""
component SpringDamper
  extends RotationalComponents.Interfaces.PartialCompliantWithRelativeStates
  "Spring torque contribution"
  variable tau_c::Torque
  "Damper torque contribution"
  variable tau_d::Torque
  "Damping constant of the rotational damper"
  parameter d::RotationalDampingConstant
  "Spring constant of the rotational spring"
  parameter c::RotationalSpringConstant
  "Unstretched (zero torque) relative angle of the spring"
  parameter phi_rel0::Angle = 0.0
relations
  tau_c = c * (phi_rel - phi_rel0)
  tau_d = d * w_rel
  tau = tau_c + tau_d
metadata {"Dyad": {"icons": {"default": "dyad://RotationalComponents/SpringDamper.svg"}}}
end
Flattened Source
dyad
"""
Models a linear 1D rotational spring and damper acting in parallel.

This component represents a parallel combination of a linear rotational spring and a linear rotational damper. It calculates the total torque based on the relative angular displacement and velocity between its mechanical connection flanges.
The spring torque (\$\tau_c\$) is proportional to the angular displacement from an unstretched reference angle (\$\\phi_{rel0}\$), defined by the spring constant (\$c\$).
The damper torque (\$\tau_d\$) is proportional to the relative angular velocity (\$w_{rel}\$), defined by the damping constant (\$d\$).
The governing equations are:
```math
\begin{align*}
\tau_c &= c (\\phi_{rel} - \\phi_{rel0}) \\
\tau_d &= d w_{rel} \\
\tau &= \tau_c + \tau_d
\end{align*}
```
"""
component SpringDamper
  "First rotational spline interface"
  spline_a = Spline() {"Dyad": {"placement": {"icon": {"x1": -50, "y1": 450, "x2": 50, "y2": 550}}}}
  "Second rotational spline interface"
  spline_b = Spline() {"Dyad": {"placement": {"icon": {"x1": 950, "y1": 450, "x2": 1050, "y2": 550}}}}
  "Relative rotation angle between spline_b and spline_a"
  variable phi_rel::Angle
  "Torque transmitted between the splines"
  variable tau::Torque
  "Relative angular velocity between splines"
  variable w_rel::AngularVelocity
  "Relative angular acceleration between splines"
  variable a_rel::AngularAcceleration
  "Spring torque contribution"
  variable tau_c::Torque
  "Damper torque contribution"
  variable tau_d::Torque
  "Damping constant of the rotational damper"
  parameter d::RotationalDampingConstant
  "Spring constant of the rotational spring"
  parameter c::RotationalSpringConstant
  "Unstretched (zero torque) relative angle of the spring"
  parameter phi_rel0::Angle = 0.0
relations
  phi_rel = spline_b.phi - spline_a.phi
  spline_b.tau = tau
  spline_a.tau = -tau
  der(phi_rel) = w_rel
  der(w_rel) = a_rel
  tau_c = c * (phi_rel - phi_rel0)
  tau_d = d * w_rel
  tau = tau_c + tau_d
metadata {"Dyad": {"icons": {"default": "dyad://RotationalComponents/SpringDamper.svg"}}}
end


Test Cases

No test cases defined.

  • Examples

  • Experiments

  • Analyses