PROFIBUS 的“自由第二层”协议通讯过程的实现

n

本文通过配置编程 实现一台314C-2DP和一台314C-2PtP通过CP342-5和CP343-5之间的自由第二层协议的通讯:
使用的软件版本为STEP 7 v5.5,硬件为S7-300的 314C-2PTP(v2.6)和314C-2DP(v2.6)以及CP342-5。n

1.硬件组态
首先根据系统的配置在STEP7中创建两个Project,在Hwconfig窗口中分别进行硬件组态:n

PROFIBUS 的“自由第二层”协议通讯过程的实现
图1 硬件组态n

插入CP342-5时,需要创建PROBUS Networked,并在Operating Mode标签页中选择No DP方式:n

PROFIBUS 的“自由第二层”协议通讯过程的实现
图2 网络设置n

PROFIBUS 的“自由第二层”协议通讯过程的实现
图3 模式设置n

2.网络组态
在两个Project中分别组态完成后,点击NetPro按钮,打开总线网络配置窗口:n

PROFIBUS 的“自由第二层”协议通讯过程的实现
图4 网络组态n

在网络配置窗口中,点击鼠标右键插入一个Coection:n

PROFIBUS 的“自由第二层”协议通讯过程的实现
图5 建新连接n

PROFIBUS 的“自由第二层”协议通讯过程的实现
图6 插入FDL连接n

选择Unspecified和FDL Coection链接模式后,点击Apply键弹出Coection属性窗口,注意该窗口中ID和LADDR参数对应的数值,要和后面编写的FC5和FC6所填写的值一致:n

PROFIBUS 的“自由第二层”协议通讯过程的实现
图7 参数信息n

在Addresses标签页中选中Free Layer2选项,并且记住PROFIBUS站址和LSAP值,这两个值要填写在发送数据的前两个字节当中:n

PROFIBUS 的“自由第二层”协议通讯过程的实现
图8 地址设置n

点击OK键,连接创建完成,并进行硬件的存盘,编译,下载,在进行二号站NetPro中自由第二层协议链接的创建:n

PROFIBUS 的“自由第二层”协议通讯过程的实现
图9 第二个站点组态n

3.软件编程
硬件组态和网络链接完成后,分别在两个Project中的两个站当中的OB1里插入AG_SEND(FC5)和AG_RECV (FC6)程序块:n

PROFIBUS 的“自由第二层”协议通讯过程的实现
图10 编写程序n

分别在两个站当中插入收发数据区DB1(Send_Data)和DB2(Receive_Data),并且在DB1的第一个字节当中填写对方的PROFIBUS地址,第二个字节当中填写对方的LSAP数值,第三,四字节空出不用,从第五个字节开始填写要发送的字节,并注意这里采用十六进制的表达方式,所以上面设定的18,应该是B#16#12:

PROFIBUS 的“自由第二层”协议通讯过程的实现
图11测试结果

在变量表中置位发送使能位M11.0:

PROFIBUS 的“自由第二层”协议通讯过程的实现
图12 变量监控

在线监视程序的运行情况如下:

PROFIBUS 的“自由第二层”协议通讯过程的实现
图13 程序监控

在二号站的DB2中我们可以得到所收到的数据:

PROFIBUS 的“自由第二层”协议通讯过程的实现
图14 数据监控

在下载配置的硬件组态时,您应当注意所有硬件的MPI、PROFIBUS地址不能一样,否则会出现下载、运行及通讯异常:

PROFIBUS 的“自由第二层”协议通讯过程的实现
图15 下载需要注意地址

关键词
DP主站,DP从站,PROFIBUS-DP

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc327678.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月5日 下午12:03
下一篇 2021年4月12日 上午12:00

相关推荐

发表回复

登录后才能评论