恭喜,你发布的帖子
发布于 2022-12-02 22:58:49
13楼
看有人问这种问题就分享一下。
用RDREC指令可以读Profinet的很多信息。下面这个模块可以读取PN名称,MAC地址,IP地址,子网掩码、网关,然后把获得的这些信息拷贝进一个UDT里面。V14 SP1
下图是这些信息所在的Data Record(编号16#8080)的数据结构。我这是在自己弄的UDP可靠传输协议里面,需要封装每个以太网节点的信息。
RDREC可以读很多诊断信息,西门子提供了一个封装库便于使用。
Library for PROFINET data records
使用RDREC,关键是要知道信息所在的DataRecord的编号,和这个数据记录的详细数据结构。
要想知道诊断信息的完整全貌,以便自己任意定制诊断功能,要去Profinet官网下载,但是估计只有开发公司才会花这个大价钱吧。国标GB/T 25105也给出了详细说明,这个标准分为三个部分,第二部分是主要所在。
GB/T 25105.1-2014 PROFINET IO规范 第1部分:应用层服务定义;
GB/T 25105.2-2014 PROFINET IO规范 第2部分:应用层协议规范;
GB/T 25105.3-2014 PROFINET IO规范 第3部分:IO通信行规。
下面这个链接的西门子手册也给了说明和一些例子。
From PROFIBUS DP to PROFINET IO
这个INDEX参数一直很困惑,不知道这个编号和数据结构的详细内容如何查找,大佬能举个例子说明一下如何查找吗?比如说帖子里说的8080,或者读取MRP时的8050,举个例子说明一下如何查找的,上网也找了一下楼主的哪个国标规范,没怎么看明白.
请填写推广理由:
分享
只看
楼主