jueves, 11 de marzo de 2010

Práctica 3 - Navegación local evitando obstáculos

Seguimos avanzando con Roboticly, en esta práctica probaremos una nueva arquitectura en la cual se podrán realizar programas semi-complejos, con la implementación de comportamientos.
Se tendrán diferentes comportamientos, con prioridades determinadas y dependiendo de situaciones de entrada, se optará por uno u otro, de esta forma, nos permite jerarquizar y modularizar los objetivos.

Evitar obstáculos con Sensor de Tacto:
El robot debe de chocar contra un obstaculo (una lata), y dependiendo que sensor de choque lo haga, realizara un arco para la derecha o izquierda recuperando su trayectoria. Mostramos el vídeo:



Evitar obstaculos con sensor de ultrasonido:
Para evitar las latas ahora, nos basaremos en el algotimo de vector de fuerzas virtuales, comportamiento es sencillo de comprender pero bastante dificil de implementar, debido a los impedimentos fisicos que nos ponen los sensores.
El algoritmo empieza cuando se ve un objeto a una cierta distancia mínima, en ese momento se obtiene tanto la distancia a la que está, y a que dirección está del robot, una vez con ésto, se irán calculando los vectores de repulsión (proporcional a la distancia), y sumandolo con el vector de dirección, obtendremos una resultante, a la cual mandaremos al robot, este proceso se repite hasta que se ha superado por completo el obstáculo y se retoma la dirección adecuada. Mostramos el vídeo:



Comportamiento de ir hacia la luz:
Primero calibramos los valores altos y bajos del umbral de los sensores, para asi hacer este comportamiento genérico a cualquier escenario.Una vez con esto, nuestro robot tomara rumbo a la luz segun la intensidad luminosa llegue a uno u a otro sensor, realizando cambios bruscos si el desnivel entre un sensor y otro es demasiado, y poco a poco si la diferencia entre sensores es pequeña. Mostramos el vídeo:




Comportamiento de ir hacia la luz evitando obstáculos:
Por último, combinaremos los comportamientos de ir hacia la luz, con el de evitar obstaculos con sensores de tacto, asi, nuestro robot ira hacia la luz, y si ve un obstáculo lo esquivara, y despues retomara rumbo hacia la luz. Se implementara alternando comportamientos en diferentes casos, con distintas prioridades. Mostramos el vídeo:

No hay comentarios:

Publicar un comentario