SPRUJ26A September   2021  – April 2024

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. 1Introduction
  5. 2Motor Control Theory
    1. 2.1 Mathematical Model and FOC Structure of PMSM
    2. 2.2 Field Oriented Control of PM Synchronous Motor
    3. 2.3 Sensorless Control of PM Synchronous Motor
      1. 2.3.1 Enhanced Sliding Mode Observer with Phase Locked Loop
        1. 2.3.1.1 Design of ESMO for PMSM
        2. 2.3.1.2 Rotor Position and Speed Estimation With PLL
    4. 2.4 Hardware Prerequisites for Motor Drive
      1. 2.4.1 Motor Phase Voltage Feedback
    5. 2.5 Additional Control Features
      1. 2.5.1 Field Weakening (FW) and Maximum Torque Per Ampere (MTPA) Control
      2. 2.5.2 Flying Start
  6. 3Running the Universal Lab on TI Hardware Kits
    1. 3.1 Supported TI Motor Evaluation Kits
    2. 3.2 Hardware Board Setup
      1. 3.2.1  LAUNCHXL-F280025C Setup
      2. 3.2.2  LAUNCHXL-F280039C Setup
      3. 3.2.3  LAUNCHXL-F2800137 Setup
      4. 3.2.4  TMDSCNCD280025C Setup
      5. 3.2.5  TMDSCNCD280039C Setup
      6. 3.2.6  TMDSCNCD2800137 Setup
      7. 3.2.7  TMDSADAP180TO100 Setup
      8. 3.2.8  DRV8329AEVM Setup
      9. 3.2.9  BOOSTXL-DRV8323RH Setup
      10. 3.2.10 BOOSTXL-DRV8323RS Setup
      11. 3.2.11 DRV8353RS-EVM Setup
      12. 3.2.12 BOOSTXL-3PHGANINV Setup
      13. 3.2.13 DRV8316REVM Setup
      14. 3.2.14 TMDSHVMTRINSPIN Setup
      15.      34
      16.      35
    3. 3.3 Lab Software Implementation
      1. 3.3.1 Importing and Configuring Project
      2.      38
      3.      39
      4. 3.3.2 Lab Project Structure
      5. 3.3.3 Lab Software Overview
    4. 3.4 Monitoring Feedback or Control Variables
      1. 3.4.1 Using DATALOG Function
      2. 3.4.2 Using PWMDAC Function
      3. 3.4.3 Using External DAC Board
    5. 3.5 Running the Project Incrementally Using Different Build Levels
      1. 3.5.1 Level 1 Incremental Build
        1. 3.5.1.1 Build and Load Project
        2. 3.5.1.2 Setup Debug Environment Windows
        3. 3.5.1.3 Run the Code
      2. 3.5.2 Level 2 Incremental Build
        1. 3.5.2.1 Build and Load Project
        2. 3.5.2.2 Setup Debug Environment Windows
        3. 3.5.2.3 Run the Code
      3. 3.5.3 Level 3 Incremental Build
        1. 3.5.3.1 Build and Load Project
        2. 3.5.3.2 Setup Debug Environment Windows
        3. 3.5.3.3 Run the Code
      4. 3.5.4 Level 4 Incremental Build
        1. 3.5.4.1 Build and Load Project
        2. 3.5.4.2 Setup Debug Environment Windows
        3. 3.5.4.3 Run the Code
  7. 4Building a Custom Board
    1. 4.1 Building a New Custom Board
      1. 4.1.1 Hardware Setup
      2. 4.1.2 Migrating Reference Code to a Custom Board
        1. 4.1.2.1 Setting Hardware Board Parameters
        2. 4.1.2.2 Modifying Motor Control Parameters
        3. 4.1.2.3 Changing Pin Assignment
        4. 4.1.2.4 Configuring the PWM Module
        5. 4.1.2.5 Configuring the ADC Module
        6. 4.1.2.6 Configuring the CMPSS Module
        7. 4.1.2.7 Configuring Fault Protection Function
      3. 4.1.3 Adding Additional Functionality to Motor Control Project
        1. 4.1.3.1 Adding Push Buttons Functionality
        2. 4.1.3.2 Adding Potentiometer Read Functionality
        3. 4.1.3.3 Adding CAN Functionality
    2. 4.2 Supporting New BLDC Motor Driver Board
    3. 4.3 Porting Reference Code to New C2000 MCU
  8.   A Appendix A. Motor Control Parameters
  9.   References
  10.   Revision History

Design of ESMO for PMSM

The conventional PLL integrated into the SMO is shown in Figure 2-14.

 Block Diagram of eSMO With PLL
                    for a PMSM Figure 2-14 Block Diagram of eSMO With PLL for a PMSM

The traditional reduced-order sliding mode observer is constructed, which mathematical model is shown in Figure 2-14 and the block diagram is shown in Figure 2-15.

Equation 11. i ^ ˙ α i ^ ˙ β = 1 L d - R s - ω ^ e ( L d - L q ) ω ^ e ( L d - L q ) - R s i ^ α i ^ β + 1 L d V α - e ^ α + z α V β - e ^ β + z β

where z α and z β are sliding mode feedback components and are defined as:

Equation 12. z α z β = k α s i g n ( i ^ α - i α ) k β s i g n ( i ^ β - i β )

Where k α and k β are the constant sliding mode gain designed by Lyapunov stability analysis. If k α and k β are positive and significant enough to guarantee the stable operation of the SMO, the k α and k β should be large enough to hold k α > m a x ( e α ) and k β > m a x ( e β ) .

 Block Diagram of Traditional
                    Sliding Mode Observer Figure 2-15 Block Diagram of Traditional Sliding Mode Observer

The estimated value of EEMF in α-β axes ( e ^ α , e ^ β ) can be obtained by low-pass filter from the discontinuous switching signals z α and z α :

Equation 13. e ^ α e ^ β = ω c s + ω c z α z β

Where ω c = 2 π f c is the cutoff angular frequency of the LPF, which is usually selected according to the fundamental frequency of the stator current.

Therefore, the rotor position can be directly calculated from arc-tangent the back EMF, defined as follow

Equation 14. θ ^ e = - tan - 1 e ^ α e ^ β

Low pass filter removes the high-frequency term of the sliding mode function, which leads to occur phase delay resulting. It can be compensated by the relationship between the cut-off frequency ω c and back EMF frequency ω e , which is defined as:

Equation 15. θ e = - tan - 1 ( ω e ω c )

And then the estimated rotor position by using SMO method is:

Equation 16. θ ^ e = - tan - 1 e ^ α e ^ β + θ e

In a digital control application, a time discrete equation of the SMO is needed. The Euler method is the appropriate way to transform to a time discrete observer. The time discrete system matrix of Equation 17 in α-β coordinates is given by Equation 17 as:

Equation 17. i ˙ ^ α ( n + 1 ) i ˙ ^ β ( n + 1 ) = F α F β i ˙ ^ α ( n ) i ˙ ^ β ( n ) + G α G β V α * ( n ) - e ^ α ( n ) + z α ( n ) V β * ( n ) - e ^ β ( n ) + z β ( n )

Where the matrix F and G are given by Equation 18 and Equation 19 as:

Equation 18. F α F β = e - R s L d e - R s L q
Equation 19. G α G β = 1 R s 1 - e - R s L d 1 - e - R s L q

The time discrete form of Equation 13 is given by Equation 20 as:

Equation 20. e ^ α ( n + 1 ) e ^ β ( n + 1 ) = e ^ α ( n ) e ^ β ( n ) + 2 π f c z α ( n ) - e ^ α ( n ) z β ( n ) - e ^ β ( n )