top of page
Eğitim Paneli

SITL'de batarya failsafe çalışmıyor (voltaj hiç düşmüyor)

15 Eki
3 dakikada okunur

Görev provasında drone'un batarya azalınca kalkış noktasına döndüğünü görmek istiyorsun. SITL açık, drone havada, Mission Planner'da batarya 12,6 V'ta çakılı duruyor ve dakikalar geçse de bir milim inmiyor.

Voltajı elle düşürdüğünde ekrana kırmızı bir Battery Failsafe yazısı geliyor ama drone yerinde asılı kalıyor. Eve dönmüyor, inmiyor, sanki hiçbir şey olmamış gibi bekliyor.

Bu iki durumun arkasında üç ayar var ve üçü de varsayılan değerinde duruyor. Hangisine takıldığını ekrandaki mesajdan ayırt edebilirsin.

Voltaj neden hiç düşmüyor

Simülatördeki batarya iki ayarla tanımlanır: SIM_BATT_VOLTAGE voltajı, SIM_BATT_CAP_AH kapasiteyi belirler. Kapasitenin varsayılanı 0'dır ve 0 sınırsız batarya demektir.

Kapasite 0 iken simülatör voltajı hiç eksiltmez; ArduPilot kaynak kodundaki açıklama da "SIM_BATT_CAP_AH 0 ise voltaj sabittir" der. 12,6 V'u sabit görmen simülatörün varsayılan davranışıdır.

Failsafe'i denemek için iki yolun var. Voltajı doğrudan eşiğin altına çekersin ya da kapasiteye gerçek bir değer verip bataryanın uçtukça boşalmasını beklersin. İlki saniyeler sürer ve tekrarlanabilir, bu yüzden provada onu kullan.



Mesaj geliyor ama drone eve dönmüyor

Voltaj eşiğin altına inince otopilot bunu hemen failsafe saymaz. Varsayılan eşik 10,5 V'tur ve voltajın bu değerin altında kesintisiz 10 saniye kalması gerekir; bu süreyi BATT_LOW_TIMER belirler.



Şekildeki iki çubuğa bak. 6,4 saniye süren düşüş sayacı doldurmadı ve hiçbir şey olmadı; voltaj geri gelince sayaç sıfırlandı. 10,2 saniye süren düşüş çizgiyi geçti ve failsafe başladı.

Sayaç dolduğunda drone'un ne yapacağını BATT_FS_LOW_ACT seçer. Varsayılanı 0'dır, yani yalnızca uyarı. Otopilot mesajı basar, uçuş modunu değiştirmez; GUIDED'da asılı kalan drone'un sebebi budur. 1 LAND, 2 RTL demektir.



İkinci denemede hiçbir şey olmuyor

İlk denemede yalnızca uyarı aldın, ayarı 2 yaptın, voltajı yükseltip yeniden düşürdün ve bu kez mesaj bile gelmiyor. Otopilot düşük batarya failsafe'ini bir kez tetikler ve o durumu kilitli tutar; voltajın geri yükselmesi kilidi açmaz.

Kilit açılmadan ARM da edemezsin: drone indikten sonra mesaj panelinde PreArm uyarıları sıralanır. Temiz bir deneme için SITL'i yeniden başlat ya da otopilota batarya sıfırlama komutu gönder; ikincisini ders bölümünde adım adım görebilirsin.


Failsafe denemesini yerde, ARM edilmiş ama kalkmamış drone ile yapma. Drone yerdeyken batarya failsafe'i hangi eylem seçili olursa olsun motorları durdurur; havadaki davranışı görmek için önce kalkış yap.


Testi doğru kur

Mission Planner SITL'e 5760 portundan bağlıyken aynı porttan ikinci bir program bağlanamaz. Aşağıdaki Python kodu 5762 portunu kullanır. Drone'u Mission Planner'dan GUIDED'da kaldır, sonra kodu çalıştır.



Kod önce eylemi RTL yapar, sonra voltajı 10,3 V'a çeker ve failsafe mesajıyla mod değişimini bekler. Her parametre yazımında otopilotun geri okunan değerini basar; yazma tutmazsa bunu hemen görürsün.



Ne göreceksin

Drone GUIDED'da havadayken kodu çalıştırırsan yaklaşık 10 saniye sonra şunu görürsün:


BATT_FS_LOW_ACT = 2
SIM_BATT_VOLTAGE = 10.3
Mod: GUIDED
Mod: RTL
Mesaj: Battery 1 is low 10.30V used 232 mAh
Mesaj: Battery Failsafe

mAh sayısı o ana kadar ne kadar uçtuğuna göre değişir. BATT_FS_LOW_ACT satırını silip aynı denemeyi 0 değeriyle yaparsan iki mesaj yine gelir ama mod GUIDED kalır.



Hata mesajları ve anlamları

Battery 1 is low 10.30V used 303 mAh

Voltaj BATT_LOW_VOLT altında BATT_LOW_TIMER süresinden uzun kaldı. Sayılar o anki voltaj ve harcanan kapasitedir. Ardından gelen eylem BATT_FS_LOW_ACT'e bağlıdır.

Battery Failsafe

Failsafe tetiklendi. Mod değişmediyse BATT_FS_LOW_ACT 0'dadır; değeri 1 ya da 2 yap ve kilidi çözüp yeniden dene.

PreArm: Battery 1 low voltage failsafe

Drone yerde ve voltaj şu an eşiğin altında. Bu kontrolde sayaç yoktur, anlık voltaja bakılır. SIM_BATT_VOLTAGE'ı eşiğin üstüne çıkar.

PreArm: Battery failsafe

Bu uçuşta failsafe bir kez tetiklendi ve kilitli duruyor. Voltaj düzelse de ARM izni gelmez; SITL'i yeniden başlat ya da batarya sıfırlama komutu gönder.



Simülasyon kursunda devamı

Kilidin kaynak koddaki yeri, uçuşta yeniden deneme komutu, kapasiteyle boşalan bataryanın voltaj eğrisi ve log imzası Yapay Zeka ve İHA Simülasyon eğitiminin Simülasyon Yapalım bölümünde, sürü ve rüzgâr senaryolarının yanında anlatılıyor.

İNDİRİM KUPONU

Kupon kodu: SOFTIVATION15

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

DİJİTAL ÜRÜN İNDİRİMİ

Yapay Zeka ve İHA Simülasyon için Sanal Makine Kopyası: ArduPilot SITL, ROS Noetic ve Gazebo 11 kurulu olarak gelen sanal makine.

Kupon kodu: SOFTIVATIONVM15 · ürün sayfasında ödeme ekranında %15 iner.

Yorumlar


bottom of page