odómetro óptico

0

Para mi dispositivo que se mueve por encima de la superficie (vías ferroviarias) necesito medir la distancia recorrida. Hasta ahora he estado usando una rueda con IRC (sensor rotativo incremental). Para simplificarlo, me gustaría usar algún tipo de sensor óptico que escanee la superficie.

He visto algunas ideas utilizando sensores ópticos de mouse para la medición de distancia, sin embargo, no me queda claro dónde tomaría la referencia para determinar la distancia real por la cual el sensor se ha movido sobre la superficie.

¿Hay tal sensor óptico?

    
pregunta user2165039

3 respuestas

1

Sí. Se llama sensor de flujo óptico. También hay una comunidad de código libre (no segura) que desarrolla y vende dicho dispositivo. enlace

enlace

Por ejemplo, puede montar la cámara en la parte superior del vagón de ferrocarril con una distancia conocida del suelo e iluminar la superficie con una lámpara LED (si desea medir con poca luz). Dicha configuración será más precisa si la superficie no es plana, todo lo que tiene que hacer es usar la lente con más aumento. Más altura - > más aumento - > mejor precisión.

Pero puede hacerlo desde cero utilizando un sensor óptico de mouse con lente adaptada.

    
respondido por el Marko Buršič
0

Un sensor de desplazamiento necesitará un punto de referencia fijo para medir y recopilar datos repetibles. Si solo tienes una pista lineal, esto podría funcionar, pero espero que ese no sea el caso. Una forma común de abordar esto es un codificador. Un encoder rotativo óptico montado en una de las ruedas funcionaría bien, es económico y robusto.

Una alternativa es un codificador lineal. Se utilizan cuando desea eliminar cualquier fuente de error al convertir de la medición rotacional a la distancia real recorrida. En lugar de tener una cuadrícula que mide cada rotación, se mide contra una cuadrícula lineal que recorre todo el recorrido del viaje. Estos son extremadamente precisos y también un poco más costosos.

Dadas todas estas restricciones, un mejor codificador rotatorio parece ser la mejor opción.

    
respondido por el Mark
0

la detección óptica que se encuentra en los ratones generalmente no es mucho más que tomar fotografías sucesivas del suelo con una cámara de baja resolución y correlacionarlas (desplazándolas entre sí) hasta que haya encontrado una coincidencia máxima. Eso te da una cantidad de desplazamiento de píxeles.

A partir de ese desplazamiento de píxeles, con la distancia fija entre la cámara y la superficie, es fácil inferir una distancia recorrida.

Ahora, para las vías férreas, espero que haya alguna variación en la distancia entre el sensor óptico y la tierra. (suspensiones, diferentes estados y forma del suelo); por lo que necesitará tanto un sistema para medir la distancia instantánea entre el sensor y el suelo como el desplazamiento de píxeles.

Eso debería ser fácil de construir utilizando dos cámaras montadas a una distancia fija una al lado de la otra, y bibliotecas de procesamiento de imágenes muy comunes (OpenCV viene a la mente, que es gratuita y es un estándar de facto en su disciplina). Las dos cámaras le darán información sobre la profundidad, y luego podrá usar las imágenes de la cámara y las herramientas para calcular el flujo óptico entre imágenes sucesivas para medir la distancia recorrida.

Si ya está familiarizado con OpenCV, y tiene dos cámaras web por ahí, suena como un proyecto de dos días para presentar una prueba de concepto. Conseguir que dos cámaras sean perfectamente sincrónicas y lo suficientemente rápidas, en un recinto lo suficientemente resistente para uso ferroviario, que también contenga la plataforma de computación, y con la iluminación adecuada, por otra parte, suena como una tarea de desarrollo de productos completamente desarrollada.

Si no puede, por razones mecánicas, tener dos cámaras, una cámara podría ser suficiente, si conoce el ancho de los rieles, puede usar ese ancho en las imágenes para calibrar continuamente la altura de la cámara y luego usar la altura calculada para el desplazamiento del píxel a la relación de distancia del mundo real.

En cualquier caso, diviértete calibrando cosas :)

También puedes usar algo como un sensor de pasillo montado cerca del riel o las ruedas, e inferir la velocidad de las señales que observas con eso, o más bien, de la derivada de ellas, muy fácilmente.

    
respondido por el Marcus Müller

Lea otras preguntas en las etiquetas