.simulink是基于MATLAB的仿真平台,可通过.m脚本文件实现对simulink系统的动态仿真。
一、.m文件实现对系统模块的设置
主要的语句为:set_param()语句,详见https://mp.csdn.net/editor/html/115439479。
二、将信号输出到MATLAB工作区
1.勾选示波器(scope)中Logging选项卡中data to workspace选项

2.利用 To Workspace模块

三、实例
下面我们以自由落体运动讲解如何利用.m文件实现对simulink系统的动态仿真。
自由落体运动高度与时间的公式如下:
![]()
其中:h表示自由落体的高度,g为常数,受当地海拔的影响,t表示时间
利用simulink搭建仿真模型,利用To Workspace模块将高度h导入到工作区。

下面利用.m文件分别对g=10,g=5时的系统进行仿真,并绘出高度与时间的关系图。
clc
clear all
%%%g=10时高度与时间的关系
g=10
[t1,x1,y1]=sim('new',10)
y1=h
%%%g=5时高度与时间的关系
g=5
[t2,x2,y2]=sim('new',10)
y2=h
%绘图
figure
subplot(2,1,1)
plot(t1,y1)
subplot(2,1,2)
plot(t2,y2)
输出结果如下:

在分别从simulink中示波器(scope)中查看h与时间的关系
g=10时

g=5时

经验证.m文件实现对simulink系统的动态仿真的方法是正确的。
注意事项:
在该仿真中要将To Workspace模块Save format选项设置为Array,否则会报错。

本文介绍了如何使用MATLAB的.m文件对Simulink系统进行动态仿真,包括设置系统模块参数、输出信号到工作区的方法,并通过自由落体运动的案例详细说明了具体步骤。在仿真中,通过调整重力加速度g的值,将高度h导入工作区并绘制了高度与时间的关系图,验证了.m文件仿真方法的正确性。
5918

被折叠的 条评论
为什么被折叠?



