Simulink 是基于MATLAB 平台之上的系统级仿真平台,它与MATLAB 紧密地集成在一起。Simulink 不仅能够采用MATLAB 的求解器对动态系统进行求解,而且还可以和MATLAB 进行数据交互(从MATLAB的工作空间中读入或者向MATLAB 工作空间中写入数据)。本节对Simulink 于 MATLAB 的接口(也就是数据交互)做简单的介绍。 4.5.1 由 MATLAB 工作空间变量设置系统模块参数 如前所述,用户可以双击一个模块以打开模块参数设置对话框,然后直接输入数据以设置块参数。其实,用户也可以使用MATLAB 工作空间中的变量设置系统模块参数,这对于多个模块的参数均依赖于同一个变量时非常有用。由MATLAB 工作空间中的变量设置模块参数的形式有如下两种: ( 1)直接使用MATLAB 工作空间中的变量设置模块参数。 ( 2)使用变量的表达式设置模块参数。 例如,如果a 是定义在MATLAB 中的参数,则表达式a、 a^ 2+5、exp( -a)等均可以作为系统模块的参数。 4.5.2 将信号输出到MATLAB 工作空间中 使用示波器模块Scope 的输出信号,可以使用户对输出的信号进行简单的定性分析。然而,有时需要对输出信号作定量的分析,此时用户可以先将系统模型中的选定信号输出到MATLAB 工作空间中,然后再作进一步的定量分析。 使用Sinks 模块库中的To Workspace 模块,可以轻易地将信号输出到MATLAB 工作空间中。信号输出的名称在To Workspace 模块的对话框中设置,此对话框还可以设置输出数据的点数、输出的间隔,以及输出数据的类型等。其中输出类型有三种形式:数组、结构以及带有时间变量的结构。仿真结束或暂停时信号被输出到工作空间中。 4.5.3 使用工作空间变量作为系统输入信号 Simulink 与 MATLAB 的数据交互是相互的,除了可以将信号输出到 MATLAB 工作空间中之外,用户还可以使用MATLAB 工作空间中的变量 作为系统模型的输入信号。使用Sources 模 块库中 的From Workspace 模块可以将MATLAB 工作空间中的变量作为系统模型的输入信号。此变量的格式如下表示: >>t=0:time_step:final_time;表示信号输入时间范围与时间步长 >>x=func(t);表示在每一时刻的信号值 >>input=[t',x'];表示信号的输入向量,输入变量第一列须为时间序列,接下来的各列代表信号的取值 例如,在MATLAB 命令窗口中键入如下的语句并运行。 >>t=0:0.1:10; >>x=sin(t); >>input=[t',x']; 在系统模型的From Workspace 中使用此变量作为信号...