AMB electrónica Bolivia

Proyecto básico: Sensor de Distancia Ultrasónico

El sensor ultrasónico es una herramienta versátil que permite medir distancias de forma precisa sin contacto físico, ideal para proyectos de robótica, domótica, alarmas y vehículos autónomos. En este artículo aprenderás cómo usar el sensor PING))) o HC-SR04 con Arduino UNO para detectar la distancia de objetos.


🧰 Materiales necesarios


🔌 Conexiones

Basado en la imagen del montaje:

PING)))Arduino UNO
GNDGND
5V5V
SIGPin 7
sensor de distancia con ultrasonico

 

💻 Código Arduino

Este código mide la distancia en centímetros utilizando el sensor ultrasónico y muestra los resultados en el monitor serial:

				
					const int pinSensor = 7;  // Pin de señal del sensor PING
long duracion;
int distancia;

void setup() {
  Serial.begin(9600);
  pinMode(pinSensor, OUTPUT);
}

void loop() {
  // Enviar pulso ultrasónico
  pinMode(pinSensor, OUTPUT);
  digitalWrite(pinSensor, LOW);
  delayMicroseconds(2);
  digitalWrite(pinSensor, HIGH);
  delayMicroseconds(5);
  digitalWrite(pinSensor, LOW);

  // Cambiar pin a entrada para recibir el eco
  pinMode(pinSensor, INPUT);
  duracion = pulseIn(pinSensor, HIGH);

  // Calcular la distancia en cm (dividir entre 29*2)
  distancia = duracion / 29 / 2;

  Serial.print("Distancia: ");
  Serial.print(distancia);
  Serial.println(" cm");

  delay(500);
}
				
			

¿Cómo funciona?

El sensor ultrasónico emite un pulso de sonido inaudible que rebota contra un objeto y vuelve al sensor. Midiendo el tiempo que tarda en regresar, se calcula la distancia. Este tipo de sensores es ideal para evitar obstáculos en robots o controlar niveles en recipientes.

 Aplicaciones comunes

  • Robótica móvil (evitar obstáculos)

  • Alarmas de proximidad

  • Estacionamiento asistido

  • Drones con sensores frontales

  • Medición de niveles de líquido sin contacto

Conexiones para HC-SR04

HC-SR04Arduino UNO
VCC5V
GNDGND
TRIGPin 9
ECHOPin 10

💻 Código modificado para HC-SR04

				
					const int trigPin = 9;
const int echoPin = 10;
long duracion;
int distancia;

void setup() {
  Serial.begin(9600);
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
}

void loop() {
  // Enviar pulso ultrasónico
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  // Medir duración del eco
  duracion = pulseIn(echoPin, HIGH);

  // Calcular distancia en centímetros
  distancia = duracion / 29 / 2;

  Serial.print("Distancia: ");
  Serial.print(distancia);
  Serial.println(" cm");

  delay(500);
}

				
			

Nota adicional

El cálculo de distancia funciona igual, ya que ambos sensores usan ultrasonido y el tiempo de eco para estimar la distancia. Solo cambia la forma en que se controla el sensor.

Recomendación

Si estás empezando, el HC-SR04 puede ser más accesible económicamente y fácil de encontrar. Ambos sensores son confiables, pero asegúrate de alimentar siempre con 5V y evitar exponerlos a golpes o humedad.

Scroll al inicio