資料介紹
描述
在本教程中,我將向大家展示如何使用 DHT11 或 DHT22 溫度和濕度傳感器制作基于 Arduino 或 NodeMCU 的氣象站,并使用 OLED 顯示器進行顯示。
DHT11 與 DHT22
DHT11 和 DHT22 都是低成本、非常基本的慢速溫濕度傳感器,可用于基本數據記錄。
盡管速度較慢,但??它們非常穩定且功耗低,并提供相對較高的測量精度。單總線數字信號通過內置 ADC 輸出,該 ADC 易于使用任何微控制器讀取。單總線接口節省了任何微控制器板的 I/O 資源。
工作電壓在 3.3V 至 5V 之間,DHT11 的采樣周期為 1Hz 或每秒一個讀數,DHT22 的采樣周期為 0.5Hz 或每兩秒一個讀數。因此,您不能每隔一兩秒對它們進行一次以上的查詢。
DHT 傳感器由兩部分組成,電容式濕度傳感器和負溫度系數或 NTC 溫度傳感器(或熱敏電阻)。
NTC溫度傳感器實際上是一個可變電阻器,其電阻隨著溫度的升高而減小。
為了測量濕度,使用了兩個電極,它們之間有一個水分保持基板。當濕度發生變化時,基板的電導率會發生變化,換句話說,這些電極之間的電阻會發生變化。電阻的這種變化被測量和處理,并被發送到微控制器。
傳感器內部的一個非常基本的芯片進行模數轉換并輸出使用微控制器讀取的數字信號。
![poYBAGNkXa-AMRVWAACIi1kW4E4486.png](https://file.elecfans.com/web2/M00/77/78/poYBAGNkXa-AMRVWAACIi1kW4E4486.png)
這是兩個傳感器的比較圖。從這一點來看,很明顯,DHT22 在各個方面都勝過 DHT11。
但是,如果您關心準確性,并且您準備支付更高的價格,請選擇 DHT22。否則,DHT11 對你來說應該足夠好了。
?
OLED顯示屏
![pYYBAGNkXbKAIH6kAABSrHI4lD0218.png](https://file.elecfans.com/web2/M00/78/0A/pYYBAGNkXbKAIH6kAABSrHI4lD0218.png)
OLED 或有機發光二極管是一種發光二極管 (LED),其中發射電致發光層是有機化合物薄膜(數百萬個小型 LED 燈),響應電流而發光。
OLED 用于在電視屏幕、計算機顯示器、移動電話等便攜式系統、手持游戲機和 PDA 等設備中創建數字顯示器。OLED 顯示器無需背光即可工作,因為它會發出可見光。
市場上有許多類型的 OLED 顯示器,基于它們:
要了解有關 OLED 顯示器的更多信息以及如何使用 TCA9548 多路復用器連接多個 OLED 顯示器,請查看我的教程號 7
帶有 Arduino 和 NodeMCU 鏈接的 OLED 顯示器在下面的描述中:https ://www.youtube.com/watch?v=_e_0HJY0uIo
讓我們更近距離地了解這兩個顯示器。
在這些顯示器的背面,板上焊接著大量的 SMD 電容器和電阻器;但是,由于它是一個 I2C 設備,我們只關心這 2 個引腳(SCL 和 SDA)
顯示器僅使用四根線連接到 Arduino - 兩根用于電源(VCC 和 GND),兩根用于數據(串行時鐘 SCL 和串行數據 SDA),使接線非常簡單。數據連接為 I2C(I2C、IIC 或內部集成電路),此接口也稱為 TWI(兩線接口)。
板載引腳的順序可以不同,因此在將其連接到您的項目之前,請務必三重檢查。
工作電壓在 3v 到 5v 之間,但最好使用制造商數據表中的指導。
有時我們需要在項目中使用 2 個顯示器。那么,我們怎樣才能做到這一點呢?
訣竅是在您的顯示器上有一個可配置的地址。該單元的可配置地址介于 0x78 和 0x7A 之間。只需從一側拆下 0Ohm 電阻并將其連接到另一側,或者只需放置全局焊料,我們就可以更改地址。
在圖片中,這些顯示器看起來非常大。但是,實際上它們很小。它們由 128 x 32/64 單獨的 OLED 像素組成,不需要任何背光。看看這個,看看它有多小。盡管它們很小,但它們在任何電子項目中都非常有用。
![pYYBAGNkXbWAcdHZAABpxlkPCj0797.png](https://file.elecfans.com/web2/M00/78/0A/pYYBAGNkXbWAcdHZAABpxlkPCj0797.png)
這就是 OLED 顯示器連接到 Arduino 或 NodeMCU 的方式。
使用 Arduino 進行設置
使用 Arduino 或 NodeMCU 的設置非常簡單。
我們只需要將 OLED 連接到 I2C 引腳,將溫度和濕度傳感器連接到任何一個數字引腳。
在此設置中,我將 OLED 連接到 A5 和 A4,將傳感器連接到 D8。
![pYYBAGNkXbmAcc2OAAB2blIuYrk409.png](https://file.elecfans.com/web2/M00/78/0A/pYYBAGNkXbmAcc2OAAB2blIuYrk409.png)
現在,讓我們看一下代碼。讓我們從包含 DHT 和 OLED 庫開始。
然后,在設置部分我們初始化顯示器,然后在循環部分我們每 2 秒循環一次,讀取傳感器并在 OLED 顯示器上顯示結果。
![poYBAGNkXbyAKyVQAABsb4HWVyc086.png](https://file.elecfans.com/web2/M00/77/78/poYBAGNkXbyAKyVQAABsb4HWVyc086.png)
這是一個使用 Arduino 的快速演示。
![pYYBAGNkXb6AeqJeAACA5CeZvEw314.png](https://file.elecfans.com/web2/M00/78/0A/pYYBAGNkXb6AeqJeAACA5CeZvEw314.png)
?
使用 NodeMCU 進行設置
與之前的設置相同,OLED 顯示器使用 D2 和 D1 引腳連接到 NodeMCU,而傳感器連接到 D3 引腳。
![poYBAGNkXcOAb01-AAB3aPuq0Fc983.png](https://file.elecfans.com/web2/M00/77/78/poYBAGNkXcOAb01-AAB3aPuq0Fc983.png)
代碼首先包含 DHT 和 OLED 庫。
然后,在設置部分我們初始化顯示器,然后在循環部分我們每 2 秒循環一次,讀取傳感器并在 OLED 顯示器上顯示結果。
![pYYBAGNkXcWAXQPXAABsuH4XwKg133.png](https://file.elecfans.com/web2/M00/78/0A/pYYBAGNkXcWAXQPXAABsuH4XwKg133.png)
所以,這就是實際設置的樣子。
![poYBAGNkXceAHJb3AACAXe81PD4581.png](https://file.elecfans.com/web2/M00/77/78/poYBAGNkXceAHJb3AACAXe81PD4581.png)
?
董事會
![poYBAGNkXcmAImNdAADegajIiIs835.png](https://file.elecfans.com/web2/M00/77/78/poYBAGNkXcmAImNdAADegajIiIs835.png)
所以,這就是我的電路板在 2d 和 3d 中的樣子。
這個 100 厘米 x 100 厘米的組件中有 3 個分線板。每個板可與 Arduino 或 NodeMCU 以及 DHT11 或 DHT22 傳感器或傳感器模塊一起使用。
![pYYBAGNkXcuALRZQAAB7-9Bm8rE390.png](https://file.elecfans.com/web2/M00/78/0A/pYYBAGNkXcuALRZQAAB7-9Bm8rE390.png)
該板可與 NodeMCU 或 Arduino Nano 一起使用。
溫度和濕度讀數可以使用 DHT11 或 DHT22 模塊或使用其中一個帶有 10K 電阻的傳感器來收集。
板的底部用于 OLED 顯示屏。附加的格柏與您在屏幕上看到的有點不同。我在最終版本中做了一些修改,并將傳感器移到離微控制器有點遠的地方。
?
焊接
![poYBAGNkXc6AGXBEAABmbE3-PCs224.png](https://file.elecfans.com/web2/M00/77/78/poYBAGNkXc6AGXBEAABmbE3-PCs224.png)
因為我非常關心我的傳感器和微控制器,所以我不會將它們直接焊接到板上。相反,我將母針頭焊接到將容納所有傳感器和微控制器的板上。
只是為了這個視頻,我正在為 Arduino 和 NodeMCU 焊接兩側的母排針。但是,在您的設置中,您將需要 Arduino 或 NodeMCU。
![pYYBAGNkXdCAM04VAACBeXyfA2E920.png](https://file.elecfans.com/web2/M00/78/0A/pYYBAGNkXdCAM04VAACBeXyfA2E920.png)
?
最終演示
![pYYBAGNkXdOAM4CXAAB5ev7B-58522.png](https://file.elecfans.com/web2/M00/78/0A/pYYBAGNkXdOAM4CXAAB5ev7B-58522.png)
讓我們先用 Arduino 測試一下。
現在,讓我們使用 NodeMCU 板測試此設置。
看起來很完美,我將在我的下一個項目中使用這個板,我將把溫度和濕度讀數發送到基于 Raspberry Pi 的家庭服務器,我將把它存儲在 MySQL 數據庫中,敬請期待......
![pYYBAGNkXdWADmFtAACIbap8eXk807.png](https://file.elecfans.com/web2/M00/78/0A/pYYBAGNkXdWADmFtAACIbap8eXk807.png)
?
- Arduino BME280氣象站儀表板
- Arduino在線氣象站(NodeMCU)
- Arduino無線氣象站
- Arduino氣象站
- Arduino UNO迷你氣象站
- 使用Arduino Nano的迷你氣象站
- Sigfox和Arduino氣象站
- 與Sigfox連接并使用Arduino的氣象站
- 基于Arduino的無線氣象站 0次下載
- Arduino物聯網氣象站
- 使用Arduino和網絡技術制作實時氣象站
- 基于Arduino UNO的氣象站 2次下載
- Arduino氣象站項目
- 帶有Arduino的Lora氣象站
- Arduino氣象站的設置開源分享
- 基于幾何的泰森多邊形來生成形體骨架 1004次閱讀
- NodeMCU開發板的部署及調試 1902次閱讀
- 4G氣象站的設計與實現 991次閱讀
- 如何利用ESP32實現太陽能氣象站的設計 4646次閱讀
- 如何利用ESP8266實現防雨物聯網氣象站的設計 5136次閱讀
- 如何利用粒子光子把你的雨傘變成氣象站 1532次閱讀
- 利用Nodemcu+ILI9341制作PC運行監控器的過程 2349次閱讀
- 如何使用ESP32創建一個氣象站 4040次閱讀
- 利用Arduino Nano 33 IoT構建的微型互聯網氣象站 3653次閱讀
- 如何手動制作一個風速儀 6100次閱讀
- 基于樹莓派組成的可隨身攜帶氣象站設計方案 2989次閱讀
- 如何使用兩個dht傳感器及HC12模塊制作遠程氣象站? 2977次閱讀
- 基于創建帶有空氣質量傳感器的室內氣象站 2358次閱讀
- dfrobotDIY智能氣象站套件簡介 1756次閱讀
- 基于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次下載 | 免費
評論