MATLAB通过命令语句设置Simulink模块参数

您所在的位置:网站首页 irfp048n参数 MATLAB通过命令语句设置Simulink模块参数

MATLAB通过命令语句设置Simulink模块参数

2023-11-11 21:11| 来源: 网络整理| 查看: 265

本文主要介绍了通过使用MATLAB命令行形式给Simulink模块设置参数并提取结果的过程。

目录 1、加载模型load_system2、获取模型参数get_param3、修改参数set_param4、运行sim5、保存结果*附录:官方文档

接下来,我将利用无穷大功率电源供电系统受到故障的Simulink仿真图进行介绍,并对三相故障模块进行设置和修改,并最终提取出所有参数。 模型untitled: 无穷大功率电源故障 三相故障模块初始设置参数: 三相故障 (Switching times(s):[0.02 0.08])

1、加载模型load_system

首先我们需要在程序中加载模型,需要用到的函数是load_system,格式为:

load_system(‘模型名称’)

在这里,我们的命令为:

load_system(‘untitled’)

(注意:要把我们需要调用的模型放在当前工作路径下,否则会显示没有该文件。) 模型放在当前文件夹

加载成功后: 加载

2、获取模型参数get_param

可以通过get_param函数来获取模型中某一模块的数据,具体格式为:

get_param(‘模型名称/模块名称’,‘变量名称’)

在我们查看参数值之前,需要知道在该模型模块后台程序中它的变量都是什么。 通过官方文档: 官方文档节选 在这里,我们可以使用:

get_param(‘untitled/Three-Phase Fault’,‘ObjectParameters’)

来获取模块中的参数名称: Switchtime 在这里,我们想获取三相故障模块中的变换时间值,就可以使用:

get_param(‘untitled/Three-Phase Fault’,‘Switchtimes’)

结果: 查看参数数值

3、修改参数set_param

修改或设置参数需要用到的函数是set_param,格式为:

set_param(‘模型名称/模块名称’,‘变量名称’,'变量值‘’)

也可以同时设置多个变量:

set_param(‘模型名称/模块名称’,‘变量名称1’,'变量值1‘’,‘变量名称2’,'变量值2‘,……)

接下来,我们修改Switchtimes变量为0.02,则命令为:

set_param(‘untitled/Three-Phase Fault’,‘SwitchTimes’,‘0.02’)

4、运行sim

通过sim函数运行模型,格式为:

sim(‘模型名称’)

如果要在运行时加入数据,则格式为:

sim(‘模型名称’,‘变量名称1’,'变量值1‘,‘变量名称2’,'变量值2‘,……)

在修改参数之前,运行结果的波形图为: 修改参数前的波形图 通过命令:

set_param(‘untitled/Three-Phase Fault’,‘SwitchTimes’,‘0.02’) sim(‘untitled’)

运行命令

得到结果: 修改参数后 注意:在sim运行后可能会出现以下错误: 错误 这是由于我们可能在进行调试时将模块的对话框打开了,因为我们在整个使用命令条用的过程中都是在不打开Simulink模型搭建器中进行的,这里将它关闭就好了,再重新运行即可。 在这里插入图片描述

5、保存结果

如果要将最后结果保存下来,就要在模型中添加“To Workspace”的模块,就在运行之后直接将数据保存到工作区: to workspace模块 它的位置在: 模块位置 在运行模型后,即可看到工作区中出现了两个数据: 工作区的结果 双击后就可以看到数据了: 变量simout

*附录:官方文档 函数名称功能load_system将 Simulink 模型加载到内存中get_param获取参数名称和值set_param设置系统和模块参数值sim动态系统仿真

感谢大家的参考,有错误的话敬请各位指正! 欢迎大家在评论区讨论~



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3