正面照片(藍色傳感器朝上,針腳朝下)
絲印標注非常清晰:
左邊 → S 👉 信號 (DATA)
中間 → + 👉 VCC (電源,3.3V 或 5V)
右邊 → - 👉 GND (地)
? 正確接法(Arduino Nano 33 IoT)
S (最左邊腳) → D2(和你代碼 #define DHTPIN 2 一致)
中間 + → 3.3V(?? Nano 33 IoT 不能用 5V)
1. 什么是 DHT11
-
DHT11 是一種常見的 數字溫濕度傳感器。
-
它內部集成了:
- NTC 熱敏電阻 → 測溫
- 濕度感應電容 → 測濕度
- 8 位單片機 → 把溫濕度信號轉化為數字信號輸出
-
輸出方式:單線數字信號(用一個數據引腳就能同時傳溫度和濕度)。
-
優點:便宜、簡單、廣泛用于教學和 IoT 入門項目。
-
缺點:精度不高(±2°C 溫度,±5%RH 濕度),采樣頻率低(每秒 1 次)。
2. 為什么在你的項目里選擇 DHT11
在 IFN649 Assessment 1 中,你需要一個 傳感器節點 來模擬現實 IoT 數據源:
-
DHT11 非常適合入門實驗:便宜 + 易用 + Arduino 有成熟庫。
-
它可以提供 真實的物理環境數據(溫度、濕度) → 給整個 IoT 管道“上行”傳輸用。
-
在實驗里:
- Arduino Nano 33 IoT 通過
dht.readTemperature()
/dht.readHumidity()
采集數據。 - 這些數據通過 BLE characteristic (
dhtCharacteristic
) 廣播給 Pi。 - Pi 再轉發到 MQTT Broker。
- Arduino Nano 33 IoT 通過
👉 所以 DHT11 在項目里就是 “數據源”,它給整個 IoT 系統提供真實輸入。
3. 怎么方便理解
可以把 DHT11 想象成一個 “數字溫濕度計”,它插在 Arduino 上,讓你的 IoT 系統能“感知世界”。
類比生活:
- 小米溫濕度計(藍牙/米家網關上傳)
- 空調里的溫度傳感器(決定什么時候制冷/加熱)
- 智能加濕器的濕度探頭
4. 現實生活中的運用
DHT11 或類似傳感器常見應用:
- 智能家居:溫濕度檢測 + 云端聯動(控制空調、加濕器)。
- 農業大棚:監測環境溫度/濕度,自動噴霧或通風。
- 物聯網學習/教學:初學者常用來練習傳感器 → 網關 → 云端的完整流程。
- 服務器機房:檢測溫濕度,聯動風扇或告警。
5. 你作業1中的代碼和它的關系
在 Nano33_DHT_BLE.ino 里:
#include <DHT.h>
/#include <DHT_U.h>
→ 引入 DHT11 庫。DHT dht(DHTPIN, DHTTYPE);
→ 定義一個 DHT11 傳感器實例。float h = dht.readHumidity();
→ 讀取濕度值。float t = dht.readTemperature();
→ 讀取溫度值。String payload = "H:" + String(h) + " T:" + String(t);
→ 把溫濕度拼成字符串。dhtCharacteristic.writeValue(payload);
→ 把溫濕度數據廣播給 Raspberry Pi。
👉 在 Assessment 1 里,DHT11 = IoT 數據源,它和你的 Arduino BLE 程序直接相關,是“上行數據鏈路”的起點。
? 總結:
DHT11 = 物理環境的“傳感器眼睛”,負責讓你的 IoT 系統采集真實溫濕度。
在項目里,它讓你模擬現實 IoT 系統中“感知世界 → 上傳云端”的環節。