Вариант контроллера для вытяжки

Подключение исполнительных устройств, датчиков, контроллеров.

Модератор: immortal

Аватара пользователя
tarasfrompir
Сообщения: 2830
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин
Благодарил (а): 185 раз
Поблагодарили: 662 раза

Вариант контроллера для вытяжки

Сообщение tarasfrompir » Пт янв 26, 2018 3:26 pm

Сподвигло меня на этот беспредел периодическое (1 раз в 10 лет) переутепление ванной сверху.
Понял что во всем виновато отсутствие вытяжки как таковой.
Установил вытяжку и .... понял что надо подключать к Мажорику.
Взял такие запчасти:
СпойлерПоказать
1. ESP8266-12
2. DHT-11 (для дела достаточно)
3. Блок питания ЮСБ самый маленький какой нашел в "Авроре"
4. КРЕН (стабилизатор напряжения) на 3.3 вольта
5. макетку (не ругайте все делал впервые)
6. коробку с электронного китайского транфсорматора на 12 для галогенок.
Все это соединил по схеме (внизу).
Написал скетч для Ардуино IDE (внизу)
Установил, запустил (проклял все - стукнуло током) БУДЬТЕ ОЧЕНЬ ВНИМАТЕЛЬНЫ НА СХЕМЕ ВИСИТ 220 ВОЛЬТ.
Потом еще, еще ну и опять проклял все.
ЗАПУСТИЛ !!!!
Принцип такой -
В Скетче нужно внести 4 данные-
СпойлерПоказать
1. Имя сети
2. Пароль
3. тип датчика ДНТ
4. Пин датчика ДНТ
Все остальное вводится через веб страницу.
СпойлерПоказать
АЙПИ - адрес понятно думаю..
Имя датчика влажности и температуры - имя датчика созданого в Мажорике (Temp01 - типа)
ГПИО - подведенное к симисторному ключу - в моем случае и по СХЕМЕ 4
Время таймера - время работы вытяжки после превышения порога.
Обновление скетча - если что не так - через веб страницу.
Передает данные о температуре и влажности на мажорик через промежуток (установленный в странице настроек).
ну и вроде все
Забыл - все настройки сохраняются в памяти - так что включай выключай НЕ страшно.
Платы как таковой нет - паял все на макетку (такчто извените)
Вопросы приветствуются.
SSDP - виключатель
http://upnp.org/specs/ha/UPnP-ha-Binary ... Device.pdf
Вложения
vityagka.ino.ino.tar.gz
(4.34 КБ) 571 скачивание
vityagka.rar
скетч
(4 КБ) 77 скачиваний
схема.jpg
Схема
схема.jpg (128.61 КБ) 3763 просмотра
Последний раз редактировалось tarasfrompir Чт фев 22, 2018 9:56 pm, всего редактировалось 2 раза.
За это сообщение автора tarasfrompir поблагодарили (всего 4):
odinvolk (Пт янв 26, 2018 8:14 pm) • serghei (Пт янв 26, 2018 10:49 pm) • VooDooN (Сб янв 27, 2018 2:10 pm) • Amarok (Чт авг 01, 2019 11:28 am)
Рейтинг: 4.94%
Спасибо нам ПОМОЖЕТ..!
Аватара пользователя
igorewa
Сообщения: 504
Зарегистрирован: Ср дек 21, 2016 11:54 pm
Откуда: Киев
Благодарил (а): 10 раз
Поблагодарили: 41 раз

Re: Вариант контроллера для вытяжки

Сообщение igorewa » Пт янв 26, 2018 7:19 pm

Я у себя сделал чуть проще, но немного дороже. Купил Sonoff TH10 с датчиком температуры / влажности. Залил в него wifi-iot прошивку которая хорошо дружит с MD.
Покупал Sonoff TH10 из-за того что не нужно заморачиваться с питанием и корпусом.
Вложения
th1.jpg
th1.jpg (37.82 КБ) 3723 просмотра
За это сообщение автора igorewa поблагодарил:
odinvolk (Пт янв 26, 2018 8:14 pm)
Рейтинг: 1.23%
ASUS H110T, I5 7500, DDR4-16Gb, SSD256 . WIN10 64 (LTSB)
serghei
Сообщения: 2535
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв
Благодарил (а): 293 раза
Поблагодарили: 272 раза

Re: Вариант контроллера для вытяжки

Сообщение serghei » Пт янв 26, 2018 11:04 pm

Техническая реализация - понятно. Скетч компилится и ,наверное, будет работать, проверю на выходных.
Вопросов пока два:
1. Где задается значение влажности , после которого сработает включение вытяжки.
2. Интересует реализация решения на стороне МД. Как увидеть, что ESP жива и шлет значения влажности.
Ну и как следствие - как задать значение влажности с Алисы , что бы сработало ESP.

PS/ желательно для абсолютно начинающих - через экспорт класса или очень подробно со скринами.

PPS/ Подобную задачу я пытаюсь решить автономно на ардуине, но не получается условие - если влажность больше столькото , то включить вытяжку. И если меньше столькото - выключить.

За код будет отдельное спасибо!))
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
Аватара пользователя
tarasfrompir
Сообщения: 2830
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин
Благодарил (а): 185 раз
Поблагодарили: 662 раза

Re: Вариант контроллера для вытяжки

Сообщение tarasfrompir » Сб янв 27, 2018 8:52 am

serghei писал(а):Техническая реализация - понятно. Скетч компилится и ,наверное, будет работать, проверю на выходных.
Вопросов пока два:
1. Где задается значение влажности , после которого сработает включение вытяжки.
2. Интересует реализация решения на стороне МД. Как увидеть, что ESP жива и шлет значения влажности.
Ну и как следствие - как задать значение влажности с Алисы , что бы сработало ESP.

PS/ желательно для абсолютно начинающих - через экспорт класса или очень подробно со скринами.

PPS/ Подобную задачу я пытаюсь решить автономно на ардуине, но не получается условие - если влажность больше столькото , то включить вытяжку. И если меньше столькото - выключить.

За код будет отдельное спасибо!))
1. Значение влажности указывается на странице настроек... (главное то пропустил написать). Через мажорика не задается да и смысла нет.
Пример моей страницы -
СпойлерПоказать
===================================================================
===================================================================
SETTING PAGE FOR MAJORDOMO PARAMETERS
===================================================================
===================================================================
IP adress of server: 192.168.100.120

===================================================================
Name of Humidity device....(40 simbols): Sensor_humidity01

===================================================================
Name of Temperature device (40 simbols): Sensor_temp01

===================================================================
GPIO number (2 digits) for FAN.........: 04

===================================================================
===================================================================
......... LEVEL FOR HUMIDITY IN ROOM .........
===================================================================
Set humidity level (2 digits)...........: 60

===================================================================
......... TIME TO WORK FAN IN ROOM ...........
===================================================================
Set time to work fan (minutes)(1 digits): 3

===================================================================
===================================================================
Set
2. Проверяется живость - Устройства онлайн (указал ip и готово).
3. По поводу шлет значение - поскольку это напрямую получилось Простым устройством на стороне МЖД оно проверяется автоматом. Но как нормальный вариант контролировать время обновления данных если у меня выставлено так - Set time to work fan (minutes)(1 digits): 3. То соответственно данные приходят максимуму в течении 5 минут. То и соответственно живость датчика проверяется по времени.
(Вот единственное надо будет еще передать на мажорика значение фактической включенности вентилятора)
Доделать надо...
По поводу твоего ППС
Вот сама функция в ардуино - ничего сложного:
СпойлерПоказать
Перед этим переменная LEVEL - уже получила уровень влажности
timest - это время старта таймера тоже получено раньше
GPIO - это номер GPIO для включения вентилятора
// включает вентилятор
void releonof() {
// ПРЕВРАЩАЕТ ВРЕМЯ работи В МИНУТАХ В ЦИФРОВОЕ ЗНАЧЕНИЕ и передает в переменную FAN
int FAN = TIMETOWORKFAN.toInt();
// poluchem 2 vremya время работі после старта скетча
int timef = millis() / 1000;
// проверка на уровень влажности
int DLEVEL = LEVEL.toInt();
// proveryaem i na vremya vmeste s vlagnostu
if (humidity > DLEVEL && timef - timest > FAN*60+1 ) {
// процесс включения вентилятора
int gpioo = GPIO.toInt();
digitalWrite(gpioo, HIGH);
delay(1000); // Wait for a second
timest = millis() / 1000;
}
if (humidity < DLEVEL && timef - timest > FAN*60+1 ) {
// отключение вентилятора
int gpioo = GPIO.toInt();
digitalWrite(gpioo, LOW);
delay(1000); // Wait for a second
timest = millis() / 1000; // ustanavlivaem znachenie обнуленного времени для проверки
}
}
По поводу ПС
Никаких классов у меня нет - используются простые устройства
Создал 2 устройства как на картинке и перенес название этих устройств на страницу настройки самого датчика и ВСЕ...
Вложения
Безымянный.jpg
Безымянный.jpg (67.98 КБ) 3652 просмотра
За это сообщение автора tarasfrompir поблагодарил:
serghei (Сб янв 27, 2018 11:21 am)
Рейтинг: 1.23%
Спасибо нам ПОМОЖЕТ..!
Аватара пользователя
tarasfrompir
Сообщения: 2830
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин
Благодарил (а): 185 раз
Поблагодарили: 662 раза

Re: Вариант контроллера для вытяжки

Сообщение tarasfrompir » Сб янв 27, 2018 9:14 am

ТО igorewa
А ради кайфа ....
А если серьезно это моя 2 поделка такого плана...
Да и ради саморазвития......
Да и дешевле вышло - все почти было....
ВОТ МОЖЕТ кто и повторит...
Спасибо нам ПОМОЖЕТ..!
olehs
Сообщения: 1115
Зарегистрирован: Вс июн 14, 2015 11:08 am
Благодарил (а): 85 раз
Поблагодарили: 340 раз

Re: Вариант контроллера для вытяжки

Сообщение olehs » Сб янв 27, 2018 4:23 pm

По поводу порога...
Абсолютное значение - не всегда хорошо. В зависимости от времени года нормальное значение влажности может колебаться, например от 20 до 75%.
Например на улице дождь и влажность 70%, а Вы выставили порог 65%. Так вытяжка никогда и не выключится))

У себя порог выставляю относительно текущей влажности в соседней ("сухой") комнате + какое-то фиксированное значение.

Потому управление порогом из МЖД, кмк, совсем не лишнее.
Аватара пользователя
tarasfrompir
Сообщения: 2830
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин
Благодарил (а): 185 раз
Поблагодарили: 662 раза

Re: Вариант контроллера для вытяжки

Сообщение tarasfrompir » Пн янв 29, 2018 10:24 am

olehs писал(а):По поводу порога...
Абсолютное значение - не всегда хорошо. В зависимости от времени года нормальное значение влажности может колебаться, например от 20 до 75%.
Например на улице дождь и влажность 70%, а Вы выставили порог 65%. Так вытяжка никогда и не выключится))

У себя порог выставляю относительно текущей влажности в соседней ("сухой") комнате + какое-то фиксированное значение.

Потому управление порогом из МЖД, кмк, совсем не лишнее.
Изначальная задача стояла в изготовлении самодостаточного устройства - которое может работать с МЖД и БЕЗ оного.
Поэтому регулированием влажности в ванной пускай занимается это устройство, поскольку МЖД бывает периодически недоступен...
По поводу влажности - отвечу следующее .. Поскольку вытяжка работает ИЗ дома то воздух забирается изнутри.
А поскольку ДБН пишут о влажности в помещениях от 30 до 60 % разных категорий помещений. То соответственно и уровень влажности принимался исходя из оного.
И еще мелкий нюанс - сама библиотека ДНТ расчитывает влажность исходя из температуры помещения (возможной насыщаемости воздуха), поэтому я считаю насыщенность воздуха тут принимать в расчет не имеет смысла.
ПС
Будет продолжение в связи с необходимостью вентиляции мансарды - буду еще изготовлять плату. Так что как только та и сразу... :oops: :oops: :oops: :P :lol:
Спасибо нам ПОМОЖЕТ..!
Logrus
Сообщения: 1629
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 276 раз
Поблагодарили: 322 раза

Re: Вариант контроллера для вытяжки

Сообщение Logrus » Пн янв 29, 2018 12:30 pm

За это сообщение автора Logrus поблагодарил:
tarasfrompir (Пн янв 29, 2018 5:51 pm)
Рейтинг: 1.23%
Мой CONNECT | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо - ТАМ =>
Аватара пользователя
tarasfrompir
Сообщения: 2830
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин
Благодарил (а): 185 раз
Поблагодарили: 662 раза

Re: Вариант контроллера для вытяжки

Сообщение tarasfrompir » Пн янв 29, 2018 5:51 pm

Посмотрел, оценил. Но МКЮТТ ставить не хочу - это раз.
Готовую платку куплять не хочу это два.
- причины простые
1. Греется
2. Датчик не выносной.
3. Я так понял что там есть еще режим точки доступа конфигурационный вариант.
(Как опция класно. Но в практике - ну не вижу смысла.)
4. Джейсон я не понимаю - умом понимаю что круто, но блин массивы собирать потом раскладать. (вобщем не для меня - опять же новичек).
(Проще 3 запроса сделать...)

Дальше не греб - из- за некоторого непонимания (новичек все по примерам).
Спасибо нам ПОМОЖЕТ..!
DX168B
Сообщения: 9
Зарегистрирован: Вт янв 02, 2018 7:10 pm
Благодарил (а): 0
Поблагодарили: 3 раза

Re: Вариант контроллера для вытяжки

Сообщение DX168B » Вт янв 30, 2018 10:42 am

tarasfrompir1
А что не так с MQTT?
Это довольно простая вещь, дающая больше возможностей, чем взаимодействие через HTTP.
Если вся проблема в том, что нужно забрать у устройства параметры в любое время, а не ждать, когда устройство само опубликует их, то есть такая вещь как retained message. Брокер хранит у себя retained сообщения и автоматически посылает их всем новым подписчикам.
У меня, допустим, весь обмен держится на этом протоколе. Устройства у меня связаны между собой через чистый MQTT.
А MD просто выполняет какие-то глобальные задачи. Если он упадет, вся система продолжит работу, пусть и без таких
функций, как "отключить все, когда никого нет дома". Сейчас на narodmon дали доступ к ихнему MQTT брокеру для всех.
Он у меня используется как резервный на случай, если локальный сервак рухнет окончательно. Если упадет еще и
домашняя сеть, то мои термодатчики все снабжены мелкими дисплеями а-ля SSD1306, а контроллеры умеют жить самостоятельно. Просто исчезнут такие функции как сбор данных и дистанционное управление. Но любые данные можно просмотреть локально. На счет погодной станции вообще все хитро. Ближайший к ней комнатный датчик-информер переключается в режим точки доступа и погодная соединяется с ним напрямую. А на дисплее можно просматривать климат на улице.
Ответить