Athena: Üçlü Mikrodenetleyici Mimarisiyle Tasarlanan Açık Kaynaklı Uçuş Kontrolcüsü
Platformumuzdaki en çok okunan ve popüler makaleleri görmek için Trendler bölümüne geçebilirsiniz.
Athena, roket ve uçuş kontrol sistemlerine ilgi duyan bir tasarımcı tarafından sıfırdan geliştirilen açık kaynaklı bir uçuş kontrolcüsüdür. Projede üç farklı STM32 mikrodenetleyici (MCU) kullanılmıştır: STM32H753VIT6 (MPU), STM32H743VIT6 (TPU) ve STM32G474RET6 (SPU). Bu üçlü MCU mimarisi, sensör verilerinin işlenmesi ve görevlerin farklı mikrodenetleyiciler arasında dağıtılması amacıyla tercih edilmiştir.
Tasarım Özellikleri
Athena'nın donanım özellikleri şu şekildedir:
Üçlü MCU: STM32H753VIT6, STM32H743VIT6 ve STM32G474RET6
6 Pyro Kanalı: 12V batarya bağlantısı ve sigorta koruması
6 PWM Kanalı: 2 kanal itki vektör kontrolü (TVC) için, 4 kanal kanatçık kontrolü için
Sensörler: Üçlü ICM-45686 IMU, LIS2MDLTR manyetometre, ICP-20100 ve BMP388 barometreler
GNSS ve İletişim: NEO-M8U-06B GPS, LoRa RA-02 telemetri, Bluetooth DA14531MOD
Depolama: SD kart ve Winbond W25Q256JV flash bellek
Güç Yönetimi: 7.4-12V LiPo batarya, BQ25703ARSNR şarj kontrolü, USB-C PD desteği
6 Katmanlı PCB: Sinyal, topraklama ve güç katmanları
Ayrıca Bakınız
Çoklu Mikrodenetleyici Kullanımının Tartışılması
Topluluk tarafından Athena'nın üç mikrodenetleyici kullanımı çeşitli açılardan değerlendirilmiştir. Bazı uzmanlar, bu yaklaşımın aşırı karmaşık ve gereksiz olduğunu belirtmiştir. Tek bir güçlü STM32H7 mikrodenetleyicinin, uygun şekilde optimize edilmiş yazılım ve gerçek zamanlı işletim sistemi (RTOS) kullanımıyla tüm görevleri rahatlıkla yerine getirebileceği vurgulanmıştır. Özellikle FreeRTOS gibi RTOS'ların çoklu görev yönetimi ve kesme (interrupt) işleme yetenekleri sayesinde, tek bir MCU'nun çoklu iş parçacığı (multithreading) ve DMA (Direct Memory Access) ile etkin bir şekilde kullanılabileceği ifade edilmiştir.
Bir diğer eleştiri, çoklu MCU kullanımının yazılım geliştirme ve bakım süreçlerini zorlaştıracağı yönündedir. Üç farklı firmware yığını oluşturmak, senkronizasyon ve iletişim problemlerini artırabilir. Ayrıca, üçlü IMU kullanımının beklenen yedekliliği sağlamadığı, çünkü ortak hata modlarının tüm IMU'ları etkileyebileceği belirtilmiştir. Güç devresinde de yedeklilik bulunmaması, sistemin genel güvenilirliğini azaltmaktadır.
Tasarımın Güçlü ve Zayıf Yönleri
Athena'nın tasarımı görsel açıdan dikkat çekici ve karmaşık sistemler tasarlama kapasitesini göstermektedir. Ancak tasarımda bazı teknik detaylar eleştirilmiştir. Örneğin, kablosuz modül için bakır alanlarının korunmaması ve bileşen boyutlarının padlerle uyumsuzluğu gibi PCB tasarım hataları tespit edilmiştir. Ayrıca, çoklu kristal kullanımı ve GPIO/timer kaynaklarının gereksiz yere fazla olması sorgulanmıştır.
Tasarımcı, üç MCU kullanımını STM32'nin çoklu çekirdek işlemcilerinde yeterli GPIO bulunmaması ve bloklanabilen işlemlerden kaçınma isteğiyle açıklamıştır. Ayrıca, bir MCU'nun görevleri engellemeden diğer MCU'ya veri göndermesi için UART/SPI arayüzleri kullanılmıştır. Ancak topluluk, bu yaklaşımın karmaşıklığı artırdığı ve tek MCU ile RTOS kullanmanın daha verimli olacağını belirtmiştir.
Yazılım ve Donanım Optimizasyon Önerileri
Kesme Tabanlı Programlama: STM32 mikrodenetleyiciler, kesme (interrupt) destekler ve bu sayede ana program akışı yavaşlamadan çevresel birimlerle iletişim kurulabilir.
DMA Kullanımı: Bellek erişimlerini CPU yükünü azaltmak için DMA ile gerçekleştirmek, veri transferlerinde beklemeyi önler.
RTOS Kullanımı: FreeRTOS gibi gerçek zamanlı işletim sistemleri, çoklu görev yönetimi ve zamanlama konusunda kolaylık sağlar.
Yedeklilik: Gerçek yedeklilik için farklı IMU modelleri ve çift güç devresi önerilir.
PCB Tasarımı: Kablosuz modüller için uygun bakır alan koruması ve bileşen-pad uyumu sağlanmalıdır.
Sonuç
Athena uçuş kontrolcüsü, açık kaynaklı ve üçlü MCU mimarisiyle dikkat çekici bir tasarım örneğidir. Ancak çoklu mikrodenetleyici kullanımı, yazılım karmaşıklığı ve bakım zorlukları gibi dezavantajlar taşımaktadır. Tek bir güçlü MCU ve RTOS kullanımı, bu tür projelerde daha verimli ve sürdürülebilir bir yaklaşım olarak öne çıkmaktadır. Ayrıca yedeklilik ve donanım optimizasyonu konularına daha fazla önem verilmesi gerekmektedir.
"İlk kural, gereksinimleri karşılamak için minimum karmaşıklığı eklemektir." - Gömülü sistemler alanında yaygın bir prensip
Athena projesi, tasarımcıya karmaşık sistemler geliştirme deneyimi kazandırırken, topluluk tarafından önerilen optimizasyonlar ve basitleştirme yaklaşımları gelecekteki projeler için önemli dersler sunmaktadır.
Kaynaklar:
Reddit r/electronics tartışması: https://reddit.com/r/electronics/comments/1nlkbif/athena_first_time_designing_a_flight_controller/























