數據分發服務和MATLAB Synergy
這 數據分發服務(DDS?) 技術是一組由 標準API 以及 互操作協議建立以數據為中心的系統的中間件平臺。這項開放技術受國際標準協會對象管理組?(OMG?)管理。
借助DDS,數據及其相關的服務質量是將分布式應用程序綁定和集成在一起的唯一協定。數據可以表示系統狀態,命令或答復,視頻和音頻流,文檔和消息。
從這個角度來看,DDS可以協助構建解耦和靈活的分布式體系結構,使應用不必公開其位置,API,內部行為,也不需要同時處于活動狀態。使用DDS,解耦是二維的,它會同時發生 在時間和空間。。
這種顛覆性的創新提供了 安全, 低延遲 以及 超–高吞吐量 的數據交換率。此外,它提供了極高的 可靠性自動 發現 以及 超擴展性 ,具有業務和任務關鍵型物聯網(IoT)應用需求。
DDS每次在正確的時間,正確的位置以完全分離的方式共享正確的數據。
從概念上講,DDS構建了分布式的 全球數據空間 ,在其中產生和使用數據的應用能夠以實時和容錯的方式共享數據。DDS保證了出色的確定性行為,同時提供了無與倫比的可靠性,安全性和性能。
在過去的十年中,已經證明DDS是唯一覆蓋了廣泛應用范圍的技術。它涵蓋了所有方面,從實時性極強的嵌入式系統到系統架構,IIoT(工業物聯網)或洲際范圍內包括空中交通管制,作戰管理,數據采集與監視控制(Scada)指揮和控制系統等。該技術還部署在智能城市,智能工廠,智能電網,軟件定義網絡,機器人技術,醫療保健和醫療設備,交通和汽車市場中。
VortexDDS? 是DDS技術的市場領導者。 VortexDDS? 提供了用于智能數據共享的中間件平臺以及必要的生產力工具,使用戶能夠隨時隨地開發、測試、調整、部署和監控基于DDS的應用。在局域網,廣域網,低帶寬,臨時,移動網絡或超范圍的網絡。
另一方面, MATLAB?廣泛用于數值,科學和工業計算。 基于矩陣 的MATLAB語言輕松表達了計算數學概念。其內置的圖形使其易于可視化并從數據中獲得見解。龐大的預先構建的函數庫可讓您在特定領域中構建復雜的算法。您可以在 更大的數據集 并擴展到集群和云中進行分析。MATLAB代碼可以與其他語言和技術( 包括Vortex DDS, )進行整合,使您能夠為您的應用和算法提供生產系統的 和 實時的數據一種 并將其部署在 邊緣 或 云。
同樣, Simulink?是具有框圖環境的建模工具,用于多域仿真和基于模型的設計。它支持系統動力學仿真,系統級設計,自動代碼生成以及嵌入式系統的連續測試和驗證。Simulink提供了圖形編輯器和可自定義的塊庫。它與MATLAB?以及 Vortex DDS整合,使您能夠表示和建模關鍵DDS計算實體,并將MATLAB算法合并到一個模型中。隨后,您可以生成代碼并將仿真結果導出到MATLAB進行進一步分析,或通過Vortex DDS在DDS全球數據空間中進行傳播。
VortexDDS?,MATLAB?和Simulink?現在已全面整合 ,使您能夠設計和開發各種先進產品,包括汽車系統, 國防,航空飛行控制和航空電子設備, 電信,工業機械, 醫療設備,以及其他電子設備。它們是您進行研發的基本工具和平臺。
Simulink與Vortex DDS的整合
Vortex DDS產品隨附 免費的DDS-Simulink集成模塊。 DDS-Simulink集成模塊提供了專用的構建模塊庫,用于在Simulink模型中對DDS的交互方式進行建模。如圖1所示,每個DDS實體,例如 發布者/訂閱者,訪問者/撰寫者和 主題 由Simulink模型中的專用塊表示。
圖1:Vortex DDS與Simulink的整合。此外,每個DDS塊都有一個關聯的QoS配置文件,可以對其進行調整和完善以控制DDS實體的行為。
Simulink數據表示為需要映射DDS數據類型的總線 類型。 巴士 需要映射的類型 DDS 數據類型因此,將Simulink數據發送到DDS需要將Simulink類型轉換為DDS類型。 Simulink總線將映射到DDS主題類型,反之亦然。用戶可以通過從IDL文件中生成或使用Simulink總線編輯器來生成或創建Simulink總線定義。
圖2:使用Simulink總線編輯器映射數據類型。如果需要,您可以使用DDS SQL92查詢語言過濾或查詢數據,如圖3所示。
圖3:使用Vortex DDS Simulink集成模塊進行查詢定義。一旦定義了關鍵的DDS構建模塊和數據類型并將其與DDS主題相關聯,用戶就可以將DDS構建模塊包括Simulink本機建模模塊(例如Math函數,Time函數或Simulink Display模塊)進行連接并互連以構建完整的仿真模塊。然后,用戶可以如下圖所示運行模擬。
圖4:與Simulink集成的Vortex DDS發布者和訂閱者模型。一旦通過仿真模式驗證了模型,就可以生成和編譯(或交叉編譯)模型的關聯代碼。Vortex DDS Simulink集成模塊與 Simulink編碼器 生成相應的 C DDS構建模塊中的代碼。編譯后,即可通過DDS以分布式方式在所選目標上運行仿真。
現在,生成的仿真模型可以與任何其他DDS應用進行通信,可以通過網絡傳播仿真結果,或者向仿真模型提供來自現場的實時數據。
下一節將說明如何在MATLAB中創建MATLAB Vortex DDS類的實例,以及如何與DDS實體進行交互。
MATLAB與Vortex DDS的整合
DDS與MATLAB的整合提供了DDS MATLAB類,使用戶能夠使用MATLAB語言為DDS通信建模。
通常,在開發階段,用戶需要:
使用標準的OMG IDL數據定義語言定義一個 DDS數據模型 。
將DDS數據模型轉換為 MATLAB DDS實體類 (例如,主題類)。
代碼 使用 適用于Vortex DDS的MATLAB API對MATLAB程序進行編碼。。
下面的代碼快照中總結了這些步驟:
圖5:基于MATLAB的Pub Sub DDS應用。適用于Vortex DDS的MATLAB API支持QoS,數據過濾和查詢方面的所有DDS功能。
結論
使用Vortex DDS,您可以實現基于MATLAB/ Simulink應用的系統集成,并構建一個 分布廣泛的全局數據空間。這樣可以有效地將測試和仿真框架進行統一。
考慮到所有有價值數據的語義,QoS,類型,內容和格式,全球數據空間將對其 實時的, 沒有 單點故障 的進行處理和管理。
使您的仿真模型在Vortex DDS上進行交互,并從通過MATLAB/ Simulink進行實時數據分析和交互中受益。
圖6:全球數據空間整合并傳輸MATLAB和Simulink數據流。這種集成技術將幫助您在全球數據空間的頂部構建自己的 情境意識層 來控制和監控系統,并 以最低的成本為最終用戶創建增值服務。。
審核編輯:郭婷
-
matlab
+關注
關注
185文章
2979瀏覽量
230693 -
物聯網
+關注
關注
2911文章
44781瀏覽量
374893 -
DDS
+關注
關注
21文章
634瀏覽量
152755
發布評論請先 登錄
相關推薦
評論