Skip to content

Local Navigation Planner for Legged Robots

Notifications You must be signed in to change notification settings

Yaru-Gu/art_planner

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ANYmal Rough Terrain Planner

Sampling based path planning for ANYmal, based on 2.5D height maps. More detailed instructions still to come.

The paper detailing this work is available on the ETH Research Collection.

Author: Lorenz Wellhausen

Maintainer: Lorenz Wellhausen, [email protected]

©2021 ETH Zurich

If you use this work in an academic context, please cite:

@inproceedings{wellhausen2021rough,
  title={Rough Terrain Navigation for Legged Robots using Reachability Planning and Template Learning},
  author={Wellhausen, Lorenz and Hutter, Marco},
  booktitle={2021 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2021)},
  year={2021}
}

Build

Build Status

Dependencies

art_planner

The base package has the following dependencies:

You can install them from source if you want to use the planner independent of ROS. If you're using the ROS interface, installation is even easier and can be done through PPA. We ship our own catkinized version of ODE, which has modifications in the height field collision checking. This means that if you build this package in a workspace with other packages which also require ODE this version might be used.

sudo apt install ros-melodic-ompl ros-melodic-grid-map-core

Warning: Do NOT install the libompl-dev package from PPA as that one is an imcompatible version which breaks things.

art_planner_ros

The dependencies of the ROS interface can be installed with the following command:

sudo apt install ros-melodic-actionlib ros-melodic-geometry-msgs ros-melodic-grid-map-msgs ros-melodic-grid-map-ros ros-melodic-nav-msgs ros-melodic-roscpp ros-melodic-tf2-geometry-msgs ros-melodic-tf2-ros

Usage

We provide a launch file which should be everything you need, if you work with ANYmal.

roslaunch art_planner_ros art_planner.launch

In case you do not have your own path follower, you can use our hacky and unsupported path follower.

rosrun art_planner_ros path_follower.py

For this one to work you need to manually start your desired motion controller.

Configuration

The config file which is loaded when following the instructions above is located in art_planner_ros/config/params.yaml. It has extensive comments describing the function of each parameter.

The defaults should be fine for ANYmal C.

You can use the 2D Nav Goal in RViz to set a goal pose for the planner.

TODO

Although the planner is overall pretty 🔥🔥🔥💯🔥🔥🔥 some things are still 💩.

Known issues

  • Catkinized ODE version might be pulled in as dependency by other packages in workspace 🎳

About

Local Navigation Planner for Legged Robots

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 77.7%
  • C 17.0%
  • Cython 1.9%
  • C# 1.4%
  • CMake 0.5%
  • Python 0.4%
  • Other 1.1%