top of page

Goal

The objective of this practice is to implement the logic of the VFF navigation algorithm.

Navigation using VFF (Virtual Force Field), consists of:

  • Each object in the environment generates a repulsive force towards the robot.

  • Destiny generates an attractive force in the robot.

This makes it possible for the robot to go towards the target, distancing itself of the obstacles, so that their address is the vector sum of all the forces.


Local navigation with VFF
    The objective of this practice is to implement the logic of the VFF navigation algorithm, in the first implementation we use a division to calculate the repelling force, and as we see it is not very trustworthy
    xobstaculo += (2/laser_data.values[i]*math.sin(math.radians(i))*5)
    yobstaculo += (2/laser_data.values[i]*math.cos(math.radians(i))*5)


 

   
     After various and  attempts at getting the perfect equation (e^(x/4 +1), 11/x+1 -1), i resigned with 1/x and tried to make it work,then tried
10/laser_data.values[i]*math.sin/cos(math.radians(i))
  And after playing a bit with the alpha and beta values of the function it works as seen in the video.


In the video we have the attraction force in green, the repulsion force in black and the resultant force in black.

 

Screenshot from 2021-02-09 17-22-36.png

© 2020 por Alberto Delgado

bottom of page