樊红娟
摘 要:粮食作为重要的国家储备,对粮库粮情的监测尤为重要。文中开发了一套基于LoRa的粮库粮情监测系统,采用STM32作为控制模块,将采集的温湿度通过LoRa传至服务器端,解决了多点传输冲突问题;服务器端采用Java语言开发,实现了对数据的存储和分析。测试结果表明,系统功能符合预期,能够实时采集多点温湿度信息,满足了对粮库粮情数据采集的有效性和可靠性要求。
关键词:LoRa;粮情监测;系统设计;Java;STM32;后台管理
中图分类号:TP39文献标识码:A文章编号:2095-1302(2020)07-00-02
0 引 言
粮食不仅关系国计民生,更是国家的重要储备,因此粮食仓储非常重要。粮食在存储过程中会出现发热霉变、虫害等现象,为了解决粮食存储过程中存在的问题,许多学者借助现代信息化手段设计并开发了多种产品用于监测粮食的实时状态[1-3]。尤其在物联网技术兴起后,对粮情的监测更为容易[4-6]。
本文采用LoRa技术设计并开发了一款粮库粮情监测系统,此系统管理后台采用当前流行的Java语言开发,用户可通过手机APP或PC端用户界面方便地查看粮食的实时数据,并对数据进行分析。
1 系统总体框架
粮库粮情监测系统共包括4部分,即系统前端交互界面、系统管理后台、监测节点和数据库。
用户使用系统的前端交互界面与系统交互,本文开发了两种前端交互界面,分别为手机端APP和PC端Web界面。手机端APP采用Android技术,能够使用户随时随地进行粮情监测。用户还可以打开PC端的浏览器进入Web界面进行粮情监测。系统管理后台采用Java技术开发,实现了系统管理、基础设置、数据监测、数据分析、统计报表和预警管理等功能[7]。监测节点获取粮库的温湿度信息后传给服务器端的系统管理后台,由系统管理后台负责将数据存储到MySQL数据库。系统总体框架如图1所示。
为解决各监测点数据同时传输的冲突问题,在设计监测模块时采用CSMA/CA机制,在发送前侦听有无其他节点正在发送数据,有则延时避让,无则立即发送。
2 系统设计
2.1 硬件设计
数据采集节点是本系统的一个重要部分,其作用是监测粮库粮食的温湿度。当温湿度不在预设范围内时,产生报警信号,并实时把采集的数据通过LoRa模块传给服务器。数据采集节点将SMT32作为控制器,整个采集节点的外设包含8个部分,分别为LoRa模块、报警模块、温湿度监测模块、电源模块、时钟电路、复位电路、JTAG接口和USB转串接口[8]。监测点结构如图2所示。
STM32系列控制器为要求性能高、成本低、功耗低的嵌入式应用而设计,本文重新优化了其功能、存储器和性能,以最小的硬件变化满足了项目需求。LoRa作为低功耗广域网的典型代表技术之一,具有传输距离远、功耗低、成本低、灵敏度高和抗干扰能力强等优点,在本文中用于发送粮库粮食的温湿度信息和接收服务器端的控制信号。电源模块用于为监测节点提供工作电压和电流。当粮库中粮食的温湿度超出阈值时,报警模块产生报警信号。温湿度监测模块选用SHT20温湿度传感器模块,用于粮库粮食的温湿度监测。JTAG接口用于下载程序,USB转串口用于调试手持设备。
2.2 软件设计
2.2.1 采用技术
本系统开发了两种类型的前端用户交互界面,即手机APP和PC端的Web页面。
(1)手机APP能够自动适应各种品牌和型号的手机,采用Android技术和XML技术开发,界面美观,操作简单。
(2)PC端的Web页面通过H5技术实现,使用CSS3技术进行布局,采用JavaScript技术实现异步交互。
系统的管理后台采用当前最流行的Java框架SSM(SpringMVC+Spring+MyBatis)开发。Spring能够管理對象间的依赖关系,降低系统耦合度。SpringMVC是一个轻量级Java框架,它使用了MVC的设计思想,能与Spring无缝对接,降低了Web层开发复杂性。MyBatis采用XML文件配置的方式管理SQL语句,降低了SQL语句与代码的耦合度。应用SSM框架进行开发提高了系统管理后台的开发效率和稳定性。
2.2.2 系统后台管理功能的设计
粮库粮情监测系统后台管理包括系统管理、基础设置、数据监测、数据分析、统计报表和预警管理6大模块。系统的后台管理功能模块结构如图3所示。
(1)系统管理模块为超级管理员使用,是系统能够正常运行的基本模块,具有用户管理、权限管理、角色管理、日志管理等功能。
(2)基础设置模块是对粮库、人员、监测点等进行基本设置的模块,主要包括对粮库信息的增、删、改、查等操作,以及仓库粮情信息的设置,监测点的设置,工作人员的管理,布点的设置等。
(3)数据监测模块是监测粮情温湿度的模块,包括自动按时监测和发送指令监测。
(4)数据分析模块主要是对数据库中存储的历史数据进行数据分析,包括数据对比,数据按时间变化情况显示,某时段的曲线图等。
(5)统计报表模块用于生成报表,可以按周生成,也可以按月、按年生成。
(6)预警管理模块是针对粮库粮情出现异常情况而设定的功能模块,具有超温预警、仓重预警等功能。
2.2.3 数据库设计
根据对业务逻辑的需求分析,本系统选择MySQL作为后台数据库,并设计了用户信息表、监测点数据表、仓库信息表、仓库温湿度信息表、单位表等15个数据库表来存储数据。仓库温湿度表见表1所列。
3 系统测试
为了验证本系统的有效性,选用市面上的手持数字测温仪和测湿仪对实验仓库测量温湿度,并与本系统的测量结果进行对比,对比结果见表2所列。
4 结 语
本文借助LoRa技术开发了一款粮库粮情监测系统,用户可以通过手机APP或PC端Web页面对粮库中的粮食温湿度进行监测。系统的后台管理采用当前流行的Java框架SSM开发,提高了系统的开发效率和稳定性。硬件采集节点采用STM32系列芯片作为控制器。经测试,本系统能够对粮库中粮食的温湿度进行监测,并能够对粮库进行管理,达到了预期效果。
参考文献
[1]龙夏,檀明,王晓峰,等.粮库粮情智能监测系统的设计与实现
[J].牡丹江师范学院学报(自然科学版),2019(4):5-8.
[2]张雪苍,熊伟.粮情测控系统的现状研究及展望[J].粮食加工,2017,42(6):70-73.
[3]马晖.基于DE0的粮仓粮情监测系统的设计与实现[D].武汉:武汉轻工大学,2017.
[4]曲春燕,原明亭,张华虎.基于ZigBee无线传感网络的粮库粮情监测系统的设计[J].工业控制计算机,2014,27(11):58-59.
[5]朱宁莉,马振洲.基于LoRa无线技术的散粮集装箱温湿度监测系统[J].单片机与嵌入式系统应用,2018,18(10):67-69.
[6]赵庆明.基于无线网络的粮情监测系统开发与研究[D].天津:天津工业大学,2019.
[7]黄鹏.粮情远程监控系统的设计与实现[D].成都:电子科技大学,2017.
[8]费祥,张梅.基于LoRa的温湿度监测节点设计[J].物联网技术,2019,9(3):34-36.
[9]袁明波.基于无线传感器网络的粮库粮情监测系统设计[D].沈阳:沈阳理工大学,2010.
[10]杨恩泽.智慧粮库控制系统的设计与实现[D].杭州:浙江大学,2018.