Simulink 第四章 基本模块介绍
MATLABsimulink模块简介
MATLABsimulink模块简介SIMULINK的模块库介绍SIMILINK模块库按功能进行分为以下8类子库:Continuous(连续模块)Discrete(离散模块)Function&Tables(函数和平台模块)Math(数学模块)Nonlinear(非线性模块)Signals&Systems(信号和系统模块)Sinks(接收器模块)Sources(输入源模块)连续模块(Continuous)continuous.mdlIntegrator:输入信号积分Derivative:输入信号微分State-Space:线性状态空间系统模型Transfer-Fcn:线性传递函数模型Zero-Pole:以零极点表示的传递函数模型Memory:存储上一时刻的状态值Transport Delay:输入信号延时一个固定时间再输出Variable Transport Delay:输入信号延时一个可变时间再输出离散模块(Discrete)discrete.mdlDiscrete-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.mdlFcn:用自定义的函数(表达式)进行运算MATLAB Fcn:利用matlab的现有函数进行运算S-Function:调用自编的S函数的程序进行运算Look-Up Table:建立输入信号的查询表(线性峰值匹配)Look-Up Table(2-D):建立两个输入信号的查询表(线性峰值匹配)数学模块(Math )math.mdlSum:加减运算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.mdlSaturation:饱和输出,让输出超过某一值时能够饱和。
SIMULINK基础详解
表10-6
通用模块及功能 模块名 功能 提供一个输入端口 地线,提供零电平 地线, 模块名 功能 提供一个输出端口 终止没有连接的输出 端口 示波器
生成一个常量值
选择开关
乘运算
比例运算 关系运算 饱和输出,让输出超 饱和输出, 过某一值时能够饱和
逻辑运算 积分器 数据类型转换
7、 信号路径模块库(signal routing) 、 信号路径模块库( ) 信号路径模块库提供了信号在模型中流动的各种路径通道 的选择,包括信号的分离、汇合以及通道选择等模块, 的选择,包括信号的分离、汇合以及通道选择等模块,如表 10-7所示: 所示: 所示
Simulink提供了大量的系统模功能模块,包括信号发生、 提供了大量的系统模功能模块,包括信号发生、 提供了大量的系统模功能模块 控制运算、显示等通用模块和很多专业性极强的专业模块, 控制运算、显示等通用模块和很多专业性极强的专业模块, 应用这些模块可以轻松实现各个学科的工程仿真和研发工作。 应用这些模块可以轻松实现各个学科的工程仿真和研发工作。 Simulink提供的系统功能模块的另一个大的特点是开放性强, 提供的系统功能模块的另一个大的特点是开放性强, 提供的系统功能模块的另一个大的特点是开放性强 可以将几个相关的模块组合成一个具体的子系统, 可以将几个相关的模块组合成一个具体的子系统,也可以自 己创建模块并将创建的新模块加入到系统模块库中供建模使 用。
6、 通用模块库(Commonly Used Blocks) 、 通用模块库( ) 通用模块库中提供了一般建模常用的模块,这些模块在 通用模块库中提供了一般建模常用的模块, 各自的分类模块库中均能找到,但为了使用方便, 各自的分类模块库中均能找到,但为了使用方便,特将一些 常用的模块集中起来组成了该库如表10-6所示: 所示: 常用的模块集中起来组成了该库如表 所示
SIMULINK模块介绍
SIMULINK模块介绍simulink模块介绍Simulink是一种基于模块化的工具,用于建立和仿真动态系统。
它是MATLAB的一个扩展模块,主要用于进行连续时间和离散时间系统的建模、仿真和分析。
Simulink的模块化设计使得用户可以通过简单地将各种模块连接在一起来构建复杂的系统模型。
Simulink提供了一个可视化的环境,让用户可以通过图形化方式来建立系统模型。
用户可以通过拖放不同的模块,如输入、输出、运算符等,来创建系统模型。
用户还可以通过调整模块的参数来定义系统的行为。
Simulink的模块库包含了各种各样的模块,用于建立各种类型的系统模型。
例如,Simulink提供了模块用于建立传感器和执行器的模型,模块用于建立控制器的模型,以及模块用于建立动力系统的模型等。
用户可以根据自己的需要选择合适的模块来创建系统模型。
Simulink还提供了丰富的仿真功能,使用户可以对系统模型进行仿真和分析。
用户可以设置模拟的时间范围、步长和求解器等参数,来执行仿真。
Simulink会根据用户设置的参数来计算系统模型在仿真时间范围内的行为,并将结果显示在仿真结果图中。
用户还可以在仿真过程中观察系统的动态行为,并进行数据分析。
Simulink还支持代码生成功能,可以将用户创建的系统模型转换为可执行的代码。
用户可以选择不同的目标平台,如嵌入式系统、实时系统等,来生成相应的代码。
生成的代码可以直接用于控制硬件设备,例如实现自动驾驶等应用。
除了基本的建模和仿真功能外,Simulink还提供了许多高级功能,用于更复杂的系统分析和设计。
例如,Simulink提供了参数优化功能,用户可以根据给定的性能指标来优化系统模型的参数。
Simulink还提供了系统辨识功能,可以从实际系统的输入输出数据中,估计出系统的动态模型。
Simulink还可以与其他工具进行集成,如MATLAB、Stateflow等,进一步扩展系统建模和仿真的功能。
Simulink第四章基本模块介绍
F1
m
Sine Wave
x 1 x 1 x
s
s
Scope
40
35
30
25
20
15
10
5
0
-5
0
2
4
6
8 10 12 14 16 18 20
x k c
m x c x k 0 , x x ( 0 ) 0 . 2 ,x ( 0 ) 0 m 0 .5 , k 1 , c 0 .05
动力方程变换为:
from Cotinuous 模块库
X(s) F(s)
ms2
1 c
sk
Y(s) n0sn1 U(s) d0s2d1sd2
双击
Transfer Fcn模 块
Parameters Numerator:[0 1] Denominator:[1 2 2]
2021/6/11
见文件TransferFcn.mdl
2021/6/11 5
理论力学CAI 章名
3)调试器输出窗口
Outputs : 输出调试结果,如调试时刻、调试的模块及模块输 入输出
Execution order: 输出调试过程中的各模块的执行顺序
Status:输出调试状态,如当前仿真时间、缺省调试命令、调试 断点设置以及断点数等状态信息
系统调试举例
其中,x(t) 为系统的广义坐标;m、k、c 分别为单自由度系统的广义质量 、广义刚度、阻尼系数;F 为系统的外部输入。这些变量都是标量。
2021/6/11 30
理论力学CAI 章名
如果令:
Y (t)
x(t) x(t)
以 x(t ) 和 x(t ) 构成的空
间即为状态空间。
simulink 常用模块解释 -回复
simulink 常用模块解释-回复Simulink是一款由MathWorks公司开发的基于模型的设计和仿真环境,广泛应用于系统建模、仿真和设计。
Simulink的强大之处在于它提供了一系列常用模块,这些模块可以构建模型并模拟各种复杂系统的行为。
在本文中,我将为您介绍一些Simulink中常用的模块,并逐步详细解释它们的功能和应用。
1. Gain模块:Gain模块用于指定信号的增益系数。
它可以根据输入信号的幅值对信号进行缩放或放大。
Gain模块在控制系统设计和信号处理中经常使用,例如可以用来放大或缩小控制信号或者调整系统的增益。
2. Sum模块:Sum模块用于对输入信号进行求和操作。
它可以实现多个输入信号的相加,并输出它们的和。
Sum模块在控制系统中的控制逻辑实现、滤波器设计和信号处理中经常使用,例如可以用来实现控制器的误差计算。
3. Product模块:Product模块用于对输入信号进行乘法操作。
它可以实现多个输入信号的相乘,并输出它们的积。
Product模块在控制系统和信号处理中广泛应用,例如可以用来实现控制器的输出计算或者信号的调制。
4. Integrator模块:Integrator模块用于对输入信号进行积分操作。
它可以实现对输入信号积分并输出积分结果。
Integrator模块在控制系统设计和信号处理中常常使用,例如可以用来实现低通滤波器或者计算控制系统的状态变量。
5. Derivative模块:Derivative模块用于对输入信号进行微分操作。
它可以实现对输入信号的微分运算并输出微分结果。
Derivative模块在控制系统设计和信号处理中经常使用,例如可以用来实现对输入信号的速度或加速度测量。
6. Saturation模块:Saturation模块用于对输入信号进行限幅操作。
它可以设置输入信号的上下限,并限制信号在这个范围内。
Saturation模块在控制系统和信号处理中广泛应用,例如可以用来限制控制器的输出或者对信号进行幅值调整。
simulink各模块中文详解
simulink各模块中文详解Simulink是一种基于模块化建模方式的仿真软件,它可以用来进行系统级的设计、建模和仿真。
Simulink提供了丰富的模块库,包括信号处理、控制系统、通信系统等各个领域的模块,这些模块可以通过连接线连接起来,构成一个完整的系统模型。
在Simulink中,每个模块都有特定的功能和参数设置,下面我们将对Simulink的一些常用模块进行中文详解。
一、信号源模块信号源模块是Simulink中最基础的模块之一,它用于生成各种不同类型的信号。
常见的信号源模块包括正弦波信号源、方波信号源、脉冲信号源等。
这些信号源模块可以设置信号的幅值、频率、起始时间等参数,用于模拟各种不同的输入信号。
二、数学运算模块数学运算模块用于进行各种数学运算,比如加法、减法、乘法、除法等。
Simulink提供了各种数学运算模块,包括加法器、乘法器、除法器等。
这些模块可以对输入信号进行各种数学运算,生成输出信号。
三、滤波器模块滤波器模块用于对信号进行滤波处理,常见的滤波器模块包括低通滤波器、高通滤波器、带通滤波器等。
这些模块可以通过设置滤波器的截止频率、阶数等参数,对输入信号进行滤波,去除不需要的频率成分,得到所需的输出信号。
四、控制系统模块控制系统模块用于建立和仿真各种控制系统,包括PID控制器、状态空间模型、传递函数模型等。
这些模块可以通过设置控制器的参数,对输入信号进行控制,使系统输出达到期望值。
五、状态空间模块状态空间模块用于建立和仿真线性时不变系统的状态空间模型。
状态空间模型描述了系统的状态变量和输入输出关系,可以通过状态空间模块进行系统的分析和控制。
六、通信系统模块通信系统模块用于建立和仿真各种通信系统,包括调制解调器、信道模型、误码率计算器等。
这些模块可以模拟通信系统的发送、传输和接收过程,对信号进行调制解调、传输信道建模等操作。
七、数据存储模块数据存储模块用于存储和读取仿真过程中的数据,包括存储器、查找表、文件读写模块等。
Simulink 第四章 基本模块介绍
ITSM / ITIL
若要求同时输出位移和速度,则模型框图为:
F 1 x 1 x 1 x
m
s
s
Sine Wave
Scope
40
35
30
25
20
15
10
5
0
0
2
4
6
8
Copyright © Sino-i Technology Limited All rights reserved
10 12 14 16 18 20
Sino-i Technology Ltd.
ITSM / ITIL
1. 增益模块
作用:使增益模块的输入信号乘以一个常数,并输出。
增益模块用代数表达式可表示为:
y(t) = k x(t)
可用简图表示如下:
x(t) k
y(t)
增益模块
k Gain
Simulink 增义模块图
注意:y(t)、x(t)、k 可以为标量、向量或矩阵。看如下算例。
2020年6月5 日理论力学CAI 章名 Copyright © Sino-i Technology Limited All rights reserved
3
Sino-i Technology Ltd.
ITSM / ITIL
2. 调试器的操作设置与功能 1)Simulink调试器工具栏命令功能: 执行至下一个模块; 执行至下一个时间步; 开始调试或继续运行仿真至下一个断点; 终止调试过程; 在当前选择的模块之前设置断点; 执行时显示当前选择模块的输入输出; ? 调试帮助;
在 Simulink中,用来模拟连续系统的基本模块有四个: 增益模块,求和模块,微分模块,积分模块。任何可以用线 性微分方程描述的系统都可以用这四个基本模块进行模拟。 除了这四个基本模块,传递函数模块也经常用来模拟物理系 统和控制器。
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 的绘图命令来处理,也可以用其他绘图软件画出更漂亮的图形。
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零极点模型2、非连续模块(Discontinuous)(1) Backlash间隙非线性(2) Coulomb&Viscous Friction库仑和粘度摩擦非线性(3) Dead Zone死区非线性(4)Dead Zone Dynamic动态死区非线性(5) Hit Crossing冲击非线性(6) Quantizer量化非线性(7) Rate Limiter静态限制信号的变化速率(8) Rate Limiter Dynamic动态限制信号的变化速率(9) Relay滞环比较器,限制输出值在某一范围内变化(10) Saturation饱和输出,让输出超过某一值是能够饱和(11) Saturation Dynamic动态饱和输出(12) Wrap To Zero3、离散模块(Discrete)(1) Difference差分环节(2) Discrete Derivative 离散微分环节(3) Discrete Filter 离散滤波器(4) Discrete State-Space 离散状态空间系统模型(5) Discrete Transfer Fcn 离散传递函数模型(6) Discrete Zero-Pole 以零极点表示的离散传递函数模型(7) Discrete-Time Integrator 离散时间积分器(8) First-Order Hold 一阶保持器(9) Integer Delay 整数被延迟(10) Memory 输出本模块上一步的输入值(11) Tapped Delay 延迟(12) Transfer Fcn First Order 离散一阶传递函数(13) Transfer Fcn Lead or Lag 传递函数(14) Transfer Fcn Real Zero 离散零点传递函数(15) Unit Delay 一个采样周期的延时(16) Weighted Moving Average 权值移动平均模型(17) Zero-Order Hold 零阶保持器4、逻辑和位操作模块(Logic and Bit Operation)(1) Bit Clear 位清零(2) Bit Set 位置位(3) Bitwise Operator 逐位操作(4) Combinatorial Logic 组合逻辑(5) Compare To Constant 和常量比较(6) Compare To Zero 和零比较(7) Detect Change 检测跳变(8) Detect Decrease 检测递减(9) Detect Fall Negative 检测负上升沿(10) Detect Fall Nonpositive 检测非负下降沿(11) Detect Increase 检测递增(12) Detect Rise Nonnegative 检测非负上升沿(13) Detect Rise Positive 检测正上升沿(14) Extract Bits 提取位(15) Interval Test 检测开区间(16) Interval Test Dynamic 动态检测开区间(17) Logical Operator 逻辑操作符(18) Relational Operator 关系操作符(19) Shift Arithmetic 移位运算5、查找表模块(Lookup Table)(1) Cosine 余弦函数查询表(2) Direct Lookup Table (n-D) n个输入信号的查询表(直接匹配)(3) Interpolation (n-D) using PreLookup n个输入信号的预插值(4) Lookup Table 输入信号的查询表(线性峰值匹配)(5) Lookup Table (2-D) 两维输入信号的查询表(线性峰值匹配)(6) Lookup Table (n-D) n维输入信号的查询表(线性峰值匹配)(7) Lookup Table Dynamic 动态查询表(8) PreLookup Index Search 预查询索引搜索(9) Sine 正弦函数查询表6.数学模块(Math Operations)(1) Abs 取绝对值(2) Add 加法(3) Algebraic Constraint 代数约束(4) Assignment 赋值(5) Bias 偏移(6) Complex to Magnitude-Angle 由复数输入转为幅值和相角输出(7) Complex to Real-Imag 由复数输入转为实部和虚部输出(8) Divide 除法(9) Dot Product 点乘运算(10) Gain 比例运算(11) Magnitude-Angle to Complex 由幅值和相角输入合成复数输出(12) Math Function 包括指数函数、对数函数、求平方、开根号等常用数学函数(13) Matrix Concatenation 矩阵级联(14) MinMax 最值运算(15) MinMax Running Resettable 最大最小值运算(16) Polynomial 多项式(17) Product 乘运算(18) Product of Elements 元素乘运算(19) Real-Imag to Complex 由实部和虚部输入合成复数输出(20) Reshape 取整(21) Rounding Function 舍入函数(22) Sign 符号函数(23) Sine Wave Function 正弦波函数(24) Slider Gain 滑动增益(25) Subtract 减法(26) Sum 求和运算(27) Sum of Elements 元素和运算(28) Trigonometric Function 三角函数,包括正弦、余弦、正切等(29) Unary Minus 一元减法(30) Weighted Sample Time Math 权值采样时间运算7、模型检测模块(Model Verification)(1) Assertion 确定操作(2) Check Discrete Gradient 检查离散梯度(3) Check Dynamic Gap 检查动态偏差(4) Check Dynamic Lower Bound 检查动态下限(5) Check Dynamic Range 检查动态范围(6) Check Dynamic Upper Bound 检查动态上限(7) Check Input Resolution 检查输入精度(8) Check Static Gap 检查静态偏差(9) Check Static Lower Bound 检查静态下限(10) Check Static Range 检查静态范围(11) Check Static Upper Bound 检查静态上限8、模型扩充模块(Model-Wide Utilities)(1) Block Support Table 功能快支持的表(2) DocBlock 文档模块(3) Model Info 模型信息(4) Timed-Based Linearization 时间线性分析(5) Trigger-Based Linearization 触发线性分析9、端口和子系统模块(Prot & Subsystems)(1) Configurable Subsystem 结构子系统(2) Atomic Subsystem 单元子系统(3) CodeReuseSubsystem 代码重用子系统(4) Enable 使能(5) Enabled and Triggered Subsystem 使能和触发子系统(6) Enabled Subsystem 使能子系统(7) For Iterator Subsystem 重复操作子系统(8) Function-Call Generator 函数响应生成器(9) Function-Call Subsystem 函数响应子系统(10) If 假设操作(11) If Action Subsystem 假设动作子系统(12) In1 输入端口(13) Model 模型(14) Out1 输出端口(15) Subsystem 子系统(16) Subsystem Examples 子系统例子(17) Switch Case 转换事件(18) Switch Case Action Subsystem 转换事件子系统(19) Trigger 触发操作(20) Triggered Subsystem 触发子系统(21) While Iterator Subsystem 重复子系统10、信号属性模块(Signal Attributes)(1) Data Type Conversion 数据类型转换(2) Data Type Conversion Inherited 继承的数据类型转换(3) Data Type Duplicate 数据类型复制(4) Data Type Propagation 数据类型继承(5) Data Type Propagation Examples 数据类型继承例子(6) Data Type Scaling Strip 数据类型缩放(7) IC 信号输入属性(8) Probe 探针点(9) Rate Transition 比率变换(10) Signal Conversion 信号转换(11) Signal Specification 信号特征说明(12) Weighted Sample Time 权值采样时间(13) Width 信号带宽11、信号路线模块(Signal Routing)(1) Bus Assignment 总线分配(2) Bus Creator 总线生成(3) Bus Selector 总线选择(4) Data Store Memory 数据存储(5) Data Store Read 数据存储读取(6) Data Store Write 数据存储写入(7) Demux 将一个复合输入转化位多个单一输出(8) Environment Controller 环境控制器(9) From 信号来源(10) Goto 信号去向(11) Goto Tag Visibility 标签可视化(12) Index Vector 索引向量(13) Manual Switch 手动选择开关(14) Merge 信号合并(15) Multiport Switch 多端口开关(16) Mux 将多个单一输入转化为一个复合输出(17) Selector 信号选择器(18) Switch 开关选择,当第二输入端大于临界值时,输出由第一个输入端而来,否则输出由第三输入端而来(1) Display 数字显示器(2) Floating Scope 浮动观察器(3) Out1 输出端口(4) Scope 示波器(5) Stop Simulation 仿真停止(6) Terminator 连接到没有连接到的输出端(7) To File 将输出数据写入数据文件保存(8) To Workspace 将输出数据写入Matlab的工作空间(9) XY Graph 显示二维图形(1) Band-Limited White Noise 带限白噪声(2) Chirp Signal 产生一个频率不断增大的正弦波(3) Clock 显示和提供仿真时间(4) Constant 常数信号(5) Counter Free-Running 无限计数器(6) Counter Limited 有限计数器(7) Digital Clock 在规定的采样间隔产生仿真时间按(8) From File 来自数据文件(9) From Workspace 来自Matlab的工作空间(10) Ground 连接到没有连接到的输入端(11) In1 输入信号(12) Pulse Generator 脉冲发生器(13) Ramp 斜坡信号输入(14) Random Number 产生正态分布的随机数(15) Repeating Sequence 产生规律重复的任意信号(16) Repeating Sequence Interpolated 重复序列内插值(17) Repeating Sequence Stair 重复阶梯序列(18) Signal Builder 信号创建器(19) Signal Generator 信号发生器,可以产生正弦波、方波、锯齿波及任意波形(20) Sine Wave 正弦波信号(21) Step 阶跃信号(22) Uniform Random Number 一致随机数14、用户自定义函数模块(User-Defined Functions)(1) Embedded MATLAB Function 嵌入的Matlab函数(2) Fcn 用自定义的函数(表达式)进行运算(3) Level-2 M-file S-Function M文件编写的S函数(4) MATLAB Fcn 利用Matlab的现有函数进行运算(5) S-Function 调用自编的S函数程序进行运算(6) S-Function Builder S函数建立器(7) S-Function Examples S函数例子15、Additional Math & Discrete(1) Additional Discrete(2) Additional Math: Increment – Decrement综合。
SIMULINK的模块介绍
SIMULINK的模块介绍1.信号生成模块:这些模块可用于生成不同类型的信号,包括正弦波、脉冲信号、阶跃信号、随机信号等。
通过这些模块,用户可以快速生成自定义的输入信号,用于系统仿真。
2.信号处理模块:这些模块提供了一系列用于信号处理的工具和算法。
例如,滤波器模块可以用于通过滤波器来处理输入信号;傅里叶变换模块可以用于对信号进行频域分析等。
3.系统建模模块:这些模块用于构建系统的数学模型。
用户可以使用这些模块来定义系统的输入、输出、状态等变量,并构建模型方程。
常见的模型包括微分方程模型、状态空间模型等。
4.控制系统设计模块:这些模块用于设计和分析控制系统。
用户可以使用这些模块来设计PID控制器、状态反馈控制器、模糊控制器等,并通过系统的仿真结果来评估和比较不同的控制策略。
5.仿真环境:SIMULINK提供了一个交互式的仿真环境,用户可以在仿真环境中对系统模型进行仿真,观察系统的动态行为。
同时,还可以对系统参数进行调整,以优化系统性能。
6.数据可视化模块:这些模块用于将仿真结果以图形化的形式显示出来。
用户可以使用这些模块绘制系统的输入、输出、状态等变量的曲线图,并对仿真结果进行分析和比较。
7.代码生成模块:SIMULINK还提供了代码生成工具,用户可以将系统模型转换为C语言或其他语言的代码,并在硬件平台上运行。
这使得SIMULINK成为嵌入式系统开发中的重要工具。
总之,SIMULINK提供了一个功能强大的模块化仿真环境,用户可以利用这些模块构建复杂系统的模型,并进行仿真、分析和设计。
通过SIMULINK,用户可以更加直观地理解系统的行为,优化系统的性能,并加速系统开发过程。
它在控制系统设计、信号处理、通信系统设计等领域有着广泛的应用。
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 微分模块,输出为输入信号的微分。
simulink 常用模块解释
simulink 常用模块解释Simulink是一种常用的软件工具,用于建模、仿真和分析动态系统。
它通常与MATLAB配合使用,提供了一种图形化的方法,使工程师和科学家能够更容易地设计和测试各种控制系统。
下面是几个常用的Simulink模块的解释:1.信号发生器(Block: Signal Generator)信号发生器模块用于生成各种类型的信号,例如正弦波、方波、锯齿波等。
用户可以通过设置频率、振幅、相位等参数来生成所需的信号。
2.积分器(Block: Integrator)积分器模块用于对输入信号进行积分操作。
它可以将一个输入信号的积分值作为输出,对于需要进行累加操作的系统建模非常有用。
3.微分器(Block: Derivative)微分器模块用于对输入信号进行微分操作。
它可以将输入信号的导数作为输出,对于需要对信号变化率进行建模和分析的系统非常有用。
4.增益(Block: Gain)增益模块用于对输入信号进行比例缩放操作。
用户可以通过设置增益参数来放大或缩小输入信号的幅度。
5.触发器(Block: Trigger)触发器模块用于在满足一定条件时触发或延迟系统的某些操作。
例如,当一个信号超过某个阈值时,触发器可以将相应的操作信号输出。
6.多路选择器(Block: Selector)多路选择器模块用于从多个输入信号中选择一个输出信号。
用户可以通过设置选择参数来指定要选择的输入信号。
以上仅是Simulink中的一些常用模块。
这些模块可以根据特定的系统需求被组合在一起,以建立复杂的控制系统、信号处理系统或其他动态系统的模型。
通过使用Simulink,工程师和科学家可以更方便地进行系统设计和分析,并进行仿真来验证其性能。
Simulink基本模块介绍
k
增益模块
y(t)
k Gain
Simulink 增义模块图
注意:y(t)、x(t)、k 可以为标量、向量或矩阵。
来自Sinks库
10 Display
标量乘积:
来自Sources库
2 5 Constant Gain
标量和向量的乘积
⎡1 ⎤ ⎡ 2 ⎤ 2× ⎢ ⎥ = ⎢ ⎥ ⎣ 2⎦ ⎣ 4⎦
x' = Ax+Bu y = Cx+Du Scope State-Space
说明:对于本算例,因为考虑 的是没有外部输入的自由振动 ,因此状态空间模块可以没有 左端输入。
0.2 0.15 0.1 0.05 0 -0.05 -0.1 -0.15 -0.2
说明:左图是取C=[1,0]时 的结果。若取C=[1,1],则 在 Scope 的 图 形 中, 将显 示出位移和速度数据叠加 后的数据的图形。 示波器输出为y的图形
0
2
4
6
8
10
12
14
16
18
20
k c
x
& m&& + cx + kx = 0, x(0) = 0.2, x(0) = 0 x & m = 0.5, k = 1, c = 0.05
c k && = − x − x & x m m
0.2 0.15 0.1
动力方程变换为:
0.05 1 && = − & x x− x 0.5 0.5
⎡ x⎤ y = [1, 1]⎢ ⎥ & ⎣ x⎦
0 5 10 15 20 25 30
simulink模块介绍
simulink模块介绍名称Derivative Integrator State-Space Transfer Fcn Transport DelayVariable Transport Delay Zero-Pole名称BacklashCoulomb&Viscous FrictionDead ZoneDead Zone DynamicHit CrossingQuantizerRate LimiterRate Limiter DynamicRelaySaturationSaturation DynamicWrap To Zero名称DifferenceDiscrete DerivativeDiscrete FilterDiscrete State-SpaceDiscrete Transfer-FcnDiscrete Zero-PoleDiscrete-time IntegratorFirst-Order HoldInteger DelayMemoryTapped DelayTransfer Fcn First OrderTransfer Fcn Lead or LagTransfer Fcn Real ZeroUnit DelayWeighted Moving AverageZero –Order Hold名称Bit ClearBit SetBitwise OperatorCombinatorial LogicCompare To Constant3.离散模块Discrete4.逻辑和位操作模块Logic and Bit Operations功能说明位清零位置位逐位操作组合逻辑和常量比较离散一阶传递函数传递函数离散零点传递函数一个采样周期的延迟权值移动平均模型零阶保持器以零极点表示的离散传递函数模型离散时间积分器一阶保持器整数被延迟输出本模块上一步的输入值延迟功能说明差分环节离散微分环节离散滤波器离散状态空间系统模型离散传递函数模型滞环比较器,限制输出值在某一范围内变化饱和输出,让输出超过某一值时能够饱和动态饱和输出还零非线性 2.非连续模块Discontinuous动态死区非线性功能说明冲击非线性量化非线性静态限制信号的变化速率动态限制信号的变化速率把输入信号按给定的时间做延时把输入信号按一个可变的时间做延时零—极点增益模型间隙非线性库仑和黏度摩擦非线性死区非线性1.连续模块Continuous功能说明微分环节积分环节状态方程模型传递函数模型Compare To ZeroDetect ChangeDetect DecreaseDetect Fall Negative Detect Fall Nonpositive Detect Increase Detect Rise Nonnegative Detect Rise Positive Extract BitsInterval TestInterval Test Dynamic Logical Operator Relational Operator Shift Arithmetic名称CosineDirect Lookup Table (n-D) Interpolation(n-D) using PreLookupLookup TableLookup Table(2-D)Lookup Table(n-D)Lookup Table Dynamic PreLookup Index Search Sine名称AbsAddAlgebraic Constraint AssignmentBiasComplex to Magnitude-Angle Complex to Real-Imag Divide Dot ProductGainMagnitude-Angle to Complex Math FunctionMatrix Concatenation MinMaxMinMax Running Resettable PolynomialProductProduct of Elements Real-Imag to Complex ReshapeRounding Function元素乘运算由实部和虚部输入合成复数输出取整舍入函数包括指数函数、对数函数、求平方、开根号等常用数学函数矩阵级联最值运算最大最小值运算多项式乘运算由复数输入转为幅值和相角输出由复数输入转为实部和虚部输出除法点乘运算比例运算由幅值和相角输入合成复数输出功能说明取绝对值加法代数约束赋值偏移输入信号的查询表(线性峰值匹配)两维输入信号的查询表(线性峰值匹配)N维输入信号的查询表(线性峰值匹配)动态查询表预查询索引搜索正弦函数查询表关系操作符移位运算功能说明余弦函数查询表N个输入信号的查询表(直接匹配)N个输入信号的预插值检测非负上升沿检测正上升沿提取位检测开区间动态检测开区间逻辑操作符和零比较检测跳变检测递减检测负下降沿检测非负下降沿检测递增5.查找表模块Lookup Table6.数学模块Math OperationsSignSine Wave Function Slider Gain Subtract Sum Sum of ElementsTrigonometric Function Unary Minus Weighted Sample Time Math UnEm Fc M-MA S-S-S-权值采样时间运算滑动增益减法求和运算元素和运算三角函数一元减法符号函数正弦波函数名称AssertionCheck Discrete GradientCheck Dynamic GapCheck Dynamic Lower BoundCheck Dynamic RangeCheck Dynamic Upper BoundCheck Input ResolutionCheck Static GapCheck Static Lower BoundCheck Static RangeCheck Static Upper Bound名称Block Support TableDocBlockModel InfoTimed-Based LinearizationTrigger-Based Linearization名称Configurable SubsystemAtomic SubsystemCodeReuseSubsystemEnableEnabled and Triggered Subsystem Enabled Subsystem For Iterator SubsystemFunction-Call GeneratorFunction-Call SubsystemIfIf Action SubsystemIn1ModelOut1SubsystemSubsystem ExamplesSwitch CaseSwitch Case Action SubsystemTriggerTriggered SubsystemWhile Iterator Subsystem名称Data Type ConversionData Type Conversion Inherited Data Type DuplicateData Type Propagation子系统例子数据类型转换10.信号属性模块Signal Attributes功能说明函数响应子系统假设操作假设动作子系统模型输出端口子系统代码重用子系统使能使能和触发子系统使能子系统重复操作子系统函数响应生成器文档模块模型信息时间线性分析触发线性分析结构子系统单元子系统9.端口和子系统模块Ports&Subsystems功能说明检查输入精度检查静态偏差检查静态下限检查静态范围检查静态上限功能块支持的表功能说明8.模型扩充模块Model-Wide Utilities7.模型检测模块Model Verification功能说明确定操作检查离散梯度检查动态偏差检查动态下限检查动态范围检查动态上限数据类型复制数据类型继承转换事件子系统触发操作触发子系统重复子系统输入端口继承的数据类型转换转换事件Data Type Propagation Examples Data Type Scaling StripICProbeRate TransitionSignal ConversionSignal Specification Weighted Sample Time Width 名称Bus AssignmentBus CreatorBus SelectorData Store MemoryData Store ReadData Store WriteDemuxEnvironment Controller FromGotoGoto Tag Visibility Index VectorManual SwitchMergeMultiport SwitchMuxSelectorSwitch名称DisplayFloating ScopeOut1ScopeStop Simulation TerminatorTo File(.mat)To WorkspaceXY Graph名称Band-Limited White Noise Chirp SignalClockConstantCounter Free-Running Counter Limited 探针点总线选择数据存储数据存储读取11.信号线路模块Signal Routing功能说明数据类型继承例子数据类型缩放信号输入属性数据存储写入将多个单一输入转化为一个复合输出浮动观察器13.输入源模块Sources手动选择开关信号合并多端口开关12.接收器模块Sinks将一个复合输入转化为多个单一输出环境控制器信号来源信号去向标签可视化索引向量显示二维图形输出端口示波器仿真停止连接到没有连接到的输出端信号转换信号特征说明权值采样时间信号宽度总线分配总线生成将输出数据写入数据文件保护将输出数据写入MATLAB的工作空间无限计数器有限计数器功能说明带限白噪声产生一个频率不断增大的正弦波显示和提供仿真时间常数信号比率转换信号选择器开关选择,当第二个输入端大于临界值时,输出由第一个输入端而来,否则输出由第三个输入端而来功能说明数字显示器Digital ClockFrom File(.mat)From WorkspaceGroundIn1Pulse GeneratorRampRandom NumberRepeating SequenceRepeating Sequence Interpolated Repeating Sequence StairSignal BuilderSignal GeneratorSine WaveStepUniform Random Number名称Embedded MATLAB Function FcnM-file S-Function MATLAB FcnS-FunctionS-Function BuilderS-Function Examples 一致随机数重复序列内插值重复阶梯序列信号创建器信号发生器,可产生正弦、方波、锯齿波及随意波正弦波信号阶跃信号连接到没有连接到的输入端产生规律重复的任意信号S函数例子用自定义的函数(表达式)进行运算M文件编写的S函数利用MATLAB的现有函数进行运算调用自编的S函数的程序进行运算输入信号脉冲发生器斜坡输入产生正态分布的随机数在规定的采样间隔产生仿真时间来自数据文件来自MATLAB的工作空间功能说明嵌入的MATLAB函数S函数建立器14.用户自定义函数模块User-Defined Functions。
Simulink中的模块
Simulink 中的模块一:连续模块库(Continuous)1.积分模块(Integrator):功能:对输入变量进行积分。
说明:模块的输入可以是标量,也可以是矢量;输入信号的维数必须与输入信号保持一致。
2. 微分模块(Derivative)功能:通过计算差分A u/A t 近似计算输入变量的微分。
功能:用于建立一个预先指定的零点、极点,并用延迟算子s 表示的连续。
7.传输延迟模块(TransportDelay) 功能:用于将输入端的信号延迟指定的时间后再传输给输出信号8. 可变传输延迟模块(VariableTransportDelay) 功能:用于将输入端的信号进行可变时间的延迟。
二:离散模块库(Discrete)1 •零阶保持器模块(Zero-Order-Hold)功能:在一个步长内将输出的值保持在同一个值上。
2 .单位延迟模块(UnitDelay)功能:将输入信号作单位延迟,并且保持一个采样周期相当于时间算子z -1。
3•离散时间积分模块(DiscreteTimeIntegrator)功能:在构造完全离散的系统时,代替连续积分的功能。
使用的积分方法有:向前欧拉法向后欧拉法、梯形法。
6•离散传递函数模块(DiscreteTransferFcn)3. 线性状态空间模块(State-Space) 功能:用于实现以下数学方程描述的系统4. 传递函数模块(TransferFen) 功能:用执行一个线性传递函数。
5. 零极点传递函数模块(Zero-Pole)Ax y =Cx +Bu +Du4 •离散状态空间模块(DiscreteStateSpace)'功能:用于实现如下数学方程描述的系统:<5 •离散滤波器模块(DiscreteFilter) x[(n +1)T]=Ax(nT)+Bu(nT) 功能:用于实现无限脉冲响应(IIR )和有限脉冲响应T R)的数C 滤波器。
)+Du (nT )功能:用于执行一个离散传递函数。
SIMULINK模块介绍
SIMULINK模块介绍SIMULINK是一款由MathWorks公司开发的仿真软件,它是MATLAB软件的一个附属工具箱。
SIMULINK提供了一个可视化的建模环境,用户可以通过图形化方式搭建模型,并进行仿真和分析。
SIMULINK模块是SIMULINK软件中的一些组件,可以帮助用户进行系统建模、仿真和控制设计。
本文将介绍SIMULINK中的一些常用模块。
1.数学运算与逻辑模块:这些模块包括常见的数学运算符(加减乘除、幂运算、取余等)和逻辑运算符(与、或、非等),可以用于进行数据运算和逻辑判断。
在建模过程中,通过连接这些模块,用户可以实现各种数学运算和逻辑控制,从而实现复杂的系统行为。
2.信号生成器模块:这些模块包括常见的信号发生器(正弦波、方波、脉冲等)和信号生成器(连续或离散的步进信号),可以生成各种基本信号。
用户可以使用这些模块来生成输入信号,用于系统的仿真和测试。
3.数值源与作用器模块:这些模块用于输入和输出数值。
数值源模块可以用于指定模型的初始值,或者作为参数输入到仿真模型中。
作用器模块用于将仿真模型的输出结果传递给其他系统或模型进行实时控制。
4.状态空间模块:这些模块用于描述系统的状态空间方程。
用户可以将系统的状态空间表达式输入到这些模块中,然后连接其他模块进行模型的搭建和仿真。
5.运动控制模块:这些模块用于实现对物体的运动控制。
例如,用户可以使用PID控制器模块对电机进行速度或位置控制,或者使用运动传感器模块来实时监测物体的位置和速度。
6.信号处理模块:这些模块用于对信号进行采样、处理和分析。
用户可以使用滤波器模块对输入信号进行滤波操作,或者使用频谱分析模块对信号的频谱进行分析。
7.光学模块:这些模块用于光学系统的建模和分析。
例如,用户可以使用光学元件模块来描述光学系统中的镜头、透镜等元件,或者使用光传输模块来模拟光束在系统中的传输和传播。
8.通信模块:这些模块用于通信系统的建模和仿真。
simulink基本模块的使用
simulink基本模块的使用Simulink是一种强大的仿真和建模工具,常用于开发控制系统、信号处理和通信系统等。
本文将一步一步介绍Simulink的基本模块的使用,并讨论它们在不同领域中的应用。
一、Simulink基础知识在开始介绍基本模块之前,我们需要了解Simulink的一些基础知识。
Simulink是MATLAB软件的一个附加模块,用于建立模型以及执行仿真。
Simulink模型是由各种模块组成的,这些模块通过连线连接在一起,形成一个图形化的仿真模型。
它使用图形化界面,使用户能够直观地构建和修改模型。
二、Simulink基本模块1. 恒定值(constant)模块:恒定值模块用于生成恒定的信号,其输出值不会改变。
在模型中,我们可以通过恒定值模块设置输入信号的初始值、幅值以及一些其他属性。
该模块常用于生成常数信号,如直流电压或恒定的参考信号。
2. 脉冲(gain)模块:脉冲模块将输入信号的幅值乘以一个常数增益,然后输出结果。
通过改变增益系数,可以调整输出信号的幅值。
该模块常用于放大或缩小信号的幅值。
3. 积分器(integrator)模块:积分器模块对输入信号进行积分,并输出积分值。
积分器模块用于对信号进行数值积分操作,可用于控制系统中的积分环节,如PID控制器中的积分环节。
4. 微分器(derivative)模块:微分器模块对输入信号进行微分计算,并输出结果。
微分器模块适用于需要对信号进行微分操作的场景,如滤波器设计和导数控制器。
5. 比例积分微分(PID)控制器模块:PID控制器模块是Simulink中非常重要的一个模块,它结合了前面介绍的比例、积分和微分模块,实现了闭环控制。
PID控制器模块根据输入信号和误差信号生成控制信号,以实现期望输出。
该模块在自动控制系统中应用广泛。
6. 转换器(Switch)模块:转换器模块根据输入信号的值和条件判断,选择输出信号的路径。
该模块可以用于实现逻辑判断,选择不同的信号传递路径。
Simulink模块库简介(4)
Simulink模块库简介(4)Simulink模块库简介(4)标签: MATLAB笔记 2006-10-08 09:423. 离散模块(Discrete)在Simulink基本模块中选择“Discrete”后,单击便看到如图6.17所示的离散模块,它包括以下子模块。
●Difference:差分环节;●Discrete Derivative:离散微分环节;●Discrete Filter:离散滤波器;●Discrete State-Space:离散状态空间系统模型;●Discrete Transfer-Fcn:离散传递函数模型;●Discrete Zero-Pole:以零极点表示的离散传递函数模型;●Discrete-time Integrator:离散时间积分器;●First-Order Hold:一阶保持器;●Integer Delay:整数被延迟;●Memory:输出本模块上一步的输出值;●Tapped Delay:延迟;●Transfer Fcn First Order:离散一阶传递函数;●Transfer Fcn Lead or Lag:传递函数;●Transfer Fcn Real Zero:离散零点传递函数;●Unit Delay:一个采样周期的延迟;●Weighted Moving Average:权值移动平均模型;●Zero-Order Hold:零阶保持器;4. 逻辑和位操作模块(Logic and Bit Operations)在Simulink基本模块中选择Logic and Bit Operations后,单击便看到如图6.18所示的逻辑和位操作模块,它包括以下子模块:●Bit Clear:位清零;●Bit Set:位置位;●Bitwise Operator:逐位操作;●Combinatiorial Logic:组合逻辑;●Compare To Constant:和常量比较;●Compare To Zero:和零比较;●Detect Change:检测跳变;●Detect Decrease:检测递减;●Detect Fall Negative:检测负下降沿;●Detect Fall Nonpositive:检测非负下降沿;●Detect Increease:检测递增;●Detect Rise Nonnegative:检测非负上升沿;●Detect Rise Positive:检测正上升沿;●Extract Bits:提取位;●Interval Test:检测开区间;●Interval Test Dynamic:动态检测开区间;●Logical Operatior:逻辑操作符;●Relational Operator:关系操作符;●Shift Arithmetic:移位运算。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
F && = x m
可用模块图表示为: 可用模块图表示为
加入两个积分模块,第一个模块用来计 加入两个积分模块 , 算速度,第二个模块用来计算位移: 算速度,第二个模块用来计算位移:
F
1 m
&& x
F
1 m
&& x
假定 F=sin(t) 为正弦激励 , m=0.5。 求 0~ 20s 区间 。 ~ 内的系统位移响应曲线。 内的系统位移响应曲线 。 模型框图如图所示。 模型框图如图所示。
Y (s) s − z1 =k U ( s) ( s − p1 )( s − p2 )
2011年4月13日 理论力学CAI 章名 5
3)调试器输出窗口 )
Outputs : 输出调试结果,如调试时刻、调试的模块及模块输 输出调试结果,如调试时刻、 入输出 Execution order: 输出调试过程中的各模块的执行顺序 Status:输出调试状态 如当前仿真时间、缺省调试命令、调试 输出调试状态,如当前仿真时间 缺省调试命令、 输出调试状态 如当前仿真时间、 断点设置以及断点数等状态信息
a c a b c
b
求和模块必须至少有一个输入而仅有一个输出。 求和模块必须至少有一个输入而仅有一个输出 。 输入的正负 号的数目由双击模块进入编辑栏进行设定。 号的数目由双击模块进入编辑栏进行设定。 求和模块不但可以进行标量求和运算, 求和模块不但可以进行标量求和运算 , 也可以进行向量或矩 阵求和运算,但是标量或矩阵的维数必须相等。 阵求和运算,但是标量或矩阵的维数必须相等。
注意:y(t)、x(t)、k 可以为标量、向量或矩阵。看如下算例。 、 、 可以为标量、向量或矩阵。看如下算例。 标量乘积: 标量乘积:
来自Sources库 库 来自
2 5 Constant Gain 10 Display
来自Sinks库 库 来自
标量和向量的乘积
1 2 2× = 2 4
2011年4月13日 理论力学CAI 章名 4
2)断点显示及断点条件设置 )
在断点显示框中了解到断点位置、断点模块的输入输出。 在断点显示框中了解到断点位置、断点模块的输入输出。 提供五种断点条件设置: 提供五种断点条件设置: Zero crossing :在系统发生过零处设置断点 Step size limited by state:在仿真步长受到状态限制处设置断点 在仿真步长受到状态限制处设置断点 Minor time steps : 在最小仿真步长出现处设置断点 Nan values:在系统中出现无穷小之处设置断点 在系统中出现无穷小之处设置断点 Break at time : 在指定的仿真时刻处设置断点
系统调试举例
system_debugger.mdl
2011年4月13日 理论力学CAI 章名 6
4.1 连续系统模块
大多数物理系统都可以用微分方程进行描述, 大多数物理系统都可以用微分方程进行描述,因此都可以 用连续系统模拟。最简单的模型是线性模型和定常模型。 用连续系统模拟。最简单的模型是线性模型和定常模型。 例如,振动理论中的动力学方程: 例如,振动理论中的动力学方程:
1 2 3 4
7
10
Display
Gain 5 11
1 2 1 5 3 4 × 2 = 11
1 2 3 4 Constant
u* 1 2
Display Gain
2. 求和模块 作用:对两个或多个信号进行求和运算。 作用:对两个或多个信号进行求和运算。 求和模块用代数表达式可表示为: 求和模块用代数表达式可表示为: c=a+b 求和模块有两种形状:圆形和方形。 求和模块有两种形状:圆形和方形。0246810
12
14
16
18
20
k c
x
& m&& + cx + kx = 0, x(0) = 0.2, x(0) = 0 x & m = 0.5, k = 1, c = 0.05
c k && = − x − x & x m m
0.2 0.15
动力方程变换为: 动力方程变换为:
1/0.5
Gain
Sine Wave
1 s Integrator
Scope
-0.8 -1
0
1
2
3
4
5
6
7
8
9
10
初值设置为 -1
5. 简单物理模型
利用前面所介绍的这些模块可以模拟由线性微分工程描述的任何物 理模型。例如,考虑如下所示的简单的小车系统运动。 理模型。例如,考虑如下所示的简单的小车系统运动。 x F 忽略摩擦力, 忽略摩擦力 , 运动 微分方程为: 微分方程为:
t0
t
1 s Integrator
Simulink 的积分模块如图所示: 的积分模块如图所示: 例如: 例如:
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6
y (t ) = ∫ sin(t )dt = − cos(t ) + C = − cos(t )
的初值假设为-1 注:y(t) 的初值假设为
x
Scope
40 35 30 25 20 15 10 5 0
0
2
4
6
8
10
12
14
16
18
20
若要求同时输出位移、速度和加速度,则模型框图为: 若要求同时输出位移、速度和加速度,则模型框图为:
F
Sine Wave
1 m
&& x
1 s
& x
1 s
x
Scope
40 35 30 25 20 15 10 5 0 -5
X ( s) 1 = 2 U ( s ) ms + cs + k
这便是系统的传递函数模型
一般可以写成如下传递函数的形式: 一般可以写成如下传递函数的形式: Y (s) n0 s + n1 = U ( s ) d 0 s 2 + d1s + d 2 2011年4月13日
理论力学CAI 章名
21
将其进行一定的等价变换, 将其进行一定的等价变换,可以得出线性连续系统 零极点模型。 的零极点模型。
1. 增益模块 作用:使增益模块的输入信号乘以一个常数,并输出。 作用:使增益模块的输入信号乘以一个常数,并输出。 增益模块用代数表达式可表示为: 增益模块用代数表达式可表示为: 可用简图表示如下: 可用简图表示如下:
x(t)
k
增益模块
y(t) = k x(t)
y(t)
k Gain
Simulink 增义模块图
du/dt Derivative
的微分: 考虑对正弦信号 sin (t) 的微分:
d [sin(t )] = cos(t ) dt
Simulink 模型框图和仿真结果如下页图形所示。 模型框图和仿真结果如下页图形所示。
d [sin(t )] = cos(t ) dt
Sine Wave
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1
&& x
0.05/0.5
1 s
& x
1 s Integrator1
x
Scope
0.1 0.05 0 -0.05 -0.1 -0.15 -0.2
Integrator
初值设置为0.2 初值设置为
0
5
10
15
20
25
30
Gain1
6. 传递函数模块 线性连续系统的传递函数模型与零极点模型采用连续信号 线性连续系统的传递函数模型与零极点模型采用连续信号 传递函数模型 拉氏变换来实现 的拉氏变换来实现 其拉氏变换定义为: 对于连续信号 u (t ) ,其拉氏变换定义为:U ( s ) = 系统的输入时间
2011年4月13日 理论力学CAI 章名 3
2. 调试器的操作设置与功能 1)Simulink调试器工具栏命令功能: ) 调试器工具栏命令功能: 调试器工具栏命令功能 执行至下一个模块; 执行至下一个模块; 执行至下一个时间步; 执行至下一个时间步; 开始调试或继续运行仿真至下一个断点; 开始调试或继续运行仿真至下一个断点; 终止调试过程; 终止调试过程; 在当前选择的模块之前设置断点; 在当前选择的模块之前设置断点; 执行时显示当前选择模块的输入输出; 执行时显示当前选择模块的输入输出; ? 调试帮助; 调试帮助;
向量和标量的乘积
2
Constant
[1;2]* u Gain
2 4
Display
[1
2]× 2 = [2 4]
(1 2) Constant
u *2 Gain
2
4 Display
向量和矩阵的乘积
1 2 [1 2]× = [7 10] 3 4
矩阵和向量的乘积
(1 2) Constant
u*
& M&&(t ) + Cx (t ) + Kx (t ) = P (t ) x
其中,x 为系统的广义坐标列向量,M 为质量矩阵,C 为阻 其中, 为系统的广义坐标列向量, 为质量矩阵, 尼矩阵, 为刚度矩阵, 为外部激励列向量。 尼矩阵,K 为刚度矩阵,P(t)为外部激励列向量。 为外部激励列向量 在 Simulink中,用来模拟连续系统的基本模块有四个: 中 用来模拟连续系统的基本模块有四个: 增益模块,求和模块,微分模块,积分模块。 增益模块 ,求和模块 ,微分模块 , 积分模块 。 任何可以用线 性微分方程描述的系统都可以用这四个基本模块进行模拟。 性微分方程描述的系统都可以用这四个基本模块进行模拟 。 除了这四个基本模块,传递函数模块也经常用来模拟物理系 除了这四个基本模块 ,传递函数模块 也经常用来模拟物理系 统和控制器。 统和控制器。