空气质量检测装置

功能介绍

本项目主要是实现基本的空气质量检测功能:

  1. PM2.5指数
  2. 空气质量指数
  3. 空气湿度
  4. 空气温度

准备材料

  • Arduino UNO *1
  • LCD 5110 *1
  • DHT11温湿度传感器 *1
  • MQ135空气质量检测模块 *1
  • PM2.5粉尘检测传感器(GP2Y1010AU0F) *1
  • 150欧电阻 *1
  • 220uF电解电容 *1
  • 面包板 *1
  • 跳线若干
就不给出购买链接了,这些材料在某宝上随便一搜就有~

模块接线

  • LCD 5110与Arduino

LCD 5110 Arduino
RST -> 11
CE -> 12
DC -> 10
DIN -> 9
CLK -> 8
VCC -> 5V
BL -> GND
GND -> GND
  • PM2.5粉尘检测传感器与Arduino

GP2Y1010AU0F Arduino
1 150欧电阻 5V
1 220uF电解电容 GND
2 -> GND
3 -> 2
4 -> GND
5 -> A0
6 -> 5V
  • MQ135空气质量检测模块与Arduino

MQ135 Arduino
VCC -> 5V
AOUT -> A1
GND -> GND
  • DHT11温湿度传感器与Arduino

DHT11 Arduino
GND -> GND
VCC -> 5V
OUT -> 5

第三方库

#include <dht.h>
#include <LCD5110_Basic.h>
#include "MQ135.h"

下载地址:

  • dht.h->https://arduino-info.wikispaces.com/file/view/DHT-lib.zip/545470280/DHT-lib.zip
  • LCD5110_Basic.h->http://www.rinkydinkelectronics.com/download.php?f=LCD5110_Basic.zip
  • MQ135.h-> https://codeload.github.com/GeorgK/MQ135/zip/master

如果不知道如何手动加载库文件,或者不知道怎么使用库,请参考我之前写的基础教程:

  • 【Arduino基础教程】LCD5110显示屏
  • 【Arduino基础教程】DHT11温湿度传感器
  • 【Arduino基础教程】MQ135空气质量检测模块

源程序

#include <dht.h>
#include <LCD5110_Basic.h>
#include "MQ135.h"//空气质量
MQ135 gasSensor = MQ135(1);//LCD5110
LCD5110 myGLCD(8,9,10,11,12);
extern uint8_t SmallFont[];
extern uint8_t MediumNumbers[];
extern uint8_t BigNumbers[];//温湿度
dht DHT;
#define DHT11_PIN 5//PM2.5
int dustPin=0;
float dustVal=0;
int ledPower=2;
int delayTime=280;
int delayTime2=40;
float offTime=9680;
float a=0;
String s0 = " ";
String s1 = " ";
String s2 = " ";
String s3 = " ";void setup()
{Serial.begin(115200);pinMode(ledPower,OUTPUT);pinMode(dustPin, INPUT);myGLCD.InitLCD(); //Intializing LCDmyGLCD.setContrast(55);
}void pm25(){digitalWrite(ledPower,LOW); delayMicroseconds(delayTime);dustVal=analogRead(dustPin); delayMicroseconds(delayTime2);digitalWrite(ledPower,HIGH); delayMicroseconds(offTime);if (dustVal>36.455)a = (float(dustVal/1024)-0.0356)*120000*0.035;s0 = String("PM2.5: "+String(a));myGLCD.setFont(SmallFont);myGLCD.print(s0,0,8);
}void ht(){Serial.print("DHT11, \t");int chk = DHT.read11(DHT11_PIN);switch (chk){case DHTLIB_OK:  Serial.print("OK,\t"); break;case DHTLIB_ERROR_CHECKSUM: Serial.print("Checksum error,\t"); break;case DHTLIB_ERROR_TIMEOUT: Serial.print("Time out error,\t"); break;case DHTLIB_ERROR_CONNECT:Serial.print("Connect error,\t");break;case DHTLIB_ERROR_ACK_L:Serial.print("Ack Low error,\t");break;case DHTLIB_ERROR_ACK_H:Serial.print("Ack High error,\t");break;default: Serial.print("Unknown error,\t"); break;}// DISPLAY DATASerial.print(DHT.humidity, 1);Serial.print(",\t");Serial.println(DHT.temperature, 1);myGLCD.setFont(SmallFont);s1 = String("H : " + String(int(DHT.humidity)) + " %");myGLCD.print(s1,0,24);myGLCD.setFont(SmallFont);s2 = String("T : " + String(int(DHT.temperature))+" C");myGLCD.print(s2,0,32);}void ppm(){float ppm = gasSensor.getPPM();s3 = String("Air: " + String(ppm)+"ppm");myGLCD.print(s3,0,16);}void loop(){ myGLCD.setFont(SmallFont);myGLCD.print("Hello World",CENTER,0);pm25();ht();ppm();delay(2000);myGLCD.clrScr();
}

源程序下载地址:https://github.com/wwwxmu/ArduinoAirQuality


附:测试得到的数据和空气质量对照:

3000 + = 很差
1050-3000 = 差
300-1050 = 一般
150-300 = 好
75-150 = 很好
0-75 = 非常好

附:室内空气质量对照表

室内空气质量对照表

【Arduino综合项目】空气质量检测装置相关推荐

  1. 基于 STM32 空气质量检测装置设计

    一.毕业设计的背景和依据 现在,人们大约一半的时间是在室内度过的,室内空气质量与我们每个人的工作和生活 都息息相关,因此对生活环境的空气质量提出了更高的要求.针对雾霾.室内装修等污染问 题,人们还没有 ...

  2. arduino智能闹钟_【Arduino综合项目】小闹钟

    小闹钟项目 在额济纳支教这一年,给孩子们上了很多Arduino开发的课,也带他们完成了几个Arduino综合项目,下面陆续把这些小项目放上来,欢迎围观~~~非科班出身,C语言学的不好,望各路大神批评指 ...

  3. python爬空气污染实时数据_python数据分析综合项目--空气质量指数分析

    项目背景 近年来,我国的环境问题比较严重,很多城市出现了雾霾天气,当然也有很多城市空气依旧清新,为了研究具体的空气环境城市分布,我们采用了假设检验以及线性回归的思想对AQI(空气质量指数)进行分析和预 ...

  4. 使用Arduino和CCS811空气质量传感器进行TVOC和CO2测量

    "可悲的是,我们以进步的名义,污染了空气.水.土壤和我们吃的食物".因此,由于各种污染,现在监测空气质量至关重要.为设计空气质量监测系统,我们需要一些耐用可靠的空气质量传感器.虽然 ...

  5. arduino读取水位传感器的数据显示在基于i2c的1602a上_构建Arduino的LoRa远程智能空气质量监测系统...

    背景知识视频教程 Arduino分步指南:完整指南 - 国外课栈​viadean.com Arduino微控制器:学习Arduino制作项目 - 国外课栈​viadean.com 通过构建实际应用程序 ...

  6. Arduino空气质量监测仪

    Arduino空气质量监测仪 介绍 组件耗材 项目描述 电路图 代码 附件 介绍 DIY Arduino空气质量监测器可以测量周围的空气质量,还可以显示您房间的温度和湿度. 组件耗材 元件名 数量 空 ...

  7. 一个简单的空气质量数据监测站项目

    大气质量数据监测站用于测试空气质量监测及数据采集,实现野外或者室内空气质量的检测.并通过网络将数据上传到OneNet​显示.​ 1.项目概述 本项目是一个定制项目,要求采集大气的压力.温度.湿度.PM ...

  8. OneNET麒麟座应用开发之十:空气质量数据监测站项目总结

    大气质量数据监测站用于测试空气质量监测及数据采集,实现野外或者室内空气质量的检测. 1.项目概述 本项目是一个定制项目,要求采集大气的压力.温度.湿度.PM25.位置等数据并上传到指定的后台服务器.但 ...

  9. 【PBL项目实战】户外智慧农场项目实战系列——7.Mind+Mixly双平台工业级多合一空气质量传感器数据上云及云端可视化展示

    [PBL项目实战]户外智慧农场项目实战系列--7.Mind+Mixly双平台工业级多合一空气质量传感器数据上云及云端可视化展示 原文链接  https://mp.weixin.qq.com/s/ZEU ...

最新文章

  1. PDD面试题:new一个对象的过程中发生了什么?
  2. mysql 清空row_MySQL_TRUNCATE_清空table里的记录
  3. jQuery样式操作
  4. mysql中的联结_MySQL的联结(Join)语法
  5. LintCode初级题——fizz buzz
  6. php结构的项目,ThinkPHP修改项目结构
  7. 8天玩转并行开发——第二天 Task的使用
  8. 台达EH3系列PLC进行MODBUS RTU通信的具体方法和步骤(非常详细)
  9. 【程序源代码】微信小程序开发视频(2021年最新版本)
  10. 飞鸽传书2007绿色版还需要遵循些基本的原则
  11. Zstack协议栈中CC2530协调器掉电重启后重新加入之前网络的方法
  12. 十五、分布式相关理论
  13. 逆向分析系列——查壳侦壳工具
  14. 摄影的工作原理:相机,镜头等
  15. java 持久监听blockqueue的变化_Curator目录监听
  16. 团队的强大不在于人强马壮,而在于有效管理
  17. OGC服务标准(地图资料篇.3)
  18. OpenGL---GLUT教程(四) GLUT动画
  19. 微信小程序集成实时音视频通话功能
  20. GGNMOS ESD保护器件

热门文章

  1. Python按销量爬取淘宝医用口罩前三页导入Excel并生成柱状图
  2. FPGA udp纯逻辑编写,Xilinx ise14.7平台,工程验证千兆无丢包 加200k128通道采集
  3. 绘制游戏中的网状能力图
  4. 伽利略是怎么发现自由落体定律的?
  5. 『MySQL』行号关联查询
  6. Android安卓原生接支付宝支付PHP服务端SDK
  7. 从“码农”说起——软件工程师
  8. 看完我想说一句卧槽的“单例模式”
  9. 弹球小游戏(Java)
  10. AT指令集 CREG、CGREG、CEREG