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