0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

MATLAB Simulink與數(shù)據(jù)分發(fā)服務(wù)整合

星星科技指導(dǎo)員 ? 來(lái)源:凌華科技 ? 作者:Ramzi Karoui ? 2022-06-02 16:43 ? 次閱讀

數(shù)據(jù)分發(fā)服務(wù)和MATLAB Synergy

這 數(shù)據(jù)分發(fā)服務(wù)(DDS?) 技術(shù)是一組由 標(biāo)準(zhǔn)API 以及 互操作協(xié)議建立以數(shù)據(jù)為中心的系統(tǒng)的中間件平臺(tái)。這項(xiàng)開(kāi)放技術(shù)受?chē)?guó)際標(biāo)準(zhǔn)協(xié)會(huì)對(duì)象管理組?(OMG?)管理。

借助DDS,數(shù)據(jù)及其相關(guān)的服務(wù)質(zhì)量是將分布式應(yīng)用程序綁定和集成在一起的唯一協(xié)定。數(shù)據(jù)可以表示系統(tǒng)狀態(tài),命令或答復(fù),視頻音頻流,文檔和消息。

從這個(gè)角度來(lái)看,DDS可以協(xié)助構(gòu)建解耦和靈活的分布式體系結(jié)構(gòu),使應(yīng)用不必公開(kāi)其位置,API,內(nèi)部行為,也不需要同時(shí)處于活動(dòng)狀態(tài)。使用DDS,解耦是二維的,它會(huì)同時(shí)發(fā)生 在時(shí)間和空間。。

這種顛覆性的創(chuàng)新提供了 安全, 低延遲 以及 超–高吞吐量 的數(shù)據(jù)交換率。此外,它提供了極高的 可靠性自動(dòng) 發(fā)現(xiàn) 以及 超擴(kuò)展性 ,具有業(yè)務(wù)和任務(wù)關(guān)鍵型物聯(lián)網(wǎng)IoT)應(yīng)用需求。

DDS每次在正確的時(shí)間,正確的位置以完全分離的方式共享正確的數(shù)據(jù)。

從概念上講,DDS構(gòu)建了分布式的 全球數(shù)據(jù)空間 ,在其中產(chǎn)生和使用數(shù)據(jù)的應(yīng)用能夠以實(shí)時(shí)和容錯(cuò)的方式共享數(shù)據(jù)。DDS保證了出色的確定性行為,同時(shí)提供了無(wú)與倫比的可靠性,安全性和性能。

在過(guò)去的十年中,已經(jīng)證明DDS是唯一覆蓋了廣泛應(yīng)用范圍的技術(shù)。它涵蓋了所有方面,從實(shí)時(shí)性極強(qiáng)的嵌入式系統(tǒng)到系統(tǒng)架構(gòu),IIoT(工業(yè)物聯(lián)網(wǎng))或洲際范圍內(nèi)包括空中交通管制,作戰(zhàn)管理,數(shù)據(jù)采集與監(jiān)視控制(Scada)指揮和控制系統(tǒng)等。該技術(shù)還部署在智能城市,智能工廠(chǎng),智能電網(wǎng),軟件定義網(wǎng)絡(luò),機(jī)器人技術(shù),醫(yī)療保健和醫(yī)療設(shè)備,交通和汽車(chē)市場(chǎng)中。

VortexDDS? 是DDS技術(shù)的市場(chǎng)領(lǐng)導(dǎo)者。 VortexDDS? 提供了用于智能數(shù)據(jù)共享的中間件平臺(tái)以及必要的生產(chǎn)力工具,使用戶(hù)能夠隨時(shí)隨地開(kāi)發(fā)、測(cè)試、調(diào)整、部署和監(jiān)控基于DDS的應(yīng)用。在局域網(wǎng),廣域網(wǎng),低帶寬,臨時(shí),移動(dòng)網(wǎng)絡(luò)或超范圍的網(wǎng)絡(luò)。

另一方面, MATLAB?廣泛用于數(shù)值,科學(xué)和工業(yè)計(jì)算。 基于矩陣 的MATLAB語(yǔ)言輕松表達(dá)了計(jì)算數(shù)學(xué)概念。其內(nèi)置的圖形使其易于可視化并從數(shù)據(jù)中獲得見(jiàn)解。龐大的預(yù)先構(gòu)建的函數(shù)庫(kù)可讓您在特定領(lǐng)域中構(gòu)建復(fù)雜的算法。您可以在 更大的數(shù)據(jù)集 并擴(kuò)展到集群和云中進(jìn)行分析。MATLAB代碼可以與其他語(yǔ)言和技術(shù)( 包括Vortex DDS, )進(jìn)行整合,使您能夠?yàn)槟膽?yīng)用和算法提供生產(chǎn)系統(tǒng)的 和 實(shí)時(shí)的數(shù)據(jù)一種 并將其部署在 邊緣 或 云。

同樣, Simulink?是具有框圖環(huán)境的建模工具,用于多域仿真和基于模型的設(shè)計(jì)。它支持系統(tǒng)動(dòng)力學(xué)仿真,系統(tǒng)級(jí)設(shè)計(jì),自動(dòng)代碼生成以及嵌入式系統(tǒng)的連續(xù)測(cè)試和驗(yàn)證。Simulink提供了圖形編輯器和可自定義的塊庫(kù)。它與MATLAB?以及 Vortex DDS整合,使您能夠表示和建模關(guān)鍵DDS計(jì)算實(shí)體,并將MATLAB算法合并到一個(gè)模型中。隨后,您可以生成代碼并將仿真結(jié)果導(dǎo)出到MATLAB進(jìn)行進(jìn)一步分析,或通過(guò)Vortex DDS在DDS全球數(shù)據(jù)空間中進(jìn)行傳播。

VortexDDS?,MATLAB?和Simulink?現(xiàn)在已全面整合 ,使您能夠設(shè)計(jì)和開(kāi)發(fā)各種先進(jìn)產(chǎn)品,包括汽車(chē)系統(tǒng), 國(guó)防,航空飛行控制和航空電子設(shè)備, 電信,工業(yè)機(jī)械, 醫(yī)療設(shè)備,以及其他電子設(shè)備。它們是您進(jìn)行研發(fā)的基本工具和平臺(tái)。

Simulink與Vortex DDS的整合

Vortex DDS產(chǎn)品隨附 免費(fèi)的DDS-Simulink集成模塊。 DDS-Simulink集成模塊提供了專(zhuān)用的構(gòu)建模塊庫(kù),用于在Simulink模型中對(duì)DDS的交互方式進(jìn)行建模。如圖1所示,每個(gè)DDS實(shí)體,例如 發(fā)布者/訂閱者,訪(fǎng)問(wèn)者/撰寫(xiě)者和 主題 由Simulink模型中的專(zhuān)用塊表示。

poYBAGKYeECAPEvgAABDTKeC20Y241.jpg?w=723&ssl=1

圖1:Vortex DDS與Simulink的整合。此外,每個(gè)DDS塊都有一個(gè)關(guān)聯(lián)的QoS配置文件,可以對(duì)其進(jìn)行調(diào)整和完善以控制DDS實(shí)體的行為。

Simulink數(shù)據(jù)表示為需要映射DDS數(shù)據(jù)類(lèi)型的總線(xiàn) 類(lèi)型。 巴士 需要映射的類(lèi)型 DDS 數(shù)據(jù)類(lèi)型因此,將Simulink數(shù)據(jù)發(fā)送到DDS需要將Simulink類(lèi)型轉(zhuǎn)換為DDS類(lèi)型。 Simulink總線(xiàn)將映射到DDS主題類(lèi)型,反之亦然。用戶(hù)可以通過(guò)從IDL文件中生成或使用Simulink總線(xiàn)編輯器來(lái)生成或創(chuàng)建Simulink總線(xiàn)定義。

pYYBAGKYeEGAD06aAAA8IPPyMis585.jpg?w=723&ssl=1

圖2:使用Simulink總線(xiàn)編輯器映射數(shù)據(jù)類(lèi)型。如果需要,您可以使用DDS SQL92查詢(xún)語(yǔ)言過(guò)濾或查詢(xún)數(shù)據(jù),如圖3所示。

poYBAGKYeEKAUr0OAAA-MQ9Qh1Y510.jpg?w=723&ssl=1

圖3:使用Vortex DDS Simulink集成模塊進(jìn)行查詢(xún)定義。一旦定義了關(guān)鍵的DDS構(gòu)建模塊和數(shù)據(jù)類(lèi)型并將其與DDS主題相關(guān)聯(lián),用戶(hù)就可以將DDS構(gòu)建模塊包括Simulink本機(jī)建模模塊(例如Math函數(shù),Time函數(shù)或Simulink Display模塊)進(jìn)行連接并互連以構(gòu)建完整的仿真模塊。然后,用戶(hù)可以如下圖所示運(yùn)行模擬。

pYYBAGKYeEOAeG_AAAAxNePaFj8881.jpg?w=723&ssl=1

圖4:與Simulink集成的Vortex DDS發(fā)布者和訂閱者模型。一旦通過(guò)仿真模式驗(yàn)證了模型,就可以生成和編譯(或交叉編譯)模型的關(guān)聯(lián)代碼。Vortex DDS Simulink集成模塊與 Simulink編碼器 生成相應(yīng)的 C DDS構(gòu)建模塊中的代碼。編譯后,即可通過(guò)DDS以分布式方式在所選目標(biāo)上運(yùn)行仿真。

現(xiàn)在,生成的仿真模型可以與任何其他DDS應(yīng)用進(jìn)行通信,可以通過(guò)網(wǎng)絡(luò)傳播仿真結(jié)果,或者向仿真模型提供來(lái)自現(xiàn)場(chǎng)的實(shí)時(shí)數(shù)據(jù)。

下一節(jié)將說(shuō)明如何在MATLAB中創(chuàng)建MATLAB Vortex DDS類(lèi)的實(shí)例,以及如何與DDS實(shí)體進(jìn)行交互。

MATLAB與Vortex DDS的整合

DDS與MATLAB的整合提供了DDS MATLAB類(lèi),使用戶(hù)能夠使用MATLAB語(yǔ)言為DDS通信建模。

通常,在開(kāi)發(fā)階段,用戶(hù)需要:

使用標(biāo)準(zhǔn)的OMG IDL數(shù)據(jù)定義語(yǔ)言定義一個(gè) DDS數(shù)據(jù)模型 。

將DDS數(shù)據(jù)模型轉(zhuǎn)換為 MATLAB DDS實(shí)體類(lèi) (例如,主題類(lèi))。

代碼 使用 適用于Vortex DDS的MATLAB API對(duì)MATLAB程序進(jìn)行編碼。。

下面的代碼快照中總結(jié)了這些步驟:

poYBAGKYeEWAGilYAAA-OO5cnJY301.jpg?w=723&ssl=1

圖5:基于MATLAB的Pub Sub DDS應(yīng)用。適用于Vortex DDS的MATLAB API支持QoS,數(shù)據(jù)過(guò)濾和查詢(xún)方面的所有DDS功能。

結(jié)論

使用Vortex DDS,您可以實(shí)現(xiàn)基于MATLAB/ Simulink應(yīng)用的系統(tǒng)集成,并構(gòu)建一個(gè) 分布廣泛的全局?jǐn)?shù)據(jù)空間。這樣可以有效地將測(cè)試和仿真框架進(jìn)行統(tǒng)一。

考慮到所有有價(jià)值數(shù)據(jù)的語(yǔ)義,QoS,類(lèi)型,內(nèi)容和格式,全球數(shù)據(jù)空間將對(duì)其 實(shí)時(shí)的, 沒(méi)有 單點(diǎn)故障 的進(jìn)行處理和管理。

使您的仿真模型在Vortex DDS上進(jìn)行交互,并從通過(guò)MATLAB/ Simulink進(jìn)行實(shí)時(shí)數(shù)據(jù)分析和交互中受益。

poYBAGKYeEaAYtSTAABQpATzelE679.jpg?w=723&ssl=1

圖6:全球數(shù)據(jù)空間整合并傳輸MATLAB和Simulink數(shù)據(jù)流。這種集成技術(shù)將幫助您在全球數(shù)據(jù)空間的頂部構(gòu)建自己的 情境意識(shí)層 來(lái)控制和監(jiān)控系統(tǒng),并 以最低的成本為最終用戶(hù)創(chuàng)建增值服務(wù)。。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • matlab
    +關(guān)注

    關(guān)注

    181

    文章

    2960

    瀏覽量

    230029
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2900

    文章

    44065

    瀏覽量

    370256
  • DDS
    DDS
    +關(guān)注

    關(guān)注

    21

    文章

    629

    瀏覽量

    152483
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Matlab/Simulink/Stateflow建模開(kāi)發(fā)及仿真測(cè)試

    matlab 模擬仿真 熟悉Matlab/Simulink/Stateflow建模開(kāi)發(fā)及仿真測(cè)試,熟悉V模型開(kāi)發(fā)流程。 熟悉自動(dòng)代碼生成,能夠編寫(xiě)或者配置自動(dòng)代碼生成腳本。
    發(fā)表于 10-24 17:23

    構(gòu)建鴻蒙生態(tài)服務(wù)分發(fā)新體驗(yàn),鴻蒙元服務(wù)助力伙伴服務(wù)創(chuàng)新

    6月22日,華為開(kāi)發(fā)者大會(huì)(HDC 2024)元服務(wù)服務(wù)分發(fā)分論壇現(xiàn)場(chǎng) 當(dāng)前,鴻蒙生態(tài)伙伴正在同步開(kāi)發(fā)元服務(wù),包括新華社、網(wǎng)上國(guó)網(wǎng)、南方航空、廣發(fā)銀行、奈雪的茶、肯德基、同程旅行、捷停
    的頭像 發(fā)表于 06-24 14:55 ?376次閱讀

    Matlab R2016b創(chuàng)建STM32H743ZIT6控制工程當(dāng)從Simulink庫(kù)中拖入TIMx模塊出現(xiàn)報(bào)錯(cuò)的原因?

    Matlab R2016b創(chuàng)建STM32H743ZIT6控制工程當(dāng)從Simulink庫(kù)中拖入GPIO和ADC模塊到模型中時(shí)都沒(méi)有問(wèn)題 但是拖入TIMx模塊出現(xiàn)提下列提示,并且反復(fù)蹦出,無(wú)法繼續(xù)進(jìn)行
    發(fā)表于 04-25 07:00

    MathWorks宣布推出MATLABSimulink的2024a版本

    MathWorks宣布推出MATLABSimulink的2024a版本
    的頭像 發(fā)表于 04-07 14:03 ?596次閱讀
    MathWorks宣布推出<b class='flag-5'>MATLAB</b>和<b class='flag-5'>Simulink</b>的2024a版本

    電路仿真軟件simulink的工作原理

    SimulinkMATLAB的一個(gè)模塊,它采用圖形化的方式來(lái)創(chuàng)建動(dòng)態(tài)系統(tǒng)模型并進(jìn)行仿真分析。Simulink的工作原理主要基于模塊化的建模和仿真方式。
    的頭像 發(fā)表于 03-29 15:21 ?1452次閱讀

    電路仿真軟件simulink使用方法

    SimulinkMATLAB的一個(gè)重要組件,用于進(jìn)行動(dòng)態(tài)系統(tǒng)的建模和仿真。
    的頭像 發(fā)表于 03-29 14:25 ?2154次閱讀

    DC2100B/A能不能支持MATLAB/simulink自動(dòng)代碼生成?

    1、硬件方面,微控制器是主要有幾種,計(jì)算能力如何,可以支持類(lèi)似MPC的算法嗎?能不能擴(kuò)展DSP的控制器? 2、軟件方面,能不能支持MATLAB/simulink自動(dòng)代碼生成?
    發(fā)表于 01-11 06:56

    如何使用MATLABMATLAB Parallel Server擴(kuò)展整車(chē)仿真呢?

    使用 MATLABSimulink 設(shè)計(jì)和構(gòu)建 Rivian 車(chē)輛仿真界面平臺(tái)幫助我們實(shí)現(xiàn)了關(guān)鍵目標(biāo)。我們?yōu)楣こ處熀头枪こ處焺?chuàng)建了統(tǒng)一平臺(tái),用于運(yùn)行整車(chē)仿真、后處理結(jié)果和創(chuàng)建報(bào)告。
    的頭像 發(fā)表于 01-10 18:22 ?1164次閱讀
    如何使用<b class='flag-5'>MATLAB</b>和<b class='flag-5'>MATLAB</b> Parallel Server擴(kuò)展整車(chē)仿真呢?

    Saber與Matlab聯(lián)合仿真的操作過(guò)程介紹

    我們知道,[Saber]()軟件在一開(kāi)始就提供了與Matlab/Simulink的聯(lián)合仿真功能,工程師們可以在Simulink中驗(yàn)證設(shè)計(jì)中的軟件部分,同時(shí)在Saber中驗(yàn)證設(shè)計(jì)的硬件部分,從而實(shí)現(xiàn)軟硬件設(shè)計(jì)驗(yàn)證的完美統(tǒng)一。
    的頭像 發(fā)表于 12-05 09:43 ?2781次閱讀
    Saber與<b class='flag-5'>Matlab</b>聯(lián)合仿真的操作過(guò)程介紹

    鴻蒙原生應(yīng)用/元服務(wù)開(kāi)發(fā)-AGC分發(fā)如何上架HarmonyOS應(yīng)用

    應(yīng)用素材。如果選擇分發(fā)到多設(shè)備,請(qǐng)?jiān)诟髟O(shè)備標(biāo)簽頁(yè)分別上傳對(duì)應(yīng)的應(yīng)用素材。 7.配置HarmonyOS應(yīng)用的“應(yīng)用分類(lèi)”。 8.配置HarmonyOS應(yīng)用的“開(kāi)發(fā)者服務(wù)信息”。 9.配置完成后
    發(fā)表于 11-24 14:44

    MATLAB的數(shù)字邏輯電路Simulink仿真

    電子發(fā)燒友網(wǎng)站提供《MATLAB的數(shù)字邏輯電路Simulink仿真.pdf》資料免費(fèi)下載
    發(fā)表于 11-17 15:39 ?5次下載
    <b class='flag-5'>MATLAB</b>的數(shù)字邏輯電路<b class='flag-5'>Simulink</b>仿真

    simulink自動(dòng)生成ROS代碼

    當(dāng)我們用simulink完成控制程序的搭建后,我們期望下一次可以直接對(duì)ROS進(jìn)行控制,而不是每次都需要啟動(dòng)matlabsimulink,因此我們可以使用simulink的代碼生成器,
    的頭像 發(fā)表于 11-15 17:53 ?783次閱讀
    <b class='flag-5'>simulink</b>自動(dòng)生成ROS代碼

    Simulink中如何創(chuàng)建一個(gè)Publisher

    > Library Browser打開(kāi)Simulink庫(kù)瀏覽器。單擊ROS工具箱選項(xiàng)卡(也可以在MATLAB命令窗口中輸入roslib)。選擇ROS庫(kù)。 4.將Publish塊拖到模型中。雙擊該塊以配置主題和消息類(lèi)型。 5.為T(mén)opic源選擇
    的頭像 發(fā)表于 11-15 17:32 ?564次閱讀
    <b class='flag-5'>Simulink</b>中如何創(chuàng)建一個(gè)Publisher

    鴻蒙原生應(yīng)用開(kāi)發(fā)-元服務(wù)分發(fā)方式的調(diào)整及趨勢(shì)

    服務(wù)上架審核通過(guò)后,會(huì)收到郵件通知,但此時(shí)還無(wú)法搜索到上架的元服務(wù),需要華為進(jìn)行配置后,才能讓元服務(wù)露出。當(dāng)前,元服務(wù)分發(fā)的主要渠道有:
    發(fā)表于 11-14 16:02

    使用MATLAB Simulink和HDL編碼器創(chuàng)建自定義IP--AWB

    自動(dòng)白平衡模塊的設(shè)計(jì)是使用 HDL Coder 在 MATLABSimulink 中創(chuàng)建的。HDL Coder能夠生成 HDL 文件,這些文件可以作為 IP 在我們的目標(biāo) FPGA 中運(yùn)行。
    的頭像 發(fā)表于 11-13 09:27 ?1077次閱讀
    使用<b class='flag-5'>MATLAB</b> <b class='flag-5'>Simulink</b>和HDL編碼器創(chuàng)建自定義IP--AWB