Para la octava práctica realizada en clase he realizado un detector de distancia que utiliza sonido. Éste envía una señal sonora por uno des sus altavoces y la recoge por el otro que mide la distancia según su posición. El modelo utilizado para medir distancia es el HC-SR04.
Aunque la práctica sea solamente medir la distancia respecto a un objeto, he decidido añadir una utilidad que no venía incluida y le puse un LED que se activase al detectar que la posición de un objeto es menor a una cierta distancia.
La prácica lleva un código parecido al siguiente:
const int EchoPin = 5;
const int TriggerPin = 6;
const int LedPin = 9;
void setup() {
Serial.begin(9600);
pinMode(LedPin, OUTPUT);
pinMode(TriggerPin, OUTPUT);
pinMode(EchoPin, INPUT);
pinMode(9,OUTPUT);
}
int ping(int TriggerPin, int EchoPin) {
long duration, distanceCm;
digitalWrite(TriggerPin, LOW);
delayMicroseconds(4);
digitalWrite(TriggerPin, HIGH);
delayMicroseconds(10);
digitalWrite(TriggerPin, LOW);
duration = pulseIn(EchoPin, HIGH);
distanceCm = duration * 10 / 292/ 2;
return distanceCm;
}
void loop() {
int cm = ping(TriggerPin, EchoPin);
Serial.print("Distancia: ");
Serial.println(cm);
delay(500);
digitalWrite(LedPin,HIGH);
if(cm<=20) {
digitalWrite(LedPin,HIGH);
}
else{
digitalWrite(LedPin,LOW);
}
}
y el montaje sería similar al siguiente en caso de que se omita la parte del LED:
No hay comentarios:
Publicar un comentario