Drone pusulası şaşıyor, yön yanlış gösteriyor
- Furkan IŞIKAY

- 3 saat önce
- 3 dakikada okunur

Mission Planner açık, drone yerde duruyor, burnu kuzeye bakıyor. Ekrandaki pusula ise bambaşka bir yön gösteriyor. Kalibrasyonu üçüncü kez tekrarladın, değişen bir şey yok.
Bu noktada çoğu takım kalibrasyonu bir kez daha dener. Oysa kalibrasyon zaten geçtiyse sorun pusulanın kendisinde değil, pusulanın çevresinde.
Önce şunu ayır: sapma sabit mi, gazla mı değişiyor
Pusula sapmasının üç farklı imzası var ve her biri başka bir şeye işaret eder. Önce hangisinde olduğunu bulman gerekiyor, çözüm ondan sonra geliyor.
Sapma sabit ve hep aynı yönde: montaj yönü yanlış. COMPASS_ORIENT ya da harici pusulanın fiziksel yerleşimi hatalı.
Drone yerde dururken doğru, gazı açtığında kayıyor: motor ve güç kablosu girişimi. En sık görülen ve en çok vakit kaybettiren durum.
Sapma rastgele ve tekrarlanmıyor: kalibrasyon gerçekten kötü yapılmış ya da sensör arıza veriyor.
Bu yazı ikinci maddeye odaklanıyor, çünkü kalibrasyonu geçen bir sistemde en sık çıkan sebep o.
Pusulayı ne bozuyor
Manyetometre Dünya'nın manyetik alanını ölçer. Bu alan zayıftır. Motorların ve güç kablosunun çektiği akım da manyetik alan üretir ve pusula ikisini ayırt edemez, toplamını ölçer.
Belirleyici olan mesafe. Alan şiddeti mesafenin küpüyle azaldığı için pusulayı güç kablosundan iki kat uzaklaştırdığında girişim yaklaşık sekizde bire düşer. Uygulamada bu, pusulayı gövde içinden alıp GPS direğine taşımak demek.
Bunu simülasyonda göremezsin
Önce bir yanlış anlamayı kapatalım. Bu sorunu SITL kurup test edemezsin. Simülasyon manyetometreye motor girişimi eklemez, dolayısıyla simülasyonda pusula her zaman kusursuz çalışır.
Bunu ölçerek gösterelim. ArduCopter SITL'de drone ARM edildi ve gaz kanalı 1000 PWM'den 1800 PWM'e kadar beş kademede tarandı, her kademede yaklaşık 300 örnek toplandı.
THR_PWM |B|ort |B|min |B|max n1000 475.1 475.1 475.1 3071200 475.1 475.1 475.1 3011400 475.1 475.1 475.1 3011600 475.1 475.1 475.1 3011800 475.1 475.1 475.1 302SONUC: |B| degisim araligi = 0.0 mGauss (0.00%)Toplam 1512 örnekte manyetik alan şiddeti tek bir ondalık bile oynamadı. Gerçek bir kartta aynı testi yaptığında tam tersini görürsün: gaz arttıkça |B| tırmanır. İşte ölçmen gereken şey bu fark.
Kendi kartında nasıl ölçersin
Aşağıdaki betik otopilota bağlanır, gaz seviyesini ve manyetik alan şiddetini eş zamanlı okur, taban değere göre yüzde kaç saptığını yazar. Kendi kartın üzerinde çalıştıracaksın, simülasyonda değil.
En sık yapılan hata: pervaneler takılıyken test etmek. Pervaneleri sök, drone'u yere sabitle, ancak ondan sonra gazı kademeli aç. Pervane takılıyken yapılan gaz testi ciddi yaralanmaya yol açar.
Bağlantı satırını kendi hattına göre değiştir: USB için /dev/ttyUSB0, telemetri köprüsü için udp:0.0.0.0:14550. Gazı yavaş aç, her kademede birkaç saniye bekle.
Yorumu kolay. Taban değere göre sapma yüzde beşe kadarsa yaşanabilir. Yüzde onu aşıyorsa otopilot uçuş sırasında yönü kaybeder ve Loiter modunda tuvalet çukuru dediğimiz genişleyen daireler başlar.
Ölçüm kötüyse ne yaparsın
Sırayı bozma. Önce mesafeyi büyüt, sonra yazılım tarafını düzelt. Parametreyle kapatmaya çalıştığın fiziksel bir sorun geri gelir.
Pusulayı GPS direğine taşı, güç kablosundan en az 10-15 cm uzaklaştır.
Güç kablolarını birbirine burarak topla. Gidiş ve dönüş kablosu bitiştiğinde ürettikleri alan büyük ölçüde birbirini götürür.
Harici pusulayı kullan, gövde içindeki dahili pusulayı devre dışı bırak.
COMPASS_ORIENT değerini doğrula. Yanlış yön, iki pusula arasında tutarsızlık olarak geri döner.
Fiziksel düzenlemeden sonra bakılacak parametreler bunlar:
COMPASS_EXTERNAL = 1 # harici pusula kullaniliyorCOMPASS_ORIENT = 0 # montaj yonu (yanlissa tutarsizlik verir)COMPASS_USE = 1 # birincil pusula kullanilsinCOMPASS_USE2 = 0 # dahili pusulayi devre disi birakCOMPASS_OFFS_MAX = 1800 # offset ust siniri (varsayilan)Parametreleri değiştirdikten sonra otopilotu yeniden başlat ve pusula kalibrasyonunu baştan yap. Eski offsetler yeni yerleşime uymaz.
Hata Mesajları ve Anlamları
Mission Planner'ın mesaj penceresinde göreceğin metinler ve karşılıkları.
PreArm: Compass not calibrated
Pusula hiç kalibre edilmemiş ya da kalibrasyon değerleri silinmiş. Mission Planner üzerinden canlı kalibrasyonu tamamla ve otopilotu yeniden başlat.
PreArm: Compasses inconsistent
Birden fazla pusula var ve aralarındaki yön farkı kabul sınırını aşıyor. Neredeyse her zaman sebebi yanlış COMPASS_ORIENT ya da bir pusulanın girişim altında olmasıdır.
PreArm: Compass offsets too high
Kalibrasyon sonucu çıkan offset değeri COMPASS_OFFS_MAX sınırını (varsayılan 1800) aşmış. Bu genelde pusulanın sürekli bir manyetik alan içinde olduğunu gösterir: batarya, güç dağıtım kartı ya da gövdedeki mıknatıs.
PreArm: Check mag field
Ölçülen manyetik alan şiddeti beklenen aralığın dışında. Mesaj ölçülen değeri ve kabul edilen alt-üst sınırı birlikte yazar. Çok yüksek değer yakındaki metal ya da akım, çok düşük değer genelde kablo veya sensör arızası anlamına gelir.
Bad Compass Health
Otopilot pusuladan sağlıklı veri alamıyor. Önce I2C ya da CAN kablosunu ve lehimlerini kontrol et. Titreşim altında gevşeyen konnektör bu mesajın en sık sebebidir.
Sahada ne değişir
Masada yaptığın ölçüm sahayı tam anlatmaz. Zemindeki demir donatı, otopark, konteyner ve araç pusulayı yerdeyken saptırır. Drone havalandıktan sonra bu etki hızla azalır.
Pratik sonuç: kalkış noktasını betonarme zeminden ve büyük metal yapılardan uzak seç. Yerde gördüğün küçük bir sapma havada kendini düzeltiyorsa sebep zemindir, dronun kendisi değil.
Yarışma alanında şunu da unutma: manyetik sapma açısı şehirden şehre değişir. COMPASS_AUTODEC parametresi bunu GPS konumundan otomatik hesaplar, elle kapatma.
Bu yazıyı okuyanlara: Sensörlerden Uçuşa Temel İHA
Pusula kalibrasyonunun adım adım uygulaması, kart bazlı farklar ve diğer sensörlerin teşhisi Sensörlerden Uçuşa Temel İHA eğitiminin Kalibrasyon bölümünde anlatılıyor.
https://www.softivation.com/egitim/sensorlerden-ucusa-temel-iha-egitimi
İNDİRİM KUPONU
Kupon kodu: SOFTIVATION15
Eğitimi alırken ödeme ekranındaki "Kupon kodu" kutusuna bu kodu yaz, %15 iner.



Yorumlar