当前位置:文档之家› SIMULINK模块介绍

SIMULINK模块介绍

SIMULINK模块介绍
SIMULINK模块介绍

实验五SIMULINK仿真

一、实验目的

SIMULINK是一个对动态系统(包括连续系统、离散系统和混合系统)进行建模、仿真和综合分析的集成软件包,是MA TLAB的一个附加组件,其特点是模块化操作、易学易用,而且能够使用MATLAB提供的丰富的仿真资源。在SIMULINK环境中,用户不仅可以观察现实世界中非线性因素和各种随机因素对系统行为的影响,而且也可以在仿真进程中改变感兴趣的参数,实时地观察系统行为的变化。因此SIMULINK已然成为目前控制工程界的通用软件,而且在许多其他的领域,如通信、信号处理、DSP、电力、金融、生物系统等,也获得重要应用。对于信息类专业的学生来说,无论是学习专业课程或者相关课程设计还是在今后的工作中,掌握SIMULINK,就等于是有了一把利器。

本次实验的目的就是通过上机训练,掌握利用SIMULINK对一些工程技术问题(例如数字电路)进行建模、仿真和分析的基本方法。

二、实验预备知识

1. SIMULINK快速入门

在工程实际中,控制系统的结构往往很复杂,如果不借助专用的系统建模软件,则很难准确地把一个控制系统的复杂模型输入计算机,对其进行进一步的分析与仿真。1990年,Math Works软件公司为MATLAB提供了新的控制系统模型图输入与仿真工具,并命名为SIMULAB,该工具很快就在控制工程界获得了广泛的认可,使得仿真软件进入了模型化图形组态阶段。但因其名字与当时比较著名的软件SIMULA类似,所以1992年正式将该软件更名为SIMULINK。SIMULINK的出现,给控制系统分析与设计带来了福音。顾名思义,该软件的名称表明了该系统的两个主要功能:Simu(仿真)和Link(连接),即该软件可以利用系统提供的各种功能模块并通过信号线连接各个模块从而创建出所需要的控制系统模型,然后利用SIMULINK提供的功能来对系统进行仿真和分析。

?SIMULINK的启动

首先启动MATLAB,然后在MA TLAB主界面中单击上面的Simulink按钮或在命令窗口中输入simulink命令。命令执行之后将弹出simulink的模块库浏览器,如图1所示。

?SIMULINK的模块库

Simulink的模块库有两部分组成:基本模块和各种应用工具箱。

?系统提供的应用工具箱有:

Communications Blockset(通信模块集)Control System Toolbox(控制系统工具箱)Dials & Gauges Blockset(面板和仪表模块集)DSP Blockset(数字信号处理模块集)

Fixed-Point Blockset

(定点模块集)

Fuzzy Logic Toolbox

(模糊逻辑工具箱)

NCD Blockset

(非线性控制设计模块集)

Neural Network Blockset

(神经网络模块集)

RF Blockset

(射频模块集)

Power System Blockset

(电力系统模块集)

Real-Time Windows Target

(实时窗口目标库)

Real-Time Workshop

(实时工作空间库)

Stateflow(状态流程库)

Simulink Extras

(Simulink附加库)

System ID Blockset(系统辨识模块集)

Simulink的基本模块按功能进行分类,包括以下8类子库:

Continuous(连续系统模块)

Discrete(离散系统模块)

Function & Tables(函数和平台模块)

Math(数学运算模块)

Nonlinear(非线性模块)

Signals&Systems(信号和系统模块)

Sinks(接收器模块)

Sources(输入源模块)

下面列出一些基本模块的功能说明,以供实际使用时查询。

表1:连续系统模块(Continuous)功能

模块名功能简介模块名功能简介Integrator 输入信号积分Derivative 输入信号微分

State-Space 线性状态空间系统模

型Transport Delay 输入信号延时一个固

定时间再输出

Transfer-Fcn 线性传递函数模型Variable Transport

Delay 输入信号延时一个可变时间再输出

Zero-Pole 以零极点表示的传递

函数模型

基本的

simulink

模块

块各领域

内的工

具箱

图1:Simulink模块库

表2:离散系统模块(Discrete)功能

模块名功能简介模块名功能简介Discrete-time

Integrator

离散时间积分器Discrete Filter IIR与FIR滤波器

Discrete State-Space 离散状态空间系统模

型Discrete Zero-Pole 以零极点表示的离散

传递函数模型

Discrete Transfer-Fcn 离散传递函数模型Zero-Order Hold 零阶采样和保持器First-Order Hold 一阶采样和保持器Unit Delay 一个采样周期的延时

表3:函数和平台模块(Function & Tables)功能

模块名功能简介模块名功能简介

Fcn 用自定义的函数(表达

式)进行运算MATLAB Fcn 利用matlab的现有函

数进行运算

S-Function 调用自编的S函数的程

序进行运算Look-Up Table 建立输入信号的查询

表(线性峰值匹配)

Look-Up Table(2-D) 建立两个输入信号的查

询表(线性峰值匹配)

表4:数学运算模块(Math)功能

模块名功能简介模块名功能简介Sum 加减运算Product 乘运算Dot Product 点乘运算Gain 增益模块

Math Function 包括指数函数、对数函

数、求平方、开根号等常

用数学函数Trigonometric

Function

三角函数,包括正弦、

余弦、正切等

MinMax 最值运算Abs 取绝对值Sign 符号函数Logical Operator 逻辑运算

Real-Imag to Complex 由实部和虚部输入合成

复数输出

Complex to

Magnitude-Angle

由复数输入转为幅值

和相角输出

Magnitude-Angle to Complex 由幅值和相角输入合成

复数输出

Complex to

Real-Imag

由复数输入转为实部

和虚部输出

Relational Operator 关系运算

表5:非线性模块(Nonlinear)功能

模块名功能简介模块名功能简介

Saturation 饱和输出,让输出超过某

一值时能够饱和Relay 滞环比较器,限制输出

值在某一范围内变化

Switch 开关选择,依据第二输入

端的值,选择输出第一或

第三输入端的值

Manual Switch 手动选择开关

表6:信号和系统模块(Signal & Systems)功能

模块名功能简介模块名功能简介In1 输入端Out1 输出端

Mux 将多个单一输入转化为

一个复合输出Demux 将一个复合输入转化

为多个单一输出

Ground 给未连接的输入端接地,

输出0 Terminator 连接到没有连接的输

出端,终止输出

SubSystem 空的子系统Enable 使能子系统

表7:接收器模块(Sinks)功能

模块名功能简介模块名功能简介

Scope 示波器XY Graph 显示二维图形

To Workspace 输出到MA TLAB的工作

空间

To File(.mat) 输出到数据文件Display 实时的数值显示Stop Simulation 输入非0时停止仿真表8:输入源模块(Sources)功能

模块名功能简介模块名功能简介

Constant 常数信号Clock 时钟信号

From Workspace 输入信号来自MATLAB

的工作空间From File(.mat) 输入信号来自数据文

Signal Generator 信号发生器,可以产生正

弦、方波、锯齿波及随意

波Repeating

Sequence

重复信号

Pulse Generator 脉冲发生器Sine Wave 正弦波信号

Step 阶跃波信号

注:在simulnk模块库浏览器的help菜单系统中可查询以上各模块的详细功能和使用说明。

通常,用户创建的Simulink模型包含下列三部分“组件”:

●输入信号源(Sources):可以是常数、时钟、白噪声、正弦波、阶梯波、扫频信号、

脉冲生成器、随机数产生器等信号源或者是用户自定义的信号;

●系统(System):即被模拟系统的SIMULINK 方框图;系统模块作为中心模块是

Simulink仿真建模所要解决的主要部分。

●接收器(即输出、显示部分Sink):可以是示波器、图形记录仪(XY Graph)等。

当然对于具体的SIMULINK 模型而,不一定完全地包含这三大组件。例如:研究初始条件对系统影响就不必包含信号源组件。

?创建SIMULINK模型

在simulink中创建系统模型的步骤:

源模块系统模块输出显示模块

① 新建一个空白的模型窗口(只有在模型窗口中才能创建用户自己的系统模型)。方式是:

依次单击simulink 模块库浏览器的“File ”菜单→New →Model ,将弹出一个如图2所示的模型窗口。

② 在simulink 模块库浏览器中,将创建系统模型所需要的功能模块用鼠标拖放到新建的模

型窗口中,如图2所示。

③ 将各个模块用信号线连接,设置仿真参数,保存所创建的模型(后缀名.mdl )。 ④ 点击模型窗口中的

按钮,运行仿真。

例1:已知某振动系统的振动速度()sin()x

t t = ,初始条件x (0)=0,利用simulink 仿真该系统的振动位移。

分析:要计算振动位移必须解上述微分方程,因此需要一个积分模块(Integrator ),被积函数是sin(t),因此需要一个正弦波输入源模块(Sine Wave),积分器的输出(i.e.振动位移x (t ))用示波器观察,因此需要一个显示输出模块Scope 。所用各模块如下所示:

Sine Wave

Scope

1

s

Integrator

步骤1:如上所述新建模型窗口;

步骤2:从源模块库(Sources )中用鼠标拖放一个正弦波模块(Sine Wave )至模型窗口中,然后从连续模块库(Continuous )中拖放一个积分模块(Integrator ),再从输出显示模块库(Sinks )拖放一个示波器模块(Scope )。

步骤3:将各模块的输入、输出用信号线按如下所示依次连接(连接方法:将鼠标移动到模块的输出端,此时鼠标箭头成十字形,按住左键,移动鼠标到另一个模块的输入端,当出现两个十字形光标重影时,释放左键完成信号线的连接),然后保存模型。

Sine Wave

Scope

1

s

Integrator

步骤4:运行仿真,然后双击示波器模块,可观察到仿真结果如图3所示。

图2: 新建模型窗口

图3:振动位移的仿真结果

2. Simulink功能模块的处理与修饰

下面介绍对模块的一些基本操作,包括模块的移动、复制、删除、转向、改变大小、模块命名、颜色设定、参数设定等。操作模块前要先选定模块,鼠标左键点击模块即选中,此时模块四角出现4个黑色标记,若要同时选中多个模块,则按住Shift键,同时点击想要选中的模块即可。

?模块的移动

选中模块,按住鼠标左键将其拖曳到所需的位置即可。若要脱离信号线而移动,可按住shift键,再进行拖曳。

?模块的复制

方法1:选中模块,然后按住鼠标右键进行拖曳即可复制同样的一个功能模块/按住ctrl 键。

方法2:选中模块,Ctrl+C复制,Ctrl+V粘贴;

?模块的删除

选中模块,按Delete键即可。若要删除多个模块,可以同时按住Shift键,再用鼠标选中多个模块,按Delete键即可。也可以用鼠标选取某区域,再按Delete键就可以把该区域中的所有模块和线等全部删除。

?模块的旋转

为了能够顺序连接功能模块的输入和输出端,功能模块有时需要转向。选中模块,在菜单Format中选择Flip Block旋转180度,选择Rotate Block顺时针旋转90度。

?调整模块的大小

选中模块,对模块四角出现的4个黑色标记进行拖曳即可。

?模块的命名

先用鼠标在需要更改的名称上单击一下,然后直接更改即可。名称在功能模块上的位置也可以变换180度,可以用Format菜单中的Flip Name来实现,也可以直接通过鼠标进行拖曳。Hide Name可以隐藏模块名称。

?设定模块的颜色

Format菜单中的Foreground Color可以改变模块的前景颜色,Background Color可以改变模块的背景颜色;而模型窗口的颜色可以通过Screen Color来改变。

?设定模块参数

用鼠标双击模块,就可以进入模块的参数设定窗口,从而对模块进行参数设定。参数设定窗口包含了该模块的基本功能帮助,为获得更详尽的帮助,可以点击其上的help按钮。通过对模块的参数设定,就可以获得需要的功能模块。

3. 信号线的处理与修饰

信号线也即功能模块之间的连接线。对simulink信号线的操作包括绘制信号线、移动线段、移动节点、删除信号线、信号线分支、设定信号线的标签。

?绘制信号线

由模块的输出端口拖曳鼠标到另一模块的输入端口,或拖曳鼠标由输入端口到输出端口,如下图所示。拖动模块还可以调整所绘信号线的弯折状态。

?移动线段

若想移动信号线的某段,单击选中此段。移动鼠标到目标线段上,则鼠标的形状变为移动图标。按住鼠标,并拖曳到新位置。放开鼠标,则信号线被移动到新的位置。

?移动节点

单击选中某个节点,如图。按住鼠标左键拖曳节点到新位置,然后释放鼠标,则可将节点移动到新的位置。

?删除信号线

同删除模块一样,删除信号线可以选中信号线,然后按Delete 键,或者利用菜单【Edit/Clear】或【Edit/Cut】选项进行删除。

?设定信号线的标签

每段信号线都可以有一个标签。双击要标注的信号线,则信号线的附近就会出现一个编辑区,在编辑区内输入标签的内容即可,如左下图所示。

?给信号线加分支

若要给信号线加分支,只需将鼠标移动

到分支的起点位置,按住Ctrl 键+鼠标左键,拖动到目标模块的输入端,释放鼠标和Ctrl

键即可,如右上图所示。

4. 设置仿真参数(选读)

【说明:该部分属本次实验的进阶内容,如因时间关系可跳过不看。在一般情况下,如无特殊要求,仿真参数无需特别设置,使用系统默认值即可。】

设置模型的仿真参数是Simulink仿真重要的一环。通常在完成建模之后就可以对模型进行动态仿真了,但是在仿真前必须对模型的仿真参数进行相关的设置才能保证仿真的有效性。在模型窗口中依次点击顶层菜单Simulation Configuration Parameters,弹出设置仿真参数的对话框如下:

仿真参数设置对话框主要包含以下五个选项卡:

①解法设置(Solver)

它允许用户设置仿真的开始和结束时间,选择解法器,说明解法器参数及选择一些输出选项。

②数据的输入/输出(Data Import/Export)

它允许用户从MATLAB的工作空间(Workspace)输入模型所需参数或将运行结果输出到工作空间。

③优化选项(Optimization)

主要是对仿真性能进行优化设置。

④诊断项(Diagnostics)

允许用户选择Simulink在仿真中显示的警告信息的等级。

⑤实时工具对话框诊断项(Real-Time Workshop)

主要用于与C语言编辑器的交换,通过它可以直接从SIMULINK模型生成代码并且自动建立可以在不同环境下运行的程序,这些环境包括实时系统和单机仿真。

一般情况下,主要使用前面2个选项卡,因此下面主要介绍1、2两个选项卡的参数设置:?解法器(Solver)选项卡的参数设置

?仿真时间(Simulation time)

Start time和Stop time设置仿真的起始和停止时间,单位是秒。注意这里的时间概念与真实的时间并不一样,因为实际的运行时间和计算机的性能、模型的复杂程度、解法、步长、误差要求等等因素有关。

?解法器(Solver)选择

一般情况下,被模拟系统的工作过程都可以由一组微分方程来描述,因此用于系统动态仿真的解法器和求解微分方程组的解法器相同。这些解法器分为两种:

变步长模式解法器:ode45,ode23,ode113,ode15s,ode23s,ode23t,ode23tb和discrete。除discrete方法外,其他的解法在实验二中有介绍。Discrete方法使用于模型中没有连续状态的情况,这时系统会自动选择这种方法。系统默认的变步长解法器是ode45。

固定步长模式解法器:ode5,ode4,ode3,ode2,ode1和discrete。

ode5:系统默认的定步长解法器,是ode45的固定步长版本,适用于大多数连续,不适用于刚性系统。

ode4:四阶龙格-库塔法,具有一定的计算精度。

ode3:固定步长的ode23解法。

ode2:改进的欧拉法。

ode1:欧拉法。

discrete:是一个实现积分的固定步长解法器,它适合于离散无连续状态的系统。

?仿真步长选择

Type选项中指定仿真的步长选取方式,可供选择的有Variable-step(变步长)和Fixed-step (固定步长)方式。变步长模式可以在仿真的过程中改变步长,提供误差控制和过零检测。固定步长模式在仿真过程中提供固定的步长,不提供误差控制和过零检测。

?步长参数

对于变步长模式,用户可以设置最大的和推荐的初始步长参数,缺省情况下,步长自动地确定,它由值auto表示。

(a) Maximum step size(最大步长参数):它决定了解法器能够使用的最大时间步长,它的缺省值为“仿真时间/50”,即整个仿真过程中至少取50个取样点,但这样的取法对于仿真时间较长的系统则可能带来取样点过于稀疏,而使仿真结果失真。一般建议对于仿真时间不超过15s的采用默认值即可,对于超过15s的每秒至少保证5个采样点,对于超过100s的,每秒至少保证3个采样点。

(b) Initial step size(初始步长参数):一般建议使用“auto”默认值即可。

?仿真精度(对于变步长模式)

(a) Relative tolerance(相对误差):它是指误差相对于状态的值,是一个百分比,缺省值为

1e-3,表示状态的计算值要精确到0.1%。

(b) Absolute tolerance (绝对误差):表示误差值的门限,或者是说在状态值为零的情况下,

可以接受的误差。如果它被设成了auto ,那么simulink 为每一个状态设置初始绝对误差为1e-6。 ? 数据的输入/输出(Data Import/Export )选项卡的参数设置

此页主要用来设置SIMULINK 与MATLAB 工作空间交换信息的有关选项,通过此页的设置可以从MA TLAB 的工作空间(Workspace)获取模型所需参数或将SIMULINK 运行结果输出到工作空间。它包含三项(如图):

① 从MATLAB 工作空间获得系统输入(Load from workspace ) ② 仿真结果输出到MATLAB 的工作空间(Save to workspace ) ③ 存储选项(Save option )

? 从MATLAB 工作空间加载(Load from workspace )

虽然Simulink 提供了多种系统输入信号,但并不能完全满足需要。Simulink 允许使用用户自定义的信号作为系统输入信号。在Load from workspace 框中,用户可以设置MA TLAB 中的变量作为系统输入信号或系统状态初值,如下所述:

(1)Input :用来设置系统输入信号,其格式为[t, u],其中t 、u 均为列向量,t 为输入信号的时间向量,u 为相应时刻的信号取值。可以使用多个信号输入,如[t, u1, u2]。输入信号与Simulink 的接口由Inport 模块(In1模块)实现。例如:

2

Out2

1Out1

Scope

1s Integrator1

1

s Integrator

2In2

1In1

在Matlab命令窗口输入:

>> t=1:20;t=t';u=[sin(t),cos(t)];xInitial=[0 1];

后运行上述模型即可从Matlab的工作空间获得信号输入与结果输出。

(2)Initial state:用来设置系统状态变量的初始值。初始值xInitial可为列向量。

注意:使用xInitialstate所设置的状态变量初始值会自动覆盖系统模块中的设置。

?仿真结果输出到MATLAB的工作空间(Save to workspace)

此选项可以将系统的仿真结果、系统仿真时刻、系统中的状态或指定的信号输出到MATLAB的工作空间中,以便用户对其进行定量分析,如下所述:

(1)Time:输出系统仿真时刻。

(2)States:输出系统模型中的所有状态变量。

(3)Output:输出系统模型中的所有由Output 模块(即Out1 模块)表示的信号。

(4)Final state:输出系统模型中的状态变量的最终取值,即最后仿真时刻处的状态值。

?存储选项(Save option)

(1)Limit data points to last:表示输出数据的长度(从信号的最后数据点记起)。对于向量而言即其维数,对于矩阵而言即其秩。

(2)Format:表示输出数据类型。共有三种形式:Structure with Time(带有仿真时间变量的结构体)、Structure(不带仿真时间变量的结构体)、Array(信号数组)。

(3)Decimation:设定了一个亚采样因子,它的缺省值为1,也就是对每一个仿真时间点产生值都保存,而若为2,则是每隔一个仿真时刻才保存一个值。

(4)Output options:输出选项,包含3个可选项

●Refine output(细化输出):可以增加输出数据的点数,使得输出数据更加平滑。一

般当仿真输出太稀松时,使用此选项。与该选项配套的参数设置是refine factor(细

化因子),若细化因子定为2,则输出数据点数加倍,若为3则输出3倍的数据点

数,依次类推,默认值是1。通常要产生更光滑的输出曲线,通过改变精细因子比

减小仿真步长更有效。精细输出只能在变步长模式中才能使用,并且在ode45效果

最好。

●Produce additional output:它允许用户直接指定产生输出的时间点。一旦选择了该

项,则在它的右边出现一个output times编辑框,在这里用户指定额外的仿真输出

点,它既可以是一个时间向量,也可以是表达式。与精细因子相比,这个选项会改

变仿真的步长。

●Produce specified output only:它的意思是让simulink只在指定的时间点上产生输

出。为此解法器要调整仿真步长以使之和指定的时间点重合。这个选项在比较不同

的仿真时可以确保它们在相同的时间输出。

5. 启动仿真

设置仿真参数和选择解法器之后,就可以启动仿真而运行。方法: 选择Simulink 菜单下的start 选项来启动仿真,如果模型中有些参数没有定义,则会出现错误信息提示框。如果一切设置无误,则开始仿真运行。

下面给出一个实际的建模仿真的例子。 例2:一个生长在罐中的细菌的简单模型

假定细菌的出生率和当前细菌的总数成正比,死亡率和当前的总数的平方成正比。若以x 代表当前细菌的总数,则细菌的出生率可表示为:

birth_rate = bx

细菌的死亡率可表示为:

death_rate = px 2

细菌总数的总变化率可表示为出生率与死亡率之差。因此系统可用如下微分方程表示:

2 (1)x

bx px =- 假定,b=1/hour ;p= 0.5/hour ,当前细菌的总数为100,计算一个小时后罐中的细菌总数。 模型分析:

首先,这是一个一阶系统,因此用一个解微分方程的积分模块是必要的。积分模块的

输入为x (也即1式的右边项),输出为x

其次,需要一个乘法模块(Product )以实现x 2,需要2个增益模块(Gain )来实现px 2和bx (即分别将x 2和x 增益p 和b 倍),需要一个求和模块(Sum )实现bx - px 2。最后需要一个示波器模块(Scope )用于显示输出。所需各模块如下图所示:

Sum

Scope

Product

1

s

Integrator

1Gain2

1Gain1

步骤一:新建模型窗口

依次单击simulink 库浏览器的“File ”菜单→New →Model ,建立一个新的模型窗口; 步骤二:选择功能模块

从连续系统模块库(Continuous )中拖放一个积分模块到模型窗口,从数学库(Math )中分别拖放一个乘法模块、一个增益模块、一个求和模块到模型窗口;最后从显示输出库

(Sinks )拖放一个示波器模块到模型窗口。在模型窗口中选中增益模块(Gaun ),按住Ctrl 键的同时拖动鼠标,在适当的位置释放,即可复制出第二个增益模块。最后将以上各模块进行合理布局,如上图所示。 步骤三:信号线连接

按照前述的方法将各模块之间连接起来,如下图所示:

Sum

Scope

Product

1

s

Integrator

1Gain2

1

Gain1

步骤四:模块参数的设置

按下图所示设置模块的运行参数:

其它的仿真参数采用系统默认值即可。仿真的起始时间默认为0,终止时间默认为10.0。若需要改变仿真时间,可打开仿真参数设置对话框(Simulation Configuration Parameters ),设置【Star time 】和【Stop time 】即可。 步骤五:保存模型 步骤六:运行仿真

点击模型窗口中的

按钮,运行仿

真。仿真结束后,双击示波器模块,可观察到仿真的结果曲线,如右图示。

6. 模型的注释

使用模型注释可以使模型更易读懂,其效果如同MA TLAB 程序中的注释行一样。对于经常使用Simulink的用户,养成经常使用注释的习惯是非常重要的。

?增加注释的方法

在模型窗口中的任何想要注释的部位上双击鼠标,将会出现一个编辑框,在该框内输入想要注释的内容即可。

?改变注释字体

要改变注释内容的字体,先选中注释,选择模型窗口菜单中的【Format Font】选项,就会出现一个字体选择的对话框,选中认为合适的字体,然后按【OK】。

7.模型拷贝到Word文档

在simulink中创建的模型要想复制到word文档,可依次点击模型窗口下的菜单

Edit Copy Model to Clipboard,然后在word文档中粘贴即可。

三、实验内容

本次实验任务是学习使用Simulink对数字电路进行仿真和设计——8线3线编码器的设计。所谓8线3线编码器是指有8个信号输入端和3个输出端的编码器,其功能是对输入的8个信号进行编码,输出3个二进制数。

8线3线编码器的真值表如下:

表一: 8线3线编码器真值表

输入信号输出信号

J0 J1 J2 J3 J4 J5 J6 J7 Y0 Y1 Y2

0 1 1 1 1 1 1 1 1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

根据真值表写出输入输出间的逻辑函数如下:

Y0J4J5J6J7Y1J2J3J6J7Y2J1J3J5J7

?=?????

=?????=????? 下面使用Simulink 来实现这个数字电路系统,一共分三个步骤: 步骤一:添加模块

首先按照前述方法建立新的模型窗口,然后将本次仿真需要的模块添加到模型中。这里一共需要三种模块:

① 逻辑运算模块——与非门(3个),用于实现编码器输入信号间的逻辑运算功能; ② 离散脉冲源(8个),用于8个端口的脉冲信号输入; ③ 示波器(3个),用于显示输出的信号;

上述各模块在simulink 模块库中的位置:

与非门模块(即Logical Operator ):simulink 模块库→Logic and Bit Operations 子库; 离散脉冲源模块(Pulse Generator ):simulink 模块库→Sources 子库; 示波器模块(Scope ):simulink 模块库→Sinks 子库;

按照上述位置,找到相应模块,将其复制到模型窗口当中,如下图所示:

下面将模块的数量凑齐。

(a) 单击逻辑运算模块(Logical Operator )的名称,将其更名为Y0,以方便识别,结着选中

该模块,按住Ctrl 键,同时拖动鼠标到新的位置释放,此时将复制出一个名为Y1的逻辑模块,按照此法,再复制出Y2;

(b) 将脉冲源的名字改为J0,按后按住Ctrl 键拖动7次,可得到8个离散脉冲源,名字分别是J0、

J1、…、J7;最后依次法将示波器复制3个,这样所需的模块数量都已备齐。再将这些模块适当布局,如下图所示:

步骤二:修改模块参数

(a) 首先双击逻辑模块Y0,打开模块参数设置对话框,如下图所示。将参数Operator 修改为“NAND (与非)”,输入节点数(Number of input ports )修改为4,然后单击OK ;其它两个逻辑模块Y1和Y2也做同样修改。 (b) 双击示波器模块Scope1,在打开一个界面

中,点击Parameter 图标(如左下图所示),可以打开示波器的参数设置对话框,将坐标轴的数目(Number of axes )修改为3,这样做的目的是同时显示3幅图形(即3个与非门的输出信号波形)。同样地,将另外两个示波器Scope2和Scope3的坐标轴数目修改为4。

点击该图标

(c) 最后修改脉冲源的属性。双击脉冲源J0,弹出模块的参数设置对话框,如图所示。选择脉冲类型(Pulse type)为“基于采样(Sample based)”。接下来有5个参数需要设置,分别解释如下:

Amplitude 脉冲信号的幅度

Period 脉冲信号的周期(以样本数为单位)

Pulse width 脉冲宽度(即电平为1的时间,以样本数为单位)

Pulse delay 相位延迟(以样本数为单位)

Sample time 采样时间长度

观察本例的真值表,注意到信号J0~J7的长度为8,且J0到J7依次为低电平,所以将J0到J7的周期设为8,脉冲宽度设为7,相位延迟依次设为-7到0,脉冲幅度和采样时间使用默认值。这样在零时刻,J0为低电平,其余输入为高电平;经过一个采样时间后,J1变为低电平,如此持续下去,到第7个采样时间,J7就变为低电平,实现了设计要求。

步骤三:连线及仿真

根据逻辑表达式,J4、J5、J6、J7连接到Y0的输入端,J2、J3、J6、J7连接到Y1的输入端,J1、J3、J5、J7连接到Y2的输入端,然后用示波器Scope1监视Y2、Y1、Y0的输出;另外将J0~J3连接到Scope2、J4~J7连接到Scope3,以监视J0~J7这8个波形,结果如下图所示:

连接完成后,即可运行仿真(仿真参数采用默认设置即可)。仿真结束后,双击Scope1~Scope3观察波形结果,如下所示。

上图是编码器的输出波形,图中可以看出,输出的三位二进制码(Y2Y1Y0)依次是:000、001、010、011、100、101、110、111,实现了编码的功能。

Scope2显示J0~J3的输入波形:

Scope3显示J4~J7的输入波形:

从上面2个图可以看到,J0~J7以8为周期,依次出现0电平。

SIMULINK模块介绍

示波器的使用和数据保存 1.示波器的参数 " Number of axes" 项用于设定示波器的Y 轴数量,即示波器的输入信号端口的个数,其预设值为"1" ,也就是说该示波器可以用来观 察一路信号,将其设为"2" ,则可以同时观察两路信号,并且示波器的图标也自动变为有两个输入端口,依次类推,这样一个示波器可以同时观察多路信号。 "Time range" (时间范围) ,用于设定示波器时间轴的最大值,这一般可以选自动(auto) ,这样X 轴就自动以系统仿真参数设置中的起始和终止时间作为示披器的时间显示范围。 第三项用于选择标签的贴放位置。 第四项用于选择数据取样方式,其中Decimation 方式是当右边栏设为"3" 时,则每3 个数据取一个,设为"5" 时,则是5 中取1 ,设的数字越大显示的波形就越粗糙,但是数据存储的空间可以减少。一般该项保持预置值"1" ,这样输入的数据都显示,画出的波形较光滑漂亮。如果取样方式选Sample time 采样方式,则其右栏里输入的是采样的时间间隔,这时将

按采样间隔提取数据显示。该页中还有一项"Floating scope" 选择,如果在它左方的小框中点击选中,则该示波器成为浮动的示波器,即没有输入接口,但可以接收其他模块发送来的数据。 示波器设置的第二页是数据页,这里有两项选择。第一项是数据点数,预置值是5000 ,即可以显示5000个数据,若超过5000 个数据,则删掉前面的保留后面的。也可以不选该项,这样所有数据都显示,在计算量大时对内存的要求高一些。如果选中了数据页的第二项"Save data to workspace" ,即将数据放到工作间去,则仿真的结果可以保存起来,并可以用MATLAB 的绘图命令来处理,也可以用其他绘图软件画出更漂亮的图形。 在保存数据栏下,还有两项设置,第一项是保存的数据命名(Variable name) ,这时给数据起一个名,以便将来调用时识别。第二项是选择数据的保存格式(Format) ,该处有3 种选择:Arrary格式适用于只有一个输入变量的情况;Structure with time 和Structure 这两种格式适用于以矢量表示的多个变量情况,并且前者同时保存数值和时间,后者仅保存数值。用Arrary 格式保存的变量,为了以后可以用

Simulink常用模块简介

1 Continuous(连续模块) Integrator :输入信号积分 Derivative :输入信号微分 State-Space :线性状态空间系统模型 Transfer-Fcn :线性传递函数模型 Zero-Pole :以零极点表示的传递函数模型 Memory :存储上一时刻的状态值 Transport Delay :输入信号延时一个固定时间再输出 Variable Transport Delay :输入信号延时一个可变时间再输出 2 Discrete (离散模块) Discrete-time Integrator :离散时间积分 Discrete Filter :IIR与FIR滤波器 Discrete State-Space :离散状态空间系统模型 Discrete Transfer-Fcn :离散传递函数模型 Discrete Zero-Pole :以零极点表示的离散传递函数模型 First-Order Hold :一阶采样和保持器 Unit Delay :一个采样周期的延时 3 Function&Tables(函数和表格模块) Fcn :用自己定义的函数(表达式)进行运算 MATLAB Fcn :利用MA TLAB的现有函数进行运算 S-Function :调用自编的S函数的程序进行运算 Look-Up Table :建立输入信号的查询表(线性峰值匹配) Look-Up Table (2-D):建立两个输入信号的查询表(线性峰值匹配) 4 Math Operations(数学运算模块) Sum :加减运算 Product :乘运算 Dot Product :点乘运算 Gain :比例运算 Math Function :包括指数函数、对数函数、求平方、开根号等常用数学函数Trigonometric Function :三角函数,包括正弦、余弦、正切等 MinMax :最值运算 Abs :取绝对值 Sign :符号函数 Logical Operator :逻辑运算 Relational Operator :关系运算 Complex to Magnitude-Angle :由复数输入转为幅值和相角输出 Magnitude-Angle to Complex :由幅值和相角输入合成复数输出 Complex to Real-Imag :由复数输入转为实部和虚部输出 Real-Imag to Complex :由实部和虚部输入合成复数输出 5 Nonlinear (非线性模块) Saturation :饱和输出,让输出超过某一值时能够饱和 Relay :滞环比较器,限制输出值在某一范围内变化 Switch :开关选择,当第二个输入端大于临界值时,输出由第一个输入端而来,否则输出由第三个输入端而来。

SIMULINK模块介绍

关于光盘的使用说明 本光盘共包含六个子目录,其中三个是DSP_FORTRAN, DSP_C和DSP_MATLAB,另外三个是有关习题所需要的数据或文献。DSP_FORTRAN和DSP_C各含有约40个信号处理的子程序,概括了书中所涉及到的绝大部分算法。程序分别由FORTRAN语言和C语言编写(MA模型、ARMA模型及最小方差谱估计三个算法只给出了用C语言编写的程序, 没有给出相应的FORTRAN子程序),并在PC机上调试通过。编译环境是FORTRAN77 V5. 10和TURBO C2. 0。DSP_MATLAB含有近120多个用MA TLAB编写的信号处理程序,它们是本书各个章节的大部分例题,使用的是MA TLAB6.1。 FORTRAN子程序名称的长度全都是6位,扩展名为.for,C语言子程序的名称全部是7位,由相应的FORTRAN子程序在其名称前加字母m而形成,并将扩展名改为.c。为了方便读者的使用,光盘中还给出了调用FORTRAN子程序的简单主程序。读者只需将此主程序和主程序指定的子程序作编译、连接和运行,即可得出相应的结果。FORTRAN主程序的名称为7位或8位,它是在原FORTRAN子程序前加字母h所构成的,扩展名仍是.for。h后面的一个数(如果有的话)表示该程序是相应子程序的第几个主程序。例如,子程序desiir.for是用来设计IIR滤波器的FORTRAN子程序,对应的C程序是mdesiir.c,调用desiir.for 的第一个主程序是h1desiir.for(设计低通IIR DF),依此类推。 用MATLAB编写的程序的名称由“exa”开头,接下来是所在的章、节及例题的序号,如exa010101,指的是第1章第1节(即1.1节)的第1个例题,即例1.1.1。如果该程序是为了说明某一个m文件的应用,则在上述名称的后面跟一个下划线,再在后面加上所说明的MATLAB文件的名称,如exa011001_rand,即是例1.10.1,该例用来说明rand.m文件的应用。应该说明的是,这些MATLAB程序不是像所附的FORTRAN和C程序那样作为一个个子程序应用,而是用来说明书上的例题及各个m文件的应用。 用FORTRAN和C语言编写的每一个子程序的功能及调用时各个参数的含义已在程序的开头作了较为详细的说明,此处不再赘述。所附程序中,绝大多数都是作者和其研究生编写的,也有少量是参考国外已公开发表的杂志和教科书,如经典的FFT和REMEZ算法等。 下面给出的是用FORTRAN语言和C语言编写的程序的名称、功能以及有关问题的说明,程序按字母顺序排列。 1.aftodf.for,maftodf.c

simulink常用模块

SIMILINK模块库按功能进行分为以下8类子库: (1)Continuous(连续模块) (2)Discrete(离散模块) (3)Function&Tables(函数和平台模块) (4)Math(数学模块) (5)Nonlinear(非线性模块) (6)Signals&Systems(信号和系统模块) (7)Sinks(接收器模块) (8)Sources(输入源模块) 连续模块(Continuous)continuous.mdl Integrator:输入信号积分 Derivative:输入信号微分 State-Space:线性状态空间系统模型 Transfer-Fcn:线性传递函数模型 Zero-Pole:以零极点表示的传递函数模型 Memory:存储上一时刻的状态值 TransportDelay:输入信号延时一个固定时间再输出VariableTransportDelay:输入信号延时一个可变时间再输出离散模块(Discrete)discrete.mdl Discrete-timeIntegrator:离散时间积分器DiscreteFilter:IIR与FIR滤波器 DiscreteState-Space:离散状态空间系统模型

DiscreteTransfer-Fcn:离散传递函数模型 DiscreteZero-Pole:以零极点表示的离散传递函数模型 First-OrderHold:一阶采样和保持器 Zero-OrderHold:零阶采样和保持器 UnitDelay:一个采样周期的延时 函数和平台模块(Function&Tables)function.mdl Fcn:用自定义的函数(表达式)进行运算 S-Function:调用自编的S函数的程序进行运算 Look-UpTable:建立输入信号的查询表(线性峰值匹配) Look-UpTable(2-D):建立两个输入信号的查询表(线性峰值匹配) 数学模块(Math)math.mdl Sum:加减运算 Product:乘运算 DotProduct:点乘运算 Gain:比例运算 MathFunction:包括指数函数、对数函数、求平方、开根号等常用数学函数TrigonometricFunction:三角函数,包括正弦、余弦、正切等 MinMax:最值运算 Abs:取绝对值 Sign:符号函数 LogicalOperator:逻辑运算

Simulink模块库学习笔记

Simulink模块库简介0 修改历史 1、连续模块(continuous) (1)Derivative输入信号微分; (2)Integrator输入信号积分; (3)State-Space状态空间系统模型 (4)Transfer-Fcn传递函数模型 (5)TransportDelay输入信号延时一个固定时间再输出 (6)VariableTransportDelay输入信号延时一个可变时间再输出 (7)Zero-Ploe零极点模型 2、非连续模块(Discontinuous) (1)Backlash间隙非线性 (2)Coulomb&ViscousFriction库仑和粘度摩擦非线性 (3)DeadZone死区非线性 (4)DeadZoneDynamic动态死区非线性

(5)HitCrossing冲击非线性 (6)Quantizer量化非线性 (7)RateLimiter静态限制信号的变化速率 (8)RateLimiterDynamic动态限制信号的变化速率 (9)Relay滞环比较器,限制输出值在某一范围内变化 (10)Saturation饱和输出,让输出超过某一值是能够饱和 (11)SaturationDynamic动态饱和输出 (12)WrapToZero 3、离散模块(Discrete) (1)Difference差分环节 (2)DiscreteDerivative离散微分环节 (3)DiscreteFilter离散滤波器 (4)DiscreteState-Space离散状态空间系统模型 (5)DiscreteTransferFcn离散传递函数模型 (6)DiscreteZero-Pole以零极点表示的离散传递函数模型 (7)Discrete-TimeIntegrator离散时间积分器 (8)First-OrderHold一阶保持器 (9)IntegerDelay整数被延迟 (10)Memory输出本模块上一步的输入值 (11)TappedDelay延迟 (12)TransferFcnFirstOrder离散一阶传递函数 (13)TransferFcnLeadorLag传递函数 (14)TransferFcnRealZero离散零点传递函数 (15)UnitDelay一个采样周期的延时 (16)WeightedMovingAverage权值移动平均模型 (17)Zero-OrderHold零阶保持器 4、逻辑和位操作模块(LogicandBitOperation) (1)BitClear位清零 输入的数指定位清零 请参考(3)的示例图。

SIMULINK的模块库介绍

SIMULINK的模块库介绍 (1)Commonly Used Bus Creator Create signal bus Bus Selector Select signals from incoming bus Constant Generate constant value Data Type Conversion Convert input signal to specified data type Demux Extract and output elements of vector signal Discrete-Time Integrator Perform discrete-time integration or accumulation of signal Gain Multiply input by constant Ground Ground unconnected input port Inport Create input port for subsystem or external input Integrator,Integrator Limited Integrate signal Logical Operator Perform specified logical operation on input Mux Combine several input signals into vector Outport Create output port for subsystem or external output Product Multiply and divide scalars and nonscalars or multiply and invert matrices Relational Operator Perform specified relational operation on inputs Saturation Limit range of signal Scope and Floating Display signals generated during simulation

Matlab中SIMULINK的模块库以及比较常用的模块

2009年04月18日星期六 13:41 SIMULINK的模块库介绍 SIMILINK模块库按功能进行分为以下8类子库: Continuous(连续模块) Discrete(离散模块) Function&Tables(函数和平台模块) Math(数学模块) Nonlinear(非线性模块) Signals&Systems(信号和系统模块) Sinks(接收器模块) Sources(输入源模块) 连续模块(Continuous) Integrator:输入信号积分 Derivative:输入信号微分 State-Space:线性状态空间系统模型 Transfer-Fcn:线性传递函数模型 Zero-Pole:以零极点表示的传递函数模型 Memory:存储上一时刻的状态值 Transport Delay:输入信号延时一个固定时间再输出 Variable Transport Delay:输入信号延时一个可变时间再输出离散模块(Discrete) Discrete-time Integrator:离散时间积分器 Discrete Filter:IIR与FIR滤波器 Discrete State-Space:离散状态空间系统模型 Discrete Transfer-Fcn:离散传递函数模型

Discrete Zero-Pole:以零极点表示的离散传递函数模型 First-Order Hold:一阶采样和保持器 Zero-Order Hold:零阶采样和保持器 Unit Delay:一个采样周期的延时 函数和平台模块(Function&Tables) Fcn:用自定义的函数(表达式)进行运算 MATLAB Fcn:利用matlab的现有函数进行运算 S-Function:调用自编的S函数的程序进行运算 Look-Up Table:建立输入信号的查询表(线性峰值匹配) Look-Up Table(2-D):建立两个输入信号的查询表(线性峰值匹配) 数学模块( Math ) Sum:加减运算 Product:乘运算 Dot Product:点乘运算 Gain:比例运算 Math Function:包括指数函数、对数函数、求平方、开根号等常用数学函数Trigonometric Function:三角函数,包括正弦、余弦、正切等 MinMax:最值运算 Abs:取绝对值 Sign:符号函数 Logical Operator:逻辑运算 Relational Operator:关系运算 Complex to Magnitude-Angle:由复数输入转为幅值和相角输出 Magnitude-Angle to Complex:由幅值和相角输入合成复数输出

常用Simulink模块简介

常用Simulink模块简介 Sources库中模块 Band-Limited white Noise 给连续系统引入白噪声 Chirp Signal 产生一个频率递增的正弦波(线性调频信号) Clock 显示并提供仿真时间 Constant 生成一个常量值 Counter Free-Running 自运行计数器,计数溢出时自动清零Counter Limited 有限计数器,可自定义计数上限 Digital Clock 生成有给定采样间隔的仿真时间 From File 从文件读取数据 From Workspace 从工作空间中定义的矩阵中读取数据 Ground 地线,提供零电平 Pulse Generator 生成有规则间隔的脉冲 In1 提供一个输入端口 Ramp 生成一连续递增或递减的信号 Random Number 生成正态分布的随机数 Repeating Sequence 生成一重复的任意信号 Repeating Sequence Interpolated 生成一重复的任意信号,可以插值Repeating Sequence Stair 生成一重复的任意信号,输出的是离散值Signal Builder 带界面交互的波形设计 Signal Generator 生成变化的波形 Sine Wave 生成正弦波 Step 生成一阶跃函数 Uniform Random Number 生成均匀分布的随机数 Sink库中模块 Display 显示输入的值 Floating Scope 显示仿真期间产生的信号,浮点格式 Out1 提供一个输出端口 Scope 显示仿真期间产生的信号 Stop Simulation 当输入为非零时停止仿真 Terminator 终止没有连接的输出端口 To File 向文件中写数据 To Workspace 向工作空间中的矩阵写入数据 XY Graph 使用Matlab的图形窗口显示信号的X-Y图 Discrete库中的模块 Difference 差分器 Difference Derivative 计算离散时间导数 Discrete Filter 实现IIR和FIR滤波器 Discrete State-Space 实现用离散状态方程描述的系统 Discrete Transfer Fcn 实现离散传递函数 Discrete Zero-Pole 实现以零极点形式描述的离散传递函数Discrete-time Integrator 执行信号的离散时间积分 First-Order Hold 实现一阶采样保持 Integer Delay 将信号延迟多个采样周期

Simulink常用模块名称及其功能简介

Simulink常用模块名称中英文对照Sources库 Band-Limited White Noise 宽带限幅白噪声模块,把一个白噪声引入到连续系统中 Chirp Signal 线性调频信号(频率按时间线性变化的正弦波)模块,产生频率增加的正弦信号 Clock 时钟信号模块,显示或者提供仿真时间 Constant 常量输入模块,产生一个常数值 Digital Clock 数字时钟模块,按指定的间隔产生采样时间 Digital Pulse Generator 产生具有固定间隔的脉冲 From File 从一个文件读取数据 From Work space 从在工作空间定义的矩阵读入数据Ground 接地模块,将一个未连接的输入端接地In1 输入端口模块 Pulse Generator 脉冲信号发生器模块,产生固定间隔的脉冲 Ramp 斜坡信号输入模块,产生一个以常数斜率增加或者减小的信号 Random Number 产生正态分布的随机数 Repeating Sequence 产生一个可重复的任意信号 Signal Generator 产生多种多样的普通信号 Signal Builder 自定义信号发生器 Sine Wave 产生正弦波信号 Step 阶跃信号模块,产生一个单步函数Uniform Random Number 产生均匀分布的随机数 Sinks库 Display 实时数字显示模块,显示其输入信号的值Floating Scope 浮动示波器模块 Out1 输出端口模块

Scope 示波器模块,显示在仿真过程产生的信号的波形 Stop Simulation 仿真终止模块,当它的输入信号非零时,就结束仿真 Terminator 信号终结模块,结束一个未连接的输出端口To File 写数据到文件 To Workspace 把数据写进工作空间里定义的矩阵变量XY Graph 用一个MATLAB图形窗口来显示信号的X-Y坐标的图形 Continuous库主要用于连续系统的仿真 Derivative 微分模块,输出为输入信号的微分。无 需设置参数 Integrator 积分模块,输出时输入信号的积分,可设定初始条件(比如混沌系统的仿真),通常情况下初始条件不用考虑Memory 输出来自前一个时间步的模块输入 State-Space 状态空间模块,主要应用应用于现代控制理论中多输入多输出系统的仿真,双击模块可设置的主要参数有:系数矩阵A,B,C,D以及初始条件 Transfer Fcn 传递函数多项式模型,实现现行传递系统,双击可设置分子多项式和坟墓多项式的系数 Transport Delay 时间延迟模块,通过模块内部参数设定延迟时间 Variable Transport Delay 将输入延迟一可变的时间 Zero-Pole 传递函数零、极点模型,实现一个用零极点标明的传递函数,双击设置零点、极点、增益 Disontinuous库主要用于非线性系统仿真 Backlash 磁滞回环特性模块 Coulomb & Viscous Friction 库伦摩擦与黏性摩擦特性模块 Dead Zone 死区特性模块 Hit Crossing 检测输入信号的零交叉点模块 Quantizer 阶梯状量化处理模块

Matlab中SIMULINK的模块库以及比较常用的模块

Matlab中SIMULINK的模块库以及比较常用的模块 2009年04月18日星期六 13:41 SIMULINK的模块库介绍 SIMILINK模块库按功能进行分为以下8类子库: Continuous(连续模块) Discrete(离散模块) Function&Tables(函数和平台模块) Math(数学模块) Nonlinear(非线性模块) Signals&Systems(信号和系统模块) Sinks(接收器模块) Sources(输入源模块) 连续模块(Continuous)continuous.mdl Integrator:输入信号积分 Derivative:输入信号微分 State-Space:线性状态空间系统模型 Transfer-Fcn:线性传递函数模型 Zero-Pole:以零极点表示的传递函数模型 Memory:存储上一时刻的状态值 Transport Delay:输入信号延时一个固定时间再输出 Variable Transport Delay:输入信号延时一个可变时间再输出 离散模块(Discrete) discrete.mdl Discrete-time Integrator:离散时间积分器 Discrete Filter:IIR与FIR滤波器 Discrete State-Space:离散状态空间系统模型 Discrete Transfer-Fcn:离散传递函数模型 Discrete Zero-Pole:以零极点表示的离散传递函数模型 First-Order Hold:一阶采样和保持器 Zero-Order Hold:零阶采样和保持器 Unit Delay:一个采样周期的延时 函数和平台模块(Function&Tables) function.mdl Fcn:用自定义的函数(表达式)进行运算 MATLAB Fcn:利用matlab的现有函数进行运算 S-Function:调用自编的S函数的程序进行运算 Look-Up Table:建立输入信号的查询表(线性峰值匹配) Look-Up Table(2-D):建立两个输入信号的查询表(线性峰值匹配) 数学模块( Math ) math.mdl Sum:加减运算 Product:乘运算 Dot Product:点乘运算 Gain:比例运算 Math Function:包括指数函数、对数函数、求平方、开根号等常用数学函数

simulink常用模块

连续模块(Continuous) Integrator:输入信号积分 Derivative:输入信号微分 State-Space:线性状态空间系统模型 Transfer-Fcn:线性传递函数模型 Zero-Pole:以零极点表示的传递函数模型 Memory:存储上一时刻的状态值 Transport Delay:输入信号延时一个固定时间再输出 Variable Transport Delay:输入信号延时一个可变时间再输出 离散模块(Discrete)discrete.mdl Discrete-time Integrator:离散时间积分器 Discrete Filter:IIR与FIR滤波器 Discrete State-Space:离散状态空间系统模型 Discrete Transfer-Fcn:离散传递函数模型 Discrete Zero-Pole:以零极点表示的离散传递函数模型 First-Order Hold:一阶采样和保持器 Zero-Order Hold:零阶采样和保持器 Unit Delay:一个采样周期的延时 函数和平台模块(Function&Tables) function.mdl Fcn:用自定义的函数(表达式)进行运算 MATLAB Fcn:利用matlab的现有函数进行运算 S-Function:调用自编的S函数的程序进行运算 Look-Up Table:建立输入信号的查询表(线性峰值匹配) Look-Up Table(2-D):建立两个输入信号的查询表(线性峰值匹配) 数学模块(Math )math.mdl Sum:加减运算 Product:乘运算 Dot Product:点乘运算 Gain:比例运算 Math Function:包括指数函数、对数函数、求平方、开根号等常用数学函数Trigonometric Function:三角函数,包括正弦、余弦、正切等 MinMax:最值运算 Abs:取绝对值 Sign:符号函数 Logical Operator:逻辑运算 Relational Operator:关系运算 Complex to Magnitude-Angle:由复数输入转为幅值和相角输出 Magnitude-Angle to Complex:由幅值和相角输入合成复数输出 Complex to Real-Imag:由复数输入转为实部和虚部输出 Real-Imag to Complex:由实部和虚部输入合成复数输出 非线性模块(Nonlinear )nonlinear.mdl Saturation:饱和输出,让输出超过某一值时能够饱和。 Relay:滞环比较器,限制输出值在某一范围内变化。

Simulink常用模块中文名称(带模块图片)

Simulink常用模块名称中英文对照 Sources库 Band-Limited White Noise:宽带限幅白噪声模块,把一个白噪声引入到连续系统中 Chirp Signal:线性调频信号(频率按时间线性变化的正弦波)模块,产生频率增加的正弦信号 Clock:时钟信号模块,显示或者提供仿真时间 Constant:常量输入模块,产生一个常数值 Digital Clock:数字时钟模块,按指定的间隔产生采样时间 Digital Pulse Generator:产生具有固定间隔的脉冲 From File:从一个文件读取数据 From Work space:从在工作空间定义的矩阵读入数据 Ground:接地模块,将一个未连接的输入端接地 In1:输入端口模块

Pulse Generator:脉冲信号发生器模块,产生固定间隔的脉冲Ramp:斜坡信号输入模块,产生一个以常数斜率增加或者减小的信号Random Number:产生正态分布的随机数 Repeating Sequence:产生一个可重复的任意信号 Signal Generator:产生多种多样的普通信号 Signal Builder:自定义信号发生器 Sine Wave:产生正弦波信号 Step:阶跃信号模块,产生一个单步函数 Uniform Random Number:产生均匀分布的随机数 Sinks库 Display:实时数字显示模块,显示其输入信号的值 Floating Scope:浮动示波器模块 Out1:输出端口模块 Scope:示波器模块,显示在仿真过程产生的信号的波形 Stop Simulation:仿真终止模块,当它的输入信号非零时,就结束仿真Terminator:信号终结模块,结束一个未连接的输出端口 To File:写数据到文件 To Workspace:把数据写进工作空间里定义的矩阵变量 XY Graph:用一个MATLAB图形窗口来显示信号的X-Y坐标的图形 Continuous库主要用于连续系统的仿真

MATLAB simulink模块简介

SIMULINK的模块库介绍 SIMILINK模块库按功能进行分为以下8类子库: Continuous(连续模块) Discrete(离散模块) Function&Tables(函数和平台模块) Math(数学模块) Nonlinear(非线性模块) Signals&Systems(信号和系统模块) Sinks(接收器模块) Sources(输入源模块) 连续模块(Continuous)continuous.mdl Integrator:输入信号积分 Derivative:输入信号微分 State-Space:线性状态空间系统模型 Transfer-Fcn:线性传递函数模型 Zero-Pole:以零极点表示的传递函数模型 Memory:存储上一时刻的状态值 Transport Delay:输入信号延时一个固定时间再输出 Variable Transport Delay:输入信号延时一个可变时间再输出 离散模块(Discrete)discrete.mdl Discrete-time Integrator:离散时间积分器 Discrete Filter:IIR与FIR滤波器 Discrete State-Space:离散状态空间系统模型 Discrete Transfer-Fcn:离散传递函数模型 Discrete Zero-Pole:以零极点表示的离散传递函数模型 First-Order Hold:一阶采样和保持器 Zero-Order Hold:零阶采样和保持器 Unit Delay:一个采样周期的延时 函数和平台模块(Function&Tables) function.mdl Fcn:用自定义的函数(表达式)进行运算 MATLAB Fcn:利用matlab的现有函数进行运算 S-Function:调用自编的S函数的程序进行运算 Look-Up Table:建立输入信号的查询表(线性峰值匹配) Look-Up Table(2-D):建立两个输入信号的查询表(线性峰值匹配) 数学模块(Math )math.mdl Sum:加减运算 Product:乘运算 Dot Product:点乘运算 Gain:比例运算 Math Function:包括指数函数、对数函数、求平方、开根号等常用数学函数Trigonometric Function:三角函数,包括正弦、余弦、正切等 MinMax:最值运算

Simulink常用模块中文名称(带模块图片)

Simulink 常用模块名称中英文对照 Sources 库 Band-Limited White Noise:宽带限幅白噪声模块,把一个白噪声引入到连续系统中 Chirp Signal:线性调频信号(频率按时间线性变化的正弦波)模块,产生频率增加的正弦信号 Clock:时钟信号模块,显示或者提供仿真时间 Constant :常量输入模块,产生一个常数值 Digital Clock:数字时钟模块,按指定的间隔产生采样时间 Digital Pulse Generator:产生具有固定间隔的脉冲 From File:从一个文件读取数据 From Work space:从在工作空间定义的矩阵读入数据 Ground:接地模块,将一个未连接的输入端接地 In1:输入端口模块

Pulse Generator:脉冲信号发生器模块,产生固定间隔的脉冲Ramp:斜坡信号输入模块,产生一个以常数斜率增加或者减 小的信号 Random Number:产生正态分布的随机数Repeating Sequence:产生一个可重复的任意信号 Signal Generator:产生多种多样的普通信号 Signal Builder:自定义信号发生器 Sine Wave:产生正弦波信号 Step:阶跃信号模块,产生一个单步函数 Uniform Random Number:产生均匀分布的随机数 Sinks 库 Display:实时数字显示模块,显示其输入信号的值 Floating Scope:浮动示波器模块 Out1:输出端口模块 Scope:示波器模块,显示在仿真过程产生的信号的波形 Stop Simulation:仿真终止模块,当它的输入信号非零时,就结束仿真Terminator:信号终结模块,结束一个未连接的输出端口 To File:写数据到文件 To Workspace:把数据写进工作空间里定义的矩阵变量

simulink常用模块

SIMILINK 模块库按功能进行分为以下8类子库: (1)Continuous (连续模块) (2)Discrete (离散模块) (3)Function&Tables (函数和平台模块) (4)Math (数学模块) (5)Nonlinear (非线性模块) ⑹Signals&Systems (信号和系统模块) ⑺Sinks (接收器模块) (8)Sources (输入源模块) 连续模块(Continuous continuous.mdl Integrator:输入信号积分 Derivative:输入信号微分 State-Space线性状态空间系统模型 Transfer-Fcn:线性传递函数模型 Zero-Pole:以零极点表示的传递函数模型 Memory :存储上一时刻的状态值 TransportDelay:输入信号延时一个固定时间再输出VariableTransportDelay:输入信号延时一个可变时间再输出离散模块(Discrete discrete.mdl Discrete-timeIntegrator:离散时间积分器DiscreteFilter:IIR 与FIR 滤波器

DiscreteState-Space离散状态空间系统模型 DiscreteTransfer-Fcn离散传递函数模型 DiscreteZero-Pole以零极点表示的离散传递函数模型 First-OrderHold :—阶采样和保持器 Zero-OrderHold :零阶采样和保持器 Un itDelay: —个采样周期的延时 函数和平台模块(Function&Tables)function.mdl Fen:用自定义的函数(表达式)进行运算 Fen:利用matlab的现有函数进行运算 S-Function:调用自编的S函数的程序进行运算 Look-UpTable :建立输入信号的查询表(线性峰值匹配) Look-UpTable(2-D):建立两个输入信号的查询表(线性峰值匹配) 数学模块(Math)math.mdl Sum:加减运算 Product:乘运算 DotProduct :点乘运算 Gai n:比例运算 MathFu nctio n:包括指数函数、对数函数、求平方、开根号等常用数学函数Trigono metricF unction:三角函数,包括正弦、余弦、正切等 MinMax :最值运算 Abs :取绝对值

Simulink模块库简介

Simulink模块库简介 在进行系统动态仿真之前,应绘制仿真系统框图,并确定仿真所需要的参数。Simulink 模块库包含有大部分常用的建立系统框图的模块,下面简要介绍常用模块。 1、连续模块(continuous) (1) 2、非连续模块(Discontinuous) (2) 3、离散模块(Discrete) (3) 4、逻辑和位操作模块(Logic and Bit Operation) (4) 5、查找表模块(Lookup Table) (5) 6.数学模块(Math Operations) (6) 7、模型检测模块(Model Verification) (7) 8、模型扩充模块(Model-Wide Utilities) (8) 9、端口和子系统模块(Prot & Subsystems) (9) 10、信号属性模块(Signal Attributes) (10) 11、信号路线模块(Signal Routing) (11) 12、接收器模块(Sinks) (12) 13、输入源模块(Sources) (13) 14、用户自定义函数模块(User-Defined Functions) (14) 15、Additional Math & Discrete (14) 综合 (15) 1、连续模块(continuous) (1) Derivative 输入信号微分; (2) Integrator输入信号积分; (3) State-Space状态空间系统模型 (4) Transfer-Fcn传递函数模型 (5) Transport Delay输入信号延时一个固定时间再输出 (6) Variable Transport Delay输入信号延时一个可变时间再输出 (7) Zero-Ploe零极点模型

simulink模块库中文

这些图片的窗口是从MA TLAB R2012b里面截图下来的,注释还不够全面。如有出入之处,敬请谅解!

Derivative :微分模块,输出为输入信号的微分。无需设置参数Integrator:积分模块,输出时输入信号的积分,可设定初始条件(比如混沌系统的仿真),通常情况下初始条件不用考虑Memory:输出来自前一个时间步的模块输入 State-Space:状态空间模块,主要应用应用于现代控制理论中多输入多输出系统的仿真,双击模块可设置的主要参数有:系数矩阵A,B,C,D以及初始条件Transfer Fcn:传递函数多项式模型,实现现行传递系统,双击可设置分子多项式和坟墓多项式的系数 Transport Delay:时间延迟模块,通过模块内部参数设定延迟时间 Variable Transport Delay:将输入延迟一可变的时间 Zero-Pole:传递函数零、极点模型,实现一个用零极点标明的传递函数,双击设置零点、极点、增益

Backlash:磁滞回环特性模块 Coulomb & Viscous Friction:库伦摩擦与黏性摩擦特性模块Dead Zone:死区特性模块 Hit Crossing:检测输入信号的零交叉点模块Quantizer:阶梯状量化处理模块Rate Limiter:变化速率限幅模块Relay:带有滞环的继电特性模块Saturation:限幅的饱和特性模块

Discrete Transfer Fcn:离散系统传递函数多项式模型,可设置分子分母多项式 Discrete Zero-Pole:离散系统传递函数零极点模型,可设置零点、极点、增益,可以设置采样时间 Discrete Filter:离散系统滤波器,可设置分子分母系数(按照z-1作升幂排列),可设置采样时间 Discrete State-Space:离散系统状态空间表达式模块,可设置参数矩阵A,B,C,D,可设置采样时间、初始条件 Discrete-Time Integrator:离散系统积分器模块,可设置采样时间、初始条件 Unit Delay:离散系统单位延迟模块,可设置采样时间,初始条件Fist-Order Hol:一阶采样保持器 Memory:存储模块 Zero-Order Hold:零阶采样保持器 Discrete Filter:实现IIR和FIR滤波器 Discrete State-Space:实现一个离散状态空间系统 Discrete-Time Integrator:离散时间积分器 Discrete Transfer Fcn:实现一个离散传递函数 Discrete Zero-Pol:实现一个用零极点来说明的离散传递函数First-Order Hold:实现一个一阶保持采样-保持系统 Unit Delay:将信号延时一个单位采样时间 Zero-Order Hold:实现具有一个采样周期的零阶保持

MATLAB中SIMULINK常用命令表+常用模块简介

常用命令: 仿真命令 sim 仿真运行一个simulink模块 sldebug 调试一个simulink模块 simset 设置仿真参数 simget 获取仿真参数 线性化和整理命令 linmod 从连续时间系统中获取线性模型 linmod2 也是获取线性模型,采用高级方法 dinmod 从离散时间系统中获取线性模型 trim 为一个仿真系统寻找稳定的状态参数 构建模型命令 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的用户向导或者模块帮助 封装命令 hasmask 检查已有模块是否封装 hasmaskdlg 检查已有模块是否有封装的对话框 hasmaskicon 检查已有模块是否有封装的图标

相关主题
文本预览
相关文档 最新文档