This is cloned implementation of the AA174/274 Autonomy Stack
- Follow this guide.
Before launching anything, make sure either a hardware or simulated turtlebot is running, i.e. run one of the following launches first:
ros2 launch asl_tb3_driver bringup.launch.py # on hardware
# or
ros2 launch asl_tb3_sim <world>.launch.py # on desktop
where <world>
can be chosen from [root, arena, project_city, maze, signs]
ros2 launch asl_tb3_autonomy heading_control.launch.py
This launch file achieves pose stabilization control. Target pose can be set from RVIZ.
Note: this controller controls orientation only.
ros2 launch asl_tb3_autonomy navigator.launch.py
This launch file achieves navigation around obstacles using a switching controller. Target pose can be set from RVIZ. Planned trajectory from A* will be visualized in green and the smoothed trajectory will be visualized in blue.
ros2 launch asl_tb3_autonomy frontier_exp.launch.py
This launch file achieves autonomous frontier exploration. Set an initial RVIZ goal to start the exploration process. When the exploration is done, you should see the following printout in console:
Finished exploring