top of page
Eğitim Paneli

Mission Planner EKF hatası veriyor

31 Tem
4 dakikada okunur

Güncelleme tarihi: 14 Eki

Drone yerde duruyor, GPS var, uydu sayısı yeterli. Mission Planner'ın üstündeki EKF yazısı kırmızıya dönüyor ve motorlar ARM olmuyor.

Beklersen düzeliyor. Ertesi gün aynı alanda yine kırmızı. Bozduğun bir ayar aramana gerek yok, çünkü ortada bozulmuş bir ayar yok. Otopilot sana kendi konum tahminine ne kadar güvendiğini söylüyor.

Ekrandaki o çubuk ne ölçüyor

Mission Planner'ın HUD'undaki EKF etiketine tıkladığında açılan pencerede beş çubuk var. Bunlar sensör değeri değil. Otopilot her ölçümü kendi beklentisiyle karşılaştırıyor ve aradaki farkı, o ölçüm için tanımlanmış kabul sınırına bölüyor. Çıkan oran çubuğa yansıyor.

Yani çubuk yükseldiğinde pusulan bozulmuş olmak zorunda değil. Pusulanın söylediği ile otopilotun beklediği birbirini tutmuyor. İkisi farklı şeyler.

Resmî doküman bu değerlerin 0 ile 1 arasında olduğunu yazar, ama değer üst sınırsızdır. Aşağıdaki girişim örneğinde pusula varyansı 289'a çıkıyor; 1'in üstü "bu ölçüm reddedildi" demek.



0.8 sayısı nereden geliyor

Otopilotta bu iş için tek bir eşik parametresi var ve varsayılan değeri 0.8. Bu sayı iki ayrı yerde kullanılıyor: ARM öncesi kontrolde ve uçuş sırasındaki failsafe'de.

Aradaki fark önemli. ARM öncesi kontrol dört varyansa da tek tek bakıyor ve biri bile eşiği aşıyorsa ARM izni vermiyor. Uçuş sırasındaki kontrol ise aynı şekilde çalışmıyor.

Uçuş sırasındaki kontrol saniyede on kez bir puan hesaplar. Şekilde hangi varyansın kaç puan verdiğine ve failsafe'e giden yolun nerede ayrıldığına bak.



Zincire dikkat et: yükseklik varyansı uçuş sırasında hiç karşılaştırılmıyor. Konum varyansı da tek başına sayacı artırmıyor, yalnızca başka bir koşul zaten tuttuysa devreye giriyor.

Eşik aşımı sürerken 8. turda yaw sıfırlaması, 9. turda IMU lane değişimi denenir; bunlar sessizdir. Aşım 10 tur üst üste sürerse failsafe gelir.



Kırmızı çubuk gördüğün hâlde failsafe neden gelmiyor

Havada asılı duran bir araçta motor akımına bağlı manyetik girişim yükselince dört varyansın nasıl ayrıştığını aşağıdaki 200 saniyelik kayıtta görüyorsun. Girişimin açık olduğu bölgeye bak.



Pusula varyansı 0.011'den 289'a çıkar ve 403 örnek boyunca eşiğin üstünde kalır. Hız varyansı en fazla 0.18, konum varyansı en fazla 0.06 olur; ikisi de eşiğe yaklaşmaz.

EKF failsafe hiç tetiklenmez. Karar zinciri iki bağımsız işaret ister, burada yalnızca bir tane var ve araç uçmaya devam eder.

Bunun yerine başka bir şey olur. Otopilot 32 kez pusula değiştirir ve mesaj sekmesine EKF3 IMU0 switching to compass 1 satırını düşürür. Kırmızı çubuğu gördüğün hâlde failsafe beklemek yanlış refleks; asıl sinyal mesaj sekmesinde.

Örnek: Yarışma alanında kalkış sırası sende, gaz açar açmaz HUD'daki EKF yazısı kırmızıya dönüyor ve pencerede yalnızca pusula çubuğu tepeye vuruyor. Araç uçmaya devam eder ve failsafe gelmez; ama mesaj sekmesinde pusula değişim satırları art arda düşüyorsa pusula motor akımının ürettiği alanın içinde demektir. İnişten sonra pusulayı güç kablolarından ve dağıtım kartından uzaklaştırıp aynı testi gazı açarak tekrar et.



Kendi kartında nasıl ölçersin

Bu sorunun kaynağı gerçek donanımda motor akımı, gövde metali ve pusulanın montaj yeri. Senin kartında girişimi motorların kendisi üretir; ölçmen yeterli.

Mission Planner'ın penceresine bakmak yerine sayıyı doğrudan oku. Aşağıdaki kod otopilota bağlanır ve dört varyansı saniyede iki kez basar. Eşiği aşanı satırın sonunda işaretler.



Aracı yerde tutup gaz vermeden çalıştır, sonra pervaneleri sökmeden kalkışa geç ve aynı satırları izle. Girişim varsa fark gaz açtığın anda belirir ve çıktı şuna benzer:


pusula=169.707  hiz= 0.011  konum= 0.007  yukseklik= 0.000   ESIK USTU: pusula
pusula=169.713  hiz= 0.011  konum= 0.005  yukseklik= 0.000   ESIK USTU: pusula
pusula=169.781  hiz= 0.011  konum= 0.006  yukseklik= 0.000   ESIK USTU: pusula
pusula=169.739  hiz= 0.010  konum= 0.006  yukseklik= 0.000   ESIK USTU: pusula
pusula=169.767  hiz= 0.010  konum= 0.006  yukseklik= 0.000   ESIK USTU: pusula
pusula=169.723  hiz= 0.010  konum= 0.006  yukseklik= 0.000   ESIK USTU: pusula
pusula=169.701  hiz= 0.009  konum= 0.007  yukseklik= 0.000   ESIK USTU: pusula
pusula=170.879  hiz= 0.009  konum= 0.007  yukseklik= 0.000   ESIK USTU: pusula

Eşiğin adı FS_EKF_THRESH ve varsayılan değeri 0.8.


En sık yapılan hata FS_EKF_THRESH'i 1.0'a çekip uyarıyı susturmak. Eşiği yükseltmek pusulayı düzeltmez, sadece otopilotun seni uyarma penceresini daraltır. Girişim aynı yerde durur, uyarı gider.


Hata Mesajları ve Anlamları

Aşağıdakiler ArduPilot'un gerçekten ürettiği metinler. Mission Planner'ın mesaj sekmesinde birebir bu şekilde görünürler.



PreArm: AHRS: EKF3 still initialising

EKF3 açıldı ama çözümü henüz oturmadı. EKF3 etkin olduktan sonra da ARM izni bir süre gecikir; aradaki fark normal, bekleyeceksin.



PreArm: Need Position Estimate

EKF henüz bir konum üretemedi. Kapalı alandaysan dışarı çık, GPS'in yerleşmesini bekle. İvmeölçer ve pusula kalibrasyonlarının tamamlanmış olması gerekiyor.



EKF compass variance

Pusula yönü hatalı görünüyor. Aracı ortamdaki metalden uzaklaştır, pusulayı gövdedeki metalden ayır, kalibrasyonu tekrarla. Dahili pusulayı devre dışı bırakmak çoğu kurulumda işe yarar.



EKF height variance

Barometre değerleri kararsız ya da titreşim yüksek. Bu mesaj yalnızca ARM öncesi çıkar; uçuş sırasındaki failsafe yükseklik varyansına bakmaz.



EKF position variance

GPS konumu kararsız. Açık alana çık, GPS'i etkileyebilecek yayın kaynaklarını kaldır, anten yüksekliğini artır.



EKF velocity variance

GPS ya da optik akış hızları kararsız. Optik akış kullanıyorsan kalibrasyonunu kontrol et.



EKF variance: over thresholds

Failsafe tetiklendi ve sebebi varyans. Bu metnin ikinci hâli "position lost"; o zaman sorun varyans değil, EKF'nin konum tahminini tamamen kaybetmesidir. İkisi farklı arızalar, aynı satırda görünürler.



EKF Failsafe: changed to LAND Mode

Failsafe eylemi çalıştı. Varsayılan davranış budur: konum isteyen bir moddaysan araç LAND moduna geçer, roll ve pitch sende kalır, iniş hızını otopilot yönetir.



EKF3 IMU0 switching to compass 1

Otopilot pusula değiştirdi. Tek seferlik görürsen normaldir. Arka arkaya tekrarlıyorsa iki pusulanın da tatmin edici olmadığını söylüyor; yukarıdaki girişim örneğinde 32 kez tekrarlar.



Sahada ne değişir

  • Kırmızı çubuk gördüğünde hangi çubuğun kırmızı olduğuna bak. Pusula ile konum aynı şey değil, çözümleri de aynı değil.

  • Uyarı yalnızca gaz açtığında geliyorsa sebebi büyük ihtimalle motor akımı. Pusulayı güç kablolarından ve dağıtım kartından uzaklaştır.

  • Uyarı belirli bir alanda hep geliyorsa sebebi ortam. Aynı aracı 200 metre öteye taşı ve tekrar dene.

  • Failsafe gelmemesi sorunun olmadığı anlamına gelmiyor. Mesaj sekmesini aç ve pusula değişim satırlarını say.



Konunun devamı kursta

Buradaki eşik ve karar zinciri, otopilotun konum tahminini nasıl kurduğunu bilmeden ezberlenmez. Sensörlerin ne ölçtüğü, kalibrasyonun neyi düzelttiği ve ilk uçuşta neye bakılacağı kursta sırayla anlatılıyor.

Bu dersler Sensörlerden Uçuşa Temel İHA eğitiminin içinde.

İNDİRİM KUPONU

Kupon kodu: SOFTIVATION15

Eğitimi alırken ödeme ekranındaki "Kupon kodu" kutusuna bu kodu yaz, %15 iner.

Yorumlar


bottom of page