資料介紹
描述
InqWeather是一個(gè)簡(jiǎn)單的基于網(wǎng)絡(luò)的氣象站。它是一個(gè)正在進(jìn)行的項(xiàng)目的一部分,用于在我們當(dāng)?shù)氐墓矆D書館和社區(qū)學(xué)院教授介紹性 Arduino、物聯(lián)網(wǎng)和基于 Web 的編程技術(shù)。
硬件
InqWeather硬件非常簡(jiǎn)單:
- 1 面包板
- 1 AHT10 溫度/濕度傳感器分線器,使用 I2C
- 4 跳線

InqWeather 接線
我們利用 I2C 作為多目標(biāo)串行通信總線。換句話說,我們可以只使用 4 根電線來服務(wù)兩個(gè)傳感器。請(qǐng)注意 BMP180 和 AHT10 板的引腳 VIN、GND、SCL 和 SDA 如何位于相同的面包板行上。這樣,僅使用我們處理器的兩個(gè)數(shù)據(jù)引腳就可以查詢兩個(gè)傳感器的數(shù)據(jù)。
- 紅線——NodeMCU 3V 引腳到傳感器的 VIN
- 黑線 – NodeMCU G 引腳到傳感器的 GND
- 黃線——NodeMCU D1 引腳到傳感器的 SCL
- 橙色線 - NodeMCU D2 引腳到傳感器的 SDA
服務(wù)器端草圖
新版本(5.0)有所增長(zhǎng)。主要的源代碼草圖仍然是大約 200 行,完全注釋。這些行中只有大約 30 行用于創(chuàng)建 Web 服務(wù)器。Sketch 的其余部分是傳感器和項(xiàng)目特定計(jì)算的標(biāo)準(zhǔn)處理。該代碼的一些功能包括:
- InqPortal Web 服務(wù)器公開客戶端 UI,提供客戶端-服務(wù)器通信并大大減少與 InqWeather 交互所需的編碼。您會(huì)注意到?jīng)]有代碼執(zhí)行顯式發(fā)送和接收。這一切都在透明地處理,因此開發(fā)人員可以只專注于手頭的項(xiàng)目……一個(gè)氣象站!
- 展示一個(gè)持久的、已發(fā)布的變量 -高度= 用于將您所在位置的氣壓轉(zhuǎn)換為氣象服務(wù)報(bào)告的等效海平面壓力的因子。同樣在 5.0 版本中,我們添加了多個(gè)客戶端可修改變量以支持自定義 Zambretti 天氣預(yù)報(bào)算法。
- 發(fā)布只讀變量以傳播當(dāng)前溫度、濕度、壓力 Zambretti 結(jié)果。我們希望在測(cè)試和演示期間有一個(gè)更加動(dòng)態(tài)的界面,所以這些變量每秒更新一次。
- 發(fā)布只讀變量以傳播每分鐘的溫度、濕度和壓力。這些是所有 1 秒讀數(shù)的累積一分鐘平均值。這些是應(yīng)該用作氣象站的。
- 使用循環(huán)緩沖區(qū)存儲(chǔ) 3 小時(shí)的壓力讀數(shù)。這些被用作 Zambretti 天氣預(yù)報(bào)算法的主要輸入之一。
- 您甚至不必輸入此內(nèi)容。當(dāng)您從 Arduino IDE 庫(kù)管理器下載InqPortal庫(kù)時(shí), InqWeather就是示例之一。
- 我們現(xiàn)在有第二個(gè)文件Zambretti.h來處理所有預(yù)測(cè)計(jì)算。
客戶端應(yīng)用程序
InqWeather具有三個(gè)不同的應(yīng)用程序(網(wǎng)頁(yè))來顯示結(jié)果。這些大多是裝飾性的,可以很容易地更改為裝飾性或功能……顯然無需重新編譯。下面顯示了上傳到InqWeather/InqPortal服務(wù)器的文件(Web 內(nèi)容)列表。

版本 1 – 純數(shù)字
純數(shù)字網(wǎng)頁(yè)是默認(rèn)網(wǎng)頁(yè)——這意味著如果在瀏覽器的 URL 地址行之后沒有定義 html 文件,它將被調(diào)用。這是實(shí)際使用index.html的標(biāo)準(zhǔn) Web 服務(wù)器默認(rèn)設(shè)置。
- 它顯示兩個(gè)溫度,因?yàn)閮蓚€(gè)傳感器都提供溫度。(標(biāo)簽旁邊的一小部分)通常,我們可能不會(huì)同時(shí)使用兩者,但在課堂上,我們希望展示傳感器制造的可變性。
- 溫度從服務(wù)器提供的°C 修改為客戶端的°F。index.js源代碼文件進(jìn)行了更改。如果您是°C 類型的人,請(qǐng)刪除明顯的等式,您將得到°C。這是一個(gè)重要的概念,我們攔截服務(wù)器提供的原始數(shù)據(jù)并根據(jù)客戶端用戶的上下文對(duì)其進(jìn)行更改。在這個(gè)例子中,InqWeather 服務(wù)器的一個(gè)觀察者可能更喜歡°C,而另一個(gè)°F。兩者都可以有自己的方式,服務(wù)器不必為細(xì)節(jié)煩惱。
版本 2 – 模擬

模擬版 ()
在這個(gè)版本中,我們想要演示使用現(xiàn)成的 JavaScript 庫(kù)。在上課的時(shí)候,我們一時(shí)興起把它從網(wǎng)上下載下來,在閱讀了網(wǎng)站的文檔大約十分鐘后把它拍了下來。為他的圖書館MykhaIloStadnyk 大聲疾呼……尤其是為他的國(guó)家。
版本 3 – 預(yù)測(cè)

InqWeather使用一個(gè)循環(huán)緩沖區(qū)來保存過去三個(gè)小時(shí)的壓力讀數(shù)。它現(xiàn)在使用這些值來提供 Zambretti 算法進(jìn)行預(yù)測(cè)分析所需的重要信息。Zambretti 算法創(chuàng)建于 1915 年,遠(yuǎn)早于數(shù)字計(jì)算機(jī),它利用大氣壓力和過去三個(gè)小時(shí)內(nèi)的壓力變化來得出 26 種不同天氣預(yù)報(bào) (AZ) 中的一種。InqWeather Sketch(服務(wù)器)將這個(gè)值發(fā)送到任何客戶端,只要它發(fā)生變化。客戶端應(yīng)用程序(在本例中為changed.jsfile) 獲取該值,查找天氣描述并顯示它。它還檢查具有相同名稱的圖像(A.jpg、B.jpg... Z.jpg)并找到最接近的可用圖像以顯示為背景。
以編程方式,它的主要演示點(diǎn)是關(guān)注點(diǎn)分離。服務(wù)器提供 Zambretti 信函,但客戶端可以以不同的方式顯示結(jié)果。所有描述都可以從 1915 年的原始字符串更改為 21 世紀(jì)更相關(guān)的內(nèi)容或任何語(yǔ)言。只需更改 changed.js 文件中的值并將其上傳到 InqWeather 服務(wù)器。只需將圖片命名為所需的條件,就可以更改背景(例如...在您的前門拍攝天氣狀況的圖片)。在上面的例子中 N.jpg并將其上傳到服務(wù)器。無需更改代碼。客戶端應(yīng)用程序?qū)z測(cè)可用圖像并在適當(dāng)時(shí)顯示它。
100 小時(shí)測(cè)試結(jié)果
在測(cè)試的前 100 小時(shí)內(nèi), InqPortal管理員正在監(jiān)視服務(wù)器。它能夠配置歷史記錄儀以跟蹤重要的系統(tǒng)性能指標(biāo)以及您的任何數(shù)字輸出。在這里,我們有 100 小時(shí)的數(shù)據(jù)顯示 AHT10 和 BMP180 的溫度以及濕度和海平面歸一化氣壓。它還跟蹤三個(gè)小時(shí)的壓力變化。

期貨
現(xiàn)在就是這樣。InqWeather 是一個(gè)很棒的教學(xué)/學(xué)習(xí)項(xiàng)目。如果您對(duì)未來的補(bǔ)充有任何建議,請(qǐng)告訴我……特別是如果它們可以用作未來學(xué)生的教學(xué)時(shí)刻。
- Arduino在線氣象站(NodeMCU)
- 如何制作簡(jiǎn)單的氣象站
- Arduino無線氣象站
- Arduino氣象站
- 基于LoPy4的氣象站設(shè)計(jì) 0次下載
- Sigfox和Arduino氣象站
- 基于Arduino的無線氣象站 0次下載
- 使用Arduino和網(wǎng)絡(luò)技術(shù)制作實(shí)時(shí)氣象站
- Arduino氣象站項(xiàng)目
- 使用藍(lán)牙連接的小型氣象站
- DIY簡(jiǎn)單氣象站
- 使用Arduino和NodeMCU的氣象站
- 手持式氣象站BNL-GPRS系列使用手冊(cè) 4次下載
- 自動(dòng)氣象站的抗干擾技術(shù) 26次下載
- 基于MSP430的智能氣象站的設(shè)計(jì)
- 小型氣象站監(jiān)測(cè)系統(tǒng)技術(shù)解析 113次閱讀
- 便攜式氣象站:移動(dòng)場(chǎng)景下的氣象“感知官” 176次閱讀
- 小型自動(dòng)氣象站:精細(xì)化氣象監(jiān)測(cè)的技術(shù)革新與應(yīng)用拓展 341次閱讀
- 校園科普氣象站:技術(shù)賦能下的自然探索課堂 229次閱讀
- 小型全自動(dòng)氣象站到底 “自動(dòng)” 在哪? 586次閱讀
- 光伏實(shí)驗(yàn)氣象站的技術(shù)架構(gòu)與應(yīng)用實(shí)踐 2k次閱讀
- 分布式光伏氣象站:光伏產(chǎn)業(yè)的智慧守護(hù)者 335次閱讀
- 車載氣象站在多領(lǐng)域的應(yīng)用 347次閱讀
- 如何利用ESP8266實(shí)現(xiàn)防雨物聯(lián)網(wǎng)氣象站的設(shè)計(jì) 6.2k次閱讀
- 如何使用ESP32創(chuàng)建一個(gè)氣象站 5.5k次閱讀
- 基于樹莓派組成的可隨身攜帶氣象站設(shè)計(jì)方案 3.7k次閱讀
- 如何使用兩個(gè)dht傳感器及HC12模塊制作遠(yuǎn)程氣象站? 4.1k次閱讀
- 基于創(chuàng)建帶有空氣質(zhì)量傳感器的室內(nèi)氣象站 2.9k次閱讀
- dfrobotDIY智能氣象站套件簡(jiǎn)介 2.3k次閱讀
- 基于STM32的自動(dòng)氣象站控制模塊設(shè)計(jì) 9.4k次閱讀
下載排行
本周
- 1新一代網(wǎng)絡(luò)可視化(NPB 2.0)
- 3.40 MB | 1次下載 | 免費(fèi)
- 2冷柜-電氣控制系統(tǒng)講解
- 13.68 MB | 1次下載 | 10 積分
- 3MDD品牌三極管MMBT3906數(shù)據(jù)手冊(cè)
- 2.33 MB | 次下載 | 免費(fèi)
- 4MDD品牌三極管S9012數(shù)據(jù)手冊(cè)
- 2.62 MB | 次下載 | 免費(fèi)
- 5LAT1218 如何選擇和設(shè)置外部晶體適配 BlueNRG-X
- 0.60 MB | 次下載 | 3 積分
- 6LAT1216 Blue NRG-1/2 系列芯片 Flash 操作與 BLE 事件的互斥處理
- 0.89 MB | 次下載 | 3 積分
- 7收音環(huán)繞擴(kuò)音機(jī) AVR-1507手冊(cè)
- 2.50 MB | 次下載 | 免費(fèi)
- 8MS1000TA 超聲波測(cè)量模擬前端芯片技術(shù)手冊(cè)
- 0.60 MB | 次下載 | 免費(fèi)
本月
- 1愛華AIWA HS-J202維修手冊(cè)
- 3.34 MB | 37次下載 | 免費(fèi)
- 2PC5502負(fù)載均流控制電路數(shù)據(jù)手冊(cè)
- 1.63 MB | 23次下載 | 免費(fèi)
- 3NB-IoT芯片廠商的資料說明
- 0.31 MB | 22次下載 | 1 積分
- 4UWB653Pro USB口測(cè)距通信定位模塊規(guī)格書
- 838.47 KB | 5次下載 | 免費(fèi)
- 5蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
- 0.04 MB | 4次下載 | 1 積分
- 6蘇泊爾DCL6909(即CHK-S009)單芯片電磁爐原理圖資料
- 0.08 MB | 2次下載 | 1 積分
- 7100W準(zhǔn)諧振反激式恒流電源電路圖資料
- 0.09 MB | 2次下載 | 1 積分
- 8FS8025B USB的PD和OC快充協(xié)議電壓誘騙控制器IC技術(shù)手冊(cè)
- 1.81 MB | 1次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191439次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183353次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評(píng)論