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.

[参考译文] LAUNCHXL-F28069M:为什么 ST-POSCONV 无法在低速范围内显示稳定且准确的速度信息?

Guru**** 2535360 points
Other Parts Discussed in Thread: MOTORWARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/602706/launchxl-f28069m-why-cannot-st-posconv-show-the-stable-and-exact-velocity-info-at-the-range-of-low-speed

器件型号:LAUNCHXL-F28069M
主题中讨论的其他器件:MOTORWARE

尊敬的 MotorWare 团队:

我在我的应用中使用 SpinTAC-Suite、发现一个旧的东西是:速度/速度信息、此信息由以下公式计算:

gMotorVars.SpeedQEP_KRPM =_IQmpy (STPOSCONV_getVelocityFileded (stObj->posConvHandle)、_IQ (ST_SPEED_KRPM per_pu)); 

位于 updateGlobalVariables()函数中的,当我将速度控制器的参考速度设置为低速(低于15到20RPM)时,始终返回不稳定的值。 尽管电机轴上的实际速度仍然精确且稳定。

在调试时、如何获得稳定且准确的速度信息以在绘图/图形窗口中报告它们?

此外、在我的项目中、需要将编码器 QEP 的当前位置发送到 PC 软件或更高级别的控制器以观察和验证此信息、但当我使用 HAL_getQepPosnCounts()函 数时、我只收到从0到(4*USER_MOTOR_ENCODER_LINES-1)的翻转位置值。 如何获取定义为位置与 初始位置(QPOSCNT = 0)的绝对位置信息。

提前感谢您的支持!

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

    Tran、

    您能澄清一下:

    [引用 user="Tran Binh Duong"]始终返回不稳定的值

    不稳定值是什么意思?  您所查看的信号是否可能存在混叠、并由于混叠而出现不稳定?

    您可以调整 SpinTAC 位置转换器的低通滤波器以使该信号平滑。

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

    尊敬的 Adam:

    感谢你的答复。 我使用的是 SpinTAC 位置转换器的默认设置、如 Project Lab13b 和 Lab13e。 我运行具有速度模式的 SpinTAC-Move、以实现以极低速度(低于5RPM)控制电机的功能。 我观察到:电机转轴上的实际速度很好(即使在0.1 RPM 时)、但是用于从 STPOSCONV_getVelocityFiled()函数获取速度信息的内部变量在调试不稳定时显示了观察窗口上的结果;它在低速时不断改变其值。 如果我将基准速度设置为高于50RPM、它将返回稳定的结果。

    如何根据您的建议调整 SpinTAC 位置转换器中使用的低通滤波器的截止频率以平缓该信号?

    尽快等待您的反馈。

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

    Tran Binh Duong 说:
    函数在调试不稳定时在"Watch"窗口中显示了结果[/quot]

    这表明您正在从观察窗口的缓慢采样率中获得混叠效应。  如果您在高频采样下查看此变量、则不会看到此问题。

    [引用 user="Tran Binh Duong"]如何根据您的建议调整 SpinTAC 位置转换器中使用的低通滤波器的截止频率以消除该信号?

    在 spintac_pos_conv.h 文件中查找函数:STPOSCONV_setLowPassFilterTime_tick

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

    谢谢 Adam、

    我将尝试按照您的指南操作、并尽快将结果通知您。

    此致、