37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和模块,依照实践(动手试试)出真知的理念,以学习和交流为目的,这里准备逐一做做实验,不管能否成功,都会记录下来---小小的进步或是搞不掂的问题,希望能够抛砖引玉。

【Arduino】168种传感器模块系列实验(资料+代码+图形+仿真)

实验四十二:DSM501A韩国进口PM2.5灰尘粉尘传感器模块

韩国三瀛(SYHITECH)原装进口,专利产品粉尘传感器DSM501可以感知烟草产生的烟气和花粉,房屋粉尘等,加热自动进气装置,可调电阻设置检测灰尘的大小。采用与粒子计算器相同原理为基础,检测出单位体积粒子的绝对个数。

板上主要是一颗KEC(韩国电子)产的KIA324F,类似于LM324的四路运算放大器芯片

关于PM2.5
也称为细颗粒物,又叫细粒、细颗粒。细颗粒物指环境空气中空气动力学当量直径小于等于 2.5 微米的颗粒物。它能较长时间悬浮于空气中,其在空气中含量浓度越高,就代表空气污染越严重。虽然PM2.5只是地球大气成分中含量很少的组分,但它对空气质量和能见度等有重要的影响。与较粗的大气颗粒物相比,PM2.5粒径小,面积大,活性强,易附带有毒、有害物质(例如,重金属、微生物等),且在大气中的停留时间长、输送距离远,因而对人体健康和大气环境质量的影响更大。2013年2月,全国科学技术名词审定委员会将PM2.5的中文名称命名为细颗粒物。细颗粒物的化学成分主要包括有机碳(OC)、元素碳(EC)、硝酸盐、硫酸盐、铵盐、钠盐(Na⁺)等。

PM2.5的危害
PM2.5“超细灰尘”主要来自机动车尾气尘、燃油尘、硫酸盐、餐饮油烟尘、建筑水泥尘、煤烟尘和硝酸盐等,它是雾霾有害细颗粒的重要组成部分。PM2.5虽然不是有毒气体,但PM2.5因直径细小,携带大量的有毒、有害物质,进入人体会影响健康。PM直径越细小对人体危害越大,PM2.5能飘到较远的地方,因此影响范围较大。此外,PM2.5对人体健康的危害要更大,因为直径越小,进入呼吸道的部位越深。10μm直径的颗粒物通常沉积在上呼吸道,2μm以下的可深入到细支气管和肺泡。细颗粒物进入人体到肺泡后,直接影响肺的通气功能,使机体容易处在缺氧状态。而且这种细颗粒物一旦进入肺泡,吸附在肺泡上很难掉落,这种吸附是不可逆的。

目前测量PM2.5的传感器光学方法有红外和激光两种方法,而激光又分为浊度法和粒子计数(激光切割)法。

1. 红外法和浊度法:
红外由于光线强度不够,只能用浊度法测量。所谓浊度法,就是一边是发射光线,另一边接收,空气越浑浊光线损失掉的能量就越大,由此来判定目前的空气浊度。实际上这种方法是不能够准确测量PM2.5的,甚至光线的发射、接收部分一旦被静电吸附的粉尘覆盖,就会直接导致测量不精准。这种方法做出来的传感器只能定性测量(可以测出相对多少),不能定量测量(因为数值会飘)。更何况这种方法也区分不出颗粒物的粒径来,所以凡是用这种传感器的性能都不会好。目前这一类的传感器有夏普(一代二代都一样)、神荣的(小米二代净化器用的就是这款)、三赢等。

2.激光法和粒子计数法:
相关的论文很多,就是激光散射的方法,并不是直接测量浊度,这一类的传感器共同的特点就是离不开风扇(或者用泵吸),因为这种方法空气如果不流动是测量不到空气中的悬浮颗粒物的,而且通过数学模型可以大致推算出经过传感器气体的例子直接大小,空气流量等,经过复杂的数学算法,最终得到比较真实的PM2.5数值,这一类传感器是激光散射,对静电吸附的灰尘免疫,当然如果用灰尘吧传感器堵死了,自然也不可能测到。缺点是激光的寿命较短,如果连续运行的话基本上也就一年多的寿命而已,这还是厂家优化算法之后能够达到的寿命,但在绝大多数场合已经够用了,而且如果不连续运行,激光的寿命还能够更长。

测量模块主要特性
●5VDC供电
●外形尺寸:59*49*20
●产地:韩国SYHITECH
●体积小,重量轻,便于安装.
●5V的输入电路,便于信号处理.
●内藏气流发生器,可以自行吸引外部大气.
●保养简单,可以长期保持传感器的特性.
●光学原理,能够探测1微米以上的粉尘粒子
●探测粒子范围:最大到15000pcs/283ml(1um以上粒子)
●灰尘传感器DSM501可以感知烟草产生的烟气和花粉,房屋粉尘等
●两种输出模式,解决不同灵敏度使用要求,洁净环境Vout输出高电平信号(4V)

DSM501A典型应用: 小家电(控制板),空气净化器,空气清新机,暖通空调,新风系统,环境监控,换气扇等产品等

模块构成部分
1、发光二极管(LED)灯
2、探测器
3、信号放大器电路
4、输出驱动电路1
5、输出驱动电路2
6、暖气(加热空气回流)

模块端口
1#  Control 1 控制脚---通过在此脚与GND之间加一个电阻可调整Vout 1的最小粒子检出水平,调整电阻值可调整Vout 1的灵敏度;
2#  Vout 2 输出脚2---此脚位为普通输出脚位,灵敏度已预设定,最小粒子检出能力为1 μm;
3#  VCC 电源 +5V;
4#  Vout 1 输出脚 ---此脚位为可调输出脚位,灵敏度可通过控制脚来调整,默认为Vout 2的2.5倍即最小粒子检出能力为2.5μm;
5# GND 电源 接地。

实验接线
DSM501A       Arduino
#3 vcc                 5v
#4 vout1            pin8
#5 GND             GND
实验仅以#4 Vout1 输出为例,输出的数值为PWM脉宽和30秒一周期检测到的粒子数量。

/*

【Arduino】168种传感器模块系列实验(42)

实验四十二:DSM501A韩国三瀛PM2.5灰尘粉尘传感器模块

*/

int pin = 8;

unsigned long duration;

unsigned long starttime;

unsigned long sampletime_ms = 30000;

unsigned long lowpulseoccupancy = 0;

float ratio = 0;

float concentration = 0;

void setup() {

  Serial.begin(9600);

  pinMode(8,INPUT);

  starttime = millis();

}

void loop() {

  duration = pulseIn(pin, LOW);

  lowpulseoccupancy = lowpulseoccupancy+duration;

  if ((millis()-starttime) > sampletime_ms)

  {

    ratio = lowpulseoccupancy/(sampletime_ms*10.0);  

    concentration = 1.1*pow(ratio,3)-3.8*pow(ratio,2)+520*ratio+0.62; 

    //Serial.print(lowpulseoccupancy);

    // Serial.print(",");

    Serial.print(ratio);

    Serial.print(",");

    Serial.println(concentration);

    lowpulseoccupancy = 0;

    starttime = millis();

  }

}

  

实验说明

1、加热器:模块内置一个加热器,热引起上升气流使外部空气流进模块内部。上电后会预热60秒左右。

2、检测的粒子类型:此模块被设计成可以检测1μm 以上粒子,如香烟、房屋灰尘、霉菌、花粉、孢子等。

3、安装:

①必须垂直安装;DSM501A要垂直放置

②远离人工气流如风扇,如当用于空气清新机时,风扇的前方和后方都不能安装,可任选外壳一侧安装,但外壳上要保留通风口以保证外部气流可以流进来;

③注意安装时要避免粘性粒子如油类进入模块,当这种粒子粘在光学部件上将会产生故障。

④当模块受潮湿将会影响它的正常功能,因此应避免受潮。

4、透镜:透镜需要视环境状况隔一段时间进行清洁,约6 个月一次。清洁时用棉签一头醮清水轻擦,然后用另一头擦干。不可以用酒精等有机溶剂擦拭透镜。

DSM501A模块稳定后,使用电烙铁加热松香而产生的烟雾,进行细微粒检测

检测到烟雾后,串口数值有大幅度的变动,减少了(红点处)

据网上资料

说DSM501这个是测的PM2.5粉尘的个数,也叫尘埃粒子计数器 ,测出来的数据不是浓度值。如果要测浓度值的话,要买粉尘浓度检测仪。尘埃粒子计数器 测的单位是 个/升,粉尘浓度是 mg/立方米,完全不同的两个参数,且不可以转换。

下图为图形模块的编程

DSM501A对烟雾还是挺敏感的

空气质量较好情况下接收的实验数据

【雕爷学编程】Arduino动手做(42)---PM2.5粉尘传感器的更多相关文章

  1. 「雕爷学编程」Arduino动手做(9)——火焰传感器模块

    37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...

  2. 「雕爷学编程」Arduino动手做(10)——敲击传感器模块

    37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...

  3. 「雕爷学编程」Arduino动手做(8)——湿度传感器模块

    37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...

  4. 【雕爷学编程】Arduino动手做(6)---声音传感器模块

    37款传感器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器,依照实践(动手试试)出真知的理念,以学习和交流为目的,这里准备逐一做做实验 ...

  5. 【雕爷学编程】Arduino动手做(46)---电阻应变片传感器

    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里 ...

  6. 「雕爷学编程」Arduino动手做(32)——雨滴传感器模块

    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里 ...

  7. 【雕爷学编程】Arduino动手做(53)---土壤湿度传感器

    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践(动手试试)出真知的理念,以学习和交流为目的,这里准备 ...

  8. 「雕爷学编程」Arduino动手做(15)——手指侦测心跳模块

    37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...

  9. 【雕爷学编程】Arduino动手做(16)---数字触摸传感器

    37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...

  10. 「雕爷学编程」Arduino动手做(14)——倾斜角度模块

    37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...

随机推荐

  1. 【FishFX】花式撩骚,打造TypeScript易用框架。

    · 栗子入手 假设有以下foo数组,数组中每个对象都拥有id,name两个属性,现在需要查找id > 0的对象数量. const foo: Array<{ id: number, name ...

  2. Java 基础之详解 Java 反射机制

    一.什么是 Java 的反射机制?   反射(Reflection)是Java的高级特性之一,是框架实现的基础,定义:JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法: ...

  3. SQLI-LABS学习笔记(三)

    第十一关   这一关是POST注入   先利用bp抓包抓到post传输的参数数据     抓到传递的表单为   uname=admin&passwd=admin&submit=Subm ...

  4. Python(10)

    如果 a+b+c=1000,且 a^2+b^2=c^2(a,b,c 为自然数),如何求出所有a.b.c可能的组合? # 注意是三重循环 for a in range(0, 1001): for b i ...

  5. 数据结构入门第二课(浙大mooc)

    数据结构入门第二课 目录 数据结构入门第二课 引子 多项式的表示 方法1 顺序结构表示多项式各项 方法2 顺序结构表示非零项 方法3 链表结构存储非零项 多项式问题的启示 线性表 线性表的抽象数据类型 ...

  6. Java阻塞队列四组API介绍

    Java阻塞队列四组API介绍 通过前面几篇文章的学习,我们已经知道了Java中的队列分为阻塞队列和非阻塞队列以及常用的七个阻塞队列.如下图: 本文来源:凯哥Java(kaigejava)讲解Java ...

  7. React-Native iOS真机调试(新版)

    2019独角兽企业重金招聘Python工程师标准>>> React-Native iOS真机调试 看到网上很多以前的文章 找到两种方法 一 修改AppDelegate 把URL的替换 ...

  8. json序列化字符串后,配置枚举类型显示数值而不是名称

    2019独角兽企业重金招聘Python工程师标准>>> 经常有这么一个需求,实体类里面用到枚举常量,但序列化成json字符串时.默认并不是我想要的值,而是名称,如下 类 @Data ...

  9. 有关for循环的一些东西

    有的时候,不知道是因为学的有点浅显,还是脑袋有点懵,简单的循环语句都有点被绕糊涂了. 这种内外循环的,先是外循环一次,内循环全部,接着再外循环第二次,内循环全部,,,,,,,. 所以先是显示 0 4 ...

  10. web安全笔记

    判断网站是否伪静态 把.html后缀即可或者加.php?id=99 例子:33_99.html   去掉.html和_变成33.php?id=99 即可判断是否伪静态 判断网站是否在win或者linu ...