目录前言 01.题目分析 02.最少拍无纹波控制原理 (1)3.最少拍无纹波控制器设计步骤 (2)4.用MATLAB软件仿真 (3)单位阶跃输入信号 (3)单位速度输入信号 (4)单位加速度输入信号 (5)参考文献 (5)附录 (6)课设体会 (7)最少拍无纹波控制器的设计1任甜甜沈阳航空航天大学北方科技学院摘要:本次课程的目的是学习并熟悉使用计算机软件matlab去建模、分析、设计和仿真最少拍无纹波控制器。
最少拍控制器的设计应首先根据零阶保持器将传递函数离散化,解出待定系数,然后求出相应的闭环脉冲传递函数和数字控制器。
得出的闭环脉冲传递函数在后续工作中还需要进行多次调整,从而获得最佳表达形式。
最后分别使用程序仿真方法和simulink去分析系统在速度和加速度两种输入信号下的动态性能和稳定性能。
关键词:离散化;数字控制器;程序仿真前言最少拍设计,是指系统在典型输入信号的作用下,经过最少拍使系统输出的系统误差为零。
最少拍控制器是基于准确的被控对象而建立的一种控制算法,设计一个数字控制器,使系统到达稳定所需要的采样周期最少,而且在采样点的输出值能准确地跟踪输入信号,不存在静差。
应用数字控制器设计的随动系统的快速性一般以系统需要多少个采样周期数来表征。
通常称一个采样周期为一拍,那么在越少的拍数内,系统的输出能跟上给定值,则系统的快速性越好。
最少拍控制就是为满足这一要求的一种离散化设计方法。
1.题目分析根据题目要求,设计无波纹最小拍控制器。
采用零阶保持器的单位反馈离散系统,被控对象要求系统在单位阶跃输入时,实现无波纹最小拍控制,用离散设计法设计数字控制器。
通过对最少拍数字控制器的设计与仿真,让自己对最少拍数字控制器有更好的理解与认识,透切理解最少拍、最少拍有纹波数字控制器、最少拍无纹波数字控制器的概念,分清最少拍有纹波与无纹波控制系统的优缺点,熟练掌握最少拍数字控制器的设计方法、步骤,并能灵巧地应用matlab平台对最少派控制器进行系统仿真。
实验设备及仪器:装有matlab 软件的PC 微机一台。
2.最少拍无纹波控制原理其中,被控对象的传递函数为:2345213111)5)(2(10)(s s s s s s s G +++++=(1)针对单位阶跃信号设计最少拍无纹波控制器)(z D ,并用计算机进行仿真。
最少拍控制是一种直接数字设计方法。
所谓最少拍控制,就是要求闭环系统对于某种特定的输入在最少个采样周期内达到无静差的稳态,使系统输出值尽快地跟踪期望值的变化。
它的闭环z 传递函数具有形式:NNz z z z ---+++=ΦφφφΛ2211)( (2) 在这里,N 是可能情况下的最小正整数。
这一传递形式表明闭环系统的脉冲响应在N 个采样周期后变为零,从而意味着系统在N 拍之内到达稳态。
其控制原理如图1:图1 最少拍系统控制原理图图1所示计算机控制系统框图中:G (s ) —— 被控对象的连续传递函数 D (z ) —— 数字控制器的Z 传递函数 H (s) —— 零阶保持器的传递函数 T —— 采样周期3.最少拍无纹波控制器设计步骤已知公式(1)G(s),可根据控制系统的性能指标要求构造Ф(z),则根据()z G = Z [])()(S G S H •=Z ⎥⎦⎤⎢⎣⎡•--)(1s G s e Ts =(1-z 1-)Z⎥⎦⎤⎢⎣⎡s s G )( (3)带零阶保持器的广义被控对象为()G s 通过matlab ,进行z 变换,即当采样周期为时,得出广义对象的脉冲传递函数为:()z G = 3329.0153.245.5772.6142.40006174.00009736.0005884.0003367.0001517.02345234-+-+-++-+z z z z z z z z z (4)想要求()z e Φ和()z Φ,必须把()z G 函数变换成零极点相乘的形式,即:()z G =)4966.01)(7408.01)(9048.01()1()2408.01)(6065.01)(8187.01)(403.31(001517.01112111111-------------+--+z z z z z z z z z (5)由()z G 零极点图分析:d =1,w =4,v =2,j =2,因为是单位阶跃响应,可知q =1,因为j >q ,可以得出m =w +d =5,n =v =2。
要使稳态误差e(∞)=0,必须有:()z e Φ=)()1(1(1111z F z z a qj v i i --=--⎥⎦⎤⎢⎣⎡-∏ (6) ()z Φ=()z F z b z w i i d211)1(⎥⎦⎤⎢⎣⎡-∏=-- (7)其中:m n z f z f z f z F ---++++=12121111...1)( (8)()n n z f z f z f z F ---++=22221212......由)(1)(z z e Φ-=Φ得)(1)(z z e Φ-=Φ (9) 令对应项系数相等,通过matlab 软件中solve 函数求得:111=f ,5657.112-=f ,2580.713-=f ,6897.214=f ,0440.115=f ,5657.221=f ,022=f 所以由上面系统闭环脉冲传递函数为()z Φ=)()(z R z C =654320440.16457.19476.96923.55657.2-----++-+z z z z z (10) 系统误差脉冲传递函数为:()z e Φ=1-()z Φ= 654320440.16457.19476.95623.55657.21-------+--z z z z z (11) 数字控制器脉冲传递函数为:()z D =7654210123765432101230006174.00002745002426.004106.01713.01391.00567.0003254.000578.0001517.0003949.003882.01618.03642.04506.02181.01826.03753.02691.009501.001377.0-------------+--++-+---+-+--+-+-z z z z z z z z z z z z z z z z z z z z z(12)4.用MATLAB 软件仿真将()z G 和()z D 相应的函数式填入matlab 原理框图中仿真过程的位置,如图2所示。
仿真被控过程的响应曲线见图3。
单位阶跃输入信号根据稳定性要求,G (z )中z=1的极点应包含在Φe (z )的零点中,系统针对阶跃输入进行设计,q=1,显然准确性条件中已满足了稳定性要求。
按照系统原理图,在simulink 下构造系统结构图模型,取输入信号为单位阶跃信号,如图2、图3所示。
图2 单位阶跃信号输入时的系统仿真图图3 单位阶跃信号输入时的系统仿真图单位速度输入信号(z)的零点中,系统针对阶跃输入进根据稳定性要求,G(z)中z=1的极点应包含在Φe行设计,q=2,显然准确性条件中已满足了稳定性要求。
按照系统原理图,在simulink 下构造系统结构图模型,取输入信号为单位速度信号,如图4、图5所示。
图4 单位速度信号输入时的系统仿真图图5 单位速度信号输入时的系统仿真图单位加速度输入信号(z)的零点中,系统针对阶跃输入进根据稳定性要求,G(z)中z=1的极点应包含在Φe行设计,q=2,显然准确性条件中不满足稳定性要求,无法进行设计。
参考文献[1] 王划一.自动控制原理.北京:国防工业出版社,2007[2] 于海生,丁军航,潘松峰,吴贺荣.微型计算机控制技术.北京:清华大学出版社,2011附录源程序的M 文件:num=[0 0 0 10 70 100]; %多项式()s G 的分子 den=[1 11 31 21 0 0]; %多项式()s G 的分母 Gs=tf(num,den);Gz=c2d(Gs,,'zoh'); %将传递函数()s G 离散化为()z Gzsys=zpk(Gz); %将脉冲传递函数()z G 转化为零极点分布形式 num1=[0 0 ]; %系统闭环脉冲传递函数()z Φ den1=[1 0 ]; %系统误差传递函数()z e Φ Us=tf(num1,den1);Uz=c2d(Us,,'zoh');Tz=1/Gz*Uz; %数字控制器()z D[a,b,c,d,f]=solve('a-1=-f','b-a=*f','c-b=3.*f','d-c=*f','d=*f') %a ,b ,c ,d ,f 分别代表12f ,13f ,14f ,15f ,21f课设体会为期三周的课设马上就要结束了,在这三周的课程设计时间里,有痛苦,也有欢乐,当分到题目时,心中一阵窃喜,因为之前做过的实验和这个题目有一点类似。
但是,需要自己查找的资料还有很多,很多函数自己不知道,要求用的c2d函数和solve函数之前都没有接触过,所以需要自己查阅。
在做这个题目的时候,首先需要求的是广义脉冲传递函数,很幸运找到求解它的代码。
但是在算接下来的数字控制器时,遇到了麻烦。
开始自己第一次算的时候没有找到零极点分布的形式,所以很难看出零极点,也就没有办法求解闭环脉冲传递函数和闭环误差传递函数。
在求助于老师之后,经过老师的耐心讲解,结合老师上课时所讲的内容,进而很顺利地求出数字控制器的函数。
在接下来的步骤中,问题解决地就游刃有余了。
这次课设,使我对matlab软件更加了解,可以做很多和我们日常生活中有关联的东西,进行设计、仿真、出现结果。
同时也是对我们课上学习内容的深化和对查阅和课程相关内容的能力的大大提高。
总之,受益匪浅。
[ ][ ][2014年7月 3日完成]。