HS-S26-L 温濕度傳感器

HS-S26-L 温濕度傳感器

1、介紹

DHT11數字溫度 - 濕度传感器是一種包含校準數字信號輸出的複合传感器。它採用特殊的數字模塊採集技術和濕度 - 溫度感應器技術,確保高可靠性和出色的長期穩定性。感測器由電阻式濕度元件和NTC溫度測量元件組成。DHT11通過單總線與微處理器通信。 它只需要一個線程,一次發送40個數據。

數據格式: 8位濕度整數數據+ 8位濕度十進制數據+ 8位溫度整數數據+ 8位溫度十進制數據+ 8位奇偶校驗位。

資料發送過程:主控發送啟動信號 - > DHT回應信號 - > DHT通知主控它已準備好接受信號 - > DHT發送準備好的資料 - > DHT結束信號 - > DHT內部重新測試環境溫度和濕度,記錄下一筆資料 從主控開始發出信號。

通過該過程獲得,每次收集的數據主控始終是最後一次DHT數據。如果我們想獲得即時數據,那麼主控可以收集兩個連續的數據,但是,正式地,不建議連續多次讀取DHT。如果每次讀取的間隔時間超過5秒,則足以獲得準確的數據。DHT在通電時需要1秒才能穩定。

2、原理圖

3、模組參數

引腳名稱

描述

G

GND(電源輸入負極)

V

VCC(電源輸入正極)

S

數字信號引腳

  • 供電電壓:3.3V / 5V

  • 連接方式:PH2.0端子線

  • 安裝方式:雙螺絲固定

4、電路板尺寸

5、Arduino IDE示範程序

ArduinoUNO圖形化示例程式:

//DHT11传感器接引脚D6
#include <DHT.h>//调用温dht湿度库

volatile float wendu = 0;//设置温度变量
volatile float shidu = 0;//设置湿度变量
DHT dht6(6, 11);//定义温湿度传感器引脚

void setup() {
  Serial.begin(9600);//设置波特率

  dht6.begin();//启动
}

void loop() {


  delay(2000);//延时2秒
  shidu = dht6.readHumidity();//将湿度读取为摄氏度(默认值)赋给变量
  wendu = dht6.readTemperature();//将温度读取为摄氏度(默认值)赋给变量
  Serial.print(wendu);//串口打印温度
  Serial.print("℃");
  Serial.print("                         ");
  Serial.print(shidu);//串口打印湿度
  Serial.println("%");

}

ESP32 Python 示例(適用於Mixly IDE /米思齊)
(開發板選擇 Python ESP32 【ESP32 Generic(4MB)】切換為代碼模式上傳 ):

import machine
import dhtx
import time


# 2引脚接温湿度传感器 获取当前温度和湿度
while True:
print(dhtx.DHT11(2).temperature(),end ="")
print('℃ ',end ="")
print(dhtx.DHT11(2).humidity(),end ="")
print('% ')
time.sleep_ms(200)

6、米思齊Mixly示例程式(圖形化語言)

ArduinoUNO圖形化示例程式:點擊下載

ESP32 Python圖形化示例程式:點擊下載

7、測試環境搭建

Arduino UNO 測試環境搭建

準備配件:

  • HELLO STEM UNO R3 開發板 *1

  • HELLO STEM UNO R3 P 扩展板 *1

  • USB type-c 資料線 *1

  • 溫濕度感應器(HS-S26L)*1

  • PH2.0 3P雙頭端子線*1

電路接線圖:

ESP32 Python 測試環境搭建

8、新增DHT11 Arduino庫檔案

首先找到Arduino庫資料夾:

把庫文件複製到Arduino IDE軟體目錄下的libraries資料夾中即可:

庫文件:點擊下載

9、視頻教學

Arduino UNO視頻教學:點擊查看

ESP32 Python視頻教學:

10、測試結論

Arduino UNO測試結論:

器件連接好線之後,將上述程序上傳到開發板後,打開串口監視器。 您將看到當前溫度和濕度的數據顯示在窗口上。

ESP32 Python測試結論:器件連接好線之後,將上述程序上傳到開發板後,打開串口監視器。 您將看到當前溫度和濕度的數據顯示在窗口上。