ForceSensor
IconForceSensor
Ideal sensor measuring the translational force transmitted between two flanges.
This component models an ideal sensor that measures the translational force acting between its two mechanical flanges, flange_a
and flange_b
. It ensures the sensor body is perfectly rigid, meaning no relative displacement between the flanges. This is expressed by the equation:
\[flange_a.s = flange_b.s\]
The force exerted at flange_a
is directly measured and provided as the output signal f
:
\[flange_a.f = f\]
By Newton's third law, the force at flange_b
is equal and opposite to the force at flange_a
:
\[flange_b.f = -flange_a.f\]
Usage
ForceSensor()
Connectors
flange_a
- This connector represents a mechanical flange with position and force as the potential and flow variables, respectively. (Flange
)flange_b
- This connector represents a mechanical flange with position and force as the potential and flow variables, respectively. (Flange
)f
- This connector represents a real signal as an output from a component (RealOutput
)
Behavior
\[ \begin{align} 0 &= \mathtt{flange\_b.f}\left( t \right) + \mathtt{flange\_a.f}\left( t \right) \\ \mathtt{flange\_a.s}\left( t \right) &= \mathtt{flange\_b.s}\left( t \right) \\ \mathtt{flange\_a.f}\left( t \right) &= f\left( t \right) \end{align} \]
Source
# Ideal sensor measuring the translational force transmitted between two flanges.
#
# This component models an ideal sensor that measures the translational force acting between its two mechanical flanges, `flange_a` and `flange_b`.
# It ensures the sensor body is perfectly rigid, meaning no relative displacement between the flanges.
# This is expressed by the equation:
#
# ```math
# flange_a.s = flange_b.s
# ```
#
# The force exerted at `flange_a` is directly measured and provided as the output signal `f`:
#
# ```math
# flange_a.f = f
# ```
#
# By Newton's third law, the force at `flange_b` is equal and opposite to the force at `flange_a`:
#
# ```math
# flange_b.f = -flange_a.f
# ```
component ForceSensor
extends PartialRelativeSensor
# Force transmitted from `flange_a` to `flange_b` as output signal
f = RealOutput() [{
"Dyad": {
"placement": {"icon": {"x1": 450, "y1": 950, "x2": 550, "y2": 1050, "rot": 90}}
}
}]
relations
flange_a.s = flange_b.s
flange_a.f = f
metadata {
"Dyad": {"icons": {"default": "dyad://TranslationalComponents/RelativeSensor.svg"}}
}
end
Flattened Source
# Ideal sensor measuring the translational force transmitted between two flanges.
#
# This component models an ideal sensor that measures the translational force acting between its two mechanical flanges, `flange_a` and `flange_b`.
# It ensures the sensor body is perfectly rigid, meaning no relative displacement between the flanges.
# This is expressed by the equation:
#
# ```math
# flange_a.s = flange_b.s
# ```
#
# The force exerted at `flange_a` is directly measured and provided as the output signal `f`:
#
# ```math
# flange_a.f = f
# ```
#
# By Newton's third law, the force at `flange_b` is equal and opposite to the force at `flange_a`:
#
# ```math
# flange_b.f = -flange_a.f
# ```
component ForceSensor
# Negative connection flange of the sensor, often considered the reference point.
flange_a = Flange() [{"Dyad": {"placement": {"icon": {"x1": -50, "y1": 450, "x2": 50, "y2": 550}}}}]
# Positive connection flange of the sensor, where the measurement is taken relative to flange_a.
flange_b = Flange() [{"Dyad": {"placement": {"icon": {"x1": 950, "y1": 450, "x2": 1050, "y2": 550}}}}]
# Force transmitted from `flange_a` to `flange_b` as output signal
f = RealOutput() [{
"Dyad": {
"placement": {"icon": {"x1": 450, "y1": 950, "x2": 550, "y2": 1050, "rot": 90}}
}
}]
relations
0 = flange_a.f+flange_b.f
flange_a.s = flange_b.s
flange_a.f = f
metadata {
"Dyad": {"icons": {"default": "dyad://TranslationalComponents/RelativeSensor.svg"}}
}
end
Test Cases
No test cases defined.
Related
- Examples
- Experiments
- Analyses