Skip to content

A simple, pure python, navigation project using NAV2

Notifications You must be signed in to change notification settings

EdvardSire/commander

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Commander

A simple, pure python, navigation project using NAV2's Simple Commander API

Environment

This was developed for use with DNV's ReVolt ship simulator, but you can also use the simplified linear kinematic model in ./src/commander/commander/mock_boat.py

Waypoint manager

./src/commander/commander/exec.py

Minimal waypoint manager based on NAV2 navigation concepts

InformedRRT*

./src/commander/actions/compute_path_to_pose_server.py

Informed RRT*: Optimal Sampling-based Path Planning Focused via Direct Sampling of an Admissible Ellipsoidal Heuristic

Path smooting

./src/commander/actions/smooth_path_server.py

You can choose between

class SmootherType(Enum):
    TAUBIN = 0
    CHAIKIN = 1
    CATMULL_ROM = 2
    B_SPLINE = 3

Articles:

Taubin, G., Curve and Surface Smoothing without Shrinkage.

Multi-step Subdivision Algorithm for Chaikin Curves.

Edwin Catmull., A Class of Local Interpolating Splines

Boor, Carl., On Calculating with B-Splines

Visualization

Start rviz2 by running ./src/ros2-viz-docker/run.sh

About

A simple, pure python, navigation project using NAV2

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published