最少拍控制系统实验报告

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

计算机控制技术

--基于Matlab的最少拍控制系统设计

学院:计算机科学与技术

班级:计科0902班

学号:

姓名:

指导老师:

日期: 2012年12月15日

一、实验目的:

1.学习使用Matlab 设计最少拍控系统的方法; 二、实验工具:

X86系统兼容型计算机、MATLAB 软件。 三、实验内容: 1.实验原理

最少拍设计,是指系统在典型输入信号(如阶跃信号、速度信号、加速度信号等)作用下,经过最少拍(有限拍)使系统输出的系统稳态误差为零。因此,最少拍控制系统也称最少拍无差系统或最少拍随动系统,它实质上是时间最优控制系统,系统的性能指标就是系统调节时间最短或尽可能短,即对闭环Z 传递函数要求快速性和准确性。下面以一个具体实例介绍最少拍系统的设计和仿真。

考虑图1所示的采样数字控制系统,被控对象的脉冲传递函数为

0210

G ()(1)

s s s =+

图0 最少拍采样数字控制系统

设采样周期T=1s ,首先求取广义被控对象的脉冲传递函数: 广义被控对象

2

11

1211

1111110

()[](1)

11

(1)10[](1)110.36793.679(10.718)(1)(10.3679)

Ts e G z Z s s s z z z z z z z z z -----------=+=-⨯-+---+=

--

我们知道,最少拍系统是按照指定的输入形式设计的,输入形式不同,数字控制器也不同。因此,对三种不同的输入信号分别进行考虑: ① 单位阶跃信号:

计算可得到最少拍数字控制器为

11

11

()()1()0.2712(10.3679))

()()(1())10.718e z z z z z z D z G z z z ----Φ=Φ=-Φ-==

-Φ+

检验误差序列:

()(1())()1E z z R z =-Φ=

由误差的变换函数得知,所设计的系统当k>1后,e (k )=0就是说,一拍以后,系统输出等于输入,设计正确。 ② 单位速度信号:

原理同上,我们可以得到:

1111()0.5434(10.5)(10.3679)

()()(1())(1)(10.718)

z z z D z G z z z z ----Φ--==-Φ-+

检验误差:

1()(1())()E z z R z z -=-Φ=

从E(z)看出,按单位速度输入设计的系统,当k 大于等于2之后,即二拍之后,误差e (k )=0,满足题目要求。 ② 单位加速度信号:

12112112()0.8154(11/3)(10.3679)

()()(1())(1)(10.718)()(1())()0.5()

z z z z D z G z z z z E z z R z z z -------Φ-+-==

-Φ-+=-Φ=+ 可知,按加速度输入信号设计的系统当k 大于等于3,即三拍之后,误差e (k )=0。

2.实验设计

将所得结果分别用Matlab 中的Simulink 工具箱进行仿真,并将输入、输出和误差三条曲线放置在同一图像内,比较三种情况下的跟随特性。 四、实验步骤:

在三种输入(单位阶跃/速度/加速度)分别作用下,运用Simulink 对其控制结果进行仿真。

(a )有波纹控制系统

① 单位阶跃信号:

系统Simulink 仿真模型框图如图1 所示: 可得更加清晰的仿真结果如图1-1所示:

图1 单位阶跃信号输入时最少拍控制系统

将示波器的数据存为矩阵形式,命名为y1

在Matlab 命令窗口输入:

>> plot(tout(:,1),y1(:,2:4));

>> hold on,legend(' 输入','误差','输出')

可得输入、输出和误差三条曲线结果图如下所示:

图1-1 单位阶跃信号输入时系统的仿真结果

②单位速度信号:

控制系统Simulink 框图如图2 所示:

图2 单位速度信号输入时最少拍控制系统

将示波器的数据存为矩阵形式,命名为y2

在Matlab 命令窗口输入

>> plot(tout(:,1),y2(:,2:4));

>> hold on,legend(' 输入','误差','输出')

仿真结果为

图2-2 单位速度信号输入时系统的仿真结果

③单位加速度信号:

控制系统Simulink 框图如图3 所示:

图3 单位加速度信号输入时最少拍控制系统

将示波器的数据存为矩阵形式,命名为y3

在Matlab 命令窗口输入

>> plot(tout(:,1),y3(:,2:4));

>> hold on,legend(' 输入','误差','输出')

仿真结果图如图3-3 所示。

图7 单位加速度信号输入时系统的仿真结果

(b)无波纹控制系统

》》无波纹最小拍控制器的计算

G s通过matlab,z变换程序为(1)带零阶保持器的广义被控对象为()

np=[0 0 10]; dp=[1 1 0]; hs=tf ( np, dp); hz=c2d(hs,1) 结果为

Transfer function: 3.679 z + 2.642 ---------------------- z^2 - 1.368 z + 0.3679

Sampling time: 1 即

2

3.679z 2.642

G(z)= 1.3680.3679z z +-+

(2)无波纹最小拍控制器D (z )

根据G(z),对象有一个纯迟后因子v=1,一个零点10.718b =-,两个极点,单位速度

信号2l =,所以q=1,则闭环脉冲传递函数为

11101()(10.718)()

z z z z φφ---Φ=++

01(1)(10.718)()

φφΦ=++

01

'(1) 2.436 4.154φφΦ=+

得系数0

1.407φ=,10.825φ=-,则系统脉冲传函为

111

() 1.407(10.718)(10.586)z z z z ---Φ=+- 误差脉冲传函为

121

()(1)(10.593)e z z z --Φ=-+ 由*z e

D G φ

φ=得设计的控制器为

220.3820.3640.0824

()0.4070.593z z D z z z -+=

--

①单位阶跃信号

》》无波纹最小拍控制系统框图

相关文档
最新文档