Neural disturbance rejection for a multirotor

Kotze, Henry (2021-03)

Thesis (MEng)--Stellenbosch University, 2021.


ENGLISH ABSTRACT: The thesis addresses the problem of multirotors experiencing various disturbances such as wind, payloads and ground effects. These disturbances introduce challenges during specific application uses such a s delivery, capturing images and line following. The project models these disturbances as unknown and attempts to implement a controller architecture which rejects them to provide a general solution for all application uses. The project has a particular focus on using neural networks as a solution to the problem because of the recent advances the technique has made in fields which share common attributes. Existing approaches mostly attempt to replace the controller entirely with neural networks, because of its ability to learn nonlinear behaviour, which many classical controllers ignore. This project rather focuses on augmenting the classical controller with neural networks to account for disturbances and nonlinear behaviour. Specifically, the project uses a disturbance rejection architecture using a neural network as its observer for disturbances. The neural network estimates the disturbances which are then rejected by feeding it back into the classical controller output signal. Synthetic labelled data is generated using the Gazebo simulation environment wherein disturbances of a specific nature occur with domain randomisation applied for Sim2Real transfer. The flight controllers used is PX4 which provides the Software-in-the-Loop functionality to fly a multirotor along a specific trajectory. The neural network estimation for practical flights shows good Sim2Real transfer with its ability to estimate payloads being carried by a multirotor and ground effects during landing. The neural network disturbance rejection is also compared to two other classical observers, namely the Extended Kalman Filter (EKF) and the Extended State Observer (ESO). The neural network shows superior disturbance rejection over the EKF and ESO when the multirotor is experiencing force disturbances. For torque disturbances, the ESO performed the best. From the disturbance rejection results, it is evident that for torque disturbances which influence the faster dynamics of the multirotor, observers should execute alongside the controllers such as the ESO. For disturbances which influence the slower dynamics of the multirotor, algorithms which execute on a companion board are sufficient and better. Specifically, the use of a neural network as an observer in a disturbance rejection architecture shows compelling evidence as the method for rejecting unknown disturbances influencing a multirotor.

AFRIKAANSE OPSOMMING: Die tesis pak die probleem aan dat hommeltuie verskeie versteurings ondergaan tydens ’n vlug. Hierdie versteurings kan wind, grond effekte en vragte insluit wat problematies is vir wanneer hommeltuie in verskeie praktiese toepassings gebruik word. Die projek benader hierdie versteurings as onbekend en beplan om a beheer argitektuur te ontwikkel wat ’n algemene oplossing bied vir hommeltuie wat versteurings ervaar tydens praktiese vlugte. Die projek fokus om neurale netwerke te gebruik as deel van die oplossing as gevolg van die onlangse vordering wat neurale netwerke gemaak het in velde wat dieselfde eienskappe as die van beheerstelsels het. Bestaande tegnieke benader die probleem deur om die klassieke beheerder heeltemal te vervang met neurale netwerke weens die voordele wat neurale netwerke bied vir nielinieëre gedrag. Die projek benader die probleem deur die klassieke beheerder saam met ’n neurale netwerk te werk om die versteurings en nie-linieëre gedrag te beveg. Die projek gebruik ’n versteuring verwerping argitektuur wat ’n neurale netwerk gebruik as sy versteuring afskatter. Die neurale netwerk skat die versteurings af wat dan in die terugvoer lus gebruik word met die klassieke beheerder se uitree sein. Die neurale netwerk word geleer deur gebruik te maak van die Gazebo simulasie omgewing om sintetiese data te genereer. Die simulasie omgewing word verder verryk deur om omgewings ewekansigheid toe te pas om sodoende die neurale netwerk se simulasie-tot-werklikheid skakel te verbeter. Die PX4 vlugbeheerder word gebruik om die hommeltuig in simulasie te laat vlieg. Die neurale netwerk se afskatting van versteurings op praktiese vlugtoetse wys dat die neurale network goed oorgeskakel het na die werklikheid deurdat dit ’n vrag wat deur die hommeltuig gedra word kan afskat asook grond effekte. Die neurale netwerk word ook vergelyk teen twee ander klassieke tegnieke: die Uitgebreide Kalman Filter (UKF) en die Uitgebreide Toestand Waarnemer (UTW). Die neurale netwerk se versteuring verwerping is beter as die van UKF asook die UTW wanneer die hommeltuig onderworpe is aan krag versteurings. Vir torsie versteurings is die UTW beste. Die versteuring verwerping resultate toon aan dat vir torsie versteuring is dit beter om waarnemers soos die UTW te gebruik wat op die vlugbeheer stelsel uitgevoer word. Stadige versteurings soos die van krag versteurings kan verwerp word deur gebruik te maak van algoritmes wat meer kragtige verwerkingseenheid stelsels kort. Spesifiek toon die resultate aan dat die gebruik van ’n neurale netwerk as ’n versteuring afskatter in ’n versteuring verwerping argitektuur die voorkeur geniet.

Please refer to this item in SUNScholar by using the following persistent URL:
This item appears in the following collections: