- Hızlı ve kararlı robotlar geliştirmek için kullanıcı dostu bir çalışma zamanı motoru
- Oyunlar için bir "oyun motoru" neyse, robotlar için de bir "robot motoru"
- Kolaylık: yüksek seviyeli bir Configuration sistemi ve doğal bir Rust API'si sunar
- Hız: Rust'ın Zero-Cost soyutlamaları ve veri odaklı yaklaşımını kullanarak ticari donanımda mikro saniyenin altında gecikme elde eder ve çalışma sırasında heap tahsisinden kaçınır
- Güvenilirlik: Rust'ın sahiplik, tür sistemi ve eşzamanlılık modelinden yararlanarak hataları en aza indirir ve thread safety sağlar
- Ürün odaklı: oldukça öngörülebilir bir çalışma zamanı oluşturarak geç aşamadaki altyapı entegrasyonu sorunlarını önlemeyi amaçlar
- Linux (x86_64, armv7, aarch64 & riskv64) ve MacOS (arm64) üzerinde test edildi
Teknik genel bakış
- Copper, aşağıdaki bileşenleri sağlayan veri odaklı bir robot SDK'sıdır:
- Task Graph: RON(Rusty Object Notation) içinde tanımlandığı şekilde sistemin topolojisini oluşturarak iletişim kuran görevleri belirtir ve düğüm ile mesaj türlerini ayarlar
- Runtime Generator: grafın meta verilerine dayanarak yürütme planını belirler. Çalışma sırasında sıralı bellek erişimini en üst düzeye çıkarmak için 'Copper List'i önceden tahsis eder
- Zero-Copy Data Logging: veri kopyalamadan görevler arasındaki tüm mesajları kaydederek verimli loglama sağlar
- Fast Structured Logging: Intern ve Index, string'leri derleme sırasında loglayarak çalışma zamanında string oluşturmayı önler ve yüksek hızlı metin loglaması sağlar
- Gerçek bir robot yoksa, Bevy(Rust oyun motoru) + Avian3d(Rust fizik motoru) ile geliştirilmiş simülasyon ortamı kullanılabilir
Henüz yorum yok.