Softivation

T3 Gemstone neden Pixhawk gibi kurulmuyor

T3 Gemstone O1'de firmware yakma adımı yok, ArduPilot karta paket olarak kuruluyor. Kurulumun ve kablolamanın Pixhawk'tan nerede ayrıldığını anlatıyoruz.

Furkan IŞIKAY 6 dk okuma

Baykar ile T3 Vakfı'nın birlikte geliştirdiği T3 Gemstone O1 tanıtıldı. Teknofest takımlarının ilk sorusu belli: bu kart Pixhawk'ın yerine geçer mi.

Geçebiliyor. Ama kurulumu bildiğin adımlara benzemiyor, çünkü firmware indirip yer istasyonundan yazmıyorsun.

Kurulum modeli değişiyor

Bugünkü kurulumda iş ikiye bölünmüş durumda. Uçuş kontrolü Pixhawk'ta duruyor, görüntü işleme yardımcı bilgisayarda, ikisinin arasında bir seri hat var.

Gemstone bu iki işi tek kartta topluyor. ArduPilot burada karta yakılan bir firmware değil, Linux üstünde çalışan bir servis.

Aşağıdaki şekilde iki kurulumda kabloların nereye gittiğine bak. Pixhawk'taki etiketli soketlerin yerini tek bir pin başlığı alıyor, iki kart arasındaki seri hat da ortadan kalkıyor.

Kablolar nereye gidiyor: iki kart ile tek kart

Üstte GPS, alıcı ve telemetri Pixhawk'ın etiketli soketlerine, Pixhawk da UART ile Raspberry Pi'ye bağlı. Altta aynı üç cihaz T3 Gemstone'un 40 pinlik başlığındaki GPIO pinlerine gidiyor, uçuş kontrolü ve görüntü işleme aynı kartta
Nereye bak: üstteki gri soket etiketleri alttaki sarı halkalı pin adlarına dönüşüyor ve iki kart arasındaki UART hattı kayboluyor. Başlıktaki yerler temsilî; pini kartın pinout tablosundaki adından bul.

Etiketli soket yok, kırk pinlik başlık var

Pixhawk'ta GPS'i GPS yazan sokete, alıcıyı RC girişine takarsın. Gemstone'da uçuş bağlantılarının çoğu Raspberry Pi ile aynı yerleşimdeki kırk pinlik başlıktan geçiyor.

Kumanda girişi GPIO-15'te duruyor. GPS'in seri hattı GPIO-4 ile GPIO-17'de, pusulanın I2C hattı GPIO-2 ile GPIO-3'te, telemetri GPIO-7 ile GPIO-24'te. Tamamı aşağıdaki tabloda:

PinArayüzİşlev
GPIO-15RCIn SBUSKumanda alıcısı
GPIO-4 / GPIO-17UART-MAIN6GPS seri hattı
GPIO-2 / GPIO-3I2C-MCU0GPS pusulası, ADS1115
GPIO-7 / GPIO-24UART-WKUP0Telemetri
GPIO-5 / 14 / 6 / 13PWM-0A/0B/1A/1BRCOut 1 ile 4
GPIO-12 / 16 / 18PWM-ECAP0/1/2RCOut 5 ile 7
GPIO-26BuzzerSesli uyarı

Tablo resmî Türkçe dokümandaki pinout bölümünden. Kablolama böylece daha dikkat isteyen bir işe dönüşüyor; yanlış pine takılan bir hat, yanlış sokete takılmış bir kablo gibi kendini belli etmiyor.

Örnek: Pixhawk'ta GPS'i GPS yazan sokete takıp bitiriyordun. Gemstone'da aynı modülden iki kablo çıkar: seri hat GPIO-4 ile GPIO-17'ye, pusula hattı GPIO-2 ile GPIO-3'e gider. Yer istasyonu GPS'i görmüyorsa ilk bakacağın yer bu dört pin; soket etiketi olmadığı için pini başlıkta sayarak değil, pinout tablosundaki adından bulman gerekir.

Firmware yakma adımı yok

Resmî Türkçe doküman kurulumu paket yöneticisiyle anlatıyor. Kart açılıyor, paket kuruluyor, çevre birimleri bildiriliyor, sonra araç servisi etkinleştiriliyor.

AdımPixhawk · firmware yakmaGemstone · paket kurma
1Firmware dosyasını indirKartı Linux ile aç
2Kartı USB ile bağlaPaketi kur
3Yer istasyonundan yazDevice-tree overlay ekle
4Kart yeniden başlarKartı yeniden başlat
5Parametreleri ayarlaAraç servisini etkinleştir

Gemstone'da kart her açılışta Linux açılır ve servis otomatik başlar. Paket ve servis komutları şöyle:

Kod
gemstone@t3-gem-o1:~$ sudo apt install t3-gem-ardupilot
gemstone@t3-gem-o1:~$ sudo systemctl enable arducopter.service
gemstone@t3-gem-o1:~$ sudo systemctl start arducopter.service

Bu satırlar T3 Gemstone resmî Türkçe dokümanından birebir alındı.

Servis modelinin en kolay gözden kaçan tarafı, aynı anda tek araç servisinin çalışabilmesi. Copter'dan Plane'e geçerken önce mevcut servisi devre dışı bırakman gerekiyor.

Raspberry Pi kodun olduğu gibi çalışmaz

Başlık için Raspberry Pi uyumlu deniyor ve bazı şeyler gerçekten örtüşüyor: GPIO-2 ile GPIO-27 arası pin adları, başlığın fiziksel yerleşimi, 3v3 ve 5v besleme pinleri. Ama ArduPilot'un kaynak kodundaki pin tablosuna (GPIO_T3_GEM_O1.cpp) bakınca adların altındaki numaraların örtüşmediği görülüyor.

Kod
[T3_GEM_O1_GPIO_LED_GREEN] = 380,
[T3_GEM_O1_GPIO_LED_RED]   = 381,
[T3_GEM_O1_GPIO2]          = 506,
[T3_GEM_O1_GPIO3]          = 505,
[T3_GEM_O1_GPIO4]          = 439,
[T3_GEM_O1_GPIO5]          = 343,

GPIO-2 burada 506 numaralı sysfs pinine karşılık geliyor. Aynı ada sahip pin bir Raspberry Pi'de başka bir numara taşır.

Pin numarasını gövdesine yazdığın bir kod bu yüzden taşındığında sessizce yanlış pini sürer. Hata vermez, sadece beklediğin ucu oynatmaz.

Hata Mesajları ve sık karşılaşılan dört durum

Resmî doküman sorun gidermeyi birebir hata metinleriyle değil, dört durum başlığıyla anlatıyor. Aşağıdakiler o başlıklar ve ilk bakılacak komutlar.

ArduPilot servisi başlamıyor

Önce systemctl status arducopter.service çıktısına, sonra journalctl -u arducopter.service -r günlüğüne bak.

Önce ağı doğrula, sonra kartta yayının açık olduğunu netstat -u -n | grep 14550 ile kontrol et.

GPS algılanmıyor

GPS'i UART-MAIN6 ve I2C-MCU0 hatlarına bağlaman gerekiyor. GPIO-4, GPIO-17, GPIO-2 ve GPIO-3 pinlerine bak.

PWM çıkışları veya seri portlar çalışmıyor

Overlay'lerin yüklendiğini ls /proc/device-tree/chosen/overlays ile doğrula. Eksik varsa uEnv.txt yapılandırmasına dön.

ArduPilot bu kartı resmen destekliyor mu

Evet, kart desteği upstream'e girmiş durumda. ArduPilot'un ortak kodunda kart için ayrı bir alt tip numarası (HAL_BOARD_SUBTYPE_LINUX_T3_GEM_O1, 1029) ve kendi GPIO dosyası (GPIO_T3_GEM_O1.cpp) var.

Copter 4.7.0 sürüm notunda satır birebir şöyle geçiyor: T3 Gemstone O1 Linux autopilot support (@ghost, PR:31232). Kartın resmî ArduPilot sayfası da yayında.

Eksik olan saha kaydı. Kartla uçtuğunu anlatan bağımsız bir kullanıcı raporu henüz bulunmuyor; upstream destek gerçek, saha deneyimi henüz yok.

Karar vermeden önce

Kartın iyi olması, senin bugün geçmen gerektiği anlamına gelmiyor. Yarışma takvimi olan bir takım için asıl soru zamanlama. Geçişten önce takımca şu beş soruyu konuşun:

  • Yarışma takvimin ne zaman? Kart eline geçmeden prova yapamazsın.
  • Ekipte Linux bilen var mı? Servis, overlay ve log yönetimi Linux işi.
  • Görüntü işleme şart mı? Tek kart asıl avantajını burada veriyor.
  • Mevcut kurulumun uçuyor mu? Uçan kurulumu yarış öncesi değiştirme.
  • Yedek planın var mı? Tek kart arızasında ikinci bir yol lazım.

Bu sorular donanım özelliğiyle değil, takımın durumuyla ilgili. Kart iyi olsa bile yanlış zamanda geçiş yapmak yarış kaybettirir.

Devamı

Otopilot seçimi, Linux tabanlı otopilotun ne zaman mantıklı olduğu ve kartın başlığındaki uçuş bağlantılarının tamamı Sensörlerden Uçuşa Temel İHA eğitimi içinde işleniyor. Diğer başlıklar için tüm eğitimler sayfasına bakabilirsin.

Bu yazı işinize yaradı mı?

Ücretsiz kaynakTEKNOFEST İHA yazılım hazırlık kontrol listesiTakımınızın yazılım hazırlığını aşama aşama işaretleyin; yazdırılabilir liste.