(1)采样时间
这一项通常为输入的模块所设置的采样时间,若没有输入模块,则为当前子系统下设置的采样时间,若无子系统,则为sovler求解器设置的采样时间。
通常会出现离散状态模块,例如延迟模块,当使用连续解算器时,如果继续使用-1继承采样时间则会报错,这是因为由于延迟模块时离散状态模块,内部只能储存延迟一个固定步长(当延迟为一个步长时)的值,而连续解算器通常会在固定步长内进行更加细分造成实际延迟了多个minor step的值,而这些值不能由离散模块全部储存,这时手动设置一个固定步长值即可。具体原因需了解离散解算器和连续解算器不同的工作原理。
(2)积分模块:
(3)from workspace
从matlab工作区导入数据到simulink中,有三种方法;
矩阵导入法:将时间序列和值序列按照列排列进行导入
当需要增加序列时,
结构体导入法:定义时间,值,维度
timeseries:
simin 是file name
(4)from file
以矩阵形式导入
将.mat文件(提前储存至电脑中的文件)导入到simulink中,from file仅支持数据以行向量(中间是;)方式进行导入,名称要一致。
以timeseries方式导入
t 是file name
(5)模块属性
在simulink中选择一个模块,在matlab工作区中输入get(gcbh)或者inspect(gcbh)可以获得该模块的属性信息
(6)信号分类
(7)库模型
和普通模型区别:库模型没有仿真选项,一般都是锁定状态,不允许编辑,没有代码生成。
在生成库模型时,需要使用函数将库模型加入到simulink库中。
(8)封装模块
主要是对模块进行自定义设置,例如输入输出变量名设置,模块名称,颜色,显示模块内容等
点击模块右键单击mask选项,在icon drawing commands栏中,输入.m语言实现对模型内容的设置,在左边栏设置透明度,坐标,旋转设置等设置。在第二栏中对参数进行设置,以及可以实现callback函数,具体功能待研究。
(9)传递函数Trans fcn
指的是角频率
(10)Signal copy模块
两个用途:实现赋值语句 y=x;
从形式上看,signal conversion把一个信号copy了一下,变成了另外一个信号;从本质上看,其实是把一块内存x copy一下,得到另一块内存y。
将分散的内存合并为连续内存
然后添加signal conversion模块,且勾选Exclude this block from 'Block reduction' optimization(如果不勾选,生成代码时会将该模块优化掉
同时把configuration parameter中的优化等级设置为Minimum(debugging),如下图:
signal conversion模块本身会产生一个数组,我们知道数组的内存是连续的,所以可以这么说,signal conversion模块配合mux模块,将两个离散内存的输入打包成一个连续内存的数组了。