滞后超前校正控制器设计.docx

上传人:b****6 文档编号:8933019 上传时间:2023-02-02 格式:DOCX 页数:20 大小:577.08KB
下载 相关 举报
滞后超前校正控制器设计.docx_第1页
第1页 / 共20页
滞后超前校正控制器设计.docx_第2页
第2页 / 共20页
滞后超前校正控制器设计.docx_第3页
第3页 / 共20页
滞后超前校正控制器设计.docx_第4页
第4页 / 共20页
滞后超前校正控制器设计.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

滞后超前校正控制器设计.docx

《滞后超前校正控制器设计.docx》由会员分享,可在线阅读,更多相关《滞后超前校正控制器设计.docx(20页珍藏版)》请在冰豆网上搜索。

滞后超前校正控制器设计.docx

滞后超前校正控制器设计

 

《计算机控制》课程设计报告

 

题目:

滞后-超前校正控制器设计

姓名:

胡志峰

学号:

100230105

 

2013年7月12日

《计算机控制》课程设计任务书

学号

100230105

班级

1002301

学生

胡志峰

指导教师

任倩

题目

滞后-超前校正控制器设计

设计时间

2013年7月5日至2013年7月12日共1周

设计要求

设计任务:

设单位反馈系统的开环传递函数为

,采用模拟设计法设计滞后-超前校正数字控制器,使校正后的系统满足如下指标:

(1)当

时,稳态误差不大于1/126;

(2)开环系统截止频率

rad/s;(3)相位裕度

方案设计:

1.完成控制系统的分析、设计;

2.选择元器件,完成电路设计,控制器采用MCS-51系列单片机(传感器、功率接口以及人机接口等可以暂不涉及),使用Protel绘制原理图;

3.编程实现单片机上的控制算法。

报告内容:

1.控制系统仿真和设计步骤,应包含性能曲线、采样周期的选择、数字控制器的脉冲传递函数和差分方程;

2.元器件选型,电路设计,以及绘制的Protel原理图;

3.软件流程图,以及含有详细注释的源程序;

4.设计工作总结及心得体会;

5.列出所查阅的参考资料。

指导教师签字:

系(教研室)主任签字:

2013年7月5日

一、实验目的

完成滞后-超前校正控制器设计

二、实验要求

熟练掌握MATLAB设计仿真滞后-超前校正控制器、运用Protel设计控制器硬件电路图,以及运用MCS-51单片机C或汇编语言完成控制器软件程序编程。

三、设计任务

设单位反馈系统的开环传递函数为

,采用模拟设计法设计滞后-超前校正数字控制器,使校正后的系统满足如下指标:

(1)当

时,稳态误差不大于1/126;

(2)开环系统截止频率

rad/s;

(3)相位裕度

四、实验具体步骤

4.1相位滞后超前校正控制器的连续设计

校正方案主要有串联校正、并联校正、反馈校正和前馈校正。

确定校正装置的结构和参数的方法主要有两类:

分析法和综合法。

分析法是针对被校正系统的性能和给定的性能指标,首先选择合适的校正环节的结构,然后用校正方法确定校正环节的参数。

在用分析法进行串联校正时,校正环节的结构通常采用超前校正、滞后校正和滞后-超前校正这三种类型。

超前校正的作用在于提高系统的相对稳定性和响应的快速性,滞后校正的主要作用是在不影响系统暂态性能的前提下,提高低频段的增益,改善系统的稳态特性,而滞后超前校正环节则可以同时改善系统的暂态特性和稳态特性。

这种校正的实质是综合利用了滞后和超前校正的各自特点,利用其超前部分改善暂态特性,而利用滞后部分改善稳态特性,两者各司其职,相辅相成。

(1)调整开环增益K,使其满足稳态误差不大于1/126;

(1)

按求得的开环增益K=126绘制Bode图4-1所示:

图4-1校正前系统Bode图

图4-2校正前系统阶跃响应图

由图可知:

未校正系统的

剪切频率:

相角裕度:

幅值裕度:

相位裕度:

以上计算以及仿真结果可知,系统不稳定,需要进行校正,由于

附近频段内

的对数幅频渐近线以-40dB/dec穿过0dB线,只加一个超前校正网络其相角超前量有可能不足以满足相位裕度的要求,可以设想如果让中频段(

附近)衰减,再由超前校正发挥作用,则有可能满足指标要求,而中频段衰减正好可以用滞后校正完成。

因此决定采用滞后超前校正。

(2)确定校正后的剪切频率:

选取

的原则应兼顾快速性和稳定性,

过大会增加超前校正的负担,过小又会使频带过窄,影响快速性,结合具体情况:

(3)确定滞后校正部分的参数:

根据

,取

则有

故滞后校正的传递函数为

(2)

(4)确定超前校正部分的参数:

过点(24.5rad/s,-5.12dB)做+20dB/dec斜线与滞后校正部分交于

,与0dB线交于

,计算得

,故

,故超前部分校正的传递函数

(3)

最后可得滞后超前校正网络的传递函数为

(4)

(5)检验性能指标

由于校正过程中,多处采用的是近似计算,可能会造成滞后-超前校正后得到的系统的传递函数不满足题目要求的性能指标。

所以需要对滞后-超前校正后的系统进行验证。

下面用MATLAB求已校正系统的相角裕量和幅值裕量。

图4-3校正后系统Bode图

图4-4校正后系统阶跃响应图

图4-5校正前后Bode图比较图

由图上可以读出校正后系统的:

剪切频率:

相角裕度:

幅值裕度:

相位裕度:

假设验证结果不满足指标,重新选择校正后的截止频率,重复上述过程,直到满足性能指标为止。

通过校正后系统的伯德图得到的幅值裕度和相位裕度可以看出此次设计的滞后-超前校正装置在由于超前校正作用在中频段衰减,增大了相位裕度和带宽响应快速提高;同时由于系统的滞后校正改善了系统的稳定性,提高稳态精度,由于超前的作用不致使系统响应速度变缓,故校正器设计符合要求。

由上图可知通过滞后-超前校正器的校正系统达到稳定,且各项指标均达到要求。

事实上,可以充分的利用MATLAB软件中的控制系统工具箱来解决控制中的一系列问题,可以大大提高分析和设计控制系统的效率。

本文作者创新点:

给出了基于MATLAB软件的滞后-超前校正器的设计过程并通过仿真实例验证了该方法比传统的方法节省了相当大的工作量,实现起来非常的方便。

4.2Matlab程序

%绘制校正前系统的Bode图和阶跃响应图

K=126;n1=1;

d1=conv([10],conv([0.11],[0.01671]));

s1=tf(K*n1,d1);

figure

(1);margin(s1),holdon%绘制系统的Bode图

figure

(2);sys=feedback(s1,1);step(sys)%绘制系统的阶跃响应图

%绘制校正后系统的Bode图和阶跃响应图

G0=tf(126,conv([10],conv([0.11],[0.01671])));

Gc1=tf([0.41],[41]);

Gc2=tf([0.21],[0.021]);

G=G0*Gc1*Gc2;

figure(3);bode(G)%绘制闭环系统的Bode图

margin(G),holdon

T0=feedback(G0,1)

T=feedback(G,1);

figure(4);

step(T);%绘制闭环系统的阶跃响应图

K=126;n1=1;%将校正前后Bode画在同一张图上

d1=conv([10],conv([0.11],[0.01671]));

s1=tf(K*n1,d1);

figure

(1);margin(s1),holdon;

G0=tf(126,conv([10],conv([0.11],[0.01671])));

Gc1=tf([0.41],[41]);

Gc2=tf([0.21],[0.021]);

G=G0*Gc1*Gc2;

figure

(1);bode(G);

margin(G),holdon;

legend('校正前','校正后')

4.3相位滞后-超前校正的离散化

Simulink是可以用于连续、离散以及混合的线性、非线性控制系统建模、仿真和分析的软件包,并为用户提供了用方框图进行建模的图形接口,很适合于控制系统的仿真。

使用MATLAB对滞后-超前控制器函数和校正后的开环传递函数进行离散化。

采用零极点匹配法,采样时间为10ms:

图4-6离散后系统阶跃响应图

Dz

Transferfunction:

0.8159z^2-1.572z+0.7569

-----------------------------

z^2-1.604z+0.605

Samplingtime(seconds):

0.01

G0z

Transferfunction:

0.01353z^2+0.02706z+0.01353

---------------------------------

z^3-2.454z^2+1.95z-0.4966

Samplingtime(seconds):

0.01

4.4Matlab程序

%绘制离散系统阶跃响应图

s=tf('s');

G0s=126/(s*(s/10+1)*(s/60+1));

Ds=((0.4*s+1)*(0.2*s+1))/((4*s+1)*(0.02*s+1));

G0z=c2d(G0s,0.01,'matched');

Dz=c2d(Ds,0.01,'matched');

Gz=G0z*Dz;

sys=feedback(Gz,1);

step(sys,10);

G0z=c2d(G0s,0.01,'matched');

Dz=c2d(Ds,0.01,'matched');

sys=feedback(Gz,1);

step(sys,10);

4.5Matlab/Simulink仿真离散控制器

图4-7控制系统结构图

图4-8Simulink仿真离散控制器图

图4-9Simulink仿真离散控制器系统阶跃响应图

4.6相位滞后超前校正的控制器差分方程设计

得出差分方程为:

五.控制器电路设计

5.1控制器的选择与电路设计

AT89C51提供以下标准功能:

4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。

同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。

空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。

掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。

该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。

AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

图5-1MCS-51单片机最小系统电路图

5.2AD/DA转换芯片选择与采样电路的设计

ADC0809是CMOS单片型逐次逼近式A/D转换器,内部结构如图所示,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器、逐次逼近寄存器、逻辑控制和定时电路组成。

ADC0809是美国国家半导体公司生产的CMOS工艺8通道,8位逐次逼近式A/D模数转换器。

其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。

主要特性:

8路输入通道,8位A/D转换器,即分辨率为8位;具有转换起停控制端;转换时间为100μs(时钟为640kHz时),130μs(时钟为500kHz时);单个+5V电源供电;模拟输入电压范围0~+5V,不需零点和满刻度校准;工作温度范围为-40~+85摄氏度;低功耗,约15mW。

由于该AD内部没有时钟,要外接时钟输入,时钟可以从单片机的ALE引脚引出,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6即2MHz的频率,经过两个D触发器4分频电路分频,可以得到500KHz的时钟信号,D触发器选择74HC74,这样AD转换时间为130us,由于本系统采样时间为10ms,由上述ADC0809特性可知可以满足本设计要求。

图5-2AD时钟产生电路图

图5-3AD采样电路图

DAC0832是美国资料公司研制的8位双缓冲器D/A转换器。

芯片内带有资料锁存器,可与数据总线直接相连。

电路有极好的温度跟随性,使用了COMS电流开关和控制逻辑而获得低功耗、低输出的泄漏电流误差。

芯片采用R-2RT型电阻网络,对参考电流进行分流完成D/A转换。

转换结果以一组差动电流IOUT1和IOUT2输出。

D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。

主要参数:

分辨率为8位;电流稳定时间1us;可单缓冲、双缓冲或直接数字输入;只需在满量程下调整其线性度;单一电源供电(+5V~+15V);低功耗,20mW。

根据对DAC0832的数据锁存器和DAC寄存器的不同的控制方式,DAC0832有三种工作方式:

直通方式、单缓冲方式和双缓冲方式。

DAC0832引脚功能电路应用原理图DAC0832是采样频率为八位的D/A转换芯片,集成电路内有两级输入寄存器,使DAC0832芯片具备双缓冲、单缓冲和直通三种输入方式,以便适于各种电路的需要(如要求多路D/A异步输入、同步转换等)。

所以这个芯片的应用很广泛,关于DAC0832应用的一些重要资料见下图:

D/A转换结果采用电流形式输出。

若需要相应的模拟电压信号,可通过一个高输入阻抗的线性运算放大器实现。

运放的反馈电阻可通过RFB端引用片内固有电阻,也可外接。

DAC0832逻辑输入满足TTL电平,可直接与TTL电路或微机电路连接。

将CS、WR1、WR2和XFER引脚接地,ILE引脚接+5V,Vref选择+5V,8位数字信号输入端DI0~DI7分别接单片机的P0.0~P0.7引脚。

此时DAC0832处于直通工作方式,数字量一旦输入,就直接进入DAC寄存器,进行D/A转换。

DAC输出的电压值为:

图5-4DA转换输出电路

5.3程序流程图

图5-5控制器程序流程图

5.4控制器程序

#include

#defineucharunsignedchar

#defineuintunsignedint

sbitSTART=P2^2;

sbitOE=P2^1;

sbitEOC=P2^0;

/****************定时器1初始化**********************/

voidInit_Timer1(void)//ADC0809采样时间用T1产生10ms中断

{

TMOD=0x10;//设置T1为工作方式1,16位定时器

TH1=0x0D8;

TL1=0x0F0;//装载初值,设置定时10ms

EA=1;//开总中断

ET1=1;//允许T1溢出中断

TR1=1;//启动T1

}

/***************主函数************************/

voidmain(void)

{

floatuk_1=0.0;//定义变量初值

floatuk_2=0.0;

floatuk=0.0;

floatek_1=0.0;

floatek_2=0.0;

floatek=0.0;

START=0;

OE=0;//输出数据线呈高阻态

START=1;

START=0;//开始转换数据

Init_Timer1();//初始化T1

while

(1)

{

if(EOC==1)//ADC0809转换一次完成后EOC变为高电平

{

uk_1=uk;

ek_1=ek;

uk_2=uk_1;

ek_2=ek_1;

OE=1;//输出数据转换得到的数据

ek=P1;//读取P1口AD转换后的数据

OE=0;//输出数据线置0成高阻态

}

uk=0.604*uk_1+0.605*uk_2+0.8159*ek-1.572*ek_1+0.0756*ek_2;//转换公式

P0=(uchar)uk;//将uk输出给DA

while(EOC==0);//等待转换结束

}

}

/***************T1中断服务函数************************/

voidTimer1_ISR(void)interrupt3using1

{

TH1=0x0D8;//再次转载初值

TL1=0x0F0;

START=1;

START=0;//开始下次转换

}

六.心得体会

经过为期一周的设计,感触颇深的是解决问题的方法、技巧。

在这七天中,我们遇到许多问题,感觉到对待问题要多方法处理,多角度处理。

通过这几天的设计,我们对运用MATLAB进行控制系统数字仿真有了更加深刻的认识,对用AltiumDesigner绘制电路图以及运用KeilC编写C语言程序更加的熟悉。

此次课程设计的内容对一个单位反馈系统进行滞后-超前校正。

回顾此次实践的整个过程,虽然只有短短的几天,但是真的在这个自己独立学习的过程中学到了好多东西。

课程设计开始阶段比较顺利,但是做到计算校正后系统的时域性能指标这里时,遇到了不小麻烦,不会用MATLAB编程得阶跃响应曲线。

后来,在同学的帮助下,终于看懂了课件了的那段程序,于是就求出了滞后-超前校正后系统的时域性能指标。

七.参考文献

【1】张晋格主编自动控制原理哈尔滨工业大学出版社,2003

【2】李铁桥等主编计算机控制字理论与应用哈尔滨工业大学出版社,2004

【3】张晋格主编控制系统CAD哈尔滨工业大学出版社,2004

【4】胡寿松主编自动控制原理.科学出版社.2007.

【5】黄坚主编自动控制原理及其应用[M].高等教育出版社.2004.

【6】赵景波主编 MATLAB控制系统仿真与设计机械工业出版社 2010 

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

当前位置:首页 > 高等教育 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1