quarta-feira, 4 de maio de 2022

ACIONAMENTO DE LED’s UTILIZANDO BLUETOOTH

 



UNIVERSIDADE FEDERAL DE LAVRAS

DEPARTAMENTO DE ENGENHARIA

 

 

 

PROJETO DE FÍSICA EXPERIMENTAL I

 

 

 

ACIONAMENTO DE LED’s UTILIZANDO

BLUETOOTH

 

 

 

 

Mariana Alves da Silva - 201920712

Nathalia Luiza O. de Souza – 202020646

 

 

 

 

 

 

LAVRAS

2022

 

INTRODUÇÃO

 

O Arduino é uma plataforma a qual nos possibilita a criação e desenvolvimento de projetos eletrônicos por meio de códigos, módulos, sensores e outros artifícios. Através da junção destes, é possível realizar a criação de diferentes projetos.

 A Automação Residencial aplica a tecnologia como forma de facilitar o dia a dia do morador de uma residência, possibilitando a ele, por exemplo, ligar e desligar as luzes da casa sem a necessidade de ir até o interruptor para realizar essa ação, através de projetos criados utilizando a plataforma eletrônica.

 Além disso, esse tipo de aplicação pode auxiliar pessoas com mobilidade reduzida a ter mais facilidade em realizar pequenas ações do cotidiano, utilizando por exemplo, sensores que detectam movimentos mais simples, comandos de voz entre outros.

 

 

OBJETIVOS

O presente relatório de Projeto de Física Experimental I, do curso de ABI-Engenharias da Universidade Federal de Lavras (UFLA) tem como objetivo a realização de uma Automação Residencial utilizando comando de Bluetooth com o auxílio de um Arduino Uno.

 Através dele é possível gerar maior autonomia à portadores de alguns tipos de deficiência física, assim como um maior conforto, que pode se dar com a utilização de uma conexão via Bluetooth ao celular do usuário para que seja possível enviar os comandos aos LED`s.

 

 

MATERIAIS E ORÇAMENTO

 

MATERIAIS UTILIZADOS

·         Protoboard;

·         LED’s de cores diferentes;

·         Resistores de 220 ohms;

·         Jumpers;

·         Arduino Uno R3;

·         cabo USB para Arduino;

·         Módulo Bluetooth HC06;

·         Smartphone;

·         Fonte de alimentação.

  

ORÇAMENTO

No total, a realização do projeto foi:

 

MATERIAL

CUSTO

Protoboard

D

LED’s

D

Resistores

D

Jumpers

D

Arduino UNO

D

Cabo USB

D

Módulo HC06

R$40,00

Smartphone

D

Notebook

D

 

Onde “D” era tudo o que já havíamos disponibilizados pelo Laboratório de Projetos da UFLA e por integrantes do grupo. Sendo assim, o custo total do Projeto foi de R$40,00.

  

DESENVOLVIMENTO

 

Para o desenvolvimento do projeto se fez necessário uma pesquisa e busca aprofundada sobre o funcionamento de cada item a ser utilizado, assim como a coleta de dados apresentados pelo professor em sala de aula. 

 

CRONOGRAMA

           Com um prazo de 5 semanas, foi realizada a montagem do seguinte cronograma:

 

 

SEMANA

ATIVIDADE

 

Primeira

Apresentação do Pré - Projeto

R

Segunda

Primeira montagem do sistema e criação do código

A

Terceira

Primeiro teste de funcionamento e realização de ajustes

A

Quarta

Segunda testagem e últimos ajustes

A

Quinta

Apresentação final

R

 

Devido a necessidade de alteração (A) no cronograma, o projeto foi realizado seguindo a seguinte tabela:

 

SEMANA

ATIVIDADE

 

Primeira

Apresentação do Pré - Projeto

R

Segunda

Compra dos materiais necessários

R

Terceira

Primeira montagem do sistema e criação do código

R

Quarta

Testes de funcionamento e realização de ajustes

R

Quinta

Últimos testes e Apresentação final

R

 

Dessa forma realização (R) foi concluída com sucesso, seguindo o novo cronograma estabelecido. 

 

PROCEDIMENTO EXPERIMENTAL

Utilizamos a Protoboard para a montagem do protótipo, nela conectamos os LED’s, Resistores de 220 ohms, Jumpers. O Arduino Uno R3, assim como o cabo USB, foram utilizados para armazenamento e envio dos comandos e o Módulo Bluetooth HC06 para envio de sinal bluetooth e conexão ao Smartphone que enviou a ação que que deveria ser executada.

 Para que o sistema pudesse funcionar como desejado, foi criado um código com a utilização da linguagem C++. O código gerado para o funcionamento do sistema foi:

 


 // Projeto comando de voz

 

int LEDVermelho = 4;

int LEDVerde = 5; 

int LEDAmarelo = 6; 

int LEDAzul = 7;

int Txd=0;

int Rxd=1;

 

int estado=0;

void setup(){

     Serial.begin(9600);

     pinMode (4, OUTPUT);

     pinMode (5, OUTPUT);

     pinMode (6, OUTPUT);

     pinMode (7, OUTPUT);

 

}

void loop(){

     if (Serial.available()>0){

     estado = Serial.read();

    

}

     if (estado =='a'){

     digitalWrite (7, HIGH);

     digitalWrite (6, HIGH);

     digitalWrite (5, HIGH);

     digitalWrite (4, HIGH);

    Serial.print(estado);

}

 

     if (estado=='b'){

     digitalWrite (7, LOW);

     digitalWrite (6, LOW);

     digitalWrite (5, LOW);

     digitalWrite (4, LOW); 

      Serial.print(estado);

}

 

     if (estado =='A'){

     digitalWrite (7, HIGH);

     digitalWrite (6, HIGH);

     digitalWrite (5, HIGH);

     digitalWrite (4, HIGH);

    Serial.print(estado);

}

 

     if (estado=='B'){

     digitalWrite (7, LOW);

     digitalWrite (6, LOW);

     digitalWrite (5, LOW);

     digitalWrite (4, LOW); 

      Serial.print(estado);

}

 

     if (estado=='e'){

     digitalWrite (7, HIGH); 

    Serial.print(estado);

}

 

     if (estado=='j'){

     digitalWrite (7, LOW); 

      Serial.print(estado);

}

 

     if (estado=='E'){

     digitalWrite (7, HIGH); 

    Serial.print(estado);

}

 

     if (estado=='J'){

     digitalWrite (7, LOW); 

      Serial.print(estado);

}

 

     if (estado=='i'){

     digitalWrite (6, HIGH); 

    Serial.print(estado);

}

 

     if (estado=='x'){

     digitalWrite (6, LOW); 

      Serial.print(estado);

}

 

    if (estado=='I'){

     digitalWrite (7, HIGH); 

    Serial.print(estado);

}

 

     if (estado=='X'){

     digitalWrite (7, LOW); 

      Serial.print(estado);

}

 

     if (estado=='q'){

     digitalWrite (5, HIGH); 

    Serial.print(estado);

}

 

     if (estado=='h'){

     digitalWrite (5, LOW); 

      Serial.print(estado);

}

 

     if (estado=='Q'){

     digitalWrite (5, HIGH); 

    Serial.print(estado);

}

 

     if (estado=='H'){

     digitalWrite (5, LOW); 

      Serial.print(estado);

}

 

     if (estado=='u'){

     digitalWrite (4, HIGH); 

    Serial.print(estado);

}

 

     if (estado=='r'){

     digitalWrite (4, LOW); 

      Serial.print(estado);

}

 

     if (estado=='U'){

     digitalWrite (4, HIGH); 

    Serial.print(estado);

}

 

     if (estado=='R'){

     digitalWrite (4, LOW); 

      Serial.print(estado);

}

}



Onde:

·         “a” ou “A” acende todos os LED’s;

·         “b” ou “B” apaga todos os LED’s;

·         “e” ou “E” acende o LED Azul;

·         “j” ou “J” apaga o LED Azul;

·         “i” ou “I” acende o LED Amarelo;

·         “x” ou “X” apaga o LED Amarelo;

·         “q” ou “Q” acende o LED Verde;

·         “h” ou “H” apaga o LED Verde;

·         “u” ou “U” acende o LED Vermelho;

·         “r” ou “R” acende o LED Vermelho.

 

 

Para o envio do código ao Arduino, é essencial que o Módulo esteja desconectado do mesmo, evitando que o HC-06 possa ser queimado. Assim que o Uno recebe o código, é feito o desligamento da fonte de energia e conectado o módulo e, somente após isso, pode-se voltar a fornecer energia ao sistema.

             O próximo passo é conectar o Módulo ao Bluetooth do celular, utilizando um código de quatro dígitos (0000 ou 1234). Com a conexão devidamente realizada, os LED’s presentes no módulo param de piscar e ficam acesos, permitindo o envio dos comandos de voz.

             Após a testagem dos comandos e o funcionamento de acordo com o esperado, pode-se concluir o projeto.

  

ILUSTRAÇÃO DA MONTAGEM

            A montagem do circuito corresponde à ilustração abaixo, criada no Tinkercad:

 

 


          

RESULTADOS

 

            Obtivemos o acendimento dos LEDS através do programa criado, com o auxílio do sinal de bluetooth enviado pelo módulo HC-06, quando conectado a um smartphone.

 

            Esse resultado foi o esperado para o projeto e encontrado, seguindo o cronograma, o orçamento e as expectativas o grupo. Valendo ressaltar que ele também atingiu o principal objetivo estimado desde o princípio.

 

 

DISCUSSÃO

 

            Durante a realização do projeto, foram encontradas algumas dificuldades na criação e modificação do código, visto que o programa Arduino utiliza a linguagem C++. Essa dificuldade fez com que, após tentativas falhas,  houvesse uma pequena alteração em uma pequena parte da ideia inicial, que inclua o uso de falas para o acionamento dos LED`s.

            Mesmo com pesquisas, estudos e a busca de monitores para esclarecimento de dúvidas, não foi possível encontrar alguma variável que tornasse o uso de frases possível. Sendo assim, conseguimos, então, realizar a criação de um programa que aceitasse comando de voz, mesmo que não recebesse comandos longos como “acender LED Verde” e sim vogais e consoantes.

 

CONCLUSÃO

 

            Com o Arduino, existem inúmeras maneiras e modelos de realizar projetos que podem ter diversas funcionalidades para a vida humana, assim como auxiliar e facilitar o nosso dia a dia. Desta maneira, pode-se concluir que é válida a utilização do mesmo para o objetivo principal deste projeto, a automação residencial de maneira que facilite nas tarefas simples do dia a dia de pessoas que possuem mobilidade reduzida.

 

            Concluímos também que a criação e execução do programa requer demasiado conhecimento em relação a linguagem C++ e a falta do seu domínio básico pode causar extrema dificuldade na realização e conclusão do projeto.

 

            Por fim, pudemos notar a funcionalidade de cada um dos materiais usados durante a atividade, assim como atingir o objetivo principal da realização desse protótipo.

 

 

REFERÊNCIAS

 

            Como configurar o módulo bluetooth HC-06. Arduino e Cia, 2018 <https://www.arduinoecia.com.br/modulo-bluetooth-hc-06-jy-mcu-arduino/>. Acesso em 20/04/2022

 

            LEDs controlados por voz usando Arduino e Bluetooth. Basic Code, 2018. <https://basiccode.com.br/leds-controlados-por-voz-usando-arduino-e-bluetooth/>. Acesso em 20/04/2022