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.

[参考译文] CCS/TMDSHVMTRPFCKIT:TMDSHVMTRPFCKIT

Guru**** 2589275 points
Other Parts Discussed in Thread: TMS320F28069M, C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/757609/ccs-tmdshvmtrpfckit-tmdshvmtrpfckit

器件型号:TMDSHVMTRPFCKIT
主题中讨论的其他器件:TMS320F28069MC2000WARE

工具/软件:Code Composer Studio

您好!

我在撰写本文时谈到了使用编码器(AEAT-601B)测量电机转速的问题

增量磁性编码器)。 我正在使用 TMS320F28069M 从事 TMDSHVMTRPFCKIT 工作。 电路板上有 eQEP 模块读取编码器信号。 我已经完成了 GPIO、寄存器配置。 对于 UPEVENT 和 QCLK、我必须对 UPP 和 CPPS 进行少量缩放。 好的方面我正在通过编码器计算代码速度、如下所示:(速度=固定位置/上行事件之间的时间)等式、并且没有溢出。 但是、与我预期的相比、时间计数和速度计算更短。

 

我觉得这是关于时间问题的。 但不确定是什么?

 

可以麻烦你提出建议吗?

 

谢谢

此致

Tajrin

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    很抱歉、Tajrin、我不理解您的问题。 您是否正在尝试计算如何从编码器计算电机转速(RPM)?

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

    您好 Sean、

    感谢您的回复。 很抱歉耽误你的回答。 很抱歉、前面有简要说明。 否、我已计算转速、单位为 rpm。 我正在低速工作。 但我所期望的 是、它没有显示在输出中。 例如、我将运行电机1.5Hz、即75rpm。 但是、我始终得到大于75 rpm 的值、并且时间计数值始终低于我的预期。 我已通过手动计算预测速度的时间计数进行了检查。

    不确定哪里出错了?  

    谢谢  

    此致

    Tajrin

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

    您是否有机会在 C2000Ware 中尝试这些示例?

    C:\ti\c2000Ware_1_00_05_00\device_support\f2806x\examples\c28\eQEP_freqcal
    C:\ti\c2000Ware_1_00_05_00\device_support\f2806x\examples\c28\eQEP_pos_speed

    这些示例将是一个很好的起点、有助于缩小您在尝试自己设置 eQEP 驱动器时可能会看到的问题

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

    我在示例 C:\ti\c2000\C2000Ware_1_00_05_00\device_support\f2806x\examples\c28\eQEP_pos_speed 的帮助下开始了我的初始代码。 但不幸的是、我发现了几个问题:

    问题1:捕捉单元:始终有变速事件以实现恒定速度。 它会查找来自解码器的任何参数、以驱动向上事件发生变化。 它不遵循任何恒定速度的周期顺序。 无论发生何种情况、它都会针对可变速度进行更改。

    问题2:位置计数器闩锁:
    位置计数器锁存存在问题。 它始终由硬件本身复位、硬件本身由捕捉定时器操作。 因此、位置锁存计数器不是计算速度的可靠寄存器。

    问题3:编码器分辨率:对于正交模式、它预计4个边沿在计数、看起来好像它每转的预期脉冲计数的1/2。 它包含2个边沿/rev,它可以查看 QA 的上升边沿和 QB 的下降边沿。 就像一个示例

    编码器每转脉冲数(PPR)= 250
    正交模式的预期脉冲= 1000个脉冲
    在5Hz 时、每秒5转。
    在1Hz 时、预期脉冲= 1000个脉冲
    在5Hz 频率下、预期脉冲= 5x 1000 = 5000个脉冲
    在10个采样率下预计为500 ***。
    测量值= 250±30



    谢谢

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

    您好 Tajrin、

    您是否已经在 TRM 中引用了第7.5节"eQEP 边缘捕获单元"?

    http://www.ti.com/lit/spruh18

    UPEVENT 应取决于 QCAPCTL[UPPS]、预分频 QCLK。

    您能为我进一步解释问题2吗? 这意味着它始终由硬件复位?

    我认为您需要对 eQEP_pos_speed 示例中使用的 POSSPEED 结构进行一些更改。 有关默认使用的配置、请参阅 Example_posspeed.h 文件中的 POSSPEED_DEFAULTS 定义。

    您能否检查是否设置了2倍分辨率、寄存器位 QDECCTL.bit.XCR=0。 这可能是每转1/2个脉冲的原因。

    最棒的

    Kevin

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

    您是否能够解决您的问题? 我将继续并关闭该线程。

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

    我还没有解决这个问题。 是的、我遵循了增强型 QEP (eQEP)模块(SPRUH18)一章。 我已经根据 TI 在示例 eQEP_pos_speed 中提供的 xls 表检查了预分频。 我认为预分频是可以的、因为我没有发现任何溢出。 我在 prscaling 之前溢出。

    问题2:我不知道它看起来是复位的。

    我更改了一些用于寄存器初始化的内容。 例如、我已将 QEPCTL.bit PCRM 设置为01而不是00。

    我已经将寄存器的 QDECCTL.bit.XCR=0设置为正交计数模式。


    谢谢

    此致

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

    您看到什么 rpm? 1.5 Hz 应等于90 rpm。

    您能否共享更多的软件配置? 如果您基于 eQEP_pos_speed 示例并使用其中的函数/结构、则可以共享以下内容:

    1.共享 POSSPEED_Init (void)函数

    2.共享 POSSPEED 结构初始化

    您是否还在使用 QEP_posspeed.SpeedRPM_fr 或 QEP_posspeed.SpeedRPM_pr 进行测量?

    最棒的
    Kevin