Skip to content

Setup and build instructions

Gianpaolo Gulletta edited this page Nov 26, 2020 · 5 revisions

Setup and build instructions

The following instructions have been tested on the operative system Linux Mint 17 Qiana 64 bit, but they should be compatible with more recent distributions of Linux Mint and Ubuntu. The motion manager was originally built and tested with ROS indigo and the simulator V-REP EDU version 3.4.0.

Dependencies

Firstly, the full version of ROS indigo and the simulator V-REP need to be installed and tested. Then, the following ROS packages and external libraries need to be installed and the simulated scenarios need to be downloaded because the Motion manager is dependant on them.

Libraries

Essential dependencies. Check if they have been already installed in your OS distribution

The following libraries are expected to be installed in the /home/$ENV{USER} folder, but can be installed elsewhere and their installation path need to be properly set in the CMakeLists.txt file of the Motion manager.

ROS packages

The following V-REP related packages need to be firstly downloaded into your catkin workspace folder.

Then, building with the command catkin_make should generate the libraries libv_repExtRos.so and libv_repExtRosSkeleton.so into the devel/lib folder. These libraries need to be copied and pasted into the V-REP execution folder to ensure the connection between ROS and the simulator.

The following packages also need to be downloaded into the catkin workspace and built under the catkin_make command.

Scenarios

The following simulated scenarios with the robot ARoS are expected to the downloaded in the /home/$ENV{USER} folder, but they can be put elsewhere as long as the variable PATH_SCENARIOS is properly set in the CMakeLists.txt file of the Motion manager.

Build options

The Motion manager package can be built with different values of the following options (see the CMakeLists.txt file).

  • MOVEIT={0,1}, with 0 = do not use the aros moveit planner, 1 = use the aros moveit planner
  • HAND={0,1}, with 0 = human hand (only simulation), 1 = robotic Barrett Hand
  • OPEN_CLOSE_HAND={0,1}, with 0 = do not use the open/close Barrett Hand function, 1 = use the open/close Barrett Hand function
  • TEST={0,1}, with 0 = do not build the tests, 1 = build the tests
  • DOC={0,1}, with 0 = do not build the documentation, 1 = build the documentation

If, for example your catkin workspace is located into the /home/${USER}/catkin_ws folder, then the following command only compiles the Motion manager in Debug mode.

catkin_make --pkg motion_manager --directory /home/${USER}/catkin_ws  --build /home/${USER}/catkin_ws/build --cmake-args -DCMAKE_BUILD_TYPE=Debug

Code editing

The editor Qt Creator is highly recommended. Assuming that the editor is installed in the /home/${USER}/Qt folder, then a launcher qtCreator.desktop should be created with the following content.

#!/usr/bin/env xdg-open
[Desktop Entry]
Exec=bash -i -c "/home/${USER}/Qt/Tools/QtCreator/bin/qtcreator" %F
Icon=QtProject-qtcreator
Comment=Qt Creator (Launcher for ROS) 
Type=Application
Terminal=false
Name=Qt Creator
GenericName=Integrated Development Environment
MimeType=text/x-c++src;text/x-c++hdr;text/x-xsrc;application/x-designer;application/vnd.nokia.qt.qmakeprofile;application/vnd.nokia.xml.qt.resource;
Categories=Qt;Development;IDE;
InitialPreference=9

Assuming that the Motion manager package has been downloaded into the /home/${USER}/catkin_ws/src folder, the Build settings of the Qt Creator project should be configured with a Build directory: /home/${USER}/catkin_ws/build/motion_manager and with the following Custom Process Step.

  • Command: catkin_make
  • Arguments: --pkg motion_manager --directory /home/${USER}/catkin_ws --build /home/${USER}/catkin_ws/build --cmake-args -DCMAKE_BUILD_TYPE=Debug
  • Working directory: /home/${USER}/catkin_ws/src

Similarly, the the Run settings of the Qt Creator project should be configured with the following options.

  • Executable: /home/${USER}/catkin_ws/devel/lib/motion_manager/motion_manager
  • Working Directory: /home/${USER}/catkin_ws/devel/lib/motion_manager

Communication with the humanoid robot ARoS

The communication between the Motion manager and the robot ARoS is made possible through the ARoS-ROS interface, which typically runs on another (Windows XP) PC that is physically connected with the robot.