Открывашка для форточки или будни ленивца
Друзья привет.
Хочу поделиться с вами моим новым устройством.
Рис 1
Как-то одним зимним вечером, уставший ложусь, ужасно хочу спать, но чувствую, что воздуха дома совсем нет – проблема, надо встать, а я так удобно устроился, одеяло и моя подушка просто идеально окутывают мое уставшее тело, а ноги говорят – "хозяин, спасибо что наконец добрался до постельки, будем восстанавливаться..." А нет, надо встать и проветрить помещение, дышать сложно.
Вы когда-либо задумывались о качестве воздуха в помещении, где вы и ваша семья проводите большое количество времени? Нет не об опасном угарном газе, не о утечке газовой плиты, пыли в воздухе, нет, а банальном газе, который мы генерируем сами? Углекислый газ ничуть не менее опасен и зачастую доставляет нам больше хлопот и неудобства. От него болит голова, бывает сильная усталость и он просто отравляет наш организм если не следить за его концентрацией и не проветривать вовремя помещения.
Так, о чем я, ну да, встал, открыл форточку, лег, но засыпать нельзя, ведь во дворе зима, а дом отапливается газом и в эпоху "капитализма и глобального потепления" совершенно не хочется выбрасывать тепло, то есть деньги на ветер в буквальном смысле этого слова. Как говорится в моей любимой пословице "Каждый сэкономленный доллар — это заработанный доллар" или рубль, манат, ну как в СССР на банкноте был целый список, выбирайте на свой вкус...
Надо закрыть форточку.
Просыпаюсь утром и мысль в голове – надо бы что ни будь придумать, автоматизировать эту форточку как ни будь. Сказано сделано, но потом, после того как закончу с текущим проектом, кстати о нем, вот ссылка – «Моя Wi-Fi погодная станция Wi-Fi».
Итак, наконец добрался я до авто открывашки. Как и прежние проекты начал все с 3Д моделирования и визуализации, вот отдельная ссылка на нее, если будет скучно смело проматывайте вперед!
Рис 2
После нескольких дней 3Д проектирования детали готовы к печати на 3д-принтере. Печатаем!
Рис 3
Рис 4
Через день все готово к сборке.
Вся электроника собрана на доступных компонентах и ее мозгом является всеми любимая плата Wemos D1 mini. Я писал ранее, но хочу повторить, настолько она мне понравилась.
Это идеальное решение для проектирования и постройки домашних систем автоматизации как говорится "IoT" устройств. В ней разведены все цифровые выводы на стандартную гребенку с шагом 2,54 мм, есть порт программирования USB, светодиод для индикации состояния платы и одна кнопка, которую можно программировать по своему усмотрению, низкая цена, да и, впрочем, она радует размерами и формами. Что особенно понравилось – плата практически не греется, думаю ей в этом помогает металлический экран ESP12-f на базе, которой она и построена. В сети уйма прошивок и документации, а также статей по практическому применению последней.
Единственные два минуса этой платы по моему мнению:
1. Отсутствие штекера для внешней антенны, впрочем, в полной версии она есть, да и та, что на борту неплохо справляется со своими задачами, связь уверенно держит в квартире и дома средних размеров, даже во дворе работает.
2. Высокое потребление энергии (60-220мА.ч), чтобы питать ее от батареи и для высокой автономности следует выдумывать разные нестандартные и не очень удобные варианты.
И так что нам нужно для открывашки из электронных компонентов:
1) Плата Wemos D1 mini
2) Кнопка, я использовал свитч 8х8 мм
3) Баззер, использовал стандартный 12и мм-вый:
4) 5mm RGB – светодиод:
5) Модифицированный Сервопривод MG-995 – с металлическими шестеренками
6) Провода – можно использовать от LAN – кабеля, но я использую многожильные такого же сечения.
7) Два резистора на 100 и 33кОм – для делителя напряжения.
8) Батарея, я использовал литий-ионную он старого лэптопа типоразмера 18650
9) И готовый модуль зарядки для батареи с защитой 4056.
Собираем все по этой схеме:
Рис 5
Про серво – его я модифицировал он вращался непрерывно, а управление ШИМ – регулирует его скорость вращения. Как это сделать есть в сети и на этом я останавливаться не буду, например вот так.
Рис 6
После того как все собрано, переходим к программной части. Я использую систему умного дома Home Assistant поэтому буду показывать, как на ней организовать связь и интерфейс с устройством. Впрочем, любая другая система настраивается аналогично и общается с устройством через MQTT протокол.
Прошивку использую от команды разработчиков TASMOTA. Она бесплатная и поддерживает кучу устройств, если что можно запросить помощь, да и прошивка активно разрабатывается и имеет приятный веб интерфейс кроме всего прочего. Есть еще встроенная в HA система ESPEasy, она также поддерживает кучу устройств и более эргономично вписывается в систему умного дома HA, но как-то мне приятнее первая.
Скачиваем актуальную версию прошивки и заливаем подключенную плату предварительно указав правильный COM порт, к примеру используя программу ESP8266Flasher.
Рис 7
Прога до чёртиков проста, во вкладке Config выбираете прошивку тасмоты (tasmota.bin) в первой строке под адресом 0х00000, возвращаетесь на первую вкладку (Operation), выбираете правильный COM порт из выпадающего меню и жмете на кнопку Flash. Если все сделали правильно, то на плате Wemos D1 начнет подмигивать синий светодиод и пойдет загрузка прошивки. После окончания следует отсоединить кабель прошивки, скинуть внешнее питание если его присоединили и подключить заново, чтобы плата начала загрузку залитой операционки.
Обычно я открываю COM порт в ArduinoIDE и слежу за загрузкой в мониторе – удобно, так как он выдает IP адрес, когда далее будем подключаться к роутеру что бы не искать его на страничке роутера для последующей конфигурации.
Итак, после удачной загрузки плата создает временная точка доступа и его можно определить по характерному имени (tasmota – и чего-то там еще…) Подсоединяемся к нему!
Рис 8
Если вы подсоединились через комп, то с большой вероятностью автоматически откроется веб интерфейс тасмоты, но если такого не произошло, то его можно найти по адресу 192.168.4.1
Рис 9
В открывшейся странице задаем ваш SSID беспроводной сети и пароль, при желании можно указать и второй SSID, если у вас есть, скажем, где-то репитер и у него SSID отличается от того, что на роутере, жмем сохранить и после перезагрузки подключаемся к нашей плате уже по новому IP адресу. Помните, я сказал, что слежу за сообщениями в мониторе порта ардуино – вот там можно найти новый IP, либо на страничке роутера…кому как удобно.
Рис 10
Далее переходим во вкладку Конфигурация и загружаем подготовленный заранее файл конфигурации: (найдете в описании видео, который я загружу на своей страничке в ютюб, как и все файлы частей корпуса на страничке thingiverse)
После очередной перезагрузки должен открыться интерфейс управления открывашкой окна:
Рис 11
Отсюда уже можно управлять устройством, но не спешите, так как у сервопривода нужно найти среднюю точку, если вы все же нажали на кнопку открытия, либо закрытия, то не страшно, правило вращает серво только одну секунду, после чего серво останавливается, и откалибровать правила для управления устройством.
Как это сделать:
1) Следует в первую очередь снять зубчатую планку с устройства.
2) Перейти во вкладку Console
3) И вписывать и нажатием на Enter посылать команды в устройство: PWM1 . Находятся два значения, подбираются они такими, что бы вас устраивала скорость, а направление вращения были противоположны. У меня, к примеру для открытия значение получилось такое – PWM1 330, а для закрытия 300. Открывашка полностью открывает форточку за 3 нажатия и закрывает за два.
4) Далее в консоли вводите модифицированные правила. Для открытия правило 1:
Rule1 ON Power1#state=1 DO Backlog Pwm4 0; Pwm3 0; Pwm2 100; Buzzer 1,1,1; Pwm1 330; RuleTimer1 1 BREAK ON Rules#Timer=1 DO Backlog Pwm2 0; Pwm3 0; Pwm4 100; Buzzer 1,1,1; Power1 0; Pwm1 0 ENDON
Выделенное число то, что вы получили для своего серво!
И соответственно для закрытия:
Rule2 ON Power2#state=1 DO Backlog Pwm4 0; Pwm2 0; Pwm3 100; Buzzer 2,1,1; Pwm1 300; RuleTimer1 1 BREAK ON Rules#Timer=1 DO Backlog Pwm2 0; Pwm3 0; Pwm4 100; Buzzer 2,1,1; Power2 0; Pwm1 0 ENDON
5) Возвращаемся в интерфейс управления и тестируем устройство уже со вставленной зубчатой планкой.
вы можете также увидеть этот процесс на видео.
Далее монтируем устройство на окно (см Рис 1).
Переходим в Home Assistant.
В конфигурации выбираем интеграции и устанавливаем (если не установлено) интеграции TASMOTA и MQTT. Подробнее про установку и настройку вы можете почитать на официальной страничке, а я приведу скрипты и файлы конфигурации, которые покажут на вашей страничке правильные кнопки и данные с устройства:
В configuration.yaml вписываем следующее:
sensor: - platform: mqtt name: mqtt_wtiltopener02_battery state_topic: "tele/WTiltOpener02/SENSOR" value_template: "{{((((value_json['ANALOG'].A0)|float/224 - 2.5)*100)/(4.2-2.5))|round(1)}}" unit_of_measurement: '%' device_class: battery - platform: template sensors: wtiltopener02_last_update_time: friendly_name: "WindowTiltOpener02 MQTT Last Update Time" value_template: "{{as_timestamp(states.sensor.mqtt_wtiltopener02_battery.last_updated) | timestamp_custom('%A %d-%b-%y, %H:%M:%S')}}"
Первый «mqtt_wtiltopener02_battery» переводит значение батареи (кстати отсюда можете его и калибровать если что, удобно что бы не копаться в прошивке устройства)
Второй код будет вам показывать, когда в последний раз данные были получены с устройства – удобно иметь их в случае автономного устройства и особенно если мы собираемся активировать в нем алгоритм глубокой спячки ради экономии энергии в будущем!
В файле scripts.yaml вписываем вот это:
# -------------------Window Tilt Opener 02 Controls--------------------#wtiltopener02_open: # alias: Open window tilt opener 02 # sequence: # - service: mqtt.publish # data: # topic: cmnd/WTiltOpener02/Power1 # payload: 1 # - service: mqtt.publish # data: # topic: cmnd/WTiltOpener02/STATUS # payload: 10 # wtiltopener02_close: # alias: Close window tilt opener 02 # sequence: # - service: mqtt.publish # data: # topic: cmnd/WTiltOpener02/Power2 # payload: 1 # - service: mqtt.publish # data: # topic: cmnd/WTiltOpener02/STATUS # payload: 10 # wtiltopener02_stop: # alias: Stop window tilt opener 02 # sequence: # - service: mqtt.publish # data: # topic: cmnd/WTiltOpener02/Power3 # payload: 1 # - service: mqtt.publish # data: # topic: cmnd/WTiltOpener02/STATUS # payload: 10 # #----------------------------------------------------------------------#
Далее после перезагрузки домашнего ассистента в Lovelace создаем новый виджет с вписанными выше значениями. У меня получилось вот так:
Рис 12
Далее все это тестируем:
Следующим будет разработка автоматического “вращателя” рукоятки окна, чтобы вообще к окну не подходить ха ха ха, нет серьезно, так что подписывайтесь на канал, если этого еще не сделали, чтобы не пропустить следующего видео и спасибо за просмотр моего видео и статьи.
Все исходники и модельки вы можете найти в описании к видео, и да чуть не забыл, я уже модифицировал, оптимизировал и собрал вторую версию открывашки, которая выглядит вот так:
Думаю, классно получилось, хоть упаковывай и рассылай подписчикам. На этом пока все, и до скорой связи…
Элик
Еще больше интересных статей
"Таблетка" для замка перчаточного ящика Toyota Camry V50/V55
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Изготовление сп...
Индустриальный высокотемпературный 3D-принтер Intamsys Pro 610 HT: примеры применения
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Печать и покраска деталей для автомобилей
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
В этой теме я бы хотел немного отойти от 'домашн...
Комментарии и вопросы
ваш способ я юзаю когда есть м...
Тогда возникает вопрос - а поч...
Хз, каждый человек с руками бу...
Собственно попросили распечата...
Я начинающий, странное в куре....
При печати стали появляться шв...
Здравствуйте, друзья. Сталкива...