資料介紹
描述
注意:這最初于 2019 年 2 月發布在我的網站上!
我不確定我是什么時候開始對建造氣象站感興趣的。至少在一兩年前……我記得在SwitchDoc 實驗室頁面上看到Project Curacao 2的帖子,并認為構建類似的東西會很有趣,但集成度更高。我也從未從事過“戶外”項目,想了解更多關于防風雨、太陽能充電等的知識……(我最終真正想做的是建造一個超聲波風速計,但我告訴自己我不會從那開始兔子洞,直到我有一個完全工作的氣象站。)
第一個目標是建立一個可以測量以下內容的氣象站:
- 風速和風向
- 雨量
- 氣壓
- 溫度
- 濕度
- 光照水平
第一次嘗試
早些時候,我研究了將 LoRa 用于無線電通信,例如 Curacao 項目。看了一段時間后,我最初決定反對它,因為讓某些東西工作的進入門檻要高得多。不過,我將來可能會切換到它!
由于我一直在其他項目中使用 BLE 設備,所以我制作的第一塊板使用了我熟悉的 NRF52。該設備工作正常,但它從未通過我的工作臺。范圍不是很大(呃!),我對這個項目失去了一段時間的興趣。
第一個 BLE 板
第二次嘗試
在將近一年沒有從事這個項目之后,我告訴自己我會在寒假期間得到一些工作。我決定從一開始就不要過度優化,只是讓一些工作正常。外部。
我不知道為什么我決定最初必須有 GPS。很可能是因為它很有趣,而且這些項目實際上只是學習新事物的借口,而且我之前沒有在嵌入式系統中做過 GPS。無論哪種方式,這讓我選擇了STM32 NUCLEO-L476RG開發板開始。它有大量的 UART 接口(無線電、gps、調試)并且功耗相當低。它還具有原生MBED支持,這是我想要使用的另一個工具(并且會加快開發速度)。
對于收音機,我決定使用Xbee收音機,因為我可以依靠最終成為無線串行端口的東西生存下來。同樣,我最終可能會使用其他東西,但這讓我繼續前進并取得進步。
Nucleo Weather Breakout v0.1
在玩了 Nucleo 板并弄亂了一堆電纜之后,我制作了一個帶有 Xbee 接頭和 RJ11/14 插頭的 PCB 分線板,用于風雨傳感器組件,以及一些 I2C、UART 和模擬引腳斷開。
天氣突圍 v0.1
這塊板讓我做了大量的固件工作,并大致了解了設備的整體功耗。
第一個外殼
因為我想盡快在戶外做點什么,我最終得到了一塊巨大的太陽能電池板,里面有一塊巨大的電池和現成的充電器/調節器。這非常接近可能的最低效率設置,但它工作并開始在外部測量數據。
我找到了一個巨大的Bud Industries NBF-32026 ABS 外殼用作外殼,并為所有電纜找到了一些便宜的電纜密封套。如果沒有某種我沒有的安裝板,就沒有簡單的方法將所有電子設備安裝到盒子上,所以我最終使用了盒子的側面和拉鏈。
第一個外殼內部
。關于在塑料上使用階梯鉆頭,所以我決定試一試。階梯鉆頭效果很好!我之前嘗試過使用非常寬的鉆頭,但沒有成功。
階梯鉆頭
不幸的是,在我現在住的地方,冬天的天井里沒有陽光直射。這意味著即使使用巨大的面板,我仍然必須每周左右手動為電池充電。不管怎樣,它讓我做固件和后端開發(計算機接收和保存數據)。
第一個室外設置
Nucleo Weather Breakout v0.2
在我驗證了大部分固件后,我決定做第二個分線板。這個有一個內置的低功率 GPS 和天線、BMP280 壓力傳感器,以及更少的隨機接頭和一個新的雙 RJ11/14 連接器。
天氣突圍 v0.2
一旦第二塊板到達并開始工作(它需要幾根電線才能像往常一樣工作),它很快就到外面進行長期測試。總的來說,我認為它在被新模型取代之前已經在外面呆了幾個星期。
第一個外殼內部(帶分線 v0.2)
查克 v1.0
在玩過分線板之后,我決定是時候將它們全部集成到一個板上了。我把它命名為Chaac 。
這就是我遇到 MBED 問題的地方。為定制板制作板支持包 (BSP) 并非易事。另一個問題是我無法讓低功耗模式正常工作。同時,我決定放棄 GPS,因為氣象站不太可能在我不知情的情況下移動。有了新的要求,我最終切換到了基于STM32L432KC的開發板。
在 FW 方面,我決定回到我喜歡并使用過的mynewt OS 。移植 mynewt BSP 也并非易事,但我能夠在幾天內完成。使用 mynewt 還給了我使用mcuboot引導加載程序的好處,它可以讓我通過 xbee 鏈接進行“簡單”的固件更新。
這個新板有一個電池充電器和太陽能電池板輸入(借自Adafruit 的太陽能充電器、STM32L432 微控制器、BMP280、風扇驅動器,以及用于外部溫度/濕度和環境光傳感器的輸入。
查克 v1.0
與大多數新設計一樣,我在第一個版本中犯了一些愚蠢的錯誤。Xbee 的待機引腳上沒有下拉電阻,STM32 上有一個浮動的 boot0 引腳,電池充電器接線錯誤等。經過大量調試和一些返工,電路板工作得很好,去外面更換舊設置。
第二個外殼
在第二個外殼內
現在設置更簡單/更小,我需要一個更小的外殼。)我使用了相同的Bud Industries NBF -32202 Economy Box 、McMaster 電纜密封接頭、導管、太陽能電池板的 RAM 支架等……
外面的第二個外殼
為了將 Chaac v1.0 板安裝到外殼上,我再次使用了一塊帶孔的紙板。它在短期內運作良好。在外面,我使用了一條 PVC 管和一個塑料杯來保護溫度/濕度傳感器免受雨水的影響,并使用一些保形涂層來使光傳感器防水。
將保形涂層應用于光傳感器
查克 v1.1
chaac 板的第二個修訂版包括對 v1.0 中所有 bodge 線的修復。我移除了風扇驅動器和 gps 串行輸入,因為我認為我永遠不會使用它們,并將光傳感器連接移動到底部以簡化接線。
另一個新增功能是 MOSFET,可在不使用時斷開風向和光傳感器電源。這有助于在不進行測量時降低功耗。風向傳感器只是一個電阻器(根據風向而變化,但不完全是電位器),所以它總是消耗功率,除非它被切斷。
查克 v1.1
第三個外殼
由于我有一個系統在外面工作,我決定組裝第二個外殼。作為一個非常細心和注重細節的人,我在盒子的錯誤一側鉆了孔。由于太陽能電池板電纜很短,電纜密封套需要在靠近門鉸鏈的盒子的頂部,而不是在底部……我用了一些大猩猩膠帶來掩蓋壞洞,希望它能擋住水。我還嘗試了一種安裝板的新方法:從一次性食品容器中取出一塊便宜的塑料。
修補孔
塑料底座
查克 v1.2
電路板的最新版本增加了太陽能電池板電壓監控、引導加載程序按鈕,并將太陽能電池板和電池連接器移動到更好的位置。太陽能電池板電壓可用于確定電池是否正在充電以及獲得光照水平。我想看看單獨的光照水平傳感器是否值得。
查克 v1.2
第四外殼
我把最后一個外殼放在一起。這個用一塊木頭做一個稍微好一點的背板,并有正確對齊的孔。
帶有木制安裝板的第四個外殼
為什么這么多機箱?!你可能會問……當我探望父母時,這個人和我一起去了墨西哥。我爸爸和我把它安裝在房子的屋頂上。氣象站第一次可以清楚地看到天空:D。
墨西哥的最終設置
服務器/用戶界面
為了從氣象站獲取數據,我設置了一個帶有 Xbee 收音機的 Raspberry Pi。我編寫了一個 python 腳本來解碼天氣數據包并將它們存儲在 sqlite 數據庫中。起初,查看數據的唯一方法是將其導出到 csv 文件中,因此我決定考慮編寫一個 Web 界面來顯示它。因為我不知道自己在做什么,所以我不得不學習諸如Flask 、Bulma和Plot.ly 之類的東西。
最后,我想出了一些看起來像這樣的東西:
網頁界面總結
包含最新數據的“摘要”頁面以及包含日/周/月數據的“繪圖”頁面。
Web UI 圖 (1/2)
Web UI 圖 (2/2)
到目前為止,您需要與樹莓派在同一個網絡上才能查看數據,但我確實計劃在某個時候將其公開可見。
下一步
在我繼續之前,我要從項目中休息一下,做一些其他的事情。一旦我這樣做了,這里有一些我想改進/做的事情:
- Web UI 可以使用大量工作來使它看起來更好
- 使用更小的電池和太陽能電池板(因此,外殼)
- 使用來自各個氣象站的數據制作一個公共 UI(我想做更多!)
- 使用不同的收音機!
- 制作一個超聲波風速計:P
- 還有很多東西……
這個項目我想分享的東西比我想在這篇文章中的要多,所以也許我會寫一些跟進。我學到了很多并想分享的一些主題是:
- 使用 MCUBoot 通過 xbee 鏈接進行無線固件更新
- 功耗越來越低
- Web ui 和數據庫如何工作
- 傳感器的工作原理
- 如何不制作外殼:P
如果這些聽起來很有趣,請告訴我,我可以先嘗試專注于這些!
更多信息
與我的大多數項目一樣,所有源代碼、原理圖/PCB 文件等都可以在github上找到。
-------------------------------------------------- ------------------------------------------
注意:本部分最初于 2020 年 7 月在我的網站上發布
自從我寫關于我的氣象站項目以來,已經一年多了。從那以后發生了很多事情,所以我想我會發布更新。
從墨西哥回來后不久,我開始考慮下一個版本的董事會。我不想繼續使用 XBee 無線電,所以我決定再次嘗試藍牙......用于藍牙的LE 編碼 PHY ,理論上可以為您提供更遠的范圍。使用第 2 版開發板,我能夠讓藍牙正常工作并啟動新的 NRF52
下一個版本 加入了一些我想嘗試的新技術。主要目標是使外殼更小,整個系統更緊湊。我決定將項目分成兩個獨立的 PCB,這樣我就可以在無線電部分使用稍貴的 4 層板,而在較大的基板上使用更便宜的 2 層板。這也讓我可以嘗試雙面表面貼裝焊接。我一直在使用模板和焊膏,但從未在雙面板上做過
我想嘗試的最后一個新功能是不同的射頻連接器。以前的電路板使用 RP-SMA 連接器,但我想嘗試更緊湊的東西。由于插入周期數少,我決定不使用 u.FL 連接器,而是使用 MMCX 連接器。我學到的另一個有趣的話題是防水射頻連接器。
理論上,我可以用相同的基板測試不同版本的無線電/控制器板,但實際上,這個版本只是作為演示單元參加了幾次會議。
實際上,我在 2019 年的CrowdSupply Teardown Conference上就這個問題進行了討論。每當在公共服務器中發出請求時,它將請求向下轉發到相應的 Raspberry Pi。我不想讓它全部基于云,所以數據總是存儲在本地,即使互聯網出現故障。這也避免了復雜的網絡設置來打開防火墻中的端口,因為所有連接都通過公共服務器。
?
隨著時間的流逝,我開始考慮對氣象站進行新的升級。我決定擺脫兩板解決方案并回到單板。這使得組裝和保形涂層變得更加簡單。我沒有使用完全密封的外殼,而是開始研究開放式太陽輻射防護罩,例如 Ambient Weather SRS100LX。 這將擺脫昂貴的外部溫度/濕度傳感器,并允許將所有傳感器安裝在同一 PCB 上。我從BMP280溫度和壓力傳感器切換到BME280溫度、濕度和壓力傳感器。使用輻射防護罩還可以帶來更好的溫度讀數,因為只要有氣流,它在陽光下就不會變熱。
由于輻射屏蔽使整個電路板暴露在元素中,我開始再次研究保形涂層。我讓新板在戶外運行了一段時間,然后涂上涂層,看看在暴雨中它會得到多少水。我認為它實際上確實停止了一段時間,我不得不在回流爐中烘烤它才能讓它回來。它也很快成為一些小動物的家……
清潔并確保它再次工作后,我使用了MG 化學品 #422B硅膠保形涂層。由于傳感器需要暴露,我在涂上涂層之前用 kapton 膠帶將它們遮住。
時光飛逝。至此,距離我上次去墨西哥旅行已經過去了整整一年!在返回那里之前,我將一個新套件與 v3.1 板和輻射防護板放在一起。由于我父親家已經有一個帶有雨/風傳感器的車站,所以我沒有多帶一個。為了獲得更好的溫度/濕度讀數,我們決定將新的安裝在房屋旁邊的小巷中,那里風很大,而且大部分都被遮蔽。
?
幾天后,我們注意到下面的測量溫度明顯低于屋頂,這并不奇怪。另一個令人驚訝的事情是它能夠從它的微型太陽能電池板獲得足夠的電力,即使大部分都被覆蓋!這個新版本在功率方面效率更高。不幸的是,我從未真正實現過用于藍牙的 LE 編碼 PHY,因此無線電范圍不是很好。我們不得不將接收器移到比以前更靠近氣象站的位置。
?
當我拜訪我的父母時,這也是查看舊氣象站在陽光下一年后表現如何的好時機。它很臟,塑料上有很多污漬,但看起來還可以。和其他情況一樣,一些小動物似乎來來去去,但密封的外殼做得很好。主板看起來和以前差不多。截至撰寫本文時,它已經連續運行超過 505 天!
?
一兩個月前,一場熱帶風暴靠近我父母的房子。幾天來風很大,下著雨。不幸的是,BME280 傳感器似乎已經吸收了一些水,因為它現在只報告 100% 的濕度。制造商提出了一些建議,例如在特定溫度下烘烤,然后再補水,但沒有奏效。結論是 BME280 不應該暴露在這些元素中,這實際上不適用于室外氣象站。我開始四處尋找替代品,最終選擇了Sensirion SHT31溫度/濕度傳感器。他們提供過濾膜防水和防塵等級 (IP67) 的選項,應該能夠處理一些水滴。對于壓力,我決定回到 BMP280,但在它周圍蓋了一層保護蓋,以保護它免受水影響,同時允許精確的壓力測量。
通過這次最新的重新設計,我進行了更多更改。首先,我決定不再害怕 LoRa,并安裝了 LoRa 無線電模塊。這將通過正確的固件,允許使用 LoRaWAN 和物聯網進行獨立操作。 它還將允許更長的范圍,其 900MHz 頻率較低,功耗略高。我也可以繼續在我的 Raspberry Pi 點對點設置中使用它。
下一個變化是去掉太陽能電池板和電池充電器。從類似的項目中,我估計我可以獲得低幾十微安甚至個位數微安的平均功耗。使用一些堿性 AA 電池或可充電 AA 電池,這些設備應該可以使用一年以上。這簡化了電路并使安裝更加簡單,因為不需要陽光直射。最后的變化是將壓力傳感器和濕度傳感器分開,并以某種方式將壓力傳感器與元件隔離開來。我有一些想法在我的腦海里蹦蹦跳跳,所以我必須嘗試一些,看看有什么效果。AM2315 _我之前使用的傳感器有一個非常好的網/膜,應該可以將其與水隔離,同時仍然可以準確測量濕度。事實證明,膜并不像我所懷疑的那樣超級便宜。我還考慮過使用帶有非常細網眼的塑料管來阻止水進入,但仍然可以進行適當的壓力測量。
最后,我可能只是拋開我的 CAD 技能,然后制作一個 3D 打印的外殼,讓溫度/濕度傳感器暴露在外,同時屏蔽大部分電路以及壓力傳感器。
這就是我現在所擁有的。與往常一樣,所有設計文件都在 github 上。如果您有任何問題/意見,請隨時給我發電子郵件或在 Twitter @alvaroprieto 上給我發消息。
- 在線氣象站開源分享
- 太陽能氣象站開源項目
- 辛迪的鬧鐘/錄音氣象站開源分享
- 私人實時氣象站開源分享
- 宙斯電子氣象站(ZeWS)開源分享
- 獨特的桌面氣象站開源設計
- WIFI氣象站開源分享
- 屏幕上的氣象站開源案例
- Arduino氣象站項目
- 便攜式氣象站開源分享
- 無人機氣象站開源分享
- Arduino氣象站的設置開源分享
- 微型互聯網氣象站開源項目
- Arduino Nano氣象站開源
- 氣象站ESP8266 E12開源項目
- 關于FPGA的開源項目介紹 1161次閱讀
- 優秀的IC/FPGA開源項目:偽紅外圖像處理 1949次閱讀
- 怎么上手 PR 流程?如何開始參與開源項目? 1470次閱讀
- 如何利用ESP8266實現防雨物聯網氣象站的設計 4963次閱讀
- 如何使用ESP32創建一個氣象站 3771次閱讀
- 基于樹莓派組成的可隨身攜帶氣象站設計方案 2815次閱讀
- 如何使用兩個dht傳感器及HC12模塊制作遠程氣象站? 2792次閱讀
- 基于創建帶有空氣質量傳感器的室內氣象站 2186次閱讀
- dfrobotDIY智能氣象站套件簡介 1618次閱讀
- 全年開源項目的盤點和總結 3231次閱讀
- 基于Altium Designer的OSHw開源項目 3609次閱讀
- 2018 年 2 月份 GitHub 上最熱門的開源項目 4554次閱讀
- 基于STM32的自動氣象站控制模塊設計 8306次閱讀
- FAST:基于FPGA的SDN交換機開源項目(一) 4531次閱讀
- 11個機器學習開源項目 2767次閱讀
下載排行
本周
- 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次下載 | 免費
評論
查看更多