Introduction
The Transformation module consists of transformations commonly found in motor-control applications.
Features Supported
Transformation module includes:
- Clarke transformation
- Park transformation
- Inverse Park transformation
- Space Vector Generation (SVGEN)
- Common-mode subtraction approach
- DPWM Generation (Part of SVGEN)
- Maximum Modulation
- Minimum Modulation
- SVGEN current reconstruction for single-shunt (SVGENCURRENT)
- Phase voltage reconstruction in overmodulation (VOLTS_RECON)
Features Not Supported
N/A
Benchmark Results
A benchmark on Arm® Cortex®-R5F core has been conducted to observe the following results when running the following functions:
Transform Function | CPU Cycles |
Clarke Transform |
CLARKE_run_twoInput | 16 |
CLARKE_run_threeInput | 18 |
Park Transform |
PARK_run | 19* |
Inverse Park Transform |
IPARK_run | 19* |
Space Vector Generation |
SVGEN_runCom | 41 |
DPWM Generation |
SVGEN_runMax | 36 |
SVGEN_runMin | 36 |
Phase voltage reconstruction |
VOLREC_calcVolSF | 30 |
VOLREC_run | 90 |
- Note
- both PARK and IPARK do not include trigonometric calculations of phasor. For Arm Cortex-R5F core, it's recommended to leverage the fast ti_arm_sincos/FastRTS_sincos function found in mathlib of MCU+ SDK.
- Ran with TI Clang Compiler v3.2.0.LTS, with -Os flag and the benchmarking function placed in TCM memory. Obtained the average result from 600 consecutive loops of running transform functions with DPL CycleCountP, mimicking the usage of a control loop.
- Actual result may vary depending on provided datasets and memory configuration. For Arm Cortex-R5F, it is recommended for users to map control loops to TCM for the best performance.
Provided Examples
The following examples have been provided to demonstrate transformation module:
API
APIs for Transformation Algorithms
- Note
- Arm is a registered trademark of Arm Limited (or its subsidiaries or affiliates) in the US and/or elsewhere.