基于MATLAB的滞后校正器的计算机辅助设计

更新时间:2023-05-30 17:47:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

MATLAB

第21卷2001年6月

文章编号:1001-9081(2001)06-0027-02

计算机应用ComputerApplicationsVol.21,No.6Jun.,2001

基于MATLAB的滞后校正器的计算机辅助设计

李钟慎,王永初

(华侨大学机电工程系,福建泉州362011)

摘 要:介绍了在MATLAB环境下实现滞后校正器的计算机辅助设计,使得滞后校正器的设计变得简单、容易,仿真实例验证了该设计方法的有效性,大大提高了课程教学、解题作业、分析研究的效率。

关键词:MATLAB;滞后校正器;计算机辅助设计中图分类号:TP391.72  文献标识码:A

COMPUTERAIDEDDESIGNOFLAG2CORRECTORBASEDONMATLAB

LIZhong2shen,WYong(DepartmentofMechanicalandElectronic,,China)

Abstract:ThispaperofinMATLABenvironment,theprogrammakesthedesign2andVerifythesimulation,thedesignmethedisvalid,itgreatlyimprovesthe,research.

Keywords:MAT;lag2corrector;CAD

1 引言

目前,控制系统的计算机辅助设计技术的发展已达到了相当高的水平,并一直受到控制界的普遍重视[1]。MATLAB是国际上最优秀的科技应用软件之一,它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一个方便的、界面友好的用户环境,其强大的科学计算与可视化功能,简单易用的开放式可扩展环境,使得MATLAB成为控制领域进行计算机辅助设计的一种非常好的工具和首选平台。本文介绍在

MATLAB环境下进行滞后校正器的计算机辅助设计的方法,

凑的过程可由计算机来完成,并且可以给出仿真结果。采用

MATLAB编程,程序设计框图如图1所示。

充分利用MATLAB人机交互性能好、易于调试的特点,用户只需从键盘上输入被控对象的传递函数的分子、分母多项式系数和性能指标要求,就可以立即获得所需的滞后校正器和仿真结果,大大提高了课程教学、解题作业、分析研究的效率。

2 滞后校正器的计算机辅助设计

2.1 滞后校正器的计算机辅助设计的基本思想

滞后校正器的传递函数记为

GC(S)=KC

α  (α<1)

1+TS

(1)

图1 程序设计框图

文献[2]给出了滞后校正器的设计方法,利用古典方法设计滞后校正器的过程可以看成是一种循环和试凑的过程,在α、这个过程中,反复调整滞后校正器的参数KC、T,直到满足

性能指标要求。采用计算机辅助设计滞后校正器,循环和试

2.2 滞后校正器的程序设计

滞后校正器的程序包括主程序corrector2.m,滞后校正器

收稿日期:2000212226

作者简介:李钟慎(1971-),男,福建人,讲师,硕士,主要研究方向:控制系统的计算机辅助设计、预估控制; 王永初(1937-),男,福建人,教授,博士生导师,主要研究方向:优化控制、系统解耦.

MATLAB

  28计算机应用2001年

对于不同的被控对象,事先定义的频率、时间矢量是不相

伯德图设计函数bodelag、求解频域性能指标函数frchar、求解时域性能指标函数stepchar,这三个函数分别存放在bodelag.m、frchar.m、stepchar.m文件中。2.2.1 滞后校正器伯德图设计函数bodelag

α(2)G1(S)= (α<1)

1+TS

(2)得,GC(S)=KC3G1(S)。在伯德图设计方法由式(1)、

中,首先选择增益KC的大小,以满足稳态误差要求,然后根据相位裕量的要求,设计出滞后校正器的α、T。被控对象传递函数G(S)用ng、dg表示,滞后校正器的G1(S)传递函数用ng1、dg1表示,滞后校正器的增益用KC表示,系统校正后希望的相位裕量由dpm表示ω,为频率矢量。文件bodelag.m清单如下:

ω,kc,dpm)function[ng1,dg1]=bodelag(ng,dg,ω);[mu,pu]=bode(kc3ng,dg,

pu1=dpm-180;

[3]

同的,因此,可由函数margin、step自动确定频率、时间轴的分

度并自动生成图形,然后根据图形输入频率矢量ω、时间矢量

t。

(2)求滞后校正器的增益KC

对于Ⅰ型系统,可由下列命令求出KC。

dimng=length(ng);dimdg=length(dg);kv=100/ess;

kc=kv/(ng(dimng)/dg(dimdg-1));

(3)循环

采用whilepmc<pmd,dpm=dpm+0.1,……,end条件循环结构,如果校正后系统的相位裕量pmc满足不了期望的相位裕量pmd,则把相位裕量dpm递加0.1度,直至满足性能指标要求为止处,,但在穿越,因此应把相位裕量dpm。

、后系统的伯德图、阶跃响应图的绘制

ωω,pu1);gc=spline(pu,

mu—db=203log10(mu);

ωgr1=spline(ω,mu—db,gc);

gr=-gr1;alpha=10^(gr/20);T=10/(alpha3ωgc);ng1=[alpha3T,1];dg1=[T,1];

使用MATLAB提供的画图工具绘制出两张图,一张图同时绘制出校正前、后的伯德图,另一张图同时绘制出校正前、后的阶跃响应图,以便于比较,命令如下:

h1=figure;

),holdon,subplot(211),semilogx(w,203log10(m),′r′semilogx(w,203log10(m1)),holdoff,grid)xlabel(′Frequency(rad/s)′)ylabel(′Gain(dB)′

)title(′OPEN-LOOPBODEGRAPH′),holdon,subplot(212),semilogx(w,p,′r′semilogx(w,p1),holdoff,grid)xlabel(′Frequency(rad/s)′)ylabel(′Phase(deg)′h2=figure;

),holdon,plot(t,y2),holdoff,grid,plot(t,y1,′r′)xlabel(′Time(s)′)ylabel(′Amplitude′)title(′STEPRESPONSE′

2.2.2 求解性能指标

(1)求解频域性能指标函数frchar

函数文件frchar.m的第一行为:function[mr,wp,bw]=

ω,其中frchar(nc,dc,ω)。由此可见,它的输入参数为nc、dc、用nc、dc来表示闭环系统的传递函数,ω为事先定义的频率矢量;输出参数为mr、wp、bw,分别表示谐振峰值、谐振频率、带宽。

(2)求解时域性能指标函数stepchar

函数stepchar的调用格式为:[pos,tr,ts,tp]=stepchar(t,

y)[3]。它的输入参数为t、y,t为事先定义的时间矢量,y为闭

环系统阶跃响应的输出值,可由y=step(nc,dc,t)获得,nc、dc表示闭环系统的分子、分母多项式系数;输出参数为pos、tr、

ts、tp,分别表示超调量、上升时间、调整时间、峰值时间。2.2.3 主程序

3 仿真实例

下面通过一个实例来说明滞后校正器的计算机辅助设计过程。

有一单位负反馈系统的被控对象传递函数为:

G(S)=

主程序包括从键盘上输入被控对象的分子、分母多项式系数ng、dg,性能指标要求ess、pm,事先定义的频率矢量ω、时间矢量t,求滞后校正器的增益KC,循环调用bodelag函数求满足性能指标要求的滞后校正器的传递函数的G1(s),绘制出校正前、后开环系统的伯德图,绘制出校正前、后闭环系统的阶跃响应图,调用函数frchar、stepchar求解性能指标。

(1)从键盘上输入数据

为了使程序更通用,采用以下命令从键盘上输入数据。

);ng=input(′输入被控对象的分子多项式系数′);dg=input(′输入被控对象的分母多项式系数′);ess=input(′输入稳态误差要求(用%表示)′);pmd=input(′输入相位裕量要求′);w=input(′输入事先定义的频率矢量′);t=input(′输入事先定义的时间矢量′

S(S+25)

(3)

试设计一滞后校正器,使校正后系统满足:①单位斜坡输入的稳态误差ess不大于1%;②相位裕量PM≈45°。

在MATLAB命令窗口中键入corrector2,根据屏幕上的提示分别输入[25],[1250],1,45,根据自动生成的图形分别

输入logspace(-1,2,1000),[0:0.001:1],就可得到滞后校正器为:

GC(S)=1003

1+1.6256s

(4)

(下转第33页)  

MATLAB

第6期揭克坚等:DRS航管雷达模拟机自动机长语音技术研究

表1

指令类型航行诸元类速率类显示类报告类命令说明类菜单命令类统计总数正确数目正确率

甲(男)

131413131414908190%

  33

间,在满足模拟训练语音通话要求的基础上,尽量减少样本空

间的词汇量以提高识别的速度和准确度。在不作特殊处理时,飞机航班号的样本空间非常大。如果按照上面的思想来处理,则飞机航班号的样本空间可减小到一个训练计划所涉及的航班数,一般在1~256之间。

根据航空管制的特点来动态确定语音识别样本空间,同样可大大减少样本空间的词汇量,增加语音识别的速度和准确度。不作特殊处理时,飞机飞行高度是在0~15000m之间的一个数字,从连续语音识别的角度出发的话,则飞行高度的样本空间达15,000个;如果考虑到航空管制指挥飞机时,绝大多数是按照高度层来发指令的,即飞机的可能高度为300、600、900、……、14600、14900,则样本空间只有50个。4.4 菜单命令处理

实际使用中,DRS存在许多菜单命令,为了方便用户,语音模块自动寻找主窗口,取得窗口对象指针,进而得到附属窗口的菜单对象指针,获得菜单项,存入文件,据此建立菜单命令语音库供程序加载。此时语音模块就可响应菜单命令。

乙(女)

141514131414908493%

丙(男)

131314131314908089%

丁(女)

141414131513908392%

戊(男)

141415151414908696%

5 结束语

经过应用证明,本文实现的语音技术能够很好地满足实际环境使用要求,解决了人工操作的模拟机长的不足,既降低了训练费用,,对训练,航管雷达模拟机的可用性。,以期进一步提高参考文献

[1] IBMVoiceTypeDeveloper′sToolkitSpeechAPIReference,1997.[2] 朱明雄.计算机语音技术[M].北京:北京航空航天大学出版社,

1991.

[3] 陈永彬.语音信号处理[M].北京:上海交通大学出版社,1989.[4] T.W.parsons.语音处理[M].文成义,等译.国防工业出版社,

1989.

5 实验结果

,,二,对各种命令,10,1个单词,每类15个语句,进行试验。,其结果如表1所示。

通过表1可以看出,乙和戊的识别率最高,这是因为乙和戊参加了语音库的建模,而其他人未参加。这说明用户若想提高识别率,需用自己的声音来录制语音库模板。

(上接第28页)

稳态误差为1%,相位裕量为45.0450°,

满足设计要求。校正前、后的伯德图如图2所示,校正前、后的阶跃响应图如图3所示,校正后的性能指标为:mr=2.3777dB,wp=20.1050rad/s,

bw=35.3674rad/s,

pos=25.5118

%,

tr=0.0560s,

ts=0.4530s,tp=0.1340s。

法,这一方法使得滞后校正器的设计变得简易、有效。当然,本方法也可以推广到超前校正器、PID校正器等的设计。采用本设计方法既可以熟悉MATLAB,又可以加深对滞后校正器的认识和理解,以此来设计出智能系统。

图3 校正前、后的阶跃响应图

参考文献

[1] 薛定宇.控制系统计算机辅助设计[M].北京:清华大学出版社,

1996.1-12.

[2] 王永初,陈庄金,李钟慎.现代控制工程设计基础[M].广州:暨

图2 校正前、后的伯德图

4 结论

本文给出了利用MATLAB进行滞后校正器设计的完整方

南大学出版社,1997.200-203.

[3] 魏克新,王云亮,陈志敏.MATLAB语言与自动控制系统设计

[M].北京:机械工业出版社,1997.56-58.133-136.

本文来源:https://www.bwwdw.com/article/hw64.html

Top