0


PROFIBUS DP的非周期数据通讯

之前的文章中我们介绍了 PROFIBUS DP 的版本,从 DP-V1 版本开始增加了非周期数据的访问,使其能完成过程控制中一些非实时性的数据交换。

今天我们从报文上来看一下 1 类 DP 主站与 DP 从站的非周期参数数据的读写过程。


DP 系统各站之间的关系

首先我们先看一下 DP 系统中各个站之间存在的关系:

这些主站和从站设备(Master-Slave:MS)的关系有不同的任务和属性:

周期数据传输:
MS0 = 1 类 DP 主站与 DP 从站之间的周期数据交换,使用 DP-V0 协议

非周期数据传输:
MS1 = 1 类 DP 主站与 DP 从站之间的非周期数据交换,使用 DP-V1 协议
MS2 = 2 类 DP 主站与 DP 从站之间的非周期数据交换,使用 DP-V1 协议

主站间数据传输:
MM = 2 类 DP 主站与 1 类 DP 主站间数据交换


非循环数据交换功能

非循环数据交换是一种并行、优先级较低的数据传输方式,用于网络参数的设置、诊断和报警处理。非循环数据交换可以在主站与从站之间进行。主站在获得总线控制权令牌后,先执行优先级高的循环数据交互,然后再执行优先级低的非循环数据交换。由于非周期指令的加入,总线的循环时间也会相对增加。

一类 DP 主站可以通过非循环数据交换方式读/写从站的数据块,主站还可以进行从站的参数设置;主站向从站非循环地写指定数据,如果需要也可以在同一周期内执行数据传输操作。


报文帧格式

然后我们看一下 DP-V1 报文帧格式

DPV1 的帧结构使用 SD2 报文,DSAP 和 SSAP 是 51(0x33),表示 MS1 通讯去读/写从站数据,数据域 DU 的格式定义如下:

读请求(4 字节):

读响应:

写请求:

写响应(4 字节):

Slot 和 Index 表明数据块存放位置,Length 是要读/写的数据长度。


示例解析

接着我们借助一个 HMS 公司支持 PROFIBUS DP-V1 的网关产品作为 DP 从站设备和 PROFIBUS DP 主站仿真工具,来看一下 MS1 通讯时读写从站数据块的报文帧。

1

设置网关 DP 侧周期交互数据输入输出各 20 字节,非周期参数数据输入输出各 10 字节。

2

在 PROFIBUS DP 主站仿真工具中,首先建立 DP 主站与从站之间的周期通讯连接 MS0:

3

打开 MS1 通讯界面,设置 Slot 和 Index 都为 0,选择写指令,输入写入数据。

从报文中我们看到写指令分 2 个周期执行,在第一个周期 DP 主站将需要写入的数据发送给 DP 从站,从站在接收后返回一个确认应答,然后在下一个周期 DP 主站再次发送报文给从站来确认写入是否成功。

4

类似的,将操作改为读指令。

从报文中我们看到读指令也分 2 个周期执行,在第一个周期 DP 主站向从站发出读指令请求,从站收到后返回一个确认应答,在下一个周期 DP 主站发送报文给从站获取需要的数据。


联系我们

HMS 在全球主要国家拥有分支机构,在中国我们有专业的销售和服务团队。在北京和苏州办公室,我们拥有多名对工业网络协议和实施非常有经验的工程师,可以为广大工业用户提供更加完善的服务。

如果您需要了解 Anybus 网络诊断产品或面临任何网络问题,欢迎联系 HMS 中国获得全面的支持和帮助。

标签: 网络协议 安全

本文转载自: https://blog.csdn.net/Jessiewang93/article/details/140370170
版权归原作者 HMS工业网络 所有, 如有侵权,请联系我们删除。

“PROFIBUS DP的非周期数据通讯”的评论:

还没有评论