APP下载

基于ModBus协议的物联网环境监测系统开发

2017-11-08陈彦彬李镇伟骆文彬许柏胜高文娜周荣坤

智能计算机与应用 2017年5期
关键词:监测系统网关物联网

陈彦彬+李镇伟+骆文彬+许柏胜+高文娜+周荣坤

摘要:基于工业现场总线ModBus协议设计集Zigbee、WIFI、433 MHz物理层通信方式的物联网环境监测系统,网关硬件平台选用基于CortexTM-A8架构的Samsung S5PV210处理器,采集终端选用STC12C5A16S2、CC2530单片机;系统网关软件平台选用Linux内核,采用Qt/Embedded构建平台的嵌入式GUI系统,同时集成USB摄像头、RFID刷卡器等功能;远程云服务器平台采用第三方物联网平台,在网关部署shell脚本,运行调用CURL工具,实现与云端服务器的数据传输。系统设计具有实时性、实用性和可扩展性等优点。

关键词: ModBus协议; 物联网; 网关; 监测系统

中图分类号: S126, TP393

文献标志码:A

文章编号:2095-2163(2017)05-0026-05

Abstract:Based on the industrial field bus ModBus protocol, the Internet of things environment monitoring system is designed that integrates 433 MHz physical layer communication mode、 WIFI and Zigbee.The gateway hardware platform selects S5PV210 Samsung processor based on CortexTM-A8 architecture.Acquisition terminal uses CC2530, STC12C5A16S2 microcontroller. System gateway software platform uses Linux kernel. After that, Qt/Embedded is selected to build embedded GUI system of the platform. At the same time, USB camera, RFID card reader, etc are also integrated. Moreover, third party Internet of things platform is adopted in the remote cloud server platform, and shell script is deployed that runs and calls CURL tool in the gateway to implement data transmission from the cloud server. The system design has the advantages of real time, practicability and expansibility.

Keywords: ModBus protocol; Internet of things; gateway; monitoring system

基金项目: [广东省2016年度大学生科技创新培育专项资金立项项目(pdjh2016a0780);揭阳职业技术学院2014年科学研究项目(2014JYCKY10)。

0引言

随着嵌入式技术、传感器技术、通信技术、视频识别技术以及计算机技术等多种技术和学科的发展,网络通信各种协议不断应用到各行各业,如Zigbee、蓝牙、WIFI、6LoWPAN、GPRS、433 MHz射频等等[1-4],这些应用从一定程度上提高了各行各业的生产效率、效益和智能化水平[5-7]。但是仍然存在某些问题,例如:由于通信协议众多、不同协议之间的设备无法直接通信;各个网络均为局域网络、覆盖能力差、无法实现互通互联;个别网络通信现有带宽较小,仅限于传输控制指令和数据,无法传输图片;自建远程云服务器,投入成本高、开发效率低下等。

为解决现代农业、工业在环境参数监测与控制等存在的问题,根据实际农业、工业的生产环境,现场采用强抗干扰性的特点,应用ModBus工业现场总线协议开发集温湿度、光照、烟雾、酒精等常见环境指标为一体的数据采集监测与处理一体化系统具有重要现实意义[8-9]。该系统使用户能够实时监测传感器采集数据;同时将采集到的数据实时地在本地监测屏幕上以数字和曲线图显示出来,并与第三方物联网平台有效对接,可以实现远端用户对监测数据查询、存储、统计等功能,以及对对象进行控制,极大地满足了现代农业、工业现场以及智能决策的需求。

1系统总体设计

基于ModBus协议的物联网环境监测系统的组成包括:环境数据采集终端、网络层、网关、远程云服务器以及用户终端等部分,主要实现对底层Zigbee网络、433 MHz通信网络以及以太网等多种常见物联网通信方式采集到的环境数据进行解释和转换,封装为TCP/IP协议数据包并提交至远程云服務器,使用户实现远程监测。其系统整体架构如图1所示。

环境数据采集层主要是各个环境数据的采集终端,包括以太网、Zigbee以及433 MHz三种通信方式的数据采集终端,采集数据的格式全部按照ModBus协议封装,同时在主机请求控制下实时将数据进行传送,并执行用户终端控制指令。

网络层主要是各个通信方式之间进行数据传输。Zigbee通信子网络将其网络中的采集终端数据传送至Zigbee的协调器,该协调器通过RS232串行接口传输至系统网关,由网关对Zigbee网络的ModBus协议应用数据单元ADU进行解析,并作相应处理。433 MHz应用子网络中,ModBus主机通过串行接口RS232与串口WIFI服务器相连接,主要负责将子网络中的采集终端数据中转到串口WIFI服务器从而传送至系统网关。以太网数据采集终端利用ModBus TCP/IP协议对采集数据进行封装,并通过串口WIFI服务器将数据传送至系统网关。endprint

网关是整个系统的核心,主要负责对ModBus协议格式的数据进行解析、分析和显示于监测屏幕上,同时重新封装为TCP/IP数据包传送至远程云服务器;接收和转发远程云服务器发送过来的控制指令至各控制节点。同时网关还加入RFID刷卡器,增强系统用户身份识别功能。为了配合采集终端对异常数据取证,系统网关增加摄像头功能,可以对监测区域实施视频录像和抓拍,为数据分析提供依据。

远程云服务器主要负责接收网关发送过来数据并存储,同时对用户终端的各种请求及时响应和传达用户终端控制指令至网关[10]。终端用户主要是查询监测点的环境数据指标并对监测点进行控制等。

2.1.1微控制器MCU

系统采集终端分为2类:采用以太网、433 MHz通信方式的采集终端微控制器选用STC12C5A16S2单片机;Zigbee的采集终端选用CC2530微处理器。STC12C5A16S2是一款新型的单片机,由中央处理器(CPU)、程序存储器、数据存储器、定时/计数器、UART串口、I/O接口、高速AD接口、SPI接口、看门狗及片内振荡等模块组成。Zigbee无线采样终端模块采用CC2530芯片,该芯片内部集成 8051硬核、无线收发器、ADC模块、64 KB的FLASH存储器、21个通用GPIO和2个UART接口。其无线发射频率为2.4 GHz,最大数据传输速率为250 kbit/s。采集终端的硬件框图如图2所示。

2.1.2传感器

系统监测的环境参数涉及温度、湿度、光照、结露、烟雾、酒精、火焰等传感器。温湿度传感器选用AM2321湿敏电容数字温湿度模块,该产品包含一个电容式感湿元件和一个高精度测温元件,是一款含有已校准数字信号输出的温湿度复合传感器,使用标准单总线接口,信号传输距离可达20 m,响应时间2 s,性价比和抗干扰能力比一般温湿度传感器强。光敏传感器采用的是可见光光敏电阻,其光谱特性与人对可见光的响应很接近,系统还可以根据应用场合光的波长更换相应的光敏电阻,使其适合监测需求。结露传感器选用HDS05正特性开关型元件,其工作电压为DC0.8 V,温度范围1 ℃~80 ℃,工作湿度范围1%~100%RH,结露测试范围94%~100%RH。烟雾、酒精检测传感器采用可燃气体传感器MQ系列,其所使用的气敏材料是在清洁空气中电导率较低的二氧化锡(SnO2)。一般可燃性气体采样MQ-2,检测浓度范围为300~10 000 ppm。酒精检测则选用MQ-3,其对酒精的灵敏度高,可检测酒精浓度为0.04~4 mg/L。火焰检测传感器使用红外接收管作为检测探头,其能接收波长范围为700~1 100 nm,火焰产生红外光为900 nm,在其检测范围内。

2.2智能网关

系统智能网关的硬件框架图如图3所示。设计中,CPU处理器选用基于CortexTM-A8架构的Samsung S5PV210,其运行主频达1 GHz,配有运行频率200 MHz、512 MB的DDR2 RAM,256 MB的SLC NAND Flash。系统同时配有IIC的EEPROM,AD/DA等。为配合系统完成RFID刷卡、摄像头采集视频以及连接互联网,系统预留3个串行接口、USB接口、SD WIFI接口等。同时增加7寸电容触摸屏作为监测系统网关的用户显示界面。智能网关运行嵌入式Linux系统,内核版本为Linux2.6.35.7,根文件系统为yaffs类型。同时为了使USB摄像头能够运行

视频采集功能,还在智能网关上面移植运行了mjpg-streamer程序,构建了基于IP地址的视频流服务器。通过在智能网关启用视频采集服务,远端用户只要通过IP地址即可访问摄像头采集到的实时视频,同时还可以进行图像抓拍并存储起来。

ModBus是OSI模型第7层上的应用层报文传输协议,是一个请求/应答协议,并且提供功能码规定的服务,能够为连接至不同类型总线或网络之间的设备提供客户机/服务器通信。ModBus协议定义了一个与基础通信层无关的简单协议数据单元(PDU)。特定总线或网络上的ModBus协议映射能够在应用数据单元(ADU)上引入一些附加域。针对串行总线和以太网上ModBus应用,分别定义ModBus串行链路协议和ModBus/TCP。具体帧格式如图4所示。ModBus协议定义了3种PDU,分别是:ModBus请求mb_req_pdu、ModBus响应mb_rsp_pdu、ModBus异常响应mb_excep_rsp_pdu。

在标准的ModBus网络通信中,监测系统可以设置为2种传输模式(ASCII或RTU)中的任何一种。用户在配置每个控制器的时候,在一个ModBus网络上的所有设备都必须选择相同的传输模式和串口通信参数(波特率、校验方式等)[11]。该系统通信模式采用RTU模式。研究可得报文格式如表1所示。

根据ModBus协议RTU模式報文格式,该系统主节点请求的报文格式如表2所示。

上面请求报文格式中,功能码选择0x03,代表从设备读保存到寄存器并返回其中内容。第3~6字节内容主要包含要告之从设备的信息,包括从哪个寄存器开始读及要读的寄存器数量。第7~8字节为CRC校验码,低位在前,高位在后。第1字节为地址码,具体如表3所示。

各采集终端应答主机的响应报文格式如表4所示。

对于出现异常情况,将按照ModBus异常响应PDU的定义,其功能码加上0x80。

3.2系统软件设计

系统软件设计包括各采集终端数据通信与采集程序、网关节点网络通信与ModBus协议解析程序、网关节点与远程云服务器通信软件。采集终端主要依靠串行接口完成通信过程,其主要流程如图5所示。网关节点功能复杂,开启2个主要线程,完成socket通信和串行接口通信功能,其主要软件流程如图6所示。endprint

為了提高开发的效率,远程云服务器平台采用第三方云平台,根据远端云服务器平台提供的传感器调用API地址,编写网关的shell脚本和共享变量进程,调用CURL工具即可实现数据上传至云端服务器和接收云端控制指令。具体调用

4.3测试结果及分析

经过测试,系统能完全满足设计的基本要求,能够实现Zigbee、WIFI、433 MHz多种通信方式下温度、湿度、光照等环境数据监测、摄像头视频采集、RFID刷卡身份认证等功能,云端服务器湿度监测数据如图8所示,达到了预期效果。系统正常运行,各采集终端节点采集数据的精度为1%,各传感器采集数据平均误差均在5%以内,摄像头采集视频指标为V4L2、1024×768、20 pfs,网关CPU占用率为86%,内存占用率89%,系统性能良好。

5结束语

系统利用当前流行的工业现场总线ModBus协议,开发集温湿度、光照、烟雾、酒精等常见环境指标为一体的数据采集监测与处理系统,通过物理层433 MHz、ZigBee、WIFI等多种物联网通信方式,构建了基于Cortex-A8主控核心的数据存储和处理终端,最终通过常见IP网络,实现与现有第三方物联网平台连接,系统具有先进性、实时性,并且具有很强的通用性和可扩展性等技术特点。该系统对于构建大规模、自组网物联网环境监测与控制提供借鉴和技术模型,下一步将增加预警和智能决策方面研究和应用,以便系统应用于智能农业温室大棚、工业现场环境参数监测、智能安防、森林防火等多个领域,该系统具有广泛的技术推广价值和应用价值[12]。[JP]

参考文献:

李将,俞阿龙,蔡文科,等. 基于ZigBee和GPRS的温室控制系统研究[J]. 江苏农业科学,2015,43(10):494-497.

[2] 杨海天,于婷婷,李春胜,等. 基于GPRS的土壤墒情远程监测系统[J]. 农业工程,2016,6(1):32-36.

[3] 张效奎,白恩健. 基于6LoWPAN传感器网关设计[J]. 电子科技,2012,25(12):11-14.

[4] 李震,洪添胜,文韬,等. 基于物联网的果园实蝇监测系统的设计与实现[J]. 湖南农业大学学报(自然科学版),2015,41(1):89-93.

[5] 张杰,臧贺藏,杨春英,等. 基于物联网的农业环境远程监测系统研究[J]. 河南农业科学,2015,44(12):144-147.

[6] 段鹏伟,王俊学. 基于ZigBee技术的日光温室环境监控系统设计[J]. 南方农机,2015(12):34-36.

[7] 黄莺. 基于无线传感技术的稻田信息监测系统[J]. 农机化研究,2016(7):167-171.

[8] 陈可伟,张金成,王钰,等. 基于ModBus协议的无线传感器网络网关设计[J]. 测控技术,2016,35(2):99-103.

[9] 耿杏雨,杨帆,王秀,等. 基于ARM的育苗架智能监控系统设计[J]. 农机化研究,2015(2):199-202,209.

[10]张腾飞,王飞,马福民. 基于ModBus 多协议转换的警情信息远程监控系统[J]. 自动化与仪表,2015(12):37-40.

[11]桑娟萍,梁明亮,赵子忠. 基于ModBus协议的育苗大棚温湿度在线监测系统[J]. 工业仪表与自动化装置,2012(3):48-53.

[12]周丽萍,陈志,苑严伟,等. 猪舍环境无线传感器网络监控系统研究[J]. 自动化技术与应用,2016,35(1):56-60,72.endprint

猜你喜欢

监测系统网关物联网
基于FPGA的工业TSN融合网关设计
基于ARM架构的工业物联网网关研究与实现
基于数据融合的掘进机截齿磨损状态监测
基于广播模式的数据实时采集与处理系统
基于高职院校物联网技术应用人才培养的思考分析
GIS设备局部放电监测系统的研究
中国或成“物联网”领军者
基于ENC28J60的嵌入式以太网/CAN网关设计