quarta-feira, 16 de janeiro de 2013

Arduino - Sensor de estacionamento

Vamos fazer o nosso sensor de estacionamento !

Voce vai precisar de :
1-Arduino 
1-Sensor de ultrasom 
3-Leds (verde,amarelo,vermelho)
1-buzzer pieso 
1-protoboard
Jumpers .

E mãos a obra ! 

No mercado existem varios tipos de sensor ultrasonico.
Vamos utilizar o que tem a resposta do som por eco ,ou seja o pino serial não será utilizado .
Sua ligação é feita conforme a imagem ao lado , o pino eco vai ligado ao pino numero 7 do Arduino .

Ligação dos Leds indicativos , eu usei todos brancos , mas nada impede de usar a clássica seqüência de verde , amarelo e vermelho .
Ambos ligados ao GND comum e cada qual com o seu jumper ,
no caso a seqüência de ligação é o fio laranja na porta de numero 6 , o fio branco do meio , na porta 5 e o outro branco na porta 4 .
não se esqueça de ligar a barra comum no  GND do Arduino .


O buzzer , retirei de um antigo pc . funciona perfeitamente , é polarizado fique atento ao lado positivo  que deverá estar ligado ao pino de numero 8 do Arduino , e o outro terminal ao GND .


Tudo devidamente ligado , vamos a programação .





const int pingPin = 7;
int verde=4;
int amarelo=5;
int vermelho=6;


void setup() {
  Serial.begin(9600);
}

void loop()
{
  long duration, inches, cm;
  pinMode(pingPin, INPUT);
  duration = pulseIn(pingPin, HIGH);
  cm = microsecondsToCentimeters(duration);
  Serial.print(cm);
  Serial.println("cm");
  delay(10);
if(cm <=120 && cm>=87){ 
    digitalWrite(verde, HIGH);
    tone(8,5);
    delay(500);
    digitalWrite(verde, LOW);
    noTone(8);
}
if(cm <=87 && cm>=54){
   digitalWrite(verde, HIGH);
    digitalWrite(amarelo, HIGH);
    tone(8,10);
    delay(250);
    digitalWrite(amarelo, LOW);
    digitalWrite(verde, LOW);
    noTone(8);  
}
if(cm <=54 && cm>=20){
   digitalWrite(verde, HIGH);
    digitalWrite(amarelo, HIGH);
    digitalWrite(vermelho, HIGH);
    tone(8,10);
    delay(150);
    digitalWrite(amarelo, LOW);
    digitalWrite(verde, LOW);
    digitalWrite(vermelho, LOW);
    noTone(8);
      
}}


long microsecondsToCentimeters(long microseconds)
{
  return microseconds / 29 / 2;
}


Abra o monitor serial do seu arduino e veja a distancia que o seu sensor está retornando.




10 comentários:

  1. amigo dá para disponibilizar o esquema eletrônico para gilson7@oi.com.br

    ResponderExcluir
  2. Vc poderia disponibilizar o esquema do circuito ? felipescope@me.com

    ResponderExcluir
    Respostas
    1. Voce quer o que ?? Um circuito para colocar em uma placa ??

      Excluir
  3. vc tem o esquema eletrico?

    ResponderExcluir
  4. Olá você poderia enviar o esquema do circuito para o meu email , luiz.ribeiro@ee.ufcg.edu.br

    ResponderExcluir
  5. Olá você poderia me enviar o esquema do circuita por email? Se sim, o email é giovanamaia77@gmail.com
    Obrigada, desde já.

    ResponderExcluir
  6. Eu gostaria de ter este circuito, vc pode mandar via E_Mail jbellneto@gmail.com, desde já agradeço.

    ResponderExcluir
  7. Você pode Mandar o esquema elétrico pro meu e-mail felipeportodeoliveira@hotmail.com

    ResponderExcluir
  8. parabens pelo post.
    gostaria de saber como faço quando tenho duas condiçoes .
    ex distancia menor que 50 cm e tempo que o objeto permaneceu na frente do sensor superior a 3 s.
    obrigado

    ResponderExcluir