23 research outputs found

    MATMPC - A MATLAB Based Toolbox for Real-time Nonlinear Model Predictive Control

    Full text link
    In this paper we introduce MATMPC, an open source software built in MATLAB for nonlinear model predictive control (NMPC). It is designed to facilitate modelling, controller design and simulation for a wide class of NMPC applications. MATMPC has a number of algorithmic modules, including automatic differentiation, direct multiple shooting, condensing, linear quadratic program (QP) solver and globalization. It also supports a unique Curvature-like Measure of Nonlinearity (CMoN) MPC algorithm. MATMPC has been designed to provide state-of-the-art performance while making the prototyping easy, also with limited programming knowledge. This is achieved by writing each module directly in MATLAB API for C. As a result, MATMPC modules can be compiled into MEX functions with performance comparable to plain C/C++ solvers. MATMPC has been successfully used in operating systems including WINDOWS, LINUX AND OS X. Selected examples are shown to highlight the effectiveness of MATMPC

    Learning-based Nonlinear MPC for Quadrotor Control

    Get PDF
    openThis work aims at investigate the application of different learning based techniques for the enhancement of the Nonlinear Model Predictive Control (NMPC) framework, in the context of trajectory control for a quadrotor unmanned aerial vehicle (UAV). In particular, a gaussian process regression technique and a neural network approach are both taken into account in order to improve the knowledge of the model that constitutes the basis of the effectiveness of the NMPC.This work aims at investigate the application of different learning based techniques for the enhancement of the Nonlinear Model Predictive Control (NMPC) framework, in the context of trajectory control for a quadrotor unmanned aerial vehicle (UAV). In particular, a gaussian process regression technique and a neural network approach are both taken into account in order to improve the knowledge of the model that constitutes the basis of the effectiveness of the NMPC

    sNMPC:A Matlab Toolbox for Computing Stabilizing Terminal Costs and Sets

    Get PDF
    This paper presents a Matlab toolbox that implements methods for computing stabilizing terminal costs and sets for nonlinear model predictive control (NMPC). Given a discrete-time nonlinear model provided by the user, the toolbox computes quadratic/ellipsoidal terminal costs/sets and local control laws for the following options: (i) cyclically time-varying or standard terminal ingredients; (ii) first or quasi-second order Taylor approximation of the dynamics; (iii) linear or nonlinear local control laws. The YALMIP toolbox and the MOSEK solver are used for solving linear matrix inequalities and the IPOPT solver (with global search) is used for nonlinear programming. Simulation of the resulting stabilizing NMPC algorithms is provided using the CasADi toolbox.</p

    Algorithms and Applications for Nonlinear Model Predictive Control with Long Prediction Horizon

    Get PDF
    Fast implementations of NMPC are important when addressing real-time control of systems exhibiting features like fast dynamics, large dimension, and long prediction horizon, as in such situations the computational burden of the NMPC may limit the achievable control bandwidth. For that purpose, this thesis addresses both algorithms and applications. First, fast NMPC algorithms for controlling continuous-time dynamic systems using a long prediction horizon have been developed. A bridge between linear and nonlinear MPC is built using partial linearizations or sensitivity update. In order to update the sensitivities only when necessary, a Curvature-like measure of nonlinearity (CMoN) for dynamic systems has been introduced and applied to existing NMPC algorithms. Based on CMoN, intuitive and advanced updating logic have been developed for different numerical and control performance. Thus, the CMoN, together with the updating logic, formulates a partial sensitivity updating scheme for fast NMPC, named CMoN-RTI. Simulation examples are used to demonstrate the effectiveness and efficiency of CMoN-RTI. In addition, a rigorous analysis on the optimality and local convergence of CMoN-RTI is given and illustrated using numerical examples. Partial condensing algorithms have been developed when using the proposed partial sensitivity update scheme. The computational complexity has been reduced since part of the condensing information are exploited from previous sampling instants. A sensitivity updating logic together with partial condensing is proposed with a complexity linear in prediction length, leading to a speed up by a factor of ten. Partial matrix factorization algorithms are also proposed to exploit partial sensitivity update. By applying splitting methods to multi-stage problems, only part of the resulting KKT system need to be updated, which is computationally dominant in on-line optimization. Significant improvement has been proved by giving floating point operations (flops). Second, efficient implementations of NMPC have been achieved by developing a Matlab based package named MATMPC. MATMPC has two working modes: the one completely relies on Matlab and the other employs the MATLAB C language API. The advantages of MATMPC are that algorithms are easy to develop and debug thanks to Matlab, and libraries and toolboxes from Matlab can be directly used. When working in the second mode, the computational efficiency of MATMPC is comparable with those software using optimized code generation. Real-time implementations are achieved for a nine degree of freedom dynamic driving simulator and for multi-sensory motion cueing with active seat

    Implementation of a black-box Learning-based Nonlinear Model Predictive Control for a clinker production plant

    Get PDF
    La produzione di cemento svolge un ruolo significativo nelle emissioni globali di CO2. Algoritmi di controllo avanzati potrebbero ridurne l'impatto ambientale tramite un miglioramento dell'efficienza del processo. Il controllo predittivo non lineare (NMPC) è una tecnica particolarmente adatta a questo ruolo, poiché minimizza una funzione di costo soddisfacendo una serie di vincoli. Un elemento chiave richiesto dal NMPC è un modello matematico accurato del sistema controllato. Tuttavia, la sua derivazione può risultare onerosa, soprattutto per sistemi complessi come gli impianti di produzione del cemento. Una possibile alternativa sono gli approcci learning-based, attualmente in fase di studio. Essi sfruttano i dati storici per lo sviluppo dell'intero controllore o di alcuni suoi componenti. In questo elaborato, tecniche di regressione gaussiana vengono utilizzate per ottenere un modello black-box delle variabili chiave di un impianto di produzione di clinker. Un modello CV-informed GP-NOE è stato addestrato su dati storici e confrontato con una funzione di trasferimento MIMO. I risultati mostrano leggeri miglioramenti nelle predizioni multipasso a lungo termine. Il modello sviluppato ha il potenziale per essere implementato all'interno di un approccio learning-based NMPC per il controllo dell'impianto di produzione di clinker.Cement production plays a significant role in global CO2 emissions. Advanced control algorithms could reduce its environmental impact by improving the efficiency of the process. Nonlinear Model Predictive Control (NMPC) is a technique particularly fit for this role, since it minimizes a cost function while satisfying a set of constraints. A key element required by NMPC is an accurate mathematical model of the controlled system. However, its derivation could be challenging, especially for complex systems such as cement production plants. As an alternative, learning-based approaches are being investigated. They leverage historical data to design the entire controller or part of its components. In this work, Gaussian Processes regression is used to obtain a black-box model of key system variables of a clinker production plant. A CV-informed GP-NOE model was trained on historical data and compared to a MIMO transfer function model. The results show slight improvements in long multi-step-ahead predictions. The developed model has the potential to be implemented within a learning-based NMPC framework to control the clinker production plant

    Implementation of adaptive nonlinear model predictive control on a PX4-enabled quad-rotor platform

    Get PDF
    This thesis aims at developing an adaptive and nonlinear model predictive control Simulink scheme and interfacing it with the popular PX4 drone system. PX4 is one of the most used drone \ac{RTOS} in the context of research, it has many safety and sensor management features, it is open source, and has an extensive and active community of developers making it an excellent platform for \ac{UAVs} control development. The advantages of interfacing it with Matlab/Simulink running on a companion computer are mainly twofold. The first is simplicity: the Simulink block scheme language is easy to use for complex control schemes, also supported by a great collection of libraries and by the baked-in management of PX4 of sensor data that can directly be used as feedback for the controls without additional estimators. The second is the possibility of moving the computational complexity away from the onboard embedded platform to a much more powerful ground station PC. \ac{NMPC} is an excellent example as it makes use of both, there are many implementations available that require only some setup and the model of the plant, it gives great control performance but is computationally expensive and therefore not always usable directly of low-end embedded hardware without some optimizations, which would require a competent and experienced user. Since model predictive control is susceptible to modeling errors that are especially common when dealing with low-cost drone platforms it is paired with a lightweight adaptive scheme that complements the control action to make up for modeling mismatches. The whole infrastructure is then validated through \ac{SITL} simulations across a variety of tasks and conditions, confirming that the interface between Matlab/Simulink works, the \ac{NMPC} scheme is usable in real-time with good trajectory tracking performance and that adaptive control provides a much greater degree of robustness to the system

    Bearing-only Formation Control of multiple UAVs with an NMPC approach: architectures and methodologies

    Get PDF
    openUno dei maggior campi di sviluppo e d’innovazione nel nostro secolo riguarda l’ambito della robotica mobile in particolare lo studio del coordinamento di sistemi multi agenti. Questo tipo di tecnologia permette di essere impiegata in ambiti di calamità naturali o situazioni critiche dove i sistemi multi agenti posso operare missioni di search and rescue o monitoraggio ambientale. In campo vengono impiegati veicoli terrestri autonomi UGV (Unmanned Ground Vehicle) e veicoli aerei autonomi UAV(Unmanned Aerial Vehicle) che possono cooperare tra di loro. Gli ambienti esterni presentano diverse problematiche e una di queste può essere la mancanza di accesso alla rete GPS. Per tale motivo si studiano leggi di controllo che non impiegano questo tipo di informazioni come bearing-only formation control dove gli agenti rilevano tra di loro solo angoli relativi, i quali possono essere calcolati tramite una semplice camera 2D. Questo lavoro di tesi ha lo scopo di esplorare la teoria della bearing rigidity applicata a formazioni di agenti omogenei nello specifico quadricotteri sfruttando la tecnologia NMPC con MATMPC. La tesi va ad esplorare le differenze delle diverse architetture in particolare va ad implementare una architettura centralizzata e mette giù le basi per un possibile sviluppo di un’architettura decentralizzata. Il lavoro mostra come è creare il modello per NMPC con diverse varianti del modello dell’agente (come è stato modellizzato), diversi funzionali di costo e diverse formazioni. Per l’implementazione viene usato ROS2 per lo sviluppo dell’intero ecosistema di controllo e viene usata la piattaforma PX4 che mette a disposizione un ottima architettura di controllo a basso livello per la gestione del singolo quadricottero. Inoltre la tesi usa il sistema SITL(Software In The Loop) di PX4 per rendere le simulazioni di Gazebo il più vicine alla realtà.One of the major fields of development and innovation in our century concerns mobile robotics, particularly the study of multi-agent system coordination. This type of technol- ogy can be employed in natural disaster scenarios or critical situations where multi-agent systems can perform search and rescue missions or environmental monitoring. In this field, autonomous ground vehicles (UGVs) and unmanned aerial vehicles (UAVs) are used, which can cooperate with each other. Outdoor environments pose various challenges, and one of these challenges can be the lack of access to GPS network. For this reason, control laws that do not rely on GPS information are studied, such as ”bearing-only formation control,” where agents only perceive relative angles between each other, which can be calculated using a simple 2D camera. The purpose of this thesis work is to explore the theory of bearing rigidity applied to forma- tions of homogeneous agents, specifically quadcopters, using Nonlinear Model Predictive Control (NMPC) with MATMPC. The thesis aims to explore the differences between dif- ferent architectures, particularly by implementing a centralized architecture and laying the groundwork for a possible development of a decentralized architecture. The work demon- strates how to create the model for NMPC with various agent model variants,different cost functions, and different formations. ROS2 is used for the implementation of the entire control ecosystem, and the PX4 platform is used, which provides an excellent low-level control architecture for managing individual quadcopters. Additionally, the thesis utilizes the PX4 Software In The Loop (SITL) system to make Gazebo simulations as close to reality as possible

    Force-Moment decoupled actuation property analysis for a Generically Tilted Multirotor platform

    Get PDF
    openIl controllo di veicoli aerei autonomi è un argomento di crescente interesse, dovuto all’affascinante teoria che ha come protagonisti questi dispositivi e che può condurre a impegnative ed entusiasmanti sfide sia in campo teorico che pratico. Questo si riflette nel fatto che studi recenti sono mirati a studiare le proprietà strutturali di questi multi rotori, permettendo performance migliori rispetto ai droni standard con quattro eliche, anche in situazioni anomale e nel caso di possibili guasti. Per affrontare il problema, i momenti e le forze sono stati trattati in modo indipendente le une dagli atri, rendendo possibile lo studio di come un numero maggiore di eliche possa portare a maggior robustezza e manovrabilità del drone stesso. Questi punti vengono trattati in primo luogo disaccoppiando le dinamiche di traslazione e rotazione, che nel modello dinamico sono intrinsecamente accoppiate, successivamente viene massimizzata la capacità di attuazione delle forze che non generano momento angolare. Tutto questo viene usato per generare una traiettoria che tenga in considerazione tutti i vincoli dati e che sia immune dai guasti alle eliche.Unmanned Aerial Vehicles are a rising topic in the control theory research, due to their emerging theoretical and practical challenges. This translates into the fact that recent studies focused on the structural properties of these aerial platforms actuated by more than four rotors, arbitrarily oriented, to allow them to perform better than a standard quadrotor, even in harsh conditions and in case of possible failures. Typically, to face these problems, the forces and moments generated these platforms turn out to be decoupled and can be treated independently. In this thesis, the goal is to study the actuation and robustness properties of these multirotor platforms varying their physical construction parameters. The attention is first focused on the decoupling between the translational and rotational dynamics, that are intrinsically coupled in the original model, and then on the maximization of the force actuation capability that generates no angular momentum. Lastly all these studies are combined to plan a trajectory subject to all the given constraints, and that is not affected by propellers’ failure

    A nonlinear model predictive control strategy for autonomous racing of scale vehicles

    Get PDF
    © 2022 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting /republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other worksA Nonlinear Model Predictive Control (NMPC) strategy aimed at controlling a small-scale car model for autonomous racing competitions is presented in this paper. The proposed control strategy is concerned with minimizing the lap time while keeping the vehicle within track boundaries. The optimization problem considers both the vehicle's actuation limits and the lateral and longitudinal forces acting on the car modeled through the Pacejka's magic formula and a simple drivetrain model. Furthermore, the approach allows to safely race on a track populated by static obstacles generating collision-free trajectories and tracking them while enhancing the lap timing performance. Gazebo simulations using the F1/10 simulator showcase the feasibility and validity of the proposed control strategy. The code is released as open-source making it possible to replicate the obtained results.Peer ReviewedPostprint (author's final draft
    corecore