
Nesta parte, mostrarei a opção da
integração "simples"
de um condicionador de ar (e, em geral, quase qualquer dispositivo controlado via IR) usando um gateway WiFi <=> IR.
Para torná-lo mais interessante, escolhi um gateway popular (a propósito, Yandex o usa para Alice). Você pode comprar um no Ali, o preço é de cerca de 1200 rublos (o Yandex é mais caro).
O dispositivo é bastante compacto (cabe facilmente na palma da sua mão); dos órgãos visíveis, há um pequeno LED azul discreto e um botão para emparelhar. Todo o resto está escondido atrás de uma caixa transparente infravermelha preta. Você pode usar qualquer porta USB disponível (fonte de alimentação, computador etc.) como fonte de energia. O gateway está conectado a ele usando um cabo microUSB (fornecido ou de qualquer maneira conveniente).
A peculiaridade desse dispositivo é que ele é construído sobre o "bem conhecido em círculos estreitos" esp8266, o que significa que pode ser "domado" com bastante facilidade.
Opção "para o menor"
Antes de alterar o dispositivo, tentei usá-lo normalmente: instalei o aplicativo TuyaSmart no meu telefone (existem versões para Android e iPhone) e, em seguida, tudo é simples:
- registrar-se no aplicativo,
- passaremos por um pequeno assistente para conectar um novo dispositivo (para isso, o gateway deve estar conectado à energia e entrar no modo de "emparelhamento" usando um único botão,
- depois que o gateway aparece no aplicativo, criamos um novo "painel de controle" - outro pequeno assistente em que você seleciona o tipo de dispositivo (no meu caso - Ar condicionado) e o fabricante é selecionado (não há Electrolux no aplicativo, mas funcionou muito bem ao escolher Midea). Imediatamente criamos o "nome" do novo console (eu escolhi "Sr. White").
Isso é tudo. Depois disso, o seguinte controle remoto aparece no telefone:

Com ele, você pode controlar as funções básicas básicas:
- on / off
- ajuste de temperatura
- seleção do modo de operação ("Auto", "Arrefecimento", "Aquecimento", "Ventilador"),
- seleção da velocidade do ventilador (“Auto”, “Baixo”, “Médio”, “Alto”).
Em geral, já é possível usar o controle remoto, mas onde estão a “casa inteligente” e a integração?
Como essa é uma maneira simples, é ruim para uma casa inteligente, mas com a integração é um pouco melhor.
Primeiro, mostre a pomada - não há integração com o Apple HomeKit; portanto, o Siri ainda não está disponível, mas com outras plataformas concorrentes, tudo é muito mais divertido:
- Para o Amazon Alexa - existe uma habilidade Tuya Smart. Basta ativá-lo e indicar nela sua conta, que você inseriu durante o registro no aplicativo - você pode controlar por voz o ar condicionado.
- Da mesma forma, você pode conectar o Tuya Smart ao Google Assistant.
Nos dois casos, o idioma russo não é suportado, mas a voz é controlada com facilidade e simplicidade. Encontrei os seguintes comandos:
- Alexa, ligue o Sr. White
Ei, Google, defina o Sr. White para 24 graus
- Alexa, desligue Mr.White
Deixe-me lembrá-lo de que implementei o controle de voz usando o Amazon Echo Dot e o Google Home Mini - ambos os dispositivos funcionam de maneira idêntica.
A propósito, quais comandos de voz você pode controlar o modo de operação e a taxa de fluxo de ar - não encontrei. Se alguém me disser, ficarei agradecido.
E então foi feita a integração "semi-automática" com o UD: quando a temperatura na sala ultrapassa o limite - o controlador UD envia uma mensagem pedindo para ligar o ar condicionado e eu, remotamente, usando o aplicativo TuyaSmart, liguei o ar-condicionado no modo necessário.
A solução é "mais ou menos", é claro, mas pelo menos de alguma forma você pode usá-lo.
Mas este não é o nosso caminho - seguimos em frente:
Jedi Way
Autópsia e preparação
Existe uma opção para piscar o dispositivo sem abri-lo, o método é descrito
aqui .
Esse método me pareceu desnecessariamente complicado (tantos movimentos, quando o firmware requer apenas 4 fios para soldar), e foi interessante olhar para dentro.
Infelizmente, no processo, me empolguei e esqueci de tirar uma foto, então mostrarei as fotos de outras pessoas:


Mais fotos podem ser
vistas aqui .
A foto mostra claramente que o módulo TYWE3S é usado (a
folha de
dados na qual é muito simples no Google).
Agora você precisa piscar o módulo. O firmware original foi substituído e não pode ser restaurado.
O firmware é feito de maneira muito simples: pegamos o ambiente do Arduino (ou Atom, ou algo mais - escolha a seu gosto). Faça o download do esboço com o firmware
Tasmota para o
ambiente de desenvolvimento . Em seguida, conectamos um módulo TYWE3S RX, TX, GND, VCC a partir de qualquer serial USB (não se misture - você precisa de 3,3V de energia e os níveis de sinal correspondentes, se houver 5V, será necessário solicitar um novo gateway). Antes de aplicar energia, não esqueça de fechar (de qualquer maneira conveniente) o GPIO0 do módulo ao terra, colocando o módulo no modo de firmware. Firmware.
Não é necessário configurar o firmware - tudo pode ser deixado no código "como está", basta "domesticar" o módulo.
Se tudo for feito corretamente (depois de desconectar os fios do firmware, é claro), ligue o gateway. No seu telefone ou computador, ative a pesquisa de redes Wi-Fi - uma nova rede deve aparecer com o nome sonoff-xxxx (onde xxxx são números), que nosso dispositivo atende.
Nós nos conectamos a esta rede e vamos para o endereço:
192.168.4.1 - essa é a interface da web do nosso gateway.
Primeiro, nas configurações do gateway, especifique a rede Wi-Fi doméstica e a senha (o dispositivo será reiniciado e conectado à rede doméstica). Além disso, todas as ações são mais fáceis de executar. Naturalmente, você precisa descobrir de qualquer maneira conveniente qual endereço do gateway recebido na rede doméstica.
Vamos para a
página com as versões de firmware do Tasmota . Baixe dois arquivos - sonoff-minimal.bin e sonoff-ir.bin
Agora, usando a interface da web do gateway, atualizamos o firmware em dois estágios - primeiro costuramos a versão “mínima” e o segundo passo é o sonoff-ir.
Após todas essas ações simples, já teremos um módulo com a versão atual do firmware em nossas mãos, resta apenas configurá-lo da seguinte forma:

Na verdade, essa é a configuração mínima necessária - no exemplo descrito, interagiremos com o módulo usando solicitações GET (embora seja possível também através do MQTT).
Você pode verificar a operação do módulo e, ao mesmo tempo, descobrir algo útil em seu console (um link para ele está disponível na página principal da interface da web). Abra o console e veja como o módulo "vive".
Agora você pode começar a aprender a interface de controle do ar condicionado. Para fazer isso, pegue o controle remoto padrão no ar condicionado e pressione o botão liga / desliga. Se tudo estiver bem, uma linha como:
19:24:09 MQT: tele/IRbridge/RESULT = {"IrReceived":{"Protocol":"COOLIX","Bits":24,"Data":"0xB29F70","DataLSB":"0x4DF90E","Repeat":0,"IRHVAC":{"Vendor":"COOLIX","Model":-1,"Power":"on","Mode":"cool","Celsius":"on","Temp":22,"FanSpeed":"min","SwingV":"off","SwingH":"off","Quiet":"off","Turbo":"off","Econo":"off","Light":"on","Filter":"off","Clean":"on","Beep":"off","Sleep":-1}}}
O módulo recebeu e "analisou" o comando IR do controle remoto. I.e. fica imediatamente claro no console qual protocolo (no meu caso é COOLIX) é usado pela unidade de ar condicionado padrão e quais parâmetros estão codificados na embalagem.
Ótimo, agora você já pode controlar o ar condicionado. Para fazer isso de maneira significativa, é melhor se familiarizar com
essa descrição dos comandos.
Para verificação, enviaremos, por exemplo, o seguinte comando pelo console do gateway (darei todos os comandos do meu ar condicionado, você pode ter um protocolo de controle diferente):
IRhvac{"Protocol":"COOLIX","Power":"On","Mode":"Cool","FanSpeed":"min","Temp":22}
Milagrosamente, o ar condicionado liga imediatamente e no modo necessário. Milagre!
Desligue o ar condicionado com o seguinte comando:
IRhvac{"Protocol":"COOLIX","Power":"Off"}
Em geral, o módulo é preparado e testado.
Vá para integração!
Ar condicionado + Domoticz = amizade para sempre!
Eu uso o Domoticz como o principal sistema de automação, portanto seremos "amigos" desse sistema em particular.
O plano de trabalho é o seguinte:
- Crie vários dispositivos virtuais: um comutador, dois seletores (para selecionar modos e taxa de fluxo de ar) e um termostato.
- Adicione alguns scripts que, por ações com dispositivos virtuais, enviarão comandos para o gateway.
- Verifique se tudo está sendo gerenciado como deveria.
Dispositivos virtuais
Ao criar dispositivos, você deve especificar seus nomes. Trago o meu, você pode escolher qualquer outro, lembre-se de corrigir os scripts para eles mais tarde.
Crie um comutador comum (digite "Switch") com o nome "HVAC". Este interruptor será usado para ligar / desligar um botão.
Para selecionar os modos de operação do ar condicionado, adicione um interruptor virtual "HVAC-Mode" (tipo "Selector Switch") com as seguintes características:
Por favor, note que aqui eu criei apenas dois modos - "aquecimento" e "refrigeração". Embora o ar condicionado ainda tenha os modos "Automático" e "Ventilador", eles são inúteis para mim - o primeiro funciona de alguma forma estranho e desconfortável para as famílias, e o segundo nunca foi necessário. Se você usar esses modos, poderá simplesmente adicioná-los ao seletor.
Da mesma forma, crie o seletor "HVAC-FanSpeed":
Agora resta criar apenas o termostato HVAC-Temp (o tipo de dispositivo é ponto de ajuste do termostato).
Scripts
Estou mais perto dos scripts do Domoticz em Lua (Devices), então estou fazendo o que é mais conveniente para mim.
Por definição - o endereço IP do gateway IR na minha rede doméstica é 10.40.20.254 e esse endereço aparece em um dos scripts. Você precisará corrigi-lo no endereço do gateway.
Crie os três scripts a seguir.
HVACauto:
commandArray = {} for deviceName,deviceValue in pairs(devicechanged) do if (deviceName=='HVAC-Temp') then if (tonumber(deviceValue) < tonumber(otherdevices_temperature[''])) then commandArray['HVAC-Mode'] = 'Set Level: 10'
Este script compara a temperatura definida do ar condicionado e a temperatura do sensor "Room" para selecionar o modo correto - "refrigeração" ou "aquecimento".
HVACpower:
commandArray = {} for deviceName,deviceValue in pairs(devicechanged) do if (deviceName == 'HVAC') then if deviceValue == "Off" then print(' ') commandArray['HVAC-Mode'] = 'Set Level: 0'
Este script monitora o status da chave "geral" do ar condicionado e seleciona o modo de operação desejado ao ligar ou desligar o ar condicionado.
E o último script HVACmain:
commandArray = {} local cmnd for deviceName,deviceValue in pairs(devicechanged) do if (deviceName=='HVAC-Mode' or deviceName=='HVAC-FanSpeed' or deviceName=='HVAC-Temp') then if (otherdevices['HVAC-Mode']=='Off') then cmnd = 'http://10.40.20.254/cm?cmnd=IRhvac{"Protocol":"COOLIX","Power":"Off"}' else cmnd = 'http://10.40.20.254/cm?cmnd=IRhvac{"Protocol":"COOLIX","Power":"On","Mode":"'..otherdevices['HVAC-Mode']..'","FanSpeed":"'..otherdevices['HVAC-FanSpeed']..'","Temp":'..otherdevices['HVAC-Temp']..'}' end print(cmnd) os.execute("wget '"..cmnd.."'") end end return commandArray
Mas esse script é o mais importante. Ele gera os comandos corretos com os parâmetros necessários e implementa uma solicitação GET para o gateway. Não se esqueça de fixar o endereço IP do seu gateway nele.
Na verdade, é tudo. Você pode alternar a interface do Domoticz para as guias correspondentes e "pressionar botões" para controlar o ar condicionado. Se tudo for feito corretamente, o sistema de ar condicionado será controlado conforme necessário.
Funcionalidades
Essa opção através de um gateway de IR tem uma desvantagem - a falta de feedback. I.e. se alguém usar um controle remoto padrão, os status no Domoticz não serão alterados e exibirão informações que não são mais relevantes.
Em geral, isso realmente não interfere (especialmente se você não usar o controle remoto IR, mas usar apenas os recursos do UD).
Obviamente, você pode monitorar com o gateway IR quais comandos são enviados via IR (o gateway transmite essas informações via MQTT) e programar um pouco mais para que, mesmo ao usar o controle remoto padrão, os status e parâmetros atuais sejam definidos no sistema DD.
Mas enquanto eu não tenho tempo para isso e também não tenho uma necessidade especial (é mais fácil "olhar" para o sistema de videovigilância e ver se o ar condicionado está ligado).
E então?
Naturalmente, não paramos por aí.
No mínimo, a implementação de gerenciamento atual já é muito mais funcional que a opção "para o menor".
Depois de "encaminhar" o ar condicionado em Domoticz, também fiz o controle com a Siri:

Depois que a oportunidade apareceu para controlar o sistema UD (e, principalmente, a voz via Siri), a necessidade de usar um controle remoto padrão por IR desapareceu.
Num futuro próximo, escreveremos um script de "inverno" que, na ausência dos proprietários e a uma temperatura "fora" de pelo menos -10, use os recursos do ar condicionado para aquecer a casa (é mais eficiente em termos de energia nesse modo do que pisos com aquecimento elétrico, mas menos confortável), e quando os proprietários retornam, eles novamente mudam para o piso radiante.
Obviamente, haverá um script de "verão" que ativará automaticamente o modo de refrigeração e manterá a temperatura definida da casa.
Naturalmente, todos os casos de uso possíveis são limitados apenas pela imaginação. Não esconda nada;)
Parte III?
No momento, o anunciado módulo WiFi para controlar o ar condicionado não apareceu à venda.
Se houver tempo (longas noites de inverno), adotarei outra abordagem do módulo de interface do ar condicionado e ainda tentarei "capturar" os comandos internos do ar condicionado.
Então ... fique ligado!