Matlab和Simulink中的信号生成

时间:2016-01-07 08:56:24

标签: matlab import signals simulink

存在结构Meas,其具有名为B_cal的二进制信号,其具有时间和值作为其参数,其值为< 20583 * 1 double>信号。我在Simulink中使用此信号通过From Workspace块,[Meas.(Meas.time),Meas.value]作为块的参数。现在我需要生成一个新的二进制信号,它只有第一位高(即1),所有其他位低。信号应与B_cal具有相同的尺寸,因为我需要将两个信号放在OR gate中。我尝试在Matlab工作区中创建了一个向量:

Signal = Zeros(20583,1);
Signal(1) = 1;

然后我在Simulink中使用了一个FromWorkspace块,并尝试使用Signal作为块参数来导入此信号。但它确实存在尺寸应该是矩阵的误差 有人能说出如何解决这个问题。或者我如何创建一个具有相同元素的新结构,但值应该是必要的信号,即第一位高和低位。

1 个答案:

答案 0 :(得分:0)

我认为您可能对FromWorkspace块要读取的变量有误解。

该块需要一个时间序列来定义模拟中各个点的值。

From Workspace块帮助应该为您指明正确的方向。 Mathworks Help Documentation

我相信以下内容适合您:

>> Signal.time=0;
>> Signal.signals.values=zeros(20583,1)
>> Signal.signals.values(1) = 1;
>> Signal.signals.dimensions = [20583,1]