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.

[参考译文] TMS320F28069M:即使电机控制环路工作正常、InstaSPIN IQ 也不稳定

Guru**** 2535150 points
Other Parts Discussed in Thread: DRV8301-69M-KIT, MOTORWARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1049078/tms320f28069m-instaspin-iq-is-not-stable-even-though-the-motor-control-loop-works-fine

器件型号:TMS320F28069M
主题中讨论的其他器件:DRV8301-69M-KITMOTORWARE

 您好!

我们使用 TI 的 DRV8301-69M-kit 在速度和扭矩控制基础上实现了用于位置控制的 InstaSPIN 运动。

我们有旋转变压器并使用 ADI 的 RDC 芯片、该芯片模拟 eQEP 并将其直接馈送到 DRV8301-69M-kit 以进行位置控制。

我们在实验室和流量环路中测试了我们的电机系统、运行良好。

当处于位置控制时、它抵制电机轴的变化。

在旋转时、它在流量环路测试期间运行良好。

我们将查看 IQ 电流、并发现它会由于转矩的变化而振荡。

这是有道理的。  然而、当运行在开路负载测试(仅限电机)时、它仍然能够正确旋转和停止。

电流实验室电源的电流消耗看起来非常合适。

我们捕获从控制环路计算出的 IQ、并以10Hz 间隔输出。

即使在负载开路(电机处于空气中且轴上未连接任何元件)时、此 IQ 似乎也会振荡很多、速度反馈几乎与目标速度相同。

请参见下图。  

当电机静止时、IQ 会稍微振荡(RMS 可能是恒定的)。

但当电机旋转时、它会振荡很多。

这就是我们捕获 IQ 的方法:

您能否提供任何有关电机运行时 IQ 为何如此振荡的输入?

谢谢、

Henry

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

    您好、 再说一次、

    这只是我的问题的后续行动。

    我在网上搜索并在 youtube 上找到了此视频(似乎由 Mathworks 上传) https://www.youtube.com/watch?v=HwSMDKRQg3k 、但可能与 TI 合作?

    在本视频中、从用户单击 ID 控制按钮的时间4:10开始、我可以看到 ID 在正弦波中振荡、RMS 大约为0。

    从4:13开始、用户点击 IQ、我可以看到 IQ 在正弦波中振荡、RMS 大约为直线。

    ID 和 IQ 控制的行为与正弦波非常相似。

    然而、在 Simulink 仿真中、当 SPED_fb 与大多数 FOC 仿真示例中的目标速度相同时、Id/IQ 通常为直线。

    我真的很难理解为什么 ID/IQ 在像这样的实际硬件中像正弦波。

    这正是我在 InstaSPIN 项目中看到的结果、即使在我们非常艰难的流环路测试中、该项目也能正常工作。

    只有当我以10Hz 的频率对 ID/IQ 进行采样并在 CAN 总线上传输时、我才会看到正弦波行为、但除此之外、系统工作正常。

    您能不能在这件事上发出一些光?  非常混乱。

    谢谢、此致、

    Henry  

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

    您正在从事哪项实验? 您能否先运行 lab05d 以实现具有恒定负载的速度闭环、然后看看会发生什么情况?

    您可以参考实验室指南和用户指南、根据您的电机调整控制参数。 通常情况下、反馈 ID 和 IQ 将具有振荡、但会尝试遵循参考 ID 和 IQ、振动值取决于负载和控制参数。

     您可以在 motorWare 的以下文件夹中找到实验指南

    C:\ti\motorware\motorware_1_01_00_18\docs\labs

    用户指南可在 InstaSPIN-FOC 和 InstaSPIN-MOTION 用户指南(修订版 H)中找到、链接如下。

    http://www.ti.com/lit/ug/spruhj1h/spruhj1h.pdf

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

    Yanming、您好!

    非常感谢您的反馈。

    我执行了实验5b、5c、5d、5e、6a、 6b、6c、6d、同时返回。

    需要注意的一点是、当我进行这些实验时、我尚未连接 eQEP 传感器。

    我使用了实验示例建议的 FAST 和设置。

    在执行实验12A、12b、13a、13b 时、我开始集成位置传感器。   

    如果我已经完成了12A、12b、13a、13b、13b、您仍然建议使用传感器重新执行实验5d 吗?

    与实验12A、12b、13a、13b 与5d 相比、它有何不同?  

    调整 SpinTac 速度环路时、我认为只有一个参数调整。  

    您能否确认我的理解是否正确?

    此外、我想澄清一下我是否正确地扣合了 IQ。

    我在运行 CTRL_runOnLine_User 函数的 Park_run 函数后立即从 ctrlQEP.h 行2114中拍摄了一个快照

    内联空 CTRL_runOnLine_User (CTRL_Handle handle、const HAL_AdcData_t * pAdcData、HAL_PwmData_t * pPwmData、uint32_t 电角)

    (笑声)

    //运行帕克变换
    park_run (obj->parkHandle、CTRL_getIab_in_addr (handle)、CTRL_getIdq_in_addr (handle));

    IdData =_IQmpy (handle->Idq_in.value[0]、_IQ (USER_IQ_FULL_SCALE_CURRENT_A));
    IqData =_IQmpy (handle->Idq_in.value[1]、_IQ (USER_IQ_FULL_SCALE_CURRENT_A));

    (笑声)

    我在10kHz ISR 下持续捕获 IqData、但在 CAN 总线上仅以10Hz 间隔发送快照。

    您能否确认这是捕获 IqData 的正确位置?

    谢谢、

    Henry

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

    由于您使用的是 DRV8301-69M-kit、您是否有机会使用数据记录或 PWMDAC 监控 IQ 基准和反馈值?

    您可以参考 lab01b 或 lab01c 来使用数据记录或 PWMDAC。

    您可能会尝试使用负载运行电机、看看会发生什么情况。 IQ 反馈值将始终根据负载、速度和感应信号进行一些更改。

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

    您好、Yanming、

    感谢您的观看。  我以前试过这些、结果都很好。

    我甚至使用真实流量环路数据尝试了负载、控制算法保持良好的位置、旋转时、它随速度旋转良好、并对扭矩反应良好。

    在检查 IQ 数据后、我认为我们只需执行快速滤波器(移动平均值)、我们可以看到、当转矩为恒定时、它是非常线性的。

    非常感谢您的帮助。

    我对 InstaSPIN 还有另一个问题、但可能会在另一个线程上发帖、以便我们可以关闭此线程。

    谢谢、

    Henry