300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 用Matlab的.m文件运行 Simulink 搭建的子系统 对子函数进行输入赋值 运行 输出读取

用Matlab的.m文件运行 Simulink 搭建的子系统 对子函数进行输入赋值 运行 输出读取

时间:2020-04-11 02:50:47

相关推荐

用Matlab的.m文件运行 Simulink 搭建的子系统 对子函数进行输入赋值 运行 输出读取

Simulink上搭建一个子函数,

可以参照以下教程

Matlab·Simulink的使用—【子系统的创建与封装】

上述教程搭建的是固定输入,输出通过Scope 查看,对于大的系统工程来说不便于模块化使用。

在该步骤基础上,subsystem的输入改成from work space,重命名成inport。

输出改成 to work space。同样重命名输出。就可以获得如图一所示simulink图。

对子函数里的变量,可以用常数给定。为了便于从.m文件更改,在此我们称这两个值为m、n。

Matlab的.m文件运行 Simulink 搭建的子系统

创建.m文件,假如子系统的名字为A.slx ,.m文件一般命名为 test_A.m。放在同一个文件夹。

首先对子函数里的变量赋值

m=1;n=15;

输入赋值

% load the input data into simulinkimport.time = 0:0.01:1;import.signals.values = 10*sin(5*import.time)'; % import.signals.dimension = 1;

注意在绘制子函数输入 ,不需要对输入进行设置。这些设置均通过上述代码实现。

输入通过一个结构体,设定输入信号的时间x和信号随时间的函数y=f(x)的转置。(转置的符号是单引号 ’ )。dimension保持默认1。

函数运行,输出读取

% run simulink in discreted time modestop_time = '1'; %model = sim('gain_add','StartTime','0','StopTime',stop_time,'SimulationMode','normal');gain_out1 = model.get('out1');gain_out2 = model.get('out2');

绘制输出进行查看

% plot the cic outputfigure;plot(gain_out1, 'r+');hold on;plot(gain_out2, 'b');title('the gain output');

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。