Мониторинг температуры и влажности сенсорного модуля DHT11, информация о проекте 51 микроконтроллера
Мониторинг температуры и влажности сенсорного модуля DHT11, информация о проекте 51 микроконтроллера

требования к дизайну

1. Спроектировать систему мониторинга температуры и влажности на базе 51 микроконтроллера и датчика DHT11;

2. Датчик DHT11 осуществляет точное измерение параметров температуры и влажности окружающей среды, а микроконтроллер анализирует и обрабатывает данные;

3. Пользователи могут самостоятельно регулировать верхний и нижний пороги сигнализации температуры и влажности с помощью кнопок в соответствии с потребностями;

4. Когда температура и влажность окружающей среды выходят за пределы установленного диапазона, светодиодный индикатор и зуммер подадут звуковой сигнал и загорятся сигналы тревоги;

5. Значения температуры и влажности окружающей среды, а также верхний и нижний пороги срабатывания сигнализации отображаются с помощью жидкокристаллического дисплея LCD1602;

описание дизайна

Версия программного обеспечения для моделирования Proteus7 имеет только сенсорный элемент температуры и влажности SHT11 и не имеет сенсорного элемента DHT11. После обновления версии Proteus8 в библиотеку компонентов был добавлен компонент датчика DHT11. Поэтому этот проект разработан с использованием программного обеспечения для моделирования версии Proteus8.6.

Датчики SHT11 и DHT11 могут измерять температуру и влажность. Их основные различия заключаются в двух моментах:

1. Внутренний сердечник SHT11 представляет собой чувствительный к влажности конденсатор, который имеет высокую стоимость и высокую точность. Внутренний сердечник DHT11 представляет собой чувствительный к влажности резистор, который дешев, но имеет низкую точность;

2. Способы связи между ними разные. DHT11 — это одношинная последовательная связь с интерфейсом DATA только по линии данных; SHT11 — это двухпроводная последовательная связь с двумя интерфейсами: линия синхронизации SCK и линия данных DATA. С точки зрения программирования они совершенно разные.

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

Обзор системы

В этой статье разрабатывается система мониторинга температуры и влажности на основе 51 микроконтроллера и датчика DHT11, которая может реализовывать функции сбора, обработки, отображения и оповещения о текущих данных о температуре и влажности окружающей среды.

Аппаратное обеспечение системы в основном состоит из минимальной системы микроконтроллера, модуля датчика температуры и влажности DHT11, модуля дисплея LCD1602, модуля кнопок и модуля звуковой и световой сигнализации. Структура системы следующая.

Датчик DHT11 постоянно определяет температуру и влажность в текущей среде и отправляет данные на микроконтроллер. После того, как микроконтроллер анализирует и обрабатывает данные, значения температуры и влажности, а также верхний и нижний пороги срабатывания сигнализации отображаются в режиме реального времени на ЖК-дисплее 1602. .

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

Схема моделирования Proteus

Принципиальная схема

Эффект бега

Откройте файл моделирования с именем DHT11 Climate and Humidity Monitoring.pdsprj, дважды щелкните микроконтроллер, щелкните маленький желтый значок папки во всплывающем диалоговом окне, загрузите файл DHT11.hex (находится в папке программы C) и запустите. Результаты моделирования следующие.

Эффект бега
Эффект бега

Как видно из рисунка, на ЖК-дисплее отображается текущая температура окружающей среды T составляет 27°C, а влажность H составляет 55% относительной влажности. Результат на ЖК-дисплее соответствует значению датчика DHT11, что указывает на правильность считывания данных о температуре и влажности.

Три маленькие красные стрелки на датчике DHT11 используются для имитации изменений значений температуры и влажности. Первые две красные стрелки используются для увеличения или уменьшения значения, а последняя красная стрелка используется для переключения между температурой и влажностью.

Например, мы настраиваем датчик DHT11 так, чтобы температура поднялась до 34°C, а относительная влажность упала до 51%. Эффект следующий.

Температура 34℃, влажность 51% относительной влажности.
Температура 34℃, влажность 51% относительной влажности.

Кнопки позволяют установить верхний и нижний пороговые значения температуры и влажности. Нажмите кнопку регулировки, система перейдет в режим установки верхнего и нижнего пределов, а на ЖК-дисплее отобразятся текущие значения верхнего и нижнего пределов температуры и влажности.

Как показано на рисунке, верхний и нижний пределы температуры системы по умолчанию составляют: 20–35 ℃, а верхний и нижний пределы влажности: 40–85 % относительной влажности.

Система входит в режим установки верхнего и нижнего пределов температуры и влажности.
Система входит в режим установки верхнего и нижнего пределов температуры и влажности.

Кроме того, мигает курсор нижнего предельного значения температуры, и вы можете нажать кнопку «плюс/минус», чтобы установить его; после установки нижнего предельного значения температуры нажмите кнопку регулировки, и начнет мигать курсор верхнего предельного значения температуры, и Вы можете установить верхнее предельное значение температуры.

По аналогии, когда установлены верхний и нижний пределы температуры и влажности, снова нажмите кнопку регулировки, чтобы выйти из режима настройки и вернуться в режим отображения температуры и влажности. Если пользователь не хочет изменять определенный порог температуры и влажности, нажмите кнопку регулировки, чтобы пропустить это.

Например, мы сбрасываем верхний и нижний пределы температуры до 25–38°C, а верхний и нижний пределы влажности до 40–65 % относительной влажности. Результаты следующие.

Недавно установленные верхний и нижний пределы температуры и влажности.
Недавно установленные верхний и нижний пределы температуры и влажности.

Когда система обнаруживает, что температура и влажность больше не находятся в заданном диапазоне, она подает звуковой и визуальный сигнал тревоги, загорается соответствующий светодиодный индикатор и раздается звуковой сигнал, когда температура и влажность окружающей среды вернутся в норму; , сигнал тревоги прекратится.

Например, мы нажимаем красную стрелку на датчике DHT11, чтобы снизить температуру до 24°C, что ниже нижнего предела в 25°C. В это время загорается синий индикатор низкой температуры и звучит звуковой сигнал.

C-код

Язык кода:c
копировать
void main()
{
	uchar i;

	LcdInit();						// Инициализация функции ЖК-дисплея			
	LcdShowInit(); 					// Инициализация ЖК-дисплея

	AlarmTL=EEPROM_Read(0x2000);	// Считайте нижний предел сигнализации температуры по адресу 0x2000 EEPROM.
	AlarmTH=EEPROM_Read(0x2001);	// Считайте верхний предел аварийного сигнала температуры по адресу 0x2001 EEPROM.
	AlarmHL=EEPROM_Read(0x2002);	// Считайте нижний предел сигнализации влажности по адресу 0x2002 EEPROM.	
	AlarmHH=EEPROM_Read(0x2003);	// Считайте верхний предел сигнала тревоги влажности по адресу 0x2003 EEPROM.

	if((AlarmTL==0)||(AlarmTL>100))	// Если значение сигнала тревоги нижнего предела температуры считывается ненормально (равно 0 или больше 100), переназначьте значение
		AlarmTL=20;
	if((AlarmTH==0)||(AlarmTH>100))	// Если значение сигнала тревоги верхнего предела температуры считывается ненормально (равно 0 или больше 100), переназначьте значение.
		AlarmTH=35;
	if((AlarmHL==0)||(AlarmHL>100))	// Если значение сигнала тревоги нижнего предела температуры считывается ненормально (равно 0 или больше 100), переназначьте значение
		AlarmHL=40;
	if((AlarmHH==0)||(AlarmHH>100))	// Если значение сигнала тревоги верхнего предела температуры считывается ненормально (равно 0 или больше 100), переназначьте значение.
		AlarmHH=85;
		
	
	while(1)
	{
		ReadDhtData(); 				// Обнаружение данных о температуре и влажности

		LcdGotoXY(1,2);	 			// Найдите место, где вы хотите отображать температуру
		LcdPrintNum(temp);		// Отображение значения температуры
		LcdGotoXY(1,11);		// Найдите, где вы хотите отображать влажность
		LcdPrintNum(humi);		// Отображение значения влажности
		
		AlarmJudge();					// Судите и при необходимости вызывайте полицию

		for(i=0;i<25;i++)
		{
			KeyScanf();					// Сканирование ключей
			DelayMs(20);				// задерживать	
		}
	}
}

Содержание ресурса

(1) Проектная документация системы мониторинга температуры и влажности на базе 51 микроконтроллера и DHT11;

(2) файл моделирования Proteus8.6;

(3) программа C;

(4)Принципиальная схема;

(5) Блок-схема Visio;

(6) Справочные материалы;

(7) Список компонентов;

Скриншот ресурса

boy illustration
Docker и Kubernetes [Разработка контейнерных приложений с помощью Python]
boy illustration
Elastic добавляет Elastic Common Schema (ECS) в OpenTelemetry, чтобы помочь пользователям внедрить решения для наблюдения и безопасности на основе OTel.
boy illustration
Облачное использование Docker для развертывания личной навигационной страницы Dashy
boy illustration
Практика исследования искусственного интеллекта | Использование Docker для развертывания персонального интеллектуального помощника ChatGPT Next
boy illustration
K8S устанавливает собственные параметры монтирования NFS
boy illustration
Как построить облачный сервер бесплатно? Являются ли облачные серверы очень безопасными?
boy illustration
Внутренняя система ускорения обучения моделей Goose Factory размером в триллион долларов запущена в общедоступном облаке!
boy illustration
Облачный нативный | Краткое описание и сравнение часто используемых сетевых плагинов CNI в Kubernetes
boy illustration
Оптимизация производительности Ceph
boy illustration
Как избежать вредоносных атак на доменные имена CDN, приводящих к высоким счетам
boy illustration
[Зона легкого облачного игрового сервера] Как изменить параметры игры Eudemons Parlu?
boy illustration
Что такое Джушуитан ERP? Как насчет этого? Как Jusuitan ERP вызывает API?
boy illustration
Плоскость данных и плоскость управления в системе разделения вычислительной мощности
boy illustration
Где находятся постоянные сервера за границей и как выбрать зарубежный сервер?
boy illustration
58 самых известных людей Ant изменили свою жизнь вопреки всему: выпускники колледжей как африканского, так и африканского происхождения стали миллиардерами вместе с выпускниками времен Северной династии Цин.
boy illustration
История, которая прояснит ваши мысли о выборе сервисов облачной разработки
boy illustration
MiniMax: Большие модели, созданные в облаке!
boy illustration
Внедрите прогрессивный выпуск приложений с помощью Argo Rollouts.
boy illustration
С помощью объектного хранилища Youpai Cloud CDN + можно хранить файлы и изображения Z-Blog, а также добиться статического ускорения веб-сайта!
boy illustration
Что такое облачный телефон?
boy illustration
Анализ четырех основных решений для отслеживания источника установки приложений
boy illustration
Облачные вычисления – взаимосвязь между облачными вычислениями и виртуализацией
boy illustration
Каковы возможности во второй половине отечественных облачных вычислений?
boy illustration
Список книг | Список технических книг Alibaba, которые удовлетворят ваш «большой заводской комплекс»! [Книга в подарок в конце статьи]
boy illustration
Развертывание и установка OneManager и CloudFlare Workers — привязка доменных имен и использование ускорения CloudFlare CDN
boy illustration
Простое понимание единицы измерения процессора в параметрах ограничения ресурсов k8s.
boy illustration
6000 слов помогут вам раскрыть тайну ИКТ и технологий облачных вычислений!
boy illustration
Технический директор Alibaba Double 11 Тан Син: Taobao действительно изменился
boy illustration
Краткое описание того, как начать работу с практиками облачной разработки
boy illustration
RawChat: оптимизированный опыт общения с искусственным интеллектом, полностью совместимый с функциональной платформой GPT.