Comando de televisão com Arduino

comando_tv

Este projeto que apresentamos é um dos mais divertidos e, ao mesmo tempo, com maior utilidade no nosso dia-a-dia.
Quem nunca teve o problema de ficar sem pilhas no comando lá de casa? Ou por algum outro motivo o comando deixou de funcionar? Pois, agora mostramos como enviar comandos a partir do seu Arduino de modo a poder controlar a sua televisão, alterando o canal, diminuindo ou aumentando o volume, ligar/desligar a televisão, etc.
O projeto possui uma montagem relativamente fácil, assim como a sua compreensão.

Material:

1 LED infravermelho emissor (TIL32 ou equivalente);
5 botões de pressão;
6 resistências de 330Ω;

Montagem:

esquema_comando

Observação:

Antes de inserir o código no Arduino, é preciso fazer o download da biblioteca IRremote_Master e de seguida descompactar o arquivo para a pasta ‘libraries‘ da IDE do Arduino.

Código Arduino:


#include <IRremote.h>
IRsend irsend;                                                  //Variável para poder enviar comandos para a televisão

const int volume_maior = 4;                       //Ligação do Pino onde aumenta o volume
const int volume_menor = 5;                     //Ligação do Pino onde diminui o volume
const int canal_mais = 6;                             //Ligação do Pino que aumenta o numero do canal
const int canal_menos = 7;                         //Ligação do Pino que diminui o numero do canal
const int liga_desliga = 8;                            //Ligação do Pino que liga/desliga a TV
int ledIR = 3;
int buttonState = 0;                                        //Inicia o botão com o valor 0

void setup(){
pinMode(ledIR, OUTPUT);                            //LED como saída

Serial.begin(9600);                                           //Inicia o monitor

//Botões de entrada
pinMode(volume_maior, INPUT);
pinMode(volume_menor, INPUT);
pinMode(canal_mais, INPUT);
pinMode(canal_menos, INPUT);
pinMode(liga_desliga, INPUT);
}

void loop(){

//Quando clicamos no botão de pressão correspondente a cada ação, é enviado um código em
//hexadecimal para indicar à televisão o que deve fazer
if(digitalRead(volume_maior) == HIGH) {
irsend.sendNEC(0xE0E0E01F, 32);
}

if(digitalRead(volume_menor) == HIGH) {
irsend.sendNEC(0xE0E0E02F, 32);
}

if(digitalRead(canal_mais) == HIGH) {
irsend.sendNEC(0xE0E048B7, 32);
}

if(digitalRead(canal_menos) == HIGH) {
irsend.sendNEC(0xE0E008F7, 32);
}

if(digitalRead(liga_desliga) == HIGH) {
irsend.sendNEC(0xE0E040BF, 32);
}
}

Agora pessoal, é só pegar no vosso arduino, dar uma vista de olhos a este tutorial e começar a desenvolver o vosso projecto! Se ainda não tiveres o material necessário para o projecto, encontra-o aqui na nossa loja Boxelectronica.