(SKU:SEN0231)甲醛传感器

来自DFRobot Product Wiki
跳转至: 导航搜索
产品名称

Update/modify/delete Forbidden, 禁止更改本图,请更改图片名称新建图片

目录

简介

甲醛(化学式HCHO或CH2O)是一种有特殊刺激气味的气体,对人的眼睛和鼻子有强烈的刺激作用。甲醛是空气中的杀手之一,需要时刻提防。近年来,空气质量越来越受到重视,因此是时候自己DIY一个甲醛检测仪了,为自己的健康把把关。
我们推出的这款甲醛传感器模组,能精确测量空气中甲醛气体的浓度,快速得知当前的空气质量状况,可应用于室内空气检测、实时空气监测站、智能家居系统等。
该传感器具有稳定性高、抗干扰能力强、分辨率高、寿命长等优点。宽电压输入与支持模拟电压或串口输出,使其具有良好的兼容性,可连接到任何主控系统中。
简单易用的Gravity接口,配上我们提供的样例代码,就能让你迅速搭建出自己的甲醛气体检测仪了。

Warning yellow.png
  • 使用过程中,请不要用手触摸或挤压传感器的白色感应膜。
  • 正常使用时,空气中不能含有高浓度硫化氢、氢气、甲醇、乙醇、一氧化碳气体,以免影响测量精度和传感器的寿命。
  • 模组初次上电使用需预热5分钟以上。
  • 模组应避免接触有机溶剂(包括硅胶及其它胶粘剂)、涂料、药剂、油类及高浓度气体。
  • 禁止插拔模组上的传感器,禁止改动、移位电子元件安装状态。
  • 模组不可经受过度的撞击或震动。
  • 请勿将该模组应用于涉及人身安全的系统中。
  • 请勿将模组安装在强空气对流环境下使用。
  • 请勿将模组长时间放置于高浓度有机气体中。



技术规格

  • 供电电压:3.3~6V
  • 检测气体:甲醛
  • 干扰气体:酒精、一氧化碳等气体
  • 检测范围:0~5ppm
  • 分辨率:0.01ppm
  • 预热时间:≤3分钟
  • 响应时间:≤60秒
  • 恢复时间:≤60秒
  • 接口类型:Gravity PH2.0 3Pin
  • 输出信号:串口信号(9600) 或 0.4~2V电压
  • 工作温度:0~50℃
  • 工作湿度:15%RH-90%RH(无凝结)
  • 存储温度:0~50℃
  • 使用寿命:2年(空气中)


引脚说明

甲醛传感器

甲醛传感器管脚定义
标号 名称 功能描述
1 S 信号输出端
2 + 电源输入正极
3 - 电源输入负极
4 SW 输出模式(UART或DAC)切换开关


使用教程

本教程将演示如何使用这款甲醛传感器来测量空气中甲醛的浓度值。
接线方式分两种,分别是UART模式与DAC模式。

Warning yellow.png

推荐UART模式,可获得更高更稳定的精度。


准备

  • 硬件
    • UNO控制板 x1
    • 甲醛传感器模组 x1
    • Gravity 3P连接线 x1
  • 软件


UART模式


使用UART模式前,请先将拨码开关切换到UART一端。

HCHO cmd.png


接线图


SEN0231 HCHO Sensor(V1.0)wire UART.png



样例代码

请先下载Arduino库(Github)如何安装库?

/***************************************************
 DFRobot Gravity: HCHO Sensor
 <https://www.dfrobot.com/wiki/index.php/Gravity:_HCHO_Sensor_SKU:_SEN0231>
 
 ***************************************************
 This example reads the concentration of HCHO in air by UART mode.
 
 Created 2016-12-15
 By Jason <jason.ling@dfrobot.com@dfrobot.com>
 
 GNU Lesser General Public License.
 See <http://www.gnu.org/licenses/> for details.
 All above must be included in any redistribution
 ****************************************************/
 
 /***********Notice and Trouble shooting***************
 1. This code is tested on Arduino Uno with Arduino IDE 1.0.5 r2.
 2. In order to protect the sensor, do not touch the white sensor film on the sensor module, 
 and high concentration of Hydrogen sulfide, hydrogen, methanol, ethanol, carbon monoxide should be avoided. 
 3. Please do not use the modules in systems which related to human being’s safety.
 ****************************************************/

#include <DFRobotHCHOSensor.h>
#include <SoftwareSerial.h>

#define SensorSerialPin	10	//this pin read the uart signal from the HCHO sensor

SoftwareSerial sensorSerial(SensorSerialPin,SensorSerialPin);

DFRobotHCHOSensor hchoSensor(&sensorSerial);

void setup()
{  
    sensorSerial.begin(9600);	//the baudrate of HCHO is 9600
    sensorSerial.listen();
    Serial.begin(9600);
}

void loop()
{
    if(hchoSensor.available()>0)	
    {
      Serial.print(hchoSensor.uartReadPPM());
      Serial.println("ppm");
    }
}                            


结果


如上图所示,浓度值每隔1秒打印一次,此时的示数就是你周围空气中的甲醛浓度值。

DAC模式


使用DAC模式前,请先将拨码开关切换到DAC一端。

Warning yellow.png

DAC模式中,测量精度会受主控器ADC的位数、参考电压精度的影响,因此请使用高精度的电源给主控器供电,或者直接使用主控器的内部参考电压。而且主控器的ADC至少是10位。


输出模拟电压(V)与浓度(ppm)是线性关系,0.4V对应0ppm, 2.0V对应5ppm,因此电压与浓度的线性关系图如下图所示:

Vtop new.png


接线图


CH2O Sensor wire DAC.png



样例代码

点此下载样例代码(Github)如何安装库?

/***************************************************
 DFRobot Gravity: HCHO Sensor
 <https://www.dfrobot.com/wiki/index.php/Gravity:_HCHO_Sensor_SKU:_SEN0231>
 
 ***************************************************
 This example reads the concentration of HCHO in air by DAC mode.
 
 Created 2016-12-15
 By Jason <jason.ling@dfrobot.com@dfrobot.com>
 
 GNU Lesser General Public License.
 See <http://www.gnu.org/licenses/> for details.
 All above must be included in any redistribution
 ****************************************************/
 
 /***********Notice and Trouble shooting***************
 1. This code is tested on Arduino Uno with Arduino IDE 1.0.5 r2.
 2. In order to protect the sensor, do not touch the white sensor film on the sensor module, 
 and high concentration of Hydrogen sulfide, hydrogen, methanol, ethanol, carbon monoxide should be avoided. 
 3. Please do not use the modules in systems which related to human being’s safety.
 ****************************************************/
 
#define SensorAnalogPin A2	//this pin read the analog voltage from the HCHO sensor
#define VREF	5.0		//voltage on AREF pin

void setup()
{
    Serial.begin(9600);
}

void loop()
{  
    Serial.print(analogReadPPM());
    Serial.println("ppm");
    delay(1000);
}

float analogReadPPM()
{
   float analogVoltage = analogRead(SensorAnalogPin) / 1024.0 * VREF;
   float ppm = 3.125 * analogVoltage - 1.25;	//linear relationship(0.4V for 0 ppm and 2V for 5ppm)
   if(ppm<0)  ppm=0;
   else if(ppm>5)  ppm = 5;
   return ppm;
}


结果


如上图所示,浓度值每隔1秒打印一次,此时的示数就是你周围空气中的甲醛浓度值。


常见问题

Q1. 传感器刚上电时,没有输出信号,这正常吗?

A. 该传感器的初始化需要一些时间,因此上电后,要过几秒后后,才会有信号输出。

Q1. ppm和mg/m3之间是什么关系?怎么转换?

A. 在标况下,1 ppm = 0.746 mg/m3



更多问题及有趣的应用,可以 访问论坛 进行查阅或发帖。


更多


个人工具
名字空间

变换
操作
导航
工具箱