Домашняя автоматизация. Управляем притоком свежего воздуха с помощью ESP8266 и Яндекс Алисы
В данной статье мы рассмотрим  тему управлением воздушным клапана с использованием esp8266 и голосового помощника Яндекс Алиса.
Домашняя автоматизация. Управляем притоком свежего воздуха с помощью ESP8266 и Яндекс Алисы
29.02.2024 в 11:38   1165 2
Версия для печати

Домашняя автоматизация. Управляем притоком свежего воздуха с помощью ESP8266 и Яндекс Алисы

Введение

В данной статье мы рассмотрим  тему автоматизации работы приточного воздушного клапана с использованием платформы esp8266 и интеграции его в систему умного дома с помощью голосового помощника Яндекс Алиса.

Приточный воздушный клапан является важным элементом системы вентиляции, обеспечивая подачу свежего воздуха в помещение для комфортных условий проживания. Однако, с использованием современных технологий и IoT-решений, мы можем взять управление этим процессом на себя, делая его более эффективным и удобным.

С помощью небольшой модификации механизма клапана, путем установки в него сервопривода и микроконтроллера ESP8266, мы сможем дистанционно управлять положением его заслонки по WiFi. А с помощью голосового помощника Яндекс Алиса мы сможем делать это голосом, используя простые и понятные команды.

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

Техническая часть

В основе проекта лежит воздушный клапан Vakio Kiv Pro. Он представляет собой вентиляционное устройство, используемое для непрерывного поступления в помещение свежего воздуха. С его помощью нет необходимости постоянно открывать окна для проветривания.

Конструкция воздушного клапана

Конструкция клапана представлена на рисунке ниже:

klapan

Принцип работы очень простой. Воздух с улицы, поступая через вентиляционную решетку, проходит через трубу с теплоизоляцией и фильтром и через клапан заходит в помещение. Количество воздуха, поступающего в дом, регулируется крышкой клапана. Её положение изменяется  с помощью зубчатой передачи рычажком нак корпусе вращающим приводную шестерню. Фото конструкции ниже:

clapan1

Модификация воздушного клапана

Для реализации удаленного управления нам необходимо немного изменить конструкцию клапана. Приводить заслонку в движение теперь будет серво-привод. Можно использовать как SG90, так и MG90. Управлять же движением серво мы будем через ESP8266. Ну и наконец питать все будем через компактный AС-DC блок питания 220В-5В. Итак, приступаем.

Рассверливаем центральное отверстие приводной шестерни клапана сверлом на 7. С помощью кусачек откусываем все лишнее у одного из комплектных рычажков серво-привода и вклеиваем его суперклеем в приводную шестерню.

clapan2

Ставим шестерню на место и с другой стороны клапана насаживаем на неё серво-привод.

clapan3

Для надежности можно закрепить серво термоклеем. 

 

Для питания можно использовать вот такой небольшой блок питания с aliexpress.

power

Размеры его всего 35*25*15 мм, а  свободного места в корпусе клапана вполне достаточно. Хотя возможны и другие варианты.

Варианты управления

Далее необходимо определится с размещением модуля ESP8266. Рекомендую использовать Wemos D1 Mini, как самый компактный. И тут имеются 2 варианта:

  • Если клапан всего один, то можно просто размещаем ESP8266 внутри корпуса клапана. Свободного места предостаточно.
  • Если их несколько, то для экономии финансов можно использовать один ESP8266 для управления сразу несколькими клапанами.

В первом случае подключение будет выглядеть следующим образом:

var1

Во втором случаем подключение будет таким:

var2

В целом, оба варианта имеют свои преимущества и недостатки, но при большом удалении клапанов друг от друга я все же склоняюсь ко первому варианту.

Вариант сборки

После окончательной сборки по первому варианту клапан будет выглядеть как на фото ниже:

clapan4

clapan5

clapan6

clapan7

Прошивка

Исходя из разных вариантов подключения, написал 2 версии прошивки для ESP8266. Обе доступны в моем github репозитории. В целом между собой они очень похожи, но есть некоторые нюансы в настройке и использовании, которые мы рассмотрим немного позже.

Общие настройки для всех версий прошивки

Здесь мы рассмотрим общие настройки для двух версий прошивки. Прежде всего это настройки для подключения к вашей сети WiFi.

#define ssid "ssid" //точка доступа wifi
#define password "pass" //пароль wifi

Указываем название точки доступа и пароль к ней.

Далее идут настройки подключения к MQTT серверу для удаленного управления.

const char* mqtt_server = "192.168.1.1"; //ip или http адрес
int mqtt_port = 1883; //порт
const char* mqtt_login="login"; //логин
const char* mqtt_pass="pass"; //пароль

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

На этом настройки общие для двух прошивок закончены. Переходим к рассмотрению и настройке её вариаций.

Вариант 1. Каждому клапану свой ESP8266.

Данный вариант прошивки доступен по этой ссылке. Из настроек здесь доступны пин подключения серво привода к ESP8266 и скорость движения:

int8_t speed=1; //скорость движения
servo.attach(D3,540,2400);

При старте устройства поднимается веб интерфейс на 80 порту. Для доступа к нему, просто введите IP ESP8266 в адресную строку вашего браузера. С помощью перемещения ползунка можете протестировать работу вашего серво-привода.

Также осуществляется подключение к MQTT брокеру и подписка на топик CmdTopic для получения управляющих команд.

формат команд: %%%. Где %%% - угол поворота (0-180)

То есть для поворота серво на 100 градусов вам нужно отправить в CmdTopic команду: 100.

На этом настройка закончена. Пример интеграции устройства в Умный дом Яндекс подробно рассмотрен в документации к проекту в Github репозитории.

Вариант 2. ESP8266 управляет несколькими клапанами.

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

Он доступен по этой ссылке. В настройках дополнительно указываются количество подключенных сервоприводов и максимальный угол поворота:

#define AMOUNT 2 //количество сервоприводов
#define MAXANGLE 90 //максимальный угол поворота

Пины для подключения серво указываются следующим образом:


servos[0].attach(D3);
 servos[0].smoothStart();
 servos[1].attach(D4);
 servos[1].smoothStart();
 //servos[2].attach(D5);
 //servos[2].smoothStart();
 //servos[3].attach(D6);
 //servos[3].smoothStart();

Функция smoothStart() при старте устройства осуществляет плавное передвижение вала в нулевую позицию.

Далее идет настройка скорости передвижения и ускорений для всех серво:

for (byte i = 0; i < AMOUNT; i++) {
 servos[i].setSpeed(90); // скорость градусов в секунду
 servos[i].setAccel(0.1); //ускорение (от 0 до 1)
 }

Формат команд для управления по MQTT тоже несколько иной:

N %%%. Где N - номер сервопривода от 0 до AMOUNT-1, а %%% - процент поворота При N=AMOUNT команда выполняется для всех серво одновременно

Обратите внимание! В команде указывается не угол поворота, а процент открытия задвижки от 0 до 100.

Пример интеграции в умный дом Яндекс также на странице проекта.

Более подробно про интеграцию устройств в Умный дом Яндекс вы сможете узнать в этой статье.

Тест работы

Несколько видео с тестом работы устройства:


Заключение

Домашняя автоматизация, также известная как умный дом, представляет собой систему устройств, способных автоматически выполнять задачи и управлять различными аспектами жилого пространства без прямого вмешательства человека. Управление воздушным клапаном с использованием контроллера ESP8266 и голосового помощника Яндекс.Алиса относится к одной из возможных реализаций домашней автоматизации.

Использование ESP8266 и Яндекс.Алисы для управления воздушным клапаном позволяет автоматизировать процесс регулировки вентиляции и поддержания комфортных условий в помещении. С помощью голосовых команд можно изменять температуру или режим работы клапана, что обеспечивает удобство и экономию времени.

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

Использование ESP8266 и Яндекс.Алисы для управления воздушным клапаном представляет собой интересное и инновационное решение в области домашней автоматизации.

Материал также доступен на моем канале: Яндекс Дзен и в группе ВК
Категория: Программирование | Добавил: :, (11.08.2023)
Просмотров: 1165 | Комментарии: 2 | Теги: автоматизация, EЫЗ8266, умный дом, Яндекс Алиса | Рейтинг: 0.0/0
Поделиться:
Всего комментариев: 2
avatar
1
toxic • 14:59, 12.08.2023
Здорово, Спасибо Сергею за помощь в коде! cool
avatar
0
ALT • 14:41, 14.08.2023
Не за что! Обращайтесь!
avatar