MultiSensor ​
Ideal sensor to measure the absolute angular velocity, torque, and power between two splines.
This component serves as an ideal sensor for rotational mechanical systems. It provides output signals for the absolute angular velocity of its primary connection point (spline_a), the torque flowing through this connection, and the instantaneous mechanical power. As an ideal sensor, it introduces no parasitic effects like inertia or damping and its measurements are exact. The key relationships are: The absolute angular velocity w of spline_a:
The measured torque spline_a:
The mechanical power
The component ensures that its two connection splines, spline_a and spline_b, have the same absolute angle (spline_a.phi = spline_b.phi), indicating a rigid passthrough.
This component extends from PartialRelativeSensor
Usage ​
RotationalComponents.MultiSensor()
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)power- This connector represents a real signal as an output from a component (RealOutput)tau- This connector represents a real signal as an output from a component (RealOutput)w- This connector represents a real signal as an output from a component (RealOutput)
Behavior ​
Source ​
"""
Ideal sensor to measure the absolute angular velocity, torque, and power between two splines.
This component serves as an ideal sensor for rotational mechanical systems.
It provides output signals for the absolute angular velocity of its primary connection
point (`spline_a`), the torque flowing through this connection, and the instantaneous
mechanical power. As an ideal sensor, it introduces no parasitic effects like inertia
or damping and its measurements are exact. The key relationships are:
The absolute angular velocity `w` of `spline_a`:math w = \frac{d\phi_a}
The measured torque \$\tau\$ is the torque at `spline_a`:math \tau = \text{spline_a}.\tau
The mechanical power \$P\$:math P = \tau \cdot w
The component ensures that its two connection splines, `spline_a` and `spline_b`,
have the same absolute angle (`spline_a.phi = spline_b.phi`), indicating a rigid passthrough.
"""
component MultiSensor
extends PartialRelativeSensor
"Power in spline `spline_a` as output signal"
power = RealOutput() {
"Dyad": {
"placement": {"icon": {"x1": 160, "y1": 950, "x2": 260, "y2": 1050, "rot": 90}}
}
}
"Torque in spline `spline_a` as output signal"
tau = RealOutput() {
"Dyad": {
"placement": {"icon": {"x1": 450, "y1": 950, "x2": 550, "y2": 1050, "rot": 90}}
}
}
"Absolute angular velocity of spline `spline_a` as output signal"
w = RealOutput() {
"Dyad": {
"placement": {"icon": {"x1": 760, "y1": 950, "x2": 860, "y2": 1050, "rot": 90}}
}
}
relations
spline_a.phi = spline_b.phi
w = der(spline_a.phi)
tau = spline_a.tau
power = tau * w
metadata {
"Dyad": {
"icons": {"default": "dyad://RotationalComponents/MultiSensor.svg"},
"labels": [
{"label": "W", "x": 300, "y": 900, "rot": 0, "attrs": {"font-size": "140"}},
{"label": "N.m", "x": 650, "y": 900, "rot": 0, "attrs": {"font-size": "140"}},
{"label": "rad", "x": 910, "y": 830, "rot": 0, "attrs": {"font-size": "140"}},
{"label": "/s", "x": 910, "y": 930, "rot": 0, "attrs": {"font-size": "140"}}
]
}
}
endFlattened Source
"""
Ideal sensor to measure the absolute angular velocity, torque, and power between two splines.
This component serves as an ideal sensor for rotational mechanical systems.
It provides output signals for the absolute angular velocity of its primary connection
point (`spline_a`), the torque flowing through this connection, and the instantaneous
mechanical power. As an ideal sensor, it introduces no parasitic effects like inertia
or damping and its measurements are exact. The key relationships are:
The absolute angular velocity `w` of `spline_a`:math w = \frac{d\phi_a}
The measured torque \$\tau\$ is the torque at `spline_a`:math \tau = \text{spline_a}.\tau
The mechanical power \$P\$:math P = \tau \cdot w
The component ensures that its two connection splines, `spline_a` and `spline_b`,
have the same absolute angle (`spline_a.phi = spline_b.phi`), indicating a rigid passthrough.
"""
component MultiSensor
"Left spline connector for the sensor."
spline_a = Spline() {"Dyad": {"placement": {"icon": {"x1": -50, "y1": 450, "x2": 50, "y2": 550}}}}
"Right spline connector for the sensor."
spline_b = Spline() {"Dyad": {"placement": {"icon": {"x1": 950, "y1": 450, "x2": 1050, "y2": 550}}}}
"Power in spline `spline_a` as output signal"
power = RealOutput() {
"Dyad": {
"placement": {"icon": {"x1": 160, "y1": 950, "x2": 260, "y2": 1050, "rot": 90}}
}
}
"Torque in spline `spline_a` as output signal"
tau = RealOutput() {
"Dyad": {
"placement": {"icon": {"x1": 450, "y1": 950, "x2": 550, "y2": 1050, "rot": 90}}
}
}
"Absolute angular velocity of spline `spline_a` as output signal"
w = RealOutput() {
"Dyad": {
"placement": {"icon": {"x1": 760, "y1": 950, "x2": 860, "y2": 1050, "rot": 90}}
}
}
relations
0 = spline_a.tau + spline_b.tau
spline_a.phi = spline_b.phi
w = der(spline_a.phi)
tau = spline_a.tau
power = tau * w
metadata {
"Dyad": {
"icons": {"default": "dyad://RotationalComponents/MultiSensor.svg"},
"labels": [
{"label": "W", "x": 300, "y": 900, "rot": 0, "attrs": {"font-size": "140"}},
{"label": "N.m", "x": 650, "y": 900, "rot": 0, "attrs": {"font-size": "140"}},
{"label": "rad", "x": 910, "y": 830, "rot": 0, "attrs": {"font-size": "140"}},
{"label": "/s", "x": 910, "y": 930, "rot": 0, "attrs": {"font-size": "140"}}
]
}
}
endTest Cases ​
No test cases defined.
Related ​
Examples
Experiments
Analyses