-
Notifications
You must be signed in to change notification settings - Fork 12
Home
This ROS package implements autonomy algorithms for the NATURE Stack. These algorithms are intended to be run with a simulator such as the MSU Autonomous Vehicle Simulator (MAVS).
The package has four nodes:
- Perception
- Global Path
- Local Planning
- Control
The autonomy takes user-defined waypoints as input and follows the path with obstacle detection and avoidance. There is an example launch file that demonstrates how to run the algorithms.
There is also a map node which publishes a map based on user defined obstacles. This can be used to "spoof" the perception system and take sensing out of the loop entirely. This is useful when a user wishes to study only path planning or control.
The robot configuration is defined in a URDF file and is primarily for visualization purposes.
Ubuntu 16.04 with ROS-Kinetic and a functioning catkin workspace are required to build and run this code. It may work with more recent releases of Ubuntu but has not been tested.
Clone the repo into your catkin_ws/src directory with the following command.
$git clone https://github.com/CGoodin/avt_341.git
From the top level catkin_ws directory, type
$catkin_make install
To test the installation, type
$roslaunch avt_341 example.launch
The pakcage requires the ROS PointCloud Library (PCL) interface. If you get errors related to missing pcl header files, then you may need to install pcl_ros on your system.
$sudo apt-get install ros-kinetic-pcl-ros
To run an example simulation with MAVS, first install and build MAVS.
Next, clone the example MAVS simulation package.
$git clone https://github.com/CGoodin/mavs_avt_example.git
In order to build the repo, you will need to modify the CMakeLists.txt file in the mavs_avt_example to find your MAVS installation. In lines 8-9, change the following lines
SET(mavs_INCLUDE_DIR "/home/msucavs/mavs/src/")
SET(mavs_LIB_DIR "/home/msucavs/mavs/build/lib")
to match the path to the MAVS "src" and "lib" directories on your system. Then, from the top level catkin_ws directory, type
$catkin_make install
To use the MAVS example with the AVT-341 autonomy, uncomment lines 58-62 of "example.launch" and comment out line 52. Then, run the example as before.
$roslaunch avt_341 example.launch