基于Arduino空气质量检测器开发.docx
《基于Arduino空气质量检测器开发.docx》由会员分享,可在线阅读,更多相关《基于Arduino空气质量检测器开发.docx(46页珍藏版)》请在冰豆网上搜索。
基于Arduino空气质量检测器开发
2015网络工程学年设计
题目:
基于Arduino空气质量检测器开发
系别:
电子信息工程学院
班级:
2011级网络工程(物联网技术方向)
学号:
XX:
指导教师:
起讫日期:
基于Android空气质量检测器开发
摘要:
空气环境(温度、湿度、污染物等)是人类生存的自然环境的重要组成部分,也是人类生存、发展的基本物质基础。
随着科学技术、生产条件、生活水平的改善和提高,建筑结构的封闭化室办公人员的增加,IndoorAirQuality(IAQ)室空气品质的研究吸引了越来越多人的关注。
人的一生有三分之二的时间在室度过的。
本文为了便于设计和测量,选取了DHT11数字温湿度传感器和DSM501灰尘传感器(可按需要自由添加其他传感器),研究设计了一种旨在实现室空气温度、湿度、有害气体的监测的空气检测器系统。
其设计方案基于Arduino单片机,相关传感器来实现。
将传感器回路输出的信号经由Arduino单片机进行数据处理,由LCD1602点阵式液晶屏显示数值。
文中详细介绍了数据采集子系统、数据处理过程、数据显示子系统以及单片机与PC机通信的设计方法和过程。
关键词:
室空气品质、DHT11数字温湿度传感器、DSM501灰尘传感器、Arduino单片机目录
第一章绪论
随着科学技术、生产条件、生活水平的改善和提高,建筑结构的封闭化室办公人员的增加,IndoorAirQuality(IAQ)室空气品质的研究吸引了越来越多人的关注。
美国科学家在80年代末的一项调查中发现,室有害污染物浓度比室外高,有的甚至高达100倍。
我国有关部门在1994年的一次调查中也发现,城市室空气的污染程度比室外严重,有的超过室外56倍。
据估计,人的一生平均90%的时间在室度过,室作为现代人类最主要的活动场所之一,其环境品质与人类健康息息相关。
由此造成的病态建筑综合症(SBS-SickBuildingSyndrome):
现代都市病,包括头痛、恶心疲乏、失眠、记忆力衰退皮肤、粘膜有刺激感(眼红、流泪、咽干)呼吸紊乱等也越来越突出。
IAQ在健康方面的影响:
美国环保署(EPA)调查表明:
在美国,IAQ问题是有关全民健康的首要问题之一,受其影响的美国人口多达3000万,造成的经济损失超过了400亿美元/年,这些数字令人触目惊心;加拿大卫生组织调查表明:
68%的疾病与室环境污染有关,其中80%~90%的癌症与居住环境和生活习惯有关;英国科学家汉密尔顿测验了220名英国人血液中60种化学元素的平均含量,发现其与地壳中这些元素的含量分布相当;省相关部门对空气污染区及清洁区9-10岁儿童为调查对象,研究空气污染对儿童免疫力的影响,结果显示:
污染区儿童的免疫能力仅为清洁区儿童免疫能力的1/3;据统计,我国每年有11万人因IAQ不好而导致死亡;从我国“室环境监测中心”对IAQ监测力度越来越大的趋势也可以看出,此问题在我国也是越来越严重。
IAQ在工作效率及社会经济方面的影响:
美国“职业安全及健康管理局”估计因室环境质量恶劣而导致每个员工每天损失14-15分钟的工作时间,不仅损失了生产力,使成本上升,而且也导致医疗费用的增多影响整个社会的经济利益;美国的另一项调查得知由于IAQ恶劣而导致总经济成本的损失每年高达47-54亿美元(没有包括对建筑材料及各种器材的损失);环保署的首份IAQ调查表明办公室和公共场所的IAQ不佳,造成医疗费、生产力和机电费的损失每年高达176亿元。
鉴于此,人们认识到解决IAQ问题的重要性与迫切性,同时IAQ问题已经成为建筑环境、医药卫生、智能监测、自动控制等研究领域所关心的问题。
1.1选题背景与意义
目前由于建筑材料品质不一、劣质燃料、抽烟、通风不良等原因,室的空气状况往往不如室外,尽管大量的空调系统被应用到室空间,但往往为了节能,减少自然通风了而利用回风,使IAQ进一步恶化,同时出现的舒适性空调仅着眼于热舒适,忽视了空气净化,从而导致了一些负面作用:
SBS(SickBuildingSyndrom)建筑物综合症、BRI(BuildingRolatedIlliness)建筑物关联症和MCS(MultipleChemicalSensitivity)化学物资过敏症等。
随着人们对IAQ认识程度的加深,以及健康保健知识的发展,人们不仅希望知道是什么污染物在作怪,更希望知道污染的浓度水平如何?
这种浓度会对健康造成什么短期和长期危害?
对存在的污染应该如何控制治理?
在这种情况下,设计开发一套空气质量监测系统是有现实意义的。
目前,对于室环境监测具仪表已经有很多种,虽然此类仪表成本不是很高,监测速度较快,但是绝大数产品只是用来监测,不具备自动控制调节室空气质量的能力。
实际上,单纯的监测不能提供经济可行的空气质量调节措施,因此只有以控制作为监测的后备支持,监测工作才可以更深入持久地开展下去,才能达到监测和控制的有机结合,尽快为人们创造良好的室环境。
因此,本文基于量化监测,提出“空气质量检测器”系统,此系统旨在实现室空气温度、湿度、有害气体的预警监测,为人类营造一个健康的室生存空间。
1.2与本课题相关的国外研究状况
气体传感器测定粉尘成为近年来粉尘检测研究的新热点。
早在1983年,压电类粉尘传感器就已问世。
这种传感器可以不需要对样品进行任何处理就可以测定,但易受水分子的影响而使晶体震动频率发生漂移,故基本无实用性。
为适应室空气粉尘现场快速检测的要求,目前已开发出不少粉尘快速测定仪,这些仪器可直接在现场测定粉尘浓度,操作方便,适用于室和公共场所空气中粉尘浓度的现场测定,也适用于环境测试舱法测定木质板材中的粉尘释放量。
但这些仪器的工作原理、响应性能、适应围等都不同。
在测试粉尘等有害气体方面,国外比较出名的有:
美国ESC公司生产的Z一300粉尘检测仪、英国PPM公司生产的PPM-400粉尘检测仪;国的有:
安普电子工程生产的400型粉尘分析仪、宾达绿创科技生产的粉尘测定仪抑一308等。
这些仪器可实现对有害气体的检测功能,适用于专业检测机构或实验研究机构。
准确测定粉尘、苯、氨等有害气体的设备昂贵(如英国PPM公司生产的PPM400粉尘仪约两万多元),测定时间较长,每隔一段时间就需进行重新标定,需要专业人员进行操作,很难连续测定;目前国外产品的设计差异主要集中在监测传感器和控制单片机芯片的选用,操作方面国外的产品操作界面方便,功能更加完备。
1.3主要研究容
本课题主要集中在空气质量的监测、显示两个方面:
(1)确定监测对象
(2)室空气品质监测仪的各个硬件模块的设计
(3)室空气品质监测仪的各个软件模块的设计
(4)整个系统的仿真调试
(5)总结本文研究工作以及在研究方面存在的不足,提出了进一步研究的展望
第二章运行环境、硬件选取及技术简介
2.1系统运行环境
运行环境如表2-1所示。
表2-1运行环境
名称
要求配置
操作系统
WindowsXP/win7/win8
数据库服务器
MySQL
Android系统
Android2.3.3以上
开发平台
Eclipse、ArduinoUNO开发平台
2.2系统开发环境
本系统是基于Arduino开发平台开发的。
系统中数据服务中心采用的数据库是MySQL。
系统主要以Eclipse为开发工具,运用Java、Android等技术进行开发,开发环境如表2-2所示
表2-2开发环境
分类
名称
版本
语种
开发平台
Arduino
1.5.6-r2
中文
操作系统
Windows
XP/win7/win8
中文
编译器
JavaDevelopmentKit(JDK)
jdk1.7.0_07
英文
数据库
MySQL
5.5
英文
Android客户端开发工具
Eclipse
eclipse-java-juno-SR1-win32
英文
AndroidOS
AndroidforGoogleAPIs
(GoogleInc)
Android2.2.3以上
英文
2.3硬件选取
2.3.1Arduino开发平台
本系统是基于Arduino开发平台开发的。
实物图如图2-1所示。
图2-1ArduinoUNO
2.3.2传感器模块
温湿度传感器模块
温湿度传感器是指能将温度量和湿度量转换成容易被测量处理的电信号的设备或装置。
温湿度传感器一般是测量温度量和相对湿度量。
鉴于测量温湿度的围不大,精度要求不高故采用数字温湿度传感器DHT11。
具体实物图如图2-2所示:
图2-2DHT11数字温湿度传感器
具有的特性:
相对湿度和温度测量、全部校准,数字输出、卓越的长期稳定性、无需额外部件、超长的信号传输距离、超低能耗、4引脚安装、完全互换。
DHT11产品概述
DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。
它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。
传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。
因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。
每个DHT11传感器都在极为精确的湿度校验室中进行校准。
校准系数以程序的形式储存在OTP存中,传感器部在检测信号的处理过程中要调用这些校准系数。
单线制串行接口,使系统集成变得简易快捷。
超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。
产品为4针单排引脚封装。
连接方便,特殊封装形式可根据用户需求而提供。
应用领域:
暖通空调、测试及检测设备、汽车、数据记录器、消费品、自动控制、气象站、家电、湿度调节器、医疗、除湿器。
传感器信息见表2-3:
表2-3DHT11传感器信息
型号
测量围
测湿精度
测温精度
分辨力
封装
DHT11
20-90%RH0-50℃
±5%RH
±2℃
1
4针单排直插
1、传感器性能说明见表2-4:
表2-4传感器性能说明
参数
条件
Min
Typ
Max
单位
湿度
分辨率
1
1
1
%RH
16
Bit
重复性
±1
%RH
精度
25℃
±4
%RH
0-50℃
±5
%RH
互换性
可完全互换
量程围
0℃
30
90
%RH
25℃
20
90
%RH
50℃
20
80
%RH
响应时间
1/e(63%)25℃,1m/s空气
6
10
15
S
迟滞
±1
%RH
长期稳定性
典型值
±1
%RH/yr
温度
分辨率
1
1
1
℃
16
16
16
Bit
重复性
±1
℃
精度
±1
±2
℃
量程围
0
50
℃
响应时间
1/e(63%)
6
30
S
2、接口说明
建议连接线长度短于20米时用5K上拉电阻,大于20米时根据实际情况使用合适的上拉电阻接线方式如图2-3:
图2-3典型接线电路
3、电源引脚
DHT11的供电电压为3-5.5V。
传感器上电后,要等待1s以越过不稳定状态在此期间无需发送任何指令。
电源引脚(VDD,GND)之间可增加一个100nF的电容,用以去耦滤波。
4、串行接口(单线双向)
DATA用于微处理器与DHT11之间的通讯和同步,采用单总线数据格式,一次通讯时间4ms左右,数据分小数部分和整数部分,具体格式在下面说明,当前小数部分用于以后扩展,现读出为零.操作流程如下:
一次完整的数据传输为40bit,高位先出。
数据格式:
8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit温度小数数据+8bit校验和
数据传送正确时校验和数据等于“8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit温度小数数据”所得结果的末8位。
用户MCU发送一次开始信号后,DHT11从低功耗模式转换到高速模式,等待主机开始信号结束后,DHT11发送响应信号,送出40bit的数据,并触发一次信号采集,用户可选择读取部分数据。
从模式下,DHT11接收到开始信号触发一次温湿度采集,如果没有接收到主机发送开始信号,DHT11不会主动进行温湿度采集,采集数据后转换到低速模式。
(1).通讯过程如图2-4所示
图2-4通讯过程
操作时序如图2-5,总线空闲状态为高电平,主机把总线拉低等待DHT11响应,主机把总线拉低必须大于18毫秒,保证DHT11能检测到起始信号。
DHT11接收到主机的开始信号后,等待主机开始信号结束,然后发送80us低电平响应信号。
主机发送开始信号结束后,延时等待20-40us后,读取DHT11的响应信号,主机发送开始信号后,可以切换到输入模式,或者输出高电平均可,总线由上拉电阻拉高。
图2-5操作时序
总线为低电平,说明DHT11发送响应信号,DHT11发送响应信号后,再把总线拉高80us,准备发送数据,每一bit数据都以50us低电平时隙开始,高电平的长短定了数据位是0还是1。
格式见下面图示,如果读取响应信号为高电平,则DHT11没有响应,请检查线路是否连接正常。
当最后一bit数据传送完毕后,DHT11拉低总线50us,随后总线由上拉电阻拉高进入空闲状态。
数字0信号表示方法如图2-6所示
图2-6数字0信号表示方法
数字1信号表示方法如图2-7所示
图2-7数字1信号表示方法
5、测量分辨率
测量分辨率分别为8bit(温度)、8bit(湿度)。
6、电气特性如表2-5
表2-5电气特性
参数
条件
min
typ
max
单位
供电
DC
3
5
5.5
V
供电电流
测量
0.5
2.5
mA
平均
0.2
1
mA
待机
100
150
uA
采样周期
秒
1
次
注:
采样周期间隔不得低于1秒钟。
7、应用信息
7.1工作与贮存条件
超出建议的工作围可能导致高达3%RH的临时性漂移信号。
返回正常工作条后,传感器会缓慢地向校准状态恢复。
要加速恢复进程/可参阅7.3小节的“恢复处理”。
在非正常工作条件下长时间使用会加速产品的老化过程。
7.2暴露在化学物质中
电阻式湿度传感器的感应层会受到化学蒸汽的干扰,化学物质在感应层中的扩散可能导致测量值漂移和灵敏度下降。
在一个纯净的环境中,污染物质会缓慢地释放出去。
下文所述的恢复处理将加速实现这一过程。
高浓度的化学污染会导致传感器感应层的彻底损坏。
7.3恢复处理
置于极限工作条件下或化学蒸汽中的传感器,通过如下处理程序,可使其恢复到校准时的状态。
在50-60℃和<10%RH的湿度条件下保持2小时(烘干);随后在20-30℃和>70%RH的湿度条件下保持5小时以上。
7.4温度影响
气体的相对湿度,在很大程度上依赖于温度。
因此在测量湿度时,应尽可能保证湿度传感器在同一温度下工作。
如果与释放热量的电子元件共用一个印刷线路板,在安装时应尽可能将DHT11远离电子元件,并安装在热源下方,同时保持外壳的良好通风。
为降低热传导,DHT11与印刷电路板其它部分的铜镀层应尽可能最小,并在两者之间留出一道缝隙。
7.5光线
长时间暴露在太下或强烈的紫外线辐射中,会使性能降低。
7.6配线注意事项
DATA信号线材质量会影响通讯距离和通讯质量,推荐使用高质量屏蔽线。
8、封装信息如图2-8,
图2-8DHT11封装图
9、DHT11引脚说明见表2-6。
表2-6引脚说明
Pin
名称
注释
1
VDD
供电3-5.5VDC
2
DATA
串行数据,单总线
3
NC
空脚,请悬空
4
GND
接地,电源负极
本设计采用的为DHT11模块,原理图为图2-9:
图2-9DHT11模块接线图
粉尘传感器模块
灰尘传感器DSM501可以感知烟草产生的烟气和花粉,房屋粉尘等,加热自动进气装置,可调电阻设置检测灰尘的大小。
采用与粒子计算器相同原理为基础,检测出单位体积粒子的绝对个数。
具体实物图如图2-10所示:
图2-10灰尘传感器DSM501
灰尘传感器DSM501主要特性:
●灰尘传感器DSM501可以感知烟草产生的烟气和花粉,房屋粉尘等 ;
●1微米以上的微小粒子;
●体积小,重量轻,便于安装;
●5V的输入电路,便于信号处理;
●藏气流发生器,可以自行吸引外部大气;
●保养简单,可以长期保持传感器的特性。
电器参数如图2-11所示:
图2-11电气参数
输出波形PWM如图2-12所示:
图2-12低脉冲率:
RT=LT/UTx100%
特性曲线如图2-13所示:
:
图2-13特性曲线
原理结构图如图2-14所示:
图2-14
引脚说明如图2-15所示:
1、输出脚Vout2:
此脚位为普通输出脚位,灵敏度已预设定,最小粒子检出能力为1μm;
2、输出脚Vout1:
此脚位为可调输出脚位,灵敏度可通过控制脚来调整,默认为Vout2的2.5倍即最小粒子检出能力为2.5μm;
3、控制脚:
通过在此脚与GND之间加一个电阻可调整Vout1的最小粒子检出水平,调整电阻值可调整Vout1的灵敏度。
图2-15
蓝牙模块
在蓝牙模块的采集上采用HC-05主从一体机蓝牙,HC-05嵌入式蓝牙串口通讯模块具有两种工作模式:
命令响应工作模式和自动连接工作模式,在自动连接工作模式下模块又可分为主(Master)、从(Slave)和回环(Loopback)三种工作角色。
当模块处于自动连接工作模式时,将自动根据事先设定的方式连接的数据传输;当模块处于命令响应工作模式时能执行下述所有AT命令,用户可向模块发送各种AT指令,为模块设定控制参数或发布控制命令。
通过控制模块外部引脚(PIO11)输入电平,可以实现模块工作状态的动态转换。
具体实物图如图2-16所示:
图2-16HC-05主从一体机蓝牙
液晶显示模块
本课题所要显示的数据分别是粉尘浓度和室的温度、湿度的测量值,故选用2行16个字符的LCD1602作为显示模块,满足显示要求。
液晶显示模块具有体积小、功耗低、显示容丰富等特点,现在字符型液晶显示模块已经是单片机应用设计中最常用的信息显示器件了。
字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16*1,16*2,20*2和40*2行等的模块。
下面以太阳人电子的1602字符型液晶显示器为例,介绍其用法。
一般1602字符型液晶显示器实物如图2-17:
图2-171602字符型液晶显示器实物图
LCD1602的基本参数及引脚功能
1602LCD分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别,两者尺寸差别如下图2-18所示:
图2-181602LCD尺寸图
1602LCD主要技术参数:
显示容量:
16x2个字符芯片
工作电压:
4.5V—5.5V
工作电流:
2.0Ma(5V)
模块儿最佳工作电压:
5.0V
字符尺寸:
2.95×4.35(W×H)mm
引脚功能说明:
1602LCD采用标准的14脚(无背光)或16脚(有背光)接口,各引脚说明如表2-7所示:
表2-71602引脚说明
编号
符号
引脚说明
编号
符号
引脚说明
1
VSS
电源地
9
D2
数据
2
VDD
电源正极
10
D3
数据
3
VL
液晶显示偏压
11
D4
数据
4
RS
数据/命令选择
12
D5
数据
5
R/W
读/写选择
13
D6
数据
6
E
使能信号
14
D7
数据
7
D0
数据
15
BLA
背光源正极
8
D1
数据
16
BLK
背光源负极
第1脚:
VSS为地电源。
第2脚:
VDD接+5V正电源。
第3脚:
VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。
第4脚:
PS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
第5脚:
R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。
当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。
第6脚:
E端为使能端,当E端由高电平跳变成低电平时,夜景模块执行命令。
第7~14脚:
D0~D7为八位双向数据线。
第15脚:
背光源正极。
第16脚:
背光源负极。
LCD1602的指令说明及时序
1602液晶模块部的控制器共有11条控制指令,如表2-8所示:
表2-8控制命令表
序号
指令
RS
R/W
D7
D6
D5
D4
D3
D2
D1
D0
1
清显示
0
0
0
0
0
0
0
0
0
1
2
光标返回
0
0
0
0
0
0
0
0
1
*
3
置输入模式
0
0
0
0
0
0
0
1
I/D
S
4
显示开/关控制
0
0
0
0
0
0
1
D
C
B
5
光标或字符移位
0
0
0
0
0
1
S/C
R/L
*
*
6
置功能
0
0
0
0
1
DL
N
F
*
*
7
置字符发生存贮器地址
0
0
0
1
字符发生存贮器地址
8
置数据存贮器地址
0
0
1
显示数据存贮器地址
9
读忙标志或地址
0
1
BF
计数器地址
10
写数到CGRAM或DDRAM
1
0
要写的数据容
11
从CGRAM或DDRAM读数
1
1
读出的数据容
1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。
(说明:
1为高电平、0为低电平)
指令1:
清显示,指令码01H,光标复位到地址00H位置。
指令2:
光标复位,光标返回到地址00H。
指令3:
光标和显示模式设置I/D:
光标移动方向,高电平右移,低电平左移S:
屏幕上所有文字是否左移或者右移。
高电平表示有效,低电平则无效。
指令4:
显示开关控制。
D:
控制整体显示的开与关,高电平表示开显示,低电平表示关显示C:
控制光标的开与关,高电平表示有光标,低电平表示无光标B:
控制光标是否闪烁,高电平闪烁,低电平不闪烁。
指令5:
光标或显示移位S/C:
高电平时移动显示的文字,低电平时移动光标。
指令6:
功能设置命令DL:
高电平时为4位总线,低电平时为8位总线N:
低电平时为单行显示,高电平时双行显示F:
低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。
指令7:
字符发生器RAM地址设置。
指令8:
DDRAM地址设置。
指令9:
读忙信号和光标地址BF:
为忙标志位,高电平表示忙