基于Modbus与以太网通讯的供水远程监控系统一、项目概述 随着科学技术的发展和社会的进步,城市的自来水公司也正在逐步向降低成本,提高管理效率,完善服务的方向发展,所以自来水公司必将采取以信息化为核心的技术改造。由于城市供水管网的地理位置分散,增加了管网系统的数据采集、管理控制及安全维护等的难度。以前对于远程泵站的监控一般采取人工现场手动操作的方法。自来水公司对这些远程泵站收集到的信息数量少、处理慢、传递迟,调度处于低级阶段信息化程度较低,以保证不缺水和维持正常运行为主,谈不上优化调度,造成了人力物力资源的较大浪费。
一、项目概述
随着科学技术的发展和社会的进步,城市的自来水公司也正在逐步向降低成本,提高管理效率,完善服务的方向发展,所以自来水公司必将采取以信息化为核心的技术改造。由于城市供水管网的地理位置分散,增加了管网系统的数据采集、管理控制及安全维护等的难度。以前对于远程泵站的监控一般采取人工现场手动操作的方法。自来水公司对这些远程泵站收集到的信息数量少、处理慢、传递迟,调度处于低级阶段信息化程度较低,以保证不缺水和维持正常运行为主,谈不上优化调度,造成了人力物力资源的较大浪费。
目前也有一些基于GPRS的远程监控系统,但是我们考虑到GPRS网络容易受到天气或自然灾害的影响,导致网络中断,网络一旦中断基于GPRS的远程监控系统就陷入瘫痪状态,这种现象在我国沿海地区经常出现。
基于以上考虑,本系统设计了基于以太网的远程监控系统,传输介质为光缆,大大提高了系统稳定性和抵抗自然灾害的能力。
二、系统原理
在自来水公司是监控室内安装一台监控计算机,使用西门子S7-300系列PLC采集远程泵站内水泵工作状态、管道压力、流量及电源参数等相关信息,同时完成水泵的远程启动和停止。
远程监控计算机通过以太网与远程泵站内的采集系统实现数据和控制指令的传输。信号采集和控制系统中运用CP340串口模块,通过RS485总线(MODBUS /RTU通讯协议)与泵站内水泵控制器及相关仪表相连接。
系统网络结构及系统配置如下:
图一、网络结构及系统配置
RS485Modbus通讯:RS485总线以双绞线为物理介质,工作在半双工的通信状态下,即同一时刻,总线上只能有一个节点成为主节点而处于发送状态,其他所有节点必须处于接收状态,同时RS485通讯采用令牌环式的工作方式 ;其最大传输距离约为1200米,最大传输速率为10Mb/s,目前该通讯应用领域非常广泛。
水泵控制器: S7-300PLC系统通过RS485Modbus通讯可以对水泵控制器发送启动及停止指令,实现远程对水泵的远程控制;同时S7-300PLC系统还可以读取水泵控制器中个水泵的工作状态及压力流量等参数,S7-300PLC系统通过以太网将这些参数上传到远程监控计算机。
电力仪表:用于检测泵站供电线路的电压、电流等电力参数。
三 、通讯协议
(一)、通讯参数:
通讯参数设置9600,n,8,1,即波特率为9600bps,8个数据位,1个停止位,无奇偶校验。
(二)、通讯规约:
传送方式 MODBUS RTU通讯规约。
(三)、Modbus功能说明:
主机查询:查询消息帧包括设备地址码、功能码、数据信息码、校验码。地址码表明要选中的从机设备功能代码告之被选中的从设备要执行何种功能,例如功能代码03或04是要求从设备读寄存器并返回它们的内容;数据段包含了从设备要执行功能的其它附加信息,如在读命令中,数据段的附加信息有从何寄存器开始读的寄存器数量;校验码用来检验一帧信息的正确性,为从设备提供了一种验证消息内容是否正确的方法,它采用CRC16的校准规则。
从机响应:如果从设备产生一正常的回应,在回应消息中有从机地址码、功能代码、数据信息码和CRC16校验码。数据信息码包括了从设备收集的数据:如寄存器值或状态。如果有错误发生,我们约定是从机不进行响应。
传输方式是指一个数据帧内一系列独立的数据结构以及用于传输数据的有限规则,下面定义了与MODBUS协议-RTU方式相兼容的传输方式。每个字节的位:1个起始位、8个数据位、(奇偶校验位)、1个停止位有奇偶校验位时)或2个停止位(无奇偶校验位时)。
数据帧的结构:即报文格式:
地址码在帧的开始部分,由一个字节(8位二进制码)组成,十进制为0~255,在我们的系统中只使用1~247,其它地址保留。这些位标明了用户指定的终端设备的地址,该设备将接收来自与之相连的主机数据。每个终端设备的地址必须是唯一的,仅仅被寻址到的终端会响应包含了该地址的查询,当终端发送回一个响应,响应中的从机地址数据告诉了主机那台终端与之进行通信。
1.功能03:读保持寄存器
说明: 读取一个或多个保持寄存器中的二进制值,所支持的最大保持寄存器数量为100个。
查询: 查询信息规定了要读的寄存器起始地址及寄存器的数量,至少查询1个字,即2个字节。其中低地址为字的高位,高地址为字的低位。
举例-查询:从寄存器(字地址:8)开始读3个字即6个字节的寄存器的内容
字段名 数值(16进制)
从机地址 02
功能号 03
开始地址(高位) 00
开始地址(低位) 08
读取个数(高位) 00
读取个数(低位) 03
CRC校验(高位) XX
CRC校验(低位) XX
表1:读保持寄存器-查询
响应: 响应信息中的寄存器数据为二进制数据,每个寄存器分别对应2个字节,第一个字节为低地址(高位)数据,第二个字节为高地址(低位)数据。
例:按查询要求返回响应。
字段名 数值(16进制)
从机地址 02
功能号 03
返回的查询数据个数 06
数据1(高位)(寄存器8) 01
数据1(低位) 02
数据2(高位)(寄存器9) 80
数据2(低位) 2B
数据3(高位)(寄存器10) 10
数据3(低位) 04
CRC校验(高位) XX
CRC校验(低位) XX
表2:读寄存器-响应
2.功能06:预置单个寄存器
说明 把一个值预置到一个保持寄存器中。
查询信息规定了要预置寄存器的类型,至少写1个字,即2个字节。其中低地址为高位数据,高地址为低位数据。
例:请求把从机设备01 中的1400H 寄存器预置为1EH 值。
字段名 数值(16进制)
0从机地址 01
功能号 06
寄存器地址(高位) 14
寄存器地址(低位) 00
预置数据(高位) 00
预置数据(低位) 1E
CRC校验(高位) 0C
CRC校验(低位) 32
表3:预置单个寄存器-查询
预置单个寄存器响应 寄存器内容被预置后返回正常响应
字段名 数值(16进制)
从机地址 01
功能号 06
寄存器地址(高位) 14
寄存器地址(低位) 00
预置数据(高位) 00
预置数据(低位) 1E
CRC校验(高位) 0C
CRC校验(低位) 32
表4:预置单个寄存器-响应
四、应用效果
本系统中底层和上层分别采用了MODBUS /RTU通讯和以太网通讯,降低了对被监控点工作条件的要求,使系统适用范围更广。监控方式简便,系统响应时间短,数据实时性好,提高了工作效率。系统整体性能稳定,效果良好,是目前理想的城市供水及城乡供水系统远程监控系统。
上海敏研机电科技有限公司
www.minyantech.com