Оглавление:

Домашняя автоматизация: подавать звуковой сигнал и отображать на ЖК-дисплее, когда температура превышает пороговое значение: 5 шагов
Домашняя автоматизация: подавать звуковой сигнал и отображать на ЖК-дисплее, когда температура превышает пороговое значение: 5 шагов

Видео: Домашняя автоматизация: подавать звуковой сигнал и отображать на ЖК-дисплее, когда температура превышает пороговое значение: 5 шагов

Видео: Домашняя автоматизация: подавать звуковой сигнал и отображать на ЖК-дисплее, когда температура превышает пороговое значение: 5 шагов
Видео: БЕСПРОВОДНОЙ ТЕРМОСТАТ НА БАЗЕ УМНОГО ДОМА TUYA | ДЕЛАЕМ САМИ! #TUYA #DIY #CHINAGOODS 2024, Июль
Anonim
Домашняя автоматизация: подавать звуковой сигнал и отображать на ЖК-дисплее, когда температура превышает пороговое значение
Домашняя автоматизация: подавать звуковой сигнал и отображать на ЖК-дисплее, когда температура превышает пороговое значение

В этом блоге будет продемонстрировано, как создать систему домашней автоматизации, которая будет подавать сигнал тревоги, когда температура превышает запрограммированное пороговое значение. Он будет продолжать отображать текущую температуру в комнате на ЖК-дисплее и необходимые действия (например: Уменьшение температуры), когда температура превышает пороговое значение. В этом руководстве я использую датчик температуры AD22100 производства Analog Devices и зуммер AG-1005G. AD22100 - это датчик температуры на выходе по напряжению с формированием сигнала

Шаг 1: Детали

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

1. Плата Arduino UNO

2. ЖК-дисплей (16x2)

3. Зуммер - 2 контакта (AC-1005G)

4. Датчик температуры - 3-контактный (AD22100)

Шаг 2: Подключение различных частей с помощью Arduino UNO

Подключение ЖК-дисплея к плате Arduino UNO

Вывод ЖК-дисплея RS (вывод 4) с выводом 7 платы Arduino

Контакт включения ЖК-дисплея (контакт 6) с контактом 8 платы Arduino

Вывод ЖК-дисплея D4 (вывод 11) с выводом 9 платы Arduino

Вывод ЖК-дисплея D5 (вывод 12) с выводом 10 платы Arduino

Вывод ЖК-дисплея D6 (вывод 13) с выводом 11 платы Arduino

Вывод ЖК-дисплея D7 (вывод 14) с выводом 12 платы Arduino

Добавьте потенциометр 10 кОм к + 5В (контакт потенциометра 1) и GND (контакт потенциометра 3), Подключите средний штифт горшка (контакт 2) к контакту V0 ЖК-дисплея (контакт 3).

Вывод LCD VDD (вывод 2) и вывод LCD A (вывод 15) с + 5 В на плате Arduino.

Вывод LCD VSS (вывод 1) и вывод LCD K (вывод 16) с GND на плате Arduino.

Подключение датчика температуры AD22100 к плате Arduino UNO

Контакт 1 (V +) AD22100 должен быть подключен к +5 В на плате Arduino.

Контакт 2 (Vo) AD22100 должен быть подключен к контакту A1 на плате Arduino.

Контакт 3 (GND) AD22100 должен быть подключен к GND на плате Arduino.

Зуммер (AC-1005G) Подключение к плате Arduino UNO

Вывод 6 PWM-выхода платы Arduino должен быть подключен к положительному входу зуммера.

GND платы Arduino должен быть подключен к -ve входу зуммера.

Шаг 3: коды Arduino

Скомпилируйте его и загрузите на плату Arduino и посмотрите демонстрацию системы домашней автоматизации

// Программа начинается здесь

int val;

int tempPin = A1;

int buzzer = 6;

#include LiquidCrystal lcd (7, 8, 9, 10, 11, 12);

void setup () {

// поместите сюда свой установочный код, чтобы запустить его один раз:

lcd.begin (16, 2);

lcd.clear ();

Serial.begin (9600);

pinMode (зуммер, ВЫХОД);

}

void loop () {// поместите сюда ваш основной код, чтобы он запускался повторно:

val = analogRead (tempPin); // AD22100 подключен к выводу A1

/*

* Для 25C значение val равно 900, что означает

* 900 соответствует 1,9375 В

* Передаточная функция (V + / 5) * (1,375 + 22,5 мВ / градус * 25 градус), * Прочтите техническое описание AD22100

*/

float cel = ((((1.9375 / 900) * val) - 1.375) /22.5) * 1000;

float farh = (cel * 9) / 5 + 32;

Serial.print (val);

Serial.println ();

Serial.print («ТЕМПРАТУРА =«);

Serial.print (cel); Serial.print («* C»);

Serial.println ();

if (cel> 26) {

тон (зуммер, 1000);

lcd.clear ();

lcd.print («Температура выше порога»);

lcd.setCursor (0, 1);

lcd.print («Уменьшить температуру»);

}

еще

{noTone (зуммер);

lcd.clear ();

lcd.print («Температура под контролем»);

lcd.setCursor (0, 1);

lcd.print («Температура =«);

lcd.print (чел);

lcd.print («градус Цельсия»);

}

задержка (500);

}

// Программа здесь заканчивается

Шаг 4. Подробное понимание программы

Я постараюсь пояснить несколько разделов кода.

Функции, связанные с оператором If / else

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

если (cel> 26)

{тон (зуммер, 1000);

lcd.clear ();

lcd.print («Температура выше порога»);

lcd.setCursor (0, 1);

lcd.print («Уменьшить температуру»);

}

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

еще

{noTone (зуммер);

lcd.clear ();

lcd.print («Температура под контролем»);

lcd.setCursor (0, 1);

lcd.print («Температура =«);

lcd.print (чел);

lcd.print («градус Цельсия»);

}

Функции, связанные с зуммером

тон (зуммер, 1000) - эта функция отправит сигнал 1 кгц на контакт с именем buzzer, который определен как контакт 6, а магнитный зуммер подключен к контакту 6. noTone (зуммер) - перестанет посылать сигнал 1 кгц. Значит, звонок прекратится

Функции, связанные с датчиком температуры

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

Vout = (В + / 5 В) × (1,375 В + 22,5 мВ / ° C × TA), и такое же значение отображается на ЖК-дисплее.

Шаг 5: демонстрация инструкций

После того, как программа скомпилирована и загружена на плату Arduino UNO

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

Для увеличения температуры сенсора прикасаюсь к нему паяльником, доступным в лаборатории.

Вы можете посмотреть демо здесь..

Демонстрация системы домашней автоматизации

Рекомендуемые: