RotationalEMF IconRotationalEMF
An ideal electromechanical transducer coupling electrical voltage and current to rotational mechanical torque and angular velocity.
This component models an ideal rotational electromotive force (EMF) device, acting as a bidirectional energy converter between the electrical and rotational mechanical domains. It establishes a relationship where the induced voltage (v) across its electrical terminals is directly proportional to the angular velocity (w) of its rotor, and conversely, the torque (\tau) generated on the rotor is directly proportional to the current (i) flowing through its electrical terminals. The constant of proportionality for these relationships is the electrical torque constant, k. The mechanical rotation and torque are defined relative to a housing or support structure. The defining equations for its behavior are:
\[v = k \cdot w\]
and
\[\tau = -k \cdot i\]
The negative sign in the torque equation is a convention related to motor action and the defined positive directions of current and torque.
Usage
ElectricalComponents.RotationalEMF(k)
Parameters:
| Name | Description | Units | Default value |
|---|---|---|---|
k | Electrical torque constant / back-EMF constant | N.m/A |
Connectors
p- This connector represents an electrical pin with voltage and current as the potential and flow variables, respectively. (Pin)n- This connector represents an electrical pin with voltage and current as the potential and flow variables, respectively. (Pin)rotor- This connector represents a rotational spline with angle and torque as the potential and flow variables, respectively. (Spline)housing- This connector represents a rotational spline with angle and torque as the potential and flow variables, respectively. (Spline)
Variables
| Name | Description | Units |
|---|---|---|
v | Voltage drop between the two pins | V |
i | Current flowing from positive to negative pin | A |
phi | Angle of shaft flange with respect to housing spline | rad |
w | Angular velocity of flange relative to housing spline | rad/s |
tau | Torque of flange | N.m |
Behavior
\[ \begin{align} v\left( t \right) &= \mathtt{p.v}\left( t \right) - \mathtt{n.v}\left( t \right) \\ 0 &= \mathtt{n.i}\left( t \right) + \mathtt{p.i}\left( t \right) \\ i\left( t \right) &= \mathtt{p.i}\left( t \right) \\ \mathtt{phi}\left( t \right) &= \mathtt{rotor.phi}\left( t \right) - \mathtt{housing.phi}\left( t \right) \\ w\left( t \right) &= \frac{\mathrm{d} \mathtt{phi}\left( t \right)}{\mathrm{d}t} \\ k w\left( t \right) &= v\left( t \right) \\ \mathtt{tau}\left( t \right) &= - k i\left( t \right) \\ \mathtt{tau}\left( t \right) &= \mathtt{rotor.tau}\left( t \right) \end{align} \]
Source
"""
An ideal electromechanical transducer coupling electrical voltage and current to rotational mechanical torque and angular velocity.
This component models an ideal rotational electromotive force (EMF) device, acting as a bidirectional
energy converter between the electrical and rotational mechanical domains. It establishes a relationship
where the induced voltage (`v`) across its electrical terminals is directly proportional to the angular velocity
(`w`) of its rotor, and conversely, the torque (`\tau`) generated on the rotor is directly proportional to the current
(`i`) flowing through its electrical terminals. The constant of proportionality for these relationships is the
electrical torque constant, `k`. The mechanical rotation and torque are defined relative to a
housing or support structure.
The defining equations for its behavior are:
math v = k \cdot w
and
math \tau = -k \cdot i
The negative sign in the torque equation is a convention related to motor action and the defined positive
directions of current and torque.
"""</span>
<span class="hljs-keyword">component</span> RotationalEMF
<span class="hljs-comment">"Positive electrical pin"</span>
<span class="hljs-symbol">p</span> = <span class="hljs-link"><a href="https://help.juliahub.com/dyad/dev/stdlib/Dyad/connectors/Pin.html">Pin</a></span>() {
"Dyad": {
"placement": {"icon": {"iconName": "pos", "x1": 450, "y1": -50, "x2": 550, "y2": 50}}
}
}
<span class="hljs-comment">"Negative electrical pin"</span>
<span class="hljs-symbol">n</span> = <span class="hljs-link"><a href="https://help.juliahub.com/dyad/dev/stdlib/Dyad/connectors/Pin.html">Pin</a></span>() {
"Dyad": {
"placement": {"icon": {"iconName": "neg", "x1": 450, "y1": 950, "x2": 550, "y2": 1050}}
}
}
<span class="hljs-comment">"Rotor spline"</span>
<span class="hljs-symbol">rotor</span> = <span class="hljs-link"><a href="https://help.juliahub.com/dyad/dev/stdlib/Dyad/connectors/Spline.html">Spline</a></span>() {"Dyad": {"placement": {"icon": {"x1": 950, "y1": 450, "x2": 1050, "y2": 550}}}}
<span class="hljs-comment">"Housing (support) of the emf shaft"</span>
<span class="hljs-symbol">housing</span> = <span class="hljs-link"><a href="https://help.juliahub.com/dyad/dev/stdlib/Dyad/connectors/Spline.html">Spline</a></span>() {"Dyad": {"placement": {"icon": {"x1": -50, "y1": 450, "x2": 50, "y2": 550}}}}
<span class="hljs-comment">"Electrical torque constant / back-EMF constant"</span>
<span class="hljs-keyword">parameter</span> <span class="hljs-symbol">k</span>::<span class="hljs-link"><a href="https://help.juliahub.com/dyad/dev/stdlib/Dyad/types/ElectricalTorqueConstant.html">ElectricalTorqueConstant</a></span>
<span class="hljs-comment">"Voltage drop between the two pins"</span>
<span class="hljs-keyword">variable</span> <span class="hljs-symbol">v</span>::<span class="hljs-link"><a href="https://help.juliahub.com/dyad/dev/stdlib/Dyad/types/Voltage.html">Voltage</a></span>
<span class="hljs-comment">"Current flowing from positive to negative pin"</span>
<span class="hljs-keyword">variable</span> <span class="hljs-symbol">i</span>::<span class="hljs-link"><a href="https://help.juliahub.com/dyad/dev/stdlib/Dyad/types/Current.html">Current</a></span>
<span class="hljs-comment">"Angle of shaft flange with respect to housing spline"</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 flange relative to housing spline"</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">"Torque of flange"</span>
<span class="hljs-keyword">variable</span> <span class="hljs-symbol">tau</span>::<span class="hljs-link"><a href="https://help.juliahub.com/dyad/dev/stdlib/Dyad/types/Torque.html">Torque</a></span>
<span class="hljs-keyword">relations</span>
v = p.v - n.v
0 = p.i + n.i
i = p.i
phi = rotor.phi - housing.phi
w = der(phi)
k * w = v
tau = -k * i
tau = rotor.tau
<span class="hljs-keyword">metadata</span> {
"Dyad": {
"labels": [{"label": "$(instance)", "x": 500, "y": 1100, "rot": 0}],
"icons": {"default": "dyad://ElectricalComponents/RotationalEMF.svg"}
}
}
<span class="hljs-keyword">end</span></code></pre>
Flattened Source
"""
An ideal electromechanical transducer coupling electrical voltage and current to rotational mechanical torque and angular velocity.
This component models an ideal rotational electromotive force (EMF) device, acting as a bidirectional
energy converter between the electrical and rotational mechanical domains. It establishes a relationship
where the induced voltage (`v`) across its electrical terminals is directly proportional to the angular velocity
(`w`) of its rotor, and conversely, the torque (`\tau`) generated on the rotor is directly proportional to the current
(`i`) flowing through its electrical terminals. The constant of proportionality for these relationships is the
electrical torque constant, `k`. The mechanical rotation and torque are defined relative to a
housing or support structure.
The defining equations for its behavior are:
math v = k \cdot w
and
math \tau = -k \cdot i
The negative sign in the torque equation is a convention related to motor action and the defined positive
directions of current and torque.
"""</span>
<span class="hljs-keyword">component</span> RotationalEMF
<span class="hljs-comment">"Positive electrical pin"</span>
<span class="hljs-symbol">p</span> = <span>Pin</span>() {
"Dyad": {
"placement": {"icon": {"iconName": "pos", "x1": 450, "y1": -50, "x2": 550, "y2": 50}}
}
}
<span class="hljs-comment">"Negative electrical pin"</span>
<span class="hljs-symbol">n</span> = <span>Pin</span>() {
"Dyad": {
"placement": {"icon": {"iconName": "neg", "x1": 450, "y1": 950, "x2": 550, "y2": 1050}}
}
}
<span class="hljs-comment">"Rotor spline"</span>
<span class="hljs-symbol">rotor</span> = <span>Spline</span>() {"Dyad": {"placement": {"icon": {"x1": 950, "y1": 450, "x2": 1050, "y2": 550}}}}
<span class="hljs-comment">"Housing (support) of the emf shaft"</span>
<span class="hljs-symbol">housing</span> = <span>Spline</span>() {"Dyad": {"placement": {"icon": {"x1": -50, "y1": 450, "x2": 50, "y2": 550}}}}
<span class="hljs-comment">"Electrical torque constant / back-EMF constant"</span>
<span class="hljs-keyword">parameter</span> <span class="hljs-symbol">k</span>::<span>ElectricalTorqueConstant</span>
<span class="hljs-comment">"Voltage drop between the two pins"</span>
<span class="hljs-keyword">variable</span> <span class="hljs-symbol">v</span>::<span>Voltage</span>
<span class="hljs-comment">"Current flowing from positive to negative pin"</span>
<span class="hljs-keyword">variable</span> <span class="hljs-symbol">i</span>::<span>Current</span>
<span class="hljs-comment">"Angle of shaft flange with respect to housing spline"</span>
<span class="hljs-keyword">variable</span> <span class="hljs-symbol">phi</span>::<span>Angle</span>
<span class="hljs-comment">"Angular velocity of flange relative to housing spline"</span>
<span class="hljs-keyword">variable</span> <span class="hljs-symbol">w</span>::<span>AngularVelocity</span>
<span class="hljs-comment">"Torque of flange"</span>
<span class="hljs-keyword">variable</span> <span class="hljs-symbol">tau</span>::<span>Torque</span>
<span class="hljs-keyword">relations</span>
v = p.v - n.v
0 = p.i + n.i
i = p.i
phi = rotor.phi - housing.phi
w = der(phi)
k * w = v
tau = -k * i
tau = rotor.tau
<span class="hljs-keyword">metadata</span> {
"Dyad": {
"labels": [{"label": "$(instance)", "x": 500, "y": 1100, "rot": 0}],
"icons": {"default": "dyad://ElectricalComponents/RotationalEMF.svg"}
}
}
<span class="hljs-keyword">end</span></code></pre>
Test Cases
No test cases defined.
Related
- Examples
- Experiments
- Analyses
- Tests