0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于Arduino的CCS811空气质量传感器来检测TVOC和CO2

科技观察员 来源:circuitdigest 作者:潘卡伊·卡特里 2022-11-16 17:42 次阅读

“可悲的是,以进步的名义,我们污染了空气、水、土壤和我们吃的食物”。因此,由于污染,现在监测空气质量非常重要。为了设计空气质量监测系统,我们需要耐用可靠的空气质量传感器。虽然空气质量参数很多,但最重要的是二氧化碳和TVOC。因此,为了检测二氧化碳和TVOC,我们使用CCS811空气质量传感器。

在本教程中,我们将向您展示如何使用带有Arduino的CCS811空气质量传感器来检测TVOC和CO2。此外,您还将学习将CSS811与Arduino连接。

所需材料

Arduino UNO

CCS811 空气质量传感器

电位器 (10k)

液晶屏 16*2

面包板

连接线

电路图

pYYBAGN0sG6AaiBMAACrR1PG_1E381.png

CCS811 空气质量传感器

CCS811空气质量传感器是一款超低功耗数字气体传感器,它集成了MOX(金属氧化物)气体传感器,可通过集成MCU微控制器单元)检测各种VOC(挥发性有机化合物),以进行室内空气质量监测。MCU由ADC模数转换器)和I2C接口组成。它基于艾迈斯半导体独特的微加热板技术,可为气体传感器提供高度可靠的低功耗解决方案。

poYBAGN0sHCAKe2wAACdAqY-yW0857.jpg

在我们的电路中,我们使用这种传感器来检测环境中可用的TVOC和CO2,并在16 * 2 LCD上显示数据。

引脚配置

引脚编号 引脚名称 描述
1 输入电源(3.3V至5V)
2 3V3 3.3V输出引脚供外部使用
3 格德
4 自主权评估 这是 I2C 时钟引脚
5 标准及校正实验所 I2C 数据引脚
6 唤醒 传感器的唤醒引脚,应接地以便与传感器通信
7 RST 复位引脚:接地时,传感器自行复位
8 国际 这是中断输出引脚,用于检测新读数何时准备就绪或读数何时过高或过低

应用

智能手机

可穿戴设备

家庭和楼宇自动化

辅料

#include
#include "Adafruit_CCS811.h"
下面我们定义了用于将16 * 2 LCD与Arduino连接的引脚。

LiquidCrystal lcd(12, 13, 8, 9, 10, 11); /// REGISTER SELECT PIN,ENABLE PIN,D4 PIN,D5 PIN, D6 PIN, D7 PIN
Adafruit_CCS811 ccs;
下面我们设置了LCD和CCS811空气质量传感器,并将其校准为显示正确的温度,如下面的代码所示,

void setup() {
lcd.begin(16, 2);
ccs.begin();
//calibrate temperature sensor
while(!ccs.available());
float temp = ccs.calculateTemperature();
ccs.setTempOffset(temp - 25.0);
}
在下面的代码中,我们使用函数“ccs.available()”(函数已经在库中定义)来检查是否有一些数据。当我们获得数据时,我们能够计算温度并将其显示在 16*2 LCD 上。

此外,如果 CCS 可用并且 ccs.readData() 返回 false,那么我们使用函数 ccs.geteCO2() 获得 CO2 值,使用 ccs.getTVOC() 获取 TVOC 值,如下面的代码所示。 因此,我们收到了使用CCS811空气质量传感器的空气质量参数值。

void loop() {
if(ccs.available()){
float temp = ccs.calculateTemperature();

if(!ccs.readData()){
int co2 = ccs.geteCO2();
int tvoc = ccs.getTVOC();
lcd.setCursor(0, 0);
lcd.print(String ("CO2:")+ String (co2)+String(" PPM"));
lcd.setCursor(0, 1);
lcd.print(String ("TVOC:")+ String (tvoc)+String(" PPB "));
lcd.print(String("T:"+String (int(temp)))+String("C"));
delay(3000);
lcd.clear();
}

else{
lcd.print("ERROR");
while(1);
}
}
}
完整的Arduino代码如下。代码很简单,所有工作都由其库本身完成,我们使用 CCS 库中定义的函数来获取 CO2 和 TOVC 的值。

#include
#include "Adafruit_CCS811.h"

LiquidCrystal lcd(12, 13, 8, 9, 10, 11); /// REGISTER SELECT PIN,ENABLE PIN,D4 PIN,D5 PIN, D6 PIN, D7 PIN
Adafruit_CCS811 ccs;

void setup() {
lcd.begin(16, 2);
ccs.begin();
//calibrate temperature sensor
while(!ccs.available());
float temp = ccs.calculateTemperature();
ccs.setTempOffset(temp - 25.0);
}

void loop() {
if(ccs.available()){
float temp = ccs.calculateTemperature();
if(!ccs.readData()){
int co2 = ccs.geteCO2();
int tvoc = ccs.getTVOC();
lcd.setCursor(0, 0);
lcd.print(String ("CO2:")+ String (co2)+String(" PPM"));

lcd.setCursor(0, 1);
lcd.print(String ("TVOC:")+ String (tvoc)+String(" PPB "));
lcd.print(String("T:"+String (int(temp)))+String("C"));

delay(3000);
lcd.clear();
}
else{
lcd.print("ERROR");
while(1);
}
}

}

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • CO2
    CO2
    +关注

    关注

    1

    文章

    38

    浏览量

    11909
  • 质量传感器
    +关注

    关注

    0

    文章

    4

    浏览量

    5649
  • Arduino
    +关注

    关注

    184

    文章

    6428

    浏览量

    184843
收藏 人收藏

    评论

    相关推荐

    汽车空气质量检测与改善方案简介

    的影响因素主要来自两个方面:一是内饰材料所采用的化工原料引起的空气污染;二是由车外或发动机舱流入驾驶室的有毒气体,比如前车尾气。本文要讨论的是第二种情况,即空气质量传感器如何通过关闭空调系统的进风口
    发表于 07-19 14:09

    【GoKit申请】空气质量检测

    申请理由:开发使用,公司正在做一个空气质量检测仪,需要一个平台项目描述:1.需要wifi模块,与手机直连,并且也要发送数据到互联网。2.检测参数有温度,湿度,
    发表于 11-02 10:48

    STM32空气质量检测应用教程

    分钟打造手机APP远程空气质量监测应用.pdf2.Keil工程文件: Nucleo-STM32L432.zip3.STM32CubeMX生成的PDF报表: Nucleo-L432KCU6-Gokit-STM32CubeMX配置报表.pdf 4.MQ -135
    发表于 12-29 14:36

    空气质量测试仪的原理

    介绍空气质量测试仪原理。空气质量测试仪原理空气质量测试仪是一款能实时检测甲醛,PM2.5,TVOC和温湿度的产品,小巧精致,方便携带。通过其
    发表于 03-07 16:04

    环境传感器网络系统设计可分析智慧城市或地区的室外空气质量

    带,用于测量室内空气质量以及人们呼吸中的酒精成份(也有望用来防止酒驾和醉驾)。集成在Cling VOC腕带中的CCS801气体传感器能够检测出室内常有的低浓度挥发性有机化合物(VOC)
    发表于 11-07 16:13

    空气质量传感器详解

    净化本身配备传感器的同时,很多人仍选择霾表监测室内空气质量呢?这就涉及到净化机身传感器设计
    发表于 11-08 10:47

    Arduino检测器:关注空气质量

    Arduino检测器:关注空气质量
    发表于 05-10 06:56

    空气质量传感器在室内空气清新机中的应用是什么?

    TGS2600空气质量传感器有什么特点?空气质量传感器在室内空气清新机中的应用是什么?
    发表于 06-16 08:35

    怎样用Arduino UNO去测试CCS811气体传感器模块呢

    Arduino UNO测试CCS811气体传感器模块 TVOC/CO2环境空气质量监测简介
    发表于 01-17 08:51

    分享一个带空气质量监测功能的VFD时钟

    主微控制,选择 CCS811 ic 进行空气质量分析,BMP180 - 用于气压,HDC1080 - 用于湿度和温度。迄今为止的时钟可以显示 7 个空气质量等级:1) 白色 -
    发表于 06-17 08:11

    带有ccs811和SI7021温度/嗡嗡声传感器的分线板,把温湿度数据写入ccs81的ENV_DATA寄存没有成功是为什么?

    =27.28QFE=1027.978 ccs811 CO2 :3173 ccs811 TVOC:422 ccs811
    发表于 04-27 08:26

    艾迈斯宣布更新CCS8xx气体传感器:扩大了空气质量指示范围,在污染严重的环境下也可运行

    启动终端产品后,几乎可立即通过总挥发性有机物(TVOC) 相对值或CO2等效值(eCO2) 体现室内空气质量水平。
    发表于 08-01 08:30 1209次阅读

    Arduino UNO测试CCS811气体传感器模块 TVOC/eCO2环境空气质量监测

    Arduino UNO测试CCS811气体传感器模块 TVOC/CO2环境空气质量监测简介
    发表于 01-17 13:01 11次下载
    <b class='flag-5'>Arduino</b> UNO测试<b class='flag-5'>CCS811</b>气体<b class='flag-5'>传感器</b>模块 <b class='flag-5'>TVOC</b>/eCO2环境<b class='flag-5'>空气质量</b>监测

    数字CO2tVoC空气质量传感器CCS811开源

    电子发烧友网站提供《数字CO2tVoC空气质量传感器CCS811开源.zip》资料免费下载
    发表于 11-21 09:29 1次下载
    数字<b class='flag-5'>CO2</b>和<b class='flag-5'>tVoC</b><b class='flag-5'>空气质量</b><b class='flag-5'>传感器</b><b class='flag-5'>CCS811</b>开源

    智慧档案馆库房空气质量检测专用的一款多功能传感器

    档案馆库房专用的一款智能型空气质量云测仪 空气质量检测空气质量传感器 环境集成传感器 集成/
    的头像 发表于 04-07 14:33 327次阅读