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.

[参考译文] TMDSICE3359:Profibus 从属设备诊断数据

Guru**** 2540720 points
Other Parts Discussed in Thread: PROFIBUS, TMDSICE3359, SYSBIOS, PRU-ICSS-INDUSTRIAL-SW, AM5728, AM3359

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/599797/tmdsice3359-profibus-slave-diagnostic-data

器件型号:TMDSICE3359
主题中讨论的其他器件:ProfibusSYSBIOSPRU-ICSS-INDUSTRIAL-SWSYSBIOSSDK-IND-SitaraAM5728AM3359

您好!
我正在使用 EVM TMDSICE3359。 我使用一个 EVM 作为 Profibus 主设备 、使用另一个 EVM 作为 Profibus 从设备。
当我从 Profibus 从设备获得重要数据(在主设备中输入命令"getdiag")时,
我无法将接收到的数据与来自 Profibus 标准的诊断说明相关联。

1) 1)我将主机配置为轮询地址为3、7、4、6的4个器件。
当我启动命令"getdiag"时、Get 诊断请求会发送到每个器件。 我得到以下响应:


收到 的地址具有重要地位的数据  
3.       80 14 0A <<不存在
7.       80 14 0A DA 0C 00 <<真正存在的唯一一个
4.       80 14 0A DA <<不存在
6.       80 14 0A DA 0C 00 <<不存在

尽管如此、我还是得到了对每个器件的成功响应。  即使它不存在也是如此。

2)关于地址为7的器件的重要数据
0   1  2   3   4   5   6   <<<偏移
80  14 0A DA  0C 00  <  <<值
ST1 ST2 st3 addr ID5  ID6      <<<语义


收到的数据与 Profibus 贵宾模板不对应。
在字节 STATUS3 (偏移2,值= 0A)中,6个低位必须设置为0
这里的一些设置为1。

EVM 的标识符为0CDA、因此值为 DA 0C 的字节对应于标识符、
但标识符必须位于偏移4和5、但在这里它位于 偏移3和4。

我无法理解是什么问题。

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

    您在这两块电路板上运行的是什么软件? 哪个版本?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    CCS 7.1 SYSBIOS_IND_SDK_02.01.03.02 XDCtools 3.31.2.38_CORE SYS/BIOS 6.42.2.2.29 - Profibus 主站
    CCS 7.1 SYSBIOS_IND_SDK_02.01.03.02 XDCtools 3.31.2.38_CORE SYS/BIOS 6.41.4.54 - Profibus 从属设备
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢。 我已通知软件团队。 他们将在这里作出回应。

    请注意以下事项:

    TI 正在将对 AM335x 和 AM437x 的所有协议的支持转移到 PRU-ICSS-INDUSTRIAL-SW、以便为当前和未来器件上的工业软件交付提供单一模型。 PRU-ICSS-INDUSTRIAL-SW 已用于 AM57x 器件。

    AM335x 和 AM437x 工业协议支持已开始从 SYSBIOSSDK-IND-Sitara (IND SDK 2.x)迁移到 PRU-ICSS-INDUSTRIAL-SW。

    到2017年6月底、PRU-ICSS-INDUSTRIAL-SW 将支持 AM335x 和 AM437x 的所有当前协议。

    TI 于2017年3月31日停止提供和支持 SYSBIOSSDK-IND-AM335x、2017年6月30日之后不再提供或支持 SYSBIOSSDK-IND-Sitara。

    如果您有兴趣在这些日期之后接收这些 SDK 的维护版本和技术支持、请联系 IndSDKSupport@list.ti.com 或您的 TI 代表。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢你
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    更有趣。

    如果我设置8个地址(2、3、4、5、6、 7、8、9)
    然后,为了响应 getdiag,我得到以下信息:
    Slave-Diag 数据(2):80 14
    从诊断数据(3):80 14 0A
    Slave-Diag 数据(4):80 14 0A DA
    Slave-Diag 数据(5):80 14 0A DA 0C
    Slave-Diag 数据(6):80 14 0A DA 0C 00
    Slave-Diag 数据(7):80 14 0A DA 0C 00
    Slave-Diag 数据(8):80 14 0A DA 0C 00 00 00 00
    Slave-Diag 数据(9):80 14 0A DA 0C 00 00 00 00 00

    即诊断数据的长度等于器件地址。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Alexander、我将尝试一下。 同时、有一个问题、如果您使用的地址不是9、那么您的主从器件是否正常工作? 我的印象是、我们在 Profibus 从设备示例中使用了此地址硬代码。  您是否有 TMG Profibus 堆栈(完整版)

    谢谢、

    Paula

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

    你好 Paula。  是的、我尝试使用 旋转开关设置2和7。 结果是相同的。 数据交换工作正常。 诊断-如上所述。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    否、我没有 TMG Profibus 堆栈(完整版)。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Alexander、我使用 AM5728 IDK 作为 Profibus 主设备、并使用 AM3359 ICEv2作为从设备、在我的一侧进行了快速完整性检查。 结果看起来一致(附加的快照)。 我添加了两个从器件、但仅连接了"9")。 但是、我不会放弃它可能是一个错误。 想知道您是否可以联系 TMG、看看他们是否可以与您的 DPE 手册分享。 或其他文档、它们可以帮助您了解如何打印诊断程序。

    谢谢、

    Paula

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

    你好 Paula。
    感谢您的回答。
    在测试中、您向配置中添加了2个地址为3和9的器件。
    并获取诊断数据

    F0 e8 03 <<它用于地址3
    F0 e8 03 3c 02 00 03 00 <<它用于地址9

    事实上、您的结果与我的结果相同。

    1) 1)使能数据的长度等于器件地址

    根据标准、诊断数据必须具有6个或更多字节。
    因此、如果是器件3、诊断的长度可以是0或6。
    实际上、长度为3。 这是错误的。

    2) 2)诊断数据与 Profibus 标准不符。
    Stadnard 表示诊断的强制部分具有以下格式:


    [ STATUS_1、STATUS_2、STATUS_3、ADR、Ident_H、 识别号 L ]

    分析6中的每个字节会太冗长。
    那么、让我们以第一个字节为例:

    STATUS_1
    bit_0 -基站不存在
    bit_1 -工作站未就绪
    bit_2 -配置故障
    bit_3 -遵循扩展诊断(长度大于6)
    bit_4 -从器件不支持请求的函数
    bit_5 -无效的从器件响应。 该位始终由从器件设置为零。 在这里、主器件会注意到从器件提供了无效的响应。
    bit_6 -参数电报中存在故障
    bit_7 -从器件已被另一个主器件锁定

    对于两个器件(3和9),我们得到与 STATUS_1字节相同的值0xF0
    这意味着不能同时使用两个电台:
    -确实存在
    -准备就绪
    -没有配置故障
    -没有扩展诊断程序
    -已请求某些不受支持的功能
    -具有无效的从器件响应
    -参数电报中存在故障
    -被另一个主器件锁定

    我可以分析字节2..6、结果将相同。 根据 PROFIBUS 标准、显示的诊断数据是一个完整的垃圾。
    它有问题。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Alexander、感谢您的详细解释、我将提交一份报告错误的 JIRA、并附上您的观察结果。
    谢谢、
    Paula