DDS Blockset
DDS Blockset, DDS uygulamaları tasarlamanızı ve simüle etmenizi sağlar.
DDS Blockset, veri dağıtım hizmeti yani Data Distribution Service tabanlı uygulamaları Simulink içinde tasarlamak ve simüle etmek için kullanılır. DDS tanımını kullanan Simulink modelleri oluşturur, önceden yapılandırılmış bloklarla modelleri DDS konularına yayıncı ve abone olarak ayarlarsınız. Yani haberleşme mimarisini kod yazmadan modelde kurarsınız. Blok listesini MathWorks dokümantasyonunda bulursunuz.
Simülasyon tarafında yayıncı ve abone olarak yapılandırdığınız DDS modellerini HISTORY dahil hizmet kalitesi ayarlarıyla çalıştırır, belirtilen ilkelerle çalışma zamanı davranışını doğrularsınız; dolayısıyla mimari kararların etkisini donanıma çıkmadan görürsünüz. Tanım alışverişi için uygulama modelinizden DDS tanımlarını dışa aktarırsınız: RTI Connext için XML dosyaları, eProsima için ise IDL dosyaları üretilir; bu akış Embedded Coder ile yürür. Mevcut tanımları içe de alırsınız. Son adım kod üretimidir: Embedded Coder ile Simulink modellerinden DDS arayüzlerini içeren C++ üretim kodunu ve XML ya da IDL dosyalarını çıkarır, DDS ağı üzerinde dağıtırsınız. Desteklenen sağlayıcılar RTI Connext DDS ile eProsima Fast DDS’tir.
DDS Blockset Temel Yetenekleri
DDS Modelleme
DDS tanımını kullanan Simulink modelleri oluşturursunuz. Önceden yapılandırılmış bloklarla modelleri konulara yayıncı ve abone olarak ayarlarsınız.
Böylece haberleşme mimarisini kod yazmadan kurarsınız.
DDS Sözlüğü
Konu, veri tipi ve hizmet kalitesi tanımlarını sözlük arayüzünden yönetirsiniz. Değişiklikler modele doğrudan yansır.
Dolayısıyla tanımları tek yerde tutarsınız.
Simülasyon
Yayıncı ve abone modellerini HISTORY dahil hizmet kalitesi ayarlarıyla çalıştırırsınız. Çalışma zamanı davranışını belirtilen ilkelerle doğrularsınız.
Yani mimari kararların etkisini donanıma çıkmadan görürsünüz.
Tanım Alışverişi
Uygulama modelinizden DDS tanımlarını dışa aktarırsınız. RTI Connext için XML, eProsima için IDL dosyaları alırsınız.
Ayrıca mevcut tanımları içe de alırsınız.
Kod Üretimi
Embedded Coder ile DDS arayüzlerini içeren C++ üretim kodunu çıkarırsınız. XML ya da IDL dosyalarını kodla birlikte alırsınız.
Ardından uygulamayı DDS ağı üzerinde dağıtırsınız.
Uygulama Modeli
İvmeölçer, GPS ve konum kestirimi gibi bileşenleri tek uygulama modelinde birleştirirsiniz. Her bileşen ayrı konu üzerinden haberleşir.
Örneğin konumlandırma sistemini uçtan uca modellersiniz.
DDS Blockset Nasıl Çalışır?
- Tanımları kurun Öncelikle DDS sözlüğünde konu, veri tipi ve hizmet kalitesi ayarlarını tanımlayın.
- Modeli yapılandırın Ardından bloklarla modelinizi yayıncı ve abone olarak ayarlayın.
- Simüle edin Hizmet kalitesi ilkeleriyle çalışma zamanı davranışını doğrulayın.
- Dağıtın Son olarak C++ kodunu ve tanım dosyalarını üretip DDS ağına yükleyin.
Kullanım Alanları
Gömülü Sistemler
Dağıtık bileşenleri DDS üzerinden haberleştirir, ardından üretim kodunu çıkarırsınız.
Model Tabanlı Tasarım
Haberleşme mimarisini modelde kurar, böylece tasarımı simülasyonla doğrularsınız.
Robotik Çözümler
Sensör ve denetim düğümlerini konular üzerinden bağlar, dolayısıyla modüler mimari kurarsınız.
Otonom Sürüş
Algılama ve karar bileşenlerini ayrı düğümlere böler, ardından gecikmeyi ölçersiniz.
Kontrol Sistemleri
Denetleyiciyi dağıtık mimariye taşır, örneğin hizmet kalitesi etkisini sınarsınız.
Sıkça Sorulan Sorular
Hangi DDS sağlayıcıları destekleniyor?
RTI Connext DDS ile eProsima Fast DDS desteklenir. Tanım dosyalarını RTI Connext için XML, eProsima için IDL biçiminde alırsınız.
Hizmet kalitesi ilkeleri simüle ediliyor mu?
Evet. Yayıncı ve abone modellerini HISTORY dahil hizmet kalitesi ayarlarıyla çalıştırır, çalışma zamanı davranışını belirtilen ilkelerle doğrularsınız.
Embedded Coder zorunlu mu?
Kod üretimi ve tanım dosyalarının dışa aktarımı için gereklidir. Modelleme ile simülasyon aşamasında MATLAB ve Simulink yeterlidir.
Mevcut DDS tanımlarımı kullanabilir miyim?
Evet. Mevcut tanımları içe alır, uygulama modelinizden yeni tanımları dışa aktarırsınız.
Hangi kod üretiliyor?
Simulink modellerinden DDS arayüzlerini içeren C++ üretim kodunu çıkarırsınız; XML ya da IDL dosyalarını kodla birlikte alırsınız.
Yayıncı abone modelini nasıl kurarım?
Önceden yapılandırılmış bloklarla modelleri DDS konularına yayıncı ve abone olarak ayarlarsınız.








