基于AT89S52单片机的双模糊温度控制器设计
现代工业控制中,温度控制十分重要且日益复杂化。由于温度控制具有的非线性、大滞后、时变性、升温单向性等特点,在实际应用中难以建立精确的数学模型,无法用经典控制理论及现代控制理论来解决实现温度控制效果。目前,现代智能控制中不依赖对象数学模型、能有效控制时变和非线性系统的模糊控制已普遍应用于工业温度控制中。通过对温度的基本模糊控制,可达到较好的控制效果,但存在一定的稳态误差,难以达到较高的控制精度。若根据系统不同的工作状态采用不同的温度模糊控制,即双模糊控制,可大幅度改善稳态误差,提高控制精度,同时利用单片机作为主控芯片,可有效完成温度模糊处理及温度实时控制且可靠性高。
本文引用地址:http://www.amcfsurvey.com/article/170595.htm1 控制器功能及硬件设计
双模糊温度控制器主要以单片机为主控芯片,主要负责温度的模糊化处理、模糊控制算法实现、输出温度的大小控制处理。工业现场温度通过温度传感器采集,传感器输出信号经变送器转变为0~5 V 的标准信号,经A/D 转换后与温度设定值进行比较, 得到温度误差信号e 及温度变化率ec,并在系统初始阶段和稳态阶段将两者送入不同的单模糊控制器进行模糊处理,得到输出控制量u,经隔离放大后控制功率可控硅改变加热元件功率,从而完成温度的调节。其温度控制系统原理框图如图1 所示。
温度控制器主控芯片采用ATMEL 公司的AT89S52 单片机,该单片机是一种低功耗、高性能CMOS 8 位微控制器,具有8 kB 在系统可编程Flash 存储器和256B RAM,32 位I/O线,3 个16 位定时器,6 个中断源以及看门狗定时器等,可满足温度控制器的基本设计及扩展设计需求。
温度传感器采用镍铬/镍硅热电偶,该热电偶具有线性度好,热电动势较大,灵敏度高,稳定性和均匀性较好等特点,其使用温度为0~1 300 ℃,对应输出为0~52.37 mV[1]。温度变送器采用DBW 型, 把热电偶输出的毫伏信号转换为0~5 V标准模拟信号。该信号通过A/D 转换器ADC0809 的IN0 通道输入,从而转换为数字信号,再由AT89S52 单片机利用控制程序从P0 口输入其内部RAM 单元,以便与温度设定值进行比较[2]。模糊控制器输出控制量通过P1.0 输出,通过光电双向可控硅驱动器MOC3051 去驱动功率可控硅, 从而改变加热元件的加热功率,以实现温度调节的目的。
考虑到系统的人机互动,利用并行接口芯片8155 进行I/O 口扩展,以完成键盘输入及显示器输出的设计。其中键盘采用矩阵式键盘,负责参数的设定和一些开关量的输入,如:启动、停止、复位、温度设定、设定值修改、温度数字键等;而显示器采用LED 显示器,用于同时显示系统设定温度及实际温度。
2 双模糊控制算法设计
2.1 双模糊控制器结构设计
本模糊控制器采用双模糊控制结构以及典型的双输入、单输出方式,如图2 所示。将温度设定值与温度反馈值之间的误差e 及变化率ec 作为输入量,将温度控制量u 作为输出量。由于系统在不同的控制状态下存在大小不同的误差,若考虑单模糊控制器设计,将使系统的快速响应及控制精度之间存在矛盾[3],两者无法兼顾。为此,采用双模糊控制器设计,并人为设置一个误差临界值完成双模控制切换[4]。在系统初始阶段,系统误差较大,使用系统因子Kec、Ku相对较小(如Kec1、Ku1)的模糊控制器,以实现快速响应,消除误差的目的;在系统稳态阶段,系统误差较小,使用系统因子Kec、Ku适当增加(如Kec2、Ku2)的模糊控制器,以改善系统的稳态性能。
评论