資料介紹
描述
InqWeather是一個簡單的基于網絡的氣象站。它是一個正在進行的項目的一部分,用于在我們當地的公共圖書館和社區學院教授介紹性 Arduino、物聯網和基于 Web 的編程技術。
硬件
InqWeather硬件非常簡單:
- 1 面包板
- 1 AHT10 溫度/濕度傳感器分線器,使用 I2C
- 4 跳線
![poYBAGNYfQ-AXdRqAAEKZoiqWwQ511.jpg](https://file.elecfans.com/web2/M00/73/49/poYBAGNYfQ-AXdRqAAEKZoiqWwQ511.jpg)
InqWeather 接線
我們利用 I2C 作為多目標串行通信總線。換句話說,我們可以只使用 4 根電線來服務兩個傳感器。請注意 BMP180 和 AHT10 板的引腳 VIN、GND、SCL 和 SDA 如何位于相同的面包板行上。這樣,僅使用我們處理器的兩個數據引腳就可以查詢兩個傳感器的數據。
- 紅線——NodeMCU 3V 引腳到傳感器的 VIN
- 黑線 – NodeMCU G 引腳到傳感器的 GND
- 黃線——NodeMCU D1 引腳到傳感器的 SCL
- 橙色線 - NodeMCU D2 引腳到傳感器的 SDA
服務器端草圖
新版本(5.0)有所增長。主要的源代碼草圖仍然是大約 200 行,完全注釋。這些行中只有大約 30 行用于創建 Web 服務器。Sketch 的其余部分是傳感器和項目特定計算的標準處理。該代碼的一些功能包括:
- InqPortal Web 服務器公開客戶端 UI,提供客戶端-服務器通信并大大減少與 InqWeather 交互所需的編碼。您會注意到沒有代碼執行顯式發送和接收。這一切都在透明地處理,因此開發人員可以只專注于手頭的項目……一個氣象站!
- 展示一個持久的、已發布的變量 -高度= 用于將您所在位置的氣壓轉換為氣象服務報告的等效海平面壓力的因子。同樣在 5.0 版本中,我們添加了多個客戶端可修改變量以支持自定義 Zambretti 天氣預報算法。
- 發布只讀變量以傳播當前溫度、濕度、壓力 Zambretti 結果。我們希望在測試和演示期間有一個更加動態的界面,所以這些變量每秒更新一次。
- 發布只讀變量以傳播每分鐘的溫度、濕度和壓力。這些是所有 1 秒讀數的累積一分鐘平均值。這些是應該用作氣象站的。
- 使用循環緩沖區存儲 3 小時的壓力讀數。這些被用作 Zambretti 天氣預報算法的主要輸入之一。
- 您甚至不必輸入此內容。當您從 Arduino IDE 庫管理器下載InqPortal庫時, InqWeather就是示例之一。
- 我們現在有第二個文件Zambretti.h來處理所有預測計算。
客戶端應用程序
InqWeather具有三個不同的應用程序(網頁)來顯示結果。這些大多是裝飾性的,可以很容易地更改為裝飾性或功能……顯然無需重新編譯。下面顯示了上傳到InqWeather/InqPortal服務器的文件(Web 內容)列表。
![pYYBAGNYfRKAXz0zAAErNLAX_kU914.png](https://file.elecfans.com/web2/M00/73/DC/pYYBAGNYfRKAXz0zAAErNLAX_kU914.png)
版本 1 – 純數字
純數字網頁是默認網頁——這意味著如果在瀏覽器的 URL 地址行之后沒有定義 html 文件,它將被調用。這是實際使用index.html的標準 Web 服務器默認設置。
- 它顯示兩個溫度,因為兩個傳感器都提供溫度。(標簽旁邊的一小部分)通常,我們可能不會同時使用兩者,但在課堂上,我們希望展示傳感器制造的可變性。
- 溫度從服務器提供的°C 修改為客戶端的°F。index.js源代碼文件進行了更改。如果您是°C 類型的人,請刪除明顯的等式,您將得到°C。這是一個重要的概念,我們攔截服務器提供的原始數據并根據客戶端用戶的上下文對其進行更改。在這個例子中,InqWeather 服務器的一個觀察者可能更喜歡°C,而另一個°F。兩者都可以有自己的方式,服務器不必為細節煩惱。
版本 2 – 模擬
![pYYBAGNYfRiAD0thAAGDp4b3TIQ565.png](https://file.elecfans.com/web2/M00/73/DC/pYYBAGNYfRiAD0thAAGDp4b3TIQ565.png)
模擬版 ()
在這個版本中,我們想要演示使用現成的 JavaScript 庫。在上課的時候,我們一時興起把它從網上下載下來,在閱讀了網站的文檔大約十分鐘后把它拍了下來。為他的圖書館MykhaIloStadnyk 大聲疾呼……尤其是為他的國家。
版本 3 – 預測
![poYBAGNYfRqAG0DwAAEXq-ZLeVo126.png](https://file.elecfans.com/web2/M00/73/49/poYBAGNYfRqAG0DwAAEXq-ZLeVo126.png)
InqWeather使用一個循環緩沖區來保存過去三個小時的壓力讀數。它現在使用這些值來提供 Zambretti 算法進行預測分析所需的重要信息。Zambretti 算法創建于 1915 年,遠早于數字計算機,它利用大氣壓力和過去三個小時內的壓力變化來得出 26 種不同天氣預報 (AZ) 中的一種。InqWeather Sketch(服務器)將這個值發送到任何客戶端,只要它發生變化。客戶端應用程序(在本例中為changed.jsfile) 獲取該值,查找天氣描述并顯示它。它還檢查具有相同名稱的圖像(A.jpg、B.jpg... Z.jpg)并找到最接近的可用圖像以顯示為背景。
以編程方式,它的主要演示點是關注點分離。服務器提供 Zambretti 信函,但客戶端可以以不同的方式顯示結果。所有描述都可以從 1915 年的原始字符串更改為 21 世紀更相關的內容或任何語言。只需更改 changed.js 文件中的值并將其上傳到 InqWeather 服務器。只需將圖片命名為所需的條件,就可以更改背景(例如...在您的前門拍攝天氣狀況的圖片)。在上面的例子中 N.jpg并將其上傳到服務器。無需更改代碼。客戶端應用程序將檢測可用圖像并在適當時顯示它。
100 小時測試結果
在測試的前 100 小時內, InqPortal管理員正在監視服務器。它能夠配置歷史記錄儀以跟蹤重要的系統性能指標以及您的任何數字輸出。在這里,我們有 100 小時的數據顯示 AHT10 和 BMP180 的溫度以及濕度和海平面歸一化氣壓。它還跟蹤三個小時的壓力變化。
![pYYBAGNYfR6AZmDvAAdSnvf26Nk400.png](https://file.elecfans.com/web2/M00/73/DC/pYYBAGNYfR6AZmDvAAdSnvf26Nk400.png)
期貨
現在就是這樣。InqWeather 是一個很棒的教學/學習項目。如果您對未來的補充有任何建議,請告訴我……特別是如果它們可以用作未來學生的教學時刻。
- Arduino在線氣象站(NodeMCU)
- 如何制作簡單的氣象站
- Arduino無線氣象站
- Arduino氣象站
- 基于LoPy4的氣象站設計 0次下載
- Sigfox和Arduino氣象站
- 基于Arduino的無線氣象站 0次下載
- 使用Arduino和網絡技術制作實時氣象站
- Arduino氣象站項目
- DIY簡單氣象站
- 使用Arduino和NodeMCU的氣象站
- 手持式氣象站BNL-GPRS系列使用手冊 4次下載
- 帶有Adafruit_IO的氣象站監視器源碼 9次下載
- 自動氣象站的抗干擾技術 26次下載
- 基于MSP430的智能氣象站的設計
- 基于幾何的泰森多邊形來生成形體骨架 1004次閱讀
- 4G氣象站的設計與實現 991次閱讀
- 如何利用ESP32實現太陽能氣象站的設計 4646次閱讀
- 如何利用ESP8266實現防雨物聯網氣象站的設計 5136次閱讀
- 如何利用粒子光子把你的雨傘變成氣象站 1532次閱讀
- 如何使用ESP32創建一個氣象站 4040次閱讀
- 如何手動制作一個風速儀 6098次閱讀
- 耐用PROFINET主站設備與PROFIBUS從站連接方法 6163次閱讀
- 基于樹莓派組成的可隨身攜帶氣象站設計方案 2989次閱讀
- 如何使用兩個dht傳感器及HC12模塊制作遠程氣象站? 2977次閱讀
- 基于創建帶有空氣質量傳感器的室內氣象站 2358次閱讀
- 基于電子墨水屏實現RGB顯示器的開發設計 4357次閱讀
- dfrobotDIY智能氣象站套件簡介 1756次閱讀
- 光照傳感器的工作原理 4.4w次閱讀
- 基于STM32的自動氣象站控制模塊設計 8676次閱讀
下載排行
本周
- 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次下載 | 免費
評論