Skip to content

Motor Efficiency Improvements With Optimized Control Parameters

License

Notifications You must be signed in to change notification settings

mathworks/pmsm-drive-optimization

Repository files navigation

Motor Efficiency Improvements With Optimized Control Parameters

View Motor Efficiency Improvements With Tuned Control Parameters on File Exchange Open in MATLAB Online

Overview

PMSM drive using imported FEM data and optimized Field-Oriented Control (FOC), with supporting design scripts that:

  1. Determine open-loop frequency response and check stability margins. This requires Simulink® Control Design™, using the Frequency Response Estimator block.
  2. Determine the optimal d-axis and q-axis currents that minimize overall motor losses when delivering a commanded torque and speed.

The Electric Drive is implemented using:

  1. A detailed Simscape™ Electrical™ nonlinear motor model in the form of tabulated flux linkages and Steinmetz coefficients. For more information, see this example.
  2. A Field-Oriented Controller (FOC) that has been optimized to minimize motor losses.

Drive System

The drive is parameterized for a 70 kW (maximum power), 150 Nm (maximum torque) motor, suitable for an electric vehicle powertrain. The supply is a 500 V DC source.

Field-Oriented Controller Architecture

The PMSM Field-Oriented Controller subsystem has an outer loop of speed control, and an inner loop of current control. The outer loop determines the current references for the inner loop.

Motor Loss Map

The motor losses depend on d-axis and q-axis currents, and rotor speed. Motor losses are a combination of copper losses and iron losses.

Optimal Field Currents

The ControllerOptimization.mlx Live Script computes the optimal d-axis and q-axis current references that minimize motor losses, in function of rotor speed and reference torque.

Optimization Validation

Power Losses for Step Load

The test scenario is a reference speed of 3000 rpm and a torque load stepped from 0 Nm to 50 Nm at t=0.1s.

You can notice the lower motor losses when using optimized control parameters.

Setup

Open the project file PmsmDriveOptimization.prj to get started.

  • Run workflows/ControllerOptimization.mlx to compute the optimal control parameters.
  • Run workflows/FreqResponseAnalysis.mlx to check the control system stability margins. This is computationally intensive.

MathWorks Products (https://www.mathworks.com)

Requires MATLAB® release R2021b or newer.

Getting Started

To learn more about modeling and simulation with Simscape™, please visit:

License

The license is available in the License file within this repository.

Community Support

MATLAB Central

Copyright 2022 The MathWorks, Inc.