Installation Guide

Installation process for simulation and execution in ROS and Gazebo

Developed by William Chamorro PhD. for the GI-ATA research group

ArduCopter and ArduPilot are two open-source projects for controlling autonomous vehicles. ArduPilot is the main project, encompassing a wide range of vehicles including planes, helicopters, rovers (land vehicles), and boats. ArduCopter, on the other hand, is a specific part of ArduPilot dedicated to controlling drones or multirotor aircraft such as quadcopters and hexacopters.

Both projects, ArduCopter and ArduPilot, offer open-source software and hardware that enables enthusiasts and developers to create and control their own autonomous vehicles. They provide navigation functions, flight control, mission planning, among others, allowing for extensive customization and adaptation to different types of vehicles and specific needs.

This guide was tested in standard CPU with ROS-noetic and Ubuntu focal

The following sections show what tested open source nodes to install in order to have a successful Arducopter - ROS integration

Installation of QGroundControl

QGroundControl is a ground control station software used to control and monitor unmanned vehicles, particularly drones and autonomous vehicles. It's an open-source application that provides a user-friendly interface for configuring vehicles, planning missions, monitoring telemetry data (like altitude, speed, and battery status), and controlling the vehicle during flight.

QGroundControl supports various types of vehicles and is compatible with different autopilot systems, including ArduPilot and PX4, offering a comprehensive set of tools for mission planning, flight control, and vehicle setup. It's a critical component in the operation of unmanned systems, allowing users to interact with and manage their vehicles efficiently and safely from the ground. Te following summarize how to install this app.

Create a folder and download QGroundControl

Screenchot of the downloading process

Change permissions and execute for testing

That is how QGropundControl looks like

Installing Gazebo and ArduPilot Plugin

Robot simulation is an essential tool in every roboticist's toolbox. A well-designed simulator makes it possible to rapidly test algorithms, design robots, perform regression testing, and train AI system using realistic scenarios. Gazebo offers the ability to accurately and efficiently simulate populations of robots in complex indoor and outdoor environments.

Gazebo 11 installation

This section is intended in case we do not have installed Gazebo 11. Recall that Gazebo installs along ROS noetic in the desktop-full version.

Update packages before installing

Setup your computer to accept software

Setup keys

Reload software list

Install Gazebo

Gazebo plugin installation

Update packages before installing

Download the APM plugin

Compile the package

Set up bashrc

If everything was done correctly we will be able to launch the plugin but it will not fly yet.

Terminal 1 type,

Install Ardupilot and MAVProxy Ubuntu

MAVProxy stands for "MAVlink Proxy." It's a versatile command-line ground control station (GCS) used primarily with ArduPilot, which is a popular open-source autopilot software. MAVProxy acts as an intermediary communication system between the ground control station and the vehicle's autopilot, allowing users to interact with the vehicle using a command-line interface.

Clone ArduPilot

Install dependencies

If all dependencies were successfully installed you will see the following message.

Successfully installed dependencies

Reload the profile

Checkout for the most stable version

Test installed dependencies

ArduCopter Execution

Install MAVROS

MAVROS stands for "MAVLink Robot Operating System." It's a middleware that acts as a bridge between MAVLink based autopilots, like the ones used in ArduPilot or PX4, and the Robot Operating System (ROS).

Install extras

Then install GeographicLib datasets

Install the ros node

We use catkin build instead of catkin_make

Install python catkin tools

Create the workspace

Install MAVROS

We asume that rosdep is enabled in your computer, if not do this before rosdep install

Install Geographic lib datasets

Remember to use this on each window that runs a ROS node

Clone simulation packages

Compile all packages

Update global variables

If all packages were successfully compiled you will see this

prueba

roslaunch iq_sim runway.launch

/ardupilot/ArduCopter$ sim_vehicle.py -v ArduCopter -f gazebo-iris --console

Last updated