在线餐饮油烟实时监测系统的设计与实现
安科瑞 华楠
“民以食为天”这句话说明了我国的餐饮行业是一个不会衰落的行业。近几年随着经济的发展,我国餐饮市场也得到了巨大的发展。与此同时餐饮业油烟排放没有得到有效控制,大量未经过净化处理或净化不合格的油烟排放到大气中,该油烟对空气质量的影响越来越大。国家早在2001年颁布 《饮食业油烟排放标准》,对油烟排放浓度有着明确的界定。但直至目前为止,国内的大部分环保部门对于油烟检测都采用化学试剂检测的方法,即现场采样抽取排油烟管道内的气体带回实验室检测出油烟浓度。该方法人工成本高,无法实时掌握餐饮企业排放的油烟数据,导致环保部门无法对餐饮企业进行有效的实时监督与管理。
目前通信技术广泛发展。传输数据无论是在速率和可靠性方面都有显著的提升。本文基于以上背景,设计开发一种在线实时的油烟监测系统。该系统由气体和温度传感器实时采集油烟数据,并通过GPRS通讯实时的将数据发送至服务器,并将数据存入数据库。用户可通过访问服务器监测相关餐饮企业排放的油烟数据。稳定的系统节省了人力,提高了监管部门对环境的监控力。
1.1 需求分析
为解决环保检测的实时性、检测成本高等问题,系统需要具有以下功能:1)数据采集:通过传感器实时采集油烟数据;2)实时通讯:将采集到的数据实时的发送至服务器,服务器反馈给发送端是否收到数据以及数据是否合格;3)数据存储功能:将油烟数据存入数据库以便查询、统计和导出等;4)实时数据显示:显示餐饮企业排放的实时油烟数据;5)实时位置显示:显示传感器的实时地理位置;6)超标提示:根据 《饮食业油烟排放标准》的规定,在进行油烟数据显示时,对超过标准的油烟数据进行标注并在监测网站显示;7)数据查询:具有历史数据查询、超标数据查询、实时数据查询功能;8)设备管理:具有对油烟检测设备信息进行增、删、改、查的功能;9)用户管理:具有对用户信息进行增、删、改、查的功能;10)用户登陆功能:访问服务器需要填写正确的账号密码。
1.2 系统设计
本系统由采集、通讯、服务器和用户交互4个模块组成。其中,采集模块由油烟检测探头和油烟检测节点组成。其中,油烟检测探头由传感器、A/D转换器和CAN总线组成。油烟检测节点由单片机和通讯模块组成。检测探头中的传感器负责实时采集油烟数据 (油烟浓度、温度、电流、电压、经度、纬度和设备运行状态),该数据通过CAN总线传输至油烟检测节点。检测节点中的通讯模块负责将数据通过GPRS传输至服务器。服务器模块作为监测网站的后台支撑,为实时数据显示、实时曲线显示、历史数据查询、超标记录查询、用户信息管理、设备信息管理和数据存储功能提供服务。用户交互模块负责处理用户通过监测网站访问服务器时的操作,根据不同操作,浏览器显示不同的结果。系统总体功能如图1所示。
本系统中硬件的核心为油烟采集模块,该模块包含油烟检测探头和油烟检测节点,如图2所示。
图2 油烟采集模块硬件设计图
2.1 油烟检测探头
油烟检测探头包括传感器、AD转换器和CAN总线模块。其中,传感器包括气体传感器和温度传感器。气体传感器采用 TGS2602型号传感器。该传感器性能稳定,优点多:功耗小、对烹饪气体敏感、成本低、稳定性强、应用电路简单。对于温度的检测则采用 DS18B20 温度传感器,该传感器的测温范围-55~125℃,分辨率可达0.0625℃,可用于油烟环境中。具有不需要A/D转换器就可直接输出数字信号、外围电路少、适合长距离传输等特点。本文中的CAN总线通信,符合ISO11898标准。采用ADM3053模块,内部集成了DCDC转换器,省掉了光耦隔离,不仅可以隔离单片机与油烟检测探头通信的信号和电源,而且可以节省资源。
2.2 油烟检测节点
油烟检测节点包括微处理器和GPRS通讯模块。微处理器采用STM32F407,该处理器具有高性能、处理数字信号、低功耗、低电压和高度集成等特点,可满足本系统的硬件要求。GPRS通讯模块采用 SIM868,该模块具有通讯和定位稳定的优点。处理器通过AT 指令可控制SIM868模块收发数据的功能。
3.1 通讯模块设计
由于油烟检测节点 (下位机)与服务器 (上位机)距离远,进行有线传输成本高,可实施性差,本文采用 GPRS无线通讯技术。该技术具有传输数据速率高,成本低和零掉线等特点。
系统中的通讯功能基于TCP/IP网络通讯协议,油烟数据按照本文设计的通讯格式打包,打包后的数据由下位机以GPRS无线通讯方式发送至上位机。处理器STM32F407,通过AT指令与上位机建立TCP连接后,便可按照规定的通讯格式向上位机发送数据。在数据发送功能中,上位机接收到数据后自动向下位机发送反馈数据。其通讯格式如表1所示。
表1 上位机发送数据通讯
表2上位机接收器数据通讯格式
表3 数据区内容
表4 数据区存储结构
图3中显示了上位机接收数据时,根据数据的报头长度、数据头、数据接收命令、数据长度和CRC校验结果,综合判断该数据是否可进行解码操作。
服务器模块采用显示(Web)、服务 (Service)和持久(Dao)层三层架构开发,并采用接口式编程。Web层负责与客户端交互;Service层负责处理复杂的业务逻辑;Dao层负责与数据库交互。系统服务器模块结构如图4 所示,监测网站与用户交互属于Web层,并需要后台服务的支撑。
图4 服务器模块机构
本文在设计Web层采用MVC (Model-Controller-View)设计模式。Model常用于封装数据。Controller位于Model和 View之间,负责接收用户输入,将输入解析后反馈至Model。View负责页面显示。该模式提高开发效率,降低代码耦合度,提高程序的可维护性和拓展性。
服务器模块具有如下功能:1)实时数据:通过点击地图上的标记,显示该企业排放的实时油烟数据;2)实时曲线:实时数据绘制实时油烟、实时温度、实时电流曲线图,可直观地反应企业一段时间内排放的油烟数据;3)历史数据查询:查询餐饮企业排放的油烟历史数据;4)超标记录查询:查询餐饮企业超标的次数和具体油烟数据;5)用户信息管理:管理可登录监测网站的用户号码;6)设备信息管理:管理油烟采集模块设备的信息。比如:设备编号等;7)通讯功能:接收油烟数据以及发送反馈信息;8)数据存储功能:将油烟数据存入数据库;9)用户登陆功能:用户输入正确的账号和密码才能访问服务器。其中,实现实时数据功能时引用百度地图API,目的是将使用油烟采集设备的餐饮企业标注在地图中,环保部门通过点击地图中的标注点,查询其对应企业的实时油烟数据。实现实时曲线功能时引用百度EChart API,目的是通过下拉框选择设备编号,对选中设备绘制实时数据曲线,提高监测的直观性。
根据需求将数据库表设计为:用户信息表 (承载用户账号、密码等)、设备信息表 (承载采集设备的信息等)和设备数据表 (承载数据整合后发送到服务器的相关信息)。用户信息表包含主键id、用户号码、用户名、用户密码和用户权限字段,如表5所示;用户信息表对应用户登陆功能和用户信息管理功能。将用户登陆时填写的用户名和密码同用户信息表中的用户名和密码进行比对,若比对结果一致,则登陆成功。反之,则不成功。对该表执行相应的SQL语句,可实现用户管理功能中对用户信息的增添、删除、修改和查询。
表5 用户信息表
表6 设备信息表
表7 设备数据表
4 实验结果与分析
本文将油烟采集设备放置在学校食堂排烟通道中,并设置每5分钟向服务器发送一次数据,存入数据库中。经过测试,油烟采集模块与服务器之间通讯正常,可以准确接收实时数据,并以正确的格式存入数据库中,测试结果如图5所示。
图5 数据库存储油烟数据
登陆监测网站点击地图中的标注点,可以显示该企业的实时油烟数据,并对监测网站的其他功能进行测试,能实现所有设计的功能,测试结果如图6所示。
图6 监测网站功能测试
通过以上测试,验证了本文设计的在线油烟实时监测系统可以满足需求,能实现所有设计的功能。5 安科瑞AcrelCloud3500餐饮油烟监测云平台
油烟监控主机是现场的管理设备,实时采集油烟浓度探测器和工况传感器的信号,进行数据处理,通过有线或无线网络通讯将数据传输到服务器平台。同时,对本地数据进行存储,监控现场设备状态,提供人机操作界面。
■ 净化器和风机配合对油烟进行净化处理,同时对净化设备的电流、电压进行监测
■ 设备通过4G网络将采集的数据上传至远程云端服务器
5.2 平台主要功能
(1)在线监测
对油烟排污数据的监测,包括油烟排放浓度,颗粒物,NmHc等数值采集监测;同时对监控风机和净化器的启停状态、运行数据进行监测。
(2)告警数据监测
系统根据采集的油烟数值大小,产生对应的排放超标告警;对净化器的运行数据分析,上传净化设备对应的运行、停机、故障等告警事件。
运行时长分析,离线分析;告警占比、排名分析;历史数据统计等。
系统对采集的告警数据分析,产生对应的隐患记录,派发、处理隐患,及时处理告警,形成闭环
(5)统计分析
包括时长分析、超标分析、历史数据、分析报告等模块
个人信息、权限维护,企业信息录入,对应测点信息录入等
(7)数据服务
数据采集,短信提醒,数据存储和解析
5.3油烟监测主机
油烟监控主机是现场的管理设备,实时采集油烟浓度探测器和工况传感器的信号,进行数据处理,通过有线或无线网络通讯将数据传输到服务器平台。同时,对本地数据进行存储,监控现场设备状态,提供人机操作界面。
5.4 设备选型方案
注:双探头适合双排烟通道的场合,每路探头监测1路排烟通道。
6 结论
本文设计的监测系统为B/S模式,不需要用户安装额外的软件,只需通过浏览器既可使用。本系统在保证准确性的前提下,增强监测的实时性,解放了不必要的人力,并可提高环保部门对城市环境的综合监控能力,具有显著的社会与经济效益。[1]姬红波,朱海飞. 基于“互联网+”餐饮油烟在线监控系统[J].中国环保产业,2016(2):45-49
[2]张时,王向东,李树江.在线油烟实时监测系统的设计与实现,沈阳工业大学信息科学与工程学院
[3]安科瑞AcrelCloud-3500餐饮油烟监测云平台. 2020.05版
相关文章:

在线餐饮油烟实时监测系统的设计与实现
安科瑞 华楠 摘 要:为了解决传统油烟检测方法中成本高、效率低、实时性差等问题,设计开发了一种在线油烟实时监测系统;系统由采集、通讯、服务器和用户交互四个模块组成;采集模块采集油烟数据,通过GPRS通讯技术将数据发…...

7-2 凯撒密码 (20分)
7-2 凯撒密码 (20分) 为了防止信息被别人轻易窃取,需要把电码明文通过加密方式变换成为密文。输入一个以回车符为结束标志的字符串(少于80个字符),再输入一个整数offset,用凯撒密码将其加密后输出。恺撒密码是一种简单…...

LeetCode_贪心算法_中等_763.划分字母区间
目录 1.题目2.思路3.代码实现(Java) 1.题目 给你一个字符串 s 。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。注意,划分结果需要满足:将所有划分结果按顺序连接,得到的字符串仍…...

【算法提高:动态规划】1.5 状态压缩DP TODO
文章目录 状态压缩DP例题列表棋盘式1064. 小国王⭐🐂(好题!)做题套路总结 327. 玉米田(好题!🐂 和1064. 小国王差不多的题目)292. 炮兵阵地(和上面两道题差不多ÿ…...

建网站一般使用Windows还是liunx好?
建网站一般使用Windows还是liunx好? 1;服务器配置比较低时,最好使用linux系统。 对于一个电脑新手,刚开始做网站时,都会选择入门级的服务器,我刚开始做网站时,就是这样的。我购买了一台入门级服…...

NodeJs后端项目使用docker打包部署
docker安装看之前的文章 默认已经安装好docker并且配置没有问题 拉取项目 https://gitee.com/coder-msc/docker-node 本地跑一个看看 pnpm install pnpm start 本地访问 http://localhost:1301/getname?name%E5%93%88%E5%88%A9%E6%B3%A2%E7%89%B9项目整个上传服务器 查看…...

ARM单片机中断处理过程解析
前言 中断,在单片机开发中再常见不过了。当然对于中断的原理和执行流程都了然于胸,那么对于ARM单片机中断的具体处理行为,你真的搞清楚了吗? 今天来简单聊一聊,ARM单片机中断处理过程中的具体行为是什么样的…...

关于SEDEX会员与平台的相关问题汇总
【关于SEDEX会员与平台的相关问题汇总】 01.会员资格有效期是多久? Sedex会员资格有效期为12个月,您也可以选择更长期的会员资格。您支付会员年费时,在“订阅信息”框下的“延长订阅期限”中输入年数,即可获得更长的会员资格时效。…...

解读Spring-context的property-placeholder
在spring中,如果要给程序定义一些参数,可以放在application.properties中,通过<context:property-placeholder>加载这个属性文件,然后就可以通过value给我们的变量自动赋值,如果你们的程序可能运行在多个环境中&…...

【Rust】枚举类型创建单链表以及常见的链表操作方法
目录 单链表 用枚举表达链表 枚举enum Box容器 创建节点 1. 创建并打印 2. match 匹配 3. 节点初始化 4.节点嵌套 追加节点 1. 尾插法 2. 链表追加方法 3. 头插法 4. 改写成单链表方法 遍历链表 1. 递归法 2. 递推法 3. 改写成单链表方法 自定义Display tr…...

Excel 两列数据中相同的数据进行同行显示
一、要求 假设您有两个列,分别是A列和B列,需要在C列中找出A列对应的B列的值。 二、方案 方法1:寻常思路 凸显重复项对A列单独进行筛选–按颜色进行排序,然后升序对B列重复上述操作即可 方法2:两个公式 VLOOKUP 纵向查找…...

Windows本地安装配置Qcadoo MES系统
简介 Qcadoo MES是一款功能强大且灵活的开源MES(制造执行系统),旨在为制造业务提供全面的管理和监控解决方案。本篇博客将教您如何在Windows操作系统上安装和配置Qcadoo MES系统,以便您能够轻松管理和监控制造过程。 环境要求 …...

涛思数据与拾贝云达成战略合作,携手赋能工业数字化转型
2023 年 7 月 27 日,北京涛思数据科技有限公司(以下简称“涛思数据”)与广州拾贝云科技有限公司(以下简称“拾贝云”)于广州签署战略合作协议。双方围绕电力行业的需求与痛点展开积极讨论,就如何量身打造最…...

nginx 配置多域名多站点 Ubuntu
nginx 配置多域名多站点 Ubuntu 一、安装 nginx apt install nginx二、配置文件说明 nginx 的配置文件在 /etc/nginx 目录下,它的默认内容是这样的 root2bd0:/etc/nginx# ll total 72 drwxr-xr-x 8 root root 4096 Jul 31 15:21 ./ drwxr-xr-x 104 root root …...

Docker实践:使用Docker搭建个人开发环境(极简版)
文章目录 说明教程1. 编写 Dockerfile2. 编写 docker-compose.yml3. 使用容器创建容器启动容器进入容器命令行VSCode 4. 关闭容器5. 备份容器导出导入 6. 重置容器 相关资料文章合集详细了解本文在个人电脑上安装 Docker容器使用 NVIDIA 显卡托管镜像运行GUI程序 说明 本文是在…...

SQL从三个表中根据时间分别查询并汇总数量一行展示
需求:如果您要从三个表中根据时间分别查询并汇总数量,然后将结果以时间和数量一行展示,可以使用子查询和条件聚合。 入库主表 入库明细表 出库主表 出库明细表 退货主表 退货明细表 SQL代码 SELECT time,sum(a.inQty) as inQty,sum(a.outQty…...

同样是跨端框架,React会不会被VUE取代?
看到知乎上有比较多的类似问题,正好这两个框架在以往的一些项目中都有实践过,就借着本篇文章说说我个人的看法。 先摆个结论:不会,毕竟各有千秋,除非跨端框架有被更好的概念所替代,又或者App已经彻底过气了…...

Excel·VBA定量装箱、凑数值金额、组合求和问题
如图:对图中A-C列数据,根据C列数量按照一定的取值范围,组成一个分组装箱,要求如下: 1,每箱数量最好凑足50,否则为47-56之间; 2,图中每行数据不得拆分; 3&…...

通过Jmeter压测存储过程
目录 一、存储过程准备: 二、测试工具准备: 三、工具配置及执行: 1、配置JDBC Connection Configuration: 2、配置吞吐量控制器(可跳过): 3、配置JDBC Request: 对于存储过程…...

Spring笔记之Spring对IoC的实现
文章目录 IoC控制反转依赖注入set注入注入外部Bean注入内部Bean注入简单类型通过注入方式实现javax.sql.DateSource接口测试简单类型 级联属性赋值(了解)注入数组注入List集合注入Set集合注入Map集合注入Properties注入null和空字符串不给属性赋值使用 注…...

【eNSP】Telnet远程登录
Telnet远程登录 eNSP软件TelnetTelnet远程登录-路由连接关闭防火墙eNSP根据图1画图路线配置路由端口IP配置路由R1改名配置接口IP 配置路由R2 配置R2的远程登录设置登录用户授权级别退出登录超时时间 Telnet测试 eNSP软件 eNSP(Enterprise Network Simulation Platform)是一款由…...

SOP/详解*和**/python数据结构(iter,list,tuple,dict)/ 解包
一、错误解决合集 1. > combined_seq.named_children() 2. isinstance 2th parameter : must be a type or tuple of types > 改为tuple,不要用列表。改为 LLLayer (nn.Conv2d,nn.Linear) 3. File “test.py”, line 90, in calculate_fin_fout print(“hi”…...

使用webdriver-manager解决浏览器与驱动不匹配所带来自动化无法执行的问题
1、前言 在我们使用 Selenium 进行 UI 自动化测试时,常常会因为浏览器驱动与浏览器版本不匹配,而导致自动化测试无法执行,需要手动去下载对应的驱动版本,并替换原有的驱动,可能还会遇到跨操作系统进行测试的时候&…...

【vue】Vue中debugger报错 unexpected ‘debugger’ statement no-debugger
前言: Vue中debugger报错 unexpected ‘debugger’ statement no-debugger (意外的“调试器”语句没有调试器) eslink规则没有开启’debugger’ ,被规则屏蔽了,需要手动放开 解决方法 方式一: 找到.esl…...

课题方向a
首先在无线感知的研究方向下,辅以深度学习和计算机视觉的技术和知识,可以从事哪些具体课题的研究?请你尽可能多的给出课题名称供我选择 在无线感知的研究方向下,辅以深度学习和计算机视觉的技术,有很多具体课题可以进行研究。以下是一些供您选择的课题名称: 基于深度学习…...

【Matter】基于Ubuntu 22.04 交叉编译chip-tool
编译工程之际,记录一下编译过程,免得后续遗忘,总结下来chip-tool 交叉编译涉及到的知识点: 需要了解如何支持交叉编译,基于GN编译框架需要理解应用库如何交叉编译,理解pkg-config的使用meson 编译…...

Qt/C++音视频开发50-不同ffmpeg版本之间的差异处理
一、前言 ffmpeg的版本众多,从2010年开始计算的项目的话,基本上还在使用的有ffmpeg2/3/4/5/6,最近几年版本彪的比较厉害,直接4/5/6,大版本之间接口有一些变化,特别是一些废弃接口被彻底删除了,…...

低碳 Web 实践指南
现状和问题 2023年7月6日,世界迎来有记录以来最热的一天。气候变化是如今人类面临的最大健康威胁。据世界卫生组织预测2030年至2050年期间,气候变化预计每年将造成约25万人死亡。这是人们可以真切感受到的变化,而背后的主要推手是碳排放。 …...

信息安全:网络安全体系 与 网络安全模型.
信息安全:网络安全体系 与 网络安全模型. 网络安全保障是一项复杂的系统工程,是安全策略、多种技术、管理方法和人员安全素质的综合。一般而言,网络安全体系是网络安全保障系统的最高层概念抽象,是由各种网络安全单元按照一定的规…...

【云原生】Serverless 技术架构分析
一、什么是Serverless? 1、Serverless技术简介 Serverless(无服务器架构)指的是由开发者实现的服务端逻辑运行在无状态的计算容器中,它由事件触发, 完全被第三方管理,其业务层面的状态则被开发者使用的数据库和存…...