Skip to content

philip-long/robot_collision_checking

Repository files navigation

Robot Collision Checking

A lightweight package to use FCL with ROS messages (heavily inspired by MoveIt's version).

The package can be utilised to perform distance and collision checking of objects by creating a class and maintaining a collision world, or by using utility functions that are free of any class. This package can handle objects represented as shape_msgs, OctoMaps, and VoxelGrids.

This package requires:

Installation

FCL and libccd-dev may already be installed on your machine via your ROS distro, but these versions are likely outdated for the current repository's use. The following instructions will enable you to build the robot_collision_checking package within a ROS 2 workspace using colcon build (or catkin build if using ROS 1).

libccd

Please ensure this option is enabled, when compiling:

-DENABLE_DOUBLE_PRECISION=ON

  1. git clone https://github.com/danfis/libccd.git
  2. mkdir build && cd build
  3. cmake -G "Unix Makefiles" -DENABLE_DOUBLE_PRECISION=ON ..
  4. make
  5. sudo make install

FCL

  1. git clone https://github.com/flexible-collision-library/fcl.git
  2. mkdir build && cd build
  3. cmake ..
  4. make
  5. sudo make install

If there are errors, such as constants not being found, then you are probably still using the older version of FCL.

Testing

You can run tests for the robot_collision_checking package as described in this ROS 2 tutorial. First compile the tests:

colcon test --ctest-args tests

And then examine the results:

colcon test-result --all --verbose

About

A ROS interface to FCL collision checking

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published