APP下载

在线油烟实时监测系统的设计与实现

2019-08-29

计算机测量与控制 2019年8期
关键词:油烟通讯服务器

(沈阳工业大学 信息科学与工程学院,沈阳 110870)

0 引言

“民以食为天”这句话说明了我国的餐饮行业是一个不会衰落的行业。近几年随着经济的发展,我国餐饮市场也得到了巨大的发展。与此同时餐饮业油烟排放没有得到有效控制,大量未经过净化处理或净化不合格的油烟排放到大气中,该油烟对空气质量的影响越来越大[1]。国家早在2001年颁布《饮食业油烟排放标准》[2],对油烟排放浓度有着明确的界定。但直至目前为止,国内的大部分环保部门对于油烟检测都采用化学试剂检测的方法[3-5],即现场采样抽取排油烟管道内的气体带回实验室检测出油烟浓度。该方法人工成本高,无法实时掌握餐饮企业排放的油烟数据,导致环保部门无法对餐饮企业进行有效的实时监督与管理。

目前通信技术广泛发展。传输数据无论是在速率和可靠性方面都有显著的提升。本文基于以上背景,设计开发一种在线实时的油烟监测系统。该系统由气体和温度传感器实时采集油烟数据,并通过GPRS通讯实时的将数据发送至服务器,并将数据存入数据库。用户可通过访问服务器监测相关餐饮企业排放的油烟数据。高效稳定的系统节省了人力,提高了监管部门对环境的监控力。

1 系统总体设计

1.1 需求分析

为解决环保检测的实时性、检测成本高等问题,系统需要具有以下功能:1)数据采集:通过传感器实时采集油烟数据;2)实时通讯:将采集到的数据实时的发送至服务器,服务器反馈给发送端是否收到数据以及数据是否合格;3)数据存储功能:将油烟数据存入数据库以便查询、统计和导出等;4)实时数据显示:显示餐饮企业排放的实时油烟数据;5)实时位置显示:显示传感器的实时地理位置;6)超标提示:根据《饮食业油烟排放标准》的规定,在进行油烟数据显示时,对超过标准的油烟数据进行标注并在监测网站显示;7)数据查询:具有历史数据查询、超标数据查询、实时数据查询功能;8)设备管理:具有对油烟检测设备信息进行增、删、改、查的功能;9)用户管理:具有对用户信息进行增、删、改、查的功能;10)用户登陆功能:访问服务器需要填写正确的账号密码。

1.2 系统设计

本系统由采集、通讯、服务器和用户交互4个模块组成。其中,采集模块由油烟检测探头和油烟检测节点组成。其中,油烟检测探头由传感器、A/D转换器和CAN总线组成。油烟检测节点由单片机和通讯模块组成。检测探头中的传感器负责实时采集油烟数据(油烟浓度、温度、电流、电压、经度、纬度和设备运行状态),该数据通过CAN总线传输至油烟检测节点。检测节点中的通讯模块负责将数据通过GPRS传输至服务器。服务器模块作为监测网站的后台支撑,为实时数据显示、实时曲线显示、历史数据查询、超标记录查询、用户信息管理、设备信息管理和数据存储功能提供服务。用户交互模块负责处理用户通过监测网站访问服务器时的操作,根据不同操作,浏览器显示不同的结果。系统总体功能如图1所示。

图1 系统总体功能图

2 系统硬件设计

本系统中硬件的核心为油烟采集模块,该模块包含油烟检测探头和油烟检测节点,如图2所示。

图2 油烟采集模块硬件设计图

2.1 油烟检测探头

油烟检测探头包括传感器、AD转换器和CAN总线模块。其中,传感器包括气体传感器和温度传感器。气体传感器采用 TGS2602型号传感器[6]。该传感器性能稳定,优点多:功耗小、对烹饪气体敏感、成本低、稳定性强、应用电路简单。对于温度的检测则采用DS18B20温度传感器[7],该传感器的测温范围-55~125 ℃,分辨率最大可达0.062 5 ℃,可用于油烟环境中。具有不需要A/D转换器就可直接输出数字信号、外围电路少、适合长距离传输等特点。本文中的CAN总线通信,符合ISO 11898标准。采用ADM3053模块,内部集成了DCDC转换器,省掉了光耦隔离,不仅可以隔离单片机与油烟检测探头通信的信号和电源,而且可以节省资源。

2.2 油烟检测节点

油烟检测节点包括微处理器和GPRS通讯模块。微处理器采用STM32F407,该处理器具有高性能、处理数字信号、低功耗、低电压和高度集成等特点,可满足本系统的硬件要求。GPRS通讯模块采用SIM868,该模块具有通讯和定位稳定的优点。处理器通过AT指令可控制SIM868模块收发数据的功能。

3 系统软件设计

3.1 通讯模块设计

由于油烟检测节点(下位机)与服务器(上位机)距离远,进行有线传输成本高,可实施性差,本文采用GPRS无线通讯技术。该技术具有传输数据速率高,成本低和零掉线等特点。

系统中的通讯功能基于TCP/IP网络通讯协议,油烟数据按照本文设计的通讯格式打包,打包后的数据由下位机以GPRS无线通讯方式发送至上位机。处理器STM32F407通过AT指令与上位机建立TCP连接后,便可按照规定的通讯格式向上位机发送数据。在数据发送功能中,上位机接收到数据后自动向下位机发送反馈数据。其通讯格式如表1所示。

表1 上位机发送数据通讯格式

在数据接收功能中,上位机无需向下位机发送查询指令,下位机定时自动的发送数据至上位机。其通讯格式见表2。

表2 上位机接收数据通讯格式

其中油烟数据按照存储结构存放在数据区内,数据区长度为14个字节,数据区具体内容见表3,数据区存储结构见表4。

表3 数据区内容

表4 数据区存储结构

上位机部分采用Java语言和MINA通讯框架[8]编写。MINA框架基于Socket网络通讯[9-10],由于网络传输的数据都是二进制数据(byte),与程序中的Java对象编码方式不同。所以在上位机发送和接收数据时,需要对数据进行编码和解码操作。而在上位机进行编码或解码前,需判断数据是否满足通讯格式。不满足条件的数据不进行编码或解码处理,不存入数据库。只将日志信息发送至服务器。这种数据预处理可减少不必要的通讯,并缓解数据库压力。

图3中显示了上位机接收数据时,根据数据的报头长度、数据头、数据接收命令、数据长度和CRC校验结果,综合判断该数据是否可进行解码操作。

图3 接收数据预处理

3.2 服务器模块设计

服务器模块采用显示(Web)、服务(Service)和持久(Dao)层三层架构开发[11],并采用接口式编程。Web层负责与客户端交互;Service层负责处理复杂的业务逻辑;Dao层负责与数据库交互。系统服务器模块结构如图4所示,监测网站与用户交互属于Web层,并需要后台服务的支撑。

本文在设计Web层采用MVC(Model-Controller-View)设计模式。Model常用于封装数据。Controller位于Model和View之间,负责接收用户输入,将输入解析后反馈至Model。View负责页面显示。该模式提高开发效率,降低代码耦合度,提高程序的可维护性和拓展性。

服务器模块具有如下功能:1)实时数据:通过点击地图上的标记,显示该企业排放的实时油烟数据;2)实时曲线:实时数据绘制实时油烟、实时温度、实时电流曲线图,可直观地反应企业一段时间内排放的油烟数据;3)历史数据查询:查询餐饮企业排放的油烟历史数据;4)超标记录查询:查询餐饮企业超标的次数和具体油烟数据;5)用户信息管理:管理可登录监测网站的用户号码;6)设备信息管理:管理油烟采集模块设备的信息。比如:设备编号等;7)通讯功能:接收油烟数据以及发送反馈信息;8)数据存储功能:将油烟数据存入数据库;9)用户登陆功能:用户输入正确的账号和密码才能访问服务器。

其中,实现实时数据功能时引用百度地图API,目的是将使用油烟采集设备的餐饮企业标注在地图中,环保部门通过点击地图中的标注点,查询其对应企业的实时油烟数据。实现实时曲线功能时引用百度EChart API,目的是通过下拉框选择设备编号,对选中设备绘制实时数据曲线,提高监测的直观性。

3.3 数据库设计

根据需求将数据库表设计为:用户信息表(承载用户账号、密码等)、设备信息表(承载采集设备的信息等)和设备数据表(承载数据整合后发送到服务器的相关信息)。

用户信息表包含主键id、用户号码、用户名、用户密码和用户权限字段,如表5所示;用户信息表对应用户登陆功能和用户信息管理功能。将用户登陆时填写的用户名和密码同用户信息表中的用户名和密码进行比对,若比对结果一致,则登陆成功。反之,则不成功。对该表执行相应的SQL语句,可实现用户管理功能中对用户信息的增添、删除、修改和查询。

表5 用户信息表

设备信息表包含id主键、设备编号、注册设备经度、注册设备纬度、企业名称和企业位置字段。如表6所示;该表中的经度和纬度用于实时数据功能中的地图标注。表中的站点编码作为实时曲线、历史数据和超标数据查询功能中下拉框选项中的内容。

表6 设备信息表

设备数据表包含主键id、站点编码、数据时间、运行状态、油烟浓度、温度、电流、电压、东经、北纬、预留位置1、预留位置2和是否注册字段。如表7所示。该表主要用于存储数据和查询数据。服务器接收到的数据经过解码操作,按照表中的字段和结构,对应地存储在该表中。实时数据查询、历史数据查询、超标数据查询功能则根据站点编码(pkID)进行筛选,并通过SQL查询语句,查询出相应的油烟数据并显示。

4 实验结果与分析

本文将油烟采集设备放置在学校食堂排烟通道中,并设置每5分钟向服务器发送一次数据,存入数据库中。经过测试,油烟采集模块与服务器之间通讯正常,可以准确接收实时数据,并以正确的格式存入数据库中,测试结果如图5所示。

表7 设备数据表

图5 数据库存储油烟数据

登陆监测网站点击地图中的标注点,可以显示该企业的实时油烟数据,并对监测网站的其他功能进行测试,能实现所有设计的功能,测试结果如图6所示。

图6 监测网站功能测试

通过以上测试,验证了本文设计的在线油烟实时监测系统可以满足需求,能实现所有设计的功能。

5 结束语

本文设计的监测系统为B/S模式,不需要用户安装额外的软件,只需通过浏览器既可使用。本系统在保证准确性的前提下,增强监测的实时性,解放了不必要的人力,并可提高环保部门对城市环境的综合监控能力,具有显著的社会与经济效益。

猜你喜欢

油烟通讯服务器
《茶叶通讯》编辑委员会
《茶叶通讯》简介
一种解决中小型餐馆油烟处理难题的油烟分级处理系统设计
PowerTCP Server Tool
BlackJumboDog
厨房里的“大怪物”
2018年全球服务器市场将保持温和增长
二级抽油烟机排油烟装置
减少炒菜油烟的小窍门
国内首个AR通讯应用浮出水面