The Motor Control Design Suite provides a quick solution for the control loop design of a motor drive system. Pre-built design templates are provided for linear and nonlinear PMSM and induction machines (IM) with sensored or sensorless control. Based on minimum system specifications, the Motor Control Design Suite automatically designs all the feedback controllers for speed and current loops with properly specified crossover frequencies and stability margins and generates a complete system that is operational and ready to simulate.
The Design Suite provides advanced PMSM motor control techniques, such as Maximum-Torque-Per-Ampere (MTPA) control, and field weakening control. Furthermore, for an infinite speed PMSM drive operated in the field weakening control mode, Maximum-Torque-Per-Volt (MTPV) (also referred to as Maximum-Torque-Per-Flux (MTPF)) control is provided to further extend the motor drive operation range in the high-speed region.
The sampling rate of the outer speed loop is often slower than the inner current loop. Different sampling rates are supported in the controller design.
For the PMSM (IPM) and PMSM (SPM) templates, a Speed-Torque Tool is provided. Based on the motor parameters and operating conditions such as dc bus voltage and motor maximum current, the Speed-Torque Tool can plot the maximum torque and power the motor can achieve based on above mentioned advanced motor control techniques. This tool provides a very convenient way for users to understand the boundary of the motor drive before having a working drive system.
With the capability to put together quickly a motor drive system with detailed circuit models, the Motor Control Design Suite offers significant benefit and advantages to engineers in the following ways:
The Motor Control Design Suite provides a very quick design solution to the development of motor drive systems and helps speed up the development process substantially.
The following design templates are provided for sensored motor drives:
In addition, the following design templates are provided for sensorless PMSM motor drives using TI’s InstaSPIN technology:
Note that the sensorless motor design templates use the PIL block (InstaSPIN). As the PIL block (InstaSPIN) is part of the PIL Module, one needs the PIL Module in the PSIM license to run these four templates. For further information on how to run these sensorless motor drive templates, refer to “Tutorial – PMSM drive with sensorless control.pdf”.
In an IPM motor, the q‐axis inductance is greater than the d‐axis inductance, i.e. Lq > Ld. In an SPM motor, the d‐axis and q‐axis inductances are equal, i.e. Ld = Lq. In a nonlinear IPM motor, Ld, Lq vary as a function of the motor currents.
A typical motor drive system consists of a dc bus, 3‐phase voltage source inverter, motor, motor controller, and mechanical load. The overall structure of the drive template is shown below:
After parameters are entered for each block, all controller parameters will be designed automatically based on the operating conditions, and the entire circuit is ready to simulate.
This tutorial describes how to use the design templates. We will use the PMSM (IPM) Drive template and the following motor as an example to illustrate the process.
PMSM motor: 125 kW, 4 poles, 8000 rpm, 150 N*m
Parameters: Rs = 0.02035 Ohm; Ld = 1.5 mH; Lq = 5 mH; Back EMF constant = 147.95 Vpk/krpm
Moment of inertia = 0.0206 kg* m2
Maximum ratings: 180 kW; 1200 N*m; 10000 rpm
Based on the motor, the dc bus voltage is set at 650V. The inverter will operate at a switching frequency of 10kHz. The current loop sampling frequency will be set at 10kHz, and the speed loop sampling frequency will be 10kHz. The current loop bandwidth will be set at 1kHz, and the speed loop bandwidth will be set at 100Hz.
Running the Motor Control Design Suite involves three steps: defining system parameters, inspecting Motor Speed-Torque Curve, and updating the parameter file, and running simulation.
To run the PMSM (IPM) Drive template, follow the steps below:
At the left of the schematic is the Parameter Panel. The panel defines the system parameters (such as dc bus voltage, inverter frequency, motor parameters) and control design parameters (such as current and speed loop bandwidth). For this example, enter the values as below.
The variables are the names used in the parameter file of the circuit.
After all the parameters are entered in the Parameter Panel, click on the button Speed-Torque Curve to display the motor torque and power over the entire speed range as shown below. These are the maximum capabilities that the motor drive system can deliver under the specified operating conditions, and they are used as the limits for the controller design. If the intended motor drive system requires more capabilities in terms of torque, power, or speed than what is shown in the Speed-Torque Curve, then adjust the dc bus voltage or inverter maximum current, or choose a different motor, so that they are within the motor drive maximum capabilities.
After checking the motor Speed-Torque Curve in step II and updating all the parameters in the Parameter Panel, click on the button Update Parameter File to update the parameter file “parameters‐main.txt” in the schematic. This parameter file contains the parameters entered by the user and the ones calculated by the Design Suite. One key feature of the Design Suite is that the parameters of the current loop controller and the speed loop controller are calculated automatically, saving users the effort and trouble of designing the controllers.
If any of the parameters in the Parameter Panel are changed, one must click on Update Parameter File again to update the parameter file. Otherwise, the parameters will not be updated.
Once the parameter file is updated, run the time-domain simulation and validate the design. One may need to adjust the switching frequency, sampling frequency, the current and speed loop crossover frequencies, and the d-axis current reference to achieve the desired performance.
One key simulation waveform to watch is the modulation signal Vma at the input of the PWM block. Make sure that Vma is within the operating range of the carrier wave to guarantee PWM inverter is operated in PWM linear range.
The schematic is set up to run the simulation in either the switching model or the average model for faster simulation. To change the inverter model type, set the Model Level of the 3-phase inverter to Ideal for the switching model or to Average Model for the average model. Then enable or disable the PWM blocks accordingly.
Eight sensored motor drive design templates are described below.
Four sensorless motor drive design templates are not described in this tutorial as they are very similar to their sensored counterparts, except the motor speed and angle are estimated using TI’s InstaSPIN block.
The PMSM (IPM) Drive design template consists of a linear IPM motor drive system with advanced control that includes MTPA, field weakening, and MTPV control. The circuit is shown below.
The control scheme is implemented in the dq frame. It consists of d‐axis and q‐axis current loops and speed loops. The speed loop establishes the current reference. Based on the current reference and other operating conditions, the IPM Control block determines if the system operates in MTPA control, or field weakening control, or MTPV control, and adjusts the current reference accordingly. The current loops provide voltage commands for the PWM inverter.
Given the dc bus voltage and the mechanical speed, the IPM Speed Control block will calculate the base speed nm_th. Below the base speed nm_th, the motor will operate in the maximum torque region with MTPA control. Above the base speed nm_th, the motor will operate in the maximum power region with field weakening control. Furthermore, as the motor speed increases further, depending on the motor parameters and operating conditions, the motor will operate in the MTPV control to maximize the power output.
The current loops and the speed loop can have different sampling rates.
Simulation results from the PMSM (IPM) Drive design template are shown below.
The waveforms below show the start-up transient of an IPM drive system with MTPA control, field weakening control, and MTPV control. As clearly seen, from beginning to around 6 msec., the drive system operates in the maximum torque region, and delivers the maximum currents to the motor through the MTPA control. From 6 msec. to around 48 msec., as the motor speed reaches the base speed of 1140rpm, the drive operates in the maximum power region, and field weakening control takes effect. From 48 msec. to around 200 msec., as the motor speed reaches an even higher level (beyond 5280rpm), the drive system operates in the maximum power region, but MTPV control takes effect. From 200 msec. to 250 msec., as the motor reaches the steady-state (8000rpm), the drive exits the MTPV control and returns to regular field weakening control.
The PMSM (IPM) Drive (JMAG-RT) design template consists of a nonlinear IPM motor drive system with advanced control that includes MTPA, field weakening, and MTPV control. In this case, the nonlinear IPM motor is modeled in a JMAG-RT model. It has nonlinear inductances Ld and Lq which change with the motor current. A JMAG-RT model is derived from finite element analysis and delivers a very high level of fidelity and accuracy as compared to the actual motor, with nonlinear effects (such as saturation, spatial harmonics) included.
The template circuit is shown below.
Similar to the PMSM (IPM) Drive template, the control scheme is implemented in dq frame. It consists of d‐axis and q‐axis current loops and speed loops. The speed loop establishes the current reference. Based on the current reference and other operating conditions, the IPM Speed Control block determines if the system operates in MTPA control, or field weakening control, or MTPV control, and adjusts the current reference accordingly. The current loops provide voltage commands for the PWM inverter.
Given the dc bus voltage and the mechanical speed, the IPM Speed Control block will calculate the base speed nm_th. Below the base speed nm_th, the motor will operate in the maximum torque region with MTPA control. Above the base speed nm_th, the motor will operate in the maximum power region with field weakening control. Furthermore, as the motor speed increases further, depending on the motor parameters and operating conditions, the motor will operate in the MTPV control to maximize the power output.
Unlike in the linear PMSM drive system, however, the motor in this system is nonlinear, and d‐axis and q‐axis inductances are a function of the motor currents Id and Iq. The nonlinear inductances Ld and Lq are conveniently obtained from the JMAG-RT model in real-time and are fed back to various control blocks.
A default JMAG-RT model file “10k_S_C_I-ExpOnl.rtt” is provided with this template. Users would select their own JMAG-RT file by double-clicking on the PMSM RT block.
Controller design involving nonlinear machines is a particularly difficult and challenging task, and this is made considerably easier with the Motor Control Design Suite, and especially with this template as it saves users the trouble of preparing the 2-dimensional lookup tables for Ld and Lq.
The PMSM (nonlinear IPM) Drive design template consists of a nonlinear IPM motor drive system (motor inductances Ld and Lq change with the motor current) with advanced control that includes MTPA, field weakening, and MTPV control. The circuit is shown below.
The control scheme is similar to the PMSM (IPM) Drive (JMAG-RT) template.
Unlike in the PMSM (IPM) Drive (JMAG-RT) template, however, the motor in this system is a PSIM nonlinear motor model, and d‐axis and q‐axis inductances are defined through a 2‐dimensional lookup table. These inductances are fed back to various control blocks.
Two default lookup table files are provided when the design template is expanded. To use your own lookup table files, replace the default lookup tables with your own, or point the lookup table files to the location where your own files are located.
To define the lookup table file locations, in the Design Suite template interface, for example, define:
Ld Lookup Table “temp1\Ld_Idq.tbl” [The file is in the subfolder “temp1”]
Ld Lookup Table “..\temp1\Ld_Idq.tbl” [The file is in the folder “temp1” in parallel to the schematic file folder]
Ld Lookup Table “c:\temp2\Ld_Idq.tbl” [The file is in the folder “c:\temp2\tables”]
All the controller parameters are calculated automatically by the Design Suite with proper stability margins. The current loops and the speed loop can have different sampling rates.
The PMSM (SPM) Drive design template consists of a linear SPM motor drive system with advanced control that includes field weakening and MTPV control. The circuit is shown below.
The control scheme is implemented in the dq frame. It consists of d‐axis and q‐axis current loops and speed loops. The speed loop establishes the current reference. Based on the current reference and other operating conditions, the SPM Controller determines if the system operates in field weakening control or MTPV control, and adjusts the current reference. The current loops provide voltage commands for the PWM inverter.
Given the dc bus voltage and the mechanical speed, the SPM Speed Control block will calculate the base speed nm_th. Below the base speed nm_th, the motor will operate in the maximum torque region. Above the base speed nm_th, the motor will operate in the maximum power region with field weakening control. Furthermore, as the motor speed increases further, depending on the motor parameters and operating conditions, the motor will operate in the MTPV control to maximize the power output.
The PMSM Drive design template consists of a linear IPM or SPM motor drive system with regular field‐oriented control. The template circuit is shown below.
This control structure can be found in the application notes of many microcontroller manufacturers. The current Ia and Ib are converted to the alpha/beta frame through the Clarke transformation, and then to dc quantities Id and Iq through the Park transformation. The reference for the d‐axis current Id is usually 0, but it should be set to a value other than 0 for higher torque output and for field weakening. The reference for the q‐axis current Iq is determined by the outer speed loop.
Unlike the PMSM (IPM) Drive template circuit, advanced controls such as MTPA, field weakening control, and MTPV control are not implemented. Users need to either use the templates described in the above sections or add their own circuits to achieve maximum drive performance.
The PMSM (IPM) Drive (torque control) design template consists of a linear IPM motor drive system with advanced control that includes MTPA, field weakening, and MTPV control. The circuit is shown below.
The control scheme is similar to the PMSM (IPM) Drive template.
However, unlike the current/speed control loop structure in the PMSM (IPM) Drive template, this system consists of inner current loops and an outer torque loop. The torque loop uses an integrator controller and is inside the Torque Control block. The torque loop establishes the current references for d-axis and q-axis current loops. The controller parameter of the torque loop is calculated automatically after the torque loop crossover frequency fcr_Te and the power limit P_max are entered.
The PMSM (IPM) Drive (JMAG-RT) (torque control) design template consists of a nonlinear IPM motor drive system with advanced control that includes MTPA, field weakening, and MTPV control. In this case, the nonlinear IPM motor is modeled in a JMAG-RT model. A JMAG-RT model is derived from finite element analysis and delivers a very high level of fidelity and accuracy as compared to the actual motor, with nonlinear effects (such as saturation, spatial harmonics) included.
The control scheme is similar to the PMSM (IPM) Drive (torque control) template.
The Induction Motor Drive design template consists of an induction motor drive system with vector control and field weakening control. The template circuit is shown below.
The control scheme is in the dq frame, and the control circuit consists of d‐axis and q‐axis current loops and a speed loop. A slip calculator calculates the motor slip frequency. The current loops and the speed loop can have different sampling rates.
Based on the dc bus voltage and the stator frequency, a field weakening control block calculates the d‐axis reference to achieve the constant power operation. This reference is used when the stator frequency is over the threshold frequency We_base. When the stator frequency is less than the threshold frequency, the calculated reference Ids is used to achieve the constant torque operation.
One big advantage of the Motor Control Design Suite is that the motor maximum current Ismax, the d‐axis reference Ids (for maximum torque output), and the threshold stator frequency We_base are calculated automatically, ensuring the optimum operation of the system.
After a template circuit is created, one can modify the circuit for other analysis. As long as the control structure remains the same, the controllers designed by the Motor Control Design Suite should remain valid.
Some of the changes that one can make include the following:
The figure below shows the cross-sectional schematics of permanent-magnet synchronous motors using surface-magnet (SPM) (left) and internal-magnet (IPM) (right).