getting data from workspace to Simulink

107 次查看(过去 30 天)
Hello guys,
I have a simulink file that is basically giving as output the control signal of many switches "1" and "0", I took the outputs of the clock, and all the data to workspace using "simout" as array, and all the arrays (time, command of all switches) have the same size (320).
Now I am trying to use in a different simulink model these outputs from workspace in order to simulate my model, I am getting the following error for all the "simin" from workspace :
"Invalid matrix variable specified as workspace input in 'untitled4/From Workspace'. The matrix data must be a real, double, have two dimensions, and at least two columns. The first column must contain time values and the remaining columns the data values. Matrix values cannot be Inf or NaN."
Can You please suggest a solution for my problem
thanks in adavnce
  2 个评论
Monika Jaskolka
Monika Jaskolka 2021-6-1
Can you provide the simout data that you are using as input to the From Workspace block?
fadi awar
fadi awar 2021-6-1
The data are "0" and "1" of type double.
T= 0 0.0100 0.0200 0.0300 0.0400 0.0500 0.0600 0.0700 0.0800 0.0900 0.1000 0.1000 0.1000 0.1100 0.1200 0.1300 0.1400 0.1500 (it continues to reach value 3 as for 3 seconds)
and one of the switching vectors are:
Sw1= 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0
those are the values I get in the workspace

请先登录,再进行评论。

采纳的回答

Sulaymon Eshkabilov
Hi,
In this case, you'd need to generate two column data from your imported data ([To Woskspace] block) into matlab workspace, e.g.:
DATA = out.simout; % From your alread imported data from the 1st Simulink model
Now, in your [Simin], specify the input variable name: DATA
Run your new Simulink model.
Good luck.
  6 个评论
Taimoor Khan Mehmand
My 'avg_rocof' data is as shown in the figure that I have attached. It's ' -0.2762 ' 1x1 double . And I want to use this 'avg_rocof' value using "From Workspace block " in my one of the subsystem of my Simulink model as an input. But I am getting this error """ Invalid matrix variable specified as workspace input in 'IEEE_14_Bus_System_SM_FFR/From Workspace'. The matrix data must be a real, double, have two dimensions, and at least two columns. The first column must contain time values and the remaining columns the data values. Matrix values cannot be Inf or NaN.
Moreover the script I wrote to calculate "avg_rocof" is ,
f = Fs.signals.values; % frequency signal
Dt = 20e-6; % sampling step size
R = 0; % rocof initialisation
for k = 196002:1:316002
R = R + (f(k)- f(k-1))/Dt;
end
avg_rocof = R / (316002-196002);
display(avg_rocof);
Sulaymon Eshkabilov
In this case, you can use a Constant block and enter the variable name avg_rocof into Constant value: window of Constant block that can be opened by double clikcing on it.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Sources 的更多信息

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by