Robot de equilibrado automático utilizando la visión por computadora

1

Estoy planeando implementar un Robot de Equilibrio Automático que generalmente se implementa utilizando un sensor de giroscopio que proporciona información al microcontrolador para ajustar la posición con las ruedas. Estoy buscando una opción para controlar el uso de Computer Vision (OpenCV). En primer lugar, mirando un proyecto similar Implementación del algoritmo PID usando visión por computadora Estoy convencido de que no es fácil de implementar sin las herramientas adecuadas y el buen concepto.

Tengo una placa Arduino Uno que usaré para controlar los motores de CC. Todavía tengo que decidir sobre la placa del Sistema Embebido que debería estar usando (principalmente basada en el procesador ARM, como Raspberry Pi, Beagleboard, etc.), la selección del procesador depende de la velocidad de la aplicación. Una cámara web en su mayoría, pero también estoy mirando a otras cámaras. CMUcam

El algoritmo de control utilizado será PID implementado en el Procesador. El cuadro enlazado es lo que pretendo usar para observar el cambio de movimiento y luego usar la corrección de errores a través de un puerto Ethernet o inalámbrico, dependiendo de la velocidad necesaria.

Por favor, comente sobre los inconvenientes y fallas del diseño.

SO del procesador: distro de Linux (Ubuntu o Debian), inicialmente pensé en RTOS (OS en tiempo real), pero creo que es demasiado complejo.

Necesitas tu valioso comentario.

    
pregunta Kishore Kumar

1 respuesta

1

He trabajado con robots de auto equilibrio en mi tesis de licenciatura y maestría. Ad hoc Veo estos problemas, que probablemente se interpondrán en tu camino.

  1. Los robots de equilibrio automático son inestables por definición. Debe recopilar datos de sus sensores (la cámara) lo suficientemente rápido para reaccionar a los cambios en la actitud del robot. Entonces, la pregunta es: ¿puede procesar la información de la cámara lo suficientemente rápido para estabilizar el sistema (tiempo muerto)?

  2. Gyros te dará la aceleración angular a lo largo del eje. Pero con tu cámara tienes algo que corresponde al ángulo. Para aclarar esto, no puede obtener la velocidad angular o incluso la aceleración angular con una sola imagen. Tienes que hacer un procesamiento basado en varias imágenes. Eso significa que necesitas más tiempo = > mayor tiempo muerto. Además, este procesamiento probablemente introducirá ruido, lo que complicará el diseño del controlador.

respondido por el PetPaulsen

Lea otras preguntas en las etiquetas