Sensor dosador de sabão com arduino

Ola pessoal neste projeto irei mostrar a montagem básica e programação de um sensor dosador de sabão usando Arduíno como plataforma de processamento.
 Esse é um projeto bem simples e de baixo custo para automatizar o uso de sabão na sua casa, pode ser usado tanto para lavagens das mãos quanto na pia para louça, bastando apenas aproxima as mãos ou a espoja para que o sabão. O projeto e ainda um protótipo, o que o torna bem rustico e arcaico, enfim o mais importante e o funcionamento, vamos ao tutorial.







Para isto vamos utilizar um;
_ 1x Arduíno
_1x sensor ultrassônico .
_1x bomba d'água submersa de 5v.
_1 mini protoboard .
e fios jumpers.



Utilizamos uma protoboard pois o Arduíno só possui uma saída de  5v.
Conexões;
-Conecte o fio 5V do Arduíno na entrada VCC (+) do sensor ultrassônico e em um dos fios da bomba
-Conecte o fio GND do Arduíno na entrada GND do sensor ultrassônico e em um dos fios da bomba.
-Conecte o fio D13 do Arduino no fio que restou da bomba...
-Conecte o fio D7 do Arduino na entrada echo do sensor ultrassonico.
-Conecte o fio D8 do Arduino na entrada trig do sensor ultrassonico.

Coloque a bomba submersa em vasilhame ou copo com sabão liquido de preferencia um pouco diluído, coloque uma borrachinha na bomba para passagem do sabão conectada a uma haste, nesta mesma haste,na base superior coloque o sensor ultrassônico. 

Copie o código fonte abaixo para seu Arduíno.



//Inicio do código 

#define trig 8 //ligue o trig no pino 7
#define echo 7 //ligue o echo no pino 6
 int bomba = 13;
void setup() {
  Serial.begin (9600);
  pinMode(trig, OUTPUT); //Definição de pino sensor
  pinMode(echo, INPUT);  //Definição de pino sensor
  pinMode(bomba,OUTPUT); //Definição de pino bomba
}

void loop() {
  long duracao, distancia;
  digitalWrite(trig, LOW);  //pino trig é setado como LOW
  delayMicroseconds(2); // 2 microssegundos de delay

  digitalWrite(trig, HIGH); //pino trig setado como HIGH
  delayMicroseconds(10);  //10 microssegundos de delay
  digitalWrite(trig, LOW); //pino trig setado como LOW novamente
  duracao = pulseIn(echo, HIGH); 
  
  //}
  //Esse tempo retornado pela função pulseIn é o tempo entre a chamada e o pino entrar em HIGH
  //O valor retornado vem dobrado pois é o valor de ida e volta
  distancia = (duracao/2) / 29.1;


    //Serial.print(distancia);
    //Serial.println(" cm");
   if (distancia <18)  // Se a distancia for menor que 18 liga a bomba
   digitalWrite(bomba,HIGH);
   else
  digitalWrite(bomba,LOW); //Se não for desliga
   
  
  delay(500); //Delay
}


//Fim do codigo







Funcionamento
o sensor fara medições constantes da base superior da haste em que ele foi posicionado, e sempre que essa medição for menor que 18 centímetros a bomba sera acionada para despejar sabão, sempre que algum objeto ou a mão for posicionada abaixo do sensor a leitura sera inferior a 18 centímetros ocasionando o despejo de sabão.... 

Veja o vídeo de seu funcionamento abaixo.






Veja outro vídeo que criei abaixo, este não utiliza Arduíno, e ao invés do sensor ultrassônico utiliza sensor PIR .





Nenhum comentário:

Postar um comentário