摘要:针对传统电加热温度测控系统存在的普遍问题和数字控制控仪表的设计要求,提出了基于数字PID控制算法和89C52单片机的温度控制系统。系统采用AD590传感器检测温度,温度信号经A/D8080转换成数字量,单片机与设定值比较后,执行PID控制算法,并给出控制量去调节可控硅的触发脉冲,从而实现温度的实时显示与实时控制。实验结果表明:该控制器具有静态精度高,自适应能力强,可靠性高,抗干扰性强的特点,使炉温达到了很好在控制效果。
电加热炉是科学实验、工农业生产过程中量常见也是最常用的加热设备,由于炉子种类与规格、加热对象的不同,它们所构成的系统千差万别。温度作为一个重要检测和控制参数,对其控制的好坏直接影响到产品的质量和数量。电加热炉种类繁多,控参数通常具有时变性、非线性、不确定性等特点,对其控制方案的研究不论在基地式仪表时代还在现在的智能化仪表时代,都是很热门的对象。在现有温度控制仪表的配置加热系统中,大多数只配有一组加热元件,当温度达到调控点时,便切断电源进行保温,随着时间的推移,温度降到一定数值后启动该组件元件的电源供电进行加热,从此周而复始,动作频繁。用作测温的传感器,当温度上升到设定点温度时,必然有一个时间的滞后性,使被控温场冲过温控点,而过冲幅度与热功率的大小成正比,与温场的大、小成反比。PID控制器虽然具有结构简单、稳定性好、工作可靠、调整方便等优点,但加热系统与PID控制器设计的不匹配现象也广泛存在。本文采用80C52单片机、数字PID算法来设计的电加热式恒温控制系统,参数调整方便,实时性能好,达到超前控制的目的,具有迟滞控制稳定性的抗干扰能力,可以大大提高控制质量和自动化水平,实现发温度控制仪表的数字化与智能化。本系统可应用于孵蛋、细菌培育等恒温系统进行温度控制。
1 控制方案设计
温度场是一个梯度场,温度的上升或下降随时间缓慢变化。电加热炉温度控制过程可以用自然降温、程序升温和恒温保持3个分过程来描述。自然降温:停止加热,环境温度在整个过程中保持不变,受控温度场最终稳定为环境温度。程序升温过程:给定电压值为一变化值,由程序控制逐渐变化,最终使炉温的稳定在给定值上。恒温保持:给定炉温为一定值,使炉温稳定在给定值上,这时受控场温度恰好抵消散热因素的影响而能够维持在所设定的温度。实验和经验表明,电加热炉对象可近似为一个纯滞后环节和一个惯性环节组成,其传递函数为:
τ为纯滞后时间,K为放大倍数,T为惯性时间。在滞后时间和惯性时间均不太大、控制对象非线性小,参数时变性小的场合,RID控制是一种最直接最有效的控制方法。本文采用数字PID控制技术,设计了一个实验室可用、中小型的、温度在环境温度至此320℃范围内可调的电加热炉温度控制系统,系统结构如图1所示。
图1 炉温度控制系统结构
系统采用温度传感器对炉膛内的实时温度进行检测、转换、采样,所得的检测信号经A/D转换器转换成数字信号进入单片机,并与单片机内预先设定的温度给定值加于比较得出偏差,偏差送入控制器,单片机执行偏差的PID数字运算得到可控硅的触发脉冲,并由这个触发脉冲调节可控硅的导通时间,从而调节电炉丝与风扇的两端电压形成控制作用,使炉温保持恒定。
2 软、硬件设计
2.1 硬件系统设计
控制器的核心是80C52单片机,其硬件框图如图2所示。系统采用AD590温度传感器电路把温度转换成0~5V的电压信号,再由转换器A/D 8080转换成数字信号送入单片机80C52.单片机根据系统的给定温度和实际测量值比较得出偏差,再利用PID算法求出控制量U(kT)。通过U(kT)来决定输出触发脉冲的宽度。从而控制可控硅的导通时间,最终达到控制温度的目的。
图2 系统硬件框图
微机系统主要由CPU80C52,并行接口8255A,地址锁存器74LS373构成。
AD590是电流型温度传感器,用于精密温度测量电路。在被测温度一定时,AD590相当于一个恒流源,通过对电流的测量可得到所需要的温度值。
A/D0808 是8位逐次逼近式A/D转换器件,采用CMOS结构,包括8位的A/D转换器、8通道的多路模拟开关和与微处理器相兼容的控制逻辑。8通道多路模拟开关能直接与8路单极性模拟信号中的任何一个相连。片内还具有8路模拟开关通道地址锁存器和地址译码器、电压比较器、256R电阻T型分压器、数字模拟开关阵译码器、逐次逼近寄存器SAR、逻辑控制与定时电路、输出具有TTL电平标准的三态输出数据锁存缓冲器,直接挂接在单片机单片机的数据总线上。
单片机80C52是一种集CPU、RAM、ROM、I/O接口和中断系统等部分于一体的器件,只需要外加电源和晶振就可实现对数字信息的处理和控制。
8255A芯片用来扩展I/O口,它有3个输入输出端口,PA口接测量显示的LCD液晶显示器,PB口接给定温度显示的LCD液晶显示器,PC口控制LCD的选通,8255A的地址通过锁存器74L373选择,这样就很好的解决了单片机端口资源不足的问题,并且各个模块功能清晰。
2.2 软件系统设计
2.2.1 程序流程
程序流程如图3所示。系统程序包括主程序、对80C52单片机硬件电路的初始化、显示程序、键盘处理程序等。控制器的软件主要包括两部分:监控程序和控制程序。监控程序的主要功能包括初始化设置、内存清零、定时采样、键位操作和显示等。控制程序的主要功能包括定时、数据处理、温度控制子程序等。该系统的软件是在80C52单片机仿真开发环境下采甩基于51系列的C语言编写的,用C语言来设计程序大大提高了开发调试的工作效率。
图3 程序流程图
2.2.2 温度控制算法设计
PID控制器具有结构简单、稳定性好、工作可靠、调整方便等优点,是控制理论中技术最成熟、应用最广泛应的一种控制技术。所谓的PID控制,就是按偏差的比例、积分、微分进行控制。想模拟PID调节器的控制规律为:
式中u(t)是PID调节器的输出量,e(t)是PID调节器的输入量,Kp为比例系数,Ti为积分时间常数,Td为微分时间常数。
PID控制的形式多种多样,常用的通常有位置式和增量算式。根据对象的特点,该系统采用PID增量式控制算法。所谓的PID的增量算式,就是根据式(3)计算出u(kT-T),通过计算△u(kT)=u(kT)-u(kT-T)得到PID增量算△u(kT),即第k次采样输出算式为:
在计算机系统中,一般采用恒定的采样周期T,当确定了Kp、Ki、Kd时,根据前后3次测量的偏差值就可以求出控制增量△u(kT)。增量式PID程序流程图如图4所示。
图4 增量式PID程序流程图
3 实验结果与系统仿真
在Keilu Vision3中建立一个文件,在代码框中输入程序代码,检查调试代码无误后运行程序生成。HEX文件,打开PROTEUS的原理图编辑及仿真界面,并在界面中打开事先设计好的电路图,最后把转换好的二进制文件加载入80C52单片机,点击运行调试按钮就可以进行硬件和软件的仿真。
该系统炉温在一定范围内根据实际控制对象可以人工设定,图5为电加热炉温度设定值在50、100、150和300℃时的升温曲线图。从图中可以看出,炉温获得了良好的控制,各项指都达了电加热炉加热对象要求起跳快、调量小、控制平稳的技术指标。
图5 电加热炉温度设定值在50、100、150和300℃时的升温曲线图
4 结束语
该系统经验证能充分实现温度的实时控制与显示、设定显示,达到智能数字控制仪表的要求。试验表明,该系统具有良好的升温、降温特性,静态、动态指标均达到了控制要求,系统精度高,自适应能力强,可靠性高,抗干扰性强,控制界好等特点。系统的超调量小于4%,调节时间在温30~100范围内均6 min小于,炉温达刭了很好在控制效果。改小温度设定值,该系统可应用于孵蛋、细菌培育等场合恒温控制。该控制器的设计方法在热处理、化工、机械加工、金属冶炼等行业炉温控制器设计中具有一定的借鉴意义和推广价值。