TIDUF67 April   2024

 

  1.   1
  2.   Description
  3.   Resources
  4.   Features
  5.   Applications
  6.   6
  7. 1System Description
    1. 1.1 Terminology
    2. 1.2 Key System Specifications
  8. 2System Overview
    1. 2.1 Block Diagram
    2. 2.2 Highlighted Products
      1. 2.2.1 AM263x Microcontrollers
        1. 2.2.1.1 TMDSCNCD263
        2. 2.2.1.2 LP-AM263
  9. 3System Design Theory
    1. 3.1 Three-Phase PMSM Drive
      1. 3.1.1 Mathematical Model and FOC Structure of PMSM
      2. 3.1.2 Field Oriented Control of PM Synchronous Motor
        1. 3.1.2.1 The ( a ,   b ) ⇒ ( α , β ) Clarke Transformation
        2. 3.1.2.2 The α , β ⇒ ( d ,   q ) Park Transformation
        3. 3.1.2.3 The Basic Scheme of FOC for AC Motor
        4. 3.1.2.4 Rotor Flux Position
      3. 3.1.3 Sensorless Control of PM Synchronous Motor
        1. 3.1.3.1 Enhanced Sliding Mode Observer With Phase Locked Loop
          1. 3.1.3.1.1 Design of ESMO for PMSM
          2. 3.1.3.1.2 Rotor Position and Speed Estimation with PLL
      4. 3.1.4 Hardware Prerequisites for Motor Drive
      5. 3.1.5 Additional Control Features
        1. 3.1.5.1 Field Weakening (FW) and Maximum Torque Per Ampere (MTPA) Control
        2. 3.1.5.2 Flying Start
  10. 4Hardware, Software, Testing Requirements, and Test Results
    1. 4.1 Hardware Requirements
    2. 4.2 Software Requirements
      1. 4.2.1 Importing and Configuring Project
      2. 4.2.2 Project Structure
      3. 4.2.3 Lab Software Overview
    3. 4.3 Test Setup
      1. 4.3.1 LP-AM263 Setup
      2. 4.3.2 BOOSTXL-3PHGANINV Setup
      3. 4.3.3 TMDSCNCD263 Setup
      4. 4.3.4 TMDSADAP180TO100 Setup
      5. 4.3.5 TMDSHVMTRINSPIN Setup
    4. 4.4 Test Results
      1. 4.4.1 Level 1 Incremental Build
        1. 4.4.1.1 Build and Load Project
        2. 4.4.1.2 Setup Debug Environment Windows
        3. 4.4.1.3 Run the Code
      2. 4.4.2 Level 2 Incremental Build
        1. 4.4.2.1 Build and Load Project
        2. 4.4.2.2 Setup Debug Environment Windows
        3. 4.4.2.3 Run the Code
      3. 4.4.3 Level 3 Incremental Build
        1. 4.4.3.1 Build and Load Project
        2. 4.4.3.2 Setup Debug Environment Windows
        3. 4.4.3.3 Run the Code
      4. 4.4.4 Level 4 Incremental Build
        1. 4.4.4.1 Build and Load Project
        2. 4.4.4.2 Setup Debug Environment Windows
        3. 4.4.4.3 Run the Code
    5. 4.5 Adding Additional Functionality to Motor Control Project
      1. 4.5.1 Using DATALOG Function
      2. 4.5.2 Using PWMDAC Function
      3. 4.5.3 Adding CAN Functionality
      4. 4.5.4 Adding SFRA Functionality
        1. 4.5.4.1 Principle of Operation
        2. 4.5.4.2 Object Definition
        3. 4.5.4.3 Module Interface Definition
        4. 4.5.4.4 Using SFRA
    6. 4.6 Building a Custom Board
      1. 4.6.1 Building a New Custom Board
        1. 4.6.1.1 Hardware Setup
        2. 4.6.1.2 Migrating Reference Code to a Custom Board
          1. 4.6.1.2.1 Setting Hardware Board Parameters
          2. 4.6.1.2.2 Modifying Motor Control Parameters
          3. 4.6.1.2.3 Changing Pin Assignment
          4. 4.6.1.2.4 Configuring the PWM Module
          5. 4.6.1.2.5 Configuring the ADC Module
          6. 4.6.1.2.6 Configuring the CMPSS Module
  11. 5General Texas Instruments High Voltage Evaluation (TI HV EVM) User Safety Guidelines
  12. 6Design and Documentation Support
    1. 6.1 Design Files
      1. 6.1.1 Schematics
      2. 6.1.2 BOM
      3. 6.1.3 PCB Layout Recommendations
        1. 6.1.3.1 Layout Prints
    2. 6.2 Tools and Software
    3. 6.3 Documentation Support
    4. 6.4 Support Resources
    5. 6.5 Trademarks
  13. 7About the Author
Configuring the PWM Module

The SysConfig file configures the PWM channels. The base addresses of the PWM channels that are used for the motor controller PWM inputs are defined in the hal.h file, and the base addresses are assigned to the PWM handles in the hal.c file. The connection diagram for the PWM signals between the LP-AM263 and BOOSTXL-3PHGANINV is shown in Figure 4-47.

GUID-20240320-SS0I-BJCC-F3RH-KXCD50CDQD9Z-low.svg Figure 4-47 PWM Connection Diagram

The code to configure the PWM signals is shown in the following, taken from the .syscfg, hal.h and hal.c files.

  1. The base addresses of the PWM modules are defined in the hal.h file as shown in the following.

    #define MTR1_PWM_U_BASE         CONFIG_EPWM13_BASE_ADDR
    #define MTR1_PWM_V_BASE         CONFIG_EPWM3_BASE_ADDR
    #define MTR1_PWM_W_BASE         CONFIG_EPWM9_BASE_ADDR
  2. The GPIOs are set up as PWM outputs in the .syscfg file.

    GUID-20240320-SS0I-B4LX-DGZ9-KBK1VDFRJV7N-low.png Figure 4-48 GPIO Configuration for PWM Modules
  3. The following code assigns the corresponding base addresses of the PWM modules to the PWM handle in the HAL_MTR1_init() function that is located in the hal.c file. The following code does not need to be changed when adapting the code to a new board or TI MCU, the following code block shows how the PWM handle is initialized in the code.
        // initialize PWM handles for Motor 1
        obj->pwmHandle[0] = MTR1_PWM_U_BASE;        //!< the PWM handle
        obj->pwmHandle[1] = MTR1_PWM_V_BASE;        //!< the PWM handle
        obj->pwmHandle[2] = MTR1_PWM_W_BASE;        //!< the PWM handle
  4. Figure 4-49 shows the EPWM time base configuration. Sync out pulse for phase A is used as sync in pulse source for other PWMs.
    GUID-20240320-SS0I-T2K2-L1TT-SCWZ15T9HXBX-low.png Figure 4-49 EPWM Time Base Configuration

    EPWM Action Qualifier Configurationshows the EPWM action qualifier output event configuration forLP-AM263 and BOOSTXL-3PHGANINV combination. PWM action qualifier outputs need to be set up based on the hardware board.

    GUID-20240320-SS0I-WTQH-27MC-KDMRFLWCG8BW-low.png Figure 4-50 EPWM Action Qualifier Configuration

    Figure 4-51 shows the EPWM dead-band configuration for LP-AM263 . Swap output is checked for EPWMxA-B to match the high side and low side PWMs in LaunchPad™ and Booster Pack™.

    GUID-20240320-SS0I-HT17-MTZV-2QGMV2KCNH8R-low.png Figure 4-51 EPWM Dead-Band Configuration