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

https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/1516124/drv8889-q1-stall-detection-with-variable-step-pulse-frequency-acceleration-deceleration

器件型号:DRV8889-Q1

工具/软件:

您好:

我们使用 DRV8889AQWRGERQ1驱动步进电机、并对失速检测有一些问题。

我们之前通过将  EN_STL 位设置为1并将 STALL_TH 设置为31、成功地测试了失速检测功能。 在恒定速度(STEP 引脚脉冲为10kHz)并且 TRQ_DAC 设置了 1101b (31.25%电流)(对应于120mA 的最大电流负载)的情况下、失速检测似乎可以正常工作、没有任何问题。 (衰减模式设置为默认的智能调优纹波控制)

现在、我们通过向步进电机运动添加加速和减速相位来更改实现方式。 因此、在运动开始和结束时(假设每个脉冲大约为10%)、STEP 引脚脉冲的频率在2、4、6、8和10 kHz 之间变化、引脚的 PWM 输出没有任何中断。

驾驶员是否能够支持这种情况?
 
"如果是,到底是什么?  
直到现在、我们才设法使其正常工作。
我们在修改频率时尝试了修改 STALL_TH、但更改不会生效。 我们假设这是因为使用了失速算法;您能否确认这一点?
我们尝试启用 STL_LRN、但这也失败。
我们还尝试了 TRQ_DAC 和 STALL_TH 的几种组合、但运气不好。

——如果不能、你如何改变这种情况使它大致相同、但让失速检测工作?  

提前感谢您!
Monica

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

    嗨、Monica、  

    感谢您与我们联系。  

    [引述 userid="655217" url="~/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/1516124/drv8889-q1-stall-detection-with-variable-step-pulse-frequency-acceleration-deceleration

    现在、我们通过向步进电机运动添加加速和减速相位来更改实现方式。 因此、在运动开始和结束时(假设每个脉冲大约为10%)、STEP 引脚脉冲的频率在2、4、6、8和10 kHz 之间变化、引脚的 PWM 输出没有任何中断。

    驾驶员是否能够支持这种情况?

    [/报价]

    您能告诉我电机在哪个阶段失速吗?

    您要手动设置 STALL_TH 还是使用失速学习阈值算法。  

    如 使用 DRV8889-Q1 P:10进行无传感器失速检测中所述、"如果运行条件发生很大变化、例如电机转速在高低值之间变化、则可能无法针对所有条件设置单个失速阈值。 在这种情况下、控制器可以实现失速阈值查找表。 有时、可能需要具有足够高时间常数的外部低通滤波器、以便消除扭矩计数中在电机失速时因振动而产生的纹波"

    因此、根据上述信息、应过滤扭矩计数以使其更加平滑。  

    更改失速阈值的方法、您是使用 GUI 还是您自己的平台?

    请分享扭矩计数值和失速阈值的 SCOP 捕获结果。

    另外、请告诉我您如何使电机失速。

    此致、  

    Mojtaba.

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

    您好、Afshar、

    您能告诉我电机在哪个阶段停转吗?

    它可以在运动的任何阶段,但在大多数情况下,它实际上是当它处于最大速度。

    您要手动设置 STALL_TH 还是使用失速学习阈值算法。  [/报价]

    我们将手动设置 STALL_TH。
    即使在我们更改实现之前(只有恒定速度)、失速学习阈值算法也不起作用。  

    要更改 stall-threshold、您使用的是 GUI、还是您拥有自己的平台?

    我们将在运行时通过在 SPI 寄存器中写入新值来更改 STALL_TH。 但如前所述、这没有生效。 我目前对此没有把握。

    请分享扭矩计数值和失速阈值的 SCOP 捕获结果。

    e2e.ti.com/.../variable_5F00_speed_5F00_stall_5F00_not_5F00_working.csve2e.ti.com/.../constant_5F00_speed_5F00_stall_5F00_working.csv e2e.ti.com/.../constant_5F00_speed_5F00_stall_5F00_working.zipe2e.ti.com/.../variable_5F00_speed_5F00_stall_5F00_not_5F00_working.zip

    另外、请告诉我您是如何停止电机的。

    我们将其向轴端移动、或在移动电机前添加障碍物(如手指)、以使其停止。

    此致、
    Monica

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

    您好、Monica、  

    感谢您提供最新信息。 DRV8889失速检测在变速下不起作用。 这是为了避免在电机加速时错误报告失速、  

    可以使用外部 MCU 进行失速检测。 为此、 MCU 将根据需要对 CTRL7寄存器进行采样、并在 MCU 本身中执行失速检测。  STEL_REP 应设为0、并将失速阈值设为0、以避免内部失速检测。  

    如果您有任何其他问题、敬请告知。

    此致、  

    Mojtaba.

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

    你好 Mojtaba,

    我现在没有其他问题了。

    此致、
    Monica

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

    您好、Monica、  

    当然! 如果您还有其他问题、敬请告知。  

    此致、  

    Mojtaba.