Install - JoseAndresMR/ros_magna GitHub Wiki

There are no binary distributions for ROS-MAGNA, so you need to download the source and build it yourself. In order to use ROS-MAGNA, you need a working installation of ROS Kinetic. Refer to this site for installing it. All development is tested in Ubuntu 16.04.

Building in LINUX

Dependencies

SMACH

SMACH is a ROS library for State Machines definition and introspection.

RVIZ JSK

ROS-MAGNA makes use of JSK Rviz plugins to enhance visualization.

$ sudo apt install ros-kinetic-jsk-rviz-plugins

Pandas

Data frames

$ sudo apt-get install python-pandas

sympy

Algebra computing

$ sudo apt install python-sympy

Unmanned Aircraft Vehicles (UAV) Abstraction Layer

The GRVC-UAV Abstraction Layer is employed as interface to mange the commands to the autopilot of the UAS. The instructions for the installation of its ROS-MAGNA branch may be found in UAL installation.

Once executed, it is required to change the branch:

$ cd ~/catkin_ws/src/grvc-ual
$ git checkout ros_magna
$ cd ~/catkin_ws
$ catkin build

[Optional] UAV Path Manager may be used to improve the navigation performance while following a known waypoint path.

ORCA: collision-avoidance [Optional]

RVO2 is a library for Reciprocal Collision Avoidance for Real-Time Multi-Agents. Its Python interface for 3D agents is available on the GitHub repository.

Cython is required for the Python binding of the ORCA library.

Downloading and compiling the source

The ROS-MAGNA repository contains a folder with a set of packages. These packages need to reside in the src folder of your catkin workspace. Follow this instructions to correctly download and compile the source:

$ cd ~/catkin_ws/src
$ git clone https://github.com/JoseAndresMR/ros_magna.git
$ cd ros_magna
$ cd ~/catkin_ws
$ catkin build

Add the next line to .bashrc

$ export PYTHONPATH="${PYTHONPATH}:-catkin_ws-/src/magna/Code/scripts"