top of page
Eğitim Paneli

GPS Var, Uydu Yeterli, Ama Drone ARM Olmuyor

Problem: kod hazır, araç ARM olmuyor

Saha günü. Batarya takılı, GPS'in ışığı yanıyor, Mission Planner "10 uydu" diyor. ARM'a basıyorsun — olmuyor. Takım kabloyu oynatıyor, kartı yeniden başlatıyor, pusulayı bir daha kalibre ediyor. On beş dakika gidiyor. Sonra bir anda kendiliğinden ARM oluyor ve kimse neden olduğunu bilmiyor.

Oysa ArduPilot engelin ne olduğunu baştan beri biliyordu. Sorun, çoğu takımın onu okumaya hiç çalışmaması. Bu yazıda engeli ölçerek bulan 15 satırlık bir kod var; hepsi ArduCopter V4.7.0 SITL'de çalıştırıldı.




SITL'i 2 dakikada kur




Tuzak: "GPS gelsin, ARM olur" doğru değil


Ölçtük. SITL açıldıktan 17 saniye sonra GPS fix_type=6 (RTK Fixed) ve 10 uydu durumundaydı. ARM yine reddedildi. Sebep GPS değildi: Arm: Gyros inconsistent. Gyro'lar termal dengeye gelmemişti. GPS beklemek gerekli ama yeterli değil.

İkinci tuzak daha ince: ArduPilot PreArm gerekçesini kendiliğinden yayınlamaz. Pasif dinlersen hiçbir şey duymazsın. Gerekçeyi öğrenmenin yolu bir ARM denemesi göndermek ve ardından STATUSTEXT'i dinlemektir. İlk denememizde tam da bunu atlamıştık: araç "bloke" diyordu ama sebep listesi bomboş geliyordu.



Minimal kod

İki kanal var. SYS_STATUS içindeki 0x10000000 biti "engel var mı" sorusunu bedava cevaplar. Sebep ise tek bir ARM denemesi karşılığında gelir:




SITL kanıtı

Taze açılmış SITL üzerinde gerçek çıktı:


$ python3 prearm_mini.py
armlanabilir : False
  > Arm: Accels inconsistent
  > Arm: EKF attitude is bad
  > Arm: AHRS: not using configured AHRS type

Üç sebep birden. Hiçbiri kabloyla ilgili değil, hiçbiri GPS değil — üçü de "daha bekle" diyor. Bu araç elinde olsaydı o on beş dakikayı harcamazdın.



Yarışma kodunda bu yeterli mi? Hayır.

Yukarıdaki kod engeli görür ve sebebi söyler. Sahada eksik kalanlar şunlar: hangi PreArm mesajının hangi konnektör pinine karşılık geldiği (GPS1 konnektörü tek başına GPS, pusula, emniyet butonu ve buzzer taşır — yarım oturursa dört mesaj birden gelir ve teşhis şaşırtır), Pixhawk / Cube Orange / Matek kartlarındaki farklar (Cube'un ısıtmalı IMU'ları soğukta 1-2 dakika "Gyros inconsistent" verir, Matek'in bazı sürümleri emniyet butonu pinini hiç dışarı vermez), ve mesaj metinlerinden hangisinin beklemekle geçeceği hangisinin geçmeyeceği.

Bunların tamamı — 12 satırlık pin/mesaj eşleşme tablosu, dokuz maddelik semptom-sebep-çözüm listesi ve kasıtlı arıza testiyle doğrulanmış tam teşhis sınıfı — Sensörlerden Uçuşa Temel İHA Eğitimi içinde işleniyor.

Bu yazıyı okuyanlara: Sensörlerden Uçuşa Temel İHA Eğitimi — indirim kodu SOFTIVATION15 ile %15 indirimli: https://www.softivation.com/egitim/sensorlerden-ucusa-temel-iha-egitimi

Yorumlar


bottom of page