夏普灰尘传感器价格较便宜,能检测岀室内空气中的灰尘和烟尘含量 检测原理
其原理如下图,传感器中心有个洞可以让空气自由流过,定向发射 过后的光线来判断灰尘的含量。
LED光,通过检测经过空气中灰尘折射
air purifier functiotk
Chart-A
LED…Q p t :匚江
先 口「 d r ©a
C h a r t - B W i t h o u t
dust and/or smoke
C h a. r t -C
With t dust and/or smoke
I- ■
\\DUST&
\\C [甘 a.广 ettE Emok©
电路图
Fig. 1 Input Condition for LED Input Terminal
Pulse-driven wave form
T-10ms
因为数据是通过pin 5的电压模拟信号输岀的, 而树莓派的引脚不支持模拟信号直接读取 换芯片),所以先用 Arduino来实验。
Arduino 代码
V-LED LED-GND ED 5工 VO VCC
根据电路图,
把Arduino和传感器连接起来:
1.
Sharp pin 1 (V-LED) => 5V 串联1个150欧姆的电阻(最好在电阻一侧和 220uf的电容)
2. Sharp pin 2 (LED-GND) => GND 3. Sharp pin 3 (LED) => Arduino PIN 2 (开关 LED
4. Sharp pin 4 (S-GND) => GND 5. Sharp pin 5 (Vo) => Arduino A0 pin (空气质量数据通过电压模拟信号输出)
6. Sharp pin 6 (Vcc) => 5V 1. /*
2. Interface to Sharp GP2Y1010AU0F Particle Sensor 3. Program by Christopher Nafis 4. Written April 2012
5.
(需要增加数模转
GND之间再串联一个
5. 6.
http://pic .1 shou.com/pic/www.sparkfun.com/datasheets/Sensors/gp2y1010au_e.pdf http://pic .1 shou.com/pic/sensorapp.net/?p=479
8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
Sharp pin 1 (V-LED) => 5V (connected to 150ohm resister)
Sharp pin 2 (LED-GND) => Arduino GND pin Sharp pin 3 (LED) Sharp pin 4 (S-GND) Sharp pin 5 (Vo) Sharp pin 6 (Vcc) */
#include => Arduino pin 2 => Arduino GND pin => Arduino A0 pin => 5V 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. int dustPin =0; int ledPower =2; int delayTime =280; int delayTime2 =40; float offTime =9680; int dustVal =0; int i =0; float ppm=0; char s[ 32]; float voltage =0; float dustdensity =0; float ppmpercf =0; 32. 33. 34. 35. void setup (){ Serial . begin ( 9600); pinMode (ledPower, OUTPUT 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. // give the ethernet module time to boot up: delay (1000); i =0; ppm=0; } void loop (){ i =i +1; digitalWrite (ledPower, LOVX〃 power on the LED (delayTime ); delayMicroseconds dustVal =analogRead (dustPin );// read the dust value ppm=ppn+dustVal ; delayMicroseconds digitalWrite (delayTime2 ); (ledPower, HIGH);// turn the LED off 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. delayMicroseconds (offTime ); voltage =ppn/ i *0.0049 ; dustdensity =0.17 * voltage -0.1 ; ppmpercf =( voltage -0.0256 )* 120000; if (ppmpercf <0) ppmpercf =0; if (dustdensity <0) dustdensity =0; if (dustdensity >0.5) dustdensity =0.5; String dataString =\"\" 64. 65. 66. 67. 68. 69. 70. 72. 71. dataString dataString dataString dataString dataString +=dtostrf (voltage ,9,4, s); +=\ +=dtostrf (dustdensity , 5, 2, s) +=\ +=dtostrf (ppmpercf, 8, 0, s); i =0; ppm=0; delay (1000); Serial . println (dataString ); 73. 把传感器和 下图: Ardiuno连接好后,可以连续打印出传感器的输出电压值。输出电压大小和灰尘含量的曲线入 Output Voltage vs. Dust Density ^ B 19 I Q 3 2 10 ? 二 o / / / / f / f— O-2 or£ 52. delayMicroseconds (offTime ); 通过电压的波形还可以判断是烟还是尘呢 说明資料 灰尘传感器GP2Y1010AU检出方法说明资料 目录 页数 1・ 椽要 ---------------------------------------------------------- 2/5 2・ 关于规格书的特性 -------------------------------------------- 2/5 3・ 关于驱动条件 ------------------------------------------------- 2/5 4. 关于检出方法 ------- —— ------- -------- --- -- ----- ---- 2/5 4・1关于检出方法 ----------------------------------------------- 2/5 4・2关于尘埃、香烟、油烟的烟的判别方法 ---------------------- 2/5 4・3关于无尘时输出电压的更新 --------------------------------- 4/5 5・ 特性数据 5J粉尘浓度特性数据 --------------------------------------------- 4/5 说明資料 Paw I of 5 1.概要 [灰尘传感器GP2Y1010AU检出方法说明资料]的使用,是为了方便软件编程,并对检出 方法进行了总结,便F客户在设计上的活用。 对于检出原理、构造.构成图、诸特性、使用上的注意第项等,可参照(DUST SENSOR GP2Y1010AU APPLICATION NOTE]。 本资料作为参对,便用时在实装状态下,仅供呦认上的便用。 2. 关于规格韦上的待性 (1) 关于无尘时输出电压(Vcc(V)) 在没有灰尘.烟的状态下的输出电压,有规定厳大值。 (2) 关于输出电压范圈(VoH) 是输出电压的最大电丿心仃规定最小值. (3) 关于检出感度(K) 粉尘浓B0.lmg/m3变化时的输出电压的变化,冇规定最小; V值•杓」」 MILD SEVEN 辆理烟做的咻。 3. 关于驱动条件 根据LED驱动周期(脉冲周期:T(ms) ), LED岖动时间(脉冲:宽度Pw(ms))输出 电压会变动,规格书特性的规格值是脉泽翩WT: 10ms,脉冲宽度Pw: 0.32ms,取样时 (nJ: 0.28ms,相据此条件变动,规格书上规定 (无仝时输出电压.楡出惑 也随之变动。在微机編程上,不能以此条件设定的情况下,请在规格书的推荐范国内操 n、 另外,根据电源电压,输出电压也会变动。 不能以规格书条件來设计吋;悵据脉冲甬期. 脉冲宽度的不同,输出电压的不同及电源 电压 输出电斥的特性.请蟄照[DUST SENSOR GP2Y10I0AU APPL1CATION NOTE]。 4. 关于检出方法 4-1.关于检出方法 GP2Y10I0AU插上电源后1抄内会稳定、正當地运作,可以进行检出。 对GP2Y1010AU输出电压的绝对值,并不是判定检出的有无,我们推荐的使用方 H:无尘时,从输出电爪的变化H來做判定。 另外,更甚者可以根据输出电平时间上的变化来对检出对象物的种别进行判别。 关干一般被采用的灰尘和烟的判别方法,作如下说明。 4-2.灰尘和烟的判别方法 从输出电平的大小的变化及输出电平时间的变化来看,可以知道檢出对象物是什 现在,对灰尘和烟检出时输出的区别.作如卜说明。 一般,香烟的烟是细微粒子,密度高,会扩敵式的大范尉漂移。与此相比,灰尘 址-个-个大颗粒,密度低,断断续续式的进入灰尘传感器的检出领域。 Page 2 of5 i说明資料 m下怜 烟是连续的衣现出较高的输出| ,灰尘是间隔的表现出较高的 输出电压。因 此,根据传感器的输出电压值(发光素子和已同期的脉冲输出电压 值)在时间上的推移向徼机软件的读取,是否无尘/是否有烟/是否有灰尘,不管 是哪种状态,及空气污染的程度是多少,都口〔以进行检出。 另外,以前的旧机种GP2U05/06根据峰值保持电路,时定数较大,由于起落的 应答时间较长,对「•单个的灰尘,也有难以检出的悄况发生。 [关于烟的检出.判定值] 相当于香烟的烟那样的检出物,按如下表示。 可以检出的范围(输出电压可变范rni(V))=输出电压范围:voii(v)-无尘 时输出电圧: Voc(V)o 将此换算成粉尘浓度: 俭岀粉尘浓度范围(m&m3)=检出町能范围(输出电压可变范围(V))-检出感 度:K(V/(0」 烟检出的情况下,其判定值如下: 判定值=检岀浓度- 10 XK(V/(0J mg/m\") +无尘时输出电圧(V) 【例] • 检出浓度:0.2(mg/m5)來判定时 • K: TYP 0.5(V/(0.1 mg/m') •无尘时输出电压:0.9(V)的情况卜. Page 3 of 5 [说明資闾 判定值=(0.2X10)X0.5+0.9 =1.9V [灰尘的检出] 灰尘的检岀是在规定时间内,在某一输出电压变化的标准以上,判定在篥•时间 的输出被记入什么,从而检出灰尘的有无。 4-3.关于无尘时输出电压的更新 无尘时输出电压是灰尘、烟的检出有无的判定级別的基准,正确的说是检出秸度 的提高。 ①无尘肘输出电压圧根据发光••极悴发光输出的低下.在兪了内部灰尘的附周 国温度等来 进行变化的。发光输出低下,无尘时输出电压下降;器件的盒n内部 灰尘的附养能使无尘输出电斥有上升的傾向。 堪本上,随看时间的推移,如果输出电压没有变化,并不会观作无检出物,以那 个标准作为无尘输出电压来更新。 [例 H •空气淸新机的电源插入后,会强制性片、空气淸新机能,如果无尘时输出 电压变低 的话,龙尘0懈出电压会更新。 [例2] •空气清新机能在运转中,「输出4迟标准的变化若在规定时间(如5・10分钟之 间)没 右变化,无尘输出电压会更新。 •空气淸新机没有运转时,长时间(如1小时以上),若输出电压的标准没有变 • 以输出电展变得血低时的标准作为尢尘输出电压來览新. 艾光二极管•一般.发光二极管在O0I通电谄况尺输出会降低。 灰尘传感 器发光二极管的输出降低,无尘输出电压及检出感度也会随之降低。 此无尘输出电压及感度的补正方法,介绍如卜•: 在本传感器编入用户的机器后,用户产品在出厂时无尘输出电压被记忆在 E'PROM中。此后,在市场的某一时间,标准在固定的情况卜•及比记忆的标准低 下时就会进行更新,根据无尘输出电压低下的程度补正检出电压•例如,对微机 补正灰尘及烟是否有无的判定标准。 另外,无尘输出电压变高时是由丁•其它因索(如盒f内部有厌尘附着零),请不要 进行检出感度提爲的补正。 5. 诸特性数据 本数据址参考数据,并不是保证特性的证明。 Page 4 of5 输出迫压 5-1.粉尘浓度待性数据 测定方法:以GP2Y1010AU规恪书的3・3项电气的、比学的特性为堆准。 请参考下图。 输出电压 GP2Y1010AU 尘浓度待性例 Page 5 of5 因篇幅问题不能全部显示,请点此查看更多更全内容