仿真集成环境
SIMULINK是MATLAB最重要的组件之一,它向用户提供一个动态系统建模、仿真和综合分析的集成环境。在这环境中,用户无须书写大量的程序,而只需通过简单直观的鼠标操作,选取适当的库模块,就可构造出复杂的仿真模型。SIMULINK的主要优点:
适应面广。可构造的系统包括:线性、非线性系统;离散、连续及混合系统;单任务、
多任务离散事件系统。
结构和流程清晰。它外表以方块图形式呈现,采用分层结构。既适于自上而下的设计
流程,又适于自下而上逆程设计。
仿真更为精细。它提供的许多模块更接近实际,为用户摆脱理想化假设的无奈开辟了
途径。
模型内码更容易向DSP,FPGA等硬件移植。
基于本书定位,为避免内容空泛,本节对于SIMULINK将不采用横断分层描述,即不对SIKULINK库、模块、信号线勾画标识等进行分节阐述。本节将以四个典型算例为准线,纵向描述SIMULINK的使用要领。
7.1
7.1.1
连续时间系统的建模与仿真
基于微分方程的SIMULINK建模
本节将从微分方程出发,以算例形式详细讲述SIMULINK模型的创建和运行。
【例7.1-1】在图7.1-1所示的系统中,已知质量m1kg,阻尼b2N.sec/m,弹簧系数k100N/m,且质量块的初始位移x(0)0.05m,其初始速度x(0)0m/sec,要求创建该系统的SIMULINK模型,并进行仿真运行。
图7.1-1 弹簧—质量—阻尼系统
(1)建立理论数学模型 对于无外力作用的“弹簧—质量—阻尼”系统,据牛顿定律可写出
1
mxbxkx0
代入具体数值并整理,可得
(7.1) (7.2)
x2x100x
(2)建模的基本思路
(3)
图7.1-2
(4)开启空白(新建)模型窗
(5)
2
图 7.1-3
(6)
(7)
图 7.1-4
(8)
3
图 7.1-5
图 7.1-6
图 7.1-7
4
(9) (10) (11)
图7.1-8
图7.1-9
(12)
图7.1-10
5
图7.1-11
图7.1-12
6
图7.1-13
(13)
图7.1-14
7.1.2 基于传递函数的SIMULINK建模
Y(s);(2)U(s)【例7.1-2】对于图7.1-15所示的多环控制系统,(1)求系统传递函数G(s)求该系统的单位阶跃响应。
7
图 7.1-15 多环控制系统
(1) (2)
图 7.1-16
(3)
[A,B,C,D]=linmod2('exm070102'); STF=tf(minreal(ss(A,B,C,D))) [Num,Den]=tfdata(STF); Num{:},Den{:} 2 states removed.
Transfer function:
-2.158e-015 s^4 + 2.986e-014 s^3 + 100 s^2 + 300 s + 200 -------------------------------------------------------- s^5 + 21 s^4 + 157 s^3 + 663 s^2 + 1301 s + 910
ans =
0 -0.0000 0.0000 100.0000 300.0000 200.0000 ans =
8
1.0e+003 *
0.0010 0.0210 0.1570 0.6630 1.3010 0.9100
(4)
t0=(0:0.1:5)';
[y,t]=step(STF,t0);
plot(t,y,'LineWidth',3) grid on
axis([0,5,0,0.4])
xlabel('t'),ylabel('y') 0.40.350.30.250.20.150.10.050y012t345图 7.1-17
7.2 离散时间系统的建模与仿真
【例7.2 -1】构建一个低通滤波系统的SIMULINK模型。输入信号是一个受正态噪声干扰的采样信号x(kTs)sin(210kTs)1.5cos(2100kTs)n(kTs),在此Ts0.001(秒),而n(kT)~N(0,0.2);采用8阶Butterworth低通滤波器,以便从输入信号中过滤获得10Hz的输出信号。 (1)
y(k)F(z)x(k)
2B(z)b(1)b(2)z1b(n1)zn F(z)1nA(z)1a(2)za(n1)z
(2) (3)
(4)
9
图7.2-1
图7.2-2
10
图7.2-3
图7.2-4
图7.2-5
11
(5) (6)
图7.2-6
(7)
Ts=0.001; fs=1/Ts; fn=fs/2; fc=30; [B,A]=butter(8,fc/fn);
图7.2-7
(8)
7.3
SIMULINK实现的元件级电路仿真
12
就仿真模型逼近被仿真系统的真实程度而言,前两节所建SIMULINK模型属于功能级仿真模型。这种模型所使用的模块与真实的物理器件之间不存在一一对应的关系;这种模型的构建以抽象了的数学模型为基础。较早的SIMULINK,就是进行功能级仿真的软件环境。但最近发布的几个SIMULINK版本,已经在某些专业领域把仿真推进到了元器件级。 本节将利用SimPowerSystems 中的库模块构建一个在元器件级上对应的电路模型,然后通过该模型进行电量的瞬态分析。
【例7.3-1】在图7.3-1所示的电路中,已知L1(H),C1(F),R10.5(),
R2R31(), VC(0)1(V), iL(0)1(A), Vs10(V),开关K在t0时闭合。试采用SIMULINK的SimPowerSystems模块库器件进行元件级仿真。求 iL和Vc。
图7.3-1 二阶RLC电路
(1) (2)
表7.3-1 建模所需模块的来源和参数设置 模型窗中 库模块名称 所在库位置 器件名称 直流电压DC Voltage Electrical Sources 源 Vs Source 电阻R1 电阻R2和电感L 串联支路 电阻R3和电容C 并联支路 开关K Series RLC Elements Branch Series RLC Elements Branch Parallel RLC Branch Elements Elements Measurements Measurements Simulink\\Sinks Simulink\\Sinks 参数设置 Breaker 电流测量Current Measurement 器Mi 电压测量Voltage Measurement 器 Mv 示波器Si Scope 示波器Sv Scope (3)
13
图7.3-2
(4)
14
图7.3-3
(5) (6)
15
图7.3-4
(7)
图7.3-5
16
习题7
1. 利用SIMULINK求解I(t)见例4.1-5) 〖答案〗 0.7468
t 0exdx在区间t[0, 1]积分,并求出积分值I(1)。(参
2
d2x2dx(1x)x0,方程的初始条件为2. 利用SIMULINK求解微分方程2dtdtdx(0)x(0)1,0。在增益模块“Gain”取值分别为2和100的情况下(即数学表达
dt式中2, 100)运行,给出运行结果。(参见例4.1-9)
〖答案〗
2
100
17
3. 已知某系统的框图如图p7-1所示,求该系统的传递函数。
图 p7-1
〖答案〗
Transfer function:
s^4 + 5 s^3 + 9 s^2 + 7 s + 2
------------------------------------------------ s^6 + 6 s^5 + 17 s^4 + 26 s^3 + 22 s^2 + 8 s + 1
Zero/pole/gain:
(s+2) (s+1)^3
-------------------------------------- (s+0.3177)^2 (s^2 + 2.682s + 3.148)^2
4. 采用SIMULINK基本库和Signal Processing Blockset库的“连续”时间的模块构建的
SIMULINK 模型解决第7章算例7.2-1。
〖答案〗
18
5. 在如图p7-2所示的交流电路中,其中Z1j1(,Z2Z4Z51(,Z3j1(,
20120(V),I1045(A),f50(HZ),求Z支路中的电流和Z两端的电V35压。
图 p7 -2
〖答案〗
19
20
因篇幅问题不能全部显示,请点此查看更多更全内容