Skip to content
Rotational.InverseSpeedDependentTorque.md

Rotational.InverseSpeedDependentTorque ​

This component extends from PartialTorque

Usage ​

TranslatedComponents.Rotational.InverseSpeedDependentTorque(tau_nominal, w_nominal, w0=0.1)

Parameters: ​

NameDescriptionUnitsDefault value
useSupport–false
TorqueDirection–true
tau_nominalN.m
w_nominalrad/s
w0rad/s0.1

Connectors ​

  • flange - 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_supportrad
phirad
wrad/s
tauN.m

Behavior ​

phi(t)=flange.phi(t)−phi_support(t)w(t)=dphi(t)dttau(t)=−flange.tau(t)phi_support(t)=0tau(t)=ifelse(|w(t)|<w0,tau_nominalw_nominalw0,tau_nominalw_nominal|w(t)|)

Source ​

dyad
component InverseSpeedDependentTorque
  extends PartialTorque
  parameter tau_nominal::Dyad.Torque
  structural parameter TorqueDirection::Boolean = true
  parameter w_nominal::Dyad.AngularVelocity(min = 1e-10)
  parameter w0::Dyad.AngularVelocity(final min = 1e-10) = 0.1
  variable w::Dyad.AngularVelocity
  variable tau::Dyad.Torque
relations
  w = der(phi)
  tau = -flange.tau
  if TorqueDirection
    tau = abs(w) < w0 ? tau_nominal * w_nominal / w0 : tau_nominal * w_nominal / abs(w)
  else
    tau = abs(w) < w0 ? tau_nominal * w / w0 : tau_nominal * w_nominal / w
  end
end
Flattened Source
dyad
component InverseSpeedDependentTorque
  flange = Spline()
  support = Spline() if useSupport
  structural parameter useSupport::Boolean = false
  variable phi_support::Dyad.Angle
  variable phi::Dyad.Angle
  parameter tau_nominal::Dyad.Torque
  structural parameter TorqueDirection::Boolean = true
  parameter w_nominal::Dyad.AngularVelocity(min = 1e-10)
  parameter w0::Dyad.AngularVelocity(final min = 1e-10) = 0.1
  variable w::Dyad.AngularVelocity
  variable tau::Dyad.Torque
relations
  if useSupport
    initial support.phi = phi_support
    initial support.tau = -flange.tau
  else
    phi_support = 0
  end
  phi = flange.phi - phi_support
  w = der(phi)
  tau = -flange.tau
  if TorqueDirection
    tau = abs(w) < w0 ? tau_nominal * w_nominal / w0 : tau_nominal * w_nominal / abs(w)
  else
    tau = abs(w) < w0 ? tau_nominal * w / w0 : tau_nominal * w_nominal / w
  end
metadata {}
end


Test Cases ​

No test cases defined.

  • Examples

  • Experiments

  • Analyses