MATLAB的Simulink的基础知识
liuian 2024-12-12 13:26 100 浏览
最近想系统的学习一下MATLAB的Simulink仿真相关的知识,因为以后可能会涉及到Simulin中的模型自动生成代码、Stateflow、状态机相关的内容,想提前学习一下。
1.Simulink的介绍
Simulink是MATLAB中的一种可视化仿真工具, 是一种基于MATLAB的框图设计环境,是实现动态系统建模、仿真和分析的一个软件包,被广泛应用于线性系统、非线性系统、数字控制及数字信号处理的建模和仿真中。
Simulink提供一个动态系统建模、仿真和综合分析的集成环境。在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。
Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。
2.Simulink的功能
Simulink可以用连续采样时间、离散采样时间或两种混合的采样时间进行建模,它也支持多速率系统,也就是系统中的不同部分具有不同的采样速率。为了创建动态系统模型,Simulink提供了一个建立模型方块图的图形用户接口,这个创建过程只需单击和拖动鼠标操作就能完成,它提供了一种更快捷、直接明了的方式,而且用户可以立即看到系统的仿真结果。
Simulink是用于动态系统和嵌入式系统的多领域仿真和基于模型的设计工具。对各种时变系统,包括通讯、控制、信号处理、视频处理和图像处理系统,Simulink提供了交互式图形化环境和可定制模块库来对其进行设计、仿真、执行和测试。
构架在Simulink基础之上的其他产品扩展了Simulink多领域建模功能,也提供了用于设计、执行、验证和确认任务的相应工具。Simulink与MATLAB紧密集成,可以直接访问MATLAB大量的工具来进行算法研发、仿真的分析和可视化、批处理脚本的创建、建模环境的定制以及信号参数和测试数据的定义。
特点
- 丰富的可扩充的预定义模块库。
- 交互式的图形编辑器来组合和管理直观的模块图。
- 以设计功能的层次性来分割模型,实现对复杂设计的管理。
- 通过Model Explorer 导航、创建、配置、搜索模型中的任意信号、参数、属性,生成模型代码。
- 提供API用于与其他仿真程序的连接或与手写代码集成。
- 使用Embedded MATLAB模块在Simulink和嵌入式系统执行中调用MATLAB算法。
- 使用定步长或变步长运行仿真,根据仿真模式(Normal,Accelerator,Rapid Accelerator)来决定以解释性的方式运行或以编译C代码的形式来运行模型。
- 图形化的调试器和剖析器来检查仿真结果,诊断设计的性能和异常行为。
- 可访问MATLAB从而对结果进行分析与可视化,定制建模环境,定义信号参数和测试数据。
- 模型分析和诊断工具来保证模型的一致性,确定模型中的错误。
3.Embedded Coder和Simulink Coder
Embedded Coder产品为 MATLAB产品扩展了可用于嵌入式软件开发的功能,可以生成具有专业人工代码的清晰度和效率的代码。例如可以:
(1)生成紧凑、快速的代码。
(2)大规模生产中使用的微处理器以及嵌入式系统至关重要。
(3)自定义生成的代码的外观。
(4)针对特定于应用的要求对生成的代码进行优化。
(5)启用追溯选项,帮助您验证生成的代码。MATLAB Coder用于从MATLAB生成 ANSI C/C++ 代码,同时也是使用Simulink Coder的一个前置条件。
Simulink Coder跟MATLAB Coder的功能相似,只不过是从Simulink模型来生成ANSI C/C++代码。Embedded Coder 则允许更进一步的针对MATLAB Coder或者Simulink Coder 生成的代码进行优化和定制,从而生成可以应用到嵌入式产品中去的产品级代码。
4. slx文件与mdl文件的差别
Matlab 2012b以前的版本中,Simulink模型文件格式为.mdl;Matlab 2012b及以后的版本中,Simulink模型默认文件格式为.slx。
slx文件是二进制格式文件,mdl文件是文本格式文件,由于slx文件相对于mdl文件被压缩,通常slx文件大小会比相同的mdl文件小。
类型 | 文件格式 | 文件大小 | 打开速度 | 运行速度 |
.slx文件 | 二进制文件 | 较小 | 相当 | 相当 |
.mdl文件 | 文本文件 | 较大 | 相当 | 相当 |
5.Simulink的启动
方式一:菜单栏启动
方式二:命令行窗口启动
输入simulink,按下回车
6.MATLAB运行simulink命令
常用命令
(1)仿真命令
sim | ---仿真运行一个simulink模块 |
sldebug | ---调试一个simulink模块 |
simset | ---设置仿真参数 |
simget | ---获取仿真参数 |
(2)线性化和整理命令
linmod | ---从连续时间系统中获取线性模型 |
linmod2 | ---也是获取线性模型,采用高级方法 |
dinmod | ---从离散时间系统中获取线性模型 |
trim | ---为一个仿真系统寻找稳定的状态参数 |
(3)构建模型命令
open_system | --打开已有的模型 |
close_system | --关闭打开的模型或模块 |
new_system | --创建一个新的空模型窗口 |
load_system | --加载已有的模型并使模型不可见 |
save_system | --保存一个打开的模型 |
add_block | --添加一个新的模块 |
add_line | --添加一条线(两个模块之间的连线) |
delete_block | --删除一个模块 |
delete_line | --删除一根线 |
find_system | --查找一个模块 |
hilite_system | --使一个模块醒目显示 |
replace_block | --用一个新模块代替已有的模块 |
set_param | --为模型或模块设置参数 |
get_param | --获取模块或模型的参数 |
add_param | --为一个模型添加用户自定义的字符串参数 |
delete_param | --从一个模型中删除一个用户自定义的参数 |
bdclose | --关闭一个simulink窗口 |
bdroot | --根层次下的模块名字 |
gcb | --获取当前模块的名字 |
gcbh | --获取当前模块的句柄 |
gcs | --获取当前系统的名字 |
getfullname | --获取一个模块的完全路径名 |
slupdate | --将1.x的模块升级为3.x的模块 |
addterms | --为未连接的端口添加terminators模块 |
boolean | --将数值数组转化为布尔值 |
slhelp | --simulink的用户向导或者模块帮助 |
(4)封装命令
hasmask | --检查已有模块是否封装 |
hasmaskdlg | --检查已有模块是否有封装的对话框 |
hasmaskicon | --检查已有模块是否有封装的图标 |
iconedit | --使用ginput函数来设计模块图标 |
maskpopups | --返回并改变封装模块的弹出菜单项 |
movemask | --重建内置封装模块为封装的子模块 |
(5)诊断命令
sllastdiagnostic --上一次诊断信息 |
sllasterror --上一次错误信息 |
sllastwarning --上一次警告信息 |
sldiagnostics --为一个模型获取模块的数目和编译状态 |
硬拷贝和打印命令: |
frameedit --编辑打印画面 |
print --将simulink系统打印成图片,或将图片保存为m文件 |
printopt --打印机默认设置 |
orient --设置纸张的方向 |
>> new_system("u1")
>> open_system("u1")
>> bdclose
>> new_system("test1")
>> open_system("test1")
>> save_system("test1")
>> bdclose
>> open_system("test1")
>> gcsans =
'test1'本文内容来源于网络,仅供参考学习,如内容、图片有任何版权问题,请联系处理,24小时内删除。
作 者 | 郭志龙
编 辑 | 郭志龙
校 对 | 郭志龙
相关推荐
- 搭建一个20人的办公网络(适用于20多人的小型办公网络环境)
-
楼主有5台机上网,则需要一个8口路由器,组网方法如下:设备:1、8口路由器一台,其中8口为LAN(局域网)端口,一个WAN(广域网)端口,价格100--400元2、网线N米,这个你自己会看了:)...
- 笔记本电脑各种参数介绍(笔记本电脑各项参数新手普及知识)
-
1、CPU:这个主要取决于频率和二级缓存,频率越高、二级缓存越大,速度越快,现在的CPU有三级缓存、四级缓存等,都影响相应速度。2、内存:内存的存取速度取决于接口、颗粒数量多少与储存大小,一般来说,内...
- 汉字上面带拼音输入法下载(字上面带拼音的输入法是哪个)
-
使用手机上的拼音输入法打成汉字的方法如下:1.打开手机上的拼音输入法,在输入框中输入汉字的拼音,例如“nihao”。2.根据输入法提示的候选词,选择正确的汉字。例如,如果输入“nihao”,输...
- xpsp3安装版系统下载(windowsxpsp3安装教程)
-
xpsp3纯净版在采用微软封装部署技术的基础上,结合作者的实际工作经验,融合了许多实用的功能。它通过一键分区、一键装系统、自动装驱动、一键设定分辨率,一键填IP,一键Ghost备份(恢复)等一系列...
- 没有备份的手机数据怎么恢复
-
手机没有备份恢复数据方法如下1、使用数据线将手机与电脑连接好,在“我的电脑”中可以看到手机的盘符。 2、将手机开启USB调试模式。在手机设置中找到开发者选项,然后点击“开启USB调试模式”。 3、...
- 电脑怎么激活windows11专业版
-
win11专业版激活方法有多种,以下提供两种常用的激活方式:方法一:使用激活密钥激活。在win11桌面上右键点击“此电脑”,选择“属性”选项。进入属性页面后,点击“更改产品密钥或升级windows”。...
- 华为手机助手下载官网(华为手机助手app下载专区)
-
华为手机助手策略调整,已不支持从应用市场下载手机助手,目前华为手机助手是需要在电脑上下载或更新手机助手到最新版本,https://consumer.huawei.com/cn/support/his...
- 光纤线断了怎么接(宽带光纤线断了怎么接)
-
宽带光纤线断了可以重接,具体操作方法如下:1、光纤连接的时候要根据束管内,同色相连,同芯相连,按顺序进行连接,由大到小。一般有三种连接方法,分别是熔接、活动连接和机械连接。2、连接的时候要开剥光缆,抛...
- win7旗舰版和专业版区别(win7旗舰版跟专业版)
-
1、功能区别:Win7旗舰版比专业版多了三个功能,分别是Bitlocker、BitlockerToGo和多语言界面; 2、用途区别:旗舰版的功能是所有版本中最全最强大的,占用的系统资源,...
- 万能连接钥匙(万能wifi连接钥匙下载)
-
1、首先打开wifi万能钥匙软件,若手机没有开启WLAN,就根据软件提示打开WLAN开关;2、打开WLAN开关后,会显示附近的WiFi,如果知道密码,可点击相应WiFi后点击‘输入密码’连接;3、若不...
- 雨林木风音乐叫什么(雨林木风是啥)
-
雨林木风的创始人是陈年鑫先生。陈年鑫先生于1999年创立了雨林木风公司,其初衷是为满足中国市场对高品质、高性能电脑的需求。在陈年鑫先生的领导下,雨林木风以技术创新、产品质量和客户服务为核心价值,不断推...
- aics6序列号永久序列号(aics6破解序列号)
-
关于AICS6这个版本,虽然是比较久远的版本,但是在功能上也是十分全面和强大的,作为一名平面设计师的话,AICS6的现有的功能已经能够应付几乎所有的设计工作了……到底AICC2019的功能是不是...
- 手机可以装电脑系统吗(手机可以装电脑系统吗怎么装)
-
答题公式1:手机可以通过数据线或无线连接的方式给电脑装系统。手机安装系统需要一定的技巧和软件支持,一般需要通过数据线或无线连接的方式与电脑连接,并下载相应的软件和系统文件进行安装。对于大部分手机用户来...
- 一周热门
- 最近发表
- 标签列表
-
- python判断字典是否为空 (50)
- crontab每周一执行 (48)
- aes和des区别 (43)
- bash脚本和shell脚本的区别 (35)
- canvas库 (33)
- dataframe筛选满足条件的行 (35)
- gitlab日志 (33)
- lua xpcall (36)
- blob转json (33)
- python判断是否在列表中 (34)
- python html转pdf (36)
- 安装指定版本npm (37)
- idea搜索jar包内容 (33)
- css鼠标悬停出现隐藏的文字 (34)
- linux nacos启动命令 (33)
- gitlab 日志 (36)
- adb pull (37)
- python判断元素在不在列表里 (34)
- python 字典删除元素 (34)
- vscode切换git分支 (35)
- python bytes转16进制 (35)
- grep前后几行 (34)
- hashmap转list (35)
- c++ 字符串查找 (35)
- mysql刷新权限 (34)
