我一直想在家裡蓋一個氣象站,因為我喜歡氣象學,也覺得動手做很有趣。所以我決定不再等待,直接動手吧 :-)
我想要一個能輕鬆連接到我的舊樹莓派(Raspberry Pi 2 B+)上的設備,以便輕鬆讀取感測器資料。 Pimoron 的 Weather HAT 完全符合我的需求:
只需將其連接到 GPIO 介面即可
下載並安裝 Pimoroni 提供的 Python 函式庫。
Pimoroni 提供了一個很好的教程,可以幫助你建立框架並解決一些常見問題。 社區裡還有其他一些文章也很有幫助。
這款天氣帽的一個優點是可以連接風速計和雨量計。我的陽台空間有限,所以沒裝這些感測器,但以後有機會的話我很想裝一個。
Weather HAT 的 GitHub上有一組很好的範例,可用於讀取感測器資料並將其顯示出來。
但它有一個重要的缺點:由於感測器離樹莓派主機板很近,其溫度會受到樹莓派CPU的影響。因此,需要對溫度進行補償,但這不像Pimoroni教程中提到的那樣簡單地應用一個固定的偏移量。所以我嘗試使用線性迴歸,從我家附近的另一個氣象站取得溫度資料。
除了安裝 Weather HAT 並讀取感測器資料之外,最重要的挑戰是在陽台上找到放置它的最佳位置,以及如何將其與外部環境隔離,同時還要確保足夠的通風,以避免內部積聚熱量。
安裝好 Weather HAT 後,我使用了以下材料將氣象站放置在陽台上:
透明塑膠便當
樹莓派底座外殼
一些家具用黏合保護劑
一些膠水
或許午餐盒不是最佳解決方案,但使用史蒂文森篩網可能有點小題大作。
我用家具保護墊將樹莓派與午餐盒背面稍微隔開一點,這樣感測器就與牆壁之間有了額外的距離。
同時,我在午餐盒上開了幾個孔,讓空氣流通進去給樹莓派散熱。有些孔開在感測器所在的側面,有些孔開在側邊。

幾天後我注意到,由於這些孔洞,在刮風天,溫度感測器的測量值會比實際值略低。但我寧願這樣,也不願讓樹莓派沒有空氣冷卻。我沒有完美的材料,所以不能指望測量結果會完全精確。
正如我上面提到的,由於溫度感測器靠近樹莓派的CPU,因此需要對其讀數進行補償。
Pimoroni Python 庫中用於 Weather HAT 的參數有一個屬性,可以設定應用於裝置溫度測量值的偏移。因此,我嘗試將 Weather HAT 感測器的值與附近氣象站提供的溫度進行比較。
我注意到,要應用的偏移量不能是固定值。實際溫度與 Weather HAT 提供的值之間的差異始終在 12º 到 16º 之間。
為了解決這個問題,我編寫了一個小腳本,可以同時從兩個站點取得溫度資料。利用這些資料,我建立了一個線性迴歸模型,用於計算應該應用於HAT設備溫度讀數的偏移量。
它還不完美。當設備溫度接近 30 度時,差異相當大,但就目前而言,它似乎比應用固定偏移量要好一些,如下所示。

下一篇文章我將介紹我使用 Python 實現軟體的過程,該軟體用於收集測量資料、顯示資料並將其發送到外部系統。
原文出處:https://dev.to/nandofm/building-a-weather-station-using-an-old-raspberry-pi-5333