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.

[参考译文] TMS320F280025C:如何配置没有索引信号的编码器?

Guru**** 2394305 points
Other Parts Discussed in Thread: TMS320F280025C, MOTORWARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1269095/tms320f280025c-how-to-configure-an-encoder-without-index-signal

器件型号:TMS320F280025C
主题中讨论的其他器件: MOTORWARE

大家好、我使用的是 TMS320F280025C 开发板。 我在通用实验室中启用了 ENC 宏。 我的电机本身具有 ABZ 信号。 使用通用实验室附带的 ENC 编码器库、我可以驱动电机并进入闭环。 现在、我们的要求是不使用电机的索引信号。 我浏览了通用实验室的编码器配置代码、似乎不直接支持没有索引的编码器。 因此,我有以下问题:

1.编码器配置代码的参考是否适用于不带索引的025C?

带索引信号的编码器的初始校准与不带索引信号的编码器的初始校准是否不同? 相比之下、没有索引的编码器在初始校准期间是否需要正向旋转和反向旋转? 校准所需的时间是否比索引式编码器校准更长?

3.是否有没有索引编码器的校准参考? 请提供。

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

    尊敬的 Luo:

    您能详细说明为什么需要不使用索引信号吗?

    Unknown 说:
    编码器配置代码是否有参考适用于无索引的025C?

    要使用没有索引的编码器、只需将 eQEP 位置计数器模块最大值配置为等于编码器上的陷波数量乘以 QEP 信号的分辨率、并将 eQEP 配置为在最大位置复位即可。 我们没有这方面的参考代码。

    Unknown 说:
    具有索引信号的编码器的初始校准是否与没有索引信号的编码器的初始校准不同? 相比之下、没有索引的编码器在初始校准期间是否需要正向旋转和反向旋转? 校准所用时间是否比索引编码器校准时间长?

    是的、通常当您有索引信号时、您可以将 eQEP 配置为锁存到第一个索引脉冲、在这种情况下、您已将编码器同步到 eQEP 模块、而编码器的位置表示到这个零点位置的偏差。 但是、如果没有索引脉冲、除了它首次开始旋转的编码器位置之外、没有任何其他可以参考的位置(这意味着它不需要任何正向或反向旋转来进行任何校准)。 但是、只要没有机械打滑、编码器的位置应该保持准确。  

    [quote userid="402201" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1269095/tms320f280025c-how-to-configure-an-encoder-without-index-signal 是否有没有索引编码器的校准参考? 请提供。

    没有参考

    此致、

    彼得

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

    是否有类似于025C 的 SpinTAC 位置转换器的东西? 我在一般的实验室没有找到它、我需要通过 enc 知道该位置

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

    尊敬的 Luo:

    关于这个问题、请允许我咨询我团队中的另一位专家、查看我们是否已在更新的器件中整合了类似的内容

    此致、

    彼得

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

    我很久没有收到您的回复了

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

    尊敬的 Luo:  

    我得以与我们的另一位专家讨论这一问题。 由于 SpinTAC 并非 TI 所有、因此 SpinTAC 软件未移植到025C 器件或我们当前的任何一代产品系列。 这种功能仅适用于我们的较旧器件。

    作为替代方案、最新的电机控制 SDK 配备了可执行类似功能的 InstaSpin FOC。 我建议您查看通用电机控制项目、该项目包含有关此方面的很多信息、

    此致、

    彼得

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

    使用 SpinTAC 的目的是为了获得位置信息。 之前、我可以通过 SpinTAC 组件调用 Pos_mrev 乘以周长、然后添加当前编码器位置、以便轻松获取电机的当前位置。 现在,在一般的实验室里,我没有找到一个类似的函数,我只能在中断中检查 eQEP 模块中的上溢和下溢标志,记录匝数的加减, 然后、通过将圆周乘以并加上当前的电机位置来计算最终位置。

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

    尊敬的 Luo:

    感谢您提供这些信息。 是的、我认为在当前版本的电机控制实验中、它是可作为软件的一部分使用的。 在 F280025C 或之后的器件上、我们不支持 SpinTAC 软件或 InstaSpin Motion、但您似乎还对实验室本身有更多疑问、请允许我为其他专家推荐

    此致、

    彼得

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

    尊敬的 Luo:

    我认为、较旧的 MotorWare 示例解决方案在没有 QEP Index 脉冲的情况下工作、类似于 Peter 描述的在 MAX 位置计数复位而不是使用 Index 脉冲作为参考起始点的情况。 但是、这些都适用于较旧的 Gen C2000器件。

    如果您愿意、也可以将通用电机控制实验修改为不使用索引脉冲。 您需要在"ENCODER.h"文件中重写 ENC_RUN()函数例程的某些部分。

    此致!

    凯文

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

    是的、我在 QEP 初始化中执行了手动对齐。 α、当系统上电时、电流将注入 D 轴、使 Δ I 轴与 D 轴重合。 然后、在它静止一段时间后、它将用作0点来控制电机向前旋转。 半圈并反转半圈、然后检查编码器中读取的位置是否为开始正向旋转时的读数。 如果是、则表示校准成功。 我已使用该方法成功进入速度闭环控制。

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

    尊敬的 Luo:

    您可以使用该方法进行校准。 如果没有索引脉冲、您可能需要考虑在运行时计数停止时偶尔重新校准。

    此致!

    凯文

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

    您好、我想问一下如何在操作期间校准编码器而不使用索引信号?

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

    尊敬的 Luo:

    您的意思是不重新运行您在之前的帖子中开发的手动校准例程? 您希望能够在运行时重新校准?

    此致!

    凯文

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

    我仍然使用手动校准、但我觉得运行一段时间后会有轻微偏差。 我希望在运行时强制进行校准。 我可以通过设置计数器溢出标志来强制当前位置返回到0吗?

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

    尊敬的 Luo:

    我想在运行时强制校准。 我可以通过设置计数器溢出标志来强制当前位置返回到0吗?

    上述 α 是指仅仅将 QPOSCNT 值复位为零、还是实际上将电机移回到建立的"零"位置(在这里 Δ R 轴与 D 轴一致)

    我之前应该问过一个问题、您只需要对电机执行速度控制、还是您的应用也需要位置控制?

    此致!

    凯文

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

    我的电机的 PWM 中断频率是20kHz、我将在该频率下处理 ENC 相关问题、因此我可以查询是否将上溢或下溢标志设置为20kHz 的频率、当发生上溢时、我将在此时将 ENC 角度强制设置为0、 foc 角度也强制为0。 你认为这是可行的吗?

    我最终需要电流环路控制来使用电机模拟哑铃等健身产品。

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

    尊敬的 Luo:

    发生溢出时,我将在此时将 ENC 角度强制为0,foc 角度也强制为0。 您认为这是可行的吗?

    我认为这种方法可行、但您可能只需要考虑 QEP QPOSCNT 在上溢/下溢条件和迫使角度为零的 ISR 代码之间是否进行计数。 即、它们之间是否存在任何偏移?

    你的产品是健身哑铃、我认为电机转速将保持相当低。 是这样吗?

    此致!

    凯文

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我认为该方法可行,但您可能只需要考虑 QEP QPOSCNT 是否在上溢/下溢条件和您强制将角度设置为零的 ISR 代码之间进行计数。 即是否存在这些之间的任何偏移?

    我尚未测试这种强制校准方法、但我认为当没有 Z 信号时、这是最好的方法。

    [报价 userid="315587" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1269095/tms320f280025c-how-to-configure-an-encoder-without-index-signal/4899561 #4899561"]您的产品是健身哑铃、我认为电机转速将保持相当低。 是这样吗?

    是的、速度不是太高

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

    尊敬的 Luo:

    时间有点长了。

    您对此主题还有其他待解决的问题吗? 您是否能够使用位置传感器和 eQEP 模块测试力校准方法?

    此致!

    凯文