Páginas

Home Automation 14 Chs Pro: Descrição, Programa Código, Fotos e Vídeos.



Fotos e Vídeos: Home Automation 14 Chs Pro.










Descrição:

O aplicativo Home Automation 14 Chs Pro  instalado no Smartphone Android controla remotamente o Arduino com comunicação via bluetooth de 14 canais:

Porta analógica cofigurada como saída digital: A0, A1, A2, A3, A4 e A5;
Porta digital configurada como saída: D4, D5, D6, D7, D8, D9, D10 e D11;
Total de 14 saídas.

Através destes pinos  conectamos uma placa com 14 relés(vendida no ebay ou mercado livre), onde podemos controlar até 14 equipamentos lidados a rede elétrica residencial;

Controlar o acionamento(liga e deslida) de lâmpadas, abatjours, luminárias, motores, bombas, solenóides, contatores, forno elétrico, aparelhos eletrodomésticos, etc.

Se preferir didaticamente, pode se utilizar uma placa ou mesmo um proto-board com 14 leds montados para verificar o acionamento de cada um dos 14 pinos utilizados como saída.

Obs. Neste projeto os pinos digitais D0 e D1 estão conectados ao RX e TX da placa Arduino e os pinos digitais D2 e D3 estão conectados ao módulo bluetooth, o pino digital D13 está conectado ao led d13 da placa Arduino.

Utilize um smartphone com android, para instalar este “.apk”; Neste exemplo foi utilizado o Tablet Samsung Galaxy GT-P3100 Tab2  7.0” com android versão 4.0.

Instale o aplicativo Arduino BT Control Toggle.apk  no Smartphone Android;
Agora ligue o Bluetooth do Smartphone Android e abra o aplicativo Arduino BT Control Toggle;
Pressione “Connect”(se pedir senha, a senha default é 1234);
Escolha um dispositivo bluetooth na lista que deseja conectar (no exemplo o nome default é LINVOR);

Sobre a configuração do módulo Bluetooth JY_MCU.
Este módulo já vem configurado de fábrica com:
Baud rate: 9600 bps;
Data bits: 8 bits;
Stop bits: 1;  Parity: none;
Resumo(9600 bps, 8N1);

Como funciona:
O aplicativo  Arduino BT Control Toggle instalado no Smartphone com Android comunica com o bluetooth que está conectado à serial(mySerial) pino 2-RX e 3-TX do Arduino que recebe entes dados  que por sua vez ,  interpreta e faz o comando do relé(placa de acionamento de relés)  que está conectado na porta digital correspondente do Arduino.

Atenção: Quando estiver trabalhando com este aplicativo mantenha  a tela sempre ligada(não utilize o modo dormir ou sleep) pois voce pode perder o controle sobre o dispositivo que estão sendo acionados.

Obs.: Para sair do aplicativo, verifique sempre antes se  os botões estão no modo  “OFF” – botão vermelho então pressione o botão “disconnect”  e saia do aplicativo; Note que o bluetooth ficará piscando indicativo que o sistema está realmente desconectado.

Isto é tudo que voce precisa saber para construir seu programa:

Botão A0 -ON-VERDE - send: caracter “A”;  Botão A0 -OFF-VERMELHO- send: caracter “B”;
Botão A1 -ON-VERDE - send: caracter “C”;  Botão A1 -OFF-VERMELHO- send: caracter “D”;
Botão A2 -ON-VERDE - send: caracter “E”;  Botão A2 -OFF-VERMELHO- send: caracter “F”;
Botão A3 -ON-VERDE - send: caracter “G”;  Botão A3 -OFF-VERMELHO- send: caracter “H”;
Botão A4 -ON-VERDE - send: caracter “I”;   Botão A4 -OFF-VERMELHO-  send: caracter “J”;
Botão A5 -ON-VERDE - send: caracter “K”;  Botão A5 -OFF-VERMELHO- send: caracter “L”;

Botão D4 -ON-VERDE - send: caracter “M”;  Botão D4 -OFF-VERMELHO- send: caracter “N”;
Botão D5 -ON-VERDE - send: caracter “O”;  Botão D5 -OFF-VERMELHO- send: caracter “P”;
Botão D6 -ON-VERDE - send: caracter “Q”;  Botão D6 -OFF-VERMELHO- send: caracter “R”;
Botão D7 -ON-VERDE - send: caracter “S”;  Botão D7 -OFF-VERMELHO- send: caracter “T”;

Botão D8  -ON-VERDE - send: caracter “U”;  Botão D8   -OFF-VERMELHO- send: caracter “V”;
Botão D9  -ON-VERDE - send: caracter “X”;  Botão D9   -OFF-VERMELHO- send: caracter “Y”;
Botão D10 -ON-VERDE - send: caracter “Z”;  Botão D10 -OFF-VERMELHO- send: caracter “W”;
Botão D11 -ON-VERDE - send: caracter “a”;  Botão D11 -OFF-VERMELHO- send: caracter “b”;

Gratis  Programa Código para Home Automation 14 Chs Pro.



#include <SoftwareSerial.h>//
 SoftwareSerial mySerial(2, 3); // 2-RX, 3-TX

int AA0 =  A0;
int AA1 =  A1;
int AA2 =  A2;
int AA3 =  A3;
int AA4 =  A4;
int AA5 =  A5;
int D4 =  4;
int D5 =  5;
int D6 =  6;
int D7 =  7;
int D8 =  8;
int D9 =  9;
int D10 = 10;
int D11 = 11;

 void setup()
 {
 mySerial.begin(9600);
 //digitalWrite(A0, HIGH);
 pinMode(AA0, OUTPUT);
 pinMode(AA1, OUTPUT);
 pinMode(AA2, OUTPUT);
 pinMode(AA3, OUTPUT);
 pinMode(AA4, OUTPUT);
 pinMode(AA5, OUTPUT);

 pinMode(D4, OUTPUT);
 pinMode(D5, OUTPUT);
 pinMode(D6, OUTPUT);
 pinMode(D7, OUTPUT);

 pinMode(D8,  OUTPUT);
 pinMode(D9,  OUTPUT);
 pinMode(D10, OUTPUT);
 pinMode(D11, OUTPUT);

 }

 void loop()
{
 char caracter = mySerial.read();


 if(caracter == 'A')
{
 digitalWrite(AA0,HIGH);
}

if(caracter == 'B')
{
 digitalWrite(AA0,LOW);
}

 if(caracter == 'C')
{
 digitalWrite(AA1,HIGH);
}

if(caracter == 'D')
{
 digitalWrite(AA1,LOW);
}

 if(caracter == 'E')
{
 digitalWrite(AA2,HIGH);
}

if(caracter == 'F')
{
 digitalWrite(AA2,LOW);
}

 if(caracter == 'G')
{
 digitalWrite(AA3,HIGH);
}

if(caracter == 'H')
{
 digitalWrite(AA3,LOW);
}

 if(caracter == 'I')
{
 digitalWrite(A4,HIGH);
}

if(caracter == 'J')
{
 digitalWrite(AA4,LOW);
}

 if(caracter == 'K')
{
 digitalWrite(AA5,HIGH);
}

if(caracter == 'L')
{
 digitalWrite(AA5,LOW);
}

 if(caracter == 'M')
{
 digitalWrite(D4,HIGH);
}

if(caracter == 'N')
{
 digitalWrite(D4,LOW);
}

 if(caracter == 'O')
{
 digitalWrite(D5,HIGH);
}

if(caracter == 'P')
{
 digitalWrite(D5,LOW);
}

 if(caracter == 'Q')
{
 digitalWrite(D6,HIGH);
}

if(caracter == 'R')
{
 digitalWrite(D6,LOW);
}

 if(caracter == 'S')
{
 digitalWrite(D7,HIGH);
}

if(caracter == 'T')
{
 digitalWrite(D7,LOW);
}

 if(caracter == 'U')
{
 digitalWrite(D8,HIGH);
}

if(caracter == 'V')
{
 digitalWrite(D8,LOW);
}

 if(caracter == 'X')
{
 digitalWrite(D9,HIGH);
}

if(caracter == 'Y')
{
 digitalWrite(D9,LOW);
}

 if(caracter == 'Z')
{
 digitalWrite(D10,HIGH);
}

if(caracter == 'W')
{
 digitalWrite(D10,LOW);
}

 if(caracter == 'a')
{
 digitalWrite(D11,HIGH);
}

if(caracter == 'b')
{
 digitalWrite(D11,LOW);
}

 delay(10);
}



Nenhum comentário:

Postar um comentário