AccelerationSourceAccelerationSource Icon

AccelerationSource

Defines the forced angular movement of a spline based on an input acceleration signal.

This component models a rotational element where the angular acceleration of a spline, relative to its support, is directly driven by an external input signal, a_ref. It calculates the relative angle phi between the spline and its support. The relative angular velocity w and angular acceleration a are then determined as the time derivatives of phi:

\[w = \frac{d\\phi}{dt}\]

\[a = \frac{dw}{dt} = \frac{d^2\\phi}{dt^2}\]

The primary function of this component is to ensure that the calculated relative angular acceleration a of the spline equates to the provided input signal a_ref:

\[a = a_{ref}\]

This makes the component act as a source of prescribed acceleration for the spline's motion relative to its support.

This component extends from PartialElementaryOneSplineAndSupport

Usage

RotationalComponents.AccelerationSource()

Connectors

  • spline - This connector represents a rotational spline with angle and torque as the potential and flow variables, respectively. (Spline)
  • support - This connector represents a rotational spline with angle and torque as the potential and flow variables, respectively. (Spline)
  • a_ref - This connector represents a real signal as an input to a component (RealInput)

Variables

NameDescriptionUnits
phi_supportAbsolute angle of the support splinerad
phiRotation angle of spline with respect to supportrad
wAngular velocity of spline with respect to supportrad/s
aAngular acceleration of spline with respect to supportrad/s2

Behavior

\[ \begin{align} \mathtt{support.phi}\left( t \right) &= \mathtt{phi\_support}\left( t \right) \\ \mathtt{support.tau}\left( t \right) &= - \mathtt{spline.tau}\left( t \right) \\ \mathtt{phi}\left( t \right) &= \mathtt{spline.phi}\left( t \right) - \mathtt{phi\_support}\left( t \right) \\ w\left( t \right) &= \frac{\mathrm{d} \mathtt{phi}\left( t \right)}{\mathrm{d}t} \\ a\left( t \right) &= \frac{\mathrm{d} w\left( t \right)}{\mathrm{d}t} \\ a\left( t \right) &= \mathtt{a\_ref}\left( t \right) \end{align} \]

Source

"""
Defines the forced angular movement of a spline based on an input acceleration signal.

This component models a rotational element where the angular acceleration of a spline, relative to its support, is directly driven by an external input signal, `a_ref`.
It calculates the relative angle `phi` between the spline and its support. The relative angular velocity `w` and angular acceleration `a` are then determined as the time derivatives of `phi`:

math w = \frac{d\phi}{dt}

math a = \frac{dw}{dt} = \frac{d^2\phi}{dt^2}

The primary function of this component is to ensure that the calculated relative angular acceleration `a` of the spline equates to the provided input signal `a_ref`:

math a = a_{ref}

This makes the component act as a source of prescribed acceleration for the spline's motion relative to its support.
"""</span>
<span class="hljs-keyword">component</span> AccelerationSource
&nbsp;&nbsp;<span class="hljs-keyword">extends</span> <span class="hljs-link"><a href="https://help.juliahub.com/dyad/dev/stdlib/RotationalComponents/types/PartialElementaryOneSplineAndSupport.html">PartialElementaryOneSplineAndSupport</a></span>
&nbsp;&nbsp;<span class="hljs-comment">"Absolute angular acceleration of spline with respect to support as input signal"</span>
&nbsp;&nbsp;<span class="hljs-symbol">a_ref</span> = <span class="hljs-link"><a href="https://help.juliahub.com/dyad/dev/stdlib/Dyad/connectors/RealInput.html">RealInput</a></span>() {"Dyad": {"placement": {"icon": {"x1": -50, "y1": 450, "x2": 50, "y2": 550}}}}
&nbsp;&nbsp;<span class="hljs-comment">"Rotation angle of spline with respect to support"</span>
&nbsp;&nbsp;<span class="hljs-keyword">variable</span> <span class="hljs-symbol">phi</span>::<span class="hljs-link"><a href="https://help.juliahub.com/dyad/dev/stdlib/Dyad/types/Angle.html">Angle</a></span>
&nbsp;&nbsp;<span class="hljs-comment">"Angular velocity of spline with respect to support"</span>
&nbsp;&nbsp;<span class="hljs-keyword">variable</span> <span class="hljs-symbol">w</span>::<span class="hljs-link"><a href="https://help.juliahub.com/dyad/dev/stdlib/Dyad/types/AngularVelocity.html">AngularVelocity</a></span>
&nbsp;&nbsp;<span class="hljs-comment">"Angular acceleration of spline with respect to support"</span>
&nbsp;&nbsp;<span class="hljs-keyword">variable</span> <span class="hljs-symbol">a</span>::<span class="hljs-link"><a href="https://help.juliahub.com/dyad/dev/stdlib/Dyad/types/AngularAcceleration.html">AngularAcceleration</a></span>
<span class="hljs-keyword">relations</span>
&nbsp;&nbsp;phi = spline.phi - phi_support
&nbsp;&nbsp;w = der(phi)
&nbsp;&nbsp;a = der(w)
&nbsp;&nbsp;a = a_ref
<span class="hljs-keyword">metadata</span> {
&nbsp;&nbsp;"Dyad": {"icons": {"default": "dyad://RotationalComponents/Pos-Speed-Acc-Move.svg"}}
}
<span class="hljs-keyword">end</span></code></pre>
Flattened Source
"""
Defines the forced angular movement of a spline based on an input acceleration signal.

This component models a rotational element where the angular acceleration of a spline, relative to its support, is directly driven by an external input signal, `a_ref`.
It calculates the relative angle `phi` between the spline and its support. The relative angular velocity `w` and angular acceleration `a` are then determined as the time derivatives of `phi`:

math w = \frac{d\phi}{dt}

math a = \frac{dw}{dt} = \frac{d^2\phi}{dt^2}

The primary function of this component is to ensure that the calculated relative angular acceleration `a` of the spline equates to the provided input signal `a_ref`:

math a = a_{ref}

This makes the component act as a source of prescribed acceleration for the spline's motion relative to its support.
"""</span>
<span class="hljs-keyword">component</span> AccelerationSource
&nbsp;&nbsp;<span class="hljs-comment">"Primary rotational shaft spline connector"</span>
&nbsp;&nbsp;<span class="hljs-symbol">spline</span> = <span>Spline</span>() {"Dyad": {"placement": {"icon": {"x1": 950, "y1": 450, "x2": 1050, "y2": 550}}}}
&nbsp;&nbsp;<span class="hljs-comment">"Support spline connector"</span>
&nbsp;&nbsp;<span class="hljs-symbol">support</span> = <span>Spline</span>() {
&nbsp;&nbsp;&nbsp;&nbsp;"Dyad": {
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"placement": {"icon": {"iconName": "support", "x1": 450, "y1": 950, "x2": 550, "y2": 1050}}
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;}
&nbsp;&nbsp;<span class="hljs-comment">"Absolute angle of the support spline"</span>
&nbsp;&nbsp;<span class="hljs-keyword">variable</span> <span class="hljs-symbol">phi_support</span>::<span>Angle</span>
&nbsp;&nbsp;<span class="hljs-comment">"Absolute angular acceleration of spline with respect to support as input signal"</span>
&nbsp;&nbsp;<span class="hljs-symbol">a_ref</span> = <span>RealInput</span>() {"Dyad": {"placement": {"icon": {"x1": -50, "y1": 450, "x2": 50, "y2": 550}}}}
&nbsp;&nbsp;<span class="hljs-comment">"Rotation angle of spline with respect to support"</span>
&nbsp;&nbsp;<span class="hljs-keyword">variable</span> <span class="hljs-symbol">phi</span>::<span>Angle</span>
&nbsp;&nbsp;<span class="hljs-comment">"Angular velocity of spline with respect to support"</span>
&nbsp;&nbsp;<span class="hljs-keyword">variable</span> <span class="hljs-symbol">w</span>::<span>AngularVelocity</span>
&nbsp;&nbsp;<span class="hljs-comment">"Angular acceleration of spline with respect to support"</span>
&nbsp;&nbsp;<span class="hljs-keyword">variable</span> <span class="hljs-symbol">a</span>::<span>AngularAcceleration</span>
<span class="hljs-keyword">relations</span>
&nbsp;&nbsp;support.phi = phi_support
&nbsp;&nbsp;support.tau = -spline.tau
&nbsp;&nbsp;phi = spline.phi - phi_support
&nbsp;&nbsp;w = der(phi)
&nbsp;&nbsp;a = der(w)
&nbsp;&nbsp;a = a_ref
<span class="hljs-keyword">metadata</span> {
&nbsp;&nbsp;"Dyad": {"icons": {"default": "dyad://RotationalComponents/Pos-Speed-Acc-Move.svg"}}
}
<span class="hljs-keyword">end</span></code></pre>


Test Cases

No test cases defined.

  • Examples
  • Experiments
  • Analyses