s_ref$(instance)Position Icon

Position

Forced movement of a flange according to a reference position

Usage

Position(f_crit=0.0, af=1.3617, bf=0.6180, w_crit=2*π*f_crit)

Parameters:

NameDescriptionUnitsDefault value
f_critHz0
afs coefficient of Bessel filter1.3617
bfs*s coefficient of Bessel filter0.618
w_crit2 * π * f_crit

Connectors

  • s_ref - This connector represents a real signal as an input to a component (RealInput)
  • flange - (Flange)

Variables

NameDescriptionUnits
sm
vm/s
am/s2

Behavior

\[ \begin{align} v\left( t \right) &= \frac{\mathrm{d} s\left( t \right)}{\mathrm{d}t} \\ a\left( t \right) &= \frac{\mathrm{d} v\left( t \right)}{\mathrm{d}t} \\ a\left( t \right) &= \frac{\left( - \mathtt{af} v\left( t \right) + \mathtt{w\_crit} \left( - s\left( t \right) + \mathtt{s\_ref}\left( t \right) \right) \right) \mathtt{w\_crit}}{\mathtt{bf}} \\ \mathtt{flange.s}\left( t \right) &= s\left( t \right) \end{align} \]

Source

# Forced movement of a flange according to a reference position
component Position
  s_ref = RealInput() [{
    "JuliaSim": {"placement": {"icon": {"x1": -50, "y1": 450, "x2": 50, "y2": 550}}}
  }]
  flange = Flange() [{
    "JuliaSim": {"placement": {"icon": {"x1": 950, "y1": 450, "x2": 1050, "y2": 550}}}
  }]
  variable s::Length
  parameter f_crit::Frequency = 0.0
  # s coefficient of Bessel filter
  final parameter af::Real = 1.3617
  # s*s coefficient of Bessel filter
  final parameter bf::Real = 0.6180
  final parameter w_crit::Real = 2*π*f_crit
  variable v::Velocity
  variable a::Acceleration
relations
  initial s = s_ref
  v = der(s)
  a = der(v)
  a = ((s_ref-s)*w_crit-af*v)*(w_crit/bf)
  flange.s = s
metadata {
  "JuliaSim": {"icons": {"default": "jsml://TranslationalComponents/Position.svg"}}
}
end
Flattened Source
# Forced movement of a flange according to a reference position
component Position
  s_ref = RealInput() [{
    "JuliaSim": {"placement": {"icon": {"x1": -50, "y1": 450, "x2": 50, "y2": 550}}}
  }]
  flange = Flange() [{
    "JuliaSim": {"placement": {"icon": {"x1": 950, "y1": 450, "x2": 1050, "y2": 550}}}
  }]
  variable s::Length
  parameter f_crit::Frequency = 0.0
  # s coefficient of Bessel filter
  final parameter af::Real = 1.3617
  # s*s coefficient of Bessel filter
  final parameter bf::Real = 0.6180
  final parameter w_crit::Real = 2*π*f_crit
  variable v::Velocity
  variable a::Acceleration
relations
  initial s = s_ref
  v = der(s)
  a = der(v)
  a = ((s_ref-s)*w_crit-af*v)*(w_crit/bf)
  flange.s = s
metadata {
  "JuliaSim": {"icons": {"default": "jsml://TranslationalComponents/Position.svg"}}
}
end

Test Cases

  • Examples
  • Experiments
  • Analyses