Skip to content
LIBRARY
Sources.TorqueStep.md

Sources.TorqueStep

Constant torque, not dependent on speed.

Model of a torque step at time startTime. Positive torque accelerates in positive direction of flange rotation.

This component extends from RotationalComponents.Interfaces.PartialTorque

Usage

RotationalComponents.Sources.TorqueStep(stepTorque=1.0, offsetTorque=0.0, startTime=0.0)

Parameters:

NameDescriptionUnitsDefault value
stepTorqueHeight of torque step (if negative, torque is acting as load)N.m1.0
offsetTorqueOffset of torqueN.m0.0
startTimeTorque = offset for time < startTimes0.0

Connectors

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

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

Variables

NameDescriptionUnits
phi_supportAbsolute angle of the support splinerad
phiAngle of spline with respect to support
tauAccelerating torque acting at spline (= -spline.tau)N.m

Behavior

julia
using RotationalComponents #hide
using ModelingToolkit #hide
@variables stepTorque #hide
@variables offsetTorque #hide
@variables startTime #hide
@named sys = RotationalComponents.Sources.TorqueStep(stepTorque=stepTorque, offsetTorque=offsetTorque, startTime=startTime) #hide
full_equations(sys) #hide
<< @example-block not executed in draft mode >>

Source

dyad
"""
Constant torque, not dependent on speed.

Model of a torque step at time startTime.
Positive torque accelerates in positive direction of flange rotation.
"""
component TorqueStep
  extends RotationalComponents.Interfaces.PartialTorque
  "Height of torque step (if negative, torque is acting as load)"
  parameter stepTorque::Torque = 1.0
  "Offset of torque"
  parameter offsetTorque::Torque = 0.0
  "Torque = offset for time < startTime"
  parameter startTime::Time = 0.0
  "Accelerating torque acting at spline (= -spline.tau)"
  variable tau::Torque
relations
  tau = -spline.tau
  tau = offsetTorque + ifelse(time < startTime, 0.0, stepTorque)
metadata {"Dyad": {"icons": {"default": "dyad://RotationalComponents/TorqueStep.svg"}}}
end
Flattened Source
dyad
"""
Constant torque, not dependent on speed.

Model of a torque step at time startTime.
Positive torque accelerates in positive direction of flange rotation.
"""
component TorqueStep
  "Primary rotational shaft spline connector"
  spline = Spline() {"Dyad": {"placement": {"icon": {"x1": 950, "y1": 450, "x2": 1050, "y2": 550}}}}
  "Support spline connector"
  support = Spline() {
    "Dyad": {
      "placement": {"icon": {"iconName": "support", "x1": 450, "y1": 950, "x2": 550, "y2": 1050}}
    }
  }
  "Absolute angle of the support spline"
  variable phi_support::Angle
  "Angle of spline with respect to support"
  variable phi::Real
  "Height of torque step (if negative, torque is acting as load)"
  parameter stepTorque::Torque = 1.0
  "Offset of torque"
  parameter offsetTorque::Torque = 0.0
  "Torque = offset for time < startTime"
  parameter startTime::Time = 0.0
  "Accelerating torque acting at spline (= -spline.tau)"
  variable tau::Torque
relations
  support.phi = phi_support
  support.tau = -spline.tau
  phi = spline.phi - phi_support
  tau = -spline.tau
  tau = offsetTorque + ifelse(time < startTime, 0.0, stepTorque)
metadata {"Dyad": {"icons": {"default": "dyad://RotationalComponents/TorqueStep.svg"}}}
end


Test Cases

No test cases defined.