当前位置:文档之家› Simulink中的自定义模块

Simulink中的自定义模块

目录

Fcn 模块 (1)

MATLAB Fcn 模块 (2)

S Function (System Function) (3)

1. 函数的函数头 (4)

2. 函数分析 (4)

3.带参数的S函数 (8)

4.S函数格式及说明 (9)

simulink中子模块的封装 (16)

Fcn 模块

Fcn模块对它的输入进行指定的表达式运算。使用的表达式可由下面的一个或多个部分组成。

u --- 模块的输入。如果u是一个向量,u(i)表示此向量的第i个元素;u(1)或者u表示第一个元素

数值常数(例如表达式5.2*u)

算术运算符(+ - * / ^ 例如表达式u^2+5.2)

关系运算符(== != > < >= <=) --表达式返回1,如果关系为真; 否则返回0

逻辑运算符(&& || !) 表达式返回1,如果关系为真; 否则返回0

括号

数学函数(abs, acos, asin, atan, atan2, ceil, cos, cosh, exp, fabs, floor, hypot, ln, log, log10, pow, power, rem, sgn, sin, sinh, sqrt, tan, tanh.)

Workspace中定义的变量–如果变量名字不是Matlab 保留字符(比如sin),变量名字会被传递给Matab,从而在Maltab Workspace中获取相应给定的值。矩阵或者向量必须具体到其对应的元素。(比如A(1,1))

注意:Fcn模块中使用的表达式不支持矩阵运算,同样不支持(:) 符。模块输入可以是标量或者向量,但输出总是标量数值。

MATLAB Fcn 模块

MATLAB Fcn模块对它的输入进行指定的Matlab函数或者表达式运算。输出尺寸必须和模块中定义的尺寸相符,否则报错。

下面是MATLAB Fcn模块中可以使用的有效表达式

sin atan2(u(1),u(2)) u(1)^u(2)

注意:

同Fcn模块相比,在仿真中MATLAB Fcn模块速度要慢,因为它需要在每个积分步骤中调用Maltab编译器。因此建议使用Fcn模块或者Math Function模块代替MATLAB Fcn模块,或者编写M文件或者MEX文件S 函数代替它。

S Function (System Function)

S函数,即系统函数,用来扩展Simulink模块库。一个S函数,相当于一个Simulink模块,只不过这个模块不是在Simulink Library中已经存在的,用户需要根据自己对Simulink的功能需求,使用指定的编程语言来定制自己的Simulink 模块。

S 函数支持Matlab, C, C++, Ada, or Fortran等语言,编写S函数需要按照一定的格式,具体如何编写S函数,参考Matlab自带文档。

如果能用现有的Simulink 模块库中的模块满足需求,不建议使用S函数编写。

所谓s函数是system Function的简称, 用它来写自己的simulink模块. s函数可以用matlab、C、C++、Fortran、Ada等语言来写,这儿只介绍怎样用matlab 语言来写吧(主要是它比较简单)

先讲讲为什么要用s函数,我觉得用s函数可以利用matlab的丰富资源,而不仅仅局限于simulink提供的模块,而用c或c++等语言写的s函数还可以实现对硬件端口的操作,还可以操作windows API等

先介绍一下simulink的仿真过程(以便理解s函数),simulink的仿真有两个阶段:一个为初始化,这个阶段主要是设置一些参数,像系统的输入输出个数、状态初值、采样时间等;第二个阶段就是运行阶段,这个阶段里要进行计算输出、更新离散状态、计算连续状态等等,这个阶段需要反复运行,直至结束.

在matlab的workspace里输入edit sfuntmpl(这是matlab自己提供的s函数模板),我们看它来具体分析s函数的结构.

1. 函数的函数头

函数的第一行:function [sys,x0,str,ts]=sfuntmpl(t,x,u,flag) , 先讲输入与输出变量的含义:

t是采样时间;

x是状态变量;

u是输入(是做成simulink模块的输入);

flag是仿真过程中的状态标志(以它来判断当前是初始化还是运行等)

sys输出根据flag的不同而不同(下面将结合flag来讲sys的含义);

x0是状态变量的初始值;

str是保留参数(mathworks公司还没想好该怎么用它, 一般在初始化中将它置空就可以了, str=[]);

ts是一个1×2的向量, ts(1)是采样周期, ts(2)是偏移量

2. 函数分析

下面结合sfuntmpl.m中的代码来讲具体的结构:

switch flag, %判断flag,看当前处于哪个状态

case 0,

[sys,x0,str,ts]=mdlInitializeSizes;

// 解释说明

flag=0表示当前处于初始化状态,此时调用函数mdlInitializeSizes进行初始化,此函数在该文件的第149行定义. 其中的参数sys是一个结构体,它用来设置模块的一些参数,各个参数详细说明如下

size = simsizes; %用于设置模块参数的结构体用simsizes来生成sizes.NumContStates = 0; %模块连续状态变量的个数

sizes.NumDiscStates = 0; %模块离散状态变量的个数

sizes.NumOutputs = 0; %模块输出变量的个数

sizes.NumInputs = 0; %模块输入变量的个数

sizes.DirFeedthrough = 1; %模块是否存在直接贯通

sizes.NumSampleTimes = 1; %模块的采样时间个数, 至少是一个

sys = simsizes(sizes); %设置完后赋给sys输出

举个例子,考虑如下模型:

dx/dt=fc(t,x,u) 也可以用连续状态方程描述:dx/dt=A*x+B*u

x(k+1)=fd(t,x,u) 也可以用离散状态方程描述:x(k+1)=H*x(k)+G*u(k)

y=fo(t,x,u) 也可以用输出状态方程描述:y=C*x+D*u

设上述模型连续状态变量、离散状态变量、输入变量、输出变量均为1个,我们就只需改上面那一段代码为(一般连续状态与离散状态不会一块用, 我这儿是为了方便说明):

sizes.NumContStates=1;

sizes.NumDiscStates=1;

sizes.NumOutputs=1;

sizes.NumInputs=1;

其他的可以不变, 继续在mdlInitializeSizes函数中往下看:

x0 = []; %状态变量设置为空,表示没有状态变量,以我们上面的假设,可改为x0=[0,0](离散和连续的状态变量我们都设它初值为0)

str = []; %保留参数, 置[]就可以了, 没什么用

ts = [0 0]; %采样周期设为0表示是连续系统, 如果是离散系统在下面的mdlGetTimeOfNextVarHit函数中具体介绍

case 1,

sys=mdlDerivatives(t,x,u);

//

flag=1表示此时要计算连续状态的微分, 即上面提到的dx/dt=fc(t,x,u)中的dx/dt, 找到193行的函数mdlDerivatives, 如果设置连续状态变量个数为0, 此处只需sys=[]就可以了, 按我们上述讨论的那个模型, 此处改成sys=fc(t,x(1),u)或sys=A*x(1)+B*u, 我们这儿x(1)是连续状态变量, 而x(2)是离散的, 这儿只用到连续的, 此时的输出sys就是微分

case 2,

sys=mdlUpdate(t,x,u);

//

flag=2表示此时要计算下一个离散状态, 即上面提到的x(k+1)=fd(t,x,u), 找到mdlUpdate函数, 它这儿sys=[]表示没有离散状态, 我们这儿可以改成sys=fd(t,x(2),u)或sys=H*x(2)+G*u;%sys即为x(k+1)

case 3,

sys=mdlOutputs(t,x,u);

//

flag=3表示此时要计算输出, 即y=fo(t,x,u), 找到218行的mdlOutputs函数. 如果sys=[]表示没有输出, 我们改成sys=fo(t,x,u)或sys=C*x+D*u %sys此时为输出y

case 4,

sys=mdlGetTimeOfNextVarHit(t,x,u);

//

flag=4表示此时要计算下一次采样的时间, 只在离散采样系统中有用(即上文的mdlInitializeSizes中提到的ts设置ts(1)不为0), 连续系统中只需在mdlGetTimeOfNextVarHit函数中写上sys=[]. 这个函数主要用于变步长的设置, 具体实现大家可以用edit vsfunc看vsfunc.m这个例子

case 9,

sys=mdlTerminate(t,x,u);

//

flag=9表示此时系统要结束,一般来说写上在mdlTerminate函数中写上sys=[]就可, 如果你在结束时还要设置什么,就在此函数中写完了.

3.带参数的S函数

此外, s函数还可以带用户参数, 下面给个例子, 它和simulink下的gain模块功能一样

function [sys,x0,str,ts] = sfungain(t,x,u,flag,gain)

switch flag,

case 0,

sizes = simsizes;

sizes.NumContStates = 0;

sizes.NumDiscStates = 0;

sizes.NumOutputs = 1;

sizes.NumInputs = 1;

sizes.DirFeedthrough = 1;

sizes.NumSampleTimes = 1;

sys = simsizes(sizes);

x0=[];

str=[];

ts=[0,0];

case 3,

sys=gain*u;

case {1,2,4,9},

sys = [];

end

做好了s函数后, simulink --> user-defined function下拖一个S-Function到你的模型, 就可以用了. 在simulink --> user-defined function还有个s-Function Builder, 他可以生成用c语言写的s函数. 或者在matlab的workspace下打sfundemos, 可以看到很多演示s函数的程序

4.S函数格式及说明

function [sys,x0,str,ts] = sfuntmpl(t,x,u,flag)

% SFUNTMPL 是M-文件S函数模板

% 通过剪裁,用户可以生成自己的S函数,不过一定要重新命名

% 利用S函数可以生成连续、离散混合系统等,实现任何模块的功能

%

% M-文件S函数的语法为:

% [SYS,X0,STR,TS] = SFUNC(T,X,U,FLAG,P1,...,Pn)

%

% 参数含义:

% t是当前时间

% x是S函数相应的状态向量

% u是模块的输入

% flag是所要执行的任务

%

% FLAG 结果功能

% ----- ------ --------------------------------------------

% 0 [SIZES,X0,STR,TS] 模块初始化

% 1 DX 计算模块导数

% 2 DS 更新模块离散状态

% 3 Y 计算模块输出

% 4 TNEXT 计算下一个采样时间点

% 9 [] 结束仿真

%

%

% 用户切勿改动输出参数的顺序、名称和数目

% 输入参数的数目不能小于1,这四个参数的名称和排列顺序不能改动

% 用户可以根据自己的要求添加额外的参数,位置依次为第5,6,7,8,9等。

% S函数的flag参数是一个标记变量,具有6个不同值,分别为0,1,2,3,4,9

% flag的6个值分别指向6个不同的子函数

% flag所指向的子函数也成为回调方法(Callback Methods) switch flag,

%初始化,调用“模块初始化”子程序%

case 0,

[sys,x0,str,ts]=mdlInitializeSizes;

%连续状态变量计算,调用“计算模块导数”子函数%

case 1,

sys=mdlDerivatives(t,x,u);

%更新,调用“更新模块离散状态”子函数%

case 2,

sys=mdlUpdate(t,x,u);

%输出,调用“计算模块输出”子函数%

case 3,

sys=mdlOutputs(t,x,u);

%计算下一时刻采样点,调用“计算下一个采样时刻点”子函数% case 4,

sys=mdlGetTimeOfNextVarHit(t,x,u);

%结束,调用“结束仿真”子函数%

case 9,

sys=mdlTerminate(t,x,u);

%其他的flag%

otherwise

DAStudio.error('Simulink:blocks:unhandledFlag', num2str(flag));

end

% end sfuntmpl

%================================================ =============================

% “模块初始化”子函数

% 返回大小、初始条件和样本

function [sys,x0,str,ts]=mdlInitializeSizes

% 调用simsizes函数,返回规格式的sizes构架

% 这条指令不要修改

sizes = simsizes;

% 模块的连续状态个数,0是默认值

% 用户可以根据自己的要求进行修改

sizes.NumContStates = 0;

% 模块的离散状态个数,0是默认值

% 用户可以根据自己的要求进行修改

sizes.NumDiscStates = 0;

% 模块的输出个数,0是默认值

% 用户可以根据自己的要求进行修改

sizes.NumOutputs = 0;

% 模块的输入个数,0是默认值

% 用户可以根据自己的要求进行修改

sizes.NumInputs = 0;

% 模块中包含的直通前向馈路个数,1是默认值

% 用户可以根据自己的要求进行修改

sizes.DirFeedthrough = 1;

% 模块中采样时间的个数,1是默认值,至少需要一个样本时间% 用户可以根据自己的要求进行修改

sizes.NumSampleTimes = 1;

% 初始化后的构架sizes经simsizes函数处理后向sys赋值

% 这条指令不要修改

sys = simsizes(sizes);

% 给模块初始值变量赋值,[]是默认值

% 用户可以根据自己的要求进行修改

x0 = [];

% 系统保留变量

% 切勿改动,保持为空

str = [];

% “二元对”描述采样时间及偏移量。[0 0]是默认值

% [0 0]适用于连续系统

% [-1 0]则表示该模块采样时间继承其前的模块采样时间设置

ts = [0 0];

% end mdlInitializeSizes

%================================================ =============================

% 计算导数向量

function sys=mdlDerivatives(t,x,u)

% 此处填写计算导数向量的指令

% []是模块的默认值

% 用户必须把算得的离散状态的导数向量赋给sys

sys = [];

% end mdlDerivatives

%================================================ =============================

% 计算离散状态向量

function sys=mdlUpdate(t,x,u)

% 此处填写计算离散状态向量的指令

% []是模块的默认值

% 用户必须把算得的离散状态向量赋给sys

sys = [];

% end mdlUpdate

%================================================ =============================

% 计算模块输出向量

function sys=mdlOutputs(t,x,u)

% 此处填写计算模块输出向量的指令

% []是模块的默认值

% 用户必须把算得的模块输出向量赋给sys

sys = [];

% end mdlOutputs

%================================================ =============================

% 计算下一采样时刻

function sys=mdlGetTimeOfNextVarHit(t,x,u)

% 该子函数仅在“采样时间”情况下使用

% sampleTime = 1 是模块默认设置,表示在当前时间1秒后再调用本模块% 用户可以根据自己的要求修改

sampleTime = 1;

% 将计算得到的下一采样时刻赋给sys

% 切勿改动

sys = t + sampleTime;

% end mdlGetTimeOfNextVarHit

%================================================ =============================

function sys=mdlTerminate(t,x,u)

% 模板默认设置,一般情况不要改动

sys = [];

% end mdlTerminate

simulink中子模块的封装

对于比较复杂的系统,模块化思想是很有必要的,使得思路较为清晰、错误容易排查。对复杂的系统进行仿真,如果将其中独立的功能进行封装,会显得特别清爽。这学期做了电机仿真和伺服系统仿真,特别感觉到子模块封装的必要性,有效的提高了系统的可读和可维护性。

在simulink中建立子模块的步骤如下:

1、建立系统框图。这步需要确定输入输出的个数,输入端为sources 中的in,输出端为sinks中的out。将Simulink库下的Ports&Subsystems中的Subsystem拉至simulink框图中。

2、功能的搭建。点击建好的子模块,在其中进行功能模块的搭建。

3、子模块的封装。所谓封装(masking),即将其对应的子系统部结构隐含以来,访问该模块的时候仅仅出现一个参数设置对话框。需要如下几步完成:

3.1、右击模块,选择Mask Subsystem选项,蹦出Mask Editor对话框。

3.2、Icon属性。如果要显示端口的名称,Transparency属性设置成Transparent。Drawing commands编辑框允许给该模块图标上绘制图像,可以选择的有plot()、disp()等等,比如disp('PID Controller')。在Drawing commands 中输入语句,如何写函数的提示在封装编辑对话框的下方。

3.3、Parameters属性。这个东西是给模块中的变量赋值的,选择左方有朝左的小箭头的按钮是添加变量的,这时右方会有一横栏,Prompt是该变量的提示信息,Variable是相关联的变量名称,一定要与模块中的变量名称一样,Type是变量的类型,edit(可编辑)、popup(下拉框),选择后者的时候需要在左下方的popups中分行写上可以选择的数值。左方的叉按钮是删除变量的。

3.4、Initialization属性。对模块进行初始化操作。

3.5、Documentation属性。对模块进行说明。封装后双击模块就可以看见Mask Description中的容。

关于模块封装的一些操作还有:

(1)如果要观察模块的部结构,右键模块,然后选择Look Under Mask 即可。编辑模块封装选择Edit Maks。

(2)把要封装的东西全部用鼠标框起来,选择Edit中的Creat Subsystem就可以将选中的东西封装起来了。左键单击模块,用Edit中的Mask Subsystem即可进行模块的封装。同样用Edit下的Look Under Mask即可观察模块的部结构。

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的模块库介绍 (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 阶梯状量化处理模块

Simulink 基本操作

实验三 Simulink 基本操作 一、实验目的 1.熟悉Simulink 集成环境,练习Simulink 模型文件基本操作。 2.熟悉Simulink 模块库。 3.掌握Simulink 集成环境建模,并学会Simulink 子封装。 二、实验原理 Simulink 是MATLAB 的重要组成部分,是一个用来对动态系统进行建模、仿真和分析的软件包。它支持线性和非线性系统连续和离散时间模型,或者是两者的混合。 它提供建立系统模型、选择仿真参数和数值算法、启动仿真程序对该系统进行仿真、设置不同的输出方式来观察仿真结果等功能。 启动simulink 之前必须首先运行MATLAB ,然后才能启动simulink 并建立系统模型。 启动simulink 过程: (1) 执行File →new ,在弹出的子菜单选Model ,进入Simulink 模型编辑窗口 (2)双击Simulink 模型编辑窗口主工具栏的 按 钮, 则打开Simulink 模 型库浏览器(Simulink Library Browser) 利用模型编辑窗口,可以通过鼠标的拖放操作创建一个模型。 三、实验内容 1.在Simulink 环境建立系统 的仿真模型(见图1),其中subsystem 为子系统进行封装,其内部结构见图2。 图1 系统仿真模型 ???≤≥=25 t ),t (u 1025t ),t (u 2)t (y

图2 subsystem子系统封装 系统参数设置如下: (1)模块参数 Sine Wave模块:采用simulink默认参数设置,即单位幅值、单位频率的正弦信号。 Relational Operator模块:其参数设置为“>” Switch模块:设定Switch模块的Threshold值为0.5 Clock模块:采用默认参数设置 (2)系统仿真参数设置 仿真开始时间设置为0,仿真停止时间设置为50,选择ode45算法 2、根据单相半波整流电路(如图3所示),在模型窗口中建立主电路仿真模型,并进行仿真。改变脉冲触发角α大小,观察负载电流、电压和晶闸管电流、电压波形。 图3 单相半波整流电路

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基本操作

实验二Simulink基本操作 一、实验目的 1、熟悉Simulink基本模块(信号发生器,数学模块,示波器)的使用。 2、掌握Simulink仿真参数的设置。 3、熟悉构建Simulink子系统。 4、学习自建模快的封装,帮助文档的编写。 5、掌握MATLAB命令窗口中运行Simulink。 二、实验指导原理 1、使用Simulink 启动MATLAB之后,在命令窗口中输入命令“Simulink”或单击MATLAB工具栏上的Simulink图标,打开Simulink 模块库窗口。在Simulink模块库窗口中单击菜单项“File | New | Model”,就可以新建一个Simulink 模型文件。利用鼠标单击Simulink基础库中的子库,选取所需模块,将它拖动到新建模型窗口中的适当位置,如果需要对模型模块进行参数设置和修改,只需选中模型文件中的相应模块,单击鼠标右键,弹出快捷菜单,从中选取相应参数进行修改。 2、MATLAB命令窗口中运行Simulink。 若参数设置为变量,变量可先在MATLAB命令窗口中进行定义,并使用open,sim等命令直接运行信号。 然后在命令行提示符下输入>> a=1;b=1;open('s01.mdl');sim('s01.mdl');可得到同样的结果. 3、子系统建立与封装 首先将Simulink模块库中Ports & Subsystems子模块库中的Subsystem模块拖动到新建的模型文件窗口中,双击该Subsystem模块就会打开该子系统,其输入用In模块表示,输出用Out模块表示,一个子系统可以有多个输入、输出。 三、实验内容 1、通过示波器观察1MHz,幅度为15mV 的正弦波和100KHz,幅度为5mV 的正弦波相乘的结果。写 出数学表达式。通过使用三踪示波器同时观察1MHz、100KHz 正弦波以及相乘的结果。注意设置仿真参 数和示波器的扫描参数和幅度显示参数。 下图2.11为实验乘法器电路原理图,图2.12为乘法器输出波形。 图2.11 乘法器原理电路图2.12 乘法器输出波形 2、将50Hz,有效值为220V 的正弦交流电信号通过全波整流(绝对值)模块,观察输出波形。 下图2.21为全波整流电路原理图,图2.22为全波整流输出波形。 图2.21 全波整流原理电路图2.22全波整流输出波形

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:实现具有一个采样周期的零阶保持

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