Páginas

miércoles, 10 de febrero de 2021

Práctica 9 - sensor coche

 Práctica 9 - sensor de coche 

En esta práctica he diseñado un sensor de coches con un sensor de ultrasonidos que según se valla acercando a un obstáculo empieza a pitar y se encienden unos leds. 

long distancia; // definimos la distancia para cuando pitara y el tiempo, así como los leds, el zumbador y el ultrasonido.

long tiempo;

int pinTrig=9;

int pinEcho=8; 

int ledV=2;

int ledA=3;

int ledR=4;

int zum=13;


void setup(){

  Serial.begin(9600);

  pinMode(pinTrig, OUTPUT);  // declaramos el ultasonido como entrada y los leds como salidas.

  pinMode(pinEcho, INPUT);

  pinMode(ledV, OUTPUT);

  pinMode(ledA, OUTPUT);

  pinMode(ledR, OUTPUT);

  pinMode(zum, OUTPUT);

}


void loop(){

  digitalWrite(pinTrig,LOW); // decimos que un pin del ultrasonido este bajo debe esperar y el otro que está alto también debe esperar un tiempo. 

  delayMicroseconds(5);

  digitalWrite(pinTrig, HIGH);

  delayMicroseconds(5);

  tiempo=pulseIn(pinEcho, HIGH);  

  distancia= int(0.017*tiempo);

  Serial.println("Distancia "); // le decimos que nos lo debe imprimir en la pantalla con la palabra distancia y los centímetros de distancia que existe.

  Serial.println(distancia);

  Serial.println("cm");

  delay(1000);

  noTone(zum);


if (distancia>30) // declaramos que si la distancia es a 30cm se encienda el led verde y no pite

{

  digitalWrite (ledV, HIGH);

  digitalWrite (ledA, LOW);

  digitalWrite (ledR, LOW);

  noTone(zum); 

}

else {

  

  if (distancia<30&& distancia>10)  // ahora si la distancia está entre 30 y 20 debe encender el led amarillo y sonar un poco.

  {

  digitalWrite (ledV, LOW);

  tone (zum,300);

  digitalWrite (ledA, HIGH);

  }


else { // por últitmo si la distancia es menor que 10 debe encenderse el led rojo y pitar. 

  digitalWrite (ledV, LOW);

  digitalWrite (ledA, LOW);

  digitalWrite (ledR, HIGH);

  tone (zum,2000);

     }

}}

No hay comentarios:

Publicar un comentario