Matlab_Simulink和EDA仿真工具
MATLAB的仿真工具箱Simulink模型的建立与仿真学习教程优秀PPT课件(基本库原件、搭建
•
Ignore limit and reset when linearizing:若勾选此选项,则表示当系统为线性化系统时,前
面的积分上下线限制和触发事件无效,默认缺省值为不勾选;
•
Enable zero-crossing detection:使系统通过零点检验,默认勾选。
• 搭建Integrator模块如图3-35所示。
•
Pulse Generator其模块属性如图3-19所示。
• 如图3-19所示Pulse Generator模块,对于其属性窗口:
• Amplitude:脉冲信号的振幅,指定为标量或矢量,默认值为1。
• Period(secs):脉冲数字采样周期,默认值为10。
• Pulse width:脉冲宽度,输入为矢量或标量,默认值为5。
• External reset:设置信号的触发事件(rising, falling, either, level, level hold, none),默认设置为 none,保持系统原态。
• Initial condition source:参数输入的状态,分为外部输入external和内部输入internal,通常默认设 置为internal。
3.3.3 Transfer Fcn模块
• Transfer Fcn其模块属性如图3-37所示。
• 如图3-37所示Transfer Fcn模块,对于其属性窗口:
• Numerator coefficients:传递函数分子系数,系统默认值为[1];
• Denominator coefficients:传递函数分母系数,系统默认值为[1,1];
• Derivative模块,表示微分环节,Derivative其模块属性如图3-31所示。 • 如图3-31所示Derivative模块,对于其属性窗口: • 搭建Derivative模块如图3-32所示。
Matlab系列之Simulink仿真教程
交互式仿真
Simulink支持交互式 仿真,用户可以在仿 真运行过程中进行实 时的分析和调试。
可扩展性
Simulink具有开放式 架构,可以与其他 MATLAB工具箱无缝 集成,从而扩展其功 能。
Simulink的应用领域
指数运算模块
用于实现信号的指数运算。
减法器
用于实现两个信号的减法 运算。
除法器
用于实现两个信号的除法 运算。
对数运算模块
用于实现信号的对数运算。
输出模块
模拟输出模块
用于将模拟信号输出 到外部设备或传感器。
数字输出模块
用于将数字信号输出 到外部设备或传感器。
频谱分析仪
用于分析信号的频谱 特性。
波形显示器
控制工程
Simulink在控制工程领域 中应用广泛,可用于设计 和分析各种控制系统。
信号处理
Simulink中的信号处理模 块可用于实现各种信号处 理算法,如滤波器设计、 频谱分析等。
通信系统
Simulink可以用于设计和 仿真通信系统,如调制解 调、信道编码等。
图像处理
Simulink中的图像处理模 块可用于实现各种图像处 理算法,如图像滤波、边 缘检测等。
用于将时域信号转换为频域信号,如傅里叶变换、 拉普拉斯变换等。
03 时域变换模块
用于将频域信号转换为时域信号,如逆傅里叶变 换、逆拉普拉斯变换等。
04
仿真过程设置
仿真时间的设置
仿真起始时间
设置仿真的起始时间,通 常为0秒。
步长模式
选择固定步长或变步长模 式,以满足不同的仿真需 求。
MATLAB的仿真工具箱Simulink常用命令库分析学习教程优秀PPT课件
Simulink模型库包含的模块很庞大,然而充分的利用每一个模块,并且 熟练的了解和掌握每一个模块的属性显得尤为重要,Simulink模型代码 抒写有利于用户更加好的掌握每一个模块的属性和参数值的含义。 Simulink命令代码属于底层代码调试过程,没有直接在Simulink模型库 中搭建模型更加直观,然而Simulink程序代码能够内嵌到很多可视化界 面下,从而简化显示的界面,特别是GUI界面下的调用Simulink仿真, Simulink命令代码表现一定的优势。 学习目标: (1)熟练掌握Simulink命令的表示方法; (2)熟练运用Simulink命令代码建模;
• 具体的find_system使用如下:
• find_system
•
运行程序输出结果如下:
• ans =
•
'ysw4_7'
•
'ysw4_7/Scope'
•
'ysw4_5'
•
'ysw4_5/Integrator'
•
'ysw4_5/Mux'
•
'ysw4_5/Scope'
•
'ysw4_5/Sine Wave'
产生一个常量值;
Digital Clock
在特定的采样间隔产生仿真时间;
Ground
将未连接的输入端口接地等。
(3)连续(Continuous)模块库:包括线性函数模型。包括有微分单元(Derivative)、积分单 元(Integrator)、线性状态空间系统单元(State-Space)、线性传递函数单元(Transfer Fen)、延时单元(Transport Delay)、可变传输延时单元(Variable Transport Delay)、指定 零极点输入函数单元(Zero-Pole)。
第九章 MATLAB simulink仿真软件
Discrete Zero-Pole:以零极点表示 的离散传递函数模型
First-Order Hold:一阶采样和保 持器 Zero-Order Hold:零阶采样和保 持器 Unit Delay:一个采样周期的延时
16
数学运算模块( Math Operations)
数学运算模块(
标注连线:在线上双击鼠标,出现文本编辑框,输入标记文本
线的分支:按住鼠标右键,在需要分支的地方拉出即可以。或者 按住Ctrl键,并在要建立分支的地方用鼠标拉出即可。 删除连线:单击该连线,按delete键即可
保存模型
– 模型创建完成后,从模型编辑窗口的File菜单项中选择Save或Save As命 令,可以将模型以模型文件的格式(扩展名为.mdl)存入磁盘。
修改模型
– 如果要对一个已经存在的模型文件进行编辑修改,需要打开该模型文件
» 在MATLAB命令窗口直接输入模型文件名(不要加扩展名.mdl)。 » 在模块库浏览器窗口或模型编辑窗口的File菜单中选择Open命令,然后选择 或输入欲编辑模型的名字 » 单击模块库浏览器窗口工具栏上的Open a model命令按钮或模型编辑窗口工 具栏上的Open model命令按钮
Math Operations)
Sum:求和运算 Product:乘运算 Dot Product:点乘运算
Gain:比例运算
Math Function:包括指数函数、对数 函数、求平方、开根号等常用数学函数 Trigonometric Function:三角函数, 包括正弦、余弦、正切等 MinMax:最值运算 Abs:取绝对值 Sign:符号函数 Logical Operator:逻辑运算 Relational Operator:关系运算
matlab simulink仿真
③设置模块参数并进行连接各模块组成仿
真系统。双击Fcn模块,打开对话框,在 Expression栏中输入u*log(1+u),如下图 所示。其余模块参数不用设置。 设置模块参数后,用线将各模块连接起来 组成仿真模型,如下图
④设置系统仿真参数。单击模型窗口中的 Simulation菜单中的Simulation Parameters选项,打开仿真参数设置对话 框,选择Solver选项。在Start time和Stop time两个框中分别设置起始为0,停止为1s。 把算法选择中的Type设为Fixed-step,并 在具体算法选择框中选择ode5(DormandPrince),再把Fixed step size设为0.001s。 (固定步长)
Simulink模块库简介
• 在Matlab的命令窗口中键入Simulink或 在Matlab的工具栏中单击 按钮 , 可以打开Simulink的模块库,其界面又 称为模块库浏览器。
模 块 库
信 号 源 模 块 组
Sources
连 续 模 块 组
Continuous
离 散 模 块 组
Discrete
Simulink模型举例
• 例1 设系统的微分方程为:
x1 x 2 t 0 .5 t x2 x2 e
• 试建立系统仿真模型。
• 微分方程中的系统是时间t的函数,t由信号 源模块库(Sources)中的时钟模块(Clock)提 供,用数学运算模块库(Math Operation)中 的数学函数模块(Math Function)产生,再配 合以Sources库中的常数模块(Constant)、 Math Operations库中的乘积模块(Product) 和连续系统模块库(Continuous)中的积分模 块(Integrator)等,就可以建立系统模型。关 于输出可以用输出模块库(Sinks)中的输出端 口模块(Out),也可以用Scope模块等等。
第六章 matlab工具箱与Simulink仿真1
help specmat compan - Companion matrix. gallery - Several small test matrices. hadamard - Hadamard matrix. hankel - Hankel matrix. hilb - Hilbert matrix. invhilb - Inverse Hilbert matrix. magic - Magic square. pascal - Pascal matrix. toeplitz - Toeplitz matrix. vander - Vandermonde matrix.
elmat —— 初等矩阵和时间函数库 funfun —— 函数功能和数学分析函数库 general —— 通用命令函数库 graphics —— 通用图形函数库 iofun —— 底层输入输出函数库 lang —— 语言结构函数库 matfun —— 矩阵线性代数函数库 ops —— 运算符和逻辑函数库 plotxy —— 二维绘图函数库 plotxyz —— 三维绘图函数库
• 非线型方程求解
信号处理工具箱
• 数字和模拟滤波器设计、应用及仿真
• 谱分析和估计 • FFT、DCT等变换 • 参数化模型
学科前沿最新的工具箱
模糊控制逻辑工具箱
友好的交互设计界面,自适应神经模糊学习、聚类以及Sugeno推理 神经网络工具箱 神经网络系统具有集体运算的能力 和自适应的学习能力。具有很强的容错 性和鲁棒性,善于联想、综合和推广。
第六讲 matlab工具箱与Simulink仿真
matlab工具箱已经成为一 个系列产品,matlab主工具箱 和各种工具箱(toolbox )。
一、工具箱简介
MATLABSimulink仿真(最精简)
Format--Foreground Color改模块前景 颜色;
Format--Background Color改模块背景 颜色;
Format-- Screen Color改模型窗口的颜 色。
19
8.3.3 simulink功能模块的处理
8.参数设定:双击模块, 从而对模块进行参 数设定。 9.属性设定:选中模块,Edit--Block Properties
1.将仿真结果信号输入到输出模块
(1)“Scope”示波器
(2)“XY Graph”二维X-Y图形显示器
(3)“Display”数字显示器中,直接查看。
34
6.5 观察Simulink的仿真结果
2.将仿真结果信号输入到“To Workspace”模
块中,再用绘图命令在MATLAB命令窗口里
绘制出图形。
8
8.3.1 SIMULINK的模块库
1. 常用元件模块
9
8.3.1 SIMULINK的模块库
2. 连续模块
10
8.3.1 SIMULINK的模块库
3. 离散模块
11
8.3.1 SIMULINK的模块库
4. 数学模块
12
8.3.1 SIMULINK的模块库
5.输入源模块
13
8.3.2 simulink模型的建立
本章目标
了解Simulink基本模块的性质
掌握系统仿真的方法
1
主要内容
8.1 Simulink与系统仿真
8.2 Simulink的使用 8.3 Simulink的基本模块 8.4 功能模块的处理 8.5 设置仿真参数
8.6 观察Simulink的仿真结果
各种EDA软件对比
关于Cadence
Cadence公司成立于1988年5月,总部位于 美国加州圣荷塞市。Cadence公司的电子设 计自动化产品涵盖了电子设计的整个流程, 包括系统级设计,功能验证,IC综合及布局 布线,模拟、混合信号及射频IC设计,全定 制集成电路设计,IC物理验证,PCB设计和 硬件仿真建模等。1992年进入中国大陆及香 港市场,然后陆续建立了北京、上海、深圳、 香港四个办事处以及北京研发中心、上海研 发中心。
Saber-专业的电源设计软件
Saber在电源设计中的特点: 具有大量的电源专用器件和功率电子器件,
提供高精度的电路仿真模型单元库; 三种方法有效解决变压器模型的设计:器件
模型法、磁路结构模型法、MCT模型法; 提供多种补偿电路解决方案; 顺序使用5种强大算法,有效控制开关电源
Proteus
Proteus软件是英国Labcenter electronics公司 出版的EDA工具软件。从原理图布图、代码 调试到单片机与外围电路协同仿真,一键切 换到PCB设计,真正实现了从概念到产品的 完整设计。是目前世界上唯一将电路仿真软 件、PCB设计软件和虚拟模型仿真软件三合 一的设计平台。
Multisim适合学习模拟数字电路设计 Pspice专业的电路参数分析,以及模拟数字
电路设计 Saber专业的电源设计,模拟数字电路设计 MATLAB很强大,适合各种数值分析、电气
系统分析、数字图像处理
Altium Protel 系列
Protel是PROTEL(现为Altium)公司在1985 年推出的PCB设计软件,从最初的Protel fo DOS,再升级为Protel for Windows,然后在 1998年,推出protel 98,在1999年推出了划 时代的protel 99及其升级版protel 99 se,在 2002年推出protel DXP……此后Altium从定点 软件产品发布向连续流发布方式转移,基本 上每年都有新版本发布,后有发布以Altium Designer+季节命名的版本,最新版本是 2013年4月新发布的Altium Designer 2013。
第7讲 MATLAB仿真SIMULINK
Simulink仿真
7.1 Simulink 1.Simulink Simulink是MATLAB中的一个建立系统方框图和基于 方框图级的系统仿真环境,是一个对动态系统进行建模、 仿真并对仿真结果进行分析的软件包。使用Simulink可以 更加方便地对系统进行可视化建模,并进行基于时间流的 系统级仿真,使得仿真系统建模与工程中的方框图统一起 来。并且仿真结果可以近乎“实时”地通过可视化模块, 如示波器模块、频谱仪模块以及数据输入输出模块等显示 出来,使得系统仿真工作大为方便。
设置仿真起始时间为-2秒,仿真结束时间为10秒, 其余参数为默认值:求解器采用“ ode45” 算法,步长
设定为自适应变步长的,最大步长、最小步长以及初
始步长均设为自动选取,相对求解精度为 1e-3 ,绝对 求解精度自动选取。
图2-13 仿真参数设置对话框
最后,双击示波器模型图标,打开示波器显示窗 口。在显示窗口中单击鼠标右键,通过快捷菜单设置
图2-15 仿真结果
• 更换信号源为Sources子模块库中的SignalGenerator,并设置 信号源为0.2Hz的方波,幅度为1,如图2-16左边对话框所示。 • 设置示波器显示窗口的属性(Parameters),使之成为双踪 显示,然后将示波器第二输入节点与信号源输出相连,这 样我们就可以同时观察系统的输入输出波形了。系统建模
在 Simulink 模 块 库 窗 口 中 单 击 菜 单 项
“File|New|Model”,就可以新建一个Simulink模型文件, 如图2-8所示。
图2-8 Simulink模块库界面和新建模型文件窗口
以二阶系统为例。其输入输出的传递函数为
Uc ( s ) 1 H ( s ) 2 F ( s ) LC RC 1 s s
第22章 Matlab系统级仿真工具Simulink及应用
可访问MATLAB,从而对结果进行分析与可视化,定制建 模环境,定义信号参数和测试数据
模型分析和诊断工具来保证模型的一致性,确定模型中的错 误
2017/9/16
三、 Simulink基础
1. Simulink启动 用命令行方式启动Simulink。即在MATLAB的命令窗口 中直接键入如下命令: >>simulink 使用工具栏按钮启动Simulink,即用鼠标单击MATLAB 工具栏中的Simulink 按钮 均会打开 Simulink Library Browser 在MATLAB的命令窗口中直接键入“Simulink3”,同样 会出现一个用图标形式显示的Library
2017/9/16
Simulink库浏览器
Simulink模块库窗口
2017/9/16
2. Simulink模块库
2017/9/16
上图为Simulink模块库浏览窗口,其中包括下图所示的 左侧基本模块库窗口和上图右侧的扩展模块库窗口
Blockset
Blockset , 即 模 块 库 , 是 MathWorks 公司提供的面向 特定领域的专业模块库,它 是 Simulink 基本功能的扩展 ,极大地方便了用户搭建特 定应用领域的模型 在 MATLAB 命令窗口中直接 输入如下指令 >>dsplib 可与第三方共同开发来扩展 模块库
仿真 仿真是以相似性原理、控制论、信息技术及相关领域的 有关知识为基础,以计算机和各种专用物理设备为工具,借 助系统模型对真实系统进行试验研究的一门综合性技术。它 利用物理或数学方法来建立模型,类比模拟现实过程或者建 立假想系统,以寻求过程的规律,研究系统的动态特性,从 而达到认识和改造实际系统的目的。 物理仿真: 研制某些实体模型,使之重现系统的各种状态 数学仿真: 用数学语言去表述一个系统,并编制程序在计算机上对 实际系统进行研究的过程 对系统进行仿真时,除了模型外还需要仿真算法,仿真软件
simulink_matlab仿真教程
simulink matlab 仿真环境教程Simulink 是面向框图的仿真软件。
演示一个Simulink 的简单程序【例1.1】创建一个正弦信号的仿真模型。
步骤如下:(1) 在MATLAB 的命令窗口运行simulink 命令,或单击工具栏中的图标,就可以打开Simulink 模块库浏览器(Simulink Library Browser) 窗口,如图1.1所示。
(2)单击工具栏上的图标或选择菜单“File ”——“New ”——“Model ”,新建一个名为“untitled ”的空白模型窗口。
(3) 在上图的右侧子模块窗口中,单击“Source ”子模块库前的“+”(或双击Source),或者直接在左侧模块和工具箱栏单击Simulink 下的Source 子模块库,便可看到各种输入源模块。
(4) 用鼠标单击所需要的输入信号源模块“Sine Wave ”(正弦信号),将其拖放到的空白模型窗口“untitled ”,则“Sine Wave ”模块就被添加到untitled 窗口;也可以用鼠标选中“Sine Wave ”模块,单击鼠标右键,在快捷菜单中选择“add to 'untitled'”命令,就可以将“Sine Wave ”模块添加到untitled 窗口,如图1.2所示。
图7.1 Simulink 界面(5) 用同样的方法打开接收模块库“Sinks ”,选择其中的“Scope ”模块(示波器)拖放到“untitled ”窗口中。
(6) 在“untitled ”窗口中,用鼠标指向“Sine Wave ”右侧的输出端,当光标变为十字符时,按住鼠标拖向“Scope ”模块的输入端,松开鼠标按键,就完成了两个模块间的信号线连接,一个简单模型已经建成。
如图1.3所示。
(7) 开始仿真,单击“untitled ”模型窗口中“开始仿真”图标,或者选择菜单“Simulink ”——“Start ”,则仿真开始。
如何利用Matlab进行模拟电路设计和仿真测试
如何利用Matlab进行模拟电路设计和仿真测试引言:在电子技术领域,模拟电路设计及仿真测试起到了至关重要的作用。
Matlab作为一款功能强大的科学计算工具,具有丰富的工具箱和扩展性,能够帮助工程师们完成复杂的电路设计和仿真测试工作。
本文将介绍如何使用Matlab进行模拟电路设计和仿真测试,以及常用的工具箱和技巧。
一、Matlab的基本特点和优势1.1 Matlab的功能和应用领域Matlab是一种基于矩阵和数组的高级数学语言和环境,具有工程计算、数据可视化、算法开发和模拟仿真等多种功能。
在电子技术领域,Matlab可以用于电路设计和仿真测试、信号处理、图像处理等方面的工作。
1.2 Matlab的优势(1)易于学习和使用:Matlab采用了类似于C语言的语法,对于熟悉编程的工程师来说非常容易入手。
(2)强大的数学计算能力:Matlab集成了丰富的数学函数和算法,可以快速处理各类数学计算任务。
(3)丰富的工具箱和扩展性:Matlab提供了各种工具箱,包括Simulink、DSP System Toolbox、RF Toolbox等,可以满足不同领域的需求。
(4)强大的图形和可视化功能:Matlab支持二维和三维图形的绘制,可以帮助工程师更直观地理解和分析数据。
(5)良好的与硬件设备的接口:通过适配器和接口,Matlab可以与硬件设备进行连接,实现数据的实时采集和控制。
二、利用Matlab进行模拟电路设计2.1 电路设计的基本流程在进行模拟电路设计之前,我们需要先明确电路设计的基本流程。
一般而言,电路设计的流程可以分为需求分析、系统规划、电路设计、电路优化和验证等几个阶段。
在Matlab中,我们可以利用其丰富的工具箱和函数来完成这些任务。
2.2 电路设计所需的Matlab工具箱在Matlab中,有几个常用的工具箱适用于电路设计,包括Signal Processing Toolbox(信号处理工具箱)、Control System Toolbox(控制系统工具箱)和Simulink(系统仿真工具箱)。
MATLAB_SIMULINK仿真
第 7 章 S IMULINK 交互式仿真集成环境SIMULINK 是MATLAB 最重要的组件之一,它向用户提供一个动态系统建模、仿真和综合分析的集成环境。
在这环境中,用户无须书写大量的程序,而只需通过简单直观的鼠标操作,选取适当的库模块,就可构造出复杂的仿真模型。
SIMULINK 的主要优点:● 适应面广。
可构造的系统包括:线性、非线性系统;离散、连续及混合系统;单任务、多任务离散事件系统。
● 结构和流程清晰。
它外表以方块图形式呈现,采用分层结构。
既适于自上而下的设计流程,又适于自下而上逆程设计。
● 仿真更为精细。
它提供的许多模块更接近实际,为用户摆脱理想化假设的无奈开辟了途径。
● 模型内码更容易向DSP ,FPGA 等硬件移植。
基于本书定位,为避免内容空泛,本节对于SIMULINK 将不采用横断分层描述,即不对SIKULINK 库、模块、信号线勾画标识等进行分节阐述。
本节将以四个典型算例为准线,纵向描述SIMULINK 的使用要领。
7.1连续时间系统的建模与仿真7.1.1基于微分方程的SIMULINK 建模本节将从微分方程出发,以算例形式详细讲述SIMULINK 模型的创建和运行。
【例7.1-1】在图7.1-1所示的系统中,已知质量1=m kg ,阻尼2=b N.sec/m ,弹簧系数100=k N/m ,且质量块的初始位移05.0)0(=x m ,其初始速度0)0(='x m/sec ,要求创建该系统的SIMULINK 模型,并进行仿真运行。
图7.1-1 弹簧—质量—阻尼系统(1)建立理论数学模型 对于无外力作用的“弹簧—质量—阻尼”系统,据牛顿定律可写出m(7.1)x bx+'=+''kx代入具体数值并整理,可得-2-'=''(7.2)xx100x(2)建模的基本思路(3)图7.1-2(4)开启空白(新建)模型窗(5)图 7.1-3 (6)(7)图 7.1-4 (8)图 7.1-5图 7.1-6图 7.1-7(9)(10)(11)图7.1-8图7.1-9 (12)图7.1-10图7.1-11图7.1-12图7.1-13(13)图7.1-147.1.2 基于传递函数的SIMULINK 建模【例7.1-2】对于图7.1-15所示的多环控制系统,(1)求系统传递函数)()()(s U s Y s G ;(2)求该系统的单位阶跃响应。
将SIMULINK模型转换为RTL描述的EDA工具设计
第三章软件环境和VerilogHDL简介第三章软件环境和VerilogHDL简介3.1软件环境在本课题的设计中主要使用了三种软件工具:MATLAB6.5、ModelSimSE5.8d和1SE6'3。
下面对这三种软件作一个简单的介绍。
3.1.1Mathworks的MATLAB6.5MATLAB产品家族是MathWorks公司开发的用于概念设计,算法开发,建模仿真,实时实现的集成环境。
由于其完整的专业体系和先进的设计开发思路,使得MATLAB在多种领域都有广阔的应用空间,特别是在MATLAB的主要应用方向一科学计算、建模仿真以及信息工程系统的设计开发上已经成为行业内的首选设计工具,全球现有上千万的使用者f4】。
图3-t显示了MATLAB的基本窗口。
图3.1MATLAB基本窗口电子科技大学硕士论文3.1.1.1MATLAB的功能简介在MATLAB产品家族中,MATLAB工具箱是整个体系的基座,它是一个语言编程型(M语言)开发平台,提供了体系中其他工具所需要的集成环境(比如M语言的解释器)。
同时由于MATLAB对矩阵和线性代数的支持使得工具箱本身也具有强大的数学计算能力。
MATLAB产品体系的演化历程中最重要的一个体系变更是引入了SIMULINK,用来对动态系统建模仿真。
其框图化的设计方式和良好的交互性,对工程人员本身计算机操作与编程的熟练程度的要求降到了最低,工程人员可以把更多的精力放到理论和技术的创新上去。
针对控制逻辑的开发,协议栈的仿真等要求,MathWorks公司在SIMULINK平台上还提供了用于描述复杂事件驱动系统的逻辑行为的建模仿真工具一Stateflow,通过Stateflow,用户可以用图形化的方式描述事件驱动系统的逻辑行为,并无缝的结合到SIMULINK的动态系统仿真中。
图3—2展示了MATLAB软件包的层次结构。
图3-2MAⅡAB层次结构在MATLAB/sIMuLINK基本环境之上,MathWorks公司为用户提供了丰富的扩展资源,这就是大量的Toolbox和Blockset。
matlab仿真工具 基本操作
matlab仿真工具基本操作Matlab是一种功能强大的数学仿真工具,它提供了丰富的功能和工具箱,可以用于各种科学计算、数据分析和模型仿真等领域。
本文将介绍Matlab仿真工具的基本操作,帮助读者快速上手使用该工具。
一、Matlab的安装与启动在开始使用Matlab之前,首先需要将其安装在计算机上。
用户可以从MathWorks官方网站下载Matlab的安装程序,并按照安装向导进行操作。
安装完成后,可以通过桌面上的快捷方式或者在命令行中输入"matlab"来启动Matlab。
二、Matlab的界面与基本操作Matlab的界面由多个窗口组成,包括命令窗口、编辑器窗口、工作空间窗口、命令历史窗口等。
用户可以通过菜单栏、工具栏或者命令行来执行各种操作。
1. 命令窗口:用户可以在命令窗口中直接输入Matlab命令,并按下Enter键执行。
Matlab会立即给出相应的结果,并显示在命令窗口中。
2. 编辑器窗口:用户可以在编辑器窗口中编写Matlab脚本文件,以便进行更复杂的操作。
脚本文件可以保存为.m文件,并通过命令窗口中的"run"命令或者点击编辑器窗口中的运行按钮来执行。
3. 工作空间窗口:工作空间窗口显示了当前Matlab工作空间中的变量列表。
用户可以通过命令行或者脚本文件来创建、修改和删除变量,并在工作空间窗口中查看其值和属性。
4. 命令历史窗口:命令历史窗口记录了用户在命令窗口中输入的所有命令,方便用户查找和重复使用。
三、Matlab的数学计算功能Matlab提供了丰富的数学计算函数,可以进行向量和矩阵运算、符号计算、微积分、线性代数、概率统计等操作。
用户可以通过命令行或者脚本文件来调用这些函数,并进行各种数学计算。
1. 向量和矩阵运算:Matlab中可以方便地定义和操作向量和矩阵。
用户可以使用矩阵运算符(如+、-、*、/)对向量和矩阵进行加减乘除等运算,还可以使用内置函数(如transpose、inv、det)进行转置、求逆和求行列式等操作。
第10章--MATLAB-Simulink仿真软件
2021/6/4
21
2.通过已有的模块建立子系统
操作步骤为:
(1) 先选择要建立子系统的模块,不包括输入端口和 输出端口。
(2) 选择模型编辑窗口Edit菜单中的Create Subsystem 命令,这样,子系统就建好了。在这 种情况下,系统会自动把输入模块和输出模块添 加到子系统中,并把原来的模块变为子系统的图 标。
2021/6/4
5
2.Simulink的退出
为了退出Simulink,只要关闭所有模型编辑窗口和 Simulink模块库浏览器窗口即可。
2021/6/4
6
10.2 系统仿真模型
10.2.1 Simulink仿真模型概述
Simulink仿真模型(Model)在视觉上表现为直观的方 框图,在文件上则是扩展名为.mdl的ASCII代码, 在数学上体现了一组微分方程或者是差分方程, 在行为上模拟了物理器件构成的实际系统的动态 特性。
1.模块的参数设置
Simulink中几乎所有模块的参数都允许用户进行设 置,只要双击要设置的模块或在模块上按鼠标右 键并在弹出的快捷菜单中选择相应模块的参数设 置命令就会弹出模块参数对话框。该对话框分为 两部分,上面一部分是模块功能说明,下面一部 分用来进行模块参数设置。
同样,先选择要设置的模块,再在模型编辑窗口 Edit菜单下选择相应模块的参数设置命令也可以 打开模块参数对话框。
2021/6/4
12
例10.1 有系统的微分方程,试建立系统仿真模型。
x1' x2'
x2t x2e 0.5t
操作过程如下:
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
cd D:\MATLAB\toolbox\edalink\extensions\modelsim\modelsim demos\vhdl\modsimrand 该目录下有VHDL文件
MATLAB连接ModelSim流程例
•4
执行ModelSim命令
vlib work 创建工作库 vmap work work 映射工作库到物理目录 vcom modsimrand 选择一个HDL文件进行编译
ModelSim版本
• ModelSim AE
– Altera OEM 版,功能有限,速度较慢。有厂 家仿真库
• ModelSim PE • ModelSim SE
– 专业版, 性能最强。
Altera和ModelSim
• ModelSim 的版本
– ModelSim AE 要有License – ModelSim AE Free 发行速度跟不上SE 版和Quartus 的 速度
– ModelSim SE 不带FPGA/CPLD厂家的仿真库
ModelSim版本
• 如用于Matlab/Simulink协同仿真
• 选用ModelSim 6.1~6.3
• 如选用ModelSim AE
– 可以用 相应ModelSim Se的 License. 例如: 最新版本的ModelSim AE 6.4 可以使用 ModelSim Se 6.4的License
– 验证电路结构是否符合设计要求,估算电路的 门延迟, 不考虑布线的延迟
• 布局布线后仿真(时序仿真)
– 验证是否存在时序违规。电路已经映射到具体 的工艺环境,综合考虑电路的门延迟和路径延 迟
ModelSim仿真
• • • • 设置断点 单步运行 查看当前信号值 从仿真波形回溯源代码
ModelSim的安装
MATLAB连接ModelSim流程例
• 8 重新仿真
ModelSim: restart 重复步骤7, 输入激励信号,运行仿真。
MATLAB连接ModelSim流程例
• 9 结束仿真
– ModelSim
quit 退出仿真 quit 结束ModelSim
– Matlab
hdldaemon(‘kill’) 关闭连接
1. hdldaemon('socket',端口号)
in TCP/IP socket mode端口号,0表示由系 统分配可用端口
或 2 Hdldaemon
in shared memory mode
MATLAB连接ModelSim流程例
• 2 从MATLAB环境启动ModelSim vsim 或 vsim('vsimdir','D:\Modeltech_6.1f\win32\')
Simulink Link ModelSim
Simulink 连接 HDL 仿真器
Simulink 与HDL仿真器协同仿真流程
1. ModelSim
– 建库 – 编译
2. Simulink
– 建模 – 使用/配置协同仿真模块
• Matlab
– 建立连接
3. ModelSim
– 加载仿真器
4. Simulink
时钟周期=10ns
总的仿真时 间=50us
时间比例设置-真实时间
10e-9=10ns
真实时间仿真 例 真实时间 例
50000 ns = 50us = 50x10-6 s, 其中有5000个clock
配置协同仿真模块—脚本命令
例1-modsimrand-建模
例1-modsimrand-模块端口
Altera的仿真库
• 仿真库
– IP Core 仿真库
• 如果设计中包含了MegaWizard 生成的IP Core 或 直接调用了LPM, 则必须制定Altera 仿真库
– 器件族仿真库
Altera仿真库
为ModelSim SE添加Altera的仿真库三种方法
1. 从ModelSim AE版中复制Altera的仿真库 – 1安装ModelSim AE版 – 2在ModelSim AE的安装目录下的Altera目录 就是所要的仿真库
ModelSim exe具体安装路径
MATLAB连接ModelSim流程例
• 3 设置MATLAB当前目录
例
cd D:\MATLAB\toolbox\edalink\extensions\modelsim\modelsim demos 该目录下有modsimrand_plot.m文件
• 设置MODELSIM当前目录
1. 运行setup,安装程序。选择“Full product”选项 。当询问security key的时候,选择 NO。 当看 见“ License Wizard”对话框时候,选择“close” 。 2. 运行keygen,生成license.dat, 把它拷贝到新建的 c:\flexlm 目录中。 3. 设置环境变量: LM_LICENSE_FILE = c:\flexlm\license.dat (选择“我的电脑” 按右键 ,选“属性”,再选“高级”,可以看到环境变 量按钮) 4. 运行ModelSim,OK
matlabtb modsimrand mfunc modsimrand_plot -rising /modsimrand/clk -socket portnum
仿真
仿真结果可视化
用ModelSim 仿真例
仿真数据来自ModelSim, 由Matlab绘图
MATLAB连接ModelSim流程例 1. 建立连接通道 MATLAB
Matlab/Simulink 和EDA仿真工具
ModelSim
Links
Cadence HDL simulator Incisive Mentor Graphics Simulators ModelSim
仿真
• 功能仿真(前仿真)
– 验证电路功能是否符合设计要求,不考虑电路 的门延迟
• 综合后仿真
– 运行仿真
使用Simulink 协同仿真模块
Simulink 建模
配置协同仿真模块--端口设置
端口名称与ModelSim 信号命名相同,删除不 合适的端口 对输出端口设采样时间
配置协同仿真模块--端口设置
• 自动填入端口信息:
– 在modelsim中关联:vsimulink 实体名 – 在simulink 协同仿真模块中删除已有端口,点 击 Auto Fill – 删除不必要的端口,如clk(clk信息应在clocks 选项卡中设置)
1. 建立库
vlib <库名> 缺省值是 work工作库
2. 映射库到物理目录
vmap <logical_name> <directory_path> 例 vmap work work
3. 编译源代码
vcom <file1>.vhd <file2>.vhd vlog <file1>.v <file2>.v
Altera仿真库
2 从Altera 官方网站下载预编译的仿真库
/support/software/do wnload/eda_software/modelsim/msmindex.jsp
Altera仿真库-从Quartus 中提取
3. 从Quartus 中提取
force /modsimrand/clk 0 0 ns, 1 5 ns -repeat 10 ns force /modsimrand/clk_en 1 force /modsimrand/reset 1 0, 0 50 ns run 80000
MATLAB连接ModelSim流程例
在ModelSim仿真过程中, MATLAB 绘 制输出信号
Altera仿真库-从Quartus 中提取
• 还可以再编译其他器件系列的库 • 修改ModelSim 安装目录下的 ModelSim.ini文件只读属性为可写,以便 记录仿真库的路径及映射关系
ModelSim用户界面
库文件视图
命令控制台
ModelSim> 设计加 载前的提示符
VSIM> 设计加载后 的提示符
MATLAB连接ModelSim流程例
• 5关联HDL设计与MATLAB函数 ,执行ModelSim
命令
vsimmatlab xxx xxx为设计名 例 vsimmatlab modsimrand
• 6加载仿真器,执行vsim命令
matlabtb xxx -mfunc yyy -rising zzz -socket 端口号 xxx为实例名, yyy为m函数名, zzz为时钟激励信号
例1-modsimrand-模块时钟端口
例1-modsimrand-模块时钟比例
例1-modsimrand-模块连接
例1-modsimrand-模块脚本
求解器设置
例1-modsimrand-modelsim命令
设置工作目录、建库、编译等按 常规执行. 启动仿真器: vsimulink work.modsimrand
add wave sim:/modsimrand/*
例1-modsimrand-HDL仿真
例1-modsimrand-simulink仿真
例2-Simulink 建模
Simulink ModelSim 协同仿真流程
1. Matlab 启动Link
– Hdldaemon 或 – hdldaemon(‘socket’, 端口号)
Matlab/Simulink ModelSim仿真
Matlab Link ModelSim
MATLAB 连接HDL仿真器
MATLAB 连接HDL仿真器