Site icon Blog Usinainfo

Dispenser Automático de Álcool Gel com Arduino e Sensor Ultrassônico

Dispenser Automático de Álcool Gel com Arduino e Sensor Ultrassônico

Dispenser Automático de Álcool Gel com Arduino e Sensor Ultrassônico

Hoje, vamos construir o circuito de um Dispenser de Álcool em Gel Automático e, para isso, iremos utilizar uma placa Arduino NANO e alguns componentes eletrônicos.

Especialistas da saúde e órgãos governamentais sempre recomendam mantermos uma certa higienização das mãos para, assim, evitar a propagação de diversas doenças que são transmitidas por contato físico direto.

Essa medida se intensificou por conta da chegada do Novo Corona Vírus e nunca esteve tão forte em 2020.

Acredita-se que mesmo após a vacinação em massa da população, estabelecimentos comerciais, empresas, hospitais e qualquer lugar que preza pela boa saúde irão manter essa medida por um bom tempo para garantir a segurança de todos os indivíduos.

Visto isso, optamos por trazer este tutorial para makers e entusiastas de projetos com Arduino para terem a chance de desenvolverem um protótipo de um Dispenser de Álcool em Gel que conta com duas versões diferentes neste tutorial:

  1. A primeira conta com uma mini bomba de água submersa JT100, e;
  2. A segunda conta com uma mini bomba de sucção de alto fluxo RS-385.

Talvez, após a construção deste projeto, você poderá fazer alguns testes em um ambiente comercial, hospitalar ou até mesmo em um ambiente fabril para fazer a validação do funcionamento e construir um projeto definitivo para fins comerciais.

E aí, o que achou da ideia?

Se interessou?

Então, fique no tutorial até o final para aprender a construir o seu próprio Dispenser de Álcool em Gel Automático!

 

Montagem do Projeto do Dispenser de Álcool em Gel

Como dito na introdução, o tutorial conta com dois tipos de mini bombas de água e, primeiro, iremos abordar a montagem da mini bomba de água submersa que conta com alguns componentes diferentes da segunda versão, como, transistor MOSFET e um diodo.

No entanto, para a montagem do dispenser, independentemente se for a versão 1 ou a 2, precisaremos ter os seguintes componentes necessários:

 

Montagem utilizando a Mini Bomba de Água Submersa JT100

Agora, para a primeira versão, precisaremos de:

Você irá notar na montagem esquemática do projeto, que está abaixo, que o circuito foi construído para ser bem simples na montagem e prático na alimentação dos componentes pois, tudo é feito através da fonte de 9V e inclusive, não precisa de nenhum tipo de cabo USB para ligar o Arduino Nano já que iremos utilizar o pino Vin para alimentá-lo.

Observe:

Dispenser Automático de Álcool Gel com Arduino e Bomba JT160

 

Veja que as conexões de cada componente com o Arduino são bem próximas. Então se atente ao seguinte:

  1. Ambos pinos positivos dos LED’s são conectados nos resistores que por sua vez são conectados nos pinos digitais 4 e 5 do Arduino;
  2. Já o jumper que vem do transistor MOSFET (saída de gate), que irá fazer o controle do Motor da Mini Bomba, você deve liga-lo no pino digital 2 da placa;
  3. Enquanto isso, você deve ter notado que o pino Trig do Ultrassônico deve ser conectado no pino D7 enquanto que, o pino Echo, no D6;
  4. Por fim, não se esqueça de energizar o Arduino através do Vin e do GND.

Além disso, note que todos os componentes estão aterrados através do GND do Arduino.

Observe também que, para alimentar a Mini Bomba, utilizamos a tensão vinda da fonte de 9V, sabe porque? Pois essa diferença de potencial de 9V irá fazer com que o motor tenha mais potência para expelir o alcool de dentro do recipiente, que você irá construir, para fora.

Agora, para mandar o sinal para a Mini Bomba ser acionada, note que aterramos o transistor Mosfet no GND do Arduino.

Já o diodo é usado aqui para permitir que a eletricidade flua apenas em uma direção (a direção de sua seta). Quando você desliga o motor, obtém um pico negativo de voltagem, que pode danificar seu Arduino ou o transistor.

O diodo protege contra isso, causando um curto-circuito em qualquer corrente reversa do motor.

 

Montagem utilizando a Mini Bomba de Água de sucção de alto fluxo RS-385

Ao utilizar a Mini Bomba de Água RS-385, não vamos precisar mais de diodo nem transistor Mosfet para acionar o motor já que o relé faz esse papel muito bem.

O relé é uma chave eletromagnética usada para acionar aplicações de alta voltagem através de sinais de baixa voltagem. Para ligar a bomba de água DC, estamos usando um módulo relé de 5V.

Então, a lista completa de todos os componentes necessários são aqueles já listados na seção ‘Montagem do Projeto do Dispenser de Álcool em Gel’ mais:

Veja a montagem utilizando essa Mini Bomba RS-385:

 

Dispenser Automático de Álcool Gel com Arduino e Bomba RS385

 

O mesmo vale para o aterramento, todos os componentes estão conectados no GND do Arduino enquanto que o Relé é alimentado, uma parte, pela fonte de 9V, que gera mais potência ao Motor, e a outra parte, conectada no regulador de tensão L7805C.

Mas, você deve estar se perguntando: qual é a diferença entre essas Mini Bombas de Água?

 

Utilização do Regulador de Tensão no Projeto

O regulador de tensão L7805C utilizado aqui no tutorial possui três terminais com uma tensão de saída fixa de 5V, o que o torna muito útil em uma ampla gama de aplicações.

Esse regulador pode fornecer tensões específicas para alimentar uma parte do circuito, eliminando os problemas de distribuição associados à regulação de ponto único.

Veja sua pinagem na ilustração abaixo:

Pinagem do Regulador de Tensão 7805

 

Onde temos:

  1. Esse pino é conectado no positivo da fonte de 9V;
  2. Já o negativo (GND) aterramos no Arduino e na Bomba de Água;
  3. Este é o pino que irá alimentar o circuito Ultrassônico, Relé e LEDs.

 

Diferença entre as Mini Bombas de Água do Dispenser de Álcool em Gel

 

Diferença Mini Bomba de Água JT100 e RS385

 

Para ver suas diferenças basta observar a tabela abaixo com as principais características entre essas duas Mini Bombas D’agua na tabela abaixo:

O papel do sensor ultrassônico é importantíssimo em nosso projeto, pois sem ele, as bombas iriam funcionar sem saber a distância que a pessoa está do dispenser.

Funciona assim: este componente utiliza das ondas sonoras ultrassônicas para detectar o objeto onde o transmissor do sensor transmite ondas ultrassônicas e o receptor do módulo recebe essas ondas ultrassônicas.

Com relação a utilidade dessas bombas, a JT100 é frequentemente utilizada em projetos menores como aqueles da área da Robótica: Robôs Bombeiros, Carrinhos Robóticos que utilizam as plataformas Arduino e ESP32 entre outros projetos de Elétrica e Eletrônica. Agora, a fim de se aprofundar nesse assunto, acesse o curso de robótica e aprenda mais sobre esse mundo da elétrica/eletrônica, inovação e tecnologia de forma online.

Já os projetos que podem ser feitos com a Mini Bomba RS-385, abrangem a Robótica Hidráulica, os Irrigadores Automáticos, Carrinhos Robóticos Bombeiros, entre outros projetos.

 

Código utilizado no Dispenser de Álcool em Gel

O Código completo e já comentado do Dispenser de Álcool em Gel, você encontra nas próximas linhas:
[crayon-6741cd9fc7302137719061/]
 

Código explicado passo a passo

const int trigPin = 7;

const int echoPin = 6;

const int motor = 2;

const int LED1 = 4;

const int LED2 = 5;

O primeiro a se fazer no código é criar as variáveis que representam os componentes eletrônicos do circuito utilizando não int, mas sim, const int.

A diferença entre int e const int é que int é leitura / gravação, enquanto que const int é somente leitura. Se você quiser que o compilador pegue tentativas inválidas de gravar em uma variável, declare como const int.

Se a variável precisa ser gravada, como uma que é usada à esquerda de um sinal de igual, então ela não deve ser const mas sim, float, int, etc.

 long duration;

float distance;

 Essas são as variáveis que serão utilizadas no cálculo da distância pelo sensor Ultrassônico.

 

void setup() {

  pinMode(trigPin, OUTPUT);

  pinMode(LED1, OUTPUT);   

  pinMode(LED2, OUTPUT);  

  pinMode(echoPin, INPUT); 

  pinMode(motor, OUTPUT);  

}

Dentro da função void setup () você deve declarar todas as variáveis correspondentes aos componentes eletrônicos como saída ou entrada.

No nosso caso, apenas o pino Echo do ultrassônico que será INPUT enquanto que o restante, será OUTPUT.

 

  digitalWrite(LED1, HIGH);

  digitalWrite(LED2, HIGH);

   digitalWrite(trigPin, LOW);

  delayMicroseconds(2);

  digitalWrite(trigPin, HIGH);

  delayMicroseconds(10);

  digitalWrite(trigPin, LOW);

  duration = pulseIn(echoPin, HIGH);

  distance = duration*0.034/2;

Dentro do void loop () teremos a repetição contínua da nossa lógica de programação onde ligará ambos LED’s e após isso, irá calcular a distância que o dispenser está da pessoa.

 

 int SomaMedidas = 0;

  int i, Media;

  for(i=0; i<5; i++){

    SomaMedidas = SomaMedidas + distance;    

    Media = (SomaMedidas / 5); 

  }

  distance = Media;

Após o cálculo da distância ter sido feita, é hora de escrevermos uma lógica que irá calcular a média dessa distância para que, a coleta de dados errôneos pelo sensor seja minimizada e a mini bomba apenas seja acionada na hora que de fato houver uma pessoa para higienizar as mãos em uma distância de 10 cm.

Fazemos isso calculando 5 distâncias diferentes e tirando a média final que será usada posteriormente para verificar a distância da pessoa ao sensor. Veja só:

if(distance<10){

      delay(1000);

      digitalWrite(motor, HIGH);digitalWrite(LED1, LOW); digitalWrite(LED2, LOW);

      delay(500);

      digitalWrite(LED1, HIGH); digitalWrite(LED2, HIGH);

      delay(100);

      digitalWrite(motor,LOW);

      delay(1500);

      digitalWrite(LED1, LOW); digitalWrite(LED2, LOW);

   }

Este if () será executado apenas se a pessoa estiver 10 cm de distância do sensor Ultrassônico. A lógica de programação usada dentro dessa função condicional é bastante simples: espera-se 1 segundo, liga o motor, desligam-se ambos LEDs, espera-se mais meio segundo, ligam-se ambos LED’s, espera-se 100ms, desliga-se o motor e após um segundo e meio, torna a desligar os LEDs.

 

Conclusão

Após ter montado o circuito com os componentes do projeto e ter compilado o programa para o Arduino, você provavelmente terá algo muito prático para usar em protótipos de totens ou modelos portáteis.

Vale notar que independente da mini bomba que for utilizar, o código utilizado é o mesmo.

Além disso, o código é totalmente flexível com relação ao tempo de execução de cada tarefa. Por exemplo se você quiser que o motor seja mais ágil, pode diminuir o tempo de espera que a pessoa fica na frente do sensor até conseguir higienizar as mãos que é de 1 segundo após o if ().

Ou também, você pode fazer com que apenas um LED acenda quando o sensor identificar a pessoa, e não ambos LED’s.

Ou seja, o código pode ser ajustado de acordo com cada aplicação e necessidade.

Portanto, você aprendeu hoje como fazer um Dispenser Automático de Álcool em Gel e Higienizador de mãos usando uma placa Arduino Nano.

Em caso de dúvida com relação ao projeto e tudo que foi explicado neste tutorial, sinta-se à vontade para perguntar na seção de comentários.

Sair da versão mobile