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"