Modeling, real-time simulation and control of quadrotor vehicles
- Global styles
- Apa
- Bibtex
- Chicago Fullnote
- Help
Abstract
Quadrotorlar dört pervaneli insansız hava araçlarıdır. Çok amaçlı olarak kullanılmaktadırlar. Askeri, casusluk, egitim, ara¸stırma gibi birçok alanda kullanılmaktadır. ˘Quadrotorlar dört motorların pervaneleri sayesinde dikey itki, dönme, yunuslama vesapma torkları olu¸sturulur. Dört pervanenin de aynı yönde dönmesiyle dikey itkiolu¸sturulur. sol pervanenin hızı artırılarak (veya azaltılarak) ve sag pervanenin hızı ˘azaltılarak (veya artırılarak) dönme momenti olu¸sturulur ve bu moment roll ivmesinesebep olur. arka pervanenin hızı artırılarak (veya azaltılarak) ve ön pervanenin hızıazaltılarak (veya artırılarak) yunuslama momenti olu¸sturulur ve bu moment pitch(yunuslama) ivmesine sebep olur. ön ve arka pervanenin hızı artırılarak (veyaazaltılarak) ve sol ve sag pervanenin hızı azaltılarak (veya artırılarak) sapma momenti ˘olu¸sturulur ve bu moment sapma ivmesine sebep olur. Bu dört motorun pervanelerinindönme gücü sayesinde, quadrotorlar ileri, geri ve dikey hareket edebilirler.Bu yüksek lisans tezi modelleme, linearizasyon, gerçek zamanlı simülasyon ve kontroliçermektedir. Öncelikle quadrotor simulink modeli olu¸sturulmu¸stur. Daha sonra busimulink modelinin x, y ve z pozisyon bile¸senleri, euler açıları ve motor pervanelerininaçısal hızları kesikli zamanlı PID kontrolörle kontrol edilir. Daha sonra bu simulinkmodeline hata toleranslı kontrol sistemi uygulanır. Son olarak da uçu¸su gerçek zamanlısimule etmek için Flight Gear simulatör programı kullanılır.Qaudrotoru modellemek için matlab simulink blokları kullanılmaktadır. Quadrotorsimulink modelinde, quadrotora referans otonom uçu¸s güzergahı saglaması için ˘trajectory modeli olu¸sturulur. Bu modelde x, y ve z pozisyon bile¸senleriyardımıyla dairesel, dikdörtgensel ve lineer güzergahlar çizilir. Dairesel güzergahlardaz bile¸seninin artırılmasıyla istenen yükseklik elde edilirken x bile¸seninin sinüsfonksiyonuyla ve y bile¸seninin cosinüs fonksiyonuyla birlikte hareket ettirilerekdairesel bölgeler olu¸sturulur. Dikdörtgensel bölgeler olu¸sturmak için önce z bile¸seniarttırılır. Sonra x ve y bili¸senleriyle dikdörtgensel bölge olu¸sturulur. Daha sonra zbile¸seni tekrar artırılarak x ve y bile¸senleri yardımıyla yeni bir dikdörtgensel alanolu¸sturulur. Lineer güzergahlar olu¸sturmak önce z bile¸seni artırılır daha sonra x vey bile¸senleriyle lineer alanlar olu¸sturulur.Euler açılarının kontolü için quadrotora referans euler açıları vermek için 'ObtaininEuler Angles' isimli bir simulink blogu olu¸sturulur. Burada referans ˘ f ve q açılarıolu¸sturulur. y açısı ise bu bloga dı¸sardan verilir. Bu açılara Euler açıları denilmektedir. ˘referans Euler açıları trajectory modelinde olu¸sturulan referans güzergaha göre¸sekillenmektedir. Bu referans açılar güvenli bir uçu¸s için önemlidir.Daha sonra quadrotor itkisi ve torqları kullanılarak referans açısal motor hızlarıolu¸sturulur. Öncelikle referans torklardan referans dikey itki olusturulur.bu itkiquadrotorun referans dikey kuvveti olarak da adlandırılır. Daha sonra bu referans dikeykuvvet ve torkların olusturdugu kontrol inputları ve bir dönü¸süm matrisi sayesinde ˘quadrotor referans motorlarının açısal hızları bulunur. Bu motor hızları, dinamik modeliçin giri¸s degeri olu¸sturur. Dinamik modelde lineer ivmelenme, hız ve pozisyonlar ˘uygun denklemler kullanılamak elde edilir. Ayrıca euler açıları da gerekli denklemlerkullanılarak elde edilir. Öncelikle quadrotor motorlarının açısal hızları elektrkselsabitlerin bulundugu denklemler yardımıyla bulunur. Daha sonra bulunan bu motor ˘hızlarının bulundugu denklemler kullanılarak dinamik modeling dikey kuvveti ile ˘dönme, yunuslama ve sapma torkları bulunur. Bulunan dikey itkinin de yer aldıgı ˘tezin dördüncü bölümünce açıklanan lineer ivmelenme denklemi sayesinde x, y vez yönlerindeki lineer ivmelenmeler bulunur. Lineer ivmelenme denkleminin birinciintegrali alınırsa lineer hızlar, ikinci integrali alınırsa lineer pozisyonlar bulunur.Dinamik modelde bulunan dönme, yunuslama ve sapma torkları sayesinde euler açılarıda elde edilir.Dinamik modelden sonra dinamik modelden çıkan sürekli sinyalleri kesikli sinyalleredönü¸stürmek için sürekli sinyalleri kesikli sinyalere dönü¸stüren bir model olu¸sturulur.Bu modelde pulse generator isimli simulink blogu kullanılır. Bu blok kesikli pulse ˘üreterek sinyalleri kesikli hale getirir.f¨Lineer olmayan model elde edildikten sonra lineer model elde edilir. Bunun içinküçük açı yakla¸sımı kullanılır. Ayrıca f, q sıfır(0) olarak alınırken y açısı sabitolarak alınır. Bu yüzden bunların türevi olan f˙q˙ ve y˙ sıfır(0) olur Trigonometrikfonksiyonlarda cosinüsler bir(1) degerine yakla¸sırken, sinüs fonksiyonları kendi ˘açılarına yakla¸sır. Lineer olmayan modeldeki lineer ivmelenme denklemlerindeeliminasyonlar olur. Ayrıca açısal oranlar (p q r) da euler açılarının türevine e¸sit olur.Açısal momentumlar(f¨q¨y¨ ) ise dönme momentinin x, y ve z yönündeki bile¸senlerininbu yönlerdeki atalet momenlerine bölümüne e¸sittir.Quadrotoru kontrol etmek kesikli zamanlı PID kontrolör kullanılır. Kontrolöre gelenreferans sinyaller ve dinamik modelden gelen sinyallerin birbirinden çıkarılmasısonucu olu¸san hata kesikli zamanlı PID kontrolör yardımıyla minimize edilir.Kontrolör yardımıyla lineer pozisyonlar, euler açıları ve motor pervanelerinin açısalhızları uçu¸s güvenligi için kontrol edilir. Referans sinyallerle dinamik modelden ˘gelen sinyallerin cevapları birbirleriyle kıyaslanarak kontrolörün çalı¸sma performasıbelirlenir.Quadrotorlarda hata olu¸sabilir. Olu¸san bu hatalar müdahele edilmedigi taktirde ˘ciddi hatalara dönü¸sebilir ve sistem hatalarına sebep olabilir.Hata Toleranslı kontrolsistemleri düzgün çalı¸san sistemlerde bir arıza meydana geldiginde o arızayı tolere ˘edip sistemin çalı¸smasına devam etmesini saglayan kontrol sistemleridir. Hatayı tespit ˘edip çözüm bulmak için kullanılan yöntemlerden biri kalman filtresidir. Kalmanfiltresiyle hata estimasyonu yapılıp çözüm bulunarak sistem çalı¸smasına devamedilir. Kontrolörle de sensör ve akçuator hatalarının düzeltilmesinde etkilidirler.Quadrotorlarda gürültüden kaynaklanan hatalar, sensör hataları ve akçuator hatalarıolu¸sabilir. Gürültüden kaynaklanan hatalarda sisteme gürültü verilerek sistem cevabıgürültülü hale getirilir. Daha sonra gürültülü cevaba Kalman Filtresi uygulanarakgürültünün büyük bir kısmı elimine edilir. Simulink modelinde quadrotor dinamikmodelinin lineer pozisyon bile¸senlerine, lineer hız bile¸senlerine ve euler açılarınagürültü uygulanır. Sensör hatalarında hata giri¸si olarak step kullanılır. Sensör hatalarıquadrotorun çıkı¸s cevaplarından lineer pozisyon bile¸senlerine uygulanır. Dolayısıylasensör hatasının etkisi quadrotor uçu¸s güzergahında görülür. Quadrotor sistemcevabında belli bir anda meydana gelen sıçramadan sonra, kesikli zamanlı kontrolörsayesinde sistem cevabı izlemesi gereken yörüngeyi küçük bir hatayla izlemeye devameder. Akçuator hatalarında motor pervanesinin açısal hızına step giri¸sli hata verilir.Hatadan dolayı hızda belli bir anda sıçrama meydana geldikten sonra, hız cevabıkontrolör sayesinde aynı görüngeyi izlemeye devam eder.Quadrotor modellemesi tamamlandıktan sonra kuadrotorun uçu¸sunu görsellemekiçin flight gear simulatörü kullanılır. Flight Gear quadrotor simulink modeli içinolusturulan uçu¸s güzergahının quadrotor tarafından izlenip izlenmedigi gerçek zamanlı ˘görsellemek için kullanılır. Flight Gear matlab simulink uyumlu bir simülatörprogramıdır. Bu programa simulink modelinden gelen model bilgisi kullanılarakQuadrotor uçu¸sunun gerçek zamanlı simülasyonu saglanır. Bunun için öncelikle ˘Flat Earth to LLA blogu giri¸sindeki Xe giri¸sine modeldeki x ve y pozisyon ˘baglantıları ba ˘ glanır. Z yüksekli ˘ gi ise bloktaki href giri¸sine ba ˘ glanır. Bu blokta ˘quadrotor modelindeki x, y ve z pozisyonları i¸slenerek enlem, boylam ve yükseklige ˘dönü¸stürülür. Bu blokta olu¸sturulan enlem, boylam ve yükseklik bilgileri ilequadrotordaki phi, theta ve psi açıları 6DoF Animation bloguna ba ˘ glanır. Flight ˘Gearı çalı¸stırmak için önce Flat Earth to LLA bloguna quadrotorunuçaca ˘ gı bölgenin ˘koordinatları girilir. Daha sonra Generate Run Script bloguna havalanı bilgileri ile ˘uçagın geometrik bilgisi girilir. Flight Gear çalı¸stırıldıktan sonra quadrotor için bir ˘trajectory kodu Generate Run Script blogunda olu¸sturulur. Simulasyon kısmında ˘görselligi sa ˘ glamak için ilgili havaalanının bilgileri ve koordinatları kullanılarak ˘havaalanının senaryosu indirilir. ˙ Indirilen senaryo flight gear simulatörüne yüklenir.Flight Gear arayüzünde quadrotor ve uçacagı bölge görülür. Son olarak simulink ˘model çalı¸stırılır ve uçu¸s simulatörde görülür. This thesis includes modeling, real-time simulation and control of the quadrotor. Inorder to model the quadrotor, matlab simulink blocks are used. In the quadrotorsimulink model, trajectory part is formed to provide reference autonomous flighttrajectory. After that, reference euler angles are given to the quadrotor for controllingeuler angles for a safe flight. Then, by using quadrotor torques and thrust, motorpropeller angular speeds are determined. This propeller speeds outputs are used asinputs in order to model dynamic part of the quadrotor. In the dynamic model,linear acceleration, velocity, and position are obtained with the help of correspondingequations. Moreover, euler angles are also determined by using appropriate equations.Discrete-time PID controller are used to control the quadrotor. In the control part,linear position, euler angles and motor propeller speeds are controlled for the sake offlight. In order to discretize the signals, palse generators and zero order holds are used.After quadrotor modeling is completed, for visualizing the quadrotor flight trajectory,a simulator called Flight Gear is used. In the Flight Gear simulator part, by using thecorresponding airport information, and its' coordinates, airport scenery is downloadedfirst, then the scenery is loaded to Flight Gear simulator. As the last step to see howthe quadrotor fly in the simulator, the simulink model is run and quadrotor simulinkmodel trajectory is observed in the flight area.Faults can happen in quaddrotor systems. These faults effect the quadrotor systemperformance and if they are not fixed, they become serious faults and system failuresoccurs. Disturbance faults, sensor faults and actuator faults can occur inside of thequadrotor system. In the disturbance faults, a disturbance is given to the system andsystem response becomes noisy. In order to remove the disturbance a Kalman Filter isused. By making fault detection, estimaton and prediction, Kalman Filter eliminatesmost of the disturbance and the system response turns into an acceptable response.Sensor faults are generated by using a step input for the fault. At the moment of sensorfault, the system response has a jump. However, due to quadrotor controller effect, thesystem response follows the same direction with a small error. In the actuator faults,step input is used for the actuator fault in the motor propeller speed. When the actuatorfault is applied, the propeller speed response jumps. Yet because of the quadrotorcontroller effect, the speed response goes in the same direction with a small error.To sum up, in these study, quadrotor modeling in matlab simulink, simulation inFlight Gear and control with discrete time PID controller is explained. Moreover,fault tolerant control systems are implemented to test quadrotor system robustness.
Collections