Modelica.Electrical.Machines.BasicMachines.AsynchronousInductionMachines

Models of asynchronous induction machines

Information


This package contains models of asynchronous induction machines, based on space phasor theory:

These models use package SpacePhasors.

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

Package Content

NameDescription
Modelica.Electrical.Machines.BasicMachines.AsynchronousInductionMachines.AIM_SquirrelCage AIM_SquirrelCage Asynchronous induction machine with squirrel cage rotor
Modelica.Electrical.Machines.BasicMachines.AsynchronousInductionMachines.AIM_SlipRing AIM_SlipRing Asynchronous induction machine with slipring rotor


Modelica.Electrical.Machines.BasicMachines.AsynchronousInductionMachines.AIM_SquirrelCage Modelica.Electrical.Machines.BasicMachines.AsynchronousInductionMachines.AIM_SquirrelCage

Asynchronous induction machine with squirrel cage rotor

Modelica.Electrical.Machines.BasicMachines.AsynchronousInductionMachines.AIM_SquirrelCage

Information


Model of a three phase asynchronous induction machine with squirrel cage.
Resistance and stray inductance of stator is modeled directly in stator phases, then using space phasor transformation. Resistance and stray inductance of rotor's squirrel cage is modeled in two axis of the rotor-fixed ccordinate system. Both together connected via a stator-fixed AirGap model. The machine models take the following loss effects into account:

Default values for machine's parameters (a realistic example) are:
number of pole pairs p 2
stator's moment of inertia 0.29kg.m2
rotor's moment of inertia 0.29kg.m2
nominal frequency fNominal 50Hz
nominal voltage per phase 100V RMS
nominal current per phase 100A RMS
nominal torque 161.4Nm
nominal speed 1440.45rpm
nominal mechanical output 24.346kW
efficiency 92.7%
power factor 0.875
stator resistance 0.03Ohm per phase at reference temperature
reference temperature TsRef 20°C
temperature coefficient alpha20s 01/K
rotor resistance 0.04Ohm at reference temperature
reference temperature TrRef 20°C
temperature coefficient alpha20r 01/K
stator reactance Xs 3Ohm per phase
rotor reactance Xr 3Ohm
total stray coefficient sigma 0.0667
stator operational temperature TsOperational 20°C
rotor operational temperature TrOperational 20°C
These values give the following inductances:
stator stray inductance per phase Xs * (1 - sqrt(1-sigma))/(2*pi*fNominal)
rotor stray inductance Xr * (1 - sqrt(1-sigma))/(2*pi*fNominal)
main field inductance per phase sqrt(Xs*Xr * (1-sigma))/(2*pi*fNominal)

Extends from Machines.Interfaces.PartialBasicInductionMachine (Partial model for induction machine).

Parameters

TypeNameDefaultDescription
Integerp Number of pole pairs (Integer)
FrequencyfsNominal Nominal frequency [Hz]
InertiaJrJr(start=0.29)Rotor's moment of inertia [kg.m2]
BooleanuseSupportfalseEnable / disable (=fixed stator) support
InertiaJs Stator's moment of inertia [kg.m2]
BooleanuseThermalPortfalseEnable / disable (=fixed temperatures) thermal port
Currentidq_ss[2]airGapS.i_ssStator space phasor current / stator fixed frame [A]
Currentidq_sr[2]airGapS.i_srStator space phasor current / rotor fixed frame [A]
Currentidq_rs[2]airGapS.i_rsRotor space phasor current / stator fixed frame [A]
Currentidq_rr[2]airGapS.i_rrRotor space phasor current / rotor fixed frame [A]
Operational temperatures
TemperatureTsOperational Operational temperature of stator resistance [K]
TemperatureTrOperational Operational temperature of rotor resistance [K]
Nominal resistances and inductances
ResistanceRs Stator resistance per phase at TRef [Ohm]
TemperatureTsRef Reference temperature of stator resistance [K]
LinearTemperatureCoefficient20alpha20s Temperature coefficient of stator resistance at 20 degC [1/K]
InductanceLszeroLssigmaStator zero sequence inductance [H]
InductanceLssigma Stator stray inductance per phase [H]
InductanceLm Main field inductance [H]
InductanceLrsigma Rotor stray inductance (equivalent three phase winding) [H]
ResistanceRr Rotor resistance (equivalent three phase winding) at TRef [Ohm]
TemperatureTrRef Reference temperature of rotor resistance [K]
LinearTemperatureCoefficient20alpha20r Temperature coefficient of rotor resistance at 20 degC [1/K]
Losses
FrictionParametersfrictionParametersfrictionParameters(wRef(star...Friction losses
CoreParametersstatorCoreParameters Stator core losses
StrayLoadParametersstrayLoadParameters Stray load losses

Connectors

TypeNameDescription
Flange_aflangeShaft
Flange_asupportSupport at which the reaction torque is acting
PositivePlugplug_spPositive stator plug
NegativePlugplug_snNegative stator plug

Modelica definition

model AIM_SquirrelCage 
  "Asynchronous induction machine with squirrel cage rotor"
  extends Machines.Interfaces.PartialBasicInductionMachine(
    final idq_ss = airGapS.i_ss,
    final idq_sr = airGapS.i_sr,
    final idq_rs = airGapS.i_rs,
    final idq_rr = airGapS.i_rr,
    redeclare final Machines.Thermal.AsynchronousInductionMachines.ThermalAmbientAIMC
      thermalAmbient(final Tr=TrOperational),
    redeclare final Machines.Interfaces.InductionMachines.ThermalPortAIMC
      thermalPort,
    redeclare final Machines.Interfaces.InductionMachines.ThermalPortAIMC
      internalThermalPort,
    redeclare final Machines.Interfaces.InductionMachines.PowerBalanceAIMC
      powerBalance(final lossPowerRotorWinding = -squirrelCageR.heatPort.Q_flow,
                   final lossPowerRotorCore = 0),
    statorCore(final w=statorCoreParameters.wRef));
  Machines.BasicMachines.Components.AirGapS airGapS(
    final p=p,
    final Lm=Lm,
    final m=m);
  parameter Modelica.SIunits.Inductance Lm(start=3*sqrt(1 - 0.0667)/(2*pi*fsNominal)) 
    "Main field inductance";
  parameter Modelica.SIunits.Inductance Lrsigma(start=3*(1 - sqrt(1 - 0.0667))/(2*pi*fsNominal)) 
    "Rotor stray inductance (equivalent three phase winding)";
  parameter Modelica.SIunits.Resistance Rr(start=0.04) 
    "Rotor resistance (equivalent three phase winding) at TRef";
  parameter Modelica.SIunits.Temperature TrRef(start=293.15) 
    "Reference temperature of rotor resistance";
  parameter Machines.Thermal.LinearTemperatureCoefficient20 alpha20r(
    start=0) "Temperature coefficient of rotor resistance at 20 degC";
  parameter Modelica.SIunits.Temperature TrOperational(start=293.15) 
    "Operational temperature of rotor resistance";
  Machines.BasicMachines.Components.SquirrelCage squirrelCageR(
    final Lrsigma=Lrsigma,
    final Rr=Rr,
    final useHeatPort=true,
    final T_ref=TrRef,
    final T=TrRef,
    final alpha=Machines.Thermal.convertAlpha(alpha20r, TrRef));
equation 
  connect(airGapS.spacePhasor_r, squirrelCageR.spacePhasor_r);
  connect(airGapS.support, internalSupport);
  connect(airGapS.flange, inertiaRotor.flange_a);
  connect(lssigma.spacePhasor_b, airGapS.spacePhasor_s);
  connect(squirrelCageR.heatPort, internalThermalPort.heatPortRotorWinding);
end AIM_SquirrelCage;

Modelica.Electrical.Machines.BasicMachines.AsynchronousInductionMachines.AIM_SlipRing Modelica.Electrical.Machines.BasicMachines.AsynchronousInductionMachines.AIM_SlipRing

Asynchronous induction machine with slipring rotor

Modelica.Electrical.Machines.BasicMachines.AsynchronousInductionMachines.AIM_SlipRing

Information


Model of a three phase asynchronous induction machine with slipring rotor.
Resistance and stray inductance of stator and rotor are modeled directly in stator respectively rotor phases, then using space phasor transformation and a stator-fixed AirGap model. The machine models take the following loss effects into account:

Default values for machine's parameters (a realistic example) are:
number of pole pairs p 2
stator's moment of inertia 0.29kg.m2
rotor's moment of inertia 0.29kg.m2
nominal frequency fNominal 50Hz
nominal voltage per phase 100V RMS
nominal current per phase 100A RMS
nominal torque 161.4Nm
nominal speed 1440.45rpm
nominal mechanical output 24.346kW
efficiency 92.7%
power factor 0.875
stator resistance 0.03Ohm per phase at reference temperature
reference temperature TsRef 20°C
temperature coefficient alpha20s 01/K
rotor resistance 0.04Ohm per phase at reference temperature
reference temperature TrRef 20°C
temperature coefficient alpha20r 01/K
stator reactance Xs 3Ohm per phase
rotor reactance Xr 3Ohm per phase
total stray coefficient sigma 0.0667
turnsRatio 1effective ratio of stator and rotor current
stator operational temperature TsOperational 20°C
rotor operational temperature TrOperational 20°C
These values give the following inductances:
stator stray inductance per phase Xs * (1 - sqrt(1-sigma))/(2*pi*fNominal)
rotor stray inductance Xr * (1 - sqrt(1-sigma))/(2*pi*fNominal)
main field inductance per phase sqrt(Xs*Xr * (1-sigma))/(2*pi*f)

Parameter turnsRatio could be obtained from the following relationship at standstill with open rotor circuit at nominal voltage and nominal frequency,
using the locked-rotor voltage VR, no-load stator current I0 and powerfactor PF0:
turnsRatio * VR = Vs - (Rs + j Xs,sigma) I0

Extends from Machines.Interfaces.PartialBasicInductionMachine (Partial model for induction machine).

Parameters

TypeNameDefaultDescription
Integerp Number of pole pairs (Integer)
FrequencyfsNominal Nominal frequency [Hz]
InertiaJrJr(start=0.29)Rotor's moment of inertia [kg.m2]
BooleanuseSupportfalseEnable / disable (=fixed stator) support
InertiaJs Stator's moment of inertia [kg.m2]
BooleanuseThermalPortfalseEnable / disable (=fixed temperatures) thermal port
Currentidq_ss[2]airGapS.i_ssStator space phasor current / stator fixed frame [A]
Currentidq_sr[2]airGapS.i_srStator space phasor current / rotor fixed frame [A]
Currentidq_rs[2]airGapS.i_rsRotor space phasor current / stator fixed frame [A]
Currentidq_rr[2]airGapS.i_rrRotor space phasor current / rotor fixed frame [A]
BooleanuseTurnsRatio Use turnsRatio or calculate from locked-rotor voltage?
RealturnsRatio Effective number of stator turns / effective number of rotor turns
VoltageVsNominal Nominal stator voltage per phase [V]
VoltageVrLockedRotor Locked-rotor voltage per phase [V]
Operational temperatures
TemperatureTsOperational Operational temperature of stator resistance [K]
TemperatureTrOperational Operational temperature of rotor resistance [K]
Nominal resistances and inductances
ResistanceRs Stator resistance per phase at TRef [Ohm]
TemperatureTsRef Reference temperature of stator resistance [K]
LinearTemperatureCoefficient20alpha20s Temperature coefficient of stator resistance at 20 degC [1/K]
InductanceLszeroLssigmaStator zero sequence inductance [H]
InductanceLssigma Stator stray inductance per phase [H]
InductanceLm Main field inductance [H]
InductanceLrsigma Rotor stray inductance per phase [H]
InductanceLrzeroLrsigmaRotor zero sequence inductance [H]
ResistanceRr Rotor resistance per phase at TRef [Ohm]
TemperatureTrRef Reference temperature of rotor resistance [K]
LinearTemperatureCoefficient20alpha20r Temperature coefficient of rotor resistance at 20 degC [1/K]
Losses
FrictionParametersfrictionParametersfrictionParameters(wRef(star...Friction losses
CoreParametersstatorCoreParameters Stator core losses
StrayLoadParametersstrayLoadParameters Stray load losses
CoreParametersrotorCoreParameters Rotor core losses

Connectors

TypeNameDescription
Flange_aflangeShaft
Flange_asupportSupport at which the reaction torque is acting
PositivePlugplug_spPositive stator plug
NegativePlugplug_snNegative stator plug
PositivePlugplug_rpPositive rotor plug
NegativePlugplug_rnNegative rotor plug

Modelica definition

model AIM_SlipRing 
  "Asynchronous induction machine with slipring rotor"
  extends Machines.Interfaces.PartialBasicInductionMachine(
    final idq_ss = airGapS.i_ss,
    final idq_sr = airGapS.i_sr,
    final idq_rs = airGapS.i_rs,
    final idq_rr = airGapS.i_rr,
    redeclare final Machines.Thermal.AsynchronousInductionMachines.ThermalAmbientAIMS
      thermalAmbient(final Tr=TrOperational),
    redeclare final Machines.Interfaces.InductionMachines.ThermalPortAIMS
      thermalPort,
    redeclare final Machines.Interfaces.InductionMachines.ThermalPortAIMS
      internalThermalPort,
    redeclare final Machines.Interfaces.InductionMachines.PowerBalanceAIMS
      powerBalance(final lossPowerRotorWinding = -sum(rr.heatPort.Q_flow),
                   final lossPowerRotorCore = -rotorCore.heatPort.Q_flow,
                   final lossPowerBrush = 0,
                   final powerRotor = Machines.SpacePhasors.Functions.activePower(vr, ir)),
    statorCore(final w=statorCoreParameters.wRef));
  Machines.BasicMachines.Components.AirGapS airGapS(
    final p=p,
    final Lm=Lm,
    final m=m);
  parameter Modelica.SIunits.Inductance Lm(start=3*sqrt(1 - 0.0667)/(2*pi*fsNominal)) 
    "Main field inductance";
  parameter Modelica.SIunits.Inductance Lrsigma(start=3*(1 - sqrt(1 - 0.0667))/(2*pi*fsNominal)) 
    "Rotor stray inductance per phase";
  parameter Modelica.SIunits.Inductance Lrzero=Lrsigma 
    "Rotor zero sequence inductance";
  parameter Modelica.SIunits.Resistance Rr(start=0.04) 
    "Rotor resistance per phase at TRef";
  parameter Modelica.SIunits.Temperature TrRef(start=293.15) 
    "Reference temperature of rotor resistance";
  parameter Machines.Thermal.LinearTemperatureCoefficient20 alpha20r(
    start=0) "Temperature coefficient of rotor resistance at 20 degC";
  parameter Boolean useTurnsRatio(start=true) 
    "Use turnsRatio or calculate from locked-rotor voltage?";
  parameter Real turnsRatio(final min=Modelica.Constants.small, start=1) 
    "Effective number of stator turns / effective number of rotor turns";
  parameter Modelica.SIunits.Voltage VsNominal(start=100) 
    "Nominal stator voltage per phase";
  parameter Modelica.SIunits.Voltage VrLockedRotor(start=100*(2*pi*fsNominal*Lm)/sqrt(Rs^2+(2*pi*fsNominal*(Lm+Lssigma))^2)) 
    "Locked-rotor voltage per phase";
  parameter Modelica.SIunits.Temperature TrOperational(start=293.15) 
    "Operational temperature of rotor resistance";
  parameter Machines.Losses.CoreParameters rotorCoreParameters(
    final m=3,
    PRef=0,
    VRef(start=1)=1,
    wRef(start=1)=1) "Rotor core losses";
  output Modelica.SIunits.Current i_0_r(stateSelect=StateSelect.prefer) = spacePhasorR.zero.i 
    "Rotor zero-sequence current";
  output Modelica.SIunits.Voltage vr[m] = plug_rp.pin.v - plug_rn.pin.v 
    "Rotor instantaneous voltages";
  output Modelica.SIunits.Current ir[m] = plug_rp.pin.i 
    "Rotor instantaneous currents";
protected 
  final parameter Real internalTurnsRatio=if useTurnsRatio then turnsRatio else 
    VsNominal/VrLockedRotor*(2*pi*fsNominal*Lm)/sqrt(Rs^2+(2*pi*fsNominal*(Lm+Lssigma))^2);
public 
  Machines.SpacePhasors.Components.SpacePhasor spacePhasorR(final turnsRatio=internalTurnsRatio);
  Modelica.Electrical.MultiPhase.Basic.Resistor rr(
    final m=m,
    final R=fill(Rr, m),
    final T_ref=fill(TrRef,m),
    final alpha=fill(Machines.Thermal.convertAlpha(alpha20r, TrRef), m),
    final useHeatPort=true,
    final T=fill(TrRef,m));
  Modelica.Electrical.MultiPhase.Interfaces.PositivePlug plug_rp(final m=m) 
    "Positive rotor plug";
  Modelica.Electrical.MultiPhase.Interfaces.NegativePlug plug_rn(final m=m) 
    "Negative rotor plug";
  Machines.BasicMachines.Components.Inductor lrsigma(final L=fill(Lrsigma, 2));
  Modelica.Electrical.Analog.Basic.Inductor lrzero(final L=Lrzero);
  Machines.Losses.InductionMachines.Core rotorCore(
    final coreParameters=rotorCoreParameters,
    final w=rotorCoreParameters.wRef);
equation 

  connect(airGapS.support, internalSupport);

  connect(airGapS.flange, inertiaRotor.flange_a);
  connect(plug_rn, plug_rn);
  connect(lssigma.spacePhasor_b, airGapS.spacePhasor_s);
  connect(lrsigma.spacePhasor_b, airGapS.spacePhasor_r);
  connect(rr.plug_n, spacePhasorR.plug_p);
  connect(spacePhasorR.plug_n, plug_rn);
  connect(spacePhasorR.zero,lrzero. p);
  connect(spacePhasorR.ground,lrzero. n);
  connect(spacePhasorR.spacePhasor, lrsigma.spacePhasor_a);
  connect(rotorCore.spacePhasor, lrsigma.spacePhasor_a);
  connect(rotorCore.heatPort, internalThermalPort.heatPortRotorCore);
  connect(rr.heatPort, internalThermalPort.heatPortRotorWinding);
  connect(plug_rp, rr.plug_p);
end AIM_SlipRing;

Automatically generated Fri Nov 12 16:28:41 2010.