Skip to content

Instantly share code, notes, and snippets.

@presleyreverdito
Last active November 18, 2021 08:42
Show Gist options
  • Save presleyreverdito/3a74d31cb6e8e2c3a1734719b0fcde0c to your computer and use it in GitHub Desktop.
Save presleyreverdito/3a74d31cb6e8e2c3a1734719b0fcde0c to your computer and use it in GitHub Desktop.
Procedure to install Releaux on Ubuntu 16.04 or 18.04

Procedure to install Releaux on Ubuntu 16.04 or Ubuntu 18.04

I did this procedure to record my tips when installing the Reuleaux package

1- Use this link to follow the steps of the installation:

http://wiki.ros.org/reuleaux

2 - In "Installation" you need to clone this fork of reuleaux project for Ubuntu 16.04: reuleax-kinetic-devel.

git clone https://github.com/jontromanab/reuleaux/tree/kinetic-devel

or for Ubuntu 18.04:

git clone https://git-ce.rwth-aachen.de/presleyreverdito/reuleaux-melodic

2- Follow this link:

OpenRave installation

to install OpenRave, because today (29/10/20) the OpenRave PPA doesn't work.

2.1- Replace "pip install --upgrade --user sympy==0.7.1" from pip to pip2. This is going to assure that you are using Python 2.7 and avoid conflicts with Python 3.5.

pip2 install --upgrade --user sympy==0.7.1

3 - I recommend to you use an XACRO existent file, for example you can downloaded URDF KUKA manipulators on this link:

Kuka experimental

You find some XACRO robots files on folder: kuka_experimental/kuka_kr6_support/urdf. Then, you can follow those tutorial steps using e.g "kr6r700sixx" instead of <myrobot_name>. 3.1 - When you're going to generate the URDF from XACRO file, use:

rosrun xacro xacro <myrobotname.urdf.xacro> > <myrobotname.urdf>

4 - On step "Generate Ik Solver", You should be careful! The type of output file should be .cpp. On official page doesn't be clear about on the code:

python `openrave-config --python-dir`/openravepy/_openravepy_/ikfast.py --robot=<myrobot_name>.dae --iktype=transform6d --baselink=1 --eelink=8 --savefile=<ikfast_output_path> 

If you are following this procedure you are using "kr6r700sixx" instead of <myrobot_name>. On <ikfast_output_path> you should put the name of output file, e.g kr6r700sixx.cpp (remember, if you aren't on the folder that you want to save de output file, you should put e.g folder-path/kr6r700sixx.cpp)

4.1 - It is possible on this step the CPP file is not created, then follow this answer to solve the problem

5 - "Reachability Maps"( When you get here do not forget to run "roscore" to start the ROS server)

5.1 - To create the reachability map you should replace the code on the tutorial to:

rosrun map_creator create_reachability_map 0.05 kr6r700sixx.h5

Instead that on the tutorial. If you try to run that code a message will be showed: "Hey!! The first argument is the resolution and the second argument is the map filename. You messed up." In my case it took 5 hours! I do highly recommend to you tuns that code before you sleep.

6 - "Inverse Reachability Map" 6.1 - When you running that code on this step you should be on catikin_ws folder, instead of that you can run the code like this:

rosrun map_creator create_inverse_reachability_map <folder-path>/kr6r700sixx.h5

e.g:

rosrun map_creator create_inverse_reachability_map src/reuleaux-kinetic-devel/map_creator/maps/kr6r700sixx.h5

7 - "Visualizing the maps".

7.1 - Before you visulize the map you should create a frame like this in another terminal:

rosrun tf static_transform_publisher 0 0 0 0 0 0 map base_link 50

7.2 - When you'll run:

rosrun map_creator load_reachability_map kr6r700sixx.h5

you must be on folder ~/catkin_ws/src/reuleaux-kinetic-devel/map_creator/maps

7.1 - When you set the topic as "/reachability_map". Be careful, your computer can crash!

After all this, you can walk on your own fee and keep following the original tutorial!

@ChildofUngolianth
Copy link

According to: http://wiki.ros.org/reuleaux instead of using the urdf file, the xacro file can be used as well, to create a collada file:
rosrun xacro xacro.py model.xacro > model.urdf

@presleyreverdito
Copy link
Author

Thank you, I corrected the tutorial :)

@ChildofUngolianth
Copy link

@presley could you include the changes needed for Ubuntu 18?

@presleyreverdito
Copy link
Author

Hi, sorry for later response. The only difference between Ubuntu 16 and 18 is the Reuleaux repository. I've updated the gist ;)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment