Skip to content
LIBRARY
Components.RackAndPinion.md

Components.RackAndPinion

Models an ideal rack and pinion system, converting rotational motion to translational motion.

This component represents a one-dimensional, inertia-less rack and pinion mechanism. It establishes a kinematic relationship between the rotation of the pinion (circular gear) and the translation of the rack (linear gear). The core behavior is inherited from the IdealRollingWheel component. This model assumes no slip between the rack and pinion and neglects any inertial effects.

This component extends from RotationalComponents.Interfaces.PartialElementaryRotationalToTranslational

Usage

RotationalComponents.Components.RackAndPinion(radius)

Parameters:

NameDescriptionUnitsDefault value
radiusSpecifies the radius of the pinion gear, determining the kinematic relationship between rotational and translational motion.m

Connectors

  • spline - This connector represents a rotational spline with angle and torque as the potential and flow variables, respectively. (Spline)

  • flange - This connector represents a mechanical flange with position and force as the potential and flow variables, respectively. (Flange)

  • support_r - This connector represents a rotational spline with angle and torque as the potential and flow variables, respectively. (Spline)

  • support_t - This connector represents a mechanical flange with position and force as the potential and flow variables, respectively. (Flange)

Behavior

support_r.tau(t)=spline.tau(t)support_t.f(t)=flange.f(t)radius (spline.phi(t)support_r.phi(t))=flange.s(t)support_t.s(t)0=spline.tau(t)+radius flange.f(t)

Source

dyad
"""
Models an ideal rack and pinion system, converting rotational motion to translational motion.

This component represents a one-dimensional, inertia-less rack and pinion mechanism.
It establishes a kinematic relationship between the rotation of the pinion
(circular gear) and the translation of the rack (linear gear). The core behavior
is inherited from the `IdealRollingWheel` component. This model assumes no slip
between the rack and pinion and neglects any inertial effects.
"""
component RackAndPinion
  extends RotationalComponents.Interfaces.PartialElementaryRotationalToTranslational
  "Specifies the radius of the pinion gear, determining the kinematic relationship between rotational and translational motion."
  parameter radius::Length
relations
  (spline.phi - support_r.phi) * radius = flange.s - support_t.s
  0 = radius * flange.f + spline.tau
metadata {
  "Dyad": {"icons": {"default": "dyad://RotationalComponents/IdealRollingWheel.svg"}}
}
end
Flattened Source
dyad
"""
Models an ideal rack and pinion system, converting rotational motion to translational motion.

This component represents a one-dimensional, inertia-less rack and pinion mechanism.
It establishes a kinematic relationship between the rotation of the pinion
(circular gear) and the translation of the rack (linear gear). The core behavior
is inherited from the `IdealRollingWheel` component. This model assumes no slip
between the rack and pinion and neglects any inertial effects.
"""
component RackAndPinion
  "Flange of rotational shaft"
  spline = Spline() {"Dyad": {"placement": {"icon": {"x1": -50, "y1": 450, "x2": 50, "y2": 550}}}}
  "Flange of translational rod"
  flange = Flange() {"Dyad": {"placement": {"icon": {"x1": 950, "y1": 450, "x2": 1050, "y2": 550}}}}
  "Rotational support/housing of component"
  support_r = Spline() {"Dyad": {"placement": {"icon": {"x1": 100, "y1": 950, "x2": 200, "y2": 1050}}}}
  "Translational support/housing of component"
  support_t = Flange() {"Dyad": {"placement": {"icon": {"x1": 800, "y1": 950, "x2": 900, "y2": 1050}}}}
  "Specifies the radius of the pinion gear, determining the kinematic relationship between rotational and translational motion."
  parameter radius::Length
relations
  support_r.tau = -spline.tau
  support_t.f = -flange.f
  (spline.phi - support_r.phi) * radius = flange.s - support_t.s
  0 = radius * flange.f + spline.tau
metadata {
  "Dyad": {"icons": {"default": "dyad://RotationalComponents/IdealRollingWheel.svg"}}
}
end


Test Cases

No test cases defined.

  • Examples

  • Experiments

  • Analyses