S7-200PLC之间进行Modbus通讯实验

更新时间:2023-06-06 02:36:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

简介S7-200PLC之间进行Modbus通讯设置及编程

1、硬件组态:S7-200PLC CPU 224XP、S7-200PLC CPU 226、维控触屏LEVI 777T、S7-200PLC之间通讯用RS485通讯电缆、S7-200PLC与维控触屏通讯用RS485通讯电缆、编程用USB/PPI电缆。主从站设定:CPU 224XP主站,CPU 226为从站。

2、通讯端口及设定:主站CPU 224XP PORT0用于Modbus通讯、PORT1用于连接编程电缆。从站CPU 226 PORT0用于Modbus通讯、PORT1用于连接维控触摸屏COM1(PPI协议)。各端子对应接线如下图。

3、实验内容:①主站读从站输入点信号、V存贮区变量;②主站控制从站输出点、写入从站整数变量及浮点数变量并在触摸屏(与从站相连)上显示;③从站读取主站发送数据并处理。

4、CPU226从站通讯初始化编程如下所示。从站地址规定为6,端口PORT0通讯波特率9600,无校验、无延迟,允许存取所有的I、Q(MaxIQ=128)、和AI(MaxAI=32)数值,保持寄存器的存贮空间为VB3000开始的1000个字

5、为从站程序块指定库存贮区,注意:程序中不可使用库存储区占用的地址。

6、在维控触屏中下载用于监控Modbus通讯结果的画面程序,如下图。其中包括从站本机

简介S7-200PLC之间进行Modbus通讯设置及编程

输入点I0.0~I0.7的状态、输出点Q0.0~Q0.7(受主上控制),以及从站Modbus通讯保持寄存器VB3000~VB3013内容、整数VW3000、浮点数VD3000和VD3008内容等。

7、准备好主站通讯程序。为主站程序块指定库存贮区,注意:程序中不可使用库存储区占用的地址。程序如下所示(上电初始化程序实际应用时要放在网络1),其中主站输入点I1.0用于触发数据传送,VB3000用于存贮读从站输入点数据,VB5000用于存贮要写入从站控制输出点的数据,VB6000用于存贮要写入从站V存贮区的数据,VB7000用于存贮由从站读取的V存贮区数据(用于验证写从站结果)。

简介S7-200PLC之间进行Modbus通讯设置及编程

S7-200PLC之间进行 Modbus通讯实验

页3共6

简介S7-200PLC之间进行Modbus通讯设置及编程

S7-200PLC之间进行 Modbus通讯实验

页4共6

简介S7-200PLC之间进行Modbus通讯设置及编程

S7-200PLC之间进行 Modbus通讯实验

页5共6

简介S7-200PLC之间进行Modbus通讯设置及编程

8、所有程序下载后,启动监控,主站I1.0触发数据传送流程。

9、监控读从站输入点保持寄存器VB3000=68,对应从站IB0输入=01000100(从站I0.2=I0.6=1,二进制转十进制算法)。

10、 监控主站输入点,控制从站输出功能:在主站I1.0触发数据传送流程,接通主站I0.2,约2秒后(延时)可观察到从站Q0.2输出灯亮并保持。断开主站I0.2,再次触发主站I1.0后,从站Q0.2输出灯灭。

11、 监控主站传送整数:在主站I1.0触发数据传送流程后,观察触摸屏上VB3000~VB3013的变化情况,以及VW3000数据变化情况,与主站传送的数据相符。

12、 监控主站传送浮点数:在主站I1.0触发数据传送流程后,观察触摸屏上VD3000、VD3008的变化情况,与主站传送的数据相符。S7-200PLC之间传送浮点数格式是一一对应的,所以不会出现高低位颠倒现象。

13、 注意事项:MBUS_MSG指令中EN(使能)和FIRST(读写请求)要同步触发,同一时刻只能有一个读写功能(即MBUS_MSG)使能,建议每一个读写功能(即

MBUS_MSG)都用上一个MBUS_MSG指令的Done完成位来激活,以保证所有读写指令循环进行。Modbus主站可读/写的最大数据量为120个字(是指每一个MBUS_MSG指令)。

本文来源:https://www.bwwdw.com/article/e341.html

Top