終於要把現實世界和數位世界連接了,一開始的現實對象是環境溫、濕度,所以要使用溫、濕度監測器或是說監測模組。
模組一般都是將主功能電子零件加上必要的配套電路成為獨立零件,非電子專業使用會比較方便,Hoyo 使用的模組是 DHT-11
(非業配,賣場內還有另一個是只有監測器,比較便宜可是沒有應用電路)
--
加入程式庫
為了讀取 DHT11 數據,所以直接用其他大大分享的程式庫是比較快速的方式
- DHT11 Sensor für Temperatur und Luftfeuchtigkeit am Arduino
- dht11 (Hoyo 用這個)
- 数字温湿度传感器DHT11 (中文 Datasheet)
從 GitHub 下載 zip 打開 Arduino IDE,草稿檔 → 匯入程式庫 → dht11-master.zip
--
程式範例 - 從串列埠觀看溫、濕度
下圖中的 delay 時間為 200 ,並非上面設定的 2000

--
將 DHT11 讀取溫、濕度上傳到主機
先假設你已經有一個可以使用 HTTP API 上傳資料的主機,然後接下來就是如何把資料丟上去,在此假設的規格是使用 GET 傳遞
--
上傳到其他 IoT 平台 - 以 Ubidots 為例
- 安裝 ubidots/ubidots-esp8266: Library for uploading ESP8266 devices to Ubidots
- 程式範例 SendValuesHttp.ino
從 Devices 查看上傳數據
點選單一監測數據可以看到詳細數據
--
接腳接反會燒壞!
其實電子零件大多是這樣的下場,以前搞音響 DIY 燒的更慘 ...
--
優、缺點
極限值以及準確度是 DHT11 的硬傷,所以在熟悉 DHT11 之後可以選擇更高階的同類產品,例如 DHT2x 系列
--
11,440 total views, 2 views today
你好,請問我上傳後出現下面訊息,請教那邊出了問題?謝謝。
Arduino:1.8.13 (Windows 10), 開發板:"Generic ESP8266 Module, 80 MHz, Flash, Legacy (new can return nullptr), All SSL ciphers (most compatible), dtr (aka nodemcu), 26 MHz, 40MHz, DOUT (compatible), 1MB (FS:64KB OTA:~470KB), 2, nonos-sdk 2.2.1+100 (190703), v2 Lower Memory, Disabled, None, Only Sketch, 115200"
DHT11_V2:2:19: fatal error: dht11.h: No such file or directory
#include
^
compilation terminated.
exit status 1
dht11.h: No such file or directory
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
文章一開始有一個段落是 「加入程式庫」 裡面就有 DHT11 的 GitHub 連結,下載 zip 後還需要匯入程式庫才行