电力电子技术的Matlab仿真
电力电子技术的Matlab仿真
电力电子技术的Matlab仿真
提纲 Matlab 概述 Simulink 仿真基础
- Simulink 简介 - Simulink 仿真步骤 电力电子电路的仿真
电力电子技术的Matlab仿真
1 Matlab 概述一、MATLAB的发展及特点MATLAB是由美国的Clever Moler博士于1980年开发的, 初衷是为解决“线性代数”课程的矩阵运算问题。 后来又被MathWorks公司商业化,用于算法开发、数据 分析及数值计算等,主要包括MATLAB和Simulink两部分。
MATLAB是Matrix Laboratory 的简称,发展迅速。目 前,MATLAB 已经成为国际上最流行的科学与工程计算的软 件工具,现在的 MATLAB 已经不仅仅是一个“矩阵实验室” 了,它已经成为了一种具有广泛应用前景的全新的计算机高 级编程语言,有人称它为“第四代”计算机语言,它在国内 外高校和研究部门正扮演着重要的角色。
电力电子技术的Matlab仿真
特点 它将一个优秀软件的易用性与可靠性、通用性与专业性 有机
的相结合。 它是一种直译式的高级语言,基本单位是矩阵,比其它程序 设计语言容易。 MATLAB已经不仅是一个“矩阵实验室”了,它集科学计 算、图象处理、声音处理于一身,并提供了丰富的Windows 图形界面设计方法 MATLAB吸收了其他软件的优点,是功能强大的计算机高 级语言, 它以超群的风格与性能风靡全世界, 成功地应用于 各工程学科的研究领域
电力电子技术的Matlab仿真
主要应用领域 工业研究与开发 数学教学,特别是线性代数
数值分析和科学计算方面的教学与研究 电子学、控制理论和物理学等工程和科学学科方面的 教学与研究 经济学、化学和生物学等计算问题的所有其他领域中 的教学与研究 图像处理和信号检测等方面
电力电子技术的Matlab仿真
二、MATLAB语言的功能1 矩阵运算功能MATLAB提供了丰富的矩阵运算处理功能,是基于矩阵运算 的处理工具。
2 符号运算功能
3 丰富的绘图功能与计算结果的可视化具有高层绘图功能——二维、三维绘图; 具有底层绘图功能——句柄绘图; 使用plot函数可随时将计算结果可视化,图形可修饰和控制
4 图形化程序编制功能动态系统进行建模、仿真和分析的软件包 用结构图编程,而不用程序编程 只需拖几个方块、连几条线,即可实现编程功能
电力电子技术的Matlab仿真
5 丰富的MATLAB工具箱
MATLAB主工具箱 符号数学工具箱 SIMULINK仿真工具箱 控制系统工具箱 信号处理工具箱 图象处理工具箱 通讯工具箱 系统辨识工具箱 神经元网络工具箱 金融工具箱
许多学科,在 MATLAB中都有专 用工具箱
,现已有 几十个工具箱,但 MATLAB语言的扩 展开发还远远没有 结束,各学科的相 互促进,将使得 MATLAB更加强大
电力电子技术的Matlab仿真
6 MATLAB的兼容功能可与C/C++、JAVA、FORTURE等语言跨平台兼容
7 MATLAB的容错功能非法操作时给出提示,并不影响其操作
8 MATLAB的开放式可扩充结构matlab 除内部函数外,都是开放的 用户可按自己意愿随意更改 正因为此功能,使得matlab的应用越来越广泛
9 强大的联机检索帮助系统可随时检索matlab函数 可随时查询matlab函数的使用方法
电力电子技术的Matlab仿真
三、MATLAB集成环境Simulink
帮助按钮
命令窗口 命令输入区域
当前目录浏览
工作空间
历史命令窗口
电力电子技术的Matlab仿真
2 Simulink 仿真基础 SIMULINK是MATLAB软件的扩展,它是实现动态系统 建模和仿真的一个软件包,它与MATLAB语言的主要区别 在于,其与用户交互接口是基于Windows的模型化图形输 入,其结果是使得用户可以把更多的精力投入到系统模型 的构建,而非语言的编程上。 所谓模型化图形输入是指SIMULINK提供了一些按功能 分类的基本的系统模块,用户只需要知道这些模块的输入 输出及模块的功能,而不必考察模块内部是如何实现的, 通过对这些基本模块的调用,再将它们连接起来就可以构 成所需要的系统模型(以.mdl文件进行存取),进而进行 仿真与分析。
电力电子技术的Matlab仿真
2.1 Simulink简介通过演示一个Simulink的简单模型,了解建立模型的步骤. 【例1】创建一个正弦信号的仿真模型。
(1) 在MATLAB的命令窗口运行simulink命令,或单击工 具栏中的图标,就可以打开Simulink模块库浏览器 (Simulink Library Browser) 窗口。 (2) 单击工具栏上的图标或选择菜单“File”——“New”— —“Model”,新建一个名为“untitled”的空白模型窗口。 (3) 在上图的右侧子模块窗口中,单击“Source”子模块库 前的“+”(或双击Source),或者直接在左侧模块和工具箱 栏单击Simulink下的Source子模块库,便可看到各种输入 源模块。
电力电子技术的Matlab仿真
(4) 用鼠标单击所需要的输入信号源模块“Sine Wave”(正 弦信号),将其拖放到的空白模型窗口“untitled”,则 “Sine Wave”模块就被添加到untitled窗口;也可以用鼠 标选中“Sine Wave”模块,单击鼠标右键,在快捷菜单中 选择“add to 'untitled'”命令,就可以将“Sine Wave”模 块添加到untitled窗口. (5) 用同样的方法打开接收模块库“Sinks”,选择其中的 “Scope”模块(示波器)拖放到“untitled”窗口中。(6) 在“untitled”窗口中,用鼠标指向“Sine Wave”右侧 的输出端,当光标变为十字符时,按住鼠标拖向
“Scope” 模块的输入端,松开鼠标按键,就完成了两个模块间的信 号线连接,一个简单模型已经建成。
电力电子技术的Matlab仿真
(7) 开始仿真,单击“untitled”模型窗口中“开始仿真” 图标,或者选择菜单“Simulink”——“Start”,则仿真 开始。双击“Scope”模块出现示波器显示屏,可以看到 黄色的正弦波形。 (8) 保存模型,单击工具栏的图标。
Simulink模型窗口
示波器窗口
电力电子技术的Matlab仿真
一、SIMULINK的启动(三种方法) 二、SIMULINK的模块库介绍SIMILINK模块库按功能分14类子库: Continuous(连续模块库) Discontinuities (非线性模块库) Discrete(离散模块库) Logic and Bit Operations(逻辑与位操作模块) Lookup Tables (查询表模块库) Math Operations (数学运算模块库) Model Verification(模型验证模块库) Model-wide utilities (模块实用模块库) Ports & Subsystems (端口和子系统模块库) Signal Attributes(信号属性模块库) Signal Routing(信号路由模块库) Sinks(接收器模块库) Sources(输入源模块库) User-defined functions(用户自定义模块库)
电力电子技术的Matlab仿真
SimpowerSystems模型库Extra Library (其他模块库)
Application Libraries(应用)Electrical Sources(电源) Elements(元器件) Machines (电机模块库) Measurements(测量仪器) Power Electronics(电力电子 元件)
电力电子技术的Matlab仿真
三、Simulink模块的基本操作1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 模块的提取 模块的移动、放大和缩小 模块的复制和粘贴 模块的删除和恢复 模块的转向 模块名的修改和移动 模块颜色的改变 模块的参数设置 模块的属性设定 模块的连接 连线的弯折、移动和删除 批处理方法
电力电子技术的Matlab仿真
2.2 Simulink仿真步骤1 构建仿真模型 2 设置模块参数
3 设置仿真参数4 启动仿真 5 观测仿真结果
电力电子技术的Matlab仿真
仿真参数设置对话框
电力电子技术的Matlab仿真
Solver页机仿真中对时间的一种表示,比如10秒的仿真时间,如果采样步长定 为0.1,则需要执行100步,若把步长减小,则采样点数增加,那么实际 的执行时间就会增加。一般仿真开始时间设为0,而结束时间视不同的 因素而选择。总的说来,执行一次仿真要耗费的时间依赖于很多因素, 包括模型的复杂程度、解法器及其步长的选择、计算机时钟的速度等 等。
1) 仿真时间:注意这里的时间概念与真实的时间并不一样,只是计算
2) 仿真步长模式:用户在Type后面的第一个下拉选项框中指定仿真的步长选取方式,可供选择的有Variable-step(变步长)和Fixed-step (固定步长)方式。变步长模式可以在仿真的
过程中改变步长,提供 误差控制和过零检测。固定步长模式在仿真过程中提供固定的步长, 不提供误差控制和过零检测。用户还可以在第二个下拉选项框中选择 对应模式下仿真所采用的算法。
电力电子技术的Matlab仿真
3)a)
步长参数:对于变步长模式,用户可以设置最大的和推荐的初始步长参数,缺省情况下,步长自动地确定,它由值auto表示。 Maximum step size(最大步长参数):它决定了解法器能够使用的 最大时间步长,它的缺省值为“仿真时间/50”,即整个仿真过程中至 少取50个取样点,但这样的取法对于仿真时间较长的系统则可能带来 取样点过于稀疏,而使仿真结果失真。一般建议对于仿真时间不超过 15s的采用默认值即可,对于超过15s的每秒至少保证5个采样点,对 于超过100s的,每秒至少保证3个采样点。 Initial step size(初始步长参数):一般建议用“auto”默认值即可。
b)
4)a) b)
仿真精度的定义(对于变步长模式)Relative tolerance(相对误差):它是指误差相对于状态的值,是一 个百分比,缺省值为1e-3,表示状态的计算值要精确到0.1%。 Absolute tolerance(绝对误差):表示误差值的门限,或者是说在状 态值为零的情况下,可以接受的误差。如果它被设成了auto,那么 simulink为每一个状态设置初始绝对误差为1e-6。
电力电子技术的Matlab仿真
2.3 其他一、示波器的使用Y轴放大 打开参数对话框 区域放大 X轴放大
自动尺寸 (复原)
恢复保存过 的坐标设置
浮动示波器把当前的坐 标设置保存
示波器窗口