Meu artigo será útil para aqueles que estão apenas pensando nesse tipo de sistema, os ajudará a decidir se eles mesmos devem fazer isso e estão focados principalmente em entusiastas de fazendas coletivas. Inicialmente, escrevo “automação” e não uma casa inteligente, porque, neste estágio, não existem funções inteligentes no meu sistema de controle, agora a tarefa era coletar dados e gerenciar dispositivos. Tudo deve mudar no futuro quando aparecerem algoritmos que tornarão a casa inteligente. Do meu ponto de vista, se você pode acender a luz de um smartphone, isso não torna sua casa inteligente. Torna-se inteligente quando você tem scripts escritos que o ajudam, facilitam o controle de sua casa e tornam as coisas de rotina invisíveis para você. Por exemplo, acenda a luz na varanda quando o nível de iluminação estiver abaixo de um limiar e desligue-o em duas noites, não ligue a rega se hoje prometerem precipitação com uma probabilidade de mais de 60%, se houver movimento na sala, acenda as luzes da escada, etc. E somente neste caso ele se torna "inteligente".
Um pouco de letra. Eu sempre quis ter uma casa no país, por um longo tempo foi decidido, porque a construção não é apenas um grande custo financeiro, mas também uma grande despesa do seu tempo pessoal, que pode ser dedicado ao seu hobby favorito, a família. Felizmente, um deles é apenas o desenvolvimento de todos os tipos de dispositivos desnecessários. Em outro lugar, no estágio inicial, decidi por mim mesmo que isso poderia ser interessante e, escolhendo um site, comecei a fazer planos. Primeiro, é claro, tive que dedicar muito tempo a questões relacionadas à própria construção, como o projeto, a busca de construtores e todo tipo de outros problemas. Mas então, quando a caixa estava pronta, era hora de pensar no sistema de automação residencial, é isso que eu gosto e o que eu queria fazer, bem, é estranho o programador sair do sofá para desligar a luz no banheiro.
Começaram os estudos sobre o que está no mercado e o que você pode comprar e pré-cultivar. Como se viu, o mercado está bastante saturado com muitas soluções, mas faltavam, então eles não tinham uma solução holística que me satisfizesse (não, é claro, havia soluções, mas o custo era de 20 toneladas. Eu não estava satisfeito) . Por exemplo, a Schneider tem uma boa solução baseada no KNX, na qual é possível criar iluminação, persianas e controle de ventilação, mas é quase impossível integrar outros elementos que não os elementos padrão no sistema, além de esquecer a interface da web e o controle do google e a automação de scripts em geral. não precisa falar. Por outro lado, existem soluções suficientes no mercado que são sem fio e amigas do Google e os aplicativos estão prontos para eles, mas eles têm muitas nuances que levam essas soluções a segundo plano. Por exemplo, a complexidade de controlar simultaneamente a iluminação de interruptores convencionais e de aplicativos, geralmente é impossível, ou se é possível, é problemático implementar interruptores de passagem, mas eu gostaria de ter uma casa na qual tudo funcione sem uma casa inteligente em caso de falha. Além disso, eu realmente não queria pesar a casa com uma massa de caixas separadas, ainda não entendo por que o sensor de movimento, o monóxido de carbono e a temperatura não devem ser colocados em um único caso, mesmo que custasse mais, mas não precisaria pendurar o teto inteiro com alguns dispositivos e até mesmo trocar as pilhas a cada dois anos.
Em geral, com as palavras "tyzh programmer", comecei a pensar em como eu teria tomado isso sozinho e o que é necessário para isso. Pensando nas diferentes aplicações do sistema, ficou claro que, antes de fazer algo, você precisa pensar muito (parece óbvio, mas não, às vezes você quer fazer algo agora) porque, colocando a fiação nos portões e engessando, não há como voltar .
Tendo formado uma lista de desejos, obtive os seguintes subsistemas:
- iluminação doméstica
- roleta
- controle de retalho de ventilação
- sensores de movimento, luz, CO e sensores de temperatura nos quartos
- rega automática
- sensores de movimento no site
- energia de backup
Inicialmente, eu queria juntar tudo nos dispositivos adquiridos e, de alguma forma, reuni-los em um único sistema; essa parecia ser a melhor opção para o tempo / dinheiro e a confiabilidade do sistema. Os pensamentos saltaram de um subsistema para outro, mas nenhuma solução coerente foi formulada para nenhum dos subsistemas, meses se passaram, mas nenhuma solução foi formada, além da construção em si distrair e até o inverno começar (e esse é o tempo das montanhas e do snowboard, e isso não é possível). todos os compromissos, então ainda era assim). Eu tive que limitar o fluxo de pensamentos e me forçar a elaborar um subsistema após o outro, tudo começou com a iluminação.
Vamos dar uma olhada rápida em cada um.
Iluminação Pela entrada, a luz deve funcionar simultaneamente a partir dos interruptores e do sistema de controle (doravante ACS), além de ser possível fazer interruptores de passagem. Para isso, as armas de autopropulsão devem pelo menos saber se estão ativadas agora ou não. Havia várias idéias de como implementar isso, mas eu decidi neste diagrama - um interruptor de botão - um relé de pulso (Elko MR-41) - uma saída discreta - uma entrada discreta. Uma saída discreta é paralela a um interruptor de botão, um contato de relé NO é para uma lâmpada, um contato NC é para uma entrada digital para status.

De tudo isso, seguiu-se que, para cada ponto de iluminação, que deveria ser controlado tanto pelo interruptor quanto pelas armas de autopropulsão, deveria haver seu próprio fio da blindagem, da mesma forma que os interruptores. O diagrama de fiação no caderno de desenho realmente ajudou a entender a escala do desastre, havia muitos fios, mas isso não deve assustar uma pessoa que optou por uma casa inteligente. Eu recomendo não ser preguiçoso e ainda fazer esse esquema, não necessariamente em um esboço. No futuro, este trabalho poupará muito tempo e ajudará mesmo depois de anos em que você precisará pendurar uma foto e você se perguntará se existe ou não um fio.
Roleta . A diferença da luz é que a carga, neste caso, não é uma lâmpada, mas um motor elétrico, com tudo o que isso implica. Assim como na iluminação, eu queria ter o controle de um interruptor mecânico e de um sistema de controle. Portanto, o circuito resultou da seguinte forma: saída discreta - contator e, paralelamente, um botão para cada direção de rotação.
Ventilação . Tudo é simples, entreguei ao SPG e não forneci nenhum outro controle; quase nunca quero abrir / fechar dutos de ventilação que não sejam do aplicativo. Portanto, o circuito - duas saídas discretas - um simples drive Belimo LM24-T com ebay por US $ 25 sem retorno.

É assim que o atuador montado na aba de ventilação se parece:
Sensores de movimento ,
sensores de luz, CO e temperatura nos quartos. O mercado agora possui um eixo desses dispositivos, mas tudo com uma interface proprietária e conectando-os ao seu sistema doméstico é bastante difícil, e o problema mencionado acima é que eles tentam vender cada sensor como um dispositivo separado em seu próprio caso. A última coisa que eu gostaria de ver é a dispersão de diferentes dispositivos no teto, mas como você acha que todos eles precisam trocar as pilhas e é assustador se tornar. Além disso, sempre há a possibilidade de o fabricante fechar a API aberta de seus dispositivos e forçar você a usar apenas seu aplicativo como o Google recebeu recentemente do nest e todo o seu sistema se fragmentará. Então, eu criei meu dispositivo no AVR, chamando-o de “etiqueta do sensor” e guardei tudo o que precisava: um sensor de movimento com ajuste de sensibilidade digital, luz, temperatura, sensores de monóxido de carbono, luz de fundo controlada, ESP8266, RS485 com isolamento galvânico, fonte de alimentação de 24V . Descobriu-se aqui que é um dispositivo desse tipo, mas, na realidade, ele precisa dedicar um artigo separado e não se concentrar realmente nele.

Rega automática. Parece que isso é complicado, deve haver o dispositivo mais simples do tipo de saída discreta - um solenóide de 24V. Mas, como se viu, todas as válvulas de irrigação são 24V, exceto AC. Então eu tive que fazer uma unidade separada com um transformador de 24V e uma unidade de relé, que 24V DC liga 24V DC.
Sensores de movimento no site. Para sensores de segurança, as saídas são contatos NO e NC, então tudo é simples aqui, entradas discretas e tudo, mas não se esqueça do pára-raios (a opção de pára-raios é adequada para painéis de conexão).
Reserve comida. Inicialmente, isso não foi planejado, mas com o tempo ficou claro que a perda de eletricidade fora da cidade não era um estado de emergência, mas um fenômeno bastante comum. E, apesar de acreditar que o sistema doméstico inteligente deve ser projetado para poder ser ligado / desligado a qualquer momento, sem consequências tristes para ela e para a casa, não recusei a energia de backup. Tendo decidido que, como já tenho meus sensores de sensor de 24V, inversores de 24V, farei toda a fonte de alimentação ACS de 24V. Descobriu-se um bom bocado médio da fonte de alimentação, bem como ups e baterias, funciona, verificado.

Após a formação da solução de hardware, parecia que, em um sistema completo, era possível prosseguir com o trabalho de instalação da unidade de energia: colocar os fios de energia, conectar a blindagem de energia e a baixa tensão. Acabou assustadoramente muitos fios, mas, de um fim de semana para o outro, ficou mais bonito e mais bonito, como resultado, depois de um mês tudo deu certo e funcionou. Um bônus foi a oportunidade de criar um painel de controle temporário para estores leves e roletes para os construtores.



A próxima etapa foi planejar o painel com os módulos de controle.Topologia do sistema:
Módulos DI / DO. Era necessário estimar a topologia do sistema, quais módulos estão incluídos nele e em quais controladores o que funciona. Existem muitas opções para implementação, e todas elas estarão corretas se funcionarem. Olhando para o futuro, direi que decidi por um sistema de módulos DI / DO adquiridos, que controlam o controlador no Beaglebone black e o servidor da web no Raspberry Pi. Em seguida, você precisa contar todas as entradas / saídas discretas e seus tipos. Porque não havia desejo de desenvolver módulos de DI / DO, apenas olhei para o mercado já pronto por um preço razoável. Parei nos módulos de Áries, em princípio, eles cobriam todas as minhas necessidades de gerenciamento:
- MV110-8DF, como um módulo de entrada discreta para sinais de 220V.
- 110-16, para controle de iluminação, persianas, válvulas de ventilação e irrigação.
- MV110-16DN como um módulo de entrada discreta para sinais de sensores de movimento de rua.
Esses módulos são conectados ao sistema através da interface RS485 ModBus, em princípio, o padrão do setor; portanto, não deve haver dificuldades com sua implementação (você pode escrever o suporte para os principais comandos ou pegar uma biblioteca pronta).
Controlador Para me comunicar com meus módulos “sensorortag” localizados em cada sala e com os módulos Aries no painel, eu precisava de um controlador que pudesse interrogá-los por meio da interface RS485 e que tivesse Ethernet para se comunicar com o servidor. Eu considerei a opção de usar a placa Wiren, mas eles têm poucas portas RS485 e eu queria fazer o controlador sozinho. O controlador deseja dedicar um artigo separado, portanto, aqui podemos mencionar que ele é fabricado em preto Beaglebone e possui 3 portas RS-485 isoladas galvanicamente e energia de 24V.
O sistema para o controlador preto Beaglebone é construído com base no Buildroot e levado ao estado de execução do build - obtemos a imagem final para o cartão SD. O software Beaglebone black consiste em: núcleo de comunicação, gateway MQTT e servidor Mosquitto. O núcleo de comunicação pesquisa as portas RS-485, formando uma tabela interna de pontos discretos e analógicos. O gateway MQTT converte os pontos do controlador nos valores dos tópicos do MQTT e os passa para o servidor Mosquitto.
Tudo está disponível neste link .
Painel de controle e simulador de sinais (iluminação, persianas e ventilação):

O software Raspberry Pi é o Assistente Doméstico. Fiquei satisfeito com este sistema, é muito simples, suporta muitos dispositivos prontos e permite que você escreva seus plugins em python com muita flexibilidade. Por exemplo, em algumas semanas eu escrevi meus próprios plugins MQTT para iluminação, persianas, alarmes e vários tipos de sensores (iluminação, CO, movimento, temperatura) e vários tipos de automação, tudo é muito flexível e, o mais importante, com um limiar baixo para a entrada no sistema. O Home Assistant também suporta a integração com o Google Home e o Alexa. Você pode se atormentar um pouco e configurá-lo por conta própria ou fazer uma assinatura paga pelo serviço deles (US $ 5 por mês) e, em seguida, o processo de sincronização do Home Assistant e do Google Home leva dois cliques. Como bônus, temos controle de voz, enquanto em inglês, mas prometemos apoiar o russo praticamente. Parece algo como isto:

Neste artigo, eu queria dar uma visão geral do sistema e um exemplo de uma implementação específica, e não finjo a exatidão das decisões que escolhi. Alguém pode dizer que isso é um problema para a casa, mas alguém pode se beneficiar. Em geral, não tenha medo, é emocionante, basta estruturar tudo bem e começar. Todas as idéias não vêm imediatamente, elas aparecem no processo de implementação; portanto, você terá que mudar e mais de uma vez. Em seguida, pretendo escrever sobre o desenvolvimento do meu controlador e tag sensor, que como programador é mais interessante do que tudo descrito aqui.