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.

[参考译文] DRV8889-Q1:询问失速学习算法

Guru**** 2439560 points
Other Parts Discussed in Thread: DRV8889-Q1

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

https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/1533490/drv8889-q1-enquiry-about-stall-learning-algorithm

器件型号:DRV8889-Q1

工具/软件:

大家好!

我尝试使用失速算法、使用的是 DRV8889-Q1 器件。 我将电机驱动至硬停止、并等待  STL_LRN_OK 位从 0 变为 1、但从未发生过。 我遵循了下面描述的步骤、但它似乎不起作用。 是否需要考虑一些测试条件、以便正确完成培训、或者需要进行其他的寄存器设置? 谢谢。

教育

说明来自此 站点。   

我认为要运行失速学习过程:

1.运行步进电机以达到目标速度并使输出电流仍 保持正弦波形

2.确保衰减模式是纹波控制衰减模式

3.启用失速学习:设置 STL_LRN =1

4.停止或阻挡电机

5.检查 STL_LRN_OK 位状态以确保学习成功。

6.检查 STALL_TH 寄存器以确保 STALL_TH 不是太低。

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

    尊敬的 Ed:

    感谢您在此论坛上发布您的问题。

    我正在尝试使用 DRV8889-Q1 器件的失速算法。 我将电机驱动至硬停止、并等待  STL_LRN_OK 位从 0 变为 1、但从未发生过。 我遵循了下面描述的步骤、但它似乎不起作用。 我是否需要考虑测试条件、以便正确完成培训、或需要进行其他寄存器设置?

    您遵循的步骤是正确的。 学习过程不成功可能还有其他原因。 为了成功学习、CTRL7 寄存器中的扭矩计数必须在电机以稳态速度运行时的值约为 40 至 150、在电机失速时的值小于 20。 本 应用手册中发布了该器件中的失速检测理论。  

    1. 步进速率 PPS 过低、导致步进速度和 BEMF 较低、以至于器件无法检测到失速的水平。 使用的步进 PPS 是什么以及使用的微步进模式?
    2. 使用的微步进模式不适合电机及其工作条件。 通常、1/8 或 1/16 步进模式是实现出色失速检测性能的甜点。
    3. 步进电机的直流电阻 DCR 高于 10Ω 。当电机正常运行时、DCR 较高的电机往往具有非常低的扭矩计数。 线圈电感过高也可能会限制失速检测性能。 请分享步进电机器件型号、数据表或 L-R 规格。  
    4. 存在阶跃到阶跃周期的变化。 如果步进到步进周期变化大于 2%、DRV8889-Q1 将阻止失速检测。 此内置功能可避免在步进电机加速或减速过程中出现错误的失速检测。 此问题的常见原因是步进脉冲不是在确定的周期内生成的。 好消息来源是微控制器的计时器 PWM 输出或与控制器中定义的周期性中断定时的高电平 — 低电平脉冲。 为了消除该问题、一个很好的测试是馈入具有固定频率方波输出的函数发生器发出的 STEP 脉冲。  
    5. 与电机线圈电流规格和/或 VM 电压低于 10V 相比、线圈电流被设置得过高或过低。使用的 VM 电压、VREF 电压输入和 TRQ_DAC CTRL1 设置是什么。
    6. 电源电压 VM 不足以在目标速度下克服 VBEMF(反电动势电压)、因此从未达到 ITRIP 电流。 这可能会在步进速率过快的 PPS 下发生。 若要检查是否不是该原因、一个好方法是在电机以稳态目标速度正常运行时使用电流探头捕获线圈电流波形。 请共享电流波形捕获结果以进行进一步分析。  

    谢谢你。

    此致、Murugavel