2012-04-05 108 views
2

我在工作區中有2個單維數組,其中一個(xarray)用作x軸,另一個(yarray)用作y軸。在Simulink中繪製2個矩陣的X-Y圖形,由Matlab工作區導出2個陣列

xarray = 

    1  2  3  4  5  6  7  8  9 10 

yarray = 

    500 200 800  0  0  0  0  0  0  0 

我想在Simulink中做的是從工作區中讀取這些數組並生成一個X-Y圖。我可以很容易地通過Matlab命令行(figure; plot(xarray, yarray))來做到這一點,但是,我想從Simulink中完成。

我已經嘗試通過使用兩個讀取來自工作空間,每個陣列「爲工作區」的塊,然後我連接到一個「XY圖形」的相應輸入,但是,我得到的錯誤是:

端口寬度或尺寸錯誤。 'simulink_model/XY Graph/Mux'的輸出端口1是具有18個元素的一維向量。

任何幫助將不勝感激,謝謝。

+0

參見XY圖形塊。 – Karlo 2016-05-18 16:09:40

回答

1

當使用外部矩陣時,simulink可能會有點棘手。

那麼一兩件事情: 1)矩陣必須有數組作爲列(fortunatly你可以在Simulink本身)

2做置操作),你需要第一列represt的時間錄入數組: 所以在你的情況下,對於第一個輸入可以使用[xarray; xarray]',而第二個輸入,你可以使用[xarray; yarray]」(提供,當然xarray不改變)

3)不要忘記修改範圍的偏好看到所有的數據(默認馬克塞斯爲[-1; 1])

+0

非常感謝您的幫助,事實證明它非常有用!很難相信Simulink對於這樣一個理論上簡單的任務來說非常棘手。 – limp 2012-04-05 21:42:43