Smith 预估控制算法设计仿真实验
实验目的
在控制算法学习的基础上,根据给定对象特性设计 smith 预估控制器算法,
并利用 Matlab 软件进行仿真实验,同时与 PID 算法控制算法进行比较,加深对
该控制算法的掌握和理解。
实验内容和要求
设广义被控对象为:
( )
H s G s G s e
( )
( )
1
0
s
1
Ts
e
s
e
s
T s
1
1
控制系统框图为:
R(s)
+
e1
+
-
e2
)(sGp
p(s)
-
y1(n)
(0
sG
1)(
se
)
y(n)
T
T
H(s)
)(1 sG
y(s)
0( )
s
G s e
取 T=1、τ=2、T1=2.88,经采样(T=1s)保持后,其广义对象 z 传递函数为
( )
G z
0
0.2934
0.7066
z
,
而 2se 转换为 2 个单位迟延。
控制器参数:Kp=0.5,Ki=0.2,Kd=0。
实验要求:
(1) 设计 smith 预估控制算法,作给定值扰动和外部扰动响应实验,并绘制控制
器输出 P 和系统输出 y 响应曲线。
(2)被控对象不变,采用理想 PID 进行给定值扰动和外部扰动响应实验,并绘
制控制器输出 P 和系统输出 y 响应曲线。
思考和讨论
(1)分析两类控制算法对带迟延对象的控制效果。
(2)根据实验分析 Smith 预估控制算法的优点是什么,若采用 PID 算法解决同
类问题效果如何?
Matlab 辅助设计软件
根据实验要求,按照 smith 预估控制算法,在 Matlab 中建立的仿真结构图为
具体操作步骤:
1、 启动 Matlab;
2 、 单 击 工 具 栏 中 的 Simulink 仿 真 图 标
, 进 入 Simulink 仿 真 环 境
新建
模块库
3、新建仿真结构图,寻找模块,拖动到新建仿真结构图中
所涉及模块的位置:
加法器 Sum:在 Simulink/Math Operations 子库中。
离散 PID 控制器:在 SimPowerSystems/Extra Library/DiscreteControl Blocks 子库中。
离散传递函数 Discrete Transfer Fcn:在 Simulink/Discrete 子库中。
示波器 Scope:在 Simulink/Sinks 模型库中。
阶跃信号 Step:在 Simulink/Sources 模型库中。
4、 修改模块参数。双击模块,在出现的窗口中设置参数。
5、 连接模块。将光标移到一个模块的输出端(>)按下鼠标左键拖动鼠标到另一个模块的输
入端(>),松开鼠标左键就可以完成两个模块的连接。
6、 设置仿真参数,进行仿真。
在 Simulation 下拉菜单中设置仿真参数,单击工具栏中的 Start Simulation 图标
),
计算机开始仿真,示波器可显示出仿真曲线 。
7、通过曲线,分析系统性能。