20.4.11

EL FIN

20.4.11
Ayer 19 de abril de 2011, a las 8:11 PM, RJV11 tomó conciencia de si mismo. El juicio final se acerca.

7.4.11

Práctica 5 - Entorno simulado Gazebo y JDE

7.4.11
En esta práctica, nos centraremos en el simulador 3D Gazebo, ya que usaremos otro tipo de robot "virtual" ya que no siempre se puede comprar un robotito para hacer prácticas. También usaremos JDE, para poder desarrollar comportamientos para el robot.

En esta práctica, nuestro objetivo será que el robot siga la línea sin perderla y que lo haga en el menor tiempo posible, combinando ambas cosas.

[fotos, gazebo y jde]

Para ello usaremos la cámara del robot cómo recolector de información, lo que haremos será trabajar solo con una fila de píxeles por debajo de la mitad de la imagen. Sobre esa línea de píxeles detectamos donde comienza la línea y donde termina, calculamos el punto central de esos dos puntos y hallamos el error respecto de nuestro punto de equilibrio que se encuentra en el centro de la línea de píxeles. De esta forma, mediante un control P respecto del error cometido podemos centrar al robot en la línea dándole mayor o menor velocidad angular al robot, lo que provoca que nuestro robot gire con mayor o menor velocidad, y en un sentido u otro. Por ejemplo, si se acumula mucha cantidad de rojo en la parte derecha de nuestra muestra, ordenaremos al robot que gire hacia la derecha para no perder la línea, y viceversa.

Ejemplo del procesamiento de la linea de pixeles para obtener el error.

En el caso de que nuestro robot pierda la línea completamente de vista, su comportamiento está programado para que se pare y gire sobre si mismo. De esta manera en algún momento debería volver a encontrar la línea.

Mejorando los tiempo:

Un método que empleamos también es coger otra fila de píxeles por encima de la anterior fila de píxeles, y comparando el punto central de ambas filas podemos decidir que el robot vaya más o menos despacio, por ejemplo, si en las dos puntos hay rojo quiere decir que estamos centrados en la linea y esta es una recta, por lo que habrá que decirle al robot que acelere la marcha para minimizar el tiempo del recorrido, por el contrario si la fila de arriba no detecta rojo y la de abajo si es que vamos a tener que girar pronto por lo que disminuiremos la velocidad para no salirnos de la línea y tomar la curva con mayor control.A


Los puntos marcados son los comparados para determinar si estamos en una linea recta o no. En este caso así es, puesto que los dos puntos son rojos.
 
◄Design by Pocket, BlogBulk Blogger TemplatesThe Blog Full of Games;