Casa inteligente: uma nova dimensão de conforto e busca da excelência. Parte um

Este artigo é uma continuação lógica do tópico levantado anteriormente sobre sistemas de monitoramento de uma casa de campo. Para alguém que não leu o artigo anterior, alguns pensamentos neste artigo podem parecer estranhos. Deixe-me lembrá-lo: já no processo de projetar e escolher os componentes básicos, ficou claro que o monitoramento do trabalho dos sistemas de casas de campo não terminará e que você precisa não apenas monitorar, mas a fundação de uma casa inteligente. Agora vamos ver como os eventos se desenvolveram. Como antes, não darei listas completas de programas ou diagramas detalhados. Minha tarefa é mostrar a linha de pensamento e possivelmente iniciar uma discussão.



O que você quer de uma casa inteligente?


Primeiro você precisa entender, mas o que realmente deve ser inteligente em uma casa inteligente. Não se trata de definições canônicas, mas do que vem à mente quando você tem em mãos um conjunto tão poderoso de ferramentas, como descrito no artigo anterior: openHAB + Arduino / nFR24L01 +. Eu recebi a seguinte lista de "Lista de desejos" principal:

  1. Aprenda a controlar a potência da caldeira elétrica, dependendo da temperatura da casa e da rua, e melhor ainda, levando em consideração a previsão do tempo. Antes disso, a energia da caldeira era definida apenas por interruptores mecânicos na própria caldeira e a operação da caldeira não era ótima tanto em termos de carga na rede quanto em economia de energia devido ao sol ( veja aqui ).
  2. Para excluir manipulações manuais de bombas on / off (fornecimento de água, recirculação de água quente sanitária), toalheiros aquecidos, termostatos de radiador, etc. na chegada / partida. Bem e, é claro, veja o status desses dispositivos.
  3. Aprenda a ligar e desligar a luz, a fonte e outros dispositivos, dependendo da hora do dia e do ano, da presença dos proprietários na casa e de alguns outros fatores. Em uma formulação mais geral - para algoritmos e automatizar o controle daqueles dispositivos cujo controle é rotineiro, para excluir o clique monótono dos comutadores tradicionais, especialmente no escuro. Tudo deve ligar e desligar automaticamente.
  4. Use algoritmos que economizam energia. Por exemplo, o primeiro estágio da caldeira ligado por um longo período possibilitará receber mais energia do Sol do que 2-3 estágios que são ativados / desativados periodicamente pela temperatura da linha de retorno. I.e. Você pode obter economia de energia devido a uma carga mais ponderada.
  5. O sistema de monitoramento e controle que nasceu nessa época foi suficiente para implementar apenas parte desses requisitos. Por exemplo, já é possível controlar a caldeira em etapas, mas ainda não está claro por quais algoritmos, levando em consideração as restrições ao consumo de eletricidade e levando em consideração o equilíbrio de prioridades para o aquecimento de uma casa e a preparação de água quente. Além disso, a primeira versão do sistema não incluía todos os atuadores necessários, por exemplo, não havia dispositivos de controle de bomba, nem todas as luzes da casa eram automatizadas. Houve solicitações específicas adicionais, por exemplo, "para destacar a imagem". Além disso, esse pedido em si foi transformado em "ativar e desativar automaticamente a luz de fundo da imagem, dependendo da hora do dia, da iluminação e de outros fatores".

Total: existe uma base expansível, há objetivos. Analisamos quais dados estão faltando. Em primeiro lugar, não há parâmetros elétricos suficientes, pelo menos o seguinte: o consumo atual da casa, a energia recebida do sol. Em segundo lugar, não há previsão do tempo suficiente. Além disso, não há atuadores compactos suficientes. Observo que os controladores de terminal com atuadores (relés) descritos no artigo anterior eram multifuncionais e pouco compactos. E além de caseiro. Alguns dispositivos, por exemplo, usam cabeças controladas por termostato nos próprios radiadores de aquecimento; não faz sentido nenhum, você precisa comprá-los.

Receber parâmetros de eletricidade


Então, começamos com os parâmetros elétricos. A primeira coisa que vem à mente é colocar sensores de corrente com base no efeito Hall, um sensor de 220V já está lá, resta medir a tensão nos painéis e baterias. Tudo pode ser feito em sensores separados. No entanto, todas essas medições já estão sendo feitas por uma usina baseada no inversor Xantrex e no controlador MPPT . Como lembramos, esses dispositivos são combinados em um barramento Xanbus proprietário, que é um transporte para a interação do dispositivo através do protocolo Modbus. E para ela, existe um gateway TCP-Modbus especial, o Conext ComBox , que permite ler e definir parâmetros do sistema em uma rede local. Isto é exatamente o que você precisa! Por sua vez, para o openHAB, existe um TCP-Modbus de ligação especial, que resta para conectar e configurar. Portanto, o gateway foi comprado, a documentação foi estudada, a ligação ao openHAB é conectada e configurada, os itens são definidos e as regras básicas são escritas. Como resultado, começaram a chegar à casa inteligente os seguintes parâmetros: tensão nas entradas da rede e do gerador, tensão na saída do inversor, corrente de carga, potência de carga em W e VA, tensão em painéis solares e baterias, correntes na entrada e saída do controlador MPPT, corrente a carga da bateria, a energia recebida pela energia solar fornecida, a quantidade de energia solar coletada fornecida ao sistema e devolvida à rede. Até a temperatura das baterias é lida, uma vez que isso ajuda a evitar superaquecimento.

Participação no desenvolvimento do openHAB
Durante a depuração, erros foram detectados no funcionamento do gateway TCP-Modbus. Por meio do fórum, o openHAB foi ao desenvolvedor, entre outros testadores. Como resultado, a ligação foi finalizada em várias iterações e funciona há mais de dois anos.


Gateway TCP-Modbus para ler os parâmetros dos dispositivos Shneider Electric (Xantrex) conectados à rede Xanbus.

Receba previsão do tempo


Próximo. Você pode obter uma previsão do tempo de várias maneiras, por exemplo, inscreva-se em um provedor. No entanto, existe uma maneira mais óbvia: obter dados de previsão diretamente do site meteorológico, por exemplo, yandex.ru/pogoda. Para fazer isso, escrevi um utilitário em C que, usando a biblioteca curl , salva a página HTML em um arquivo. Em uma solicitação HTTP, o utilitário envia ao site as coordenadas da casa. O arquivo resultante é analisado e extraído dele com dezenas de parâmetros: temperatura, horário de nascer e pôr do sol, previsão de temperatura noturna, direção e força do vento. Os algoritmos de casa inteligente usam a previsão da temperatura noturna, hora do pôr do sol. Os dados restantes são exibidos apenas informativamente na interface. No openHAB, os dados são transferidos pelo mesmo utilitário por meio da conveniente API REST suportada pelo openHAB. Por sua vez, o próprio utilitário C é iniciado usando as ferramentas regulares do openHAB a cada 4 horas. Assim, tudo é bem simples, e a principal dificuldade é o desenvolvimento de um algoritmo para analisar uma página HTML salva. Mas meu artigo não é sobre isso.

Na figura - a tela de uma casa inteligente com dados meteorológicos obtidos das coordenadas da casa em yandex.ru/pogoda

Automatize o gerenciamento de rotina do dispositivo


Enquanto trabalhava na previsão do tempo, um amigo me apresentou relés controlados por WiFi e um cabo de extensão elétrico completo com três relés e três pares de soquetes USR IOT . Nesse momento, eu já tinha dominado um pouco o openHAB e, com alguma emoção, comecei a desenvolver novos dispositivos e a incorporá-los à casa inteligente. O relé foi definido para controlar a bomba de poço e o cabo de extensão foi localizado no celeiro e usado para controlar a iluminação, fonte e luz do lago. Para dispositivos USR, o IOT encontrou documentação na rede descrevendo o protocolo de controle, mas ainda precisava ouvir o tráfego de rede usando o Wireshark . Como resultado, aprendi a gerar comandos de controle e analisar respostas de dispositivos. Para controlar o relé, escrevi um programa em C chamado por uma regra do openHAB e conectei o cabo de extensão diretamente usando o openHAB de ligação TCP. Na foto à direita, um cabo de extensão USRIOT com tomadas controladas por WiFi.

Resta escrever as regras:

  1. Ligue a bomba de poço. Ao desarmar a casa, ligue a bomba e, ao armar, desligue a bomba. É simples, porque o estado de proteção que o sistema aprendeu a ler do alarme na fase de "monitoramento". E esse parâmetro é mais usado em muitas regras. Para esse fim, a detecção de presença na casa é frequentemente usada, por exemplo, por meio de tags Bluetooth, registrando um dispositivo móvel em uma rede local, etc. No entanto, esses métodos não são muito estáveis ​​e são indesejáveis ​​para uso em regras sérias.
  2. Ligue a fonte na lagoa. Eu costumava usar cronômetros eletrônicos, mas eles queimavam regularmente e não sabiam da presença do proprietário na casa. Agora, uma "nova era" de automação foi aberta. A fonte liga se a casa estiver desarmada, se a temperatura na rua (aprendemos a medir no estágio de "monitoramento") for de pelo menos 5 graus (a fonte não é necessária no inverno) e o horário for 08:00. A fonte desliga às 23:00, sempre. I.e. a regra é um pouco "assimétrica" ​​e é muito conveniente.
  3. Pond backlight on. Devo dizer que a própria luz de fundo apareceu devido ao desejo de ligá-la automaticamente. A luz de fundo acende quando a casa está desarmada, quando a iluminação na rua é menor que o parâmetro especificado nas configurações e com o movimento na varanda da casa principal ou da casa de hóspedes. I.e. não acenderá antes que o proprietário queira vê-la. Todos os parâmetros de controle apareceram no estágio de "monitoramento". Desliga sempre às 01:00.
  4. Acendendo a luz no celeiro. Essa é a regra mais engraçada. A luz acende se a casa estiver desarmada, se o nível de iluminação estiver abaixo de um limite predeterminado, se a temperatura do ar estiver abaixo de 15 graus e se for detectado movimento na varanda. Apaga-se após 5 minutos. Com movimentos repetidos na varanda, o tempo de gravação é prolongado em 5 minutos. Tudo é implementado apenas por ferramentas regulares do openHAB. A questão é: por que a temperatura é usada na regra? Muito simples: a lenha para a lareira é armazenada no celeiro. Se à noite, com tempo frio, saí para a varanda, provavelmente por trás da lenha :) e é melhor que a luz queime no celeiro.

Resta observar que, em todas as regras, os dispositivos ligam e desligam automaticamente. Mas, ao mesmo tempo, eles podem ser controlados manualmente através da interface do openHAB. Os dispositivos IOT USR descritos também têm botões de controle físico no gabinete, portanto, é importante aprender a ler o status dos dispositivos. Uma maneira de atualizar o status de todos os atuadores, bem como dos sensores, é pesquisá-los no openHAB por timer, por exemplo, a cada 15 minutos. Para dispositivos caseiros, além disso, é obrigatório enviar um status quando o estado dos botões / interruptores de controle mudar.

Vamos voltar um passo. A tarefa inicial era aprender a controlar com flexibilidade o aquecimento para que a casa estivesse quente, sempre houvesse água quente e que você não precisava ir regularmente à sala da caldeira para regular o funcionamento da caldeira. E, neste caso, para minimizar a probabilidade de a caldeira ser desligada como resultado do acionamento do relé de limite de carga, que é instalado no painel e limita o consumo de corrente desconectando cargas não prioritárias, que incluem a caldeira e a caldeira. Ao mesmo tempo, no primeiro estágio, o aquecedor da caldeira é desligado por 5 minutos e, se isso não ajudar, a caldeira também é desligada por 10 minutos (segundo estágio). Deixe-me lembrá-lo que o consumo em casa é limitado e tudo é elétrico em casa, não há gás, então você precisa monitorar o consumo. E seria bom usar a energia do Sol ao máximo. Aqui estão algumas das regras resultantes.

O primeiro grupo. Casa desarmada:


  1. A cada 20 minutos, verifique a temperatura na casa e, se estiver abaixo de um predeterminado (22 graus), adicione um nível de energia da caldeira. Mas, faça isso se o limite da corrente de carga não for excedido, por exemplo, em 25,6 A. Se a temperatura for superior ao valor definido, desligue um estágio da caldeira a cada 20 minutos, deixando apenas o primeiro. Como resultado, obtemos uma "aceleração" suave do sistema de aquecimento e nos protegemos de seu desligamento completo devido ao excesso de carga. A lógica geral é a seguinte: se consumidores poderosos de eletricidade trabalham em casa, por exemplo, um fogão, chaleira, microondas ou até mesmo um aspirador de pó, então a energia que eles consomem passa para o calor restante na casa e por que não perseguir a caldeira para ligar em plena capacidade. É melhor deixar a caldeira funcionar no primeiro estágio, mas não desligar por 10 minutos como resultado do relé de limitação de carga.
  2. Se a temperatura da água quente na caldeira for inferior a 35 graus, ligue o primeiro estágio da caldeira e o aquecedor. Se a temperatura da água for superior a 35 graus e a temperatura do ar na casa for superior à temperatura definida (23 graus), desligue o primeiro estágio da caldeira. Se a temperatura da água estiver acima de 37 graus - desligue o aquecedor. Além disso, todas as inclusões devem ser feitas apenas se a corrente de carga não for superior a 25,6A. Caso contrário, o relé de limitação de carga funcionará e por 10 minutos nada poderá ser ligado. Faça todas as verificações ao atualizar as leituras do sensor de temperatura da água quente. Esta regra garante a disponibilidade de água quente, aquecimento rápido com consumo mínimo de energia.
  3. Se a temperatura do líquido de arrefecimento no circuito solar for superior à temperatura da água quente, que por sua vez é superior a 35 graus, desligue o aquecedor do aquecedor. Assim, é possível economizar eletricidade e não ficar sem água quente.
  4. Se a temperatura na casa for superior à temperatura definida (23 graus) e a temperatura da água quente for superior a 35 graus, desligue a caldeira completamente. Caso contrário, haverá um consumo excessivo de eletricidade e a automação da caldeira frequentemente a desligará pela temperatura na linha de retorno.
  5. Se não houver tensão no elemento de aquecimento da caldeira, embora ele esteja ligado em uma casa inteligente, o primeiro estágio do relé de carga disparou. Se você limitar a potência da caldeira, poderá evitar o desligamento. Desligue a segunda e a terceira etapas. Em seguida, eles se ativam, por outras regras, se necessário. Da mesma forma, verificamos a tensão de alimentação da caldeira. Se desapareceu, o segundo estágio do relé de carga disparou, deixamos apenas o primeiro estágio da caldeira, desligamos todo o resto, incluindo o aquecedor da caldeira; Eles serão incluídos posteriormente por outras regras. Isso é feito para reduzir a probabilidade de operação repetida do relé de carga e garantir o fluxo máximo e uniforme de calor para dentro da casa.

O segundo grupo. A casa está em guarda.


  1. Se a temperatura externa estiver abaixo de 8 graus negativos, ligue o segundo estágio da caldeira. (o primeiro liga-se automaticamente desde a instalação do controlador GSM universal, veja aqui, no primeiro corte ). Se a temperatura externa estiver abaixo de -15 graus, ligue o terceiro estágio da caldeira. Isso garante a operação ideal do sistema de aquecimento, mantendo uma determinada temperatura econômica na casa. Quando a temperatura aumenta na rua, os degraus são desligados sequencialmente. Esta regra permite que você faça a caldeira funcionar de maneira mais uniforme e eficiente.
  2. Se houver muita luz na rua, ligue a caldeira preventivamente, sem esperar que o equipamento automático mantenha uma temperatura econômica (8 graus). Coloque a caldeira de volta no modo automático se a temperatura atingir o valor calculado. O valor calculado é calculado pela fórmula empírica, que usa o mínimo da temperatura noturna no dia anterior e a previsão da temperatura noturna. Além disso, a caldeira retorna ao modo automático se a energia elétrica recebida do Sol cair abaixo de 500 watts. Este indicador é suavizado por várias passagens da regra executada a cada minuto. Como resultado, a regra permite economizar eletricidade: devido ao aquecimento da casa, a caldeira trabalha menos no escuro e consome menos energia da rede.


Uma captura de tela do ambiente de desenvolvimento do openHAB Designer com duas regras para aquecimento e água quente sanitária.

Resultados preliminares:


  1. Os objetivos estabelecidos são alcançados de uma maneira completamente sem poeira. A maior parte do trabalho não estava associada a equipamentos, mas a programação. E a partir dessa programação, a maior parte veio para o desenvolvimento e depuração de regras no openHAB.
  2. Já nos estágios iniciais do desenvolvimento de uma casa inteligente, a aposta em uma solução “independente da tecnologia” era justificada. As regras descritas acima usam dados recebidos de controladores caseiros no Arduino, de um gateway TCP-Modbus adquirido, recebidos da Internet, ou seja, de fontes completamente heterogêneas. Adicionado gerenciamento de dispositivos através de TCP / IP. Tudo isso é harmoniosamente orquestrado a partir do openHAB. Mas, é claro, com esse openHAB se torna um ponto único de falha. É por isso que é correto usar o Linux como o sistema operacional no openHAB. Portanto, tive que passar ao longo do tempo conectando o servidor à LAN via WiFi a um fio comum. Eu também tive que fornecer um no-break individual, apesar da fonte de alimentação redundante de toda a casa. Bem, em conclusão, eu tive que colocar o soquete controlado por WiFi da Xiaomi na fonte de alimentação do servidor, conectando-o a uma rede WiFi separada, que serve como o último argumento quando o servidor congela.
  3. Chegou a conclusão de que a Internet das coisas e a casa inteligente estão de fato abrindo o horizonte para uma nova qualidade de vida. Conforto realmente aprimorado. De fato, há uma poupança. E, finalmente, a emoção aparece, levando à conexão de novos dispositivos e ao uso de novas tecnologias de integração. O que novamente leva a um maior conforto.

No próximo post, vou contar a você o que levou a emoção e como a casa inteligente evoluiu.

Source: https://habr.com/ru/post/pt418423/


All Articles