Apnt-78 - Estendendo o controle do sprinkler no centro da casa de Fibaro

Este guia mostra como estender as capacidades do painel Sprinklers do Fibaro Home Center 2 para que você possa ajustar remotamente o período de rega e retardar automaticamente o próximo ciclo de água se os relatórios meteorológicos do Fibaro mostrarem que está chovendo.

No exemplo anterior Apnt-77 - Controlando Sprinklers Nós introduzimos o painel Fibaro Sprinklers que está disponível no Fibaro Home Centre 2. (HC2) controlador Z-Wave.

Estendendo o controle do painel de sprinkler

O painel Sprinklers permite que você adicione manualmente um "atraso de chuva" e aumente / diminua o tempo de ciclo de água dentro do painel Sprinklers (veja Apnt-77. Para detalhes), no entanto, você não pode fazer isso no aplicativo de smartphone atual e você não pode alterá-los diretamente de uma cena padrão de centro padrão.

Ao criar um dispositivo virtual, junto com um pouco de código Lua, você pode ter controle dessas funções e você pode usar uma cena padrão para ajustá-las com base no clima.

Este guia mostra como:

  • Crie um dispositivo virtual no centro de Fibaro
  • Programe os botões para controlar as funções "Delay Rain 'do Painel de Sprinkler e" Ajustar água "
  • Crie uma cena para atrasar automaticamente o ciclo de sprinkler se estiver chovendo ou tempestuoso

Observação: Isso só pode ser usado no Home Center de Fibaro 2 (HC2), pois requer codificação Lua - não pode ser usado no Fibaro Home Center Lite (HCl)


Dispositivo virtual de sprinkler

Um dispositivo virtual é exatamente o que soa, um dispositivo que não é um dispositivo físico, mas um criado no Home Center para controlar outros dispositivos. Este exemplo mostra um dispositivo virtual que pode alterar o 'atraso da chuva' do painel do sprinkler (0, 24H, 48H) e 'ajustar água' (0, 10%, 20%).

Dispositivo virtual para controlar figura 1: Dispositivo virtual para controlar 'Rain Delay' e 'Ajustar água'

Crie o dispositivo virtual

  • No centro de casa, vá para Dispositivos > Adicionar remover dispositivos
  • Na seção do dispositivo virtual, clique em "Adicionar'
  • Dê ao dispositivo um Nome
  • Escolha um Sala Na lista suspensa
  • Endereço de IP - Digite o endereço IP do centro da casa
  • Porta TCP. - Entrar 80 (Esta é a porta usada por home center)
  • Clique no 'Salvaricon na barra lateral da direita

Criando um dispositivo virtual para o painel de sprinklerFigura 2: Criando um dispositivo virtual para o painel de sprinkler

Crie os botões

O dispositivo virtual precisa de duas linhas de três botões - a primeira linha controla o "atraso de chuva" e o segundo controla o valor 'Ajustar água'.

  • Vá para o dispositivo virtual 'Avançado' aba
  • Role para baixo para a seção 'Escolher conjunto de botões'
  • Selecione os 'Três botões por linha'- isso nos dará um três botões
  • Clique no 'Adicionar conjunto' botão
  • Adicione uma segunda linha de três botões (para o controle de água de ajuste)
  • Clique no 'Salvaricon na barra lateral da direita

Criando um botão no dispositivo virtualFigura 3: Criando um botão no dispositivo virtual

Adicione o código Lua

Cada botão será controlado por um simples script Lua que leva o valor "Atraso de chuva" ou "Ajustar água" do painel Sprinklers, altera o valor e atualiza o painel.

  • Role para baixo para o primeiro botão e nomeie-o - '0h.'Neste caso (para atraso de horas zero)
  • Selecione 'Lua.'(parte inferior do editor inferior)
  • Cole o código Lua (abaixo) e faça alterações para o seu sistema (Endereço IP HC2., nome do usuário e senha)
  • Clique no azul 'Salvaricon na barra lateral da direita
  • Teste o botão na janela 'Debug', se desejar e verificar se o atraso da chuva foi alterado para o painel Sprinklers

Código lua.

- Definir Autenticação.

Hc2 = net.fhttp ("192.168.1.162",80)

HC2: setbasicauthentication ("admin.", "admin.")

Fibaro: Depurar ('Botão Lua acionada:')

- Obter tabela de dados do painel Sprinklers

Resposta, status, errorcode = hc2: get ("/ api / painéis / drenchers")

jsontable = json.decode (resposta)

Fibaro: Depurar ("valor de atraso da chuva: '..jsontable.raindelay);

- Alterar dados em Lua por 0 horas de atraso

jsontable.raindelay = 0.

Fibaro: Depurar ('Rain Delay New Value:' ..jsontable.raindelay);

- Enviar tabela atualizada no painel

json = json.encode (jsontable);

HC2: colocar ("/ api / painéis / drenchers", JSON)

Fibaro: log ("pronto")

Fibaro: Depurar ('Botão Lua terminou:')

Explicação lua.

O código LUA é dividido em seções por linhas de comentários (que você pode remover), ele também inclui várias linhas de depuração para ajudá-lo a testá-lo no depurador do dispositivo virtual.

  • A primeira seção especifica o endereço IP do seu HC2 - você precisa adicionar o endereço IP correto
  • Digite seu correto nome do usuário e senha na segunda linha (admin. & admin. Neste exemplo)
  • A segunda seção recebe a tabela de dados do painel do sprinkler do HC2
  • O 'atraso devido a chuva'valor é alterado na terceira seção - para Zero nesse caso
  • A seção final envia a tabela de dados de volta para o painel Sprinkler com o novo valor para 'atraso devido a chuva'

Linhas de depuração: As linhas azuis (partidas 'Fibaro: depuração) são linhas de depuração que exibem valores na janela Debug - você pode usá-los para confirmar que o código está sendo executado corretamente. Você pode excluir isso após o botão estar funcionando.

Adicionando a string de comando IR ao botãoFigura 4.: Código Lua no botão do dispositivo virtual '

Configure os outros botões

Agora você precisa configurar os dois botões de "atraso de chuva" restantes e os três botões 'Ajustar água', repetindo o processo acima.

  • 24h - altere a linha RainDelay para jsontable.raindelay = 24.
  • 48h. - altere a linha RainDelay para jsontable.raindelay = 48.
  • 0% (Ajuste a água) - altere a linha RainDelay para jsontable.adjustwater = 0.
  • 10% - altere a linha RainDelay para jsontable.adjustwater = 10.
  • 20% - altere a linha RainDelay para jsontable.adjustwater = 20.
  • Clique no azul 'Salvaricon na barra lateral da direita

O dispositivo virtual final é mostrado na Figura 5, este tem o ícone do sprinkler em vez do ícone do dispositivo virtual padrão - veja Apnt-72 - Alterando ícones do Centro de Casa Fibaro. Agora você pode fazer alterações nos valores do painel do sprinkler sem ter que abri-lo, e assim como importante, agora você pode alterar esses valores automaticamente de uma cena de Fibaro.

Dispositivo virtual para controlar Figura 5.: Dispositivo virtual de sprinkler com ícone atualizado

Cena meteorológica automatizada

Agora podemos usar o dispositivo virtual do sprinkler como parte de uma cena para atrasar o ciclo de sprinkler até 24h se tiver chovido.

Home Center tem um relatório meteorológico embutido que faz parte regularmente do tempo do Yahoo, usamos isso para determinar se está chovendo.

Dispositivo virtual para controlar Figura 6.: Cena de atraso de aspersão baseada no clima

  • Crie uma cena - dê uma olhada em Apnt-61 - Criando cenas em Fibaro Home Center
  • Escolher 'Clima > Condições do tempo No menu suspenso Trigger
  • Adicione uma condição meteorológica para Chuva E e segunda condição para Tempestade
  • Adicione uma linha de dispositivo virtual com o botão '24H Delay' selecionado - Botão 12. Neste exemplo
  • A cena de exemplo também inclui uma notificação push para alertá-lo que o HC atrasou o próximo ciclo de polvilhe - veja Apnt-76 - Notificações do Centro Home

Palavra final em Lua

Este guia é uma maneira de criar uma cena automatizada para atrasar o ciclo da água. Alternativamente, você poderia usar uma única cena de Lua para obter os valores e alterá-los com base nas condições meteorológicas, ou você poderia ter uma cena de Lua separada para controlá-las com base no clima - substituindo a cena padrão 'block' que usamos neste exemplo. Você tem muitas opções para refinar o controle dentro do centro da casa.

Referência

Esta nota de aplicativo é baseada em testes por Vesternet bem como muitos postes úteis do fórum dos usuários do FIBARO FORUM..

Informação relacionada