Arduino: Clonando Controle de Ar Condicionado
Ola Gente
Automação residencial é fascinante, começas a automatizar coisas e não paras mais.
Se você tentou clonar o controle de um ar condicionado notou que nem sempre funciona!
Nos meus testes inicias o código retornado não funcionava quando eu emitia o mesmo sinal.
Mas afinal qual era o problema?
O código raw do ar condicionado é muito longo!
Meu ar condicionado possui um código raw grande, que ultrapassa o limite da biblioteca do IRremote, veja o código para ligar:
unsigned int rawData_Ligar[139] = {8850,4450, 650,550, 600,550, 650,1650, 650,1600, 650,1600, 700,1550, 700,1600, 600,600, 650,500, 650,1650, 650,1600, 600,1650, 700,500, 650,550, 650,500, 650,550, 600,600, 650,500, 700,500, 700,500, 600,1650, 700,1550, 700,1600, 650,550, 650,500, 700,500, 650,500, 650,550, 650,1600, 700,500, 650,1600, 700,550, 650,500, 650,1600, 700,500, 650,19650, 700,1600, 600,1650, 700,1600, 650,500, 700,500, 650,550, 600,600, 650,500, 700,500, 650,550, 600,550, 650,550, 650,550, 600,1650, 650,550, 650,550, 650,500, 700,500, 650,550, 600,550, 700,500, 650,550, 650,500, 700,550, 650,500, 650,550, 650,550, 650,500, 650,550, 650,1600, 650,1600, 650,600, 600};
Como Resolver:
Abre o arquivo IRremoteInt.h localizando na pasta libraries do arduino
Exemplo: C:\Users\[SeuUser]\Documents\Arduino\libraries\IRremote\IRremoteInt.h
Na variável RAWBUF altere para:
#define RAWBUF 200
Na variavel _GAP altere para:
#define _GAP 50000
Pronto! Agora tente clonar novamente os sinais do controle do ar condicionado e note que os Raw gerado será muito maior!
E como ficou meu script para emitir este código raw gigante?
Observe que o KHZ varia da frequência utilizada pelo controle, no meu caso é NEC onde a frequência de operação é 38 khz (Esta informação você ontem quando for capturar os comandos do controle via exemplo IRrecvDump)
irsend.sendRaw(rawData_Desligar, sizeof(rawData_Desligar) / sizeof(rawData_Desligar[0]), khz);
delay(1000);
}
Ainda não funcionou?
Se seu ar condicionado estiver meio longe o sinal pode não chegar, coloque um resistor com menor resistividade e teste novamente (Para o meu caso, onde o ar esta a cerca de 2 metros, utilizei um resistor de 330 Ω.
Por hoje é isto, queridos desenvolvedores! 👩💼
Até logo! 👋