資料介紹
描述
這個項目是我第一個項目的高潮,因為我早已忘記了我決定嘗試制作一個支持物聯網的氣象站的原因,讓我開始愛好電子產品。
在最近購買了一些新組件、購買了一臺 3D 打印機并發現了 Adafruit IO 之后,我推動完成并記錄了這個項目,即我的太陽能、Adafruit IO 供電的氣象站。
概述
該項目包括三個關鍵領域:
- Feather M0 微控制器獲取天氣讀數并將其上傳到 Adafruit IO
- 傳感器:用于溫度、壓力和濕度讀數的 BME280 傳感器用于風雨讀數的 SparkFun 天氣計
- 由 Sunny Buddy 以及太陽能電池和蓄電池組成的電力系統
電子產品
在這個項目中,電子設備相對簡單。有:
- 主 Feather 板連接到復位按鈕、氣象儀和 BME280。
- Sunny Buddy 連接到太陽能電池、電池和電源開關。
- 從 Sunny Buddy 到提供電源的 Feather 的連接。
![poYBAGOX4e2ARdaPABFCsfqra-4338.jpg](https://file.elecfans.com/web2/M00/83/09/poYBAGOX4e2ARdaPABFCsfqra-4338.jpg)
重置按鈕這是最簡單的連接。重置按鈕連接到羽毛上的重置和接地引腳。用一小段電線將按鈕焊接到每個引腳上。
BME280 BME280 通過 I2C 連接。它需要連接到 Feathers 3.3V、接地、SDA 和 SLC 引腳。這種連接有不同的選擇,單根電線或 4 線帶狀電纜都可以工作。我建議在羽毛附近使用 JST 或類似的連接器,這樣您就可以插拔 BME280 以便于設置,因為傳感器將駐留在輻射屏蔽中。
就我而言,Feather 安裝在我制作的一塊小電路板上,該電路板上有連接 BME280 的孔。一個小面包板或原型板也可以。
請記住將BME280的總導線長度保持在 1m 以下(越短越好)。
氣象儀 氣象儀有兩個連接點,均為 RJ-11。我建議購買 RJ-11 母連接器將它們插入,以便在需要時斷開它們。您也可以切斷連接器的末端以直接連接電線。
一個連接器用于雨量計。RJ-11 連接器必須連接到接地和羽毛針 11。
另一個連接器處理風速和風向。風速線連接到接地和羽毛引腳 6。風向需要模擬測量,因為值會根據儀表指向的方向而變化。為了正確測量這個值,需要一個分壓器。
風向儀由一個接地引腳組成,另一個引腳連接到一個 10K 電阻,該電阻也連接到 Feather 引腳 A2。電阻器的另一端連接到 Feather 3.3V 引腳。
有關連接 Sparkfun 天氣儀表的更多信息,請參閱Sparkfun 頁面上的教程。
Sunny BuddySolar 充電器Sunny Buddy 需要在其自己的設置指南中描述的一些設置。您必須焊接太陽能電池板的連接器并配置電位器以實現最佳太陽能充電。請參閱Sparkfun 指南進行設置。
電池將插入 Sunny Buddy 上的電池連接器。
電源開關連接到 Sunny Buddy 上的一個負載端子,用一根小電線焊接。電源開關的另一側和來自另一個負載終端的電線在 2 針 JST 連接器中結束。此連接器將插入羽毛電池連接器。
電源重要注意事項連接負載線時,請勿將Feather插入 USB 電源。Feather 有一個內置的 LiPo 充電器,當它有 USB 電源時,它會嘗試為連接的電池充電。但是在這個設置中沒有電池,而是有負載線連接到 Sunny Buddy。如果您出于任何原因需要連接 USB 以斷開連接至 Feather 的 JST 電源連接器。
防水雖然外殼應該可以防止大部分水進入任何電子設備,但它仍然是可能的。作為額外的保護層,我將“CorrosionX”應用于電子設備。它用于海洋應用,以幫助防止水損壞,并獲得良好的在線評論以保護電子產品。
Adafruit IO
Adafruit IO 是連接物聯網項目的絕佳平臺,讓您可以輕松地將數據發送到服務,讓您可以將其可視化并稍后從其他設備檢索它。
Adafruit 有許多關于設置和使用以下服務的教程,這是該項目所需要的。
您的第一步是注冊一個帳戶。注冊后,您將可以訪問您的 Adafruit IO 密鑰和用戶名。您將這些添加到 config.h 文件中
#define IO_USERNAME "YOUR USERNAME HERE"
#define IO_KEY "YOUR IO KEY HERE"
氣象站需要創建 9 個提要。他們是:
- 電池電壓
- 濕度
- 壓力
- 雨
- 開始
- 溫度
- 風向
- 陣風
- 風速
除了“開始”之外,名稱是不言自明的。Start 記錄處理器上電/復位的原因。這可能是第一次上電或看門狗復位。我添加它來監視正在發生的任何異常。
您可以在數據到達時實時查看這些提要。
您也可以創建儀表板。儀表板允許您一次以多種格式顯示多個提要。我為自己創建了一個儀表板,以方便的方式顯示提要。
![pYYBAGOX4fCAUGX0AAESk9hbUHM447.png](https://file.elecfans.com/web2/M00/83/92/pYYBAGOX4fCAUGX0AAESk9hbUHM447.png)
我的車站儀表板是:https ://io.adafruit.com/Gamblor21/dashboards/weather
代碼
該代碼包含兩個主要任務:設置和進行測量。盡管需要進行一些設置,但大多數包含的代碼無需更改即可工作。
編輯 config.h配置文件包含您的 Adafruit IO 用戶名和密鑰,以及您將連接到的 WiFi 路由器的 SSID 和密碼。
設置你的高度
// Set this to your location's altitude above sea level in meters
#define ALTITUDE 235
您必須在此處以海拔米為單位設置您自己所在位置的高度。谷歌地圖和其他工具可以幫助您確定這個值。
檢查引腳
// Pins for the weather gauages. Wind/Rain are digital, Wind direction must be analog
#define VBAT_PIN A7
#define LED_PIN 5
#define WIND_PIN 6
#define RAIN_PIN 11
#define WIND_DIR_PIN A2
如果您將任何儀表連接到不同的引腳,那么我提到您必須在此處更改引腳號。
Setup()正如預期的那樣,設置函數將氣象站設置為運行。主要任務是:
- 在氣象儀引腳上設置引腳模式和中斷
- 設置并連接到 Adafruit IO
- 初始化 BME280 傳感器
- 將最后的重置原因發送到 Adafruit IO
- 重置實時時鐘 (RTC) 并設置鬧鐘以在 60 秒內喚醒
Loop()主循環做的第一件事是……去睡覺。這允許該站處于低功耗模式,直到中斷消失,無論是從記錄讀數的儀表或警報響起,單選時間進行天氣測量。
下一部分僅在警報響起時運行。任何其他中斷都會跳過它,并且羽毛將重新進入睡眠狀態。
警報觸發的每一分鐘都會發生以下情況:
- 閃爍 LED(可選,可以關閉)
-
調用
io.run()
以確保數據流向 Adafruit IO。這在循環過程中被調用多次,否則 WINC1500 緩沖區已滿。如果您注意到 WiFi 傳輸燈卡在這可能已經發生。 - 進行每分鐘一次的測量
- 檢查時間并每兩分鐘進行一次測量
- 檢查時間并每五分鐘進行一次測量
- 重置警報以在下一分鐘觸發
通過將測量時間塊從一個時間塊移動到另一個時間塊,可以輕松更改測量時間。
測量函數讀取一個或多個傳感器值(或由中斷設置的變量),可選擇進行一些基本處理并將最終值發送到 Adafruit IO。
一些值會在幾個測量間隔內保存,以獲得比瞬時測量更有意義的平均值。
中斷當氣象儀記錄讀數時,中斷允許 Feather 在低功耗模式下喚醒。它們還允許 RTC 警報每 60 秒觸發一次,讓 Feather 從睡眠中醒來以讀取讀數。
任何中斷都需要寫入以執行非??斓娜蝿?,因為在中斷執行時無法執行其他任何操作。在氣象站中,中斷要么增加一個變量,要么設置一個標志并立即退出。
3d 打印組件
氣象儀安裝在 3/4" 金屬桿上,因此想法是將其他部件安裝到同一桿上。
輻射屏蔽
![poYBAGOX4giABhmpAAkzZHcg1-g760.jpg](https://file.elecfans.com/web2/M00/83/09/poYBAGOX4giABhmpAAkzZHcg1-g760.jpg)
BME280 受到輻射屏蔽(也稱為史蒂文森屏幕)的保護。防護罩由幾層和一個底部組成,可保護傳感器免受陽光直射和雨水的影響,同時使其仍能感知天氣。它旨在使用釹磁鐵將部分固定在一起,以便將來訪問。我添加了一個可以放在頂部和底部的手柄,以使防護罩可以夾在氣象儀的金屬桿上。
屏蔽層的每一層都是單獨印刷的。除了中間的兩個和兩個把手(可選)外,您將需要每個部件一個。
底部部分用環氧樹脂連接到中間部分之一。頂部的一塊環氧樹脂連接到另一個中間件。
釹磁鐵被環氧樹脂固定在支架片層的銷釘和孔上。還將磁鐵連接到頂層的釘子(以適合傳感器層孔)和底部的孔(以連接到傳感器層的釘子)。
最后,兩個夾子被印刷并用環氧樹脂連接到屏蔽的頂部和底部,以連接到氣象儀的金屬桿上。
BME280 將使用 M2.5 螺釘和螺母連接到支架上。
電子箱
![pYYBAGOX4jOAP42FAAnEdDFE4VU638.jpg](https://file.elecfans.com/web2/M00/83/92/pYYBAGOX4jOAP42FAAnEdDFE4VU638.jpg)
電子箱包含所有其他必須受到保護的組件。這包括 Feather M0、Sunny Buddy、電池和開關。
這個盒子是為我為 Feather 準備的 PCB 設計的。該空間也可以容納切割成尺寸的小型原型板。Sunny Buddy 有安裝孔,可安裝 3.5 毫米螺絲。
盒子底部有幾個孔可以讓傳感器線穿過,還有電源開關和復位按鈕的安裝點。
盒子的頂部將滑過外殼并卡入到位。它設計有懸垂,以幫助防止雨水和雪水進入,但它不防水。
Fusion 360 文件您可以在此處獲取原始 Fusion 360 文件的副本:
集會
您的最終組裝地點將取決于您要測量天氣的位置。項目周圍的空間越大,影響讀數的其他物體就越少,例如擋風的建筑物或保持熱量和升高溫度的表面。
在這個項目中,我選擇將所有部件安裝到 SparkFun 氣象儀隨附的金屬桿上。風速計在頂部,其次是輻射屏蔽、電子箱,然后是雨量計。
太陽能電池板安裝在電子箱的另一側。不用說,這需要指向陽光最多的區域,最好是向上傾斜。通過意識到太陽的位置可以全年變化,因此請嘗試選擇最佳位置(或隨著季節的變化而改變)。
?
![pYYBAGOYeLqAA4SsAB9-W2P45Ho612.jpg](https://file.elecfans.com/web2/M00/83/D4/pYYBAGOYeLqAA4SsAB9-W2P45Ho612.jpg)
未來的計劃和想法
這是一個長期運行的項目,讓我開始更深入地了解電子產品。我相信隨著時間的推移,我會繼續更新和改進這個項目的某些部分。下面列出了我的一些想法。隨意嘗試其中任何一個:
- 檢測光照水平(白天/夜間檢測,晴天/陰天)
- 閃電探測器
- 將時間與實際時間同步
- 構建一個單獨的設備以在小型 eInk 顯示器上顯示內部的天氣數據
- 將數據聚合為更易于人類使用的格式
- 用人工智能進行短期天氣預報實驗
我希望你喜歡這個項目。請讓我知道您看到的任何反饋、疑慮或錯誤。
?
- 太陽能氣象站開源項目
- 帶有樂高積木和低代碼的語音激活氣象站
- 基于Particle Photon的氣象站 0次下載
- 基于Arduino的無線氣象站 0次下載
- 基于ESP8266的自動氣象站 1次下載
- 基于ESP8266的自動氣象站 1次下載
- 使用太陽能電池板的氣象站
- 帶有Arduino的Lora氣象站
- 帶有esp8266和Python Flask的桌面氣象站
- 帶有20x4 LCD的簡單氣象站
- PCB設計的太陽能WiFi氣象站V2.0
- 太陽能WiFi氣象站 V3.0開源
- 帶有Adafruit_IO的氣象站監視器源碼 9次下載
- 帶有BME280的ESP32 Web服務器的高級氣象站 18次下載
- 太陽能供電無線氣象站及信件檢測器和AVR以太網終端的設計制作-視 0次下載
- 如何利用ESP32實現太陽能氣象站的設計 4646次閱讀
- 如何使用ESP32創建一個氣象站 4040次閱讀
- 基于創建帶有空氣質量傳感器的室內氣象站 2358次閱讀
- 如何才能制作太陽能電池 5910次閱讀
- dfrobotDIY智能氣象站套件簡介 1756次閱讀
- 太陽能熱發電基本原理 3.8w次閱讀
- 太陽能硅片生產工藝分析_太陽能硅片有輻射有毒嗎 1.5w次閱讀
- 太陽能地暖的工作原理詳解 5.5w次閱讀
- 多晶硅太陽能板品牌_多晶硅太陽能板價格 7629次閱讀
- 薄膜太陽能電池前途在哪_薄膜太陽能電池有哪些 3.2w次閱讀
- 太陽能板工作的原理是什么 10.2w次閱讀
- 屋頂太陽能發電板利弊_太陽能板屋頂發電原理 7w次閱讀
- 太陽能板如何安裝_太陽能板安裝示意圖 19.4w次閱讀
- 基于STM32的自動氣象站控制模塊設計 8676次閱讀
- 太陽能原理 7027次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數據手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論