電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>基于網(wǎng)絡(luò)的InqWeather氣象站

基于網(wǎng)絡(luò)的InqWeather氣象站

2022-10-26 | zip | 0.20 MB | 次下載 | 免費(fèi)

資料介紹

描述

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 面包板
  • 4 跳線
poYBAGNYfQ-AXdRqAAEKZoiqWwQ511.jpg
簡(jiǎn)單接線
?

InqWeather 接線

我們利用 I2C 作為多目標(biāo)串行通信總線。換句話說(shuō),我們可以只使用 4 根電線來(lái)服務(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ù)器公開(kāi)客戶端 UI,提供客戶端-服務(wù)器通信并大大減少與 InqWeather 交互所需的編碼。您會(huì)注意到?jīng)]有代碼執(zhí)行顯式發(fā)送和接收。這一切都在透明地處理,因此開(kāi)發(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來(lái)處理所有預(yù)測(cè)計(jì)算。

客戶端應(yīng)用程序

InqWeather具有三個(gè)不同的應(yīng)用程序(網(wǎng)頁(yè))來(lái)顯示結(jié)果。這些大多是裝飾性的,可以很容易地更改為裝飾性或功能……顯然無(wú)需重新編譯。下面顯示了上傳到InqWeather/InqPortal服務(wù)器的文件(Web 內(nèi)容)列表。

pYYBAGNYfRKAXz0zAAErNLAX_kU914.png
InqWeather 客戶端應(yīng)用程序的 Web 內(nèi)容
?

版本 1 – 純數(shù)字

?
默認(rèn),數(shù)字顯示 (index.html)

純數(shù)字網(wǎng)頁(yè)是默認(rèn)網(wǎng)頁(yè)——這意味著如果在瀏覽器的 URL 地址行之后沒(méi)有定義 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 – 模擬

pYYBAGNYfRiAD0thAAGDp4b3TIQ565.png
?

模擬版 ()

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

版本 3 – 預(yù)測(cè)

poYBAGNYfRqAG0DwAAEXq-ZLeVo126.png
InqWeather 現(xiàn)在包括基于 Zambretti 的預(yù)測(cè)
?

InqWeather使用一個(gè)循環(huán)緩沖區(qū)來(lái)保存過(guò)去三個(gè)小時(shí)的壓力讀數(shù)。它現(xiàn)在使用這些值來(lái)提供 Zambretti 算法進(jìn)行預(yù)測(cè)分析所需的重要信息。Zambretti 算法創(chuàng)建于 1915 年,遠(yuǎn)早于數(shù)字計(jì)算機(jī),它利用大氣壓力和過(guò)去三個(gè)小時(shí)內(nèi)的壓力變化來(lá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ù)器。無(wú)需更改代碼。客戶端應(yīng)用程序?qū)?a target='_blank' class='arckwlink_none'>檢測(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í)的壓力變化。

pYYBAGNYfR6AZmDvAAdSnvf26Nk400.png
100 小時(shí)查詢天氣輸出
?

期貨

現(xiàn)在就是這樣。InqWeather 是一個(gè)很棒的教學(xué)/學(xué)習(xí)項(xiàng)目。如果您對(duì)未來(lái)的補(bǔ)充有任何建議,請(qǐng)告訴我……特別是如果它們可以用作未來(lái)學(xué)生的教學(xué)時(shí)刻。


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評(píng)估板參考手冊(cè)
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開(kāi)發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊(cè)
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)