Рулонные шторы в умном доме

Всем привет!
Сегодня я хочу поговорить о том, как самому сделать автоматические рулонные шторы. Вы все еще закрываете их руками или не закрываете вообще? Вы хотите, чтобы шторы сами закрывались вечером и открывались утром? А может вы не хотите, чтобы солнце светило в глаза? Или Вам просто нужен автоматический экран для проектора? Тогда вам под кат
Лет 7 назад я купил в Леруа обычные рулонные шторы на окна лоджии. Практика показала, что открывать и закрывать их лень и поэтому они 99% времени находились в открытом состоянии. Думаю с этим сталкивались многие из владельцев таких штор. Пришло время что-то с этим делать!
Моё хобби — умный дом, поэтому постановка задачи была предельно простая: сделать моторизированные шторы с возможностью универсального управления с помощью сервера умного дома (основа моей идеологии умного дома — автоматика должна работать БЕЗ участия человека. Как-нибудь я напишу об этом отдельный пост) В качестве сервера я использую Home Assistant на Raspberry Pi3. Управление шторами будет осуществляться по Wi-Fi по протоколу MQTT, что позволит интегрировать их в любой сервер УД, поддерживающий данный протокол (чуть менее чем все). Из дополнительных плюшек которые можно дополнительно реализовать: управление c клавишных переключателей по проводу, управление напрямую с веб страницы шторы в случае, если нет сервера УД
Итак, давайте приступим.
В первую очередь создадим модель шторы. Обычно я делаю это в SolidWorks

В результате по механике нам потребуются распечатанные крепления, 2 алюминиевые трубы диаметром 28 и 36мм, подшипник 608zz и сам двигатель. Труба 28мм нужна для корпуса мотора, на трубу 36мм будет приклеиваться непосредственно ткань шторы. Двигатель выбран бесщеточный 12V, 40 об/мин. Его крутящий момент 4,9кг/см позволит тягать даже очень тяжелые шторы, в отличие от популярного 28BYJ-48, который обычно ставят на самодельные шторы.

Ссылка на магазин
https://aliexpress.ru/item/item/32914576824.html
Управлять шторой будем микроконтроллером esp8266. Этот микроконтроллер уже умеет Wi-Fi, а программировать его можно непосредственно из среды Arduino IDE (да простят меня TRUE программисты)

Разводим и травим плату управления методом ЛУТ. Выглядит она примерно так:


Следующие платы буду заказывать на производстве в Китае
Логическая схема и печатная плата доступна на EasyPDA
Проект EasyEDA
Прошиваем микроконтроллер. Ссылка на исходный код прошивки:
Проект на GitHub
Поддерживается как прошивка по проводу, так и прошивка по воздуху (OTA)
Печатаем и собираем корпус. Детали для печати можно скадачть тут:
Проект на Thingeverse.com

Двигатель в сборе

Устанавливаем получившиеся шторы на окно

Осталось зарегистрировать шторы на сервере умного дома в Home Assistant. В файл configuration.yaml помещаем код из файла roller.yaml После этого штора будет доступна для размещения на домашнем экране. Моя карточка выглядит следующим образом:

В приложении для мобильного телефона

Настраиваем логику работы шторы в графическом редакторе Node Red (установленный как addon в Home Assistant)

Логика работы следующая: с восходом солнца шторы поднимаются, через пол часа после захода шторы опускаются
Ну и конечно видео работы штор (в реальности звук все-таки тише чем записал микрофон телефона):
Решение поддерживает управление через голосовые помошники Google Home и Yandex Алиса
Пример управление с помощью Алисы
Сегодня я хочу поговорить о том, как самому сделать автоматические рулонные шторы. Вы все еще закрываете их руками или не закрываете вообще? Вы хотите, чтобы шторы сами закрывались вечером и открывались утром? А может вы не хотите, чтобы солнце светило в глаза? Или Вам просто нужен автоматический экран для проектора? Тогда вам под кат
Лет 7 назад я купил в Леруа обычные рулонные шторы на окна лоджии. Практика показала, что открывать и закрывать их лень и поэтому они 99% времени находились в открытом состоянии. Думаю с этим сталкивались многие из владельцев таких штор. Пришло время что-то с этим делать!
Моё хобби — умный дом, поэтому постановка задачи была предельно простая: сделать моторизированные шторы с возможностью универсального управления с помощью сервера умного дома (основа моей идеологии умного дома — автоматика должна работать БЕЗ участия человека. Как-нибудь я напишу об этом отдельный пост) В качестве сервера я использую Home Assistant на Raspberry Pi3. Управление шторами будет осуществляться по Wi-Fi по протоколу MQTT, что позволит интегрировать их в любой сервер УД, поддерживающий данный протокол (чуть менее чем все). Из дополнительных плюшек которые можно дополнительно реализовать: управление c клавишных переключателей по проводу, управление напрямую с веб страницы шторы в случае, если нет сервера УД
Итак, давайте приступим.
В первую очередь создадим модель шторы. Обычно я делаю это в SolidWorks

В результате по механике нам потребуются распечатанные крепления, 2 алюминиевые трубы диаметром 28 и 36мм, подшипник 608zz и сам двигатель. Труба 28мм нужна для корпуса мотора, на трубу 36мм будет приклеиваться непосредственно ткань шторы. Двигатель выбран бесщеточный 12V, 40 об/мин. Его крутящий момент 4,9кг/см позволит тягать даже очень тяжелые шторы, в отличие от популярного 28BYJ-48, который обычно ставят на самодельные шторы.

Ссылка на магазин
https://aliexpress.ru/item/item/32914576824.html
Управлять шторой будем микроконтроллером esp8266. Этот микроконтроллер уже умеет Wi-Fi, а программировать его можно непосредственно из среды Arduino IDE (да простят меня TRUE программисты)

Разводим и травим плату управления методом ЛУТ. Выглядит она примерно так:


Следующие платы буду заказывать на производстве в Китае
Логическая схема и печатная плата доступна на EasyPDA
Проект EasyEDA
Прошиваем микроконтроллер. Ссылка на исходный код прошивки:
Проект на GitHub
Поддерживается как прошивка по проводу, так и прошивка по воздуху (OTA)
Печатаем и собираем корпус. Детали для печати можно скадачть тут:
Проект на Thingeverse.com

Двигатель в сборе

Устанавливаем получившиеся шторы на окно

Осталось зарегистрировать шторы на сервере умного дома в Home Assistant. В файл configuration.yaml помещаем код из файла roller.yaml После этого штора будет доступна для размещения на домашнем экране. Моя карточка выглядит следующим образом:

В приложении для мобильного телефона

Настраиваем логику работы шторы в графическом редакторе Node Red (установленный как addon в Home Assistant)

Логика работы следующая: с восходом солнца шторы поднимаются, через пол часа после захода шторы опускаются
Ну и конечно видео работы штор (в реальности звук все-таки тише чем записал микрофон телефона):
Решение поддерживает управление через голосовые помошники Google Home и Yandex Алиса
Пример управление с помощью Алисы
Самые обсуждаемые обзоры
+64 |
4575
143
|
+56 |
1469
31
|
раньше всё отстроенно было и работало, а теперь пропал русский везде (
Очень интересно, пишите про умный дом ещё пожалуйста.
Ниже он об этом пишет.
климат это отдельная тема. Кондиционеры и радиаторы отопления сами поддерживают заданную температуру
Сразу уточню, на кондиционере 23 градуса — это установленная целевая температура
Правильно понимаю, что espшка в итоге находится внутри двух алюминиевых труб и все еще может коннектиться по wifi?
После этого доверия к ним никакого нет.
И какой у esp rssi?
Травленые дорожки под антенной тоже не добавляют уровня ;)
Задержек и отваливаний не замечено
А можно еще дамп roller.yaml?
Там .h .ino
Спасибо
Напихать в трубку 18650 можно, но постоянно заряжать шторы — смех. Нужен трансивер, который может хотя бы полгода продержаться на двух-трёх 18650…
а вообще, если не солнечная сторона-шторы особо и не нужны
mysku.club/blog/diy/78183.html#comment3453579
Заряда хватает более, чем на полгода работы в режиме утром поднялись, вечером опустились. Но не вайфай, а просто rf 433мгц.
Купил в августе прошлого года, заряжал пока 1 раз)
И опять же — нет там передатчика, только приемники, это плохо, обратной связи нет, но энергоэффективней…
Второй вариант — засекать миллисекунды работы. Работает не менее точно, но требует более сложной настройки, т.к на поднятие тратится больше времени, чем на опускание
Увидел уже. Автокалибровку не забыли? А то может получится смотать уже смотаную штору после сбоя по питанию.
Второй вариант — засекать миллисекунды работы. Работает не менее точно, но требует более сложной настройки, т.к на поднятие тратится больше времени, чем на опускание
Esp8266 сохраняет положение в энергонезависимую память. При сбое питания она всегда знает где штора (есть нюанс с перебоем во время работы- я пошел на него осознанно, чтобы избежать деградации памяти при частой записи. При большом желании можно воткнуть небольшой аккумулятор, который позволит Esp8266 сохранить положение при перебое питания, но мне это пока не надо)
Если все же произошел сбой, то устройство можно настроить с помощью специальных топиков mqtt, через которые задается начальное положение
я в недоумении…
36мм труба опирается в двух точках: на подшипник левого крепления к стене и через муфту на шестерню двигателя.
Ссылка на EasyEDA только для зарегистрированных? Или вообще приватная по ошибке?
на EasyEDA видимо надо зарегистрироваться. Проект расшарен
поправил в статье
Кстати, он как раз и горит желтым из-за этого
А детальки для печати откроете проект?
расскажите, как штору приклеивали к трубе? Как соблюдали «ровность», ведь перекос доли градуса вначале — даст неслабый крен в конце намотки.
Добавил в статью
Приклеивается на двухсторонний вспененный скотч. Приклеивал примо на окне по месту
А трубы такие где покупали? Какой-то не совсем популярный размер в нашей деревне…
Ссылки приводить не буду, еще сам не тестил бюджетные внутривальники- ибо у недорогого тьюбе мотор (китайское подразделение сомфи) уровень шума заявлен в даташите даже ниже чем у дорогих сомфи сонессе, а дорханы и алютехи по даташитам пошумнее будут.
Из мелких диаметров самые бюджетные и распространенные- 35 мм диаметром. Они стоят от 2300 р и выше. Имеют встроенные концевики- на картинке выше видно одно из шестигранных отверстий (красного цвета) под регулировочную отвертку для механических концевиков.
Внутри концевики примерно так сделаны
Есть и более дорогие приводы- там уже и концевики либо кнопочками настраиваются (концевики чем-то на перепрограммируемые механические замки похожи) или вообще электронные. И по интерфейсам- самые простые сменой фаз на проводах переключаются, более хитрые могут уже по протоколам общаться- как по стандартным- modbus, knx, так и по своим- особенно в плане радио. Ну и уровень шума учитывать надо- но тут уже надо смотреть- думаю в ближайшее время заказать бюджетный дорхановский привод, привод от китайского сомфи (тубе мотор- они вообще в даташите декларируют громкость ниже своего тихого французского собрата сомфи сонессе, который стоит более чем в пять раз дороже), ну и может алютех закажу для тестов.
А у моторов для обычных штор конечные точки могут и по усилию на валу прописываться- не знаю у всех так или нет, но сейчас лежит дома мотор для штор на объект и у него конечные точки по моменту заклинивания прописываются в микроконтроллер- проверял. Разбирать не буду, т.к он не мой.
А так- явно количество оборотов считают приводы. А дальше зависит от кривости китайских программистов в какую память в мк пишутся точки:)
В продвинутых контроллерах для штор- например в некоторых актуаторах (т.е релейных выходах) на шину knx (да и не только) есть еще датчик тока- для защиты от перегрузки и для возможности высчитывать время подъема/ опускания шторы- чтобы можно было выгонять штору на среднее положение например.
Хотя есть приводы чисто с электронными входами направления- а внутри уже электронные концевики стоят- т.е микроконтроллер, который считает обороты и контролирует ток на двигателе- но они обычно гораздо дороже обычных механических. Тут уже вся защита внутри самого привода- они даже иногда требует постоянное питание для себя.
А я вот тут стал искать решение чтобы открывать обычные деревянные ставни — так практически вообще ничего нет. Только Ducati по негуманной цене, да ещё и безо всякой интеграции (только тупой радиобрелок)
Хотя, дорогие менее шумными обычно должны быть- есть такой нюанс. После карантина постараюсь заказать несколько внутривальников разных производителей и сравнить по уровню шума.
Ну и цены нескольких актюаторов (первые попавшиеся ссылки)
KNX 18т.р
jungstore.ru/knx/2501UP/
Z-wave Fibaro 6500 руб
zwhouse.ru/shop/fibaro-roller-shutter-2/
В целом, если делать с нуля с нормальным серьезным подходом, то это однозначно KNX, Clipsal и компания. Может при следующем ремонте заложу в стены провода и сделаю все на KNX
Knx все-таки староватый протокол, хотя до сих пор особо нет альтернатив. Радио- для установки на голом объекте- ну такое. Я даже от фибаро плююсь, причем сильно
avsural.ru/vnutrivalnye-yelektroprivody
Только у дорханов есть непонятка с приводами на 6 нм- в некоторых даташитах говорится только о 9 оборотах у концевиков- у остальных приводов 35- 42 оборота в среднем у концевиков (а от этого по понятным причинам зависит сколько сможет метров штор привод поднимать, опускать). Хотя дорхановцы говорят что не должно быть 9 оборотов- там типа больше.
А вот к примеру бюджетный привод от китайского завода сомфи- в даташитах вообще чет заявлен уровень шума даже ниже, чем у дорогих французских приводов сомфи- надо бы проверить, поэтому после окончания карантина закажу и дорхан и тьюбе мотор для сравнения и поищу у коллег для сравнения французские приводы сомфи.
rollmarket.ru/catalogue/show/nr-0-10-16-kit40/
Вот Ducati Persy 52, которые мне подойдут, стоят уже 650 евро за штуку. И надо их мне 10 штук. И тут у меня с жабой полное согласие — это явный перебор.
По приводам для рулонок- у нас так же- от 30 евро за чисто приводы, а дальше- за электронные концевики, за французское происхождение (да, я про сомфи), за меньший уровень шума, ну и за всякие навесы типа modbus, knx, радио (свои протоколы или например z-wave, zigbee) повышается ценник.
Зы, не думали воткнуть в щит актуатор на 4, 8 или 12 каналов для рулонок и дальше протянуть кабеля до приводов?
А с обычными ставнями надо да — и влаго и пылезащиту, и чтоб не замерзали. Ищу пока, короче.
Ставни вот такие;
Лежит у меня тут на один замороженный объект привод для штор- от него мне надо по сути только фазовое управление и концевики- дык нет приводы идут сразу еще с кучкой наворотов типа своего радиопротокола- только ценник добавляется и антенна внешняя торчит. Бесят коробочные решения, тьфу.
Ну а протоколы — это да. Ну ребята, у меня уже есть актуаторы со всей логикой, интерфейсом и всеми мозгами на все случаи чтобы рулить обычным коллекторным моторчиком — ну продайте мне пожалуйста один этот моторчик с шестерёнкой.
Нет, никак нельзя. Получи вайфай и аккумулятор в нагрузку.
А переусложнения (то есть нагромождение никому не нужных функций) происходит из омерзительной общепринятой сейчас парадигмы увеличения customer value любой ценой. То есть просто нужно напихать больше функций чем у конкурентов, причем любых функций.
Радиобрелки — это да. Я бы хотел вообще избавиться — это и ненадёжно и ужасно с точки зрения безопасности. У меня прекрасно с одного брелка открываются и ворота во двор и гаражные ворота — заходи кто хочешь, при желании. Да, конечно это не livolo а FAAC, от соседского брелка не сработает. Но всё равно как-то не нравится.
Стал копать схемы приводов — так для интеграции там только контакты на открыть-закрыть и на стоп. Даже без фидбека. Буду сейчас копать дальше — как бы колдовать не пришлось. Есть небольшая надежда что на технологический разъем uart выведен и там есть что-то осмысленное…
Евро за 200 за штуку вполне сойдёт, больше — уже не согласен.
К тому же большинство доводчиков предполагает открытие на 90 градусов. А тут нужны честные 180…
https://aliexpress.com/item/item/4000563783947.html
https://aliexpress.com/item/item/32836229986.html
Посмотрите на видео с ducati persy — надо что-то подобное…
Там внутри червячный механизм, он не даёт возможности проворачивать жалюзи минуя поворотную ручку. К тому же даже если все потроха выкинуть, там внутри места не хватит даже под маленький шкив, не то что под двигатель. А лепить поверх профиля какие-то дополнительные корпуса — ну совсем не эстетично.
Очень хочется вот так, но пока так и не придумал адекватного варианта. Два рулона штор над окном и сдвоенные направляющие как-то не очень…
Теоретически, можно совместить раздвижную и рулонную автоматические конструкции (особенно, если рулонная на самом окне). Но если использовать готовые решения, финальная стоимость энтузиазма не добавляет. Это еще если закрыть глаза на мелкие детали типа прокладки линии электричества к ним и вывод ручных/дублирующих управляющих кнопок.
Пока лучшее, что придумалось, это blackout рулонки на сами створки окон + полупрозрачные шторы на обычном карнизе. Но вот обычный карниз это как раз то, чего хотелось бы избежать.
потому что с полотном и прочей обвеской сумма подойдет вплотную к готовым решениям. и тогда возникает вопрос — а зачем лепить колхоз, если в те еж деньги можно купить готовое?
Управлять можно тремя вариантами:
1. Без допиливания — зарегистрироваться на облачном сервере mqtt и поставить приложение типа play.google.com/store/apps/details?id=net.routix.mqttdash
play.google.com/store/apps/details?id=snr.lab.iotmqttpanel.prod
2. Доработать код прошивки и тогда можно будет открывать/закрывать с web страницы на телефоне с двумя кнопками
3. «Железный» — развести на плате выход для физической кнопки управления.
4. Как выше написали, можно взять готовый вариант. Думаю Вы этот вариант уже рассматривали, но все же
В любом случае, если решите делать- пишите в личку. Помогу
Читал, что каждый раз вы меняете настойки работы wifi в ESP8266, Arduino Framework перезаписывает эти настройки в SPI flash всегда в одно и тоже место. Например каждый раз когда вы вызываете WiFi.disconnect(false) эта настройка пишется во flash. Каждый раз когда вы подставляете пароль, он пишется во флеш и тд. В общем со временем там образуется дырка и привет. А еще у ESP8266 нет Brown-Out detection и если что-то случиться с питанием во время записи на flash ESP8266 может сглючить и затереть прошивку, случаи уже были. Особенно это актуально при батарейном питании. Чтоб уменьшить количество записей в эту область есть специальная команда:
Ну и у вас куча констант таких как пароли, номера пинов прописаны как переменные которые отжирают оперативную память. Не лучше бы их прописать например как #define? А для print() использовать макрос F(), что так же освободит память heap.
Про проблему затирания памяти я писал где-то выше в аспекте сохранения положения шторы. На форумах пишут, что Дед Мороз таки существует, но я с этим ни разу не сталкивался, хотя некоторые мои устройства живут уже несколько лет
вот кусочек кода begin
полный код в папке — .../libraries/ESP8266WiFi/src/ESP8266WiFiSTA.cpp
Не нужно все это!
Два фотодатчика один в окно, другой в комнату, и дифференциальный усилитель на копеечном операционнике.
Если на улице больше света, чем в комнате- штора открывается, если в комнате включили свет -закрывается.Подключил и забыл!
Так что схему можно упростить, выкинув транзисторы и обвязку.
Если поставить разрешение канала 8 бит: полная скорость 0, полная остановка 256 и крутить со скоростью 100, то «перекручивает» на 25 оборотов примерно, если на скорости 200, то всего на 5. Тестировал без нагрузки.
Кстати, в мануале на есп32 сказано, что вроде как полный стоп это 2**8 -1 (что в моем варианте 255), но у меня какие-то адские рандомные глюки, если так писать, а вот любое число больше или равное 256 — исправно и стабильно тормозит мотор без глюков. Долго мучился с этим.
Еще реализовал вариант ускорения и замедления, путем циклического изменения pwm в функции прерывания. Но оно тоже как-то один раз из 100 подглючивает и не останавливается полностью, так и не смог пока понять, где косяк.
1. 1 сек — дофига, там с головой и 50-100мсек хватит
2. В двигателе уже есть какой-то стоп по току кажется. У меня их штук 7 разных размеров и передаточных чисел. Я какой-то 1к200 клинил специально и он останавливался. Конечно же лучше на это не рассчитывать, но делюсь находками )
На моторе что TC использует, который и я купил, геркон изначально не планировал использовать. Подумал что управляя через ШИМ можно плавно подъехать к верху до блокировки, отслеживая что до этого обороты были, а после блокировки оборотов нет более секунды — значит доехали до верху, далее отматываем вниз немного, что бы не было натяжения в верхней позиции потом, и фиксируем что мы в верху. Ну а вниз уже по выходу HALL считаем. Работает :)
Боялся что будет разбивать механизм в ту секунду (или меньше) пока мой код не принял решение что дальше не крутится. НО: мотор сам своим контроллером отключает мотор, если туго крутить стало, чем меньше мощность через ШИМ задали, тем при меньшей блокировке он отключается. Так что все ок.
Вот бы такой мотор да в 16мм диаметре.
Еще я все редукторы перебрал и смазал редукторной графитовой смазкой, с завода там какие-то жидкие белые сопли в гомеопатических количетвах. После смазки моторы стали разительно тише работать.
Редукторы все взаимозаменяемые и на 18ых моторах и на 30ых (числа это длинна движка).
Платку я фрезернул другую, с dc-dc mini на борту он до 26В держит. И прочий нужный обвес там мне. Но у меня мотор не шторы крутит, хотя и в шторы я его тоже запихаю.
Пока для штор есть пара моторов zigbee для игр от zemismart, но не могу ткань найти. Где взять блекаут широкий? 140+ см
Мне не повезло, последний раз брал тут:
https://aliexpress.ru/item/item/4000615519072.html
Из 4-х моторов 3 дурили страшно. Потратил много времени что бы понять что не так работает. Все перепроверил. Понимание пришло когда подключил осциллограф на HALL Pin. В работе и в простое паразитные импульсы одинаковой частоты, короткие, но разной амплитуды в сторону 0V. Если мотор остановился на положении где HALL PIN выдает высокий уровень, то эти импульсы есть, если остановился на низком то нет. Вот такая вот зараза — плавающая неисправность. Попробую программное решение — с задержкой дополнительно опрашивать PIN HALL уже внутри прерывания еще раз, что бы понять реальный или паразитный импульс. Но так эти моторы меня выбесили и упирающийся продавец, по 100500 раз переспрашивающий и на каждом этапе переписки уверяющий меня как и что я не правильно подключил, что желания ставить эти моторы в штору уже нет. Какие еще сюрпризы от них ждать не понятно. Буду заказывать еще у другого продавца.
Так что мой опыт показал что у этого продавца лучше не брать.
PS
Собранные ранее две шторы трудятся каждый день и программный поиск верхнего положения работает на ура :)
Выше писал как сделать без герконов, магнитиков и микро-выключателей авто-определение позиции.
Последний раз брал три мотора здесь но проверил только два. А внимательно — один. Никаких нареканий не вызвало.
Есть микросхема от которой идет выход «Сигнальная линия»
так что что там чинить не понятно…
У меня пока трудятся.
Угробил уже три мощных редуктора (30-40RPM) в верхней части рвет шестерни, если удачно заклинить. Но благо редуктора есть отдельно и дешево.
На всякий случай те же моторы под другими лотами у этого продавца уже:
https://aliexpress.ru/item/item/33005984148.html
https://aliexpress.ru/item/item/1005002575919593.html
Ну и сам магазин:
aliexpress.ru/store/4989214