Modelica.Electrical.Machines.Losses.DCMachines

Loss models for DC machines

Information


This package contains loss models used for DC machine models.

Extends from Modelica.Icons.VariantsPackage (Icon for package containing variants).

Package Content

NameDescription
Modelica.Electrical.Machines.Losses.DCMachines.Brush Brush Model considering voltage drop of carbon brushes
Modelica.Electrical.Machines.Losses.DCMachines.brushVoltageDrop brushVoltageDrop Voltage drop of carbon brushes
Modelica.Electrical.Machines.Losses.DCMachines.StrayLoad StrayLoad Model of stray load losses dependent on current and speed
Modelica.Electrical.Machines.Losses.DCMachines.Core Core Model of core losses


Modelica.Electrical.Machines.Losses.DCMachines.Brush Modelica.Electrical.Machines.Losses.DCMachines.Brush

Model considering voltage drop of carbon brushes

Modelica.Electrical.Machines.Losses.DCMachines.Brush

Information


Model of voltage drop and losses of carbon brushes. For currents between -ILinear and ILinear the voltage drop shows a linear behavior as depicted in Fig. 1. For positive currents greater or equal than ILinear the voltage drop equals V. For negative currents less or equal than -ILinear the voltage drop equals -V.

Fig. 1: Model of voltage drop of carbon brushes

Note:

The voltage drop v is the total voltage drop of all series connected brushes.

See also

BrushParameters

If it is desired to neglect brush losses, set brushParameters.V = 0 (this is the default).

Extends from Modelica.Electrical.Analog.Interfaces.OnePort (Component with two electrical pins p and n and current i from p to n).

Parameters

TypeNameDefaultDescription
BrushParametersbrushParameters Brush loss parameters

Connectors

TypeNameDescription
PositivePinpPositive pin (potential p.v > n.v for positive voltage drop v)
NegativePinnNegative pin
HeatPort_aheatPortHeat port of the resistor

Modelica definition

model Brush "Model considering voltage drop of carbon brushes"
  extends Modelica.Electrical.Analog.Interfaces.OnePort;
  parameter Machines.Losses.BrushParameters brushParameters 
    "Brush loss parameters";
  Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_a heatPort 
    "Heat port of the resistor";
equation 
  if (brushParameters.V<=0) then
    v = 0;
  else
    v = smooth(1, if (i>+brushParameters.ILinear) then +brushParameters.V else 
                  if (i<-brushParameters.ILinear) then -brushParameters.V else 
                  brushParameters.V*i/brushParameters.ILinear);
  end if;
  heatPort.Q_flow = -v*i;
end Brush;

Modelica.Electrical.Machines.Losses.DCMachines.brushVoltageDrop Modelica.Electrical.Machines.Losses.DCMachines.brushVoltageDrop

Voltage drop of carbon brushes

Information


Calculates the voltage drop of carbon brushes, according to Brush losses, e.g., used for initial equations.

Extends from Modelica.Icons.Function (Icon for functions).

Inputs

TypeNameDefaultDescription
BrushParametersbrushParameters Brush loss parameters
Currenti Actual current [A]

Outputs

TypeNameDescription
VoltagevVoltage drop [V]

Modelica definition

function brushVoltageDrop "Voltage drop of carbon brushes"
  extends Modelica.Icons.Function;
  input Machines.Losses.BrushParameters
    brushParameters "Brush loss parameters";
  input Modelica.SIunits.Current i "Actual current";
  output Modelica.SIunits.Voltage v "Voltage drop";
algorithm 
  if (brushParameters.V<=0) then
    v := 0;
  else
    v :=if (i > +brushParameters.ILinear) then +brushParameters.V else 
        if (i < -brushParameters.ILinear) then -brushParameters.V else 
                 brushParameters.V*i/brushParameters.ILinear;
  end if;
end brushVoltageDrop;

Modelica.Electrical.Machines.Losses.DCMachines.StrayLoad Modelica.Electrical.Machines.Losses.DCMachines.StrayLoad

Model of stray load losses dependent on current and speed

Modelica.Electrical.Machines.Losses.DCMachines.StrayLoad

Information


The stray load loss torque is

  tau = PRef/wRef * (i/IRef)^2 * (w/wRef)^power_w

where i is the current of the machine and w is the actual angular velocity. The dependency of the stray load torque on the angular velocity is modeled by the exponent power_w.

The stray load losses are modeled such way that they do not cause a voltage drop in the electric circuit. Instead, the dissipated losses are considered through an equivalent braking torque at the shaft.

See also

StrayLoad parameters

If it is desired to neglect stray load losses, set strayLoadParameters.PRef = 0 (this is the default).

Extends from Modelica.Electrical.Analog.Interfaces.OnePort (Component with two electrical pins p and n and current i from p to n), Machines.Interfaces.FlangeSupport (Shaft and support).

Parameters

TypeNameDefaultDescription
StrayLoadParametersstrayLoadParameters Stray load loss parameters

Connectors

TypeNameDescription
PositivePinpPositive pin (potential p.v > n.v for positive voltage drop v)
NegativePinnNegative pin
Flange_aflangeShaft end
Flange_asupportHousing and support
HeatPort_aheatPortHeat port for modeling the heat flow

Modelica definition

model StrayLoad 
  "Model of stray load losses dependent on current and speed"
  extends Modelica.Electrical.Analog.Interfaces.OnePort;
  extends Machines.Interfaces.FlangeSupport;
  parameter Machines.Losses.StrayLoadParameters strayLoadParameters 
    "Stray load loss parameters";
  Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_a heatPort 
    "Heat port for modeling the heat flow";
equation 
  v = 0;
  if (strayLoadParameters.PRef<=0) then
    tau = 0;
  else
    tau = -strayLoadParameters.tauRef*(i/strayLoadParameters.IRef)^2*
           smooth(1,if w >= 0 then +(+w/strayLoadParameters.wRef)^strayLoadParameters.power_w else 
                                   -(-w/strayLoadParameters.wRef)^strayLoadParameters.power_w);
  end if;
  heatPort.Q_flow = tau*w;
end StrayLoad;

Modelica.Electrical.Machines.Losses.DCMachines.Core Modelica.Electrical.Machines.Losses.DCMachines.Core

Model of core losses

Modelica.Electrical.Machines.Losses.DCMachines.Core

Information


Core losses can be separated into eddy current and hysteresis losses. The total core losses can thus be expressed as

  p = PRef * (ratioHysteresis * (wRef / w) + 1 - ratioHysteresis) * (v / VRef)^2

where w is the actual angular velocity and v is the actual voltage. The term ratioHysteresis is the ratio of the hysteresis losses with respect to the total core losses for reference inner voltage and reference angular velocity.

For the voltage and angular velocity range with respect to Fig. 1, the dependency of total core losses on the parameter ratioHysteresis is depicted in Fig. 2.

Fig. 1: Voltage versus angular velocity
Fig. 2: Core losses versus angular velocity with parameter ratioHysteresis

Note

In the current implementation it is assumed that ratioHysteresis = 0. This parameter cannot be changed due to compatibility reasons.

See also

Core loss parameters

Extends from Modelica.Electrical.Analog.Interfaces.OnePort (Component with two electrical pins p and n and current i from p to n).

Parameters

TypeNameDefaultDescription
CoreParameterscoreParameters Armature core losses
Losses
AngularVelocityw Remagnetization angular velocity [rad/s]

Connectors

TypeNameDescription
PositivePinpPositive pin (potential p.v > n.v for positive voltage drop v)
NegativePinnNegative pin
HeatPort_aheatPortHeat port for modeling the heat flow

Modelica definition

model Core "Model of core losses"
  extends Modelica.Electrical.Analog.Interfaces.OnePort;
  parameter Machines.Losses.CoreParameters coreParameters(final m=1) 
    "Armature core losses";
  Modelica.Thermal.HeatTransfer.Interfaces.HeatPort_a heatPort 
    "Heat port for modeling the heat flow";
  input Modelica.SIunits.AngularVelocity w "Remagnetization angular velocity";
  Modelica.SIunits.Conductance Gc "Variable core loss conductance";
protected 
  Modelica.SIunits.AngularVelocity wLimit = noEvent(max(noEvent(abs(w)),coreParameters.wMin)) 
    "Limited angular velocity";
equation 
  if (coreParameters.PRef<=0) then
    Gc = 0;
    i = 0;
  else
    Gc = coreParameters.GcRef;
    // * (coreParameters.wRef/wLimit*coreParameters.ratioHysteresis + 1 - coreParameters.ratioHysteresis);
    i = Gc*v;
  end if;
  heatPort.Q_flow = -v*i;
end Core;

Automatically generated Fri Nov 12 16:29:04 2010.