Главная > Умный дом > Управялем яркостью диммера Noolite из Home Assistant

Управялем яркостью диммера Noolite из Home Assistant


14 февраля 2021. Разместил: dimon
Научим Home Assistant управлять диммером Noolite SU, через Ethernet-шлюз Ноолайт PR1132.

Сначала добавим input_number в configuration.yaml:


####################################################
#                  Ночник в спальне                #
####################################################
input_number:
  light_level:
    name: "яркость ночник"      # имя
    min: 0                      # значение ОТ
    max: 60                     # значение ДО
    step: 10                    # шаг


У нас ночник будет регулировать яркость от 0 до 60% с шагом 10%.


Туда же добавляем shell command:


shell_command:
  dimer_nochnik_0: '/usr/bin/curl -s "http://192.168.0.8/api.htm?ch=5&cmd=0"'
  dimer_nochnik_10: '/usr/bin/curl -s "http://192.168.0.8/api.htm?ch=5&cmd=6&br=10"'
  dimer_nochnik_20: '/usr/bin/curl -s "http://192.168.0.8/api.htm?ch=5&cmd=6&br=20"'
  dimer_nochnik_30: '/usr/bin/curl -s "http://192.168.0.8/api.htm?ch=5&cmd=6&br=30"'
  dimer_nochnik_40: '/usr/bin/curl -s "http://192.168.0.8/api.htm?ch=5&cmd=6&br=40"'
  dimer_nochnik_50: '/usr/bin/curl -s "http://192.168.0.8/api.htm?ch=5&cmd=6&br=50"'
  dimer_nochnik_60: '/usr/bin/curl -s "http://192.168.0.8/api.htm?ch=5&cmd=6&br=60"'


Перезагружаем инстанс и добавляем карточку в Lovelace:

Управялем яркостью диммера Noolite из Home Assistant


Теперь нам нужно создать автоматизацию.

Прицип работы всей этой схемы такой.
При перемещении ползунка input_number light_level в карточке Lovelace срабатывает автоматизация (input_number - будет триггером), которая запускает shell command, которая в свою очередь формирует и отправляет HTTP запрос на Ethernet-шлюз Ноолайт PR1132, который в свою очередь, получив такой запрос, выставляет нужную яркость на силовом блоке Noolite SU. Напишем такую автоматизацию:


alias: Ночник в спальне (диммер)
description: Регулировка яркости 
trigger:
  - platform: state
    entity_id: input_number.light_level
condition: []
action:
  - service: shell_command.dimer_nochnik_{{ states('input_number.light_level') | int }}
mode: single


Все просто)

Тут в Твиттере подсказали, что можно намного проще все сделать:


####################################################
#                  Ночник в спальне                #
####################################################
input_number:
  light_level:
    name: "яркость ночник"      # имя
    min: 0                      # значение ОТ
    max: 100                    # значение ДО
    step: 10                    # шаг
    
automation:
  - alias: Регулировка яркости диммера Noolite
    trigger:
      platform: state
      entity_id: input_number.light_level
    action:
      service: shell_command.set_dimmer_level

shell_command:
  set_dimmer_level: '/usr/bin/curl -s "http://192.168.0.8/api.htm?ch=5&cmd={{ states("input_number.light_level") | int }}"'


И как я читал документацию по Shell Command Home Assistant. Там даже есть такой пример..

Вернуться назад