Saltar al contenido
//

Bilim ve Teknoloji Üretmek İçin Buradayız!

Por que tu robot ve fantasmas? Ruido del sensor
Consejos y trucos 04.08.2026 👁 5

Por que tu robot ve fantasmas? Ruido del sensor

⏱️ Lectura estimada: 2 min

Le pasa a casi todos en robotica: construyes un buen robot que evita obstaculos. Codigo listo, cableado listo. Lo dejas en un pasillo vacio. Avanza contento y de pronto frena fuerte aunque no haya nada delante.

Miras sorprendido mientras actua como si hubiera chocado con una pared invisible. No se volvio loco. Vio un fantasma. El nombre tecnico es ruido del sensor (sensor noise).

El problema: enfoque ingenuo, sin filtro

Un sensor ultrasonico a veces da una muestra mala. Polvo, corriente de aire o un eco pueden hacer que una distancia real de 200 cm parezca 5 cm un instante.

En el codigo solemos confiar a ciegas en una sola lectura:

if (distancia < 10) {
  parar();
}

El robot entra en panico con ese falso 5 cm y se detiene. No hay obstaculo; solo un error de medida, ruido.

El truco: filtra con promedio

En la vida real no creemos una sola frase al instante. Si alguien dice que fuera hay 50 grados, no te quitas el abrigo de golpe; compruebas otra vez. Dale al robot la misma costumbre. Eso se llama filtrado. El metodo simple y eficaz: promediar.

Un robot inteligente no decide con una muestra. En milisegundos toma 5–10 lecturas seguidas. Ejemplo:

200, 200, 5, 202, 198

Ese unico 5 cm malo se diluye entre buenos valores. El promedio se queda cerca de la distancia real. Para por obstaculos reales, no por fantasmas.

int distanciaMedia() {
  long suma = 0;
  int n = 5;
  for (int i = 0; i < n; i++) {
    suma += leerDistancia();
    delayMicroseconds(2000); // pausa minima, no un sueno largo
  }
  return (int)(suma / n);
}

void loop() {
  int distancia = distanciaMedia();
  if (distancia > 0 && distancia < 10) {
    parar();
  } else {
    avanzar();
  }
}

Nota de taller: Deja un hueco muy corto entre muestras. Esta microespera no es la misma trampa que un delay(1000) largo que congela todo el loop. Tambien puedes montar la misma idea con millis().

Resumen

Un buen programador de robots no cree al instante cada valor del sensor. Filtra los datos con matematicas y solo para ante obstaculos reales. No hagas un cazafantasmas; ensenale a analizar las lecturas.

Esta pagina fue traducida por inteligencia artificial. Mustafa KARSLI no se responsabiliza de ningun error o dano derivado de la traduccion.

👨‍💻

Autor

Mustafa KARSLI

Profesor de Informatica

Comparte este contenido

Te fue util esta pagina?

Valora este articulo

Valora de 1 a 5 estrellas — ayuda a mostrar estrellas en Google.

/ 5 (0 votos)

Panel del alumno

Inicia sesion para guardar tu progreso.

Iniciar sesion

Acceso movil — Codigo QR

QR

Escanea con tu telefono

📚 Articulos relacionados

💬 Comentarios

Aun no hay comentarios.

Deja tu opinion

Los comentarios se publican tras la aprobacion del administrador. Se rechazan insultos, datos personales y anuncios.

Asistente biliMKurdu

Busqueda del sitio · analisis de codigo

🧩

Acertijo TIC del dia

Programlamada bir değeri saklamak ve sonradan kullanmak için kullanılan isimlendirilmiş alana ne denir?

🏆

Nuestros logros

👋 Quien soy?

Geleceğimiz gençlerimize Bilim ve Teknolojiyi Üretmeleri için yol göstermeliyiz. Bu minvalde vakit buldukça ücretsiz ders ve videolar hazırlayıp yayınlamaya çalışmaktayım....

Contacto →
📈

Estadisticas

En linea
2
Visitas totales 2.836.241