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.

[参考译文] AM2432:重新连接驱动器后、驱动器通过 Innovance H5U PLC 返回格式错误的数据包。 EtherCAT

Guru**** 2553260 points
Other Parts Discussed in Thread: AM2432

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1568268/am2432-drive-returns-malformed-packets-with-innovance-h5u-plc-after-reconnect-the-drive-ethercat

器件型号:AM2432


工具/软件:

我们使用的是 ind_comms_sdk_am243x_09_01_00_03。

PLC 可以启用两个驱动器并旋转电机。

但是、当 AM2432 断开并重新连接时、PLC 会将所有驱动器视为离线

我们设置了测试、 连接如下。

框架文件已附加。  

e2e.ti.com/.../disconnect_5F00_recon_5F00_CD3E_5F00_all_5F00_capture.zip

当重新连接 AM2432 时、似乎返回了带有格式错误的软件包的 LRW 命令。

但是、当 PLC 设置为停止并再次运行时、可以恢复连接。

e2e.ti.com/.../Halt_5F00_Resume_5F00_H5u_5F00_all_5F00_capture.zip

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

    您好、

    您能否提供上述环境中使用的 EtherCAT 固件版本? 如果您使用的是较旧版本、是否可以尝试使用 工业通信 SDK AM243X 11.00.00.13 中的固件

    此外、当发生问题时、请提供完整的 ICSS 存储器转储(对于 ICSSG0、请提供 0x30000000 至 0x30040000)、以检查配置。

    此致、
    Aaron

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

    我们使用的是 ind_comms_sdk_am243x_09_01_00_03。 将整个项目迁移到 11.0.0.13 速度不会很快。 我将检查如何转储存储器

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

    您好、

    您不必迁移到最新的 SDK。 您可以从 ind_comms_sdk_am243x_11_00_00_13\source\industrial_comms\EtherCAT_slave\ICSS_fwhal\firmware\g_v1.3\中挑选固件头、并将其粘贴到工程中的相应路径。

    完成此更新后、重新构建 FWHAL 库。   有关升级 EtherCAT 固件步骤的更多详细信息、请参阅 EtherCAT 固件迁移指南。

    此致、
    Aaron

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

    PRU 更新为 11.0.0.13。 问题仍然存在。

    驱动器正常工作时的转储。

    e2e.ti.com/.../PRU-dump_5F00_OK.dat

    出现格式错误的数据包时转储。

    e2e.ti.com/.../PRU-dump_5F00_malform.dat

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

    我注意到 TPDO 和 RPDO 的 FMMU 没有重叠。 这是否与原因有关?

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

    您好、建宇:

    是的、我怀疑固件没有针对非交错式 LRW 访问动态增加 TX_START_DELAY。 从日志中、我看到以下内容:

    这点 TX_START_DELAY 不会递增、以补偿非交错式 LRW 访问。

    作为权变措施、请在{SDK_INSTALL_DIR}\source\industrial_comms\EtherCAT_slave\ICSS_fwhal\teescbsp.h 中启用以下宏:  

    /*Single datagram accessing contiguous multiple FMMU mapped areas in  a single subdevice for process data
    is supported now by TI ESC firmware.
    Process path latency in TI ESC is high when this support is active
    For specific use cases (4SM with 3 FMMUs or multiple FMMUs (in a given ESC) are not accessed in a single datagram)
    process path latency improvement can be achieved by disabling below define */
    #define ENABLE_MULTIPLE_SM_ACCESS_IN_SINGLE_DATAGRAM     1

    重建 FWHAL 并重新构建应用程序以使更改生效。

    此致、
    Aaron

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

    e2e.ti.com/.../PRU-dump_5F00_malform2.dat

    仍有格式错误的数据包

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

    您好、

    仍然存在格式错误的数据包

    我没有看到根据上述转储中的读数新值 (0x98) 生效:

    确保在重新构建应用之前已重建库。

    此外、您还可以确保  TIESC_PORT0_TX_DELAY_200_MHz_clock 在其他器件中也设置为 0x98。

    #if ENABLE_MULTIPLE_SM_ACCESS_IN_SINGLE_DATAGRAM
    /*  
    *    0x98 corresponds to MII port - MII port delay of 760ns
    *    0x48 corresponds to MII port - MII port delay of 360ns
    *    0x38 corresponds to MII port - MII port delay of 280ns
    */
    
    #define TIESC_PORT0_TX_DELAY_200_MHZ_CLOCK    0x98
    #else
    #define TIESC_PORT0_TX_DELAY_200_MHZ_CLOCK    0x98
    #endif
    #define TIESC_PORT1_TX_DELAY_200_MHZ_CLOCK    0x48

    此致、
    Aaron

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

    格式错误的软件包已消失。 所以我需要使用它作为解决方案吗?

    此外、您还可以确定  TIESC_PORT0_TX_DELAY_200_MHz_clock 在其他器件中也设置为 0x98
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是的、您可以使用该解决方案。 在以下情况下、TX_START_DELAY 的增加至关重要:

    1. 使用来自单个子设备的 LRD/LWR 命令访问多个 FMMU 映射区域的单个数据报。
    2. LRW 访问多个子器件的非交错输入和输出过程数据。

    我们已实施一个逻辑、根据 MDevice 设置的 FMMU 配置动态增加 EtherCAT 固件中的 tx_start_delay。 由于未知原因、动态增加逻辑被绕过、因此您的环境中的延迟不会增加。 我们将使用您之前通过 H5U 设置的 FMMU 配置共享的日志、进一步调查这一点。

    此致、
    Aaron