It is currently Thu Dec 13, 2018 3:22 am

НИЛ АСЭМ Научно - исследовательская лаборатория автоматизированных систем экологического мониторинга

Датчик температуры и влажности DHT11

by Admin » Mon Apr 23, 2018 10:05 am

DHT11 - температура / влажность
Image Image
Внешний вид датчика и схема подключения к микроконтроллеру

DHT11 цифровой датчик температуры и влажности является составным датчиком, который выдаёт калиброванный цифровой выходной сигнал с показаниями температуры и влажности. Он имеет высокую надежность и превосходную долговременную стабильность работы. Датчик включает в себя резистивный сенсор влажности и компонент NTC структуры для измерения температуры.


Технические характеристики датчика:

Относительная влажность
Разрешение: 16Bit
Повторяемость: ± 1% относительной влажности
Точность: На 25 ℃ ± 5% относительной влажности
Взаимозаменяемость: полностью взаимозаменяемы
Время отклика: 1 / е (63%) из 25 ℃ 6s 1 м / с воздуха 6s
Гистерезис: <± 0,3% RH
Долгосрочная стабильность: <± 0,5% RH / год в
Температура
Разрешение: 16Bit
Повторяемость: ± 0,2 ℃
Диапазон: На 25 ℃ ± 2 ℃
Время отклика: 1 / е (63%) 10S
Электрические характеристики
Питание: DC 3,5 ~ 5,5 В
Ток питания: измерение 0.3mA ожидания 60μ
Период выборки: более 2 секунд

Протокол датчика DHT:
Выходом датчика является цифровой сигнал. Температура и влажность передаются по одному сигнальному проводу (S). DHT11 общается с принимающей стороной по собственному протоколу. Коммуникация двунаправлена и в общих чертах выглядит так:
Шаг №1. Инициализация.
Image

Процесс инициализации начинается с подтягивания линии на 18 мс, далее отпускаем на 20-40 мкс и переводим ножку микроконтроллера в режим чтения.

Шаг№2. Подтверждение.
Image

После того как контроллер переведён в режим чтения, ждем когда появится 0, далее задержка и проверка на высокое состояние.
Шаг №3. Прием данных.
Image

Суммарно временная диаграмма обмена данными между микроконтроллером и DHT11 выглядит следующим образом:

Image

Данные от датчика передаются в виде посылки, состоящих из 40 бит идущих в таком порядке:
8 бит целая часть влажности + 8 бит десятая часть влажности + 8 бит целая часть температуры + 8 бит десятая часть температуры + 8 бит контрольной суммы.

Управляющий код для микроконтроллера (на Proton BASIC Compiler):
Code: Select all
'************************************************* ***************
'* Name : DHT11_A                                                *
'* Version : 1.1                                                 *
'* Notes : Compiler Version 3.5.5.5 *
'* : *
'************************************************* ***************
;-------------------------------------------------------------------------------
;**** Added by Fuse Configurator ****
; Use the Fuse Configurator plug-in to change these settings

Device = 16F628A

Config FOSC_HS, WDTE_OFF, PWRTE_ON, MCLRE_ON, BOREN_ON, LVP_OFF, CPD_OFF, CP_OFF

;**** End of Fuse Configurator Settings ****
;-------------------------------------------------------------------------------

Xtal = 16
Declare LCD_Interface = 4
Declare LCD_DTPin PORTB.4
Declare LCD_ENPin PORTB.2
Declare LCD_RSPin PORTB.0
Declare LCD_Lines = 2
Declare LCD_Type = 0
All_Digital = true

' Special LCD Character Definitions
Print $FE,$40,$07,$05,$05,$07,$00,$00,$00,$00 '0 - Degree

Dim DataIn As Byte 'hi pulse from sensor
Dim ChkSum As Byte
Dim Index As Byte
Dim SenData As Dword

While
SenData=0:ChkSum=0
TRISA.0 = 0 'portb o/p
PORTA.0=1 'make high
DelayMS 50 'wait for a while
PORTA.0=0:DelayMS 18 'send 18ms low
PORTA.0=1:DelayUS 30 'send 30us hi
DataIn = PulsIn PORTA.0,1 'wait for hi

If DataIn < 33 Then
Cls
Print At 1,1, "Sensor not ready" ' if < 80us loop
GoTo SNR
EndIf

For Index = 31 To 0 Step -1
DataIn = PulsIn PORTA.0,High 'recieve pulses from sensor
If DataIn > 18 Then SetBit SenData,Index
Next Index


For Index = 7 To 0 Step -1
DataIn = PulsIn PORTA.0,High
If DataIn > 18 Then SetBit ChkSum,Index
Next Index


Cls
Print At 1,1,"Check Sum = ",Dec ChkSum
Print At 2,1,"H:",Dec SenData.Byte3," %"
Print At 2,10,"T:",Dec SenData.Byte1,0,"C"


SNR:
DelayMS 1000
Wend

Литература:
1. Фирменная документация.

На главную
Admin
Site Admin
 
Posts: 209
Joined: Wed Sep 20, 2017 9:55 am

Return to Промежуточные исследования и разработки

cron

User Menu

Login