- 216
- 0
- 约5.06千字
- 约 10页
- 2021-04-13 发布于天津
- 举报
GUI 指导教程系列 (9)——在 GUI 中调用 Simulink 模型
MATLAB 技术论坛 ...
MATLAB 技术论坛
标题 : GUI 指标题: GUI 指导教程系列 (9)——在 GUI
标题 : GUI 指
作者: dynamic 时间: 2010-3-25 22:40
导教程系列 (9)——在 GUI 中调用 Simulink 模型本节教程主
要向大家演示使用三种不同的方法,在 GUIDE
要向大家演示使用三种不同的方法,在 GUIDE
中嵌入
Simulink 模块。关于原理大家可以参考
/access/ ... g_guis/f6-8865.html 在
Simulink 中能够直观快速的搭建系统模型,如果再联合
GUIDE 的面向对象可视化编程,可以说是锦上添花!将
Simulink 融入到
Simulink 融入到 GUIDE
中可以方便模型的终端用户,很容
易直接可视化的操控模型参数和显示仿真结果,而此时并不 需要进入 Simulink 环境。构建 Simulink 模型该部分我们将快
使用。速的构建一个 Simulink 模型方便在后面的 GUIDE 中 本次我们就使用一个简单的二阶 #8220; 质量-弹簧-阻尼
使用。
#8221; 系统作为示例吧。 在使用该教程时,我们假定您已 经具备 Simulink 相关建模基础和了解 #8220; 质量-弹簧-阻 尼#8221; 系统的理论。 因此在这里我就不深入介绍 Simulink
模型的建立和 #8220;质量-弹簧 -阻尼 #8221;系统的数学推
导。如果的确需要,建议您参考下
/Tutorials/Matlab/Simulink/index.html1 、先
载论坛为您制作好的 Simulink 和 GUI 模型
simulink-gui.zip (13.04 KB, 下载次数 : 338) ,包含
simulink_gui.fig 、 simulink_gui.m 、 simulateButton.m 和
mass_spring.mdl 四个文件, 将其解压到 MATLAB 工作目录。
2、在 Simulink 中打开模型,框图如下所示 3、请注意增益
(Gain)模块的增益使用的是变量 1/m、c/m和k/m,而不是数 值。因为 Simulink 默认使用基本状态空间 (Base WorkSpace)
的数据,因此在仿真之前必须先在状态空间定义参数m
的数据,因此在仿真之前必须先在状态空间定义参数
m、c
和k,否则将出错。当然我们可以使用 set_param()函数直接
设置参数,这个将会在后面讲解。 4、由于函数有自己的状
态空间(不是Base Works pace),因此在函数中使用 sim()函数
进行模型仿真,即使你在函数中定义了模型的必要参数,但 是这些参数只存在于函数状态空间中,模型在仿真是没法获 取。比如下面的代码将会导致错误 function runSimulinkModel(m,c,k) % 即使在函数中有模型的参数输入或定义,但是 Simulink 默认只使用基本状态空间的数据
sim(mass_spring);
复制代码
5、由于函数状态空间和基本状态空间的变量和数据不兼容,
这就增加了在 GUIDE 中调用 Simulink 模型的难度。在接下 来的教程中,我们将讨论使用三种方法来解决这个问题!
GUIDE 调用 Simulink 方法一: 主要使用 set_param 函数设置
仿真参数方法二: Simulink
仿真参数方法二: Simulink
中提供的 simset() 函数,可以让用
户自定 Simulink 模型的运行空间 (默认是 Base Workspace),
我们只要将 Simulink 设置为从当前工作空间运行就 Ok 了。
帮助! 1、在 GUIDE关于
帮助! 1、在 GUIDE
中打开 simulink_gui.fig 文件 (不会使用
GUIDE ,那先看下
/thread-5217-1-1.html) , GUI 布局如 下所示 2、打开 simulink_gui.m 文件定位到 Simulate! 按钮的 回调函数 simulate_pushbutton_Callback ,在后面添加如下代 码 axes(handles.axes1) % 将 axes1 设置为当前坐标系,便于 绘制仿真结果
m=str2num(get(handles.mass_editText,String)); % 获取质量
c=str2num(get(handles.damping_editText,String)); % 获取阻k=str2num(get(handles.spr
原创力文档

文档评论(0)