Кремень FMZ Реклама
Kremen FMHM Реклама

Открывашка для форточки или будни ленивца

elik745i
Идет загрузка
Загрузка
22.02.2021
5322
13
Применение

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

32

Друзья привет.

Хочу поделиться с вами моим новым устройством.

Открывашка для форточки или будни ленивца

Рис 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

Далее все это тестируем:

Следующим будет разработка автоматического “вращателя” рукоятки окна, чтобы вообще к окну не подходить ха ха ха, нет серьезно, так что подписывайтесь на канал, если этого еще не сделали, чтобы не пропустить следующего видео и спасибо за просмотр моего видео и статьи.

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

Открывашка для форточки или будни ленивца

Думаю, классно получилось, хоть упаковывай и рассылай подписчикам. На этом пока все, и до скорой связи…

Элик

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

32
Комментарии к статье