ZHDU069 March 2026 MSPM0G1507 , MSPM0G1519 , MSPM0G3507 , MSPM0G3519
可通过 DAC12 模块从 MCU 实时输出 32 位算法变量。通过将 pUserCtrlRegs->dacCtrl.dacEn 设置为 1b,即可启用 DAC12 输出。MSPM0 中的 DAC12 为 12 位 DAC 模块,因此需要在输出之前进行比例调节。按照以下步骤配置 DAC12 输出:
通过将 dacEn 设置为 1b,可将变量输出馈送到 DAC 寄存器,但用户需要在 TI SysConfig 中启用 DAC 外设,DAC 外设才能正常运行。还要确保 DAC 输出引脚未被任何其他外设或 DRV 板载入。
表 9-1 列出了用于实时跟踪的 FOC 电机控制变量地址,每个 FOC 环路都会发生更新。相比之下,pUserStatusRegs 中的变量每 1ms 更新一次,因此无法显示实时变化。
| 参数 | 变量地址/名称 | IQ 类型 | ||
|---|---|---|---|---|
| 无传感器 FOC | 通用 FOC | 带传感器 FOC | ||
| A 相电流 | g_pMotorInputs->current.iabc.a | IQ27 | ||
| B 相电流 | g_pMotorInputs->current.iabc.b | IQ27 | ||
| C 相电流 | g_pMotorInputs->current.iabc.c | IQ27 | ||
| A 相电流原始 ADC 值 | g_pMotorInputs->current.iabcRaw.a | IQ11 | ||
| B 相电流原始 ADC 值 | g_pMotorInputs->current.iabcRaw.b | IQ11 | ||
| C 相电流原始 ADC 值 | g_pMotorInputs->current.iabcRaw.c | IQ11 | ||
| A 相电压 | g_pMotorInputs->voltage.vabc.a | IQ27 | ||
| B 相电压 | g_pMotorInputs->voltage.vabc.b | IQ27 | ||
| C 相电压 | g_pMotorInputs->voltage.vabc.c | IQ27 | ||
| A 相电压原始 ADC 值 | g_pMotorInputs->voltage.vabcRaw.a | IQ12 | ||
| B 相电压原始 ADC 值 | g_pMotorInputs->voltage.vabcRaw.b | IQ12 | ||
| C 相电压原始 ADC 值 | g_pMotorInputs->voltage.vabcRaw.c | IQ12 | ||
| D 轴电流 | 0x20200760 | g_pMC_App->foc.idq.d | IQ27 | |
| Q 轴电流 | 0x20200764 | g_pMC_App->foc.idq.q | IQ27 | |
| D 轴电压 | 0x20200768 | g_pMC_App->foc.vdq.d | IQ27 | |
| Q 轴电压 | 0x2020076C | g_pMC_App->foc.vdq.q | IQ27 | |
| D 轴经过滤波的 BEMF | 0x20200BEC | g_pMC_App->angleTrackingPLLEstim.EdqFilt.d | 不适用 | IQ27 |
| Q 轴经过滤波的 BEMF | 0x20200BF0 | g_pMC_App->angleTrackingPLLEstim.EdqFilt.q | 不适用 | IQ27 |
| 滤波后的估算电机转速 | 0x20200C0C | g_pMC_App->angleTrackingPLLEstim.velocityFilt | g_pMC_App->foc.hallObj.hallEstimVelocityFilt | IQ27 |
| 估算的转子角度 | 0x20200C14 | g_pMC_App->angleTrackingPLLEstim.fluxAngle | g_pMC_App->foc.hallObj.hallEstimFluxAngle | IQ27 |
| 功率反馈 | 0x20200940 | g_pMC_App->foc.closeLoop.PowerFeedback | IQ27 | |
| SVM 输出占空比 A 相 | 0x20200730 | g_pMC_App->foc.svm.Dabc.a | IQ0 | |
| SVM 输出占空比 B 相 | 0x20200734 | g_pMC_App->foc.svm.Dabc.b | IQ0 | |
| SVM 输出占空比 C 相 | 0x20200738 | g_pMC_App->foc.svm.Dabc.c | IQ0 | |
在不同的 FOC 算法版本中,变量地址可能有所不同。有关较新的无传感器 FOC 算法版本的变量地址,请参阅最新的 MSPM0 无传感器 FOC 调优指南。
图 9-2 和图 9-3 展示了在 DAC12 输出引脚上输出估算的转子角度变量的示例。
对于估算的转子角度,IQ(1.0) 表示 32 个电角度周期,以避免算法溢出。