This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/TMS320F28054F:Instaspin FOC 实验1c:电机不旋转

Guru**** 2454880 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/917602/ccs-tms320f28054f-instaspin-foc-lab-1c-motor-not-spinning

器件型号:TMS320F28054F

工具/软件:Code Composer Studio

我成功运行了实验1b、使我的电机以大约100rpm 的转速旋转。 现在我正在尝试运行实验1c,当我编辑变量 “gMotorVars.SpeedRef_KRPM”、“gMotorVars.IdSet_A”和“gMotorVars.IqSet_A”时,不会发生任何情况。 当我更改 IQ_Seta 时、我看到 IqRef_pu 更新、但对电机的输出没有影响。

我正在使用定制板、因此我必须对 ADC 配置进行一些更改。 我已经检查了 ADC 的电流和电压读数、这些读数看起来很准确、并且设置正确(ADC0作为 I_A (缓冲器)、ADC1-3作为 I_A/B/C、ADC4-7作为 V_A/B/C/BUS)。

我看到信号开关和 PWM 工作正常、但电流不会随着我设置这些变量而变化。 我会错过什么? 谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Lab01b 不使用电流感应信号来旋转电机、但您需要通过运行 lab01b 来验证电流感应信号。 Lab01c 需要电流感应信号以电流闭环旋转电机、因此 在确保电流感应信号良好之前、请勿运行 lab01c。

    1.根据 user.h 中的硬件板设置正确的参数

    #define USER_IQ_FULL_SCALE_VOLTAGE_V          (24.0)

    #define USER_VOLTGE_FILTER_POLE_Hz              (335.648)

    #define USER_ADC_FULL_SCALE_VOLTGE_V      (66.32)

    #define USER_IQ_FULL_SCALE_CURRENT_A          (41.25)

    #define USER_ADC_FULL_SCALE_CURRENT_A      (82.5)

     

    2.更改 HAL_readAdcData ()中电流系数的符号 hal.h 中,您可以参阅 《InstaSPIN-FOC》和《InstaSPIN-MOTION 用户指南》(修订版 H) (http://www.ti.com/lit/ug/spruhj1h/spruhj1h.pdf)的第5.2章(硬件必要条件),以获得有关此内容的详细说明。

     

    静态内联空 HAL_readAdcData (HAL_Handle handle、HAL_AdcData_t * pAdcData)

      _IQ Current_SF = HAL_getCurrentScaleFactor (handle);