<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > 多學(xué)科間數(shù)據(jù)交互在SIMPACK中的實(shí)現(xiàn)方法

          多學(xué)科間數(shù)據(jù)交互在SIMPACK中的實(shí)現(xiàn)方法

          作者: 時間:2012-09-26 來源:網(wǎng)絡(luò) 收藏

          隨著工程技術(shù)應(yīng)用復(fù)雜度及深度的拓展,以及交叉性學(xué)科的發(fā)展。各學(xué)科、各模型之間的數(shù)據(jù)交換實(shí)現(xiàn)問題,已經(jīng)引起業(yè)內(nèi)越來越多關(guān)注。而多體動力學(xué)軟件-在解決多學(xué)科與各種模型數(shù)據(jù)交換時具有自己獨(dú)特優(yōu)勢,提供了多種實(shí)現(xiàn)方式,且獨(dú)有的代碼輸出功能,在實(shí)現(xiàn)靈活中是一亮點(diǎn)。目前版本的提供了包括代碼輸出,硬件在回路(HIL),以及軟件在回路(matlab)等多種方式。

          本文引用地址:http://www.ex-cimer.com/article/185717.htm

            硬件方式介紹

            在硬件數(shù)據(jù)交互方面提供了多接種口,實(shí)現(xiàn)模式一般如圖1所示。

            

            圖1

            實(shí)現(xiàn)原理一般是利用多體動力學(xué)SIMPACK軟件建立仿真數(shù)學(xué)模型,通過硬件接口,把仿真數(shù)據(jù)傳輸?shù)接布?,硬件通過對數(shù)據(jù)處理,把處理后的數(shù)據(jù)返回給SIMPACK,從而實(shí)現(xiàn)硬件在回路實(shí)時仿真功能,而SIMPACK8903版本已支持包括DSPACE、ETAS、xPC、VxWorks等多種國際主流實(shí)時仿真硬件。

            軟件數(shù)據(jù)交互方式介紹

            SIMPACK在軟件數(shù)據(jù)交互方面也提供了多種方式,其中與MATLAB交互方式如圖2所示。

            

            圖2 Code Export

            軟件在回路一般是通過SIMAPACK接口或第三方軟件,保證模型之間的數(shù)據(jù)傳輸。其中以第三方軟件(matlab)為常采用實(shí)現(xiàn)模式。SIMAT在多學(xué)科仿真算例介紹

            SIMPACK為用戶提供多種數(shù)據(jù)交互方式,從圖2可以看出,其中SIMAT方式可以實(shí)現(xiàn)數(shù)據(jù)雙向交互,下面具體介紹SIMAT實(shí)現(xiàn)交互的算例。

            實(shí)例背景為:倒立擺小車,該小車在未控制下行駛,倒立擺倒下,當(dāng)采用SIMLINK控制后,通過SIMAT數(shù)據(jù)雙向傳輸,保證實(shí)時對小車速度控制,小車上的倒立擺能平穩(wěn)豎立。該控制方案如圖3所示,控制后的效果如圖4所示。

            


          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();