Project

General

Profile

Nonlinear Model Predictive Control for Multi-rotor Aerial Vehicles under Visual-perceptive Constraints

1. Description

The objective of this work is the development of a controller based on Nonlinear Model Predictive Control (NMPC) for a Multi-rotor aerial vehicle (MRAV) subject to actuation and perception constraints.

The MRAV is equipped with an onboard sensor, for instance a monocular camera, with limited Field of View (FoV). The MRAV is requested to perform a certain motion in the environment while maintaining inside its sensor FoV a desired feature, e.g. a tag on the ground. The feature can be static or moving and perceived only by means of the onboard sensor. Each actuator of the MRAV is composed by a motor-propeller pair, which produces a limited thrust force along its axis and, at the same time, undergoes a transient prior to reach the commanded thrust. The derivative of the thrust is bounded as well, and it is used as real input for the system. Maximum and minimum thrust forces and their derivatives constitute the actuation constraints of the aerial robot.

2. Simulations

Simulations involve both a static and moving tag observed by an under-actuated quad-rotor and a fully-actuated hexa-rotor.

2.1. Enable vs disable perception constraints

Simulations are conducted in order to validate the need to introduce the perception constraints within the controller.

In the following figure, it is shown a snapshot of a simulation where a quad-rotor has to maintain vision over a moving feature. The perception constraints are enabled within the controller.

.
Figure 1. Simulation of the quad-rotor tracking a moving feature when the perception constraints are enabled in the controller. The feature is kept within the FoV of the onboard camera.

As it is possible to see in the previous figure, the feature is kept within the FoV bounds of the onboard camera.

The same simulation is then repeated, but this time disabling the perception constraints within the controller. A similar snapshot is provided in the figure below.

.
Figure 2. Simulation of the quad-rotor tracking a moving feature when the perception constraints are disabled in the controller. The feature exits the FoV of the onboard camera.

As shown, the feature exits the FoV bounds of the onboard camera.

2.2. Under-actuation vs Fully-actuation

The following simulations investigate the capabilities of the controller to naturally take into account the different actuation properties of two different platforms, namely an under-actuated quadrotor and a fully-actuated hexa-rotor.

In the following figure, it is shown a capture taken from the visualization of the simulation of a quad-rotor tracking a feature moving in a circular pattern. The robot is tasked to stay in the starting position, while keeping the moving feature as close as possible to the center of the FoV of the onboard camera.

Quad-rotor simulation.
Figure 3. Simulation of a quad-rotor tracking a feature moving in a circular pattern.

The Fov of the onboard camera is visualized as a purple cone, while the moving feature as a green rectangle moving along the light-green circular trajectory.

As the quad-rotor is an under-actuated system, the rotational and translation dynamics are coupled. Therefore, the robot cannot independently change attitude while mantaining the same position. As it is tasked to orient the camera as much as possible towards the moving feature, it has to move from the initial position in order to achieve the mission goal.

Consequently, the optimal solution computed by the predictive controller is to follow a circular trajectory (not generated by the reference generator within the controller module) close to the starting location of the robot. The motion performed by the quad-rotor is displayed as a pink line.

Contrary, when performing the same simulation with a fully-actuated hexa-rotor, the robot is able to stay in the starting position while achieving the perceptive task.

Hexa-rotor simulation.
Figure 4. Simulation of a fully-actuated hexa-rotor tracking a feature moving in a circular pattern.

Indeed, the robot does not perform any motion, as it is possible to appreciate in the previous figure by the absence of any pink trajectory.

3. Experiments

The experiments were conducted in the indoor arena available at LAAS-CNRS (Toulouse, France), whose picture is provided in the following.

Indoor arena at LAAS-CNRS.
Figure 5. Picture of the indoor arena available at LAAS-CNRS.

The robot used for the experimental campaign is a custom-designed under-actuated quad-rotor shown in the figure below.

Under-actuated quad-rotor designed and built at LAAS-CNRS.
Figure 6. Pictures of the under-actuated quad-rotor designed and built at LAAS-CNRS.

Lastly, a picture of the experimental setup is provided. The robot, the under-actuated quad-rotor shown above, is tasked to move along a set of waypoints while keeping inside the onboard sensor FoV the feature located on the ground.

Experimental setup and frame from onboard camera.
Figure 7. Picture of the experimental setup. On the bottom left, the frame from the onboard camera is provided.

4. Technical details

4.1. Control architecture

In the following, a block diagram of the implementation is provided.

Block diagram.
Figure 8. Block diagram of the developed controller.

The Software part contains the controller implemented in Simulink, which computes the desired rotor velocities sent to the robot actuators. It also contains submodules related to the generation of the reference motion (trajectory) and constraints, and a submodule simulating the onboard camera.

The Hardware group contains the modules related to the communication with the low-level hardware, either the real robot or the simulated one. The interface with the hardware is performed by means of the Telekyb3 architecture. This software interface allows communicating with the flight controller mounted on the robot, a quadrotor in the case of the experiments, or with the simulated one, in the case of the simulations.

4.2. Software implementation

All the implementation of this work has been realized in MATLAB and Simulink.

The NMPC controller is developed in Simulink relying on the MATMPC package developed by Yutao Chen in Padova (Italy) and on the CasADi library. Some MATLAB scripts are used to initialize the system and the simulation environment.

Title:

Perception-constrained and Motor-level Nonlinear MPC for both Underactuated and Tilted-propeller UAVS

Authors:

Martin Jacquet[1], Gianluca Corsini[1], Davide Bicego[2][1], Antonio Franchi[2][1]

Cite as:

M. Jacquet, G. Corsini, D. Bicego, and A. Franchi, “Perception-constrained and Motor-level Nonlinear MPC for both Underactuated and Tilted-propeller UAVS,” in IEEE International Conference on Robotics and Automation (ICRA 2020), May 2020, pp. 4301–4306. doi: 10.1109/ICRA40945.2020.9197281.

Keywords:

Aerial Robotics; Multi-rotor aerial vehicles; Perception-constrained Nonlinear Model Predictive Control


1. LAAS-RIS - Équipe Robotique et InteractionS.
2. EEMCS - Faculty of Electrical Engineering, Mathematics and Computer Science.