MATLAB语言与控制系统仿真课程设计六条腿步行器系统的校正与优化

上传人:汽*** 文档编号:431493629 上传时间:2024-02-06 格式:DOC 页数:30 大小:960KB
返回 下载 相关 举报
MATLAB语言与控制系统仿真课程设计六条腿步行器系统的校正与优化_第1页
第1页 / 共30页
MATLAB语言与控制系统仿真课程设计六条腿步行器系统的校正与优化_第2页
第2页 / 共30页
MATLAB语言与控制系统仿真课程设计六条腿步行器系统的校正与优化_第3页
第3页 / 共30页
MATLAB语言与控制系统仿真课程设计六条腿步行器系统的校正与优化_第4页
第4页 / 共30页
MATLAB语言与控制系统仿真课程设计六条腿步行器系统的校正与优化_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《MATLAB语言与控制系统仿真课程设计六条腿步行器系统的校正与优化》由会员分享,可在线阅读,更多相关《MATLAB语言与控制系统仿真课程设计六条腿步行器系统的校正与优化(30页珍藏版)》请在金锄头文库上搜索。

1、 2008 级MATLAB语言与控制系统仿真课程大作业姓 名 * 学 号 * 所在院系 电气与电子工程 班 级 * 日 期 2011年1月12日 同组人员 作业评分 评阅人 六条腿步行器系统的校正与优化一、简介如图1所示,本报告的研究对象是一个六条腿自动行走的机器系统。由于该系统的特定用途,它需要准确而快速的响应,对带宽的要求严格,在控制系统中具有典型的代表性。因而本报告选择该系统进行分析,分别用三种方法来进行校正和优化:时域法进行串联校正;频率法进行超前校正;状态空间法进行极点配置。以达到举一反三,活学活用的效果。图1,六条腿步行器系统的实物图该系统的控制对象是六条腿的位移,通过输入信号来控

2、制系统的位移,其传递函数为,因为系统要求准确迅速和抗干扰能力强,故有如下性能指标要求:1、1型系统,阶跃响应的稳态误差为零;2、通频带带宽要大于1Hz;3、阶跃响应的超调量要小于15% ;4、响应要快,调整时间在1秒以内。首先用MATLAB描述步行器系统模型,并观察该系统的阶跃响应和频谱图。%描述系统模型,传递函数形式num0=1;den0=1 2 10 0; num,den=cloop(num0,den0);t=0:0.001:50;step(num,den,t) %求闭环模型阶跃响应图2,原系统闭环阶跃响应由响应图可知系统阻尼比大,响应很慢,调节时间38.5s。%求闭环系统Bode图sys

3、=tf(num,den)w=logspace(-1,2,400);bode(sys,w)margin(sys)图2,原系统闭环幅频相频曲线由图可以看出,系统的带宽不足。其通频带带宽可由如下程序算出:w=logspace(-1,2,400);mag,phase,w=bode(num,den,w);y,L=max(mag);wblist=find(mag0.707);wb=w(wblist(1)得结果 wb =0.1035,远小于6.28。为此,我们主要的目标是改善阻尼比和带宽。二、正文1、时域法串联校正a、设计方法指标1要求系统是一阶系统即可,指标2要求系统的自然频率比较大,由书中所给公式有,且

4、系统的阻尼比要小于0.707,这样能得到比较理想的带宽,指标3要求超调量PO15%,则要求阻尼比。最后,指标4要求系统有尽可能小的时间,为此在满足带宽的条件下,我们可以寻找到合适的阻尼比系数,程序如下:%寻找合适的阻尼比,阴尼比以damp表示damp=0.5:0.001:0.707;wB=6.28;Wn=wB./(-1.1961*damp+1.8508);Ts=4./(damp.*Wn);plot(damp,Ts)nb=find(damp=0.7);wn=Wn(nb)得结果wn =6.1962,带宽满足要求,由输出的Ts随阻尼比变化图可知,选择,能够得到比较快的响应速度。(注:教材中所选阻尼比

5、是0.52,是因为分析有误,错误之处为“in general , selecting larger results in a larger settling time”1)图3,系统调节时间Ts随阻尼比变化的关系本小节采用教材所用方案,意在对其优化,我们所加的串联校正器为。之所以采用此种PID控制器的变形,是因为,它有四个示知数,串联入系统中后,系统是四阶的,配置所需极点时正好能列出四个方程,于是可以得出合理的解,否则参数比方程多或者参数比方程少,都会给求解带来困难,而且常常是无解。在MATLAB中,可用以下形式表示控制器: numc=k*1 a b;denc=0 1 c;同教材,所需配置的闭

6、环极点特征方程式为;选取10,编程可得校正器的具体参数值:%求当阻尼比为0.7时的系统阶跃响应damp=0.7;wB=6.28;wn=wB/(-1.1961*damp+1.8508);alph=10;%求解出四元方程解c=2*damp*wn*(1+alph)-2k=wn2*(1+alph*damp2*(4+alph)-10-2*ca=(2*alph*damp*wn3*(1+damp2*alph)-10*c)/kb=alph2*damp2*wn4/k得到结果为:c = 93.4210 k =2.4753e+003 a =7.5609 b =29.1786 接着我们得到校正后闭环系统的阶跃响应图。

7、%建系统闭环模型numc=k*1 a b;denc=0 1 c;num0=1;den0=1 2 10 0;num,den=series(numc,denc,num0,den0);n,d=cloop(num,den);t=0:0.002:1.5;step(n,d,t)得到结果响应图:图4,阻尼比等于0.7时的闭环系统阶跃响应验证频率特性是否满足条件,求带宽:%求其带宽w=logspace(-1,2,400);mag,phase,w=bode(n,d,w);%得到其幅频图semilogx(w,mag),gridylabel(Mag),xlabel(Frequency)y,L=max(mag);wb

8、list=find(mag0.707);wb=w(wblist(1)Mp=ywr=w(L)得到结果为wb =40.6464 Mp =1.2165 wr =10 带宽为40多,满足要求。其幅频图如下:图5, 阻尼比等于0.7时的闭环系统幅频图b、结果分析与探讨与教材所选阻尼比相比较可得,系统响应的超调量相差不大,但当阻尼比等于0.7时,系统的响应速度要快很多。图6,教材中阻尼比等于0.52时的闭环系统阶跃响应但我们可以发现一个问题,超调量与我们的理论值不相符,比我们的理论大一些。:“一个不能忽略的零点对系统的影响是使超调量加大,响应速度加快,这是由于零点具有微分的作用;一个不能忽略的极点对系统的

9、影响是使超调量减小,调节时间增加,这是由于极点的滤波作用(或称为阻尼作用)。2”由此,我们可知,是串联的校正器引入了零点的原因,使超调量大于理论值。可以用仿真来验证这一结论的正确性,另一比较对象是只包含该系统极点,不含零点的闭环系统。%求不引入零点的闭环系统的响应,用作比较damp=0.7;wB=6.28;wn=wB/(-1.1961*damp+1.8508);alph=10;%配置的极点模型dspole=conv(1 2*damp*wn wn2,conv(1 alph*damp*wn,1 alph*damp*wn);kdc=dcgain(1,dspole); %求直流增益,让稳态误差为零t=

10、0:0.002:1.5;step(1/kdc,dspole,t)图7,不含零点的闭环系统响应图 由图7所示,不含零点时其超调量为4.49%,符合理论值,且反应速度变慢,可知前述结论是正确的。c、优化设计以前述理论为基础,我们可以对改变系统的极点来优化校正方案,具体表现为:闭环极点特征方程式中,通过改变的大小,可以改变闭环系统的极点位置,由于所添加的极点有阻尼作用,可以通过控制添加极点的位置,来达到改善超调量及响应时间的目的。令分别等于2,4,8,10,15,20,25,30,35,40,45,50,求出超调量PO、调节时间Ts及带宽wb和谐振峰值Mp,列成表以供分析比较用。程序如下:%子函数部

11、分%解四元方程得到校正器参数再得到系统闭环模型function n,d=model(alph); %定义子函数global damp wn %全局变量阻尼比和自然频率%求校正器参数c=2*damp*wn*(1+alph)-2;k=wn2*(1+alph*damp2*(4+alph)-10-2*c;a=(2*alph*damp*wn3*(1+damp2*alph)-10*c)/k;b=alph2*damp2*wn4/k;%求系统闭环模型numc=k*1 a b;denc=0 1 c;num0=1;den0=1 2 10 0;num,den=series(numc,denc,num0,den0);

12、n,d=cloop(num,den);%主函数部分%当变化时求系统的超调量PO、调节时间Ts及带宽wb和谐振峰值Mpglobal damp wn %定义全局变量阻尼比和自然频率,并赋值,供子函数调用damp=0.52;wB=6.28;wn=wB/(-1.1961*damp+1.8508);alph=2 4 8 10 15 20 25 30 35 40 45 50; %的取值for i=1:1:12 %循环求值t=0:0.0001:4;n,d=model(alph(i); %调用子函数得到系统闭环模型y=step(n,d,t); %求系统闭环模型的阶跃响应数据PO(i)=100*(max(y)-

13、1); %求超调量%求调节时间TsL=find(abs(y-1)0.02); Ts(i)=t(L(length(L); w=logspace(-1,2,400);%求系统闭环模型的幅频特性mag,phase,w=bode(n,d,w);y,L=max(mag);wblist=find(mag0.707); %求带宽wb(i)=w(wblist(1);Mp(i)=y; %求谐振峰值wr(i)=w(L); %求谐振频率endPO,Ts,wb,Mp,wrfigure(1) %图1得到PO、TsAX1,H11,H12=plotyy(alph,PO,alph,Ts);gridset(get(AX1(1)

14、,Ylabel),String,PO)set(get(AX1(2),Ylabel),String,Ts)set(H11,Marker,*,LineStyl,none)set(H12,Marker,d,LineStyl,none)figure(2) %图2得到Mp、wbAX2,H21,H22=plotyy(alph,wb,alph,Mp);gridset(get(AX2(1),Ylabel),String,wb)set(get(AX2(2),Ylabel),String,Mp)set(H21,Marker,*,LineStyl,none)set(H22,Marker,d,LineStyl,none)以下为输出图:图8,PO与Ts随变

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 销售管理

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号