基于PID的简单水温控制系统设计.docx
- 文档编号:4664615
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:12
- 大小:258.73KB
基于PID的简单水温控制系统设计.docx
《基于PID的简单水温控制系统设计.docx》由会员分享,可在线阅读,更多相关《基于PID的简单水温控制系统设计.docx(12页珍藏版)》请在冰豆网上搜索。
基于PID的简单水温控制系统设计
基于PID的简单水温控制系统设计
摘要:
在工农业生产和日常生活中,对温度的检测与控制始终有着非常重要的实际意义和广泛的实际应用。
为了加深计算机控制理论的理解,故设计一个温度控制系统,该系统主要由温度信号采集与转换模块(传感器DS18B20)、主机控制模块(单片机STC89C52)、温度控制模块(双向晶闸管BTA06)、液晶显示模块(液晶LM1602)等四部分组成,控制算法为PID算法。
系统可实现稳态误差小于1℃,最大超调小于1℃,并且调节时间较短,恒定效果好。
关键词:
传感器DS18B20,单片机STC89C52,PID算法,液晶LM1602,双向晶闸管BTA06
1选题背景
在现代工业生产和日常生活当中,对温度的检测、实现自动恒温控制有着非常重要实际意义和广泛的应用,例如大型火力发电站锅炉的温度控制、石油炼油厂油温的控制等。
一般的温度控制系统其主要构成部分有以下几部分:
被控对象、温度信号采集与转换模块、显示模块、执行模块、主机控制模块、按键等。
关系如图1.1:
图1.1温度检测装备的组成结构
在此,我选择了温度测量及其恒温控制作为计算机控制课程设计课题。
在该控制系统中,控制算法不但结合经典的PID控制算法的优势;还增加了死区控制,平均滤波、限幅消抖、抗积分饱和等措施抑制非正常情况的发生;此外,控制算法还采用了二维PID算法的优点,加快了系统的动态响应速度。
经过实际测试,采取的措施能够很好地抑制非正常情况的发生,系统的响应速度、稳态误差、超调量都取得了较为满意的结果。
2方案设计及其论证
2.1温度信号的采集及AD转换
2.1.1方案一
采用模拟类温度传感器,比如LM45、AD590、铂电阻等。
增加适当的放大电路和AD转换电路以后,就可以将温度信号送入单片机。
然而,这种设计需要用到A/D转换电路,且温度传感器的接线较为麻烦,制作成本较高。
2.1.2方案二
采用数字类温度传感器,比如DS18B20。
DS18B20为数字式温度传感器,直接将温度信号转换为数字量,可编程的分辨率为9~12位,采用独特的单总线接口,只需要一条总线就可以实现与单片机通信,简化了硬件电路设计,降低了设计成本。
将上述两种方案比较,方案二硬件电路设计得到简化并且设计成本降低,故采用方案二。
2.2主机控制模块
2.2.1方案一
采用快速单片机,比如STC12C5A32S2、ATmega16、W77E58等。
以ATmega16为例,ATmega16单片机是基于增强的AVRRISC结构的低功耗8位CMOS微控制器。
由于其先进的指令集以及单时钟周期指令执行时间,ATmega16的数据吞吐率高达1MIPS/MHz,在相同晶振频率的情况下,速度比普通快8~12倍。
从性能上来说,该单片机是一款功能非常强大的单片机,然而其价格较高(15元/片),采用该单片机会使设计成本增加。
2.2.2方案二
采用普通单片机STC89C52。
STC89C52单片机片内有8KB的EPROM和256B的RAM,程序通过串口下载,十分方便。
在晶振频率为12MHz的情况下,单指令仅需1us,完全能满足系统设计要求。
另外,该单片机价格便宜,仅5.8元/片。
将上述两种方案比较,方案一虽然性能上优于方案二,但其设计成本较高,而且本系统不需要太快的运行速度,故采用方案二。
2.3显示模块
2.3.1方案一
采用7段式数码管。
目前,市场上有大量的七段式LED数码管,价格也较为便宜,单个的数码管仅0.8元,4位的数码仅2.6元;不过采用数码管作为显示时,需要增加驱动电路,驱动电路的成本在8元左右,另外,数码管只能显示一些简单字符以及数字,而在本设计中,需要显示较多信息,比如:
实时温度、PID参数、设定温度等,采用数码管会大大增加程序的复杂度,并且还会对单片机的功能提出更高要求,其性价比较低。
2.3.2方案二
采用LM1602液晶显示。
LM1602液晶的市场价格在15元左右,可以与单片机直接连接,不需要增加额外的驱动电路,它可以显示所有的ASCII字符。
另外可以同时显示32个字符,电路设计简单、软件复杂度低、性价比高。
将上述两种方案比较,方案一中LED数码管虽然价格便宜,但需设计驱动电路,而且本设计需要显示较多系统运行参数,故又增加编码复杂度,同时对单片机性能要求提高,性价比低,方案二LM1602液晶显示有电路设计简单,编码复杂度低的优点,故采用方案二。
2.4温度控制模块
2.4.1方案一
采用固态继电器。
固态继电器有三部分组成:
输入电路,隔离(耦合)和输出电路。
固态继电器可以与逻辑电路兼容,耐振耐机械冲击,安装位置无限制,具有良好的防潮防霉防腐蚀性能,在防爆和防止臭氧污染方面的性能也极佳,输入功率小,灵敏度高,控制功率小,电磁兼容性好,噪声低和工作频率高等特点。
然而,其价格较高,电压AC220V、最大电流5A的固态继电器在25元左右,采用固态继电器会使得设计成本大大增加。
2.4.2方案二
采用双向晶闸管。
市场上双向晶闸管的种类很多,如双向晶闸管BTA06,每片仅3.5元,可以使设计成本大大降低,配备以驱动电路后,总体设计成本也不超过9元;另外,采用双向晶闸管BTA06的硬件设计也较为简单。
将上述两种方案比较,方案一中固态继电器虽然性能优于方案二中的双向晶闸管,但考虑固态继电器成本远高于双向晶闸管,故采用方案二。
2.5单片机控制方式
2.5.1方案一
P控制是一种最简单的控制方式。
其控制器的输出与输入误差信号成比例关系。
当仅有比例控制时系统输出存在稳态误差(Steady-stateerror)。
同时,由于水的温度调节,可以等效于“纯滞后+一阶惯性”,理论可推导其易产生振荡。
2.5.2方案二
PI控制是在比例控制的基础上加上积分作用,在积分控制中,控制器的输出与输入误差信号的积分成正比关系,采用比例积分控制方式,只要有足够长的响应时间,理论上可以做到稳态无静差。
2.5.3方案三
PID控制器就是根据系统的误差,利用比例、积分、微分计算出控制量进行控制的,也就是在比例积分控制方式下,加入微分控制,在微分控制中,控制器的输出与输入误差信号的微分(即误差的变化率)成正比关系。
将上述三种方案进行比较,由于本设计要求无静差,被控对象惯性较大,为了加快调节速度,采用方案三即PID算法作为控制算法。
3系统概要设计
该系统能够实现测量-25℃~125℃的温度并予以显示,精度为0.625℃,准确度0.5℃。
能够实现在0℃—99.9℃设定任一温度保持恒定。
按键可以设定恒温温度,液晶能够实时显示温度、设定温度、偏差、占空比等基本量。
控制程序能够完成恒温功能,并且获得较好的超调量、调节时间、稳态误差、响应速度等量。
系统的主要部件有7部分,分别是:
温度传感器DS18B20、STC89C52单片机、LM1602液晶、BTA06晶闸管(含光隔电路)、电炉、按键、电源模块、串口通讯模块。
整个系统的结构如下:
图3.1温度控制系统组成结构系框图
4系统硬件设计
本设计将该电路分为四个模块:
温度信号采集与转换模块(传感器DS18B20)、主机控制模块(单片机STC89C52)、温度控制模块(双向晶闸管BTA06)、液晶显示模块(LM1602液晶)。
4.1温度信号采集与转换
图4.1温度信号采集与转换原理图
如图4.1,0.1uF电容的C19用于滤除高频噪声,6.8K上拉电阻用于增加数据总线的驱动能力,DQ连接单片机的P2^2口,组成单总线通信系统,用于单片机和DS18B20数据通信。
4.2控制晶闸管导通模块
图4.2是控制晶闸管导通的原理图,MOC3022是光隔器件,单片机的P2^0端口和MOC3022的2脚相连接。
当P2^0为低电平是光隔右侧的4、6引脚导通,进而控制晶闸管导通。
R13一般取2K左右。
图4.2控制晶闸管导通模块原理图
4.3液晶显示模块
图4.3液晶显示模块原理图
4.4总系统原理图
图4.4系统总体原理图
5系统软件设计
软件流程图如下:
图5.1软件流程图
6设计体会及今后的改进意见
通过本次设计,提高了对计算机控制系统相关理论的理解,大大提升了运用理论解决现实问题的能力,本课题“简单温度控制系统”的设计与实现,从先前查相关背景资料准备到逐一突破的经验表现在以下几个面:
首先,对课题牵涉到的一些器件必须加以认识和熟练运用。
其次,要设计某一个东西,首先要明白它是干什么的,勾画出自己的设计思路。
然后将这个问题进行分块,根据系统的指标和功能框图,明确各部分任务,进行各单元电路的设计、参数计算和器件选择。
当完成电路图的设计后,如果有条件的话可以用某些仿真软件进行仿真,避免在后续进行硬件焊接出现错误后难以改正。
最后,在设计过程中遇到一些问题能够独立思考从而用所学知识得以解决,真正学会了学以致用,从中增强了对计算机控制这门课程的学习兴趣,对PID参数的调节也有了较为深入的了解。
实验仍存在不足,比如在调节PID参数时,刚开始没有明确的方向,软件设计不很合理等,我会以这次设计为契机,进一步加强自己的学习能力,提升自己的专业知识水平。
参考文献
[1]杨刚,周群.电子系统设计与实践[M].北京:
电子工业出版社,2005.
[2]张毅刚.单片机原理及应用[M].哈尔滨:
哈尔滨工业大学,2004.
[3]阎石.数字电路基础[M].北京:
高等教育出版社,2006.
[4]刘金琨.先进PID控制及其MATLAB仿真[M].北京:
中国电力出版社,2003.
[5]康华光.电子技术基础(模拟部分)[M].武汉:
高等教育出版社,2006.
[6]王建华,黄河清.计算机控制技术[M].北京:
高等教育出版社,2003.
[7]林敏,丁金华,田涛.计算机控制技术及工程应用[M].北京:
国防工业出版社,2008.
附录PID算法程序
voidauto_adjust(intNextPoint)
{
Error=setPoint-NextPoint;//偏差
if(Error>100)
{
open_duty=60;//全开通
}
else
{
SumError+=Error;//积分
dError=Error-LastError;//当前微分
LastError=Error;
real_error=Proportion*Error+Integral*SumError+Derivative*dError;
open_duty=(int)(real_error+0.5);
}
}
voidtimer0()interrupt1//每隔50ms进入中断一次
{
TH0=0x3C;
TL0=0xB0;
num_counter++;
if(num_counter>(Sample_time*20))
num_counter=0;
kaitong=num_counter<=open_duty?
0:
1;
}
键盘程序
voidkey_change()
{
staticcharkey_num,bai=5,shi,ge;
bitbai_ok=0,shi_ok=0,goback_to_PID=0;
key_num=keyscan();
switch(key_num)
{
case1:
//进入温度设定界面
{
TR0=0;//关闭定时器
kaitong=1;
setPosition(1,0);
prints("SV:
D:
0.033");
setPosition(2,0);
prints("P:
0.55I:
0.01");
setPosition(1,3);
inttostrr(setPoint,buffer);
prints(buffer);
goback_to_PID=0;
while(!
goback_to_PID)
{
if(!
bai_ok)
{
key_num=keyscan();
switch(key_num)
{
case2:
//温度的十位加一
{
bai++;
if(bai==10)
bai=0;
bai_ok=0;
break;
}
case3:
goback_to_PID=1,bai_ok=1;break;//退出手动调整
case4:
bai_ok=1;shi_ok=1;break;//左移循环调节温度的个位
case5:
//温度的十位减一
{
bai--;
if(bai==255)
bai=9;
bai_ok=0;
break;
}
case6:
bai_ok=1;break;//右移调节温度的个位
default:
bai_ok=0;break;
}
}
elseif(!
shi_ok)
{
key_num=keyscan();
switch(key_num)
{
case2:
//设定温度的个位
{
shi++;
if(shi==10)
shi=0;
shi_ok=0;
break;
}
case3:
goback_to_PID=1,shi_ok=1;break;
case4:
bai_ok=0;break;
case5:
{
shi--;
if(shi==255)
shi=9;
shi_ok=0;
break;
}
case6:
shi_ok=1;break;
default:
shi_ok=0;break;
}
}
else
{
key_num=keyscan();
switch(key_num)
{
case2:
//设定温度的小数位
{
ge++;
if(ge==10)
ge=0;
break;
}
case3:
goback_to_PID=1;break;
case4:
shi_ok=0;break;
case5:
{
ge--;
if(ge==255)
ge=9;
break;
}
case6:
bai_ok=0;break;
default:
break;
}
}
delayl(150);
setPoint=bai*100+shi*10+ge;
inttostrr(setPoint,buffer);
setPosition(1,3);
prints(buffer);
}
TR0=1;//重新启动定时器
write_com(0x01);
break;
}
default:
break;
}
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 PID 简单 水温 控制系统 设计