AccelerationSource IconAccelerationSource
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
| Name | Description | Units |
|---|---|---|
phi_support | Absolute angle of the support spline | rad |
phi | Rotation angle of spline with respect to support | rad |
w | Angular velocity of spline with respect to support | rad/s |
a | Angular acceleration of spline with respect to support | rad/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
<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>
<span class="hljs-comment">"Absolute angular acceleration of spline with respect to support as input signal"</span>
<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}}}}
<span class="hljs-comment">"Rotation angle of spline with respect to support"</span>
<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>
<span class="hljs-comment">"Angular velocity of spline with respect to support"</span>
<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>
<span class="hljs-comment">"Angular acceleration of spline with respect to support"</span>
<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>
phi = spline.phi - phi_support
w = der(phi)
a = der(w)
a = a_ref
<span class="hljs-keyword">metadata</span> {
"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
<span class="hljs-comment">"Primary rotational shaft spline connector"</span>
<span class="hljs-symbol">spline</span> = <span>Spline</span>() {"Dyad": {"placement": {"icon": {"x1": 950, "y1": 450, "x2": 1050, "y2": 550}}}}
<span class="hljs-comment">"Support spline connector"</span>
<span class="hljs-symbol">support</span> = <span>Spline</span>() {
"Dyad": {
"placement": {"icon": {"iconName": "support", "x1": 450, "y1": 950, "x2": 550, "y2": 1050}}
}
}
<span class="hljs-comment">"Absolute angle of the support spline"</span>
<span class="hljs-keyword">variable</span> <span class="hljs-symbol">phi_support</span>::<span>Angle</span>
<span class="hljs-comment">"Absolute angular acceleration of spline with respect to support as input signal"</span>
<span class="hljs-symbol">a_ref</span> = <span>RealInput</span>() {"Dyad": {"placement": {"icon": {"x1": -50, "y1": 450, "x2": 50, "y2": 550}}}}
<span class="hljs-comment">"Rotation angle of spline with respect to support"</span>
<span class="hljs-keyword">variable</span> <span class="hljs-symbol">phi</span>::<span>Angle</span>
<span class="hljs-comment">"Angular velocity of spline with respect to support"</span>
<span class="hljs-keyword">variable</span> <span class="hljs-symbol">w</span>::<span>AngularVelocity</span>
<span class="hljs-comment">"Angular acceleration of spline with respect to support"</span>
<span class="hljs-keyword">variable</span> <span class="hljs-symbol">a</span>::<span>AngularAcceleration</span>
<span class="hljs-keyword">relations</span>
support.phi = phi_support
support.tau = -spline.tau
phi = spline.phi - phi_support
w = der(phi)
a = der(w)
a = a_ref
<span class="hljs-keyword">metadata</span> {
"Dyad": {"icons": {"default": "dyad://RotationalComponents/Pos-Speed-Acc-Move.svg"}}
}
<span class="hljs-keyword">end</span></code></pre>
Test Cases
No test cases defined.
Related
- Examples
- Experiments
- Analyses