Matlab/Simulink常用命令、查找参数名称及脚本示例

常用命令

1、仿真命令:

sim —仿真运行一个simulink模块
sldebug —调试一个simulink模块
simset —设置仿真参数
simget —获取仿真参数
线性化和整理命令:
linmod —从连续时间系统中获取线性模型
linmod2 —也是获取线性模型,采用高级方法
dinmod —从离散时间系统中获取线性模型
trim —为一个仿真系统寻找稳定的状态参数

2、构建模型命令:

open_system --打开已有的模型
例如:open_system(‘sldemo_clutch’)
close_system --关闭打开的模型或模块
new_system --创建一个新的空模型窗口
load_system --加载已有的模型并使模型不可见
例如:load_system(‘sldemo_clutch’)
save_system --保存一个打开的模型
add_block --添加一个新的模块
add_line --添加一条线(两个模块之间的连线)
delete_block --删除一个模块
delete_line --删除一根线
find_system --查找一个模块
例如:find_system(bdroot,‘SearchDepth’,1,‘BlockType’,‘Inport’); %获取顶层Inport模块路径
hilite_system --使一个模块醒目显示
replace_block --用一个新模块代替已有的模块
set_param --为模型或模块设置参数
例如:set_param(‘demo/Gain’,‘OutDataTypeStr’,‘single’) %设置demo/Gain模块的输出数据类型为single
get_param --获取模块或模型的参数
例如:OutDataTypeStr = get_param(‘demo/Gain’,‘OutDataTypeStr’) %获取demo/Gain模块的输出数据类型

OutDataTypeStr =

'Inherit: Inherit via internal rule'

add_param --为一个模型添加用户自定义的字符串参数
delete_param --从一个模型中删除一个用户自定义的参数
bdclose --关闭一个simulink窗口
bdroot --根层次下的模块名字
gcb --获取当前模块的名字
gcbh --获取当前模块的句柄
gcs --获取当前系统的名字
getfullname --获取一个模块的完全路径名
slupdate --将1.x的模块升级为3.x的模块
addterms --为未连接的端口添加terminators模块
boolean --将数值数组转化为布尔值
slhelp --simulink的用户向导或者模块帮助

3、封装命令:

hasmask --检查已有模块是否封装
hasmaskdlg --检查已有模块是否有封装的对话框
hasmaskicon --检查已有模块是否有封装的图标
iconedit --使用ginput函数来设计模块图标
maskpopups --返回并改变封装模块的弹出菜单项
movemask --重建内置封装模块为封装的子模块

4、诊断命令:

sllastdiagnostic --上一次诊断信息
sllasterror --上一次错误信息
sllastwarning --上一次警告信息
sldiagnostics --为一个模型获取模块的数目和编译状态

5、硬拷贝和打印命令:

frameedit --编辑打印画面
print --将simulink系统打印成图片,或将图片保存为m文件
printopt --打印机默认设置
orient --设置纸张的方向

6、参数名称在脚本中对应的字符串是什么
https://blog.csdn.net/u013288925/article/details/104065140
Gain模块的输出数据类型是’OutDataTypeStr’,这个字符串是从哪里知道的呢?有以下两种途径获得。
1)右键模块Gain——Properties——Block Annotation,可以在左边的列表框中看到该模块的所有属性,找到相应的即可。
在这里插入图片描述
图1
2)双击模块——找到填写相应参数的地方——右键What’s This?——弹出的帮助窗口拉到最下面——Block Parameter右边写的就是了
在这里插入图片描述
图2

7、查看模块的属性:选中模块(constant);在命令行输入inspect(gcbh)。结果如图
在这里插入图片描述

8、应用例子:自动添加模型中选中线的名称并关联数据字典


```bash

```c
function AddSignalResolve
%% 自动添加模型中选中线的名称并关联数据字典

SelectedLines = find_system(gcs,'FindAll','on','type','line','selected','on');
 
if isempty(SelectedLines)
    return;
end
    
for i = 1:length(SelectedLines)
    srcBlock = get(SelectedLines(i),'srcBlockHandle');
    DstBlock = get(SelectedLines(i),'DstBlockHandle');
    srcBlockType = get_param(srcBlock,'BlockType');
    DstBlockType = get_param(DstBlock,'BlockType');
    if strcmp(srcBlockType,'Inport')
        SignalName = get_param(srcBlock,'Name');
        set(SelectedLines(i),'Name',SignalName);
        set(SelectedLines(i),'MustResolveToSignalObject',1);
        continue;
    end
    
    if strcmp(DstBlockType,'Outport')
        SignalName = get_param(DstBlock,'Name');
        set(SelectedLines(i),'Name',SignalName);
        set(SelectedLines(i),'MustResolveToSignalObject',1);
        continue;
    end
    
    SignalName = get(SelectedLines(i),'Name');
    if ~isempty(SignalName)
        set(SelectedLines(i),'MustResolveToSignalObject',1);
    end
    
end

end

  • 0
    点赞
  • 66
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于想要学习或掌握Matlab/Simulink的使用的用户来说,以电子版的实用教程是一个非常方便和实用的选择。 Matlab是一种用于数值计算和科学计算的高级编程语言。它可以用于各种领域,如工程、物理、数学等。而SimulinkMatlab的一个附加组件,用于建立和模拟动态系统的模型。因此,学习MatlabSimulink将帮助用户解决各种科学和工程问题。 电子版实用教程提供了丰富的学习材料和示例,以帮助用户快速入门和深入理解MatlabSimulink的使用。教程涵盖了从基础知识到高级技巧的各个方面,包括Matlab的语法、变量和数据处理、矩阵运算、图形绘制、函数和脚本的编写,以及Simulink的模型建立、仿真和分析等。 通过电子版实用教程,用户可以根据自己的学习进度和需要进行自主学习。教程提供了详细的步骤和说明,使得用户可以轻松地跟随,并通过练习和示例来巩固所学内容。教程还包括了一些常见的实际应用案例,帮助用户将所学知识应用到实际问题中。 另外,电子版教程的灵活性和便携性也是其优点之一。用户可以随时随地访问教程,无需携带厚重的纸质教材。而且电子版教程还能够与其他在线资源和社区进行交互,帮助用户更好地解决问题和获取帮助。 总之,Matlab/Simulink的电子版实用教程是学习和掌握这些工具的理想选择。它提供了全面且易于理解的学习材料,帮助用户快速入门和应用所学知识。无论是初学者还是有一定经验的用户,都能从中受益并提升自己的技能水平。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值