第7章 SIMULINK交互式

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

m x bx kx 0
'' '
x '' 2 x ' 100x
(2)建模的基本思路
采用“积分”模块,而不采用“求导”模块; 非1系数采用“增益”来实现; 代数和采用“求和”模块; 观察采用“示波器”模块
(3)打开SIMULINK模块库 (4)开启空白(新建)模型窗 (5)从模块子库中选择模型 (6)新建模型窗的模型再复制 (7)模块间信号线的连接 (8)根据理论数学模型设置模块参数 (9)仿真运行; (10)保存,试运行,参数再设置,仿真结果显示
ngrid
nichols(sys) nyquist(sys) sigma(sys)
Nichols网络图绘制
Nichols图绘制 Nyquist图绘制 系统奇异值bode图绘制
阻尼系数对二阶系统频率响应的影响 二阶系统的传递函数为
H (s) 1
2 s 2 2 n s n
设 其 固 有 频 率 n 10 , 阻 尼 系 数 [0.1,0.3,0.7,1] ,分别画出其bode(波德) 图。将系统在条件TS=0.1 下离散化,并做同 样的工作。
首先写出描写系统动力学的全部方程; 打开模块库,引出SIMULINK的工作环境; 开启空白模型窗口; 根据理论数学模型,选择所需模块; 设置模块影响结构的参数; 信号连线; 对非结构参数进行设置; 根据经验或默认,对仿真器何仿真终止时间进行设置; 保存;调试;保存

7.1.1 基于微分方程的 SIMULINK建模
6、Signal&Systems(信号和系统模块) sigsys.mdl
In1:输入端。
Out1:输出端。 Mux:将多个单一输入转化为一个复合输出。 Demux:将一个复合输入转化为多个单一输出。 Ground:连接到没有连接到的输入端。 Terminator:连接到没有连接到的输出端。 SubSystem:建立新的封装(Mask)功能模块
Discrete Filter:IIR与FIR滤波器
Discrete State-Space:离散状态空间系统模型
Discrete Transfer-Fcn:离散传递函数模型
Discrete Zero-Pole:以零极点表示的离散传递函数模 型 First-Order Hold:一阶采样和保持器 Zero-Order Hold:零阶采样和保持器 Unit Delay:一个采样周期的延时
什么是SIMULINK?
SIMULINK是MATLAB软件的扩展,它是实现动态 系统建模和仿真的一个软件包,它与MATLAB语言的 主要区别在于,其与用户交互接口是基于Windows的 模型化图形输入,其结果是使得用户可以把更多的精 力投入到系统模型的构建,而非语言的编程上。 所谓模型化图形输入是指SIMULINK提供了一些按功 能分类的基本的系统模块,用户只需要知道这些模块 的输入输出及模块的功能,而不必考察模块内部是如 何实现的,通过对这些基本模块的调用,再将它们连 接起来就可以构成所需要的系统模型(以.mdl文件进 行存取),进而进行仿真与分析。
4、 Math(数学模块) math.mdl Sum:加减运算 Product:乘运算 Dot Product:点乘运算 Gain:比例运算
Math Function:包括指数函数、对数函数、求平方、开 根号等常用数学函数
Trigonometric Function:三角函数,包括正弦、余弦、正 切等 MinMax:最值运算 Abs:取绝对值 Sign:符号函数
clear, clf,wn=10; for zeta=[0.1:0.3:1] %设定不同的zeta
[n,d]=ord2(wn,zeta);
s1=tf(n*wn^2,d); sd1=c2d(s1,0.1); 秒 %生成二阶连续系统 %转成二阶采样系统,采样同期0.1 %画波德图 %画波德国,注意离散系
Logical Operator:逻辑运算 Relational Operator:关系运算
Complex to Magnitude-Angle:由复数输入转为幅值 和相角输出 Magnitude-Angle to Complex:由幅值和相角输入合 成复数输出
Complex to Real-Imag:由复数输入转为实部和虚部 输出 Real-Imag to Complex:由实部和虚部输入合成复数 输出
Transfer-Fcn:线性传递函数模型
Zero-Pole:以零极点表示的传递函数模型
Memory:存储上一时刻的状态值
Transport Delay:输入信号延时一个固定时间再输出
Variable Transport Delay:输入信号延时一个可变时 间再输出
2、离散模块(Discrete) discrete.mdl Discrete-time Integrator:离散时间积分器
第8章 控制工具箱
[mag,phase,w]=bode(sys)
bode图绘制 fres=evalfr(sys,f) 计算系统单个复频率 f 的 频率响应 H=freqresp(sys,w) 计算系统在给定实频率区 间的频率响应 [Gm,Pm,wcg,wcp]=margin(sys) margin(sys) 计算系统的增益和相位裕度
参数名称和典型调用格式


bode(sys),[mag,phase,w]=bod bode图绘制 e(sys) fres=evalfr(sys,f) 计算系统单个复频率f的频率响 应 H=freqresp(sys,w) 计算系统在给定实频率区间的 频率响应 [Gm,Pm,wcg,wcp]=margin(sys) margin(sys) 计算系统的增益和相位裕度

7.2 离散时间系统的建模与仿真
离散时间系统动态过程的数学描述工具是差分
方程和Z变换传递函数(滤波器)。 构建一个低通滤波系统的SIMULINK模型。输 入信号是一个受正态噪声干扰的采样信号, x(kTs ) sin(2 10 kTs ) 1.5 cos(2 100 kTs ) n(kTs ) 2 n ( kT ) ~ N ( 0 , 0 . 2 ) ;采 在此Ts=0.001(秒),而 用8阶Butterworth低通滤波器,以便从输入信号 中过滤获得10Hz的输出信号。
Pulse Generator:脉冲发生器。
Repeating Sequence:重复信号。
Signal Generator:信号发生器,可以产生正弦、方波、 锯齿波及随意波。
Sine Wave:正弦波信号。
Step:阶跃波信号。
7.1 连续时间系统的建模与仿真

创建动态系统SIMULINK模型的一般步骤:
7.3 SIMULINK实现的 元件级电路仿真
在下图所示的电路中,已知L=1H,C=1F,
R1=0.5,R2=R3=1 ,VC (0-)=-1V, iL (0-) =1A,Vs=10V ,开关K在t=0时闭合。试采用
SIMULINK的SimPowerSystems模块库器件进行 元件级仿真。
sd=c2d(s,Ts)
sb=feedback(s,1) 生成闭环系统sb
%变换四阶离散系统sd
%把连续系统闭合,
sbd=feedback(sd,1)
%把离散系统闭合,生成闭环系统sbd %在图1中绘出连 %在图2中绘出离
figure(1),bode(s,'--',sb,'.-' ) 续系统的开闭环频率特性 figure(2),bode(sd,'--',sbd,'.-') 散系统的开闭环频率特性
7、Sinks(接收器模块) sinks.mdl Scope:示波器。
XY Graph:显示二维图形。
To Workspace:将输出写入MATLAB的工作空间。
To File(.mat):将输出写入数据文件。
8、Sources(输入源模块) sources.mdl Constant:常数信号。 Clock:时钟信号。 From Workspace:来自MATLAB的工作空间。 From File(.mat):来自数据文件。
5、 Nonlinear(非线性模块) nonlinear.mdl Saturation:饱和输出,让输出超过某一值时能够饱和。
Relay:滞环比较器,限制输出值在某一范围内变化。
Switch:开关选择,当第二个输入端大于临界值时, 输出由第一个输入端而来,否则输出由第三个输入端 而来。 Manual Switch:手动选择开关

SIMULINK的启动 在MATLAB命令窗口中输入simulink 在MATLAB命令窗口中输入simulink3

SIMULINK的模块库介绍
SIMILINK模块库按功能进行分类,包括以下8类子库:
Continuous(连续模块) Discrete(离散模块)
Function&Tables(函数和平台模块)
[A,B,C,D]=linmod2('ex0702') stf=tf(minreal(ss(A,B,C,D))); [Num,Den]=tfdata(stf); Num{:},Den{:} t0=(0:0.1:5)'; [y,t]=step(stf,t0); plot(t,y,'LineWidth',3); grid on
figure(1),bode(s1),hold on figure(2),bode(sd1),hold on 统用同样命令 end
hold off
高阶系统的开闭环频率响应
设系统的传递函数为
H (s)
200( s 6) s ( s 1)( s 10)
画出其 bode 图。将系统在条件 TS=0.1 下离散化,并做 同样的工作。然后把两种系统分别用单位负反馈构成 闭合环路,画出其波德图与开环进行比较,并判断其 稳定性。 clear,Ts=0.1; s=zpk(-6,[0,-1,-10,-100]',2000) 统s %生成四阶连续系
Math(数学模块) Nonlinear(非线性模块)
Signals&Systems(信号和系统模块)
Sinks(接收器模块) Sources(输入源模块)
1、连续模块(Continuous) continuous.mdl Integrator:输入信号积分
Derivative:输入信号微分
State-Space:线性状态空间系统模型
第7章 SIMULINK交互式 仿真集成环境


在工程实际中,控制系统的结构往往很复杂,如 果不借助专用的系统建模软件,则很难准确地把 一个控制系统的复杂模型输入计算机,对其进行 进一步的分析与仿真。 SIMULINK表明了该系统的两个主要功能:Simu (仿真)和Link(连接),即该软件可以利用鼠标 在模型窗口上绘制出所需要的控制系统模型,然 后利用SIMULINK提供的功能来对系统进行仿真和 分析。
7.1.2 基于传递函数的 SIMULINK建模
例7.1-2对于下图所示的多环控制系统,(1)求
ห้องสมุดไป่ตู้
系统传递函数 G(s) 阶跃响应。
Y ( s) U ( s)
;(2)求该系统的单位
(1)建模的基本思路
(2)构造“用于系统传递函数计算”的
SIMULINK模型 (3)系统模型的获取 (4)系统的单位阶跃响应
3、 Function&Tables(函数和平台模块) function.mdl
Fcn:用自定义的函数(表达式)进行运算
MATLAB Fcn:利用matlab的现有函数进行运算
S-Function:调用自编的S函数的程序进行运算
Look-Up Table:建立输入信号的查询表(线性峰值匹 配) Look-Up Table(2-D):建立两个输入信号的查询表 (线性峰值匹配)
1、简单模型的建立
正弦波产生
例7.1-1
在左图所示的系统中, 已知质量m=1kg,阻尼b= 2N.sec/m,弹簧系数k= 100N/m,且质量块的初始位 移x(0)=0.05m,其初始速度 0m/sec,要求创建该系统的 SIMULINK模型,并进行仿 真运行。
(1)建立理论数学模型
相关文档
最新文档