The objective of this research is to develop a model of a quadrotor and its components using the Wolfram System Model and Modelica language to create new blocks and utilities. Subsequently, a classical linear controller is implemented on System Modeler. This involves establishing a theoretical background on quadrotor kinematics and dynamics, as well as developing the model of its components such as mass body, electric motors, sensors and propellers. The goal for designing the quadrotor and controller for System Modeler is to integrate a multi-rotor package into the aircraft library for the upcoming system modeler release. This requires a user-friendly model with intuitive interfaces and visualizations. Thus, a classical linear cascade PID controller emerges as a reasonably suitable choice for the conceptual design stage. Despite the highly nonlinear nature of quadrotor dynamics, a linear controller can be effective to a certain extent. Therefore, a nonlinear approach, specifically the Incremental Non-linear Dynamic Inversion (INDI) control algorithm, is investigated for attitude control. The INDI algorithm is based on the canceling out the nonlinearity of the system, by using the dynamic of the system which allows to use the linear controller to achieve the desired behavior in the quadrotor. In contrast to classical nonlinear dynamic inversion, INDI doesn’t rely on the precise system model, thus enhancing system robustness against uncertainty. However, it requires state derivative estimation and the suppression of high-frequency noise using a low-pass filter. The INDI method is simulated using MATLAB and Simulink, and the results are compared with those of a cascade PID controller. The simulation results indicate that the performance of the INDI method slightly improved compared to the original PID controller especially for higher velocity and for more aggressive trajectories while requiring less computational power and fewer parameters to tune.
L'obiettivo di questa ricerca è sviluppare un modello di una quadratica e delle sue componenti utilizzando il modello del sistema Wolfram e il linguaggio Modelica per creare nuovi blocchi e funzioni. Successivamente, su System Modeler viene implementato un controller lineare classico. Ciò comporta la creazione di un background teorico sulla cinematica e dinamica quadratica, nonché lo sviluppo del modello dei suoi componenti come corpi di massa, motori elettrici, sensori ed eliche. L'obiettivo per la progettazione del quadritore e del controller per System Modeler è integrare un pacchetto multi-rotore nella libreria dell'aereo per la prossima versione del system modeler. Ciò richiede un modello user-friendly con interfacce e visualizzazioni intuitive. Pertanto, un classico controller PID lineare in cascata emerge come una scelta ragionevolmente adatta per la fase di progettazione concettuale. Nonostante la natura altamente non lineare della dinamica quadratica, un controllore lineare può essere efficace fino a un certo punto. Pertanto, per il controllo dell'assetto viene studiato un approccio non lineare, in particolare l'algoritmo di controllo Incrementale Non Lineare Inversione Dinamica (INDI). L'algoritmo INDI si basa sull'annullamento della non linearità del sistema, utilizzando la dinamica del sistema che consente di adoperare il controller lineare per ottenere il comportamento desiderato nel quadrotore. A differenza della classica inversione dinamica non lineare, INDI non si basa sul modello di sistema preciso, migliorando così la robustezza del sistema contro le incertezze. Tuttavia, richiede la stima della derivata dello stato e la soppressione del rumore ad alta frequenza utilizzando un filtro passa-basso. Il metodo INDI viene simulato utilizzando MATLAB e Simulink e i risultati vengono confrontati con quelli di un controller PID in cascata. I risultati della simulazione indicano che le prestazioni del metodo INDI sono leggermente migliorate rispetto al controller PID originale, soprattutto per velocità più elevate e per traiettorie più aggressive, richiedendo allo stesso tempo meno potenza di calcolo e meno parametri da regolare.
Object-oriented modeling and dynamic inversion for quadrotor simulation and control
Esmaeilzadehrostam, Atefeh
2022/2023
Abstract
The objective of this research is to develop a model of a quadrotor and its components using the Wolfram System Model and Modelica language to create new blocks and utilities. Subsequently, a classical linear controller is implemented on System Modeler. This involves establishing a theoretical background on quadrotor kinematics and dynamics, as well as developing the model of its components such as mass body, electric motors, sensors and propellers. The goal for designing the quadrotor and controller for System Modeler is to integrate a multi-rotor package into the aircraft library for the upcoming system modeler release. This requires a user-friendly model with intuitive interfaces and visualizations. Thus, a classical linear cascade PID controller emerges as a reasonably suitable choice for the conceptual design stage. Despite the highly nonlinear nature of quadrotor dynamics, a linear controller can be effective to a certain extent. Therefore, a nonlinear approach, specifically the Incremental Non-linear Dynamic Inversion (INDI) control algorithm, is investigated for attitude control. The INDI algorithm is based on the canceling out the nonlinearity of the system, by using the dynamic of the system which allows to use the linear controller to achieve the desired behavior in the quadrotor. In contrast to classical nonlinear dynamic inversion, INDI doesn’t rely on the precise system model, thus enhancing system robustness against uncertainty. However, it requires state derivative estimation and the suppression of high-frequency noise using a low-pass filter. The INDI method is simulated using MATLAB and Simulink, and the results are compared with those of a cascade PID controller. The simulation results indicate that the performance of the INDI method slightly improved compared to the original PID controller especially for higher velocity and for more aggressive trajectories while requiring less computational power and fewer parameters to tune.File | Dimensione | Formato | |
---|---|---|---|
2024_April_EsmaeilzadehRostam.pdf
accessibile in internet per tutti
Dimensione
7.14 MB
Formato
Adobe PDF
|
7.14 MB | Adobe PDF | Visualizza/Apri |
I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.
https://hdl.handle.net/10589/219124