2016-08-20 94 views
0

我在simulink中設計了一個模型。通常,我通過在模型中設置塊(eg.gain)的值並模擬模型並打開範圍塊來生成一個圖。但是我需要生成與塊的不同值相對應的不同grpah(eg.gain)。基本上,對於增益值的不同值,我需要不同的圖表,但都在同一個圖表中。我給予我的收益的不同值應該來自一個數組。這是我的型號 enter image description here如何迭代Simulink Matlab中的模型值?

我第一次使用MATLAB。請初學者的方法

+1

對於一個簡單的模型,您只需將整個向量值放入增益模塊。 Simulink將模擬模型,就好像您在並行模擬n模型(假設n元素向量)並在相同範圍內顯示所有n模型的結果。然而,隨着你的模型變得越來越複雜,這是不可能的,你應該遵循@Tom Youngs的回答。 –

回答

1

設置增益值回答這個

增益塊的值可以將其設置爲變量,而不是常量,即你可以給一個增益單元K中的價值設置面板。

然後,您可以創建一個腳本,給K一個值,例如;

%script to set gain and run model 
K=2; 
sim('Model Name Here'); 

這將設置增益塊的值並運行模型。

將輸出保存

匯Simulink的庫瀏覽器的部分是稱爲到工作區塊,這可以讓你的任何輸出值發送到MATLAB工作區以多種格式與你定義的名稱。

Simulink 'To workspace' block

你的Simulink模型現在這個樣子;現在

Simulink Model with output block

您可以創建一個腳本,設置增益值模型,運行模式和輸出保存到您的工作空間。使用幾個for循環,您可以爲系統生成一組輸入和輸出。

從這裏您應該能夠使用記錄良好的繪圖函數在同一圖表上繪製輸入和輸出。