modelSMPM_FieldWeakening

Test example: Investigate field weakening of a PermanentMagnetSynchronousMachine

Extends from Modelica.Icons.Example (Icon for runnable examples).

Information

This example demonstrates idealized field weakening of a quasistatic permanent magnet synchronous machine.

At standstill, the q-axis current is prescribed by a short ramp up to the nominal current. The d-axis current is controlled to keep voltage ≤ nominal voltage, while speed is varied up to four times nominal speed like in an automotive application. Total stator current is kept ≤ nominal total current. Simulate and plot versus smpm.wMechanical:

  • fieldWeakeningController.vs: stator voltage
  • fieldWeakeningController.is: stator current
  • fieldWeakeningController.id: d-axis current
  • fieldWeakeningController.iq: q-axis current

It can be seen that when field weakening begins negative d-axis current is increased from zero while the q-axis current current has to be reduced (current limit) to enable increase of the d-axis current (voltage limit).

Note
  • The resistors connected to the quasi-static source model are necessary to numerically stabilize the simulation.
  • Inertia of the machine is set to zero to enable a proper comparison of electrical and mechanical power.
  • INominal denotes total nominal current, which can be applied without exceeding maximum temperature.

Parameters

TypeNameDefaultDescription
Integerm3Number of phases
SI.VoltageVNominal100Nominal RMS voltage per phase
SI.CurrentINominal150Nominal RMS current per phase
SI.AngularVelocitywNominal2*pi*smpmData.fsNominal/smpmData.pNominal speed
Modelica.Electrical.Machines.Utilities.ParameterRecords.SM_PermanentMagnetDatasmpmDataSynchronous machine data

Components

TypeNameDefaultDescription
Magnetic.QuasiStatic.FundamentalWave.BasicMachines.SynchronousMachines.SM_PermanentMagnetsmpm
Modelica.Electrical.QuasiStatic.SinglePhase.Basic.GroundgroundM
Modelica.Magnetic.QuasiStatic.FundamentalWave.Utilities.TerminalBoxterminalBox
Magnetic.QuasiStatic.FundamentalWave.Utilities.CurrentControllerdqToThreePhase
Modelica.Mechanics.Rotational.Sensors.AngleSensorangleSensorQS
Modelica.Electrical.QuasiStatic.Polyphase.Sources.ReferenceCurrentSourcereferenceCurrentSource
Modelica.Electrical.QuasiStatic.Polyphase.Basic.StarstarS
Modelica.Electrical.QuasiStatic.SinglePhase.Basic.GroundgroundeQS
Modelica.Electrical.QuasiStatic.Polyphase.Basic.ResistorresistorS
Modelica.Electrical.QuasiStatic.Polyphase.Sensors.VoltageQuasiRMSSensorvoltageQuasiRMSSensorQS
Mechanics.Rotational.Sources.SpeedspeedSource
ExampleUtilities.FieldWeakeningControllerfieldWeakeningController
Blocks.Math.GaingainCurrent
Blocks.Math.GaingainSpeed
Blocks.Sources.RampiqRef
Blocks.Sources.Rampspeed