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