modelSMPM_Inverter
Test example: PermanentMagnetSynchronousMachine with inverter
Extends from Modelica.Icons.Example (Icon for runnable examples).
Information
An ideal frequency inverter is modeled by using a VfController and a three-phase SignalVoltage. Frequency is raised by a ramp, causing the permanent magnet synchronous machine to start, and accelerating inertias. At time tStep a load step is applied.
Simulate for 1.5 seconds and plot (versus time):
- currentQuasiRMSSensor.I: stator current RMS
- smpm.wMechanical: motor's speed
- smpm.tauElectrical: motor's torque
- rotorDisplacementAngle.rotorDisplacementAngle: rotor displacement angle
Default machine parameters are used.
In practice it is nearly impossible to drive a PMSMD without current controller.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Integer | m | 3 | Number of phases |
| SI.Voltage | VNominal | 100 | Nominal RMS voltage per phase |
| SI.Frequency | fNominal | 50 | Nominal frequency |
| SI.Frequency | f | 50 | Actual frequency |
| SI.Time | tRamp | 1 | Frequency ramp |
| SI.Torque | TLoad | 181.4 | Nominal load torque |
| SI.Time | tStep | 1.2 | Time of load torque step |
| SI.Inertia | JLoad | 0.29 | Load's moment of inertia |
| Utilities.ParameterRecords.SM_PermanentMagnetData | smpmData | Synchronous machine data |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Machines.BasicMachines.SynchronousMachines.SM_PermanentMagnet | smpm | ||
| Machines.Sensors.CurrentQuasiRMSSensor | currentQuasiRMSSensor | ||
| Machines.Sensors.RotorDisplacementAngle | rotorDisplacementAngle | ||
| Modelica.Blocks.Sources.Ramp | ramp | ||
| Machines.Utilities.VfController | vfController | ||
| Modelica.Electrical.Polyphase.Sources.SignalVoltage | signalVoltage | ||
| Modelica.Electrical.Polyphase.Basic.Star | star | ||
| Modelica.Electrical.Analog.Basic.Ground | ground | ||
| Modelica.Mechanics.Rotational.Components.Inertia | loadInertia | ||
| Modelica.Mechanics.Rotational.Sources.TorqueStep | loadTorqueStep | ||
| Machines.Utilities.TerminalBox | terminalBox |