martes, 20 de enero de 2009

PRACTICA - VFF

Según lo que hemos visto en clase la navegacion vff es aquella en la que el robot está sometido a un campo potencial, donde el punto de destino del robot ejerce una fuerza de atraccion (Fa) sobre el robot y los obstáculos generan una fuerza de repulsion (Fr) sobre el robot, por lo que se moverá en la dirección de la fuerza total (Ft):
A continuacion explicaremos como hemos calculado cada una de estas fuerzas:


Fuerza de Atraccion (Fa)

Fa=Katraccion (origen-destino)
(origen-destino)= Xf-Xo+ Yf-Yo

Si Xo,Yo=0
(origen-destino)= Xf - Yf
Fa=Katraccion (Xf-Yf)





Fuerza de Repulsion (Fr)
Detectamos una fuerza de repulsion cuando el laser detecta una barrera a una distacia de 1000, si el obstaculo está más lejos, éste no generará ninguna fuerza de repulsión.

El cálculo de la fuerza de repulsion lo hemos realizado a traves de la siguiente formula:
Fr=sum(Fr(i))K/dist_obstaculo
La constante K ha sido elegida a través de las prueba realizadas con el entorno, el valor de K es 18000


Fuerza Total (Ft)
Ft=Katraccion*Fa + Krepulsion*Fr ------ Katraccion= 1-Krepulsion [0-1]


Algoritmo del movimiento
El algoritmo de movimiento lo hemos calculado basándonos en la diferencia entre el ángulo formado por la fuerza total y el que formal a posición del robot. Si esta resta es positiva el giro será positivo y en otro caso será negativo.
Las velocidades del robot también las hemos dado en función de la resta de ángulo, es decir, cuanto más lejos del robot nos encontremos, más rápido será el giro y cuanto más nos acerquemos al destino más despacio nos moveremos

Videos

Acontinuacion podeis observar un video del funcionamiento del VFF. En el video el robot va más rápido de lo que va en realidad.




Podeis ver el video con mayor calidad pinchando en este enlace

1 comentario:

  1. Hola! estoy cursando una asignatura de robots autónomos y tengo que implementar el algoritmo VFF, como voy un poco perdido, te importaria publicar o envimarme el código fuente? gracias igualmente!

    rvcastellano@gmail.com

    ResponderEliminar