搜档网
当前位置:搜档网 › 基于物联网的室内环境甲醛监控系统设计与实现

基于物联网的室内环境甲醛监控系统设计与实现

基于物联网的室内环境甲醛监控系统设计与实现
基于物联网的室内环境甲醛监控系统设计与实现

基于物联网的室内环境甲醛监控

系统设计与实现

目录

第一章绪论 0

1.1 选题背景 0

1.2小结 0

第二章作品方案设计 (1)

2.1 作品方案 (1)

2.1.1 作品概述 (1)

2.1.2 上位机软件设计及WEB服务器设计 (2)

2.1.3 网关设计 (3)

2.1.4 ZigBee无线传感器网络的设计 (4)

2.2 预期目标 (4)

2.3 小结 (5)

第三章上位机与WEB服务器设计 (5)

3.1上位机软件设计 (5)

3.1.1功能模块 (7)

3.2 小结 (11)

第四章网关数据收发软件设计 (12)

4.1硬件系统 (12)

4.1.1 SIM900A 开发板 (12)

4.1.2 协调器 (13)

4.2 软件系统 (14)

4.2.1 GPRS模块程序设计 (14)

4.2.3 ZigBee协调器程序设计 (17)

4.3小结 (17)

第五章底层ZigBee节点软硬件设计 (18)

5.1硬件系统 (18)

5.1.1 ZigBee节点底板电路设计 (18)

5.1.2 甲醛检测传感器MS1100-P111 (19)

5.2软件设计 (20)

5.3小结 (21)

第六章测试和结果分析 (22)

6.1测试目的与方案 (22)

6.2 上位机软件测试 (23)

6.3 网关测试 (24)

6.4 底层ZigBee网络测试 (25)

参考文献 (26)

附件 (26)

第一章绪论

1.1 选题背景

甲醛具有比较高的毒性并且被我国列入在有毒化学品优先控制名单上。甲醛己经被世界卫生组织确定为致癌和致畸形物质。它是公认的变态反应源,也是潜在的强致突变物质之一。甲醛问题己成为全球公共卫生关注的焦点。

近年来,家庭装修成为人们时尚的追求,但在美化了居室环境的同时,也因很多装饰材料中含有毒物质,造成室内空气污染,特别是室内甲醛污染更为严重,对人体的健康造成了极大的危害。

因此加强对甲醛污染的监测和控制,对于保护人类日常生活的健康具有要的理论意义和实践意义。除采用常规方法将其去除外,对存在甲醛的环境及时通风是关键。本项目针对甲醛检测、开风扇或其他排气装置进行通风、报警展开设计,稀释甲醛浓度,使其达到允许浓度,同时报警,提醒人们注意健康。当然,本系统不仅仅只是适用于家庭室内,也适用于生产装演材料、家具厂等场合。

1.2小结

结合以上所述,研究一套低成本,高效率的甲醛监控系统,对于解决家庭室内环境甲醛浓度监测难、不好控制、保障人们日常生活安全具有重要意义,同时也具有很大的市场前景和现实意义。

第二章作品方案设计

本章详细介绍了基于室内环境甲醛监控系统设计框架与流程,包括上位机软件及WEB服务器的设计方法、网关的设计过程以及底层ZigBee无线传感器网络的相关设计方案。

2.1 作品方案

2.1.1 作品概述

作品总体由3层网络组成:底层为无线传感器网络,中层为GPRS网络,上层为Internet网络。底层和中层通过无线网关连接,中层和上层则利用GPRS 网络交互信息。

底层无线传感器网络由基于ZigBee无线通讯协议传感器节点构成。ZigBee 技术作为一种新兴的无线通信技术,具有微功耗、低成本、自组网和节点布置灵活等特点,非常适合在多点监测、无人值守的环境监控中应用。

中层GPRS网络由各网关节点组成,完成传感器节点的信息交汇、数据转发、指令收发等功能。

上层Internet网络由上位机组成,上位机作为用户对室内环境甲醛监测数

据进行实时查看,确保室内时刻安全正常。总体结构图如2-1所示。

室内环境

Zigbee感知

节点1

Zigbee感知

节点2

Zigbee感知

节点3

采集甲醛浓

度信息

协调器

信息上传信息上传

网关模块电脑数据

显示

手机实时

查询

打开通风排

气装置

报警

浓度超标

图2-1 室内环境甲醛监控总体框图

2.1.2 上位机软件设计及WEB服务器设计

上位机采用HTML、Css、Javascript、MySQL、PHP编写的网站,运行于Windows系统,连接数据库服务器,数据可视化操作,以及远程参数的设置。其总体框图,如图2-2所示。

数据接收部分利用TCP网络协议提供了与Internet 的标准接口,简化了ZigBee网络采集环境参数;数据处理则是室内甲醛监控系统上位机软件的核心部分,提供了友好的图形用户界面、直观展示网络拓扑结构、节点参数曲线对比,并提供手机安卓APP下载功能,用户通过下载手机APP,无论身在何处,即可时刻查询相关甲醛浓度数据,快捷方便,而在WEB服务器方面,则通过AppServ配置系统环境,搭建Apache WEB服务器,配置MySQL数据库以及PHP解释器[11]。选用PHP语言开发WEB服务器程序,连接数据库服务器,实现最新数据更新以及历史数据查询。

2.1.3 网关设计

ZigBee节点采集的数据要想通过GPRS网络上传至Internet远程服务器,实现ZigBee网络与互联网的数据互通,就必须用到网关。网关作为无线传感器网络的关键器件,其性能直接关系到整体系统的稳定性,实用性,健壮性。由于设计开发的网关针对的是数据传输量少的ZigBee网络,故接收环境参数可选用串口接口。网关接收ZigBee数据,解析处理后,经GPRS网络转发至Internet,因此网关兼具TCP/IP协议[12],方便数据网络转发。网关结构框图,如图2-3所示。

网关采用了重庆DQ电子的SIM900A开发板,此开发板集成了SIM900A GSM功能通信模块,各种接口如2.4G 模块接口等等,对于物联网的开发提供了很大的便利条件。开发板上使用的SIM900A模块设计成熟,市场使用率高,性能稳定可靠,其双频段适合在国内网络环境使用。SIM900A支持AT指令,包括短信,语音数据传输,同时内置TCP/IP协议,与Internet广域网无缝对接。

ZigBee协调器采用的是丘捷的ZigBee核心板和自主设计的底板。通过串口与32位单片机开发板相连实现数据传输。协调器在ZigBee无线网络中起组建网络,维护网络,网络管理的作用。

2.1.4 ZigBee无线传感器网络的设计

底层的ZigBee无线传感器网络由众多的ZigBee数据采集节点组成。节点采用TI公司的Zs-tack无线数据传输协议,实现自组网与数据传输。

ZigBee节点采用丘捷的基于cc2530的射频模块,底板为自主设计制作。

2.2 预期目标

根据作品要求,室内环境甲醛监控系统,需要实现以下功能:

(1) 设计上位机软件实现对种家居室内的实时环境监测数据进行实时查看,确保整个环境处于安全状态;并提供二维码生成功能,生成相应的二维码提供给消费者进行扫描,扫描后即可下载相应APP,通过手机查看实时参数。

(2) 开发WEB服务器,支持多客服端访问;

(3) sim900GPRS模块与ZigBee协调器构成硬件平台;

(4) 实现ZigBee底层节点组网,采集数据并上传;

(5) 实现ZigBee网络数据与GPRS网络、Internet信息交互;

(6) 系统的整体调试与测试。

2.3 小结

方案设计是设计系统的一个重要环节,将项目的任务规范化,列出所要完成的所有工作,在后期项目制作的时候可以极大提高效率,使得项目开发工作有条不紊,也可以让开发的成本降到最低,设计之初即考虑好各种硬件模块的性价比。

第三章上位机与WEB服务器设计

3.1上位机软件设计

作品上位机采用HTML、Css、Javascript、MySQL、PHP编写的网站,该上位机软件由数据接收,数据处理,数据管理三部分组成,并形成了前台信息展示和后台数据管理两大模块。数据接收部分利用TCP网络协议提供了与Internet 的标准接口,简化了ZigBee网络采集环境参数接收以及控制信息传递;数据处理则是系统上位机软件的核心部分,提供图形用户界面、直观展示节点参数曲线对比,并提供二维码生成功能,生成相应的二维码提供给消费者

进行扫描,扫描后即可生成连接,下载相应手机APP,随时随地查询家居环境甲醛浓度;数据保存部分主要针对数据保存查询处理等工作,亦可将数据导出为表格文件,方便对数据进行详细分析。试验结果表明:所开发的上位机软件具有良好的稳定性、完善的功能性和便捷的人机接口等优点,实现了对各种传感数据和系统数据的有效组织与管理。

3.1.1上位机总体概述

上位机监控软件由数据接收,数据处理,数据管理三个部分组成,并形成了前台信息展示、后台数据管理两大模块,同时每个模块即为一个单独的线程,确保监测系统健壮性;每个模块完成相应功能,相互联系。

数据处理部分为上位机核心部分,负责全部的可视化操作。上位机软件总体功能,如图3-1所示。

图3-1 系统整体框图

3.1.3功能模块

上位机软件由账户设置、实时数据显示、历史数据数查询,和设备管理功能模块组成四大功能模块。

(1)账户管理

账户管理是为用户提供的一个方便快捷的管理界面,包括基本功能用户名更改,登入密码更改,绑定QQ、邮箱等,其中最为重要的是API KEY生成功能,API KEY是该上位机平台识别底层设备的一个序号,通过该序号即可准确的识别室内不同房间,如卧室、厨房、客厅、卫生间等分布在不同地方的传感器。如图3-2所示为账户管理界面。

图3-2 账户管理界面

(2)实时数据显示

实时数据显示界面主要功能是显示当前时刻节点发送过来的数据,通过该数据可以实时查询室内甲醛浓度,方便快捷如图3-3所示。

图3-3 实时数据显示页面

(3)历史数据数查询

通过历史记录功能,用户可以查询前一个月内节点发送过来的数据,方便对大量的实测数据进行分析处理,如图3-4所示。

图3-4 历史数据数查询

(4)设备管理

设备管理又由增加新设备和对已注册设备进行管理两部分组成,用户可以随时在原有基础上增加新增添的传感器设备,并进行数据显示,方便对对设备同时进行管理,如图3-5所示。

图3-5 新增设备

设备管理界面主要功能就是对已加入设备进行详细的描述,具体包括设备名称、设备备注、标签、所在位置、经度纬度等,通过设备管理界面,用户可以清楚地知道自己所布置的传感器设备的所有信息,如图3-6所示。

图3-6 设备管理界面

数据保存采用MySQL数据库,MySQL是最流行的关系型数据库管理系统,它是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就提高了速度并增加了灵活性。MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。

上位机软件系统通过PHP技术针对网络上传的数据进行处理,导出存储在MySQL的数据并进行整合生成动态的曲线图,系统网络连接则显得尤为重要。网络数据处理技术主要任务是数据的接收,数据的解析。通过网关上传到服务器,存储到数据库中,利用数据库的数据,生成相应的折线图,将节点开始监

测的数据到当前监测的数据进行显示,使用户能实时观察到室内环境甲醛浓度信息,从而减少人工观测的复杂性和不确定性,如图3-7所示。

图3-7 环境甲醛浓度数据折线图

3.2 小结

本章主要介绍了上位机系统和WEB服务器的设计。软件作为无线传感器网络系统不可缺少的一部分,其设计也关系到整体系统的可行性。一般软件设计分模块设计,而且编写程序前绘制程序流程图,程序流程图相当于逻辑功能的设计,根据流程图编写程序,思路清晰、减小软件开发的周期。而WEB服务器的使用扩大了系统的应用范围,增加了用户数量,支持任何入网终端访问,提高了无线传感器网络的使用价值。

第四章网关数据收发软件设计网关是实现ZigBee网络与Internet网络相互连接的关键器件。网关设计主要包含三个部分:主处理程序,协调器驱动程序,GPRS模块驱动程序。软件的逻辑正确性,稳定性是系统实现的关键。

4.1硬件系统

4.1.1 SIM900A 开发板

网关采用了重庆DQ电子的SIM900A开发板,此开发板主要功能偏重于SIM900A通信模块的使用,同时具有2.4G 模块接口等,对于物联网的开发提供了很大的便利条件。开发板上使用的SIM900A模块是由SIMCOM公司制造的双频GSM功能模块,该模块设计相对成熟,市场使用率高,性能稳定可靠,其双频段适合在国内网络环境使用。SIM900A的主要功能有:语音通话、短信收发、GPRS网络数据收发(可无线透传)。

SIM900A 使用串口与外部控制设备相连接,使用标准和扩展AT指令集来控制模块,在使用上十分方便。SIM900A开发板可以完成短信收发,无线上网,TCP/UDP协议收发数据,SIM900A内部协议采用打包方式收发数据,进行打电

话与接电话功能,用户不必了解SIM900A模块的PCB板,只要熟悉模块的AT 指令系统,即可进行相应的应用开发,以缩短用户的研发周期。作为一个终端产品它内置了无线GSM/GPRS 通信模块,集成了标准的RS232接口以及SIM 卡,电源可以用5-12 V DC 也可以用USB 取电,可以用AT 命令通过串口对它进行设置。这使它在声音和数据通讯上成为一个通用的GSM/GPRS 三频终端产品。SIM900A功能模块现在应用非常广泛,像在物流追踪、实时监控、远程数据交互等诸多无线通讯领域都非常适用。

4.1.2 协调器

ZigBee协调器采用的是我们自主设计的底板。协调器通过串口与SIM900A 相连,配对串口波特率实现数据传输。协调器在ZigBee无线网络中起组建网络,维护网络,网络管理的作用,协调器如图4-1所示。

图4-1 协调器硬件图

协调器射频模块核心处理芯片是CC2530,CC2530是用于 2.4-GHz IEEE 802.15.4、ZigBee和RF4CE应用的一个真正的片上系统(Soc)解决方案。它能够以非常低的材料成本建立强大的网络节点。CC2530 结合了领先的RF 收发器的优良性能,业界标准的增强型8051 CPU,系统内可编程闪存,8-KB RAM 和许多其它强大的功能。CC2530 有四种不同的闪存版本:CC2530F32/64/128/256,分别具有32/64/128/256KB 的闪存。CC2530 具有不同的运行模式,使得它尤其适应超低功耗要求的系统。运行模式之间的转换时间短进一步确保了低能源消耗[14]。

4.2 软件系统

4.2.1 GPRS模块程序设计

GPRS模块在无线网关设计中起到了至关重要的作用,利用SIM900A模块内置的TCP/IP协议,设计了TCP的客户端,系统启动即绑定上位机客户端。GPRS模块程序流程图如图4-2所示。

图4-2 GPRS程序控制流程图

按照上图发送的命令顺序,在每条命令收到确认信息后接着发送下一条指令,需要注意的是最后在输入发送数据之前收到的是“>”字符,而不是OK字样。

根据SIM900A自带的指令完成网络(TCP)数据的转发。

发送的命令格式和顺序为:

(1) AT+CIPCSGP=1,"cmnet"

CMNET是China Mobile Net的缩写,它是中国移动GPRS网络的接入点的名称(Access Point Name,缩写APN),通过CMNET可以获得完全的Internet 访问权,并且提供NAT服务。CMNET、CMWAP都是手机上网使用的接入点的名称。通过CMNET可以获得完全的Internet访问权,通过CMWAP只能访问WAP网站,不过CMWAP使用HTTP代理协议和WAP网关协议可以访问到Internet,而CMNET则适用于所有协议,它也是标准的TCP/IP协议[15]。

(2) AT+CLPORT="TCP","3028"//端口号可以随便设置

(3) AT+CSTT //开始工作

(4) AT+CIICR //激活GPRS连接

(5) AT+CIFSR //查看梦网分配的内网IP

(6) AT+CIPSTART="TCP","222.73.22.204","8080" //连接远端接收端

其中222.73.22.204为上位机的公网IP地址,8080为连接所用端口号。(其中上位机的IP地址必须是外网IP才能接收SIM900A发过来的数据,外网IP可以通过手机USB上网获得;若是内网,则还需要设置路由转发规则[没有试验过])CONNECT OK //连接成功返回connect OK字样。

(7) AT+CIPSEND //启动发送> Hello every one!(待发送内容)

0x1a(发送内容必须是0x1a结尾),返回SEND OK //发送成功

senddata(QByteArray)为发送函数,具体实现SIM900A控制与数据的转发。

void Widget::senddata(QByteArray datastr)

{

Initsenddata(); //发送AT+CIPSEND之前的命令

SendCMD(_CIPSEND); //发送AT+CIPSEND

SIM900A->write(datastr);

char ch[1];

ch[0]=0x1a;

SIM900A->write(ch,1); //发送回车

//SIM900A->write(0x1a);

}

相关主题