帳號:
密碼:
智動化 / 文章 /

透過Simulink將模擬資料視覺化
[作者 Michael Carone]   2019年08月23日 星期五 瀏覽人次: [1187]

藉由執行完整的模擬,可以確認Simulink模型是否已沒有結構上的問題。但是,如何知道系統的行為是否會如同期待呢?要回答這個問題,你需要知道整個模擬過程之中的模擬輸出看起來是什麼樣子,以及系統參數或環境特性的變更將如何影響系統的回應。


藉由Simulink,可以透過多種選項來取得這類資料。本文將引導如何進行選擇,從開發初期為模型進行除錯的階段經常使用的工具,到通常用於深入模擬資料分析的工具。


端口值顯示-在模型除錯時進行訊號的探測

在為模型除錯以排除特定問題的時候,你通常會需要進行一個或一組訊號的探測。在Simulink,可以先透過對著訊號按下滑鼠右鍵,並選擇”Show Value Label of Selected Port”。接著,在模擬的每一個時間階段監看特定的訊號值,或者匯流排訊號每一個元件的數值(圖1)。



圖1 : 端口值顯示說明了執行模擬時四個分開的匯流排元件數值。
圖1 : 端口值顯示說明了執行模擬時四個分開的匯流排元件數值。

若要終止執行此視覺化,只需要對著訊號再次按下滑鼠右鍵,並取消該選項的選擇。


Scope與其他顯示模塊-快速檢視模擬資料

圖2 : 在Scope模塊檢視包含統計量測的正弦模擬資料。
圖2 : 在Scope模塊檢視包含統計量測的正弦模擬資料。

端口值顯示提供每一個模擬時間階段的訊號值。如果要觀察這些訊號數值隨著時間會發生什麼樣的變化,可以加入Scope模塊(圖2)。將訊號曲線與範圍模塊相連,接著執行模擬,便可查看模擬中、模擬後的資料。


你可以在Scope模塊加入互動的游標測量訊號或軸上的幾個點。最大值、最小值、中位數等已知訊號的訊號統計值也可以顯示出來。也可以加入類似示波器的開關,讓Scope可以在特定事件發生時開始顯示或暫停顯示。


圖3 : 在DSP系統工具箱的Spectrum Analyzer(左)以及通訊工具箱(原名Communication System Toolbox,現已更名為Communication Toolbox)的Constellation Diagram檢視模擬資料(右)。
圖3 : 在DSP系統工具箱的Spectrum Analyzer(左)以及通訊工具箱(原名Communication System Toolbox,現已更名為Communication Toolbox)的Constellation Diagram檢視模擬資料(右)。

在訊號處理與通訊領域,可以在模型加入其他幾種類型的視覺化工具來快速檢視模擬資料。舉例來說,可以使用頻譜分析器(Spectrum Analyzer)模塊來檢視頻域資料(圖3左),或者使用Constellation Diagram模塊來檢視數位調變訊號的分布(圖3右)。


儀表板模塊函式庫-在同一個地方調整和監看模擬

隨著設計進度的前進,你可能會想要在模型的最上層設置一個介面,讓你或你的同事可以在同一個地方控制和監看模擬的狀態。你可以從儀表板(Dashboard)模塊函式庫,透過圖形化的控制和顯示來達成這樣的需求(圖4)。


圖4 : Simulink Dashboard模塊中函式庫的圖形化控制和顯示
圖4 : Simulink Dashboard模塊中函式庫的圖形化控制和顯示

這個函數庫包含了不同種類的顯示,像是量測計、燈等等。你可以將這些顯示與模型中的特殊訊號做關聯,方法是先開啟顯示模塊,並選擇你想要與該模塊相互關聯的訊號或模塊。執行模擬時,資料顯示會持續地在模型視窗當中更新,讓你可以一次檢視所有重要的模擬資料(圖5)。



圖5 : 從Simulink Dashboard模塊函式庫加入了燃料管理模擬的旋鈕、開關、量測計。
圖5 : 從Simulink Dashboard模塊函式庫加入了燃料管理模擬的旋鈕、開關、量測計。

模擬資料檢驗器-檢視與分析來自多次模擬的資料

當你在開發模型時,執行多次模擬來測試不同的情境或優化設計通常是很重要的。針對這一點,你可以監看數百筆或甚至數千筆個別的訊號。模擬資料檢驗器(Simulation Data Inspector)可用來把多次模擬而來的所有資料儲存在同一個地方(圖6)。



圖6 : 在模擬資料檢驗器比較從兩次個別的模擬而來資料。
圖6 : 在模擬資料檢驗器比較從兩次個別的模擬而來資料。

你可以接著比較從這些模擬得到的所有資料來做檢查,比如兩次模擬訊號輸出之間的差異是否在設計的容許範圍之內。


MATLAB圖表-將資料分析和視覺呈現客製化

許多Simulink視覺化工具的重心主要放在時域及頻域。如果要以其他Simulink未提供的領域或方式檢視資料的話,可以使用MATLAB。所有在Simulink產生的資料都可以透過MATLAB取得,以進行進一步的客製化資料分析,不論是透過指令行或程式腳本。這些資料接下來可以在MATLAB以數字或圖表來查看(圖7)。


圖7 : 以MATLAB腳本定義傅科擺(Foucault pendulum )的x、y座標並繪製3D直方圖(左),以及繪圖結果(右)。
圖7 : 以MATLAB腳本定義傅科擺(Foucault pendulum )的x、y座標並繪製3D直方圖(左),以及繪圖結果(右)。

特製的視覺化工具

到目前為止,我們已經看到針對一般應用的視覺化工具。另外也有一些特殊應用可以使用的工具。舉例來說,在利用Simulink即時控制工具(Simulink Real-Time)於目標機器執行即時模擬時,可以在主機調整參數及查看模擬資料(圖8)。


圖8 : 用來控制和監看即時模擬的儀器
圖8 : 用來控制和監看即時模擬的儀器

在調整控制系統時,可以透過Simulink控制設計模塊組(Simulink Control Design)繪製出控制器極值和零等資料,或者是模行的波德響應(Bode response)(圖9)。


圖9 : 控制系統的波德響應
圖9 : 控制系統的波德響應

除此之外,為了更清楚瞭解系統在預期環境的行為,你可以利用多體機構動態模擬模塊組(原名SimMechanics,現已更名為Simscape Multibody)、與FlightGear搭配的航太模塊組(Aerospace Blockset)、以及Simulink 3D動畫模塊組(Simulink 3D Animation),將Simulink模型與全3D環境連結(圖10)。


圖10 : 車輛測試軌道的虛擬環境,以Simulink 3D動畫模塊組建立。
圖10 : 車輛測試軌道的虛擬環境,以Simulink 3D動畫模塊組建立。

(本文由鈦思科技提供,作者Michael Carone任職於MathWorks公司)


相關文章
以模型化基礎設計流程開發測試AUTOSAR軟體元件與複雜裝置驅動
如何利用數位分身進行預測性維護
利用數位分身即時預測鑽油機的效能
透過建模與模擬優化電池性能設計
下一代能源—波浪能發電廠科技的建模與模擬
comments powered by Disqus
  相關新聞
» 是德5G符合性測試解決方案 獲必維國際檢驗集團選用
» 誰最好?誰最強?由你決定!MCU品牌與新品調查
» 台灣AI雲正式商轉 成為AI及軟體產業強力後盾
» 安勤科技鏈結新南向國家 攜手打造智慧城市
» 研華土耳其分公司開幕 確立區域策略合作
  相關產品
» Basler AG與drag and bot GmbH合作開發機器人程式整合專案
» u-blox最新公尺級定位技術 增強GNSS效能
» 意法半導體推出下一代支付系統晶片 提升性能和保護功能
» 貿澤供貨ADI ADcmXL3021三軸震動感測器 適用於條件式監控
» igus iglidur 耐磨工程塑膠塗層 極小空間內進行耐磨滑動


刊登廣告 新聞信箱 讀者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2019 遠播資訊股份有限公司版權所有 Powered by O3
地址:台北市中山北路三段29號11樓 / 電話 (02)2585-5526 / E-Mail: webmaster@hope.com.tw