$(instance)IdealRollingWheel Icon

IdealRollingWheel

Simple 1-dim. model of an ideal rolling wheel without inertia

This component extends from PartialElementaryRotationalToTranslational

Usage

IdealRollingWheel(radius)

Parameters:

NameDescriptionUnitsDefault value
radiuswheel radiusm

Connectors

Behavior

\[ \begin{align} \mathtt{radius} \left( - \mathtt{support\_r.phi}\left( t \right) + \mathtt{spline.phi}\left( t \right) \right) &= \mathtt{flange.s}\left( t \right) - \mathtt{support\_t.s}\left( t \right) \\ 0 &= \mathtt{spline.tau}\left( t \right) + \mathtt{radius} \mathtt{flange.f}\left( t \right) \end{align} \]

Source

# Simple 1-dim. model of an ideal rolling wheel without inertia
component IdealRollingWheel
  extends PartialElementaryRotationalToTranslational
  # wheel radius
  parameter radius::Length
relations
  (spline.phi-support_r.phi)*radius = flange.s-support_t.s
  0 = radius*flange.f+spline.tau
metadata {
  "JuliaSim": {"icons": {"default": "jsml://RotationalComponents/IdealRollingWheel.svg"}}
}
end
Flattened Source
# Simple 1-dim. model of an ideal rolling wheel without inertia
component IdealRollingWheel
  # Rotational shaft
  spline = Spline() [{
    "JuliaSim": {"placement": {"icon": {"x1": -50, "y1": 450, "x2": 50, "y2": 550}}}
  }]
  # Translational shaft
  flange = Flange() [{
    "JuliaSim": {"placement": {"icon": {"x1": 950, "y1": 450, "x2": 1050, "y2": 550}}}
  }]
  support_r = Spline() [{
    "JuliaSim": {"placement": {"icon": {"x1": 100, "y1": 950, "x2": 200, "y2": 1050}}}
  }]
  support_t = Flange() [{
    "JuliaSim": {"placement": {"icon": {"x1": 800, "y1": 950, "x2": 900, "y2": 1050}}}
  }]
  # wheel radius
  parameter radius::Length
relations
  (spline.phi-support_r.phi)*radius = flange.s-support_t.s
  0 = radius*flange.f+spline.tau
metadata {
  "JuliaSim": {"icons": {"default": "jsml://RotationalComponents/IdealRollingWheel.svg"}}
}
end

Test Cases

  • Examples
  • Experiments
  • Analyses