Ürünlerimizde Neden Zephyr RTOS Kullanıyoruz?

Amazeng Teknik Ekip
5 dakika okuma
Zephyr RTOSEmbedded SystemsIoTData AcquisitionSecure Boot

Giriş

Endüstriyel veri toplama (DAQ) cihazlarımızı tasarlarken, sadece donanımın gücüne değil, aynı zamanda yazılımın güvenilirliğine ve sürdürülebilirliğine de odaklandık. ZMA serisi ürünlerimizde işletim sistemi olarak Zephyr RTOS'u tercih etmemizin arkasında yatan nedenleri ve bu seçimin bize (ve dolayısıyla size) sağladığı avantajları paylaşmak istiyoruz.

Bizi bu modern gerçek zamanlı işletim sistemine (RTOS) yönlendiren temel faktörler; güvenlik, modülerlik ve endüstriyel standartlara olan uyumuydu.

T2 Workspace Topolojisi ile Düzenli Geliştirme

Zephyr'in en büyük güçlerinden biri, karmaşık bağımlılıkları yönetme şeklidir. Biz de projelerimizde "T2 Workspace" olarak bilinen topoloji desenini kullanıyoruz. west aracı ve west.yml dosyası sayesinde, projemizin ihtiyaç duyduğu tüm bileşenleri tek bir merkezden yönetebiliyoruz.

Bütün bir Zephyr kod tabanını projeye dahil etmek yerine, sadece ihtiyacımız olan modülleri seçiyoruz:

  • cmsis_6 ve hal_stm32: İşlemci mimarisi ve donanım soyutlama katmanları.
  • mcuboot: Güvenli önyükleme (bootloader) için.
  • mbedtls: Kriptografik işlemler ve güvenlik için.

Bu yaklaşım, kod tabanımızı temiz tutmamızı ve güncellemeleri çok daha kontrollü bir şekilde yapmamızı sağlıyor.

Özel Donanım Desteği (Custom Board Support)

ZMA veri toplama cihazlarımız (v1 ve v2), STM32 tabanlı özel tasarım kartlara sahiptir. Zephyr'in esnek "Device Tree" (Aygıt Ağacı) yapısı sayesinde, kendi donanımımıza özel .dts dosyalarını ve Kconfig yapılandırmalarını kolayca oluşturabiliyoruz.

Bu yapı bize şunları kazandırıyor:

  1. Donanım Soyutlama: Kodlarımızdaki mantık değişmeden, donanım revizyonları arasında geçiş yapabiliyoruz.
  2. Hızlı Prototipleme: Nucleo gibi standart geliştirme kartları üzerinde, "overlay" dosyaları kullanarak aynı kodu test edebiliyoruz.

Güçlü Sürücü Altyapısı

Teker teker "register" seviyesinde sürücü yazmak yerine, Zephyr'in sunduğu zengin alt sistem (subsystem) ve sürücü desteğinden faydalanıyoruz. Bu sayede donanımın karmaşıklığını soyutlayarak, asıl işimiz olan veri işlemeye odaklanabiliyoruz.

Kullandığımız temel sürücü avantajları:

  • GPIO & PWM: Sistem durum LED'leri ve uyarı mekanizmaları için hassas kontrol.
  • ADC Entegrasyonu: Yüksek hassasiyetli harici ADC sensörleriyle SPI üzerinden haberleşirken, Zephyr'in standart ADC API'sini kullanıyoruz. Bu, sensör modelini değiştirsek bile üst katman yazılımımızın aynı kalmasını sağlıyor.
  • UART & Konsol: Loglama ve Modbus RTU haberleşmesi için sağlam bir seri iletişim altyapısı.
  • EEPROM: Cihaz konfigürasyonlarını kalıcı hafızada güvenle saklamak için standartlaştırılmış depolama sürücüleri.

Güvenlik ve MCUboot

Endüstriyel cihazlarda güvenlik bir "opsiyon" değil, zorunluluktur. Zephyr ekosisteminin bir parçası olan MCUboot ile cihazlarımıza "Secure Boot" (Güvenli Önyükleme) özelliği kazandırdık.

  • İmza Doğrulama: Cihazlarımız sadece bizim tarafımızdan RSA-2048 anahtarı ile imzalanmış, doğrulanmış yazılımları çalıştırır.
  • Güvenli Güncelleme: Yazılım güncellemeleri sırasında oluşabilecek hatalara karşı korumalı bir yapı sunar.

Kalite ve Standartlar

Zephyr kullanmamızın bir diğer nedeni de sunduğu kalite güvencesidir:

  • Yerleşik Araçlar: Hata ayıklama ve analiz için güçlü araç seti.
  • Hardening (Sıkılaştırma): Güvenlik açıklarına karşı proaktif önlemler alan araçlar.
  • MISRA Uyumluluğu: Kod kalitesini ve güvenliğini artıran endüstriyel kodlama standartlarına uyum.

Sonuç

Zephyr RTOS, ZMA ürün ailesine sadece bir işletim sistemi değil, aynı zamanda modern, güvenli ve sürdürülebilir bir geliştirme ekosistemi sunuyor. Bu da müşterilerimize daha kararlı, güvenli ve uzun ömürlü ürünler olarak geri dönüyor. Endüstrinin geleceği açık kaynaklı, güvenli ve modüler yapılarda yatıyor; biz de bu geleceğe Zephyr ile hazırız.

Zephyr RTOS altyapısıyla geliştirilen ZMA Data Acquisition cihazımızı incelemek için ürün sayfamızı ziyaret edebilirsiniz.