{"id":1318,"date":"2017-08-13T16:55:48","date_gmt":"2017-08-13T08:55:48","guid":{"rendered":"https:\/\/yanjingang.com\/blog\/?p=1318"},"modified":"2017-08-13T17:21:54","modified_gmt":"2017-08-13T09:21:54","slug":"%e5%b0%8f%e7%8c%aa%e5%ad%a6arduino-%e4%bd%bf%e7%94%a8gp2y1010au0f%e6%a3%80%e6%b5%8bpm2-5%e7%a9%ba%e6%b0%94%e8%b4%a8%e9%87%8f","status":"publish","type":"post","link":"https:\/\/yanjingang.com\/blog\/?p=1318","title":{"rendered":"\u5c0f\u732a\u5b66arduino\u2014\u4f7f\u7528GP2Y1010AU0F\u68c0\u6d4bpm2.5\u7a7a\u6c14\u8d28\u91cf"},"content":{"rendered":"<p>\u4eca\u5929\u8001\u5a46\u4e0d\u5728\u5bb6\uff0c\u7533\u8bf7\u7684dueros\u548c\u4e70\u7684\u673a\u5668\u4eba\u96f6\u4ef6\u90fd\u6ca1\u5230\uff0c\u513f\u5b50\u81ea\u5df1\u73a9\u5766\u514b\u73a9\u7684\u6b63hi\uff0c\u6211\u4e5f\u627e\u70b9\u4e8b\u5e72\u5427\uff0c\u4ece\u7bb1\u5b50\u91cc\u6252\u62c9\u51fa\u4e00\u4e2aGP2Y1010AU0F\u7070\u5c18\u4f20\u611f\u5668\uff0c\u505a\u4e2apm2.5\u68c0\u6d4b\u5427\u3002<\/p>\n<p>GP2Y1010AU0F\u6a21\u5757\u7684\u68c0\u6d4b\u539f\u7406\uff1a<\/p>\n<p>\u4f20\u611f\u5668\u4e2d\u5fc3\u6709\u4e2a\u6d1e\u53ef\u4ee5\u8ba9\u7a7a\u6c14\u81ea\u7531\u6d41\u8fc7\uff0c\u5b9a\u5411\u53d1\u5c04LED\u5149\uff0c\u901a\u8fc7\u68c0\u6d4b\u7ecf\u8fc7\u7a7a\u6c14\u4e2d\u7070\u5c18\u6298\u5c04\u8fc7\u540e\u7684\u5149\u7ebf\u6765\u5224\u65ad\u7070\u5c18\u7684\u542b\u91cf\uff0c\u8ddf\u6fc0\u5149\u7684\u6bd4\u6210\u672c\u8f83\u4f4e\u3002<\/p>\n<h2>\u786c\u4ef6\u8fde\u7ebf<\/h2>\n<p>\u4f20\u611f\u5668\u00a0-&gt; Arduino<br \/>\n1\u767d\u7ebfVled \u2013&gt; 5V (150ohm resistor)2<br \/>\n2\u84dd\u7ebf LED-GND \u2013&gt; GND3<br \/>\n3 \u7eff\u7ebfLED \u2013&gt; Digital pin 24<br \/>\n4 \u9ec4\u7ebfS-GND \u2013&gt; GND5<br \/>\n5 \u9ed1\u7ebfVo \u2013&gt; Analog pin 06<br \/>\n6 \u7ea2\u7ebfVcc \u2013&gt; 5V<br \/>\n\u793a\u4f8b\u6ca1\u6709\u63a5\u7535\u5bb9\u7535\u963b\uff0c\u5176\u4e2d1\u30016\u7ea2\u767d\u7ebf\u53ef\u4ee5\u8fde\u4e00\u8d77\u540e\u63a55v\uff1b2\u30014\u84dd\u9ec4\u7ebf\u8fde\u4e00\u8d77\u540e\u63a5GND\uff1b3\u7eff\u7ebf\u63a5\uff242\u6570\u5b57\u7aef\u53e3\uff1b5\u9ed1\u7ebf\u63a5A0\u6a21\u62df\u7aef\u53e3\u3002<\/p>\n<p><a href=\"https:\/\/yanjingang.com\/blog\/?attachment_id=1325\" rel=\"attachment wp-att-1325\"><img loading=\"lazy\" class=\"alignnone size-large wp-image-1325\" src=\"https:\/\/yanjingang.com\/blog\/wp-content\/uploads\/2017\/08\/WechatIMG5-768x1024.jpeg\" alt=\"\" width=\"660\" height=\"880\" srcset=\"https:\/\/yanjingang.com\/blog\/wp-content\/uploads\/2017\/08\/WechatIMG5-768x1024.jpeg 768w, https:\/\/yanjingang.com\/blog\/wp-content\/uploads\/2017\/08\/WechatIMG5-225x300.jpeg 225w, https:\/\/yanjingang.com\/blog\/wp-content\/uploads\/2017\/08\/WechatIMG5.jpeg 960w\" sizes=\"(max-width: 660px) 100vw, 660px\" \/><\/a><\/p>\n<p>\u68c0\u6d4b\u7ed3\u679c\uff1a<\/p>\n<p>\u4eca\u5929\u4e0b\u5927\u96e8\u7a7a\u6c14\u592a\u597d\uff0c\u4eba\u5de5\u5236\u9020\u4e86\u70b9\u7070\u5c18\uff0c\u8fd9\u662f\u7070\u5c18\u88ab\u68c0\u6d4b\u5230\u6563\u5f00\u7684\u68c0\u6d4b\u6570\u636e\uff1a<\/p>\n<p><a href=\"https:\/\/yanjingang.com\/blog\/?attachment_id=1329\" rel=\"attachment wp-att-1329\"><img loading=\"lazy\" class=\"alignnone size-full wp-image-1329\" src=\"https:\/\/yanjingang.com\/blog\/wp-content\/uploads\/2017\/08\/MacHi-2017-08-13-17-01-43.png\" alt=\"\" width=\"874\" height=\"506\" srcset=\"https:\/\/yanjingang.com\/blog\/wp-content\/uploads\/2017\/08\/MacHi-2017-08-13-17-01-43.png 874w, https:\/\/yanjingang.com\/blog\/wp-content\/uploads\/2017\/08\/MacHi-2017-08-13-17-01-43-300x174.png 300w, https:\/\/yanjingang.com\/blog\/wp-content\/uploads\/2017\/08\/MacHi-2017-08-13-17-01-43-768x445.png 768w\" sizes=\"(max-width: 874px) 100vw, 874px\" \/><\/a><\/p>\n<p>\u4e34\u65f6\u52a0\u4e86\u4e2a\u8b66\u62a5\u706f\uff0c\u8d85\u8fc7\u9608\u503c\u5c31\u4f1a\u4eae\u8d77\u6765\uff0c\u7b49esp\u677f\u5b50\u5230\u4e86\u5c31\u7edf\u4e00\u90fd\u4f20\u5230server\u7aef\u663e\u793a\u3002<\/p>\n<div style=\"width: 625px;\" class=\"wp-video\"><!--[if lt IE 9]><script>document.createElement('video');<\/script><![endif]-->\n<video class=\"wp-video-shortcode\" id=\"video-1318-1\" width=\"625\" height=\"354\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/mp4\" src=\"https:\/\/yanjingang.com\/blog\/wp-content\/uploads\/2017\/08\/WeChatSight7.mp4?_=1\" \/><a href=\"https:\/\/yanjingang.com\/blog\/wp-content\/uploads\/2017\/08\/WeChatSight7.mp4\">https:\/\/yanjingang.com\/blog\/wp-content\/uploads\/2017\/08\/WeChatSight7.mp4<\/a><\/video><\/div>\n<h2>\u7a0b\u5e8f\u4ee3\u7801<\/h2>\n<pre class=\"pure-highlightjs\"><code class=\"\">int measurePin = 0; \/\/ \u5f15\u811a\u5b9a\u4e49\u91cc\u7684\u7b2c5\u811a,\u9ed1\u8272\u7ebf\u63a5\u5230A0\r\nint pm25Pin = 2; \/\/ \u5f15\u811a\u5b9a\u4e49\u91cc\u7684\u7b2c3\u811a,\u767d\u8272\u7ebf\u63a5\u5230D2\r\nint ledPin = 13; \/\/ led\u62a5\u8b66\u706f\u63a5\u5230D13\r\nint samplingTime = 280;\/\/\u7b49\u5f85LED\u5f00\u542f\u7684\u65f6\u95f4\u662f280\u03bcs\r\nint deltaTime = 40;\/\/\u6574\u4e2a\u8109\u51b2\u6301\u7eed\u65f6\u95f4\u4e3a320\u03bcs\u3002\u56e0\u6b64,\u6211\u4eec\u8fd8\u9700\u518d\u7b49\u5f8540\u03bcs\r\nint sleepTime = 9680;\r\nfloat voMeasured = 0;\r\nfloat vtMeasured = 0;\r\nfloat calcVoltage = 0;\r\nfloat dustDensity = 0;\r\n\r\nvoid setup(){\r\n  Serial.begin(9600);\r\n  pinMode(pm25Pin,OUTPUT);\r\n  pinMode(ledPin,OUTPUT);\r\n}\r\n\r\nvoid loop(){\r\n  digitalWrite(pm25Pin,LOW); \/\/\u5f00\u542fpm2.5\u68c0\u6d4b\u8bbe\u5907\r\n  delayMicroseconds(samplingTime); \/\/ \u5f00\u542fLED\u540e\u7684280us\u7684\u7b49\u5f85\u65f6\u95f4\r\n  voMeasured = analogRead(measurePin); \/\/ \u8bfb\u53d6\u6a21\u62df\u503c\r\n  delayMicroseconds(deltaTime); \/\/ 40us\u7b49\u5f85\u65f6\u95f4\r\n  digitalWrite(pm25Pin,HIGH); \/\/ \u5173\u95edpm2.5\u68c0\u6d4b\u8bbe\u5907\r\n  delayMicroseconds(sleepTime);\r\n  \r\n  \/\/ recover voltage\r\n  calcVoltage = voMeasured * (5.0 \/ 1024.0); \/\/\u5c06\u6a21\u62df\u503c\u8f6c\u6362\u4e3a\u7535\u538b\u503c\r\n  dustDensity = 0.17 * calcVoltage - 0.1; \/\/\u5c06\u7535\u538b\u503c\u8f6c\u6362\u4e3a\u7c89\u5c18\u5bc6\u5ea6\u8f93\u51fa\u5355\u4f4d\r\n  Serial.print(\"\u539f\u59cb\u4fe1\u53f7\u503c:\"); \/\/0-5V mapped to 0-1023 integer values\r\n  Serial.print(voMeasured);\r\n  Serial.print(\" \u7535\u538b:\");\r\n  Serial.print(calcVoltage);\r\n  Serial.print(\" \u7c89\u5c18\u5bc6\u5ea6:\");\r\n  Serial.print(dustDensity); \/\/ \u6700\u7ec8\u6d53\u5ea6\u503c,\u8f93\u51fa\u5355\u4f4d\uff1a \u6beb\u514b\/\u7acb\u65b9\u7c73\r\n  Serial.print(\" \u7a7a\u6c14\u8d28\u91cf :\");\r\n  digitalWrite(ledPin,LOW);\r\n  if (voMeasured &gt; 36.455){\r\n    vtMeasured =  (float(voMeasured\/1024)-0.0356)*120000*0.035;\r\n    Serial.print(vtMeasured);\r\n    if(vtMeasured&lt;75){\r\n      Serial.print(\" \u975e\u5e38\u597d\");\r\n    }else if(vtMeasured&lt;150){\r\n      Serial.print(\" \u5f88\u597d\");\r\n    }else if(vtMeasured&lt;150){\r\n      Serial.print(\" \u5f88\u597d\");\r\n    }else if(vtMeasured&lt;300){\r\n      Serial.print(\" \u597d\");\r\n    }else if(vtMeasured&lt;1050){\r\n      Serial.print(\" \u4e00\u822c\");\r\n    }else if(vtMeasured&lt;1050){\r\n      Serial.print(\" \u4e00\u822c\");\r\n    }else if(vtMeasured&lt;3000){\r\n      Serial.print(\" \u5dee\");\r\n    }else{\r\n      Serial.print(\" \u4f1a\u6b7b\u4eba\u7684,\u8fd8\u4e0d\u5feb\u8dd1\");\r\n    }\r\n\r\n    digitalWrite(ledPin, HIGH);\r\n  }else{\r\n    Serial.print(\" \u672a\u68c0\u6d4b\u5230\u5c18\u57c3\");\r\n  }\r\n  Serial.println(\"\");\r\n  delay(1000);\r\n}<\/code><\/pre>\n<p>\u6211\u53bb\uff0c\u53c8\u4e94\u70b9\u4e86\uff0c\u8d76\u7d27\u7ed9\u513f\u5b50\u505a\u996d\u53bb&#8230;&#8230;<\/p>\n<p>yan <span class=\"hljs-number\">17.8<\/span><span class=\"hljs-number\">.13<\/span>\u00a0<span class=\"hljs-number\">17<\/span>:<span class=\"hljs-number\">16<\/span><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u4eca\u5929\u8001\u5a46\u4e0d\u5728\u5bb6\uff0c\u7533\u8bf7\u7684dueros\u548c\u4e70\u7684\u673a\u5668\u4eba\u96f6\u4ef6\u90fd\u6ca1\u5230\uff0c\u513f\u5b50\u81ea\u5df1\u73a9\u5766\u514b\u73a9\u7684\u6b63hi\uff0c\u6211\u4e5f\u627e\u70b9\u4e8b\u5e72\u5427\uff0c\u4ece\u7bb1\u5b50\u91cc\u6252 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[353],"tags":[494,491,495,493,492,496],"_links":{"self":[{"href":"https:\/\/yanjingang.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/1318"}],"collection":[{"href":"https:\/\/yanjingang.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/yanjingang.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/yanjingang.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/yanjingang.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1318"}],"version-history":[{"count":0,"href":"https:\/\/yanjingang.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/1318\/revisions"}],"wp:attachment":[{"href":"https:\/\/yanjingang.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1318"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/yanjingang.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1318"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/yanjingang.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1318"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}