你的位置:首頁(yè) > 傳感技術(shù) > 正文

不用專(zhuān)業(yè)設(shè)備,用樹(shù)莓派就能玩一把室內(nèi)環(huán)境監(jiān)測(cè)!

發(fā)布時(shí)間:2016-02-18 責(zé)任編輯:wenwei

【導(dǎo)讀】最近在研究怎么在樹(shù)莓派上接入各種傳感器,初步完成了氣壓溫濕度還有pm2.5/pm10的檢測(cè)功能,本來(lái)覺(jué)得有些配置上寫(xiě)出來(lái)可能會(huì)比較復(fù)雜,但是看到值友casatift幾篇原創(chuàng)的受歡迎程度,決定也出來(lái)分(pian)享(jin)下(bi)。
 
首先說(shuō)明下,基于arduino的方案,從性?xún)r(jià)比上來(lái)說(shuō)相對(duì)樹(shù)莓派要高很多,畢竟一個(gè)樹(shù)莓派200大洋,一個(gè)arduino的板子才1、20來(lái)塊,如果只是為了監(jiān)測(cè)監(jiān)測(cè)市內(nèi)的溫濕度空氣質(zhì)量啥的,其實(shí)還是arduino這種小板子性?xún)r(jià)比高。那么又想省錢(qián)又想省事的話(huà),淘寶還有不少商家拿攀藤g5+單片機(jī)搭出來(lái)的pm2.5檢測(cè)的成品,1、200也不貴。我寫(xiě)的這篇東西,更適合已經(jīng)有了或者將要買(mǎi)樹(shù)莓派的值友。
 
樹(shù)莓派好在做這種小的電子diy時(shí)候?qū)懘a方便,c、python或者其他的語(yǔ)言,只要linux上有的、有g(shù)pio相關(guān)的包,都可以用,會(huì)什么用什么。而且可以在電視上放放視頻、實(shí)現(xiàn)簡(jiǎn)單的nas、http服務(wù)器之類(lèi)的功能。外設(shè)也和pc基本兼容。哪天玩膩了還可以干點(diǎn)別的東西。
 
首先完成體照片鎮(zhèn)樓:
 
不用專(zhuān)業(yè)設(shè)備,用樹(shù)莓派就能玩一把室內(nèi)環(huán)境監(jiān)測(cè)!
 
采購(gòu)清單

樹(shù)莓派2:
 
不用專(zhuān)業(yè)設(shè)備,用樹(shù)莓派就能玩一把室內(nèi)環(huán)境監(jiān)測(cè)!
 
200左右,要是圖便宜的話(huà),可以收個(gè)二手一代樹(shù)莓派,100多應(yīng)該能拿下,其他的像橙子派之類(lèi)的跟風(fēng)產(chǎn)品,也有g(shù)pio口,自稱(chēng)和樹(shù)莓派兼容,不知道實(shí)際如何,價(jià)格90多。
 
GY-68模塊:
 
不用專(zhuān)業(yè)設(shè)備,用樹(shù)莓派就能玩一把室內(nèi)環(huán)境監(jiān)測(cè)!
 
芯片也就是bmp180,監(jiān)測(cè)氣溫氣壓。淘寶大概7-13塊
 
SHT20:
 
不用專(zhuān)業(yè)設(shè)備,用樹(shù)莓派就能玩一把室內(nèi)環(huán)境監(jiān)測(cè)!
 
監(jiān)測(cè)氣溫、濕度,25塊左右,這個(gè)記得買(mǎi)模塊sht20只是上面的芯片名稱(chēng)。
 
攀藤g5:
 
不用專(zhuān)業(yè)設(shè)備,用樹(shù)莓派就能玩一把室內(nèi)環(huán)境監(jiān)測(cè)!
 
檢測(cè)pm2.5/pm10,用的是激光散射的方式,相對(duì)比較準(zhǔn)確, 110-130左右的樣子。
 
LCD1602模塊:
 
不用專(zhuān)業(yè)設(shè)備,用樹(shù)莓派就能玩一把室內(nèi)環(huán)境監(jiān)測(cè)!
 
我是跑中關(guān)村的中發(fā)市場(chǎng)買(mǎi)的,藍(lán)白屏(下面哪種,藍(lán)底白字,上面的是綠底,黑字)帶背光3.3v,18塊,回來(lái)看淘寶才發(fā)現(xiàn)便宜點(diǎn),買(mǎi)時(shí)候注意是5v還是3.3v的,我是因?yàn)橘I(mǎi)的擴(kuò)展板只能插3.3v的。
 
雜物:
 
面包板、公對(duì)母、公對(duì)公杜邦線(xiàn),加一塊10快錢(qián)吧,淘寶有賣(mài)套裝的。如果要裝lcd1602,而且不用擴(kuò)展板,記得再買(mǎi)個(gè)10k的電位器。
 
上面是必選物品,下面是可選物品:
 
GY-30:
 
不用專(zhuān)業(yè)設(shè)備,用樹(shù)莓派就能玩一把室內(nèi)環(huán)境監(jiān)測(cè)!
 
測(cè)光強(qiáng)的,說(shuō)實(shí)話(huà)沒(méi)多大用,就是為了個(gè)好玩,8、9塊錢(qián)
 
DVK512擴(kuò)展板:
 
不用專(zhuān)業(yè)設(shè)備,用樹(shù)莓派就能玩一把室內(nèi)環(huán)境監(jiān)測(cè)!
 
買(mǎi)這個(gè)是為了接線(xiàn)方便(尤其是lcd1602,3.3V的lcd1602直接插上就可以),i2c總線(xiàn)接口和uart接口也單獨(dú)引出了,接線(xiàn)方便。另外集成了時(shí)鐘電路、二極管小燈,usb轉(zhuǎn)串口之類(lèi)的功能。
 
性?xún)r(jià)比一般80塊,當(dāng)時(shí)也是頭腦一熱,自己面包板搭也是可以的,買(mǎi)這個(gè)就是圖個(gè)最后樣子好看點(diǎn),另外就是樹(shù)莓派1代不推薦,因?yàn)?帶gpio是40針,一代只有26針,沒(méi)法直接插上,還得用杜邦線(xiàn)引出。
 
免驅(qū)wifi網(wǎng)卡:
 
一般賣(mài)樹(shù)莓派的店家都有,插上之后配好系統(tǒng)里配好路由就能用,20+。
 
樹(shù)莓派2的外殼
 
不用專(zhuān)業(yè)設(shè)備,用樹(shù)莓派就能玩一把室內(nèi)環(huán)境監(jiān)測(cè)!
 
15、6塊,也是買(mǎi)樹(shù)莓派時(shí)候可以捎上一個(gè)。
 
連線(xiàn):
 
首先是傳感器部分,因?yàn)槲疫x擇的傳感器就兩種接口,i2c和串口的,所以接線(xiàn)比較簡(jiǎn)單,上圖:
 
不用專(zhuān)業(yè)設(shè)備,用樹(shù)莓派就能玩一把室內(nèi)環(huán)境監(jiān)測(cè)!
 
然后是LCD1602,這個(gè)分兩種情況,一個(gè)是買(mǎi)了擴(kuò)展板的,直接把插到對(duì)應(yīng)的插槽里就行,如果沒(méi)買(mǎi)的話(huà)自己搭,參考這個(gè)(注意這是5v的圖,千萬(wàn)別把3.3v的lcd1602照貓畫(huà)虎接上去):
 
不用專(zhuān)業(yè)設(shè)備,用樹(shù)莓派就能玩一把室內(nèi)環(huán)境監(jiān)測(cè)!
 
系統(tǒng):
 
我用的rasbian,怎么刷系統(tǒng)、配網(wǎng)絡(luò)之類(lèi)的不說(shuō)了,可以參考這個(gè)教程:鏈接
 
說(shuō)幾個(gè)注意的地方:
 
1、要啟用i2c接口
 
登陸后運(yùn)行raspi-config
 
Advanced Options->I2c->YES
 
不用專(zhuān)業(yè)設(shè)備,用樹(shù)莓派就能玩一把室內(nèi)環(huán)境監(jiān)測(cè)!
 
之后重啟
 
2、安裝i2c-tools
 
apt-get install i2c-tools
 
安裝好后運(yùn)行i2cdetect -y 1(樹(shù)莓派1應(yīng)該是改成0)
 
應(yīng)該有類(lèi)似下面的內(nèi)容出現(xiàn),其中的23、40、77是應(yīng)該出現(xiàn)的,沒(méi)有的話(huà)說(shuō)明接線(xiàn)圖左邊的一溜有沒(méi)接對(duì)的,其中23是GY-30, 40是sht20,77是GY-68:
 
不用專(zhuān)業(yè)設(shè)備,用樹(shù)莓派就能玩一把室內(nèi)環(huán)境監(jiān)測(cè)!
 
3、配置串口,以方便讀取攀藤g5的數(shù)據(jù)
 
因?yàn)闃?shù)莓派就一個(gè)串口,默認(rèn)貌似開(kāi)了內(nèi)核串口輸出,這樣就沒(méi)法用來(lái)讀攀藤g5的數(shù)據(jù)了,所以需要關(guān)閉。
 
修改/boot/cmdline.txt里面的內(nèi)容為:
 
dwc_otg.lpm_enable=0 rpitestmode=1 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
 
保存,重啟。
 
完成后輸入命令cat /dev/ttyAMA0 -b -v
 
之后應(yīng)該看到有幾行亂碼出現(xiàn):
 
不用專(zhuān)業(yè)設(shè)備,用樹(shù)莓派就能玩一把室內(nèi)環(huán)境監(jiān)測(cè)!
 
這樣就說(shuō)明pm2.5的傳感器也連接好了,現(xiàn)在就可以上代碼了,我把我python寫(xiě)的腳本開(kāi)源出來(lái),方便大家(里面有些程序配置的說(shuō)明,參考就可以)
 
因?yàn)橐L(zhǎng)期運(yùn)行需要裝個(gè)supervisor 達(dá)到自動(dòng)啟動(dòng)腳本守護(hù)的功能:
 
apt-get install supervisor安裝
 
之后在/etc/supervisor/conf.d/里新建個(gè)配置文件,內(nèi)容如下
 
[program:yeelink_poster.py]
 
command=python /自己的腳本路徑/yeelink_poster.py
 
autorstart=true
 
directory=/自己的腳本路徑/
 
autorestart=true
 
startsecs=10
 
startretries=36
 
redirect_stderr=true
 
stdout_logfile=/自己的腳本路徑/log.txt
 
stderr_logfile=/自己的腳本路徑/err.txt
 
之后自己在這個(gè)頁(yè)面上注冊(cè)個(gè)賬號(hào),然后添加設(shè)備傳感器,之后把設(shè)備id、傳感器id、api_key都填入python代碼里就行。
 
至此大功告成。
 
然后其實(shí)做之前也是不大了解這些東西的,但是實(shí)際做起來(lái)發(fā)現(xiàn),只要把線(xiàn)連好了,網(wǎng)上大把的開(kāi)源代碼可供參考,我的代碼里幾個(gè)讀取傳感器數(shù)據(jù)的代碼都是參照別人開(kāi)源的改來(lái)的。現(xiàn)在互聯(lián)網(wǎng)發(fā)達(dá),自己diy些東西方便太多了。
 
如果有條件,后續(xù)用wifi插座或者用繼電器模塊diy一下,就可以相對(duì)智能的控制家里的加濕器、還有一些低端沒(méi)有傳感器的凈化器(譬如ffu)。



推薦閱讀:


頭條哥的夢(mèng)想之作!FIIL耳機(jī)能讓汪峰上頭條否?
無(wú)線(xiàn)性能很野蠻的上網(wǎng)“指揮官”——網(wǎng)件R8500
一款能喚起 70 后工程師朋友“童年趣事”的迷你電烙鐵!
雙叉神器+5D Mark III瘋狂測(cè)試:最快手機(jī)瀏覽器花落誰(shuí)家?
改與變?一場(chǎng)關(guān)于Android 7.0的“偽”評(píng)測(cè)

要采購(gòu)傳感器么,點(diǎn)這里了解一下價(jià)格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書(shū)下載更多>>
熱門(mén)搜索
?

關(guān)閉

?

關(guān)閉