Páginas

Arduino BT Automatic Control



Arduino BT Automatic Control

Finder MAC Address BT;
Encontrar e Copiar o MAC Address; 
Conexão Automática com o Bluetooth;
Acionamento Automático através da Presença/Alcance Bluetooth -  Switches Relays ON/OFF 110V/220V;
Todos os Botões são Editáveis/Programáveis;
Modo Automático/Manual;
Modo Automático: Tudo sem pressionar nenhum botão apenas com sua presença dentro do alcance bluetooth.

Google Play: https://play.google.com/store/apps/details?id=appinventor.ai_antoniosergiosouzaalmeida.Arduino_BT_Automatic_Control


Youtube: https://www.youtube.com/watch?v=x-8vY-cK3_s&list=PL70c1gJPe5BoFwqwtUVcJKyBFJLGizq9o




Ícone de Apresentação:



Tela do Aplicativo:


Google Play: https://play.google.com/store/apps/details?id=appinventor.ai_antoniosergiosouzaalmeida.Arduino_BT_Automatic_Control

Youtube: https://www.youtube.com/watch?v=x-8vY-cK3_s&list=PL70c1gJPe5BoFwqwtUVcJKyBFJLGizq9o

Veja outros Apps. deste desenvolvedor:
https://play.google.com/store/apps/developer?id=Antonio+Sergio+Arduino


Localizador BT mostra e salva o MAC Address, controles ON/OFF 110/220V Todos os Botões são  Editáveis.

Código Arduino completo;
Localizador de MAC Address;
Conexão via Bluetooth de forma automática sem pressionar nenhum botão;
Acionamentos de forma manual ou automática;
Botão exclusivo para Pulso abertura de Porta ou Portão com fechadura elétrica;
Todos os botões são Programáveis/Editáveis;
Esquema de montagem com lista de materiais;
Operação passo a passo com fotos e vídeos;

Localizador de Bluetooth, mostra e salva o MAC Address no banco de dados do App;

- Controle com um botão modo automático, aciona um relé 110V/220V através da presença ou alcance do bluetooth ;
Desligamento automático quando se  afasta do Bluetooth.
Modo manual pode-se ligar ou desligar este mesmo dispositivo a qualquer momento.

- Controle com um botão para comando de Pulso para abrir ou fechar Portão ou Porta ON/OFF 110/220V pulsativo para fechadura elétrica.

- Dois botões de uso geral para acionamentos de dispositivos(lâmpadas, ventiladores, TV, som, etc.) ON/OFF 110/220V.

Todos os botões são editáveis e salvos no banco de dados do App., podemos escrever os nomes dos dispositivos a serem comandados.

Como Funciona o APP. Arduino BT Automatic Control:



Da primeira vez que for iniciar seu aplicativo, ligue antes o Bluetooth do smartphone e faça a montagem do Arduino com o Bluetooth, módulo de relés ou leds conforme descrito.

Acompanhe o vídeo e veja as fotos também pois é tudo muito simples.

Com o sistema montado faça a conexão com seu bluetooth e o Arduino(operação somente da primeira vez);
Pressione o botão "Connecting" ou "Not Connected", então irá aparecer uma lista dos bluetooths ativos, selecione o seu nesta lista e pronto!
O aplicativo irá mostrar e salvar o MAC Address no banco de dados do APP. e o botão "Connecting" mudará para "Connected", o botão do primeiro canal já fará um acionamento do Dispositivo1 "ON" no modo automático;
Quando você se afastar do Bluetooth  o App. perderá a conexão e depois de 10 segundos irá desativar seu Dispositivo "OFF";
Se você se aproximar novamente dentro do alcance do Bluetooth o App. fará nova conexão através do MAC que já está salvo no banco de dados  e acionará o Dispositivo1 de forma automática;

Tudo sem pressionar nenhum botão apenas com sua presença dentro do alcance bluetooth.

Veja Exemplo Figura Abaixo:




APP. - Arduino BT Automatic Control.

Capture the MAC Bluetooth Automatically and saved in the database of the App.
Automatic or manual control by proximity via bluetooth;
All buttons are programmable/editable.

Functions:

- Button "Not Connected": Capture and save the MAC Address Bluetooth;
Used only the first time or new MAC Address;

SWITCHES MODE:
- 1 x Switche Control ON/OFF mode Relay 110V/220V.
Activation in automatic by proximity via bluetooth; or manual mode, 
by button control ON/OFF;

- 1 x Switche Control ON/OFF in Pulse mode Relay 110V/220V.
Open and close electric lock gate;

- 2 x Switches Control ON/OFF mode Relay 110V/220V.
Manual mode.
 - Buttons Editables: All buttons are programable/editable;

- BUTTON LOCK/UNLOCK:Lock/Unlock Mode Editable Setting Names of the Devices.


Imagens do Aplicativo:










Pinagem Arduino Uno R3:

A0 - N/C;
A1 - N/C;
A2 - N/C;
A3 - N/C;
A4 - N/C;
A5 - N/C;
D0 - N/C;
D1 - N/C;
D2 - Bluetooth TX;
D3 - Bluetooth RX;
D4 - Relay mode ch1 - Device1 ON/OFF-110V/220V;
D5 - Relay mode ch2 - Device2 ON/OFF-110V/220V;
D6 - Relay mode ch3 - Device3 ON/OFF-110V/220V;
D7 - Relay mode ch4 - Device4 ON/OFF-110V/220V;
D8 - N/C;
D9 - N/C;
D10  N/C;
D11  N/C;
D12  N/C;
D13  N/C;

Esquema de ligações utilizando Leds: 





Código Arduino para acionamento didático com Leds:
/*
-------------------------------------------------------------------------------
APP. - Arduino BT Automatic Control.

Capture the MAC Bluetooth Automatically and saved in the database of the App.
Automatic or manual control by proximity via bluetooth;
All buttons are programmable/editable.

Functions:

- Button "Not Connected": Capture and save the MAC Address Bluetooth;
Used only the first time or new MAC Address;

SWITCHES MODE:
- 1 x Switche Control ON/OFF mode Relay 110V/220V.
Activation in automatic by proximity via bluetooth; or manual mode, 
by button control ON/OFF;

- 1 x Switche Control ON/OFF in Pulse mode Relay 110V/220V.
Open and close electric lock gate;

- 2 x Switches Control ON/OFF mode Relay 110V/220V.
Manual mode.
 - Buttons Editables: All buttons are programmable/editable;

- BUTTON LOCK/UNLOCK:Lock/Unlock Mode Editable Setting Names of the Devices.

ARDUINO UNO R3 - INPUT/OUTPUT PINS:

A0 - N/C;
A1 - N/C;
A2 - N/C;
A3 - N/C;
A4 - N/C;
A5 - N/C;
D0 - N/C;
D1 - N/C;
D2 - Bluetooth TX;
D3 - Bluetooth RX;
D4 - Relay mode ch1 - Device1 ON/OFF-110V/220V;
D5 - Relay mode ch2 - Device2 ON/OFF-110V/220V;
D6 - Relay mode ch3 - Device3 ON/OFF-110V/220V;
D7 - Relay mode ch4 - Device4 ON/OFF-110V/220V;
D8 - N/C;
D9 - N/C;
D10  N/C;
D11  N/C;
D12  N/C;
D13  N/C;
--------------------------------------------------------------------
*/



//--------------Inclusion of libraries---------------
#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3);

//------------Declaration of variables---------------
int ch1 = 4;
int ch2 = 5;
int ch3 = 6;
int ch4 = 7;
int contA = 0;
int contB = 0;

 void setup()
 {
 mySerial.begin(9600);//Initialize the serial on 9600 bps;

 pinMode(ch1, OUTPUT);//Pino digital  do Arduino(D4-ch1);
 pinMode(ch2, OUTPUT);//Pino digital  do Arduino(D5-ch2);
 pinMode(ch3, OUTPUT);//Pino digital  do Arduino(D6-ch3);
 pinMode(ch4, OUTPUT);//Pino digital  do Arduino(D7-ch4);
 }

 void loop()
{
 //-------Reading of the character by the serial---------
 char caracter = mySerial.read();

//-----Receives and character counts between 1 and 2-----
 if(caracter == 'A')
{
 digitalWrite(ch1,HIGH);//Liga led ch1(Arduino digital port D4);
 contA=0;//Zera a contagem;
}
 if(caracter == 'a')
{
 digitalWrite(ch1,LOW);//Desliga led ch1(Arduino digital port D4);
}
//-----------------------
 if(caracter == 'B')
{
 digitalWrite(ch2,HIGH);
 contB=0;//Zera a contagem;
}
// if(caracter == 'b')
//{
// digitalWrite(ch2,LOW);
//}
//-----------------------
 if(caracter == 'C')
{
 digitalWrite(ch3,HIGH);
}
 if(caracter == 'c')
{
 digitalWrite(ch3,LOW);
}
//-----------------------
 if(caracter == 'D')
{
 digitalWrite(ch4,HIGH);
}
 if(caracter == 'd')
{
 digitalWrite(ch4,LOW);
}
//-----------------------
 delay(100);//Delay para contagem de tempo.

 contA++;//Incrementa contagem;
 if(contA >= 100)// Tempo = 100msx100 = 10 segundos;
{
 digitalWrite(ch1,LOW);//Desliga Device1; 
 contA=0;//Zera a contagem;
}
//---------------------
contB++;//Incrementa contagem;
 if(contB >= 20)// Tempo = 100msx20 = 2 segundos, Device1; 
{
 digitalWrite(ch2,LOW);//Desliga Device1; 
 contB=0;//Zera a contagem;
}
//---------------------

}



Código Arduino para acionamentos com relés 110V/220V:
/*
-------------------------------------------------------------------------------
APP. - Arduino BT Automatic Control.

Capture the MAC Bluetooth Automatically and saved in the database of the App.
Automatic or manual control by proximity via bluetooth;
All buttons are programmable/editable.

Functions:

- Button "Not Connected": Capture and save the MAC Address Bluetooth;
Used only the first time or new MAC Address;

SWITCHES MODE:
- 1 x Switche Control ON/OFF mode Relay 110V/220V.
Activation in automatic by proximity via bluetooth; or manual mode, 
by button control ON/OFF;

- 1 x Switche Control ON/OFF in Pulse mode Relay 110V/220V.
Open and close electric lock gate;

- 2 x Switches Control ON/OFF mode Relay 110V/220V.
Manual mode.
 - Buttons Editables: All buttons are programmable/editable;

- BUTTON LOCK/UNLOCK:Lock/Unlock Mode Editable Setting Names of the Devices.

ARDUINO UNO R3 - INPUT/OUTPUT PINS:

A0 - N/C;
A1 - N/C;
A2 - N/C;
A3 - N/C;
A4 - N/C;
A5 - N/C;
D0 - N/C;
D1 - N/C;
D2 - Bluetooth TX;
D3 - Bluetooth RX;
D4 - Relay mode ch1 - Device1 ON/OFF-110V/220V;
D5 - Relay mode ch2 - Device2 ON/OFF-110V/220V;
D6 - Relay mode ch3 - Device3 ON/OFF-110V/220V;
D7 - Relay mode ch4 - Device4 ON/OFF-110V/220V;
D8 - N/C;
D9 - N/C;
D10  N/C;
D11  N/C;
D12  N/C;
D13  N/C;
--------------------------------------------------------------------
*/



//--------------Inclusion of libraries---------------
#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3);

//------------Declaration of variables---------------
int ch1 = 4;
int ch2 = 5;
int ch3 = 6;
int ch4 = 7;
int contA = 0;
int contB = 0;

 void setup()
 {
 mySerial.begin(9600);//Initialize the serial on 9600 bps;

 pinMode(ch1, OUTPUT);//Pino digital  do Arduino(D4-ch1);
 pinMode(ch2, OUTPUT);//Pino digital  do Arduino(D5-ch2);
 pinMode(ch3, OUTPUT);//Pino digital  do Arduino(D6-ch3);
 pinMode(ch4, OUTPUT);//Pino digital  do Arduino(D7-ch4);
 //Devido a lógida invertida de acionamento dos relés,
 //devemos iniciar os canais ch1, ch2, ch3 e ch4 
 //com nível alto 5V(HIGH) como segue abaixo;
 //Módulo relé atua com lógica invertida:
 //Entrada do módulo relé em nível lógico "0V":Bobina Energizada;
 //Contato N/A(N/O)>>Fecha contato;
 //Entrada do módulo relé em nível lógico "5V":Bobina Desernegizada;
 //Contato N/A(N/O)>>Abre contato;
 //Então iniciamos os relés com os contatos abertos, tudo desligado.
 digitalWrite(ch1,HIGH);
 digitalWrite(ch2,HIGH);
 digitalWrite(ch3,HIGH);
 digitalWrite(ch4,HIGH);
 }

 void loop()
{
 //-------Reading of the character by the serial---------
 char caracter = mySerial.read();

//-----Receives and character counts between 1 and 2-----
 if(caracter == 'A')
{
 digitalWrite(ch1,LOW);//Liga relé ch1(Arduino digital port D4);
 contA=0;//Zera a contagem;
}
 if(caracter == 'a')
{
 digitalWrite(ch1,HIGH);//Desliga relé ch1(Arduino digital port D4);
}
//-----------------------
 if(caracter == 'B')
{
 digitalWrite(ch2,LOW);
 contB=0;//Zera a contagem;
}
// if(caracter == 'b')
//{
 //digitalWrite(ch2,HIGH);
//}
//-----------------------
 if(caracter == 'C')
{
 digitalWrite(ch3,LOW);
}
 if(caracter == 'c')
{
 digitalWrite(ch3,HIGH);
}
//-----------------------
 if(caracter == 'D')
{
 digitalWrite(ch4,LOW);
}
 if(caracter == 'd')
{
 digitalWrite(ch4,HIGH);
}
//-----------------------
 delay(100);//Delay para contagem de tempo;

 contA++;//Incrementa contagem;
 if(contA >= 100)// Tempo = 100msx100 = 10 segundos, Device1; 
{
 digitalWrite(ch1,HIGH);//Desliga Device1; 
 contA=0;//Zera a contagem;
}
//-----------------------
contB++;//Incrementa contagem;
 if(contB >= 20)// Tempo = 100msx20 = 2 segundos, Device1; 
{
 digitalWrite(ch2,HIGH);//Desliga Device1; 
 contB=0;//Zera a contagem;
}
//----------------------


}



Esquema de ligações com Relés, basta seguir a mesma ligação acima, substituindo os leds por relés;
Então saída digital do Arduino D4 - D5 - D6 e D7 ligar no módulo relé em (IN1-IN2-IN3-IN4).

Como Utilizar Módulo de Relés:
O módulo relé possui uma lógica invertida quando desejamos acionar ou energizar a bobina no relé precisamos colocar nível "0V' na entrada do módulo relé(lógica invertida) com isso um contato normalmente aberto é fechado de forma correta.



Repita estas ligações para os 4 Dispositivos a serem acionados através dos Relés(IN1-IN2-IN3-IN4).

Pinagem de saída Arduino:D4-D5-D6-D7.

Obs.: Alimentação utilizar uma fonte de 5V/2000mA


Utilizar os contatos do relé (Comum - N/A) para fazer os acionamentos entre a carga e a rede AC.

Exemplo ligação com uma Lâmpada  em rede de 110V:



Repita estas ligações para os 4 Dispositivos a serem acionados através dos Relés(IN1-IN2-IN3-IN4).
Pinagem de saída Arduino:D4-D5-D6-D7.

Se você preferir poderá utilizar um módulo com 4 relés:



Atenção para o risco de choque elétrico, utilize cabos dimensionados pela capacidade de corrente;
Utilize sempre Disjuntores ou fusíveis para cada Dispositivo a ser acionado.



Lista de Materiais:

Arduino Uno R3.





Módulo Bluetooth JY-MCU.



Módulo relé com 1, 2 ou 4 relés.





Fonte de Alimentação:

1ª- Opção: Fonte de alimentação para o Arduino 5V/2A com saída USB:
Obs1.: Corrente de 2A devido à alimentação do Arduino e Módulo de relés.
Obs2.: Aquecimento reduzido pois 5V da fonte já está na tensão de operação do sistema todo.


2ª- Opção:Fonte de alimentação para o Arduino 9V/2A com saída P4:
Obs1.: Corrente de 2A devido à alimentação do Arduino e Módulo de relés.
Obs2.: Esta opção gera um Aquecimento maior na placa Arduino devido à tenão da fonte de 9V passar por um regulador de tensão de 5V existente na placa Arduino  para alimentar todo o sistema.



Protoboard para montagens:



Leds para montagem didática e verificação de funcionamento:
Resistores para ligar aos leds e limitar a corrente em 20mA:


Fios Jumpers - Macho/Macho, Fêmea/Fêmea e Macho/Fêmea:

Cabo USB - tipo A/tipo B para ligação entre Arduino e PC:



Google Play: 

Youtube:

Nenhum comentário:

Postar um comentário