计算机控制技术课程设计111.docx
- 文档编号:24765695
- 上传时间:2023-06-01
- 格式:DOCX
- 页数:23
- 大小:192.36KB
计算机控制技术课程设计111.docx
《计算机控制技术课程设计111.docx》由会员分享,可在线阅读,更多相关《计算机控制技术课程设计111.docx(23页珍藏版)》请在冰豆网上搜索。
计算机控制技术课程设计111
计算机控制技术课程设计111
扬州大学能源与动力工程学院
课程设计报告
题目:
数字PID控制系统设计(II)课程:
计算机控制技术课程设计专业:
电气工程及其自动化班级:
姓名:
学号:
1
第一部分
任
务
书
2
《计算机控制技术》课程设计任务书
一、课题名称
数字PID控制系统设计(II)
二、课程设计目的
课程设计是课程教学中的一项重要内容,是达到教学目标的重要环节,是综合性较强的实践教学环节,它对帮助学生全面牢固地掌握课堂教学内容、培养学生的实践和实际动手能力、提高学生全面素质具有很重要的意义。
《计算机控制技术》是一门理论性、实用性和实践性都很强的课程,课程设计环节应占有更加重要的地位。
计算机控制技术的课程设计是一个综合运用知识的过程,它需要控制理论、程序设计、硬件电路设计等方面的知识融合。
通过课程设计,加深对学生控制算法设计的认识,学会控制算法的实际应用,使学生从整体上了解计算机控制系统的实际组成,掌握计算机控制系统的整体设计方法和设计步骤,编程调试,为从事计算机控制系统的理论设计和系统的调试工作打下基础。
三、课程设计内容
设计以89C51单片机和ADC、DAC等电路、由运放电路实现的被控对象构成的计算机单闭环反馈控制系统。
1.硬件电路设计:
89C51最小系统加上模入电路(用ADC0809等)和模出电路(用TLC7528和运放等);由运放实现的被控对象。
2.控制算法:
梯形积分型的PID控制。
3.软件设计:
主程序、中断程序、A/D转换程序、滤波程序、PID控制程序、D/A输出程序等。
四、课程设计要求
1.模入电路能接受双极性电压输入(-5V~+5V),模出电路能输出双极性电压(-5V~+5V)。
2.模入电路用两个通道分别采集被控对象的输出和给定信号。
3.每个同学选择不同的被控对象:
44GsGs(),(),,ssss(0.21)(0.81),,
55GsGs(),(),,(0.81)(0.31)(0.81)(0.21)ssss,,,,
510GsGs(),(),,
(1)(0.81)
(1)(0.41)ssss,,,,
88GsGs(),(),,ssssss(0.81)(0.41)(0.41)(0.51),,,,
4.PID参数整定,根据情况可用扩充临界比例度法,扩充响应曲线法等。
3
5.定时中断时间可在10-50ms中选取,采样周期取定时中断周期的整数倍,可取30-150ms,由实验结
果确定。
6.滤波方法可选择平均值法,中值法等。
有关的设计资料可参考《计算机控制实验指导书》的相关内容。
五、课程设计实验结果
1.控制系统能正确运行。
2.正确整定PID参数后,系统阶跃响应超调<10%,调节时间尽量短。
六、进度安排
序号内容天数
10.5布置任务,熟悉课题要求
21.5总体方案确定,硬件电路设计
31熟悉实验箱及C语言开发环境,研读范例程序,
41控制算法设计
51软件编程,调试
61实验
71总结,撰写课程设计报告
七、课程设计报告内容:
总结设计过程,写出设计报告,设计报告具体内容要求如下:
1(课程设计的目和设计的任务。
2(课程设计的要求。
3(控制系统总框图及系统工作原理。
4(控制系统的硬件电路连接图(含被控对象),电路的原理。
5(软件设计流程图及其说明。
6(电路设计,软件编程、调试中遇到的问题及分析解决方法。
7(实验结果及其分析。
8(体会。
4
第二部分
课
程
设
计
报
告
5
1课题简介„„„„„„„„„„„„„„„„„„„„„„„„„„„1
1.1课题名称„„„„„„„„„„„„„„„„„„„„„„„„„„„„„1
1.2课程设计目的„„„„„„„„„„„„„„„„„„„„„„„„„„„1
1.3课程设计内容„„„„„„„„„„„„„„„„„„„„„„„„„„„1
1.4课程设计要求„„„„„„„„„„„„„„„„„„„„„„„„„„„12数字PID控制系统方案设计„„„„„„„„„„„„„„„„„„„2
2.1控制系统总体介绍与框图„„„„„„„„„„„„„„„„„„„„„„2
2.2闭环工作原理„„„„„„„„„„„„„„„„„„„„„„„„„„„23数字PID控制系统硬件电路设计„„„„„„„„„„„„„„„„„2
3.1总体硬件电路设计„„„„„„„„„„„„„„„„„„„„„„„„„2
3.2A/D采样电路及双极性电压输入的实现原理„„„„„„„„„„„„„„3
3.3D/A输出双极性的实现原理„„„„„„„„„„„„„„„„„„„„„4
3.4I/0接口„„„„„„„„„„„„„„„„„„„„„„„„„„„„„5
3.5给定被控对象的电路实现„„„„„„„„„„„„„„„„„„„„„„64数字PID控制系统控制算法设计„„„„„„„„„„„„„„„„„6
4.1梯形积分控制算法的原理„„„„„„„„„„„„„„„„„„„„„„6
4.2计算机实现的计算公式推导„„„„„„„„„„„„„„„„„„„„„6
4.3采样周期选择„„„„„„„„„„„„„„„„„„„„„„„„„„„75数字PID控制系统软件编程设计„„„„„„„„„„„„„„„„„7
5.1主程序设计„„„„„„„„„„„„„„„„„„„„„„„„„„„„7
5.2外部中断程序及PID子程序„„„„„„„„„„„„„„„„„„„„„8
5.3定时器中断程序„„„„„„„„„„„„„„„„„„„„„„„„„„10
5.4滤波程序设计„„„„„„„„„„„„„„„„„„„„„„„„„„106实验与结果分析„„„„„„„„„„„„„„„„„„„„„„„„„„11
6.1系统调试„„„„„„„„„„„„„„„„„„„„„„„„„„„„„11
6.2实验结果„„„„„„„„„„„„„„„„„„„„„„„„„„„„„117小结与体会„„„„„„„„„„„„„„„„„„„„„„„„„„„„13参考文献„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„14附录„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„15
6
1课题简介
1.1课题名称
数字PID控制系统设计(II)
1.2课程设计目的
课程设计是课程教学中的一项重要内容,是达到教学目标的重要环节,是综合性较强的实践教学环节,它对帮助学生全面牢固地掌握课堂教学内容、培养学生的实践和实际动手能力、提高学生全面素质具有很重要的意义。
《计算机控制技术》是一门理论性、实用性和实践性都很强的课程,课程设计环节应占有更加重要的地位。
计算机控制技术的课程设计是一个综合运用知识的过程,它需要控制理论、程序设计、硬件电路设计等方面的知识融合。
通过课程设计,加深对学生控制算法设计的认识,学会控制算法的实际应用,使学生从整体上了解计算机控制系统的实际组成,掌握计算机控制系统的整体设计方法和设计步骤,编程调试,为从事计算机控制系统的理论设计和系统的调试工作打下基础。
1.3课程设计内容
设计以89C51单片机和ADC、DAC等电路、由运放电路实现的被控对象构成的计算机单闭环反馈控制系统。
1.硬件电路设计:
89C51最小系统加上模入电路(用ADC0809等)和模出电路(用TLC7528和运放等);由运放实现的被控对象。
2.控制算法:
梯形积分型的PID控制。
3.软件设计:
主程序、中断程序、A/D转换程序、滤波程序、PID控制程序、D/A输出程序等。
1.4课程设计要求
1.模入电路能接受双极性电压输入(-5V~+5V),模出电路能输出双极性电压(-5V~+5V)。
2.模入电路用两个通道分别采集被控对象的输出和给定信号。
3.每个同学选择不同的被控对象:
4.PID参数整定,根据情况可用扩充临界比例度法,扩充响应曲线法等。
5.定时中断时间可在10-50ms中选取,采样周期取定时中断周期的整数倍,可取30-150ms,由实验结果确定。
6.滤波方法可选择平均值法,中值法等。
有关的设计资料可参考《计算机控制实验指导书》的相关内容。
7
2数字PID控制系统方案设计
2.1控制系统总体介绍与框图
图2.1.1硬件电路原理图
该闭环控制系统被控对象传递函数为:
由两个通道采集给定值R与反馈值C,误差E=R-C经运放运算得到,并由模数转换器采集转换,再由PID控制,PID控制器由软件程序和单片机实现。
PID控制器输出经数模转换器和零阶保持器转换成模拟信号送至被控对象,对被控对象进行调节。
被控对象由两只运放和阻容元件构成。
2.2闭环工作原理
由信号正向通路和反馈通路构成闭合回路的自动控制系统,又称反馈控制系统。
基于反馈原理建立的自动控制系统。
所谓反馈原理,就是根据系统输出变化的信息来进行控制,即通过比较系统行为(输出)与期望行为之间的偏差,并消除偏差以获得预期的系统性能。
在反馈控制系统中,既存在由输入到输出的信号前向通路,也包含从输出端到输入端的信号反馈通路,两者组成一个闭合的回路。
因此,反馈控制系统又称为闭环控制系统。
反馈控制是自动控制的主要形式。
自动控制系统多数是反馈控制系统。
在工程上常把在运行中使输出量和期望值保持一致的反馈控制系统称为自动调节系统,而把用来精确地跟随或复现某种过程的反馈控制系统称为伺服系统或随动系统。
反馈控制系统由控制器、受控对象和反馈通路组成(见图2.1-1)。
图中带叉号的圆圈为比较环节,用来将输入与输出相减,给出偏差信号。
这一环节在具体系统中可能与控制器一起统称为调节器。
同开环控制系统相比,闭环控制具有一系列优点。
在反馈控制系统中,不管出于什么原因(外部扰动或系统内部变化),只要被控制量偏离规定值,就会产生相应的控制作用去消除偏差。
因此,它具有抑制干扰的能力,对元件特性变化不敏感,并能改善系统的响应特性。
但反馈回路的引入增加了系统的复杂性,而且增益选择不当时会引起系统的不稳定。
为提高控制精度,在扰动变量可以测量时,也常同时采用按扰动的控制(即前馈控制)作为反馈控制的补充而构成复合控制系统。
3数字PID控制系统硬件电路设计
3.1总体硬件电路设计
总体硬件电路设计如图,主要有信号源模块、模数转换单元模块、51单片机模块、数模转换单元模块以及被控对象几个部分组成。
信号源单元输出周期性防弊信号,当输出端OUT为高电平时,/ST为低电平输出,此时单片机内部执行PID算法。
模数转换单元通过6、7通道对信号源的给定信号和控制对象的输出进行采样,输出经过D0~D7经总线连接到单片机的P0口。
单片机模块采用8051单片机,对A/D转换的信号进行采集,再进行PID计算,之后输出给D/A转换模块。
D/A转换模块采用的是TLC7528芯片,将8051单片机的输出进行D/A转换,输出的模拟量对控制对象进行控制。
控制对象利用运放单元搭成。
输入信号来自D/A转换,输出被A/D转换气采集,从而形成一个闭环控制系统。
8
图3.1.1总体硬件电路
3.2A/D采样电路及双极性电压输入的实现原理
图3.2.1A/D采样电路接线图
如上图所示是模数转换单元,其读地址为0600H~063FH,所用芯片为ADC0809,ADC0809是逐次比较式的8路模拟输入,8位数字输出的A/D转换器。
其中IN0~IN7是8路模拟量输入端,其中IN1~IN5的模拟量输入允许范围:
0V~4.98V,对应数字量为00H~FFH,2.5V对应80H;IN6和IN7两路由于接了上拉电阻,所以模拟量输入允许范围:
-5V~+4.98V,对应数字量00H~FFH,0V对应80H。
D0~D7是8位数字量输出端,A、B、C与ALE控制8路模拟通道的切换,ABC分别与三根地址线或者数据线相连,CBA=000~111分别对应通道
9
IN0~IN7。
ADC0809采用逐次比较的方法完成A/D转换,由单一的+5V电源提供。
片内带有锁存功能的8路选一的模拟开关,由C、B、A引脚的编码来决定所选通道,ACD0809完成一次模数转换的时间约100um,他可以对0~5V的电压进行模数转换。
本课程设计选用了IN6和IN7分别进行给定和响应输出的两路采样。
故B、C引脚直接接到了高电平,只需要对A引脚进行控制就能对6,、7通道进行选择。
IN6和IN7可以测量-5V~+5V的量,主要是因为加了外部电路。
如图所示,在IN6和IN7的实际输入端其输入范围为0~5V,而有了外部电路后:
当IN6输入为+5V时,4号引脚电压V4=5V;V,5v
R当IN6输入为0V时,由于有电阻R7、R8的串联作用故;V,*5,2.5VR,R
R当IN6输入为-5V时,由于电阻R7、R8的串联作用,故。
即实现了-5V~+5V输入。
V,*0,0VR,R
3.3D/A输出双极性的实现原理
图3.3.1D/A转换接线图
数模转换单元采用TLC7528芯片,它是8位、并行、两路、电压型输出数模转换器。
其主要参数如下:
转换时间100ms,满量程误差1/2LSB,参考电压-10V~+10V,供电电压+5V~+15V,输入逻辑电平与TTL兼容。
输入数字范围为00H~0FFH,80H对应0V,输出电压为-5V~+4.96V。
TD-ACC+教学系统中TLC7526,其输入数字量的八位数据线、写线和通道选择控制线已接到控制计算机的总线上。
具体接线图如图。
图4所示为D/A转换单元,输入为8位数字量,00H~0FFH,输出为0~5V。
为实现双极性输出,故在输出端接上了运放单元。
UU设OUT-A端输出电压为,运放1的1号脚电压为,输出端电压。
UABO
U,,U由于运放1为反相器,则有;BA
RfRf运放2为加法器,使用时滑动变阻器调到0.5k?
,有U,,U,VOBCCR2R4,R5U,,5V当D/A输出为0V时,。
0,,2U,5B
U,0V当D/A输出为2.5V时,。
2U,5OA
U,5V当D/A输出为5V时,。
O
10
3.4I/0接口
信号说明相关的端口地址
/IOYO#0600H~#063FH
I/O接口待扩展信号(输出)/IOY1#0640H~#067FH
/IOY2#0680H~#06BFH由上表可以看出,若想选通IOY0或IOY1端口,则相关的端口地址的高8位为#06H,在本次设计电路中,高8位地址由8051的P2.0~P2.7端口提供,所以各引脚状态如下:
P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0
00000110P2.0、P2.3、P2.4、P2.5、P2.6、P2.7开始为低电平通过反相器为高电平,再通过与门最后通过74LS20时为高电平。
P2.1、P2.2经过与门到达74LS20时为高电平。
通过与非门最后E为低电平。
11
3.5给定被控对象的电路实现
图3.5.1被控对象电路
控制对象,由两个一阶惯性环节构成。
200k,第一个一阶惯性环节中电阻R=200k?
,R=200k?
,电容C=4µF,比例系数,时间常数K1,,1200k,
13-6,得到。
第二个一阶惯性环节中电阻R=20k?
,R=100k?
,电容C=1µF,,1,200,10,4,10,0.80.8s,1
5100k,3-6比例系数,时间常数得到。
最后得到。
2,100,10,1,10,1K,,5s,120k,
4数字PID控制系统控制算法设计
4.1梯形积分控制算法的原理
dett1()在模拟调节系统中,PID算法表达式为。
在计算机控制系utKpetedtTD,,,()[(),0TIdt
t()
(1)ei,ei,统中,离散的数字PID算法用梯形积分。
其控制算式为:
()etdt,,T,02Teieiekekk(),(,1)(),(,1)ukKpekTD。
(),[(),,,TIT,02i
4.2计算机实现的计算公式推导
tdet1()u(t),Kp[e(t),e(t)dt,T]PID控制规律为:
D,0TdtI
U(s)1D(s),,Kp(1,,Ts)DE(s)Ts对应的模拟PID调节器的传递函数为I
12
为了便于计算机实现,将式4.1变换成查分方程,并作如下近似
ktde(t)e(k),e(k,1)e(t)dt,Te(i),,,0dtTi
式中,T为采样周期,k为采样序号。
由式4.1、式4.3可得数字PID算法的位置型算法
kTekek(),(,1)u(k)Kp[e(k)e(i)T],,,,DTTi,0I
t()
(1)ei,ei,其中用梯形积分()etdt,,T,02Teieiekekk(),(,1)(),(,1)ukKpekTD得(),[(),,,TIT,02i
4.3采样周期选择
首先,根据香农采样定理给出了采样周期的上限,即采样周期应满足
T?
π/ωmax
其中,ωmax为被采集信号的上限角频率。
采样周期的下限为计算机执行程序和输入输出所耗的时间,系统的采样周期只能在Tmax与Tmin之间选择。
其次,要综合考虑给定值的变化频率、被控对象的特性、执行机构类型和控制回路等因素。
具体就本次课程设计的课题来说,一方面,给定方波的周期为10~20s间可调,且控制对象时间常数接近1s,变化较慢;另一方面,A/D转换时间在100μs左右,D/A转换时间在100ns左右,而程序执行时间估计在100μs左右。
故综合考虑上述因素,采样周期可以选50ms左右。
对于我的控制对象,所选择的采样周期为50ms。
5数字PID控制系统软件编程设计
5.1主程序设计
TMOD=0x01;
time=10;//定时10ms
t0_h=(65536-1000*time)/256;//计算定时器0初值
t0_l=(65536-1000*time)%256;
t0_l=t0_l+70;//修正因初值重装而引起
的定时误差
TH0=t0_h;
TL0=t0_l;
IT1=1;//边沿触发中断
EX1=1;//开外部中断1
ET0=1;//开定时中断0
TR0=1;//启动定时器
TC=1;
DAC_1=0x80;//D/A清零
13
EK=EK_1=0;//变量清零
AEK=UK=0;
ZEK=0;
str=1;
EA=1;//开总中断
while
(1);
5.2外部中断程序及PID子程序
外部中断程序流程图如图所示。
其主要功能是完成给定为零时变量初始化、读取IN7,IN6通道RK,YK(给定响应)和给定为高电平时PID控制运算及其结果D/A输出。
其中,PID算法采用位置型PID算法,如下所示:
图.5.2.1外部中断程序流程图图.5.2.2PID子程序流程图
TC--;//判采样周期到否
if(TC==0)
{
DOUT0=1;
RK=ADC_7-128;
DOUT0=0;
str=0;
str=1;
EX1=0;
14
K=200;
while(K>0)K--;
YK=ADC_7-128;
EX1=1;
DOUT0=1;
EK=YK-RK;//采样当前的偏差值,并计算偏差的变化量
AEK=EK-EK_1;
EK_1=EK;
if(abs(EK)>IBAND)I=0;//判积分分离值
else
{
ZEK=(EK+EK_1)/2+ZEK;//计算积分项
I=ZEK*TK;
I=I/ti;
}
P=EK;
D=AEK*td;//计算微分项
D=D/TK;
TEMP=(P+I+D)*kp;//计算比例项
if(TEMP>0)//判控制量是否溢出,溢出赋极值
{
if(TEMP>=127)
UK=127;
else
UK=(char)TEMP;
}
else
{
if(TEMP<-128)
UK=-128;
else
UK=(char)TEMP;
}
DAC_1=UK+128;//D/A输出控制量
TC=TK;//采样周期变量恢复
}
15
5.3定时器中断程序
TH0=t0_h;//重新装入初值
TL0=t0_l;
EX1=0;
DOUT0=1;//采集通道7
str=0;
str=1;//产生A/D启动信号
RK=ADC_7-128;
DOUT0=0;//变换为通道6
str=0;
str=1;//产生A/D启动信号
EX1=0;
K=200;
while(K>0)K--;
YK=ADC_7-128;
EX1=1;
EK=YK-RK;//采样当前的偏差值,并计算偏差的变化量
AEK=EK-EK_1;
EK_1=EK;
在程序中,设置了定时的时间,即10ms,当10ms时间到便会执行这段中断程序,定时的时间可以在主程序中通过设定time的值进行更改。
这段程序的主要目的对A/D采样进行计时,其中TC是作为采样周期的变量,如果TC=5则采样周期为50ms。
当定时时间到,首先是对计时器重新赋初值,然后判断TC是否为零,若为零说明已经有了5次定时中断,即采样时间到,此时会打开0809进行A/D采样,并将TC重新赋初值。
先计数器装初值关外部中断1启动A/D转换,DIN0清零即选择通道IN6,当200ms转换时间到时输出RK,再次启动A/D转换选择通道IN7输出YK,最后开中断。
5.4滤波程序设计滤波程序主要完成输入值的程序滤波。
相对于模拟滤波,数字滤波有以下几个优点:
数字滤波是用程序实现的,不需要增加硬件设备,所以可靠性高,稳定性好。
数字滤波可以实现对频率很低的信号的滤波,克服了模拟滤波的缺陷。
数字滤波可以根据信号的不同,采用不同的滤波参数,具有灵活、方便、功能强的特点。
由于数字滤波器具有以上优点,所以数字滤波在控制系统中得到了广泛的应用。
在我们的课题中,我们对A/D转换输入到单片机的给定和控制响应分别进行滤波,采用的是滑动窗口平均值滤波。
其部分程序如下:
charX;
MX=0;
YK=(ADC_7-128+X)/2;//取平均值
16
X=ADC_7-128;//“滑动”
6实验与结果分析
6.1系统调试
比例系数能迅速反应误差,从而减小误差,但比例系数不能消除稳态误差,KP的加大会引起系统的不稳定;积分项的作用是,只要系统存在误差,积分控制作用就不断地积累。
输出控制量以消除静差,因而只要有足够的时间积分控制项能完全消除静差,积分作用太强,会使系统超调加大,甚至
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机控制 技术 课程设计 111
![提示](https://static.bdocx.com/images/bang_tan.gif)