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.

[参考译文] AM6442:Profinet:Out of AR Resources Error

Guru**** 2587345 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1564077/am6442-profinet-out-of-ar-resources-error

器件型号:AM6442


工具/软件:

您好:

我已经观察到 Wireshark 日志中的“Out of AR Resources“错误、并想知道为什么会发生这种情况。

下面是背景。 我使用 12 个子模块、包括 DAP、IF 和端口 1、端口 2。

在全新的应用程序闪存之后、模块/子模块被插入并与 Siemens PLC 建立连接、甚至开始循环通信。

但是、当我尝试在 TIA 门户中在线时、问题就开始了。 突然我得到了以下输出。

AR 已断开连接! (AR = 1、会话密钥= 4097、原因= 11)
CONNECT_IND:AR = 1、AR 类型= 1、发送时钟因子= 32、降低比率 (IN)= 2、降低比率 (OUT)= 2、会话密钥= 5121、主机 IP = 192.168.0.1
错误 (error_fatal):IO 设备已停止
AR 已断开连接! (AR = 1、会话密钥= 5121、原因= 16)

此后、即使重新启动 AM64x EVM 电路板、我也会继续 在 Wireshark 中利用 AR 资源获得相同的资源。

我正在使用 SDK 中的 Profinet 示例应用、只需进行极少的修改。 使用的 PLC:ET200SP

附加的 Wireshark 日志。

如果您需要更多详细信息、请告诉我。

.e2e.ti.com/.../OutOfARResources_5F00_Log.zip


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

    您好 Upendar、  

    Wireshark 显示 PLC 正在尝试读取 I&M0 并且没有响应。 然后、AR 被 PLC 中止 中止不是 100%干净。 来自 PLC 的警报确认缺失 我假设 AR 保持占用状态、无法重新连接。  

    您的最小修改是否与记录或 I&M 数据有关?  

    您是否还可以通过 PRONETA 进行验证? PRONETA 也在读取 I&M 数据。 您是否在 Wireshark 上看到响应?

    阻止的 AR 是后续错误。 我们还将检查是否缺少一些超时/清理。  

    此致

    Christof

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

    您好 Christof、

    是的。 它与 IM0 数据相关。 栈是否会调用任何回调来获取此数据? 我已在启动阶段加载 IM0。 您还可以向我指出 Wireshark 日志中记录的是这个内容吗? 时间戳对我的调试很有帮助。

    我还将与 PRONETA 进行测试。

    谢谢你。

    此致、
    Upendar

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

    您好 Christof、

    在调试过程中、我观察到了一些问题。

    1.只有在 TIA 门户中打开在线模式时才会出现问题。  
    2.如您所述,IO 设备对读取记录请求没有响应。 这些读取记录请求是在 TIA Portal 中切换到在线模式时发出的。
    3.在函数 PN_APP_IOD_recordRead 处设置的断点没有命中。
    4.从 TIA 门户创建的读取请求数据长度为 32KB。 但堆栈将最大记录数据长度配置为 8KB。  如果考虑将该值 PN_API_IOD_MAX_RECOV_LEN 增加到 32KB、则可以解决该问题。 但事实并非如此。  

    5.我还测试了 PRONETA。 没有类似的问题。 IM0 数据请求得到了成功响应。

    我将附加一个新的 Wireshark 日志。 请进行分析并提供一些意见。

    谢谢你。

    此致、
    Upendar Sama.

    e2e.ti.com/.../RPC_5F00_READ_5F00_Error_5F00_While_5F00_TIA_5F00_OnlineMode.zip

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

    尊敬的 Upendar:

    您是否可以尝试相同的测试、但可以尝试读取数据长度更小 (8KB) 或更小的记录、并告知我们问题是否仍然存在?

    谢谢!

    此致

    Assila.

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

    尊敬的 Assila:

    我没有明确阅读记录。 当我切换到在线模式时、TIA Portal 会自动读取记录。

    我的 PLC 项目没有错误块、这可能是 PLC 重复发出连接请求的原因、进而导致资源不足错误。

    此外、除非 PLC 重新启动(下电上电)、否则 IO 器件将保持错误状态。 如果添加了下面屏幕截图中的块、则可以避免出现此错误状态。



    但原始问题仍然存在。 为什么 IO 设备没有响应记录读取请求、以及为什么器件会进入钝化状态?

    如果可能、请尝试在 plc 项目中重现此问题而不使用这些模块吗?  

    谢谢你。

    此致、
    Upendar

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

    尊敬的 Upendar:

    我检查了您分享的记录、下面是我的观察结果:

    -看起来你有一个自定义的模块/子模块配置。
    -对于所有配置的子插槽,我看到设备没有发送任何读取记录请求的响应,
     包括 Proneta 发送的读取隐式请求、这可能表明存在配置问题。  


    在默认模块/子模块列表中、我们最后看不到这样的问题。

    1-是否使用默认配置运行了相同的测试? 您是否看到相同的问题?

    2-您能否在器件启动时检查每个子模块的 IM0 数据列表? (调用“PN_APP_IOD_loadSubmodConfig"之后“之后)之后)

    3-您能否分享有关您在应用中所做更改(包括自定义子模块配置)的更多详细信息?

    此致、

    Assila.