Estou montando um projetinho de automação bem simples, que basicamente seria ações que variam conforme a temperatura. Porém eu gostaria de poder desligar as ações automáticas e controla-las através do controle IR também(gostaria ter der ambas opções, tanto automático como pelo controle), mas eu não faço ideia de se isso é possível e caso seja como fazer.
Agradeço a ajuda!
PS: Estou usando um site para simular antes de montar, não posto o link aqui pois não sei se é permitido.
Existe uma biblioteca para Arduino que faz a comunicação via IR, ela se chama "IRremote",ela faz tando a recepção dos códigos enviados pelos controles remotos quanto enviar códigos por IR, para instala-lá faça:
1º:Clique no menu Scketch da Arduino IDE;
2º:Depois clique em incluir bibliotecas e Gerenciar bibliotecas;
3º:Coloque o nome da biblioteca no campo de pesquisa e em seguida instale.
Basicamente os controles remotos enviam um "código" em hexadecimal (como por exemplo: 0xF68369C0) para cada tecla, o que você precisa fazer é copiar os códigos da teclas que deseja que o projeto use, para isso use este código:
// IR
#include <IRremote.h>
#include <IRremoteInt.h>
int Recv_pin = 2;//terminal DATA do receptor IR
IRrecv irrecv(Recv_pin) ;
decode_results results; //os resultados lidos serão armazenados na variável "results"
void setup() {
Serial.begin(9600); //inicia a comunicação serial
irrecv.enableIRIn();//configura o RECEPTOR IR
}
void loop() {
if(irrecv.decode(&results)) { //se algo estiver sendo recebido pelo receptor
Serial.println(results.value,HEX) ; //mostrar o código da tecla no monitor serial
irrecv.resume() ; //necessário após ler dados do receptor
}
}
Depois de grava-lo no seu Arduino abra o Monitor serial na IDE do Arduino, agora pegue o controle remoto e pressione as teclas que deseja usar, irá perceber que no Serial monitor apareceram os códigos certo?então guarde esses códigos.
Agora você precisa que o Arduino envie esses códigos dependendo da temperatura certo?existe um exemplo da biblioteca IRremote chamado "IRsendDemo" que envia um código pelo transmissor IR.
Dê mais detalhes sobre a sua ideia que poderemos ajudar melhor.
Olá, bem...
O meu projeto é para acionar os ventiladores e abrir as cortinas quando a temperatura ultrapassar 26°C (existem outras ações mas não vem ao caso). Ultrapassou 26°C os ventiladores ligam e as cortinas se abrem, depois quando a temperatura fica abaixo de 26°C os ventiladores desligam e as cortinas se fecham. Até ai tranquilo e sem problemas, porém eu gostaria de poder controlar os ventiladores e as cortinas também por controle remoto. Suponhamos que a temperatura está acima de 26° e os ventiladores estão ligados, porém eu quero desliga-los pelo controle, mas ao fazer isso ele se desliga e já liga novamente logo em seguida, pois ele está sendo controlado ainda pelo sensor de temperatura. Como poderia contornar isso?
Não sei se fui claro, mas tentei explicar o melhor que pude.
Uma forma de resolver este problema é o Arduíno conter também um receptor de IR, assim quando você desligar o ventilador automaticamente o Arduino entenderá que não deve atuar e portando ficará "desativado" até que você habilite o mesmo novamente, para isso deverá por exemplo ficar pressionando uma tecla do controle por alguns segundos, geralmente quando isso acontece o controle remoto envia algum código como 0xFFFFFFFFF.
Mas eu ainda tenho uma dúvida:
Você tem um ventilador com controle remoto ou vai implementar em um que não tem usando o Arduino?A mesma pergunta também para a cortina.