Or-bit fase 3


Or-bit fase 3

HC-SR04

Se eligió este modulo gracias a la facilidad que nos permite para configurar la transmisión y la recepción ya que esto se encuentra contenido en el PCB. Ya que el usuario solamente debe enviar un pulso de disparo y medir el tiempo en el que regresa el impulso como respuesta. ya que solamente se requieren 4 hilos para completar la interfaz con el módulo de sensor HC-SR04.

Características del sensor ultrasónico HC-SR04 Alimentación de 5 volts. Interfaz de cuatro hilos (vcc, trigger, echo, GND). Rango de medición: 2 cm a 400cm. Corriente de alimentación: 1.5mA. Frecuencia de pulso: 40Khz. Apertura del pulso ultrasónico: 15°. Señal de disparo: 10us. Dimensiones del módulo: 45x20x15mm.

En este caso estaremos usando el sensor HC-SCR04, para calcular la distancia a un obstaculo, usando su trigger para generar un pulso de 10us que va a ir hasta el obstaculo, rebotar y ser leido por el pin Echo, almacenara este valor en una variable llamada duración en unidad de tiempo, que posteriormente sera convertida a unidades de distancia, especificamente cm, mediante la fórmula: (duracion/2) / 29, que se establece teniendo en cuenta el recorrido del pulso que se realiza 2 veces (ida y vuelta) y la velocidad del sonido. Una vez calculada la distancia en cm, la evaluaremos en ciertas condiciones, ejemplo: cuando distancia es menor o igual a 15cm, encender un led, o un motor, etc.

codigo de programacion


void setup() { pinMode(pecho, INPUT); // define el pin 2 como entrada (pecho) pinMode(ptrig,OUTPUT); // define el pin 3 como salida (ptrig) pinMode(ledVerde,OUTPUT); pinMode(ledRojo,OUTPUT); } void loop() { digitalWrite(ptrig, HIGH); // genera el pulso de trigger por 10us delay(0.01); digitalWrite(ptrig, LOW); duracion = pulseIn(pecho, HIGH); // Lee el tiempo del Echo distancia = (duracion/2) / 29; // calcula la distancia en centimetros delay(10); if (distancia <= 15){ if (distancia <= 5){ // si la distancia es menor de 15cm digitalWrite(ledRojo,HIGH); // Enciende LED } digitalWrite(ledVerde,HIGH); // Enciende LED } else{ digitalWrite(ledVerde,LOW); digitalWrite(ledRojo,LOW); }

diagrama de flujo









el diagrma de flujo funciona como un ciclo que se repite contantemente, dependiendo del valor de duracion que se le asigne a la variable de duracion, el sistema eligira entre valores mayores a 880 como (no) y valores menores a 870 como (si), en caso de que el valor este por ecncima de la distancia de 5cm y menor de 15cm se encendera solo el ledverde, en caso de ser menor a 5cm se enciende los ledVerde y ledRojo al mismo tiempo.

diagrama bloques



evidencia fotografica del robot





Comentarios

Entradas populares de este blog

Robot laberinto Kastelean

Fase 4 Robot seguidor de linea

FASE 2 ROBOT SEGUIDOR DE LINEA