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

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

接下来,我将利用无穷大功率电源供电系统受到故障的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动态系统仿真

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

  • 40
    点赞
  • 129
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值