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.

[参考译文] TMS320F28388D:QEP 计数器在相位错误时发生变化

Guru**** 2515065 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1558897/tms320f28388d-qep-counter-change-upon-phase-error

器件型号:TMS320F28388D


工具/软件:

尊敬的专家:

我的客户在 QEP 接口上观察到共模干扰、如下所示:

红色帧标记将导致相位错误的干扰

TRM 说

相位误差标志 (PHE) 位于 QFLG 寄存器中、而 QPOSCNT 值可能不正确并偏移 1 或 3 的倍数

在这种情况下、QPOSCNT 的值不再正确、并且随着干扰多次发生、误差将累积。 因此、客户希望补偿由相位误差引起的 QPOSCNT 误差。  

是否有方法可以了解 发生相位错误时 QPOSCNT 的确切变化? 客户正在尝试补偿下一个周期中由相位误差引起的意外变化。

如果没有、是否有办法使 QEP 忽略此类干扰并进行计数? (系统已耗尽 CLB 块)

此致、

挂起

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

    您好 Hang、

    感谢您对延迟响应的联系和道歉。

    您能否提供有关示波器截图中信号的更多详细信息?

    下方图像是否只是上方图像的放大视图?

    您能否确认这些 eQEP 引脚的 GPIO 配置?

    在将信号馈送到 eQEP 模块之前、您是否尝试了 3/6 样本同步?

    您提到系统中没有剩余的 CLB 块、您是否在其他设计中使用 CLB 来解决此问题? 如果是、该解决方案是什么样的?

    此致、

    Zackary Fleenor

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

    尊敬的 Fleenor:

    您能否提供有关作用域中信号的更多详细信息?

    绿色和紫色分别为 QEP-A 和 QEP-B、您可以忽略其余的内容。 可以看到、这两个信号上存在共模干扰。

    下部图像是否只是上方图像的放大视图?

    是的。

    您能否确认这些 eQEP 引脚的 GPIO 配置?

    我假设相关配置是 3/6 样本同步。 客户已尝试所有 3/6  同步、问题相同。

    您是否在其他设计中使用 CLB 来解决此问题? 如果是、该解决方案是什么样子的?

    以前的 CLB 用于绝对编码器接口。 后来、他们设法从绝对编码器接口释放了 4 个逻辑块以处理此 QEP 问题。

    目前、我们计划使用 CLB 上的 QEP 解决方案。 这样、QEP 计数器不会在相位误差时意外改变、并将根据相位误差的时间由软件补偿计数误差。  

    回到原始问题。  是否有方法可以了解 发生相位错误时 QPOSCNT 的确切变化?  请注意、我们将使用 CLB 的唯一原因是 CLB(或 CLB 计数器)的“QPOSCNT"不“不会预期变化。 如果原始 QEP 模块能够实现相同的效果、则会使系统更简单。

    此致、

    挂起

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

    尊敬的 Hang:

    感谢您提供有关使用 CLB 解决方案的实施计划的详细信息。

    关于您有关在相位错误期间跟踪 QPOSCNT 变化的问题 — 遗憾的是,QEP 模块中没有一种直接的机制来在发生相位错误时捕获或向 QPOSCNT 报告确切的变化。 这是外设的硬件限制、因为它的设计满足 A/B 信号不应同时转换的基本要求。

    虽然您之前实现的 CLB 解决方案是一种可行的权变措施、但我知道您有兴趣将原始 QEP 模块用于更简单的系统。 但是、如果相位误差期间的精确位置跟踪对于您的应用至关重要、我建议您继续使用已计划的 CLB 实现方案。 这将使您能够更好地预测行为、并能够像您所描述的那样通过软件补偿计数错误。

    一种建议是改善硬件中 eQEP 信号的信号隔离和信号完整性、以防止发生此类干扰。

    如果您想探索其他潜在的解决方案、或对 QEP 或 CLB 实现有其他问题、请随时提问。

    此致、
    Zackary Fleenor