Mission Planner paket kaybı gösteriyor, telemetri akıyor
Uçuş sürüyor. Harita akıyor, irtifa geliyor, mod değiştirdiğinde araç dinliyor. Ama Mission Planner'ın köşesindeki kayıp yüzdesi tırmanmış ve bir türlü inmiyor.
O yüzdeyi hesaplayan tek yer Mission Planner. Otopilota sorsan sana sıfır der. İkisi de doğru söylüyor, çünkü ikisi aynı şeyi saymıyor. Kabloyu kurcalamak bu farkı kapatmaz.
Ekranda görünen tablo
Komutlar gidiyor, uyarı sesi yok. Buna rağmen link kalitesi yüzde yüzün altında geziyor ve arada bir aşağı iniyor.
Çoğu kişi ilk iş anteni çeviriyor ya da telsizi değiştiriyor. Değiştirmeden önce o sayının neyi ölçtüğüne bakmak daha ucuz.
O yüzdeyi kim hesaplıyor
MAVLink her mesaja bir sıra numarası koyar. Sayaç sıfırdan iki yüz elli beşe kadar gider, sonra başa döner. Numarayı damgalayan taraf otopilottur.
Mission Planner gelen her kaynak için ayrı bir sayaç tutuyor ve beklediği numarayla gelen numara arasındaki farkı kayıp hanesine yazıyor. Kaynak derken aracın kimliğiyle bileşen kimliğinin ikilisini kastediyorum; iki ayrı bileşen aynı hattan yayın yapıyorsa sayaçları da ayrı.
Gördüğün yüzde toplam kayıp değil. Beş saniyede bir hem kayıp hem sağlam sayacı sıfır virgül sekizle çarpılıyor, yani eski kayıplar zamanla siliniyor. Son geçerli paketten on saniye sonra link kalitesi doğrudan sıfıra düşüyor.
Otopilot neden sıfır gösteriyor
Otopilotun durum mesajında iletişim için iki alan var. Bunlardan biri kaynak kodda sabit sıfır olarak gönderiliyor, hiç hesaplanmıyor.
İkincisi hesaplanıyor ama saydığı şey sıra boşluğu değil, ayrıştırma hatası. Bozuk başlık, yanlış uzunluk, tutmayan sağlama. Hattan sağlam çerçeveler geliyor da arada mesaj eksikse bu sayaç kıpırdamaz.
Bu yüzden otopilotun sıfır demesi hattın temiz olduğu anlamına gelmiyor. O sayaç aradığın boşluğu zaten görmüyor.
Kendi hattını ölç
Emin olmanın yolu kendi sayacını kurmak. Aşağıdaki kod bağlanıyor, üç akışı dört hertzde istiyor, otuz saniye dinliyor ve her kaynak için kaç numara atlandığını sayıyor.
Aracına bağlanan adresi kendi kurulumuna göre değiştir. Yardımcı bilgisayardan seri porta bağlanıyorsan adres yerine port yolunu ve baud değerini vereceksin.
Sıfır neye benziyor
Bu ölçümü yayına çıkmadan önce kayıpsız bir hatta çalıştırdık. Kıyas için bir taban çizgisi istiyorduk.
Saniyede elli beş paketten saniyede beş bin dört yüz pakete kadar yedi kademede ölçtük. Boşluk her kademede sıfır kaldı.
bagli: sysid=1
sure 30.0 sn, bozuk cerceve 4
sysid=1 compid=1 alinan=1307 bosluk=0 kayip=%0.00 (43.6 paket/s)Kendi hattında bu sayı sıfırdan büyük çıkıyorsa aradaki fark gerçek. Sıfır çıkıyorsa ekrandaki yüzde kayan ortalamanın kendisidir, arıza değil.
Sahada ne değişir
Yukarıdaki ölçüm kablolu ve sıkışmayan bir hatta yapıldı. Telsizle uçarken üç şey devreye giriyor: menzil, gürültü ve telsizin kendi tamponu.
Telsiz boş tampon yüzdesini otopilota bildiriyor, otopilot da bu yüzde düşünce yayın aralığını kaydırıyor. Yavaşlatma devredeyken veri seyrelir ama sıra numarası boşluğu oluşmaz. Veri geç geliyor diye kayıp aramaya başlama.
Otopilot bir mesajı kendi çıkış tamponuna sığdıramazsa o mesajın baytlarını atıyor ve sıra numarasını geri almıyor. Hattın öbür ucundaki boşluk telsizden değil, otopilotun kendisinden gelmiş oluyor. Akış hızlarını düşürmek bu durumda antenle uğraşmaktan daha çok işe yarar.
Hata Mesajları ve Anlamları
Aşağıdakiler Mission Planner kaynak kodunda geçen dizelerin aynısı.
No Heartbeat Packets Received
Bağlanma denemesi sırasında hiç kalp atışı okunamadı. Port yanlış, baud yanlış ya da hattı başka bir program tutuyor. Bu mesaj kayıpla ilgili değil, bağlantı hiç kurulmamış demektir.
Only 1 Heatbeat Received
Yazım kaynakta böyle. Mission Planner bağlanmak için iki geçerli kalp atışı bekliyor, yalnızca biri gelmiş. Hat açık ama zayıf ya da araya karışan veri var.
WARNING No Data for ... Seconds
Araç ARM durumdayken üç saniyeden uzun süre geçerli paket gelmezse çıkıyor. Bağlantıdan sonraki ilk otuz saniyede bastırılıyor ve beş saniyede birden sık tekrarlamıyor. Nokta yerine geçen sayı sessiz geçen saniyedir.
Mavlink Bad Packet (crc fail)
Kayıt dosyasına düşen satır. Çerçeve geldi ama sağlaması tutmadı. Bunu görüyorsan baytlar gerçekten bozuluyor; menzil, gürültü ya da baud uyuşmazlığına bak.
mav ... seqno ... exp ... pkts lost ...
Kayıp anında kayıt dosyasına yazılan satır. Hangi kaynakta, hangi numarada, kaç paketlik boşluk olduğunu buradan çıkarırsın. Ekrandaki yüzdeyi bu satırlarla doğrulamak tahmin yürütmekten iyidir.
Bu konunun devamı
Telemetri hattını kurmayı, çoğaltmayı ve ölçmeyi baştan sona anlatan eğitimi İHA Haberleşme Teknolojileri sayfasında bulabilirsin. Bu yazının derinleştirilmiş hâli de o kursta duruyor.
İNDİRİM KUPONU
Kupon kodu: SOFTIVATION15
Eğitimi alırken ödeme ekranındaki "Kupon kodu" kutusuna bu kodu yaz, %15 iner.




Yorumlar