王国利信息科学与技术学院中山大学
http://human-robot.sysu.edu.cn
Matlab计算与仿真技术第十五讲,Simulink仿真 -II
http://human-robot.sysu.edu.cn/course
Matlab计算与仿真
Simulink 仿真 -II
- Simulink 建模技术初探
- Simulink 仿真综合练习第十五讲提纲
Matlab计算与仿真
Simulink仿真 -II
Simulink 建模技术初探
- 数学方程的建模实例:构建摄氏向华氏温度的变换器需求分析:借助 Simulink模块化框图实现
TF=9/5(TC)+32
功能框图摄氏温度信号 9/5
32
235F
Matlab计算与仿真
Simulink仿真 (续 )
步骤 1:模块定位与选取功能需求 模块库 模块单元摄氏温度 source ramp(斜坡信号 信号发生器 )
信号增益 math gain
常量元素 math constant
求和运算 math sum
信号显示 sink scope
(示波器 )
Matlab计算与仿真
Simulink仿真 (续 )
simulink 模块库的组织界面,simulink 模块库浏览器类比文件浏览器的模式模块库文件夹模块单元文件组成,Simulink通用库 + 专业库
S i m u l i n k B l o ck L i b r a r y 6,0
C o p yr i g h t ( c) 1 9 9 0 - 2 0 0 4
T h e M a t h W o r ks,I n c.
U se r - D e f i n e d
F u n ct i o n s
S o u r ce s S i n ks S i g n a l
R o u t i n g
S i g n a l
A t t r i b u t e s
P o r t s &
S u b sy st e m s
M o d e l - W i d e
U t i l i t i e s
M o d e l
V e r i f i ca t i o n
M a t h
O p e r a t i o n s
L o o ku p
T a b l e s
L o g i c a n d B i t
O p e r a t i o n s
D i sc r e t e D i sc o n t i n u i t i e sC o n t i n u o u s
Simulink
通用库
Matlab计算与仿真
Simulink仿真 (续 )
第二步:模块配置 (提示,首先查看常用模块库 )
C o m m o n l y U s e d B l o c k s
1
O u t 1
z
1
U n i t D e l a y
T e r m i n a t o r
S w i t ch
S u m
I n1 Out 1
S u b sy st e m
S co p e
S a t u r a t i o n
<=
R e l a t i o n a l
O p e r a t o r
P r o d u ct
M u x
A N D
L o g i ca l
O p e r a t o r
1
s
I n t e g r a t o r
G r o u n d
1
G a i n
K T s
z- 1
D i sc r e t e - T i m e
I n t e g r a t o r
D e m u x
C o n ve r t
D a t a T yp e C o n ve r si o n
1
C o n st a n t
B u s
S e l e ct o r
B u s
C r e a t o r
1
I n 1
Mo d e l & Su b s y s te m I n p u ts
Si g n a l G e n e r a to r s
U n i f o r m R a n d o m
N u m b e r
S t e pS i n e W a ve
Si gn al 1
S i g n a l B u i l d e r
S i g n a l
G e n e r a t o r
R e p e a t i n g
S e q u e n ce
S t a i r
R e p e a t i n g
S e q u e n ce
I n t e r p o l a t e d
R e p e a t i n g
S e q u e n ce
R a n d o m
N u m b e r
R a m p
P u l se
G e n e r a t o r
G r o u n d
u n t i t l e d,m a t
F r o m F i l e
si m i n
F r o m
W o r ks p a ce
1 2,3 4
D i g i t a l C l o ck
lim
C o u n t e r
L i m i t e d
C o u n t e r
F r e e - R u n n i n g
1
C o n st a n t
C l o ck
C h i r p S i g n a l B a n d - L i m i t e d
W h i t e N o i se
1
I n 1
Matlab计算与仿真
Simulink仿真 (续 )
按功能框图配置模块元件摄氏温度信号 9/5
32
235F
S c o p eR a m p
1
G a i n
1
C o n s t a n t
Matlab计算与仿真
Simulink仿真 (续 )
框图拓扑结构编辑编辑 constant模块的姿态右键弹出属性编辑菜单
fromat?…/rotate block/…
fromat?…/flip block/…
S c o p eR a m p
1
G a i n
1C o n s t a n t
S c o p eR a m p
1
G a i n
1C o n s t a n t
顺时针旋转上下翻转
Matlab计算与仿真
Simulink仿真 (续 )
步骤 3,添加信号线线路 1:信号发生器?信号增益信源:信号发生器输出端口信宿:信号增益输入端口线路 2:信号增益?信号求和单元信源:信号增益输出端口信宿:求和器的输入端口 (之一 )
线路 3:常量单元?信号求和单元信源:常量单元输出端口信宿:求和器的另一输入端口线路 4,信号求和单元?示波器信源:求和器输出端口信宿:示波器输入端口
S c o p eR a m p
1
G a in
1C o n s t a n t
S c o p eR a m p
1
G a in
1C o n s t a n t
S c o p eR a m p
1
G a in
1C o n s t a n t
S c o p eR a m p
1
G a in
1C o n s t a n t
Matlab计算与仿真
Simulink仿真 (续 )
模块的参数设定 运行仿真程序
Ramp Block Parameters Simulation/start…/
Slope configuration parameters
= 1 solver
Start time start time %TC low bound
= 0 =-50
Initial output stop time %TC upper bound
= 0 = 50
Gain Block Parameters
gain
= 9/5
Constant Block Parameters
constant value
=32
S c o p eR a m p
9 / 5
G a i n
32C o n s t a n t
Matlab计算与仿真
Simulink仿真 (续 )
- 关于信号信号概述
Simulink 信号线是物理信号的抽象但不一定是物理信号是信号定量关联描述
Source典型创建单元信号属性信号维数数据类型几何形态符号标识
1 2
3 4
C o n st a n t 2
4
C o n st a n t 1
(3 4)
C o n st a n t
Matlab计算与仿真
Simulink仿真 (续 )
- 仿真结果的分析信号观测
Scope模块,采集关于时间变化的信号允许多通道信号显示
x-y Graph,绘制 2-D信号图形,是关于
x-轴 /y-轴信号
S c o p eR a m p
9 / 5
G a i n
32C o n s t a n t
Matlab计算与仿真
Simulink仿真 (续 )
- 仿真结果的分析数据采集
in/out:利用工作空间变量往返机制采集数据
simulation:在 configuration parameters/
data import/export
指定输入 /输出变量 (工作空间 )
1
O u t 1
S in e W a v e
1
s
I n t e g r a t o r
X Y G r a p h
1
s
I n t e g r a t o r
1
G a i n
1
I n 1
Matlab计算与仿真
Simulink仿真 (续 )
- 仿真结果的分析数据采集 (续 )
workspace:工作空间采集数据模块
si m o u t 1
T o W o r ksp a ce 1
si m o u t
T o W o r ksp a ceS i n e W a ve
1
s
I n t e g r a t o r
C l o ck
Matlab计算与仿真
Simulink仿真 (续 )
Simulink 综合练习静态模型 -- 信号发生器功能模块图,
( ) s i n ( )x t t
时间时钟
Sin
函数运算器数据采集
Matlab计算与仿真
Simulink仿真 (续 )
按功能框图配置模块元件时间时钟
Sin
函数运算器数据采集
si n
T r i g o n o m e t r i c
F u n ct i o n
si m o u t 1
T o W o r ks p a ce 1
C l o ck
Matlab计算与仿真
Simulink仿真 (续 )
添加信号线线路 1:时钟?sin函数信源:时钟输出端口信宿,sin函数输入端口线路 2,sin函数?示波器信源,sin函数输出端口信宿:示波器输入端口
si n
T r i g o n o m e t r i c
F u n ct i o n
si m o u t 1
T o W o r ks p a ce 1C l o ck
si n
T r i g o n o m e t r i c
F u n ct i o n
si m o u t 1
T o W o r ks p a ce 1C l o ck
Matlab计算与仿真
Simulink仿真 (续 )
自主离散动态模型 -兔子问题输入,u(n)=0 % 没有外界能量介入状态,x(n)=[F(n+1);F(n+2)]
输出,y(n)=F(n+1)/F(n+2):=h[x(n)]
模型,x(n+1)=Ax(n),x(0)=[1;1]
其中 A=[0 1;1 1]
Matlab计算与仿真
Simulink仿真 (续 )
功能框图及 simulink模块化框图模型输出函数离散自主系统x(n+1)=Ax(n) 数据显示
u ( 1 ) / u ( 2 )
F c n
0,6 1 8 1
D i s p l a y
y ( n ) = C x ( n ) + D u ( n )
x ( n + 1 ) = A x ( n ) + B u ( n )
D i s c r e t e S t a t e - S p a c e
1
C o n s t a n t
Matlab计算与仿真
Simulink仿真 (续 )
模块的参数设定
discrete state-space block parameters
A
= [0 1;1 0]
B
= [0;0]
C
= [1 0;0 1]
D
= [0;0]
initial conditions:
= [1;1]
Function Block Parameters
expression
= u(1)/u(2)
Matlab计算与仿真
Simulink仿真 (续 )
连续动力学系统,弹簧质点阻尼系统输入,u(t)=f(t)
状态,x(t)=[d(t);d’(t)]
输出,y(y)=d(t)=c’x(t),c=[1;0]
建模机理:质点动力学状态方程,x’(t)=Ax(t)+bu(t)
y(t)=c’x(t)
其中 A=[0 1;-k/m –c/m]; b=[0;1]
()m d c d k d f t
Matlab计算与仿真
Simulink仿真 (续 )
功能框图及 simulink模块化框图模型脉冲输出信号动态连续系统
x’=Ax+Bu
Y=Cx+Du
数据显示
x ' = A x + B u
y = C x + D u
S t a t e - S p a c e
S c o p e 1
S c o p eP u l s e
G e n e r a t o r
Matlab计算与仿真
Simulink仿真 (续 )
模块的参数设定
continuous state-space block parameters
A
= [0 1;-k/m –c/m]
B
= [0;1/m]
C
= [1 0]
D
= 0
initial conditions:
= [0;0]
Pulse Generator Block Parameters
amplitude
= 5
period
= 100
pulse width (% period)
= 10
Matlab计算与仿真
Simulink仿真 (续 )
运行仿真程序
Simulation/start…/
configuration parameters
solver
start time
= 0
stop time
= 100
Matlab计算与仿真第十六讲预告:数值计算 -I
( 2008年 6月 11日)
结束语