Simulink做仿真的时候,需要在m文件里运行Simulink模型,而且需要传递一些参数,所以要用到sim函数。在m文件中向Simulink模型传递参数,并运行模型,得到模型运行结果。

    以一个简单的PID控制仿真模型为例,如果要在m文件中运行这个模型,则m文件程序可以写成这样:

clear all;
close all;
ts = 1e-4;
In = 5;
Kp = 60;
Ki = 1;
Kd = 3;
simOut = sim('sim_test');
for k = 1:1:length(out)
    time(k) = k * ts;
end
figure(1);plot(time,out);grid on;

其中,In是PID控制的期望输入,Kp,Ki,Kd分别是PID控制参数,都要从m文件中传递给Simulink模型。out是Simulink模型运行得到的结果。

    Simulink模型框图如下:

其中,PID模块的参数应该如下图所示:

To Workspace模块将仿真结果传递给m文件,可以在m文件中直接调用。

    通过运行m文件就可以得到模型的仿真结果如下图所示:

    这样就能通过m文件对Simulink模型进行传递参数、运行模型并获取结果的操作。
--------------------- 
作者:Hugoool 
来源:CSDN 
原文:https://blog.csdn.net/u014170067/article/details/53355033 
版权声明:本文为博主原创文章,转载请附上博文链接!

Logo

「智能机器人开发者大赛」官方平台,致力于为开发者和参赛选手提供赛事技术指导、行业标准解读及团队实战案例解析;聚焦智能机器人开发全栈技术闭环,助力开发者攻克技术瓶颈,促进软硬件集成、场景应用及商业化落地的深度研讨。 加入智能机器人开发者社区iRobot Developer,与全球极客并肩突破技术边界,定义机器人开发的未来范式!

更多推荐