SPRUHJ1I January 2013 – October 2021 TMS320F2802-Q1 , TMS320F28026-Q1 , TMS320F28026F , TMS320F28027-Q1 , TMS320F28027F , TMS320F28027F-Q1 , TMS320F28052-Q1 , TMS320F28052F , TMS320F28052F-Q1 , TMS320F28052M , TMS320F28052M-Q1 , TMS320F28054-Q1 , TMS320F28054F , TMS320F28054F-Q1 , TMS320F28054M , TMS320F28054M-Q1 , TMS320F2806-Q1 , TMS320F28062-Q1 , TMS320F28062F , TMS320F28062F-Q1 , TMS320F28068F , TMS320F28068M , TMS320F28069-Q1 , TMS320F28069F , TMS320F28069F-Q1 , TMS320F28069M , TMS320F28069M-Q1
Maximum voltage vector is set in the file user.h and is used to set the maximum magnitude for the output of the Id and Iq PI current controllers. The Id and Iq current controller outputs are Vd and Vq. The relationship between Vs, Vd, and Vq is:
In this FOC controller, the Vd value is set equal to:
USER_MAX_VS_MAG_PU can go up to 1.0, in global IQ format, or _IQ(1.0), if current reconstruction is not used. For further discussion and examples, see Labs 10a-x.
//! \brief Defines the voltage vector magnitude
#define USER_MAX_VS_MAG_PU (1.0)
Besides this definition of the maximum voltage vector magnitude, a member of the controller object can be changed to allow changing the output of the current controllers, which is then the input of the space vector modulation (SVM). This is important to note, because even though the maximum voltage vector magnitude is defined in user.h to be a maximum of 1.0 (or 100%), the inputs to the SVM can go up to 4.0/3.0 = 1.3333 allowing over modulation. An input into the SVM above 1.0 is in the over modulation region. An input of 2/SQRT(3) = 1.1547 is where the crest of the sine wave touches the 100% duty cycle. At an input of 1.3333, the SVM generator produces a trapezoidal waveform. The following code example changing the output of the current controllers to 1.3333 allowing maximum over modulation:
// Set the maximum current controller output for the Iq and Id current
// controllers to enable overmodulation.
CTRL_setMaxVsMag_pu(ctrlHandle, _IQ(pUserParams->maxVsMag_pu));
Table 6-2 describes the different ranges of the maximum SVM input and what it means for the space vector modulation module (SVM).
|
| Duty Cycle on EPWM at Peak | Waveform Type | Current Reconstruction |
---|---|---|---|---|
|
| 86.6% | Perfect Sinusoidal | Not needed |
| 100.0% | Quasi-Sinusoidal | Required | |
| 100.0% | Trapezoidal | Required |
When operating in the overmodulation region, voltage waveforms start turning from sinusoidal to trapezoidal depending on how much overmodulation is applied. Motor vibration and torque ripple should be expected as motor operation goes deeper into overmodulation. The SVM module is explained in detail in Section 4.
Maximum Voltage Magnitude that causes a peak duty cycle of 100% requires three shunt current measurement.
The actual duty cycle range caused by the maximum voltage magnitude depends on the number of shunt resistors used to sample the currents. If 100% duty cycles are required by the application, user must use three shunt resistors to sample the phase currents of the motor. Having only two shunt resistors limits the duty cycle to be less than 100%. The maximum duty cycle allowed when using two shunt resistors depends on the OPAMP parameters and the layout itself. The details of choosing the right components for the current feedback are covered in Section 18.