收藏 分享(赏)

用matlab实现控制系统的超前校正设计精品资料.docx

上传人:风样花鼓 文档编号:21124602 上传时间:2023-07-07 格式:DOCX 页数:30 大小:177.71KB
下载 相关 举报
用matlab实现控制系统的超前校正设计精品资料.docx_第1页
第1页 / 共30页
用matlab实现控制系统的超前校正设计精品资料.docx_第2页
第2页 / 共30页
用matlab实现控制系统的超前校正设计精品资料.docx_第3页
第3页 / 共30页
亲,该文档总共30页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、武汉理工大学自动控制原理课程设计说明书目 录1.超前校正的原理和方法11.1超前校正的原理11.2超前校正的应用方法22.控制系统的超前校正设计32.1校正前系统初始状态分析32.2超前校正分析及计算52.2.1 校正装置参数计算的程序52.2.2校正后的验证62.2.3 超前校正对系统性能改变的分析83.心得体会11参考文献12本科生课程设计成绩评定表131.超前校正的原理和方法1.1超前校正的原理所谓校正,就是在调整放大器增益后仍然不能全面满足设计要求的性能指标的情况下,加入一些参数可以根据需要而改变的机构或装置,使系统整个特性发生变化,达到设计要求。无源超前网络的电路如图1所示。 图1

2、无源超前网络电路图如果输入信号源的内阻为零,且输出端的负载阻抗为无穷大,则超前网络的传递函数可写为 (1-1)式中 , 通常a为分度系数,T叫时间常数,由式(1-1)可知,采用无源超前网络进行串联校正时,整个系统的开环增益要下降a倍,因此需要提高放大器增益交易补偿。 根据式(1-1),可以得无源超前网络的对数频率特性,超前网络对频率在1/aT至1/T之间的输入信号有明显的微分作用,在该频率范围内,输出信号相角比输入信号相角超前,超前网络的名称由此而得。在最大超前角频率处,具有最大超前角。 超前网路(1-1)的相角为 (1-2)将上式对求导并令其为零,得最大超前角频率 (1-3) 将上式代入(1

3、-2),得最大超前角频率 (1-4)同时还易知 m仅与衰减因子a有关。a值越大,超前网络的微分效应越强。但a的最大值受到超前网络物理结构的制约,通常取为20左右(这就意味着超前网络可以产生的最大相位超前大约为65度)。 利用超前网络行串联校正的基本原理,是利用其相角超前特性。只要正确地将超前网络的交接频率1/aT或1/T选在待校正系统截止频率的两旁,并适当选择参数a和T,就可以使已校正系统的截止频率和相角裕度满足性能指标的要求,从而改善系统的动态性能。1.2超前校正的应用方法待校正闭环系统的稳态性能要求,可通过选择已校正系统的开环增益来保证。用频域法设计无源超前网络的步骤如下:1) 根据稳态误

4、差要求,确定开环增益K。2) 利用已确定的开环增益,计算待校正系统的相角裕度。3) 根据截止频率的要求,计算a和T。令,以保证系统的响应速度,并充分利用网络的相角超前特性。显然成立的条件是 根据上式不难求出a值,然后由(1-3)确定T。4) 验算已校正系统的相角裕度。验算时,由式(1-4)求得,再由已知的算出待校正系统在时的相角裕度。最后,按下式算出 如果验算结果不满足指标要求,要重选,一般使增大,然后重复以上步骤。2.控制系统的超前校正设计2.1校正前系统初始状态分析由已知条件,首先根据初始条件调整开环增益。因为系统的静态速度误差系数= 0.25,故取=80s-1,则待校正的系统开环传递函数

5、为上式为最小相位系统,用MATLAB画出系统伯德图,程序为: num=20;den=0.25,1,0;bode(num,den)grid得到的图形如图2所示。图2 校正前系统的伯德图再用MATLAB求校正前的相角裕度和幅值裕度,程序为: num=20;den=0.25,1,0;sys=tf(num,den);margin(sys)gm,pm,wg,wp=margin(sys)得到图形如图3所示。图3 校正前系统的裕度图可得:相角裕度 Pm =25.2deg 截止频率 wc=8.51rad/s幅值裕度 Gm =dB用MATLAB画出其根轨迹,程序为 num=20;den=0.25,1,0;rlo

6、cus(num,den);Sgrid;k,p=rlocfind(num,den);Title(控制系统根轨图)得到图形如图4所示。图4 校正前系统的根轨迹图 2.2超前校正分析及计算2.2.1 校正装置计算的程序根据1.2中所述超前校正的原理,超前网络提供的最大超前相位角应为且将提供的最大超前补偿到w=wm处,由式(2-4),可得 由 得 在此基础上超前校正控制器设计的程序代码为: G=tf(20,0.25 1 0);margin(G); %画出Bode图并显示频域性能指标phy=50-25.18+10;phy1=phy*pi/180;a=(1+sin(phy1)/(1-sin(phy1);M

7、1=1/sqrt(a);%分别返回频域响应幅值响应m、相角响应(以度为单位)和频率向量wm,p,w=bode(G); %spline为3次曲线插值函数,通过插值求新的截止频率wm=spline(m,w,M1); T=1/(wm*sqrt(a);Gc=tf(a*T 1,T 1)超前校正控制器传递函数为,Transfer function:0.1588 s + 1-0.04336 s + 12.2.2校正后的验证画出校正后的Bode图,程序为num=3.176,20;den=0.011,0.293,1,0;sys=tf(num,den);margin(sys)gm,pm,wg,wp=margin(

8、sys)校正后系统的Bode图如5图所示。图5 校正后系统的裕度图图5 校正后系统的裕度图相角裕度: Pm = 52.8deg; 截止频率: wm=12.1rad/sec幅值裕度: Gm =dB可见其相角裕度、幅值裕度均满足设计要求。所以,已校正系统的开环传递函数为: 用MATLAB画出校正后的根轨迹,程序为:num=3.176,20;den=0.011,0.293,1,0;rlocus(num,den);Title(控制系统根轨图)得到图形如图6所示。图6 校正后系统的根轨迹2.2.3 超前校正对系统性能改变的分析用MATLAB画出校正前后系统的单位阶跃响应的程序为num1=20;den1=

9、0.25,1,0;num3=3.176,20;den3=0.011,0.293,1,0;t=0:0.02:5numc1,denc1=cloop(num1,den1)y1=step(numc1,denc1,t)numc3,denc3=cloop(num3,den3)y3=step(numc3,denc3,t)plot(t,y1,y3);gridgtext(校正前)gtext(校正后)得到图形如图7所示 图7 校正前后系统的单位阶跃响应图也可用Matlab的仿真功能得到单位阶跃响应图,如图8。图8 校正后的系统仿真方框图由图7明显可以看出:1) 加入校正装置后,校正后系统单位阶跃响应的调节时间大大

10、减小,大大提升了系统的响应速度。2) 校正后系统的超调量明显减小了,阻尼比增大,动态性能得到改善。3) 校正后系统的上升时间减小很多,从而提升了系统的响应速度。综上,串入超前校正装置后,明显地提升了系统的动态性能指标,增强了系统的稳定性。3.心得体会在很多人眼中为期两周的课程设计是一种煎熬,确实,课设和我们习惯的单纯的看书做题目不一样,它更考验我们对知识的理解和应用。通过这次自控的课程设计中我可谓受益匪浅。首先当然是对于课本知识的再学习和更深刻的理解,和做题目不一样,在做课设时需要全方面的考虑问题,而不是单纯的算出一个结果,特别是对与校正系统,在试取值时需要耐心的验算,在校正后还需要前后的对比

11、分析,我这次在校正时刚开始就没能取到合适的值,但是在重新取值后最终还是满足了要求。虽说这个过程并不算是多么的漫长或艰难,但是这种经历确实能让我们养成一种不断探索的科学研究精神,我想对于工学学生这个是很重要的。这次课设对我的另一大考验就是MATLAB的应用,虽说之前上过基础强化训练课,但是并没有具体到在自动控制系统上的应用,所以自己查资料是必须的,对于工科学生来说查资料也是必备的能力,有些问题在不会时看上去很可怕,但是在看过资料后才发现也没有想象的那么难,这次课设中用到的MATLAB就比我之前想的要容易,我想搞课设很大的一方面原因也是为了提高我们的自学意识和自学能力,通过这次课设,我在查资料的能

12、力上也确实得到了提高,除开图书馆,上网搜索也的确是不错的选择。不少人抱怨在大学学不到东西,我并不这样认为。我想无论是在学习还是在生活上只有自己有心去学习和参与才可能有收获,这也算是课设给我知识之外的一点小小的感悟。参考文献 张德丰. MATLAB自动控制系统设计. 机械工业出版社,2010年1月第1版 胡寿松. 自动控制原理(第四版). 北京:科学出版社,2002年 师宇杰. 自动控制原理基于MATLAB仿真的多媒体授课教材(上册). 国防工业出版社,2007年 何衍庆. MATLAB语言的运用. 北京:化学工业出版社,2003年 谢仕宏. MATLABR2008控制系统动态仿真实例教程. 北

13、京:化学工业出版社,2009年本科生课程设计成绩评定表姓 名性 别专业、班级课程设计题目:课程设计答辩或质疑记录:成绩评定依据:评 分 项 目分值评分1选题合理、目的明确102设计方案正确,具有可行性、创新性253设计结果:仿真与实验验证254态度认真、学习刻苦、独立完成任务155设计报告规范化、参考文献充分、无原则性错误156答辩10总分100最终评定成绩(以优、良、中、及格、不及格评定)指导教师签字: 年 月 日附录资料:MATLAB的30个方法1 内部常数pi 圆周率 exp(1)自然对数的底数ei 或j 虚数单位Inf或 inf 无穷大 2 数学运算符a+b 加法a-b减法a*b矩阵乘

14、法a.*b数组乘法a/b矩阵右除ab矩阵左除a./b数组右除a.b数组左除ab 矩阵乘方a.b数组乘方-a负号 共轭转置.一般转置3 关系运算符=等于大于=大于或等于=不等于4 常用内部数学函数 指数函数exp(x)以e为底数对数函数log(x)自然对数,即以e为底数的对数log10(x)常用对数,即以10为底数的对数log2(x)以2为底数的x的对数开方函数sqrt(x)表示x的算术平方根绝对值函数abs(x)表示实数的绝对值以及复数的模三角函数(自变量的单位为弧度)sin(x)正弦函数cos(x)余弦函数tan(x)正切函数cot(x)余切函数sec(x)正割函数csc(x)余割函数反三角

15、函数 asin(x)反正弦函数acos(x)反余弦函数atan(x)反正切函数acot(x)反余切函数asec(x)反正割函数acsc(x)反余割函数双曲函数 sinh(x)双曲正弦函数cosh(x)双曲余弦函数tanh(x)双曲正切函数coth(x)双曲余切函数sech(x)双曲正割函数csch(x)双曲余割函数反双曲函数 asinh(x)反双曲正弦函数acosh(x)反双曲余弦函数atanh(x)反双曲正切函数acoth(x)反双曲余切函数asech(x)反双曲正割函数acsch(x)反双曲余割函数求角度函数atan2(y,x)以坐标原点为顶点,x轴正半轴为始边,从原点到点(x,y)的射线

16、为终边的角,其单位为弧度,范围为( , 数论函数gcd(a,b)两个整数的最大公约数lcm(a,b)两个整数的最小公倍数排列组合函数factorial(n)阶乘函数,表示n的阶乘 复数函数 real(z)实部函数imag(z)虚部函数abs(z)求复数z的模angle(z)求复数z的辐角,其范围是( , conj(z)求复数z的共轭复数求整函数与截尾函数ceil(x)表示大于或等于实数x的最小整数floor(x)表示小于或等于实数x的最大整数round(x)最接近x的整数最大、最小函数max(a,b,c,)求最大数min(a,b,c,)求最小数符号函数 sign(x)5 自定义函数-调用时:“

17、返回值列=M文件名(参数列)”function 返回变量=函数名(输入变量) 注释说明语句段(此部分可有可无)函数体语句 6进行函数的复合运算compose(f,g) 返回值为f(g(y)compose(f,g,z) 返回值为f(g(z)compose(f,g,x,.z) 返回值为f(g(z)compose(f,g,x,y,z) 返回值为f(g(z)7 因式分解syms 表达式中包含的变量 factor(表达式) 8 代数式展开syms 表达式中包含的变量 expand(表达式)9 合并同类项syms 表达式中包含的变量 collect(表达式,指定的变量)10 进行数学式化简syms 表达式

18、中包含的变量 simplify(表达式)11 进行变量替换syms 表达式和代换式中包含的所有变量 subs(表达式,要替换的变量或式子,代换式)12 进行数学式的转换调用Maple中数学式的转换命令,调用格式如下:maple(Maple的数学式转换命令) 即:maple(convert(表达式,form)将表达式转换成form的表示方式 maple(convert(表达式,form, x) 指定变量为x,将依赖于变量x的函数转换成form的表示方式(此指令仅对form为exp与sincos的转换式有用) 13 解方程solve(方程,变元) 注:方程的等号用普通的等号: = 14 解不等式调

19、用maple中解不等式的命令即可,调用形式如下: maple(maple中解不等式的命令)具体说,包括以下五种:maple( solve(不等式)) maple( solve(不等式,变元) ) maple( solve(不等式,变元) ) maple( solve(不等式,变元) ) maple( solve(不等式,变元) )15 解不等式组调用maple中解不等式组的命令即可,调用形式如下: maple(maple中解不等式组的命令) 即:maple( solve(不等式组,变元组) )16 画图方法:先产生横坐标的取值和相应的纵坐标的取值,然后执行命令: plot(x,y) 方法2:f

20、plot(f(x),xmin,xmax) fplot(f(x),xmin,xmax,ymin,ymax) 方法3:ezplot(f(x) ezplot(f(x) ,xmin,xmax) ezplot(f(x) ,xmin,xmax,ymin,ymax) 17 求极限(1)极限:syms x limit(f(x), x, a) (2)单侧极限:左极限:syms x limit(f(x), x, a,left)右极限:syms x limit(f(x), x, a,right) 18 求导数diff(f(x) diff(f(x),x) 或者:syms x diff(f(x) syms x diff

21、(f(x), x) 19 求高阶导数 diff(f(x),n) diff(f(x),x,n)或者:syms x diff(f(x),n)syms x diff(f(x), x,n) 20 在MATLAB中没有直接求隐函数导数的命令,但是我们可以根据数学中求隐函数导数的方法,在中一步一步地进行推导;也可以自己编一个求隐函数导数的小程序;不过,最简便的方法是调用Maple中求隐函数导数的命令,调用格式如下: maple(implicitdiff(f(x,y)=0,y,x) 在MATLAB中,没有直接求参数方程确定的函数的导数的命令,只能根据参数方程确定的函数的求导公式 一步一步地进行推导;或者,干

22、脆自己编一个小程序,应用起来会更加方便。21 求不定积分 int(f(x) int (f(x),x)或者:syms x int(f(x) syms x int(f(x), x) 22 求定积分、广义积分 int(f(x),a,b) int (f(x),x,a,b)或者:syms x int(f(x),a,b) syms x int(f(x), x,a,b) 23 进行换元积分的计算自身没有提供这一功能,但是可以调用Maple函数库中的changevar命令,调用方法如下:maple( with(student) ) 加载student函数库后,才能使用changevar命令maple( cha

23、ngevar( m(x)=p(u), Int(f(x),x) ) ) 把积分表达式中的m(x)代换成p(u)24 进行分部积分的计算自身没有提供这一功能,但是可以调用Maple函数库中的intparts命令,调用方法如下: maple( with(student) ) 加载student函数库后,才能使用intparts命令maple(intparts(Int(f(x),x),u) ) 指定u,用分部积分公式 进行计算25 对数列和级数进行求和 syms n symsum(f(n), n a ,b )26 进行连乘 maple(product(f(n),n=a.b)27 展开级数syms x

24、taylor(f(x), x, n, a )28 进行积分变换syms s t laplace( f(t), t, s ) 拉普拉斯变换 ilaplace( F(s), s, t ) 拉普拉斯变换的逆变换 syms t fourier( f(t), t, ) 傅立叶变换 ifourier( F(), , t ) 傅立叶变换的逆变换 syms n z ztrans( f(n), n, z) Z变换 iztrans( F(z), z, n ) Z变换的逆变换 在matlab中,矩形法、梯形法和辛普森法求近似积分可以用自身的命令,也可调用Maple的相应命令。调用方法如下: maple(with(student) ) maple(Maple中求定积分近似值的命令)29 解微分方程dsolve(微分方程,自变量) dsolve(微分方程,初始条件或边界条件,自变量)30 解微分方程组dsolve(微分方程组,自变量) dsolve(微分方程组,初始条件或边界条件,自变量)29

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 网络科技 > 其他相关文档

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报