1、使用夏普GP2Y1010AU0F灰尘传感器检测空气质量使用夏普GP2Y1010AU0F灰尘传感器检测空气质量夏普灰尘传感器价格较便宜,能检测出室内空气中的灰尘和烟尘含量.检测原理其原理如下图,传感器中心有个洞可以让空气自由流过,定向发射LED光,通过检测经过空气中灰尘折射过后的光线来判断灰尘的含量。电路图因为数据是通过pin 5的电压模拟信号输出的,而树莓派的引脚不支持模拟信号直接读取(需要增加数模转换芯片),所以先用Arduino来实验。Arduino 代码根据电路图, 把Arduino和传感器连接起来:1. Sharp pin 1 (V-LED) = 5V 串联1个150欧姆的电阻(最好在
2、电阻一侧和GND之间再串联一个220uf的电容)2. Sharp pin 2 (LED-GND) = GND3. Sharp pin 3 (LED) = Arduino PIN 2 (开关LED)4. Sharp pin 4 (S-GND) = GND5. Sharp pin 5 (Vo) = Arduino A0 pin (空气质量数据通过电压模拟信号输出)6. Sharp pin 6 (Vcc) = 5V1. /*2. Interface to Sharp GP2Y1010AU0F Particle Sensor3. Program by Christopher Nafis4. Writt
3、en April 20125. 6. 7. 8. 9. Sharp pin 1 (V-LED) = 5V (connected to 150ohm resister)10. Sharp pin 2 (LED-GND) = Arduino GND pin11. Sharp pin 3 (LED) = Arduino pin 212. Sharp pin 4 (S-GND) = Arduino GND pin13. Sharp pin 5 (Vo) = Arduino A0 pin14. Sharp pin 6 (Vcc) = 5V15. */16. #include17. #include18.
4、 19. intdustPin=0;20. intledPower=2;21. intdelayTime=280;22. intdelayTime2=40;23. floatoffTime=9680;24. 25. intdustVal=0;26. inti=0;27. floatppm=0;28. chars32;29. floatvoltage=0;30. floatdustdensity=0;31. floatppmpercf=0;32. 33. voidsetup()34. Serial.begin(9600);35. pinMode(ledPower,OUTPUT);36. 37.
5、/ give the ethernet module time to boot up:38. delay(1000);39. 40. i=0;41. ppm=0;42. 43. 44. voidloop()45. i=i+1;46. digitalWrite(ledPower,LOW);/ power on the LED47. delayMicroseconds(delayTime);48. dustVal=analogRead(dustPin);/ read the dust value49. ppm=ppm+dustVal;50. delayMicroseconds(delayTime2
6、);51. digitalWrite(ledPower,HIGH);/ turn the LED off52. delayMicroseconds(offTime);53. 54. voltage=ppm/i*0.0049;55. dustdensity=0.17*voltage-0.1;56. ppmpercf=(voltage-0.0256)*120000;57. if(ppmpercf0)58. ppmpercf=0;59. if(dustdensity0.5)62. dustdensity=0.5;63. StringdataString=;64. dataString+=dtostrf(voltage,9,4,s);65. dataString+=,;66. dataString+=dtostrf(dustdensity,5,2,s);67. dataString+=,;68. dataString+=dtostrf(ppmpercf,8,0,s);69. i=0;70. ppm=0;71. Serial.println(dataString);72. delay(1000);73. 把传感器和Ardiuno连接好后,可以连续打印出传感器的输出电压值。输出电压大小和灰尘含量的曲线入下图:通过电压的波形还可以判断是烟还是尘呢
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1