ROS Integration
Our software is split in two parts, called agilib
and agiros
. agilib
is the implementation of the entire library with all its functionalities, while agiros
serves as an interface layer between agilib
and ROS.
The user can be referred to the file agiros/agiros/ros_pilot.cpp
where the interface for subscription and publication is written.
For example, some of the most representative (but not only) commands are:
enable
: arms the dronestart
: commands the drone to take offoff
: stops and disarms the dronetrajectory
: sends a trajectory that is followed by the dronepose_estimate
: provides the drone with a pose estimate to be fused in the EKFfeedthrough_command
: directly sends a low level command that bypasses all controller logic and directly goes to the actuators
The function of the ROS interface is to take these commands (or any command that might be implemented by the user) and send it downstream to agilib
.