Closed aalapshah12297 closed 6 years ago
Will implement incremental RRT-based non-holonomic planning within dynamic local map with Lidar-like obstacle map. Will then try to use space-partitioning or some other geometric method to reduce time complexity of nearest-neighbour search while generating RRT.
13/01/17 output (with tree shown).zip Implemented incremental RRT-based non-holonomic planning within dynamic local map with Lidar-like obstacle map. Tuned RRT parameters (node generation limit, max edge length, etc.) till fast and reliable results were generated.
14/01/17 Started implementing the same RRT algorithm in C++ (currently only for static maps). Currently the algorithm gives valid paths most of the times but gets stuck at other times (reason unknown - to be debugged).
15/01/17 Debugged previous code. Generated some paths on a simple square 100x100 map with a 50x50 obstacle in the center. Plotted the paths using Matlab (figures above).
max steering angle = 20 degree, tree size = 400 (path shown in red, tree in blue) max steering angle = 30 degree, tree size = 1200 (only path shown, in red)
Completed porting of previous MATLAB script to C++. Generated some paths on the same map as before and wrote a MATLAB script to plot the output. Currently creating a ROS node using the C++ code.
Implemented potential field based correction factor to reduce jaggedness of path generated by RRT (only slightly) Some Examples: (Blue = original path, Red = corrected path)
ROS node of RRT up and running. Currently works on a hard coded map while subscribing to start and end coordinates. Publishes path on a topic.
Motion plainning for non-holonomic robot using RRT Blue nodes represent the full RRT generated Red nodes represent the chosen path to goal (co-ordinates supplied)