第1步:材料
這是我為創(chuàng)建此項目而購買的所有東西。這是一個相對便宜的項目,具體取決于3D打印的成本。如果您能夠在學校打印它,那可能會很便宜。否則,這取決于您在何處進行打印以及在其中進行打印的材料。您會注意到我大量購買了這些產(chǎn)品,這僅僅是因為很難找到單個的電阻器或LED,這使它更便宜。如果有時間,您可以在aliexpress.com上訂購大多數(shù)物品,交貨可能需要一段時間,但是這樣可以限制開支。
沒有印刷品,我在這個項目上花的錢是€81,80。
這些是您需要的材料:
電路:
Raspberry Pi 3
SD卡8GB(最小)
CCS811空氣質量傳感器
DHT22溫濕度傳感器
電位器(對比度LCD)
LCD 16x2
母對母跳線
綠色和紅色LED
電阻(2x470ohm和1 4700ohm)
案例:
3D打印
螺絲
2組分膠(或其他熱膠)
切線工具
只有您使用的是PCB:
烙鐵
助焊劑(更容易)
錫
實驗pcb 2x4cm
第2步:連接
按上述方法連接電線。您可以在fritzing文件中看到一個電路。它不是一個非常復雜的電路,但是如果您想使其盡可能的小,您肯定希望獲得一塊實驗PCB板。除了GND和Vin將被連接到PCB板之外,布線將是相同的。傳感器將通過母跳線或公頭通過焊接連接。不要忘記在DHT22傳感器上焊接電阻。
我還建議使用10cm的短電纜。否則,包裝盒中將充滿電纜。您不需要很長的照片,因為打印的尺寸要盡可能小。
步驟3:3D打印
當我想到一個案件時,突然想到的第一個難題就是3D打印。由于我父親已經(jīng)打印出其他一些物品,所以他自己設計了這些物品。我們一起創(chuàng)造了這個設計,并且在各個方面都做到了。它應該被充分冷卻,可以將所有零件擰緊就位,否則,可以將其推到位。
我們甚至繪制了每個組件以檢查是否適合所有位置。每個人都可以使用該文件我們希望聽到一些反饋。我們對結果感到非常滿意。
步驟4:代碼
可以在Github上找到該項目的代碼。如果您使用了其他引腳(例如,用于LED的另一個GPIO引腳,則必須調(diào)整這些變量。將有兩個運行的python腳本,web.py用于網(wǎng)站,sensor.py用于讀取傳感器并進行更新
通過配置的樹莓派,您可以開始使用。首先,您需要更新和升級所有軟件包:
sudo apt-get update && sudo apt-get upgrade
之后,您需要安裝以下軟件包:
sudo apt install -y python3-venv python3-pip python3-mysqldb mariadb-server uwsgi nginx uwsgi-plugin-python3
現(xiàn)在創(chuàng)建一個虛擬環(huán)境:
me@my-rpi:~ $ python3 -m pip install --upgrade pip setuptools wheel virtualenv
me@my-rpi:~ $ mkdir project1 && cd project1
me@my-rpi:~/project1 $ python3 -m venv --system-site-packages env
me@my-rpi:~/project1 $ source env/bin/activate
(env)me@my-rpi:~/project1 $ python -m pip install mysql-connector-python argon2-cffi Flask Flask-HTTPAuth Flask-MySQL mysql-connector-python passlib
既然完成了,您可以將代碼從GitHub克隆到您的虛擬環(huán)境中,可以通過多種方式完成。
在目錄 conf 中,您可以找到四個文件‘必要時必須進行調(diào)整。您肯定必須在每個文件中都更改用戶和主目錄。只要您沒有更改我的代碼,uWSGI ini應該可以,請確保在必要時更改用戶和virtualenv
因為使用了CCS811傳感器專門用于arduino,它無法以樹莓派的速度通過i2c總線進行通信。您必須在配置文件中將速度降低到10000(我使用9600)的波特率。
還必須獲得adafruit傳感器的庫。我可以在這里進行解釋,但是有一個完美的adafruit指南很好地解釋了所有這些。
因為我們希望在連接樹莓派時自動運行python腳本,所以您必須使用這些服務。如果您保留我的代碼,它們應該沒問題。要使它們運行,您需要做的就是啟用它們。在您這樣做之前,還有最后一件事。
由于我們使用的是nginx Web服務器,因此我們必須停用默認值,并用我們自己的配置替換它。為此,應遵循以下步驟:
將conf/nginx復制到* sites-available *
刪除鏈接到默認配置
將鏈接添加到新配置
重新啟動nginx以保存更改
me@my-rpi:~/project1 $ sudo cp conf/project1-*.service /etc/systemd/system/
me@my-rpi:~/project1 $ sudo systemctl daemon-reload
me@my-rpi:~/project1 $ sudo systemctl start project1-*
me@my-rpi:~/project1 $ sudo systemctl status project1-*
Nginx和mysql應該一直運行。它們與樹莓派一起啟動。 Web腳本和傳感器腳本尚不可用。
為此,您仍然需要使用以下命令啟用這兩項服務:
sudo systemctl enable project1-flask.service
sudo systemctl enable project1-sensor.service
步驟5 :數(shù)據(jù)庫
我的數(shù)據(jù)庫由三個表組成。用戶與其他表沒有關系。這僅用于登錄并授予對網(wǎng)站的訪問權限。打開設備電源后,每隔50秒就會將CO2值和TVOC值寫入數(shù)據(jù)庫。每5分鐘的溫度和濕度。這樣,我們就可以清楚地了解過去。
可以在此處找到SQL文件,但是要在raspberry pi上獲取數(shù)據(jù)庫,您應該按照以下步驟操作:
在上一步中安裝軟件包之后,mariadb/mysql應該立即運行。您可以在此行中進行檢查:
me@my-rpi:~ $ sudo systemctl status mysql
要創(chuàng)建數(shù)據(jù)庫和用戶,您只需在GitHub中的代碼中運行sql腳本即可。如果您正確執(zhí)行了此操作,則應該使用以下命令查看表:
me@my-rpi:~ $ echo ’show tables;‘ | mysql project1 -t -u project1-admin -p
現(xiàn)在我們已經(jīng)設置好了,您無需進行任何測試就可以確保一切正常。除非您已連接到wifi,否則需要使用以太網(wǎng)電纜將其連接并手動運行。
步驟6:連接到Wi-Fi
在nano中打開wpa-supplicant配置文件(沒關系,只需確??梢允褂梦谋揪庉嬈骷纯?。)
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
轉到文件底部并添加以下內(nèi)容(用您的ssid名稱和密碼名稱代替):
network={
ssid=“ssid-name”
psk=“password-name”
}
要創(chuàng)建加密密碼,您可以使用wpa_passphrase并將其簡單復制到wpa_supplicant.conf psk中。使事情更安全。
wpa_passphrase “ssid-name” “password-name”
如果您希望它自動連接到此Wi-Fi網(wǎng)絡,并且配置文件中還有其他文件,請確保將優(yōu)先級更改為更高的級別通過在配置文件中將這一行添加到網(wǎng)絡中:
priority=2
別忘了用以下命令重新配置接口:
wpa_cli -i wlan0 reconfigure
現(xiàn)在,您已經(jīng)全部設置并連接到wifi網(wǎng)絡。
步驟7:將所有內(nèi)容放在一起
自前夕將黑線連接好并焊接,就可以了。這樣設計的目的是,您可以打開機箱而沒有任何松動的電線。這意味著所有內(nèi)容都附著在底部。首先要做的是對樹莓進行一些調(diào)整。它的每個角落都有孔,但這些孔沒有應有的大。直徑應足以在內(nèi)部安裝3mm的螺釘。我們必須打磨孔,使它們變寬一些。
第二件事是在每個孔中切出一個螺紋。這聽起來可能很難,但是可以使用正確的工具輕松完成。我建議在本地硬件商店進行此操作,只要求使用切線工具即可。由于我父親是金匠,因此他有工作上的工具。我可能會上傳一個新的stl文件,以便稍后再打印,但這需要一臺非常準確的打印機。
第三步是將pi擰到底部。您需要4個7毫米長的螺釘,直徑為3毫米。之后,您可以將PCD板推入底部頂部提供的位置??梢詫CS811傳感器推入左側提供的位置,而DHT11可以連接到右側板上。兩者都被隔離并且通風良好,但是之后我們發(fā)現(xiàn)內(nèi)部仍然很熱。
然后,您需要將LED固定在其燈管上。我們用2種成分的膠水做到了這一點,但是您可以根據(jù)自己的喜好來做。確保它們粘在那里。
現(xiàn)在,您可以安裝LCD顯示器,您需要的螺釘?shù)闹睆綉c先前的螺釘相同,但要稍長一些。我的是1厘米。如果擰緊了四個螺絲,則只剩下一件事了。連接頂部。您只需要四個直徑相同,直徑為2cm的螺釘即可。現(xiàn)在一切就緒,您就可以啟動它。
步驟8:啟動
該項目的啟動過程非常簡單:
將電源線連接到機箱的左側。它不是很明顯,但是您可以通過通風孔看到。如果您知道了一次,這將不再是問題。
花一些時間來啟動。
IP地址將在顯示屏上顯示十秒鐘。您唯一需要做的就是確保您已連接到同一網(wǎng)絡,并在瀏覽器的地址欄中輸入IP地址。
您現(xiàn)在在網(wǎng)站上。您還沒有帳戶,因此請創(chuàng)建一個帳戶。
如果您已注冊,請登錄。
完成!您可以在網(wǎng)頁上看到所有數(shù)據(jù),并且LCD顯示屏顯示當前的空氣質量。
由于溫度升高,我們將傳感器放置在外殼的底部。這樣,溫度不會對注冊值產(chǎn)生太大影響。因此,為獲得最佳測量效果,請使設備直立放置,也可以將其掛在墻上。
-
空氣質量傳感器
+關注
關注
2文章
70瀏覽量
13338
發(fā)布評論請先 登錄
相關推薦
評論