Navigasyon hassasiyetini arttırmak için ataletsel ölçüm birimine tamamlayıcı filtre uygulanması
Implementation of complementary filter to inertial measurement unit to increase navigation sensitivity
Yazar: MEHMET EMİN OKUDAN
Danışman: DR. ÖĞR. ÜYESİ İSMAİL BAYEZİT
İstanbul Teknik Üniversitesi / Fen Bilimleri Enstitüsü / Uçak ve Uzay Mühendisliği Ana Bilim Dalı / Uçak ve Uzay Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2019
Konu: Elektrik ve Elektronik Mühendisliği = Electrical and Electronics Engineering ; Havacılık Mühendisliği = Aeronautical Engineering ; Uçak Mühendisliği = Aircraft Engineering

Özet:
Navigasyon, hareketli bir platformun herhangi bir referans koordinat çerçevesine göre  yerinin ve hızının hesaplanmasıdır. Ancak pek çok uygulamada platformun referans eksene göre açısal hareketinin de hesaplanması gereklidir. Açısal hareket, hareketli platformun yönelim bilgisini elde etmek için kullanlır. Navigasyon sistemleri pek çok askeri ve sivil uygulamada hayati önem taşımaktadır. Günümüzde askeri veya sivil, hava, deniz ve kara taşıtlarında, navigasyon sistemleri, araçların koordinasyonun sağlanması, etkinliğin arttırılması gibi sayısız amaçla kendilerine yer bulmaktadır. Ancak bu tip navigasyon sistemlerinin ürettiği hatalar sistemlerin etkinliğini azaltmaktadır. Bu nedenle bu sistemlerin hatalarının giderilmesi ya da en aza indirilmesi birincil öncelik olarak karşımıza çıkmaktadır. Bunun için kullanılan yöntemlerden en etkili olanı sistemlerin avantajlı yönlerinin bütünleştirilmesidir.
Ataletsel Navigasyon Sistemi (ANS), herhangi bir dış kaynağa ihtiyaç duymadan hareketlinin kendi dinamik durumundan ortaya çıkan parametreleri kullanarak belli bir referans sistemine göre konum hesaplar. Bu nedenle sistem dış etkilere karşı dayanıklı ve sağladığı veriler süreklidir. Ataletsel Navigasyon Sistemleri diğer yöntemlere kıyasla daha ucuz, kurulumu kolay, çalışma için harici kaynaklara ihtiyaç duymama gibi özellilerinden dolayı ön plana çıkmaktadır. Güç sarfiyatındaki cimrilikleri, hafif olmaları ve veri alışverişinin kolay olmasından dolayı küçük ölçekli uygulamalar için idealdir. ANS, Küresel Konumlama Sistemi'nin (KKS) aksine dış girişimlerden etkilenmemektedir ve kesintisiz navigasyon çıktıları üretebilmektedir. Çünkü ANS otonom bir sistemdir ve dışarıdan bir sinyale bağlı değildir. Bu özelliği ile uydudan gelecek sinyalleri işleyerek konum, hız ve yönelim gibi navigasyon parametrelerini hesaplayan KKS'ye göre tercih edilebilir. 
Bir ANS, birbirine dik olarak yerleştirilmiş 3-eksen ivmeölçer, 3-eksen dönüölçer ve 3-eksen manyetometreden oluşan Ataletsel Ölçüm Birimi (AÖB) sensörlerinin birleşmesiyle meydana gelmektedir. Ayrıca ANS'de, AÖB'den aldığı ölçüm verilerini işleyen mikroişlemci gibi akıllı bir bölüm de bulunmaktadır. ANS'lerde ivmeölçerler doğrusal ivme ölçümleri, dönüölçerler açısal hız ölçümlerinden ve manyetometreler ise manyetik pusula ölçümlerinden sorumludur. Ataletsel Ölçüm Birimi'nin ana bileşenleri olan ivmeölçerlerin ve dönüölçerlerin üretimindeki maliyetin düşmesi ile birlikte üretim sayılarında artış meydana gelmiştir. Fakat ivmeölçerin ve dönüölçerlerin düşük maliyetle yüksek sayıda üretilmesi ile birlikte sensör performanslarında düşüş olduğu  gözlemlenmektdir. 
Hareketli bir platformun kendi ivme ve açısal değişim ölçümleri, üzerindeki sensörler sayesinde elde edildiği için kendi kendine yeterlidir ve yönelim bilgisi tüm koşullarda yer istasyonlarına gerek olmadan temin edilebilir. Ancak ANS'yi oluşturan sensörler olan dönüölçerin ve ivmeölçerlerin en önemli sıkıntıları, konumun başlangıç koşulları ve sensörlerin karakteristiklerinden ötürü, uzun süreli navigasyon süreçlerinde sistemin hatasının sürekli olarak artmasıdır. Bu durum bir süre sonra elde edilen yönelim bilgilerinin sapmasına neden olmaktadır. Bu yüzden ANS'nin hatalarının giderilmesi için sensör birleştirme algoritmalarından faydalanılır.
Bu çalışmada AÖB'nin üzerinde bulunduğu bir sistem için yönelim bilgisinin doğru olarak tahmin edilmesi amaçlanmıştır. Bunun için öncelikle sensör birleştirme algoritması olarak tamamlayıcı filtre tasarımı uygulanmıştır. Tamamlayıcı filtre, yuvarlanma, yunuslama ve sapma açılarını elde etmek için dönüölçer, ivmeölçer ve manyetometre sensör verilerini birleştirmenin basit ve yaygın bir yoludur. Bir sensörün avantajlı yönlerini kullanarak diğer sensörün zayıf yanlarının üstesinden gelmek için kullanılan algoritmada sensörlerin birbirlerini tamamlayıcı özelliklerinden faydalanılmıştır. Tamamlayıcı filtre algoritması ivmeölçer için alçak geçiren bir filtreden ve dönüölçer için yüksek geçiren bir filtreden oluşur. Ardından bu filtre çıkışları birleştirilir. Bu sayede uzun süreli navigasyon uygulamalarında dönüölçer sensöründe oluşan sapma hatası ve ivmeölçer sensöründe oluşan gürültü hatası elimine edilerek daha güvenilir bir yönelim tahmini yapılmış olur. Tamamlayıcı filtre algoritmasının sabit kazançlı olması değişen hareket durumları için sistemin yönelim tahminini sınırlamaktadır. Bu yüzden sistemin hareketine göre uygun kazanç değeri bulunması için bulanık mantık algoritması tamamlayıcı filtre ile birlikte kullanılmıştır.
Bilgisayar dilinde bir sistemin verilen giriş değerine karşılık çıkışın 1 ya da 0 olması beklenir. Bulanık mantık tasarımına göre ise bir sistemin belirlenen giriş şartlarına göre çıkış  değerlerinin  derecelendirilmesi amaçlanır. Bulanık mantık tabanlı tamamlayıcı filtre tasarımında sistemin hareketi modellenerek tamamlayıcı filtre algoritmasının kazancının 0 ila 1 arasında değiştirilmesi amaçlanmıştır. Hareket modelinin tanımlanması için dönüölçer ve ivmeölçer sensörlerinden alınan veriler kullanılmıştır. Bu veriler kullanılarak belirlenen kurallar çerçevesinde platformun hareketi tanımlanmıştır. Platformun hareketi, durgun ve hareketli oluşuna göre dönüölçer ve ivmeölçer sensörlerinden alınan veriler ışığında bir fonksiyona bağlı olarak derecelendirilmiştir. Bu sayede tamamlayıcı filtrenin kazancı için platformun hareketine göre optimum bir değer belirlenmiştir.
Bu çalışmada AÖB sensörü olarak InvenSense firmasına ait 9-eksen MPU9250 parça numaralı ürününün MATLAB sensör modeli kullanılmıştır. Bu ürün üzerinde 3-eksen ivmeölçer, 3-eksen dönüölçer ve 3-eksen manyetometre sensörü bulunmaktadır.  MPU-9250 ucuz, düşük güç tüketimli ve hafif olmasından dolayı pek çok çalışmada MEMS AÖB olarak kullanılmaktadır. Bu çalışmanın uygulama kısmı, MATLAB ile modelleme ve Simulink ile benzetim ortamı oluşturularak gerçekleştirilmiştir. MPU9250 sensörü "Sensor Fusion and Tracking Toolbox" kullanılarak  MATLAB programında modellenmiştir. MPU9250 sensör modeli için firmanın sağladığı veri yaprağındaki elektriksel özellikler kullanılmıştır. Öncelikle ideal sensör modelinin çıktıları ile MPU9250 sensör modelinin çıktıları kıyaslanmıştır. MPU9250 sensör modelinden alınan sonuçlardaki hata payları gözlemlenmiştir. Bu hata paylarını azaltmak adına basit bir kalibrasyon modeli oluşturulmuştur. Ardından  MATLAB Simulink uygulaması üzerinde farklı oryantasyon bilgileri girilerek elde edilen sensör çıktıları tamamlayıcı filtre ve bulanık filtre tabanlı  tamamlayıcı filtre bloklarına sokulmuştur. Bu bloklardan elde edilen çıktılar kendi aralarında ve gerçek oryantaston hareketi ile karşılaştırılarak performans değerlendirilmesi yapılmıştır.
Sonuç olarak, filtre performanları sistemin durgun veya hareketli halde olmasına göre X, Y ve Z olmak üzere 3 eksen için değerlendirilmiştir. Durgun halde, bulanık mantık tabanlı tamamlayıcı filtre X ve Y eksenlerinde çok fazla bir iyileşme sağlayamamış fakat Z ekseninde sağlamıştır. Ayrıca sabit katsayılı tamamlayıcı filtreye göre 3 eksende de gürültü performansında iyileştirme sağladığı görülmüştür. Hareketli halde ise bulanık mantık tabanlı tamamlayıcı filtre, sabit katsayılı tamamlayıcı filtreye kıyasla X ekseninde %39.89, Y ekseninde % 31.37 ve Z ekseninde % 40.53 oranında iyileşme sağlamıştır.

Abstract:
Navigation is the calculation of the location and velocity of a moving platform relative to any reference coordinate frame. However, in many applications, it is also necessary to calculate the angular motion of the platform relative to the reference coordinate frame. Angular motion is used to obtain orientation information of the moving platform. Navigation systems are crucial in many military and civilian applications. Nowadays, navigation systems are used for several purposes such as coordination of vehicles and increasing efficiency in air, sea and land military vehicles. However, the errors produced by such navigation systems reduce the efficiency of the systems. Therefore, eliminating or minimizing the errors of these systems has become the primary priority working area. The most effective method for this is to fusion the advantageous aspects of the systems. 
The Inertial Navigation System (INS) calculates the navigation information according to a particular reference system using parameters resulting from the dynamic state of the mobile itself without the need for any external source. Therefore, the system is not mixed and the data it provides is continuous. Inertial navigation systems stand out because of their special features such as cheaper, easier to install and no need for external sources for operation compared to other methods. They are ideal for small scale applications due to their low power consumption, lightweight and easy data exchange. The Inertial Navigation System (INS) is unaffected by external interference, unlike the global positioning system (GPS) and can produce uninterrupted navigation outputs. Because ANS is an autonomous system and is independence connected to an external signal. With this feature, it can be preferred according to GPS which calculates navigation parameters such as position, speed and orientation by processing the signals coming from the satellite.
An INS consists of a combination of 3-axis accelerometer, 3-axis gyroscope and 3-axis magnetometer Inertial Measurement Unit sensors placed perpendicular to each other. There is also a smart section in the INS, such as a microprocessor that processes the measurement data it receives from the IMU. In INS, accelerometers are responsible for linear acceleration measurements, gyroscopes are responsible for angular velocity measurements, and magnetometers are responsible for magnetic compass measurements. Accelerometers and gyroscopes, which are the main components of the inertial measurement unit, have increased the number of products with the decrease in the cost of production. However, it is observed that sensor performance decreases with the high number of accelerometers and gyroscopes produced at low cost. 
The acceleration and angular rate measurements of a mobile platform are self-sufficient as they are obtained by sensors on them, and orientation information can be provided in all conditions without the need for ground stations. However, the most important problems of the gyroscopes and accelerometers, which consist the INS, are the continuous increase of system error in long-term navigation processes due to the initial conditions of the position and the characteristics of the sensors. Therefore, sensor fusion algorithms are used to eliminate INS errors.
In this study, it is aimed to accurately predict the orientation information for a system on which the IMU is located. For this purpose, complementary filter design is applied as sensor fusion algorithm. The complementary filter is a simple and common way to combine gyroscope, accelerometer and magnetometer sensor data to obtain roll, pitch, and yaw angles. In the algorithm used to overcome the weaknesses of the other sensor by using advantageous aspects of one sensor, complementary features of the sensors are utilized. The complementary filter algorithm consists of a low-pass filter for the accelerometer and a high-pass filter for the gyroscope. These filter outputs are then combined. In this way, a more reliable orientation estimation is made by eliminating deviation error in the gyroscope sensor and noise error in the accelerometer sensor in long-term navigation applications. The constant gain of the complementary filter algorithm limits the estimation of the orientation of the system for changing motion situations. Therefore, fuzzy logic algorithm is used with complementary filter in order to find the appropriate gain value according to the movement of the system.
In the computer language, the output is expected to be 1 or 0 versus a given input value. According to fuzzy logic design, it is aimed to rate the output values of a system according to the specified input conditions. In the fuzzy logic based complementary filter design, the motion of the system is modeled and it is aimed to change the gain of the complementary filter algorithm between 0 and 1. The data obtained from the gyroscope and accelerometer sensors were used to define the motion model. Using this data, the movement of the platform is defined in accordance with the rules determined. The movement of the platform is graded depending on a function in the light of the data received from the gyroscope and accelerometer sensors according to its stagnation and motion. Thus, an optimum value for the gain of the complementary filter is determined according to the movement of the platform.
In this study, MATLAB sensor model of 9-axis MPU9250 which is the product of InvenSense company was used as IMU sensor. This product has a 3-axis accelerometer, 3-axis rotary meter and 3-axis magnetometer sensor. MPU-9250 is used as MEMS IMU in many studies because of inexpensive, low power consumption and lightweight. The application part of this study was realized by modeling with MATLAB and creating a simulation environment with Simulink. The MPU9250 sensor is modeled in MATLAB using the "Sensor Fusion and Tracking Toolbox". For the MPU9250 sensor model, electrical specifications in the datasheet provided by the company are used. First, the outputs of the ideal sensor model are compared with those of the MPU9250 sensor model. The margins of error obtained from the MPU9250 sensor model were observed. A simple calibration model has been developed to reduce these margins. Then, by entering different orientation information on MATLAB Simulink application, the sensor outputs obtained were inserted into complementary filter and fuzzy filter based complementary filter blocks. The results obtained from these blocks were compared with each other and with the actual orientation movement and the performance evaluation was made.
As a result, filter performances were evaluated for 3 axes, X, Y and Z, depending on whether the system is in stagnant state or in motion state. In the stagnant state, the complementary filter based on the fuzzy logic did not achieve much improvement in the X and Y axes, but did in the Z axis. In addition, it has been observed that it improves noise performance in 3 axes compared to the complementary filter with constant coefficients. In motion state, the fuzzy logic based complement filter improved 39.89% in X axis, 31.37% in Y axis and 40.53% in Z axis compared to complementary filter with constant coefficient.