$(instance)RotationalEMF Icon

RotationalEMF

Electromotoric force (electric/mechanic transformer) | useSupport=true

Usage

RotationalEMF(k)

Parameters:

NameDescriptionUnitsDefault value
kN.m/A

Connectors

Variables

NameDescriptionUnits
vVoltage drop between the two pinsV
iCurrent flowing from positive to negative pinA
phiAngle of shaft flange with respect to support (= flange.phi - support.phi)rad
wAngular velocity of flange relative to supportrad/s
tauTorque of flangeN.m

Behavior

\[ \begin{align} v\left( t \right) &= \mathtt{p.v}\left( t \right) - \mathtt{n.v}\left( t \right) \\ 0 &= \mathtt{n.i}\left( t \right) + \mathtt{p.i}\left( t \right) \\ i\left( t \right) &= \mathtt{p.i}\left( t \right) \\ \mathtt{phi}\left( t \right) &= \mathtt{rotor.phi}\left( t \right) - \mathtt{housing.phi}\left( t \right) \\ w\left( t \right) &= \frac{\mathrm{d} \mathtt{phi}\left( t \right)}{\mathrm{d}t} \\ k w\left( t \right) &= v\left( t \right) \\ \mathtt{tau}\left( t \right) &= - k i\left( t \right) \\ \mathtt{tau}\left( t \right) &= \mathtt{rotor.tau}\left( t \right) \end{align} \]

Source

# Electromotoric force (electric/mechanic transformer) | useSupport=true
component RotationalEMF
  # Positive electrical pin
  p = Pin() [{
    "JuliaSim": {
      "placement": {"icon": {"iconName": "pos", "x1": 450, "y1": -50, "x2": 550, "y2": 50}}
    }
  }]
  # Negative electrical pin
  n = Pin() [{
    "JuliaSim": {
      "placement": {"icon": {"iconName": "neg", "x1": 450, "y1": 950, "x2": 550, "y2": 1050}}
    }
  }]
  # Rotor/Spline
  rotor = Spline() [{
    "JuliaSim": {"placement": {"icon": {"x1": 950, "y1": 450, "x2": 1050, "y2": 550}}}
  }]
  # Support/Housing of the emf shaft
  housing = Spline() [{
    "JuliaSim": {"placement": {"icon": {"x1": -50, "y1": 450, "x2": 50, "y2": 550}}}
  }]
  parameter k::ElectricalTorqueConstant
  # Voltage drop between the two pins
  variable v::Voltage
  # Current flowing from positive to negative pin
  variable i::Current
  # Angle of shaft flange with respect to support (= flange.phi - support.phi)
  variable phi::Angle
  # Angular velocity of flange relative to support
  variable w::AngularVelocity
  # Torque of flange
  variable tau::Torque
relations
  v = p.v-n.v
  0 = p.i+n.i
  i = p.i
  phi = rotor.phi-housing.phi
  w = der(phi)
  k*w = v
  tau = -k*i
  tau = rotor.tau
end
Flattened Source
# Electromotoric force (electric/mechanic transformer) | useSupport=true
component RotationalEMF
  # Positive electrical pin
  p = Pin() [{
    "JuliaSim": {
      "placement": {"icon": {"iconName": "pos", "x1": 450, "y1": -50, "x2": 550, "y2": 50}}
    }
  }]
  # Negative electrical pin
  n = Pin() [{
    "JuliaSim": {
      "placement": {"icon": {"iconName": "neg", "x1": 450, "y1": 950, "x2": 550, "y2": 1050}}
    }
  }]
  # Rotor/Spline
  rotor = Spline() [{
    "JuliaSim": {"placement": {"icon": {"x1": 950, "y1": 450, "x2": 1050, "y2": 550}}}
  }]
  # Support/Housing of the emf shaft
  housing = Spline() [{
    "JuliaSim": {"placement": {"icon": {"x1": -50, "y1": 450, "x2": 50, "y2": 550}}}
  }]
  parameter k::ElectricalTorqueConstant
  # Voltage drop between the two pins
  variable v::Voltage
  # Current flowing from positive to negative pin
  variable i::Current
  # Angle of shaft flange with respect to support (= flange.phi - support.phi)
  variable phi::Angle
  # Angular velocity of flange relative to support
  variable w::AngularVelocity
  # Torque of flange
  variable tau::Torque
relations
  v = p.v-n.v
  0 = p.i+n.i
  i = p.i
  phi = rotor.phi-housing.phi
  w = der(phi)
  k*w = v
  tau = -k*i
  tau = rotor.tau
metadata {}
end

Test Cases