matlab m文件中如何调用simulink模块

现在有m程序一个,里面有几个嵌套的插值,运行时老是out of memory,而simulink中有一个模块可以代替一部分功能,请问怎么调用


哆啦的时光机
浏览 2921回答 2
2回答

慕娘9325324

在m文件里调用模型mdl关键是用sim命令。[ t, x, y ] = sim( model, timespan, options, ut)[ t, x, y1, y2, …, yn] = sim( model, timespan, options, ut)(1)model:需要进行仿真的系统模型框图名称;(2)timespan:系统仿真的时间范围(起始至终止时间),可有如下形式:tFinal:设置仿真终止时间。仿真起始时间默认为0;[tStarttFinal]:设置起始时间(tStart)与终止时间(tFinal);[tStartOutputTimestFinal]:设置起始时间(tStart)与终止时间(tFinal),并且设置仿真返回的时间向量[tStartOutputTimestFinal],其中tStart、OutputTimes、tFinal必须按照升序排列。(3)options:由simset命令所设置的除仿真时间外的仿真参数;(4)ut:表示系统模型顶层的外部可选输入。ut可以是MATLAB 函数。可以使用多个外部输入ut1、ut2、…。(5)t:返回系统仿真的时间向量。(6)x:返回系统仿真的状态变量矩阵。(7)y:返回系统仿真的输出矩阵。按照顶层输出Outport模块的顺序输出。如果输出信号为向量输出,则输出信号具有与此向量相同的维数。(8)y1,…,yn:返回多个系统仿真的输出。改变模型输入参数的demo,同时不影响原来的mdl文件>t=0:0.1:10; t=t’; u=sin(t); sim_input=[t, u];>[tout1, x1, yout1]=sim(‘command_in_out’, 10); %使用Simulink仿真参数对话框中的workspace I/O 从MATLAB 工作空间中获得输入信号>u=cos(t);>ut=[t, u]; %改变系统输入信号>>[tout2, x2, yout2]=sim(‘command_in_out’, 10, [], ut);
打开App,查看更多内容
随时随地看视频慕课网APP