基于物聯(lián)網(wǎng)的樹莓派氣象站,使用DHT11和BMP180傳感器
濕度、溫度和壓力是決定特定地點天氣狀況的三個重要環(huán)境參數(shù)。所以在這個DIY物聯(lián)網(wǎng)項目會議上,我們正在使用DHT11和BMP180傳感器制作樹莓派氣象站。其中DHT11傳感器檢測溫度和濕度,BMP180傳感器計算壓力。在我們之前的項目中,我們使用了DHT11傳感器來檢測溫度和濕度,現(xiàn)在在這個項目中,我們正在添加另一個傳感器,使用樹莓派制作一個完整的氣象站。
此外,我們將氣象站的數(shù)據(jù)發(fā)送到ThingSpeak,以便從世界任何地方進行實時監(jiān)控,我們可以在網(wǎng)站上查看記錄的數(shù)據(jù)和隨時間變化的圖表。您也可以選擇任何其他物聯(lián)網(wǎng)平臺來監(jiān)控實時數(shù)據(jù)。
組件的要求
?覆盆子π
?DHT11傳感器
?BMP180傳感器
?跳線
線路圖
連接如下表所示:
為Pi氣象站的Thingspeak設置
步驟1:Thingspeak帳戶設置
要在Thingspeak上創(chuàng)建你的頻道,你首先需要注冊Thingspeak。如果你已經(jīng)有了Thingspeak的賬戶,用你的id和密碼登錄。
步驟2:為你的數(shù)據(jù)創(chuàng)建一個通道
一旦你登錄,通過點擊“新頻道”按鈕創(chuàng)建一個新的頻道
點擊“新通道”后,輸入您想要上傳的數(shù)據(jù)的名稱和描述。
輸入數(shù)據(jù)的名稱,在字段1中輸入“濕度”,在字段2中輸入“溫度”,在字段3中輸入“壓力”。如果您想使用更多的字段,您可以選中字段選項旁邊的框,并輸入數(shù)據(jù)的名稱和描述。
在此之后,點擊保存通道按鈕保存您的詳細信息。
步驟3:API密鑰
為了向Thingspeak發(fā)送數(shù)據(jù),我們需要一個唯一的API密鑰,我們將在后面的代碼中使用它來將傳感器數(shù)據(jù)上傳到Thingspeak網(wǎng)站。
點擊“API密鑰”按鈕獲取您上傳傳感器數(shù)據(jù)的唯一API密鑰。
現(xiàn)在復制你的“API Key”,因為我們需要在我們的代碼中使用它。
樹莓派設置與DHT11傳感器
要在樹莓派上使用DHT11傳感器,我們需要安裝Adafruit Python DHT傳感器庫文件。我們可以使用以下命令下載相同的文件:
在此之后,使用樹莓派的軟件配置啟用樹莓派I2C接口:
現(xiàn)在,點擊“接口選項”。
然后點擊“I2C”來啟用它。
Pi氣象站程序設計說明
樹莓派氣象站的完整代碼在本文的末尾給出。從初始化這個項目所需的所有庫、變量和引腳開始。
def readBmp函數(shù)從BMP180傳感器讀取數(shù)據(jù),并將數(shù)據(jù)從字節(jié)轉(zhuǎn)換為字值。
而readDHT()函數(shù)將從DHT11傳感器讀取溫度和濕度數(shù)據(jù)。
從BMP180和DHT11傳感器獲取數(shù)據(jù)后,是時候?qū)?shù)據(jù)發(fā)送到thingspeak。因此,這里的def()函數(shù)也在做同樣的事情。
運行樹莓派氣象站
使用下面的命令創(chuàng)建一個新文件,然后粘貼樹莓派氣象站最后給出的代碼。
現(xiàn)在,將代碼粘貼到上面創(chuàng)建的文件中,并使用下面的命令運行這個文件:
如果它成功編譯,你的樹莓派終端看起來像這樣:
現(xiàn)在用瀏覽器導航到Thingspeak,檢查你的頻道:
我們已經(jīng)成功地建立樹莓派氣象站監(jiān)測溫度,濕度和壓力數(shù)據(jù)使用DHT11和BMP180傳感器。
本文編譯自iotdesignpro