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.

[参考译文] TMS320F280049C:SDK 实验室指南

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/878379/tms320f280049c-sdk-lab-guide

器件型号:TMS320F280049C
主题中讨论的其他器件:DRV8320

SDK 实验室指南提供了一些非常重要的5.1设置细节、这是必备条件。 在自动识别和首次运行后、我的电机变得非常热。 SDK 具有针对满量程频率的默认20Hz 预设。 那么、如果没有多个指南来查找5.1信息或烧毁电机、那么任何人都知道这是什么目的!

我们如何知道 InstaSpin 电机自动 ID 的20Hz 是预期频率还是所需的满量程频率? 此外、在自动识别之前、所有3个电机相位都处于全+Vbus 电平、对 HV 电机而言非常危险。 在空闲时间内保持相电压关闭是业界最佳做法、为什么 TI 工程师不采用最佳可接受的做法?

5.1.
软件必要条件
以下是需要在用户软件中进行配置以管理电机信号的参数
FAST 观测器所需的所有信号。 本节将讨论每个参数。
•IQ 满量程频率-设置为电机的最大电频率、留20-30%余量
•IQ 满量程电压-设置为电机的最大电压、留20-30%余量
•IQ 满量程电流-设置为电机的最大可测量电流、留20-30%余量
•最大电流-设置为电机制造商的最大电流(峰值)、余量为0%
•抽取率-多个环路速率和设置
•系统频率-设置为 MCU 的最大 CPU 时钟速度
•PWM 频率-默认值为20KHz、随电感较低的电机而增加
•最大占空比- 100%占空比使用3分流电流测量

以下是 SDK 提及在 user.h 中预设的用户参数:

在识别电机参数之前,可以在“user.h”中填充一些值。
 USER_MOTOR_TYPE = MOTOR_TYPE_PM 或 MOTOR_TYPE_归纳  必须知道电机类型并将其输入此参数。
 USER_MOTOR_NUM_POLE_PAIRS  电机的极对数
 USER_MOTOR_MAX_CURRENT  电机铭牌上的最大电流
 USER_MOTOR_RES_EST_CURRENT  识别期间、电机必须首先以开环方式启动。 该值设置电机初始启动期间使用的电流峰值。 如果电机具有高齿槽扭矩或某种负载、请增大此电流值、直到电机开始旋转。 电机识别后、不使用该值。
对于 ACIM 电机、 USER_MOTOR_IND_EST_CURRENT  必须为零。 对于 PMSM 电机、该值可设置为 USER_MOTOR_RES_EST_CURRENT 所用电流的负值。 例如、如果 USER_MOTOR_RES_EST_CURRENT 为1.0、则 USER_MOTOR_IND_EST_CURRENT 可以为-1.0。
 USER_MOTOR_NUM_POLE_PAIRS  电机的极对数
对于 PMSM 电机、 USER_MOTOR_Rated  磁通必须为零。 对于 ACIM 电机、额定磁通应设置为铭牌值、计算如下:
USER_MOTOR_RAGE_FLUX = SQRT (2)/SQRT (3)* RAGE_VAC/RAGE_F、因此对于额定频率为60Hz 的220VAC 电机、额定磁通为:
USER_MOTOR_RAGE_FLUX = SQRT (2)/SQRT (3)*2200/60.0 = 2.9938
 USER_MOTOR_FLUX_EST_FREQ_Hz  该频率的起始点、如果电机是 PMSM 电机、则为20.0Hz、如果是 ACIM 电机、则良好的起始点为5.0Hz。

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

    由于电机 ID 开始平稳旋转转子数千 RPM、从而产生真正的扭振振动、甚至会发热、因此必须中止运行、这会引起一些困惑。 即使使用方波换向、没有正弦属性、电机 ID 也会发生什么变化? 自动识别为什么会开始剧烈振动电机? 对于同一电机、6代码 FOC 绝不会出现这些问题。 我对 InstaSpin 用户指南有何误解?

    在振动严重时停止自动电机 ID 后的 GUI。

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

    和设置;  

    //! \brief 定义 R/L 估算频率、Hz
    //!
    #define USER_R_OVER L_EST_FREQ_Hz (150)
    
    #define USER_MOTOR_VOLT_MAX_V (42.0) 

    在 ID 测试期间(160Hz 峰值)、有一定的作用可以阻止齿槽、但仍然像 Crazy 一样、用于稍后运行、ID 之后。 此外、即使在暂停重启后、CCS 调试也仅允许1次电机 ID。 SW 在它设置了 ID 标志并且我们将实时标志清零后拒绝 renter 电机 ID 测试。 InstaSpin SDK GUI 必须安静地更新 XDS110固件、每次运行时、CCS9.1调试都要再次更新 XDS110固件。 固件更新不应重复发生!

    3相波形不是正弦波、它们是100%梯形、如下面的用户指南所述。 波形除了梯形外是其他波形、因为它是 ID 之后的纯方波、并运行至用户设置的 Hz 速度! 梯形谷值/秒具有正弦属性的差异存在、在电机运行期间 DRV8320相电压缺失。 用户指南文献编号:SPRUHJ1H 未讨论 VsMagnitude (如下)、因为它已在 SDK 中实现!

    USER_MAX_VS_MAG_PU 可以高达1.0 (全局 IQ 格式)或_IQ (1.0)(如果当前重建是)
    未使用。 有关更多讨论和示例、请参阅实验10a-x

    //! \brief 定义电压矢量幅度
    #define USER_MAX_VS_MAG_PU (1.0)\#define USER_MAX_VS_MAG_PU (0.5)
    
    //! \brief 定义参考与幅度、单位为允许
    的单位//! \将最大值与幅度
    #define USER_VS_REF_MAG_PU ((float32_t)(0.8)* USER_MAX_VS_MAG_PU)的值设置为0.5至0.95 

    除了这一最大电压矢量幅度的定义之外、还可以更改控制器对象的成员、以允许更改电流控制器的输出、即空间矢量调制(SVM)的输入。 这一点很重要、因为即使在 user.h 中将最大电压矢量幅度定义为最大值1.0 (或100%)、SVM 的输入也可以高达4.0/3.0 = 1.3333 (允许过调制)。 SVM 中高于1.0的输入位于过调制区域。 2/SQRT (3)= 1.1547的输入是正弦波的波峰值达到100%占空比的地方。 输入 为1.3333时、SVM 发生器会生成梯形波形。 以下代码示例将电流控制器的输出更改为1.3333、允许最大过调制:

    //设置 IQ 和 Id 电流的最大电流控制器输出
    //控制器启用过调制。
    CTRL_setMaxVsMag_pu (ctrlHandle、_IQ (pUserParams->maxVsMag_pu); 

    在设置电机 ID 标志后、控制器可能仍处于过调制状态? 因此、在运行模式期间、电机振动、振动、最高可达到用户的新频率和更高频率设置。

      

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

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

    必须根据规格设置所有标识变量。 指南中显示的值仅是测试电机的参考值。 您最好使用 CCS 调试和调优新电机、因为识别变量可能会相应地发生更改。  GUI 适合运行已识别的电机或重新识别类似的电机。

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

    [引用用户="Yanming Lua"] GUI 适合运行识别的电机或重新识别类似的电机。

    GUI 是 SDK 的一部分、不应像在没有用户提示确认的情况下那样无提示地降级固件。

    [引用 user="Yanming Lua">所有标识变量都必须根据规范进行设置。 [/报价]

    InstaSpin 的重点是在不了解所有规格的情况下旋转任何电机。 SDK 已使用一个 Nidec 电机、CCS 调试没有产生任何影响。 新的 Nidec 振动在降低电流后降低、激励 Hz 默认值为300、为什么接地时它设置得如此高? 因此、新电机再次通过 ID 时会出现轻微的低速振动、但在 ID 之后、首次运行时会发生高达150Hz 的振动、就像在加热阶段发生地震一样。

    //! \brief 定义 R/L 激励频率、Hz
    //!
    #define USER_R_OVER L_EXC_FREQ_Hz ((float32_t)(100.0))//300

    1、3相保持100%调制、运行期间绝对没有正弦波形。 为什么在任何时候都不会形成正弦波 IT_05LAB? 请使用 x49c 套件验证此情况是否符合 FOC 文本。 S6与所有导轨中的图片相反、可反转站点2引脚。

    2.在 ID 和运行模式下、您不会发现电机被100%梯形调制的情况很奇怪吗? SDK 代码中似乎有一个错误、因为它在进行 ID 检查后从未禁用过调制、如上述文章中所示、并在 InstaSpin FOC 用户指南中进行了讨论。  

    InstaSpin FOC 实验室指南 SPRUHJ1H–2013年1月–2019年6月修订版与 SDK 中不存在的变量名称(定义)相关。 这种情况有多好?  

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

    BTW:

    电机 ID 1/2通过 DMM 测量的相位 USER_MOTOR_Rs_Ohm 会报告该相位。 这似乎是问题的一部分、为什么电流是识别电机实际所需电流的两倍。 也许是100%调制的原因、并且没有产生正弦相电压。 在自动识别的中点、它通常会在转子达到快速和高速后将其关闭、然后开始振动变得非常热。 这种行为似乎与多个 TI 文档中所述的 InstaSpin FOC 的工作方式完全相反。   

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

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

    GUI 用于 InstaSPIN 实验室演示、需要在 user.h 中设置正确的电机参数 遗憾的是、这没有您所期望的通用函数。

    2.如果不设置适当的参数(包括最大电流、注入电流和电机运行频率),则很难识别未知电机。 这应该是一个理想的解决方案、但我们目前还不能承担这一费用。   

    请发布您的 user.h 以及一些电机相电流波形、这些波形将帮助我们了解您的问题。 谢谢!

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

    电机 ID 1/2通过 DMM 测量的相位 USER_MOTOR_Rs_Ohm 会报告该相位。

    没错。 测得的 Rs 是线间电阻、但识别的 Rs 是线间电阻。 Rs (线到中性点)= 0.5 * Rs (线到线)。