1、 基于AT89C51单片机温度测控系统设计一、 引言 伴随现代化科技进步,在很多工业控制场所需要很正确控制温度改变,而在日常生活中,水温智能控制应用也很广泛,在这种环境下,便提出了智能水温控制系统。 本设计一单片机AT89C51为控制关键,用K型热电偶作温度传感器,信号经放大后输入模数转换器ADC0809,转换后数字量输入到单片机AT89C51中。单片机中采取PID控制算法对测量数据和设定数据进行处理,处理后数据经数模转换器DAC0832转换为模拟量,以此来控制全隔离单相交流调压模块,从而控制锅炉水温稳定和设定值。二、 温度控制系统方案设计 采取K型热电偶测量温度,讲温度信号放大后经过A/D转
2、入单片机,单片机进行数滤波和PID运算处理后,结果经DAC0832转换为模拟量对全隔离单相交流调压模块进行控制,达成控制电炉水温目标。系统方案图1所表示。 三、 温度控制系统硬件设计 温度控制系统硬件包含:AT89C51单片机最小系统模块、A/D转换模块、D/A转换模块、信号放大电路、温控电路和其它外围电路。 3.1 单片机选择 AT89C51是ATMEL企业采取CM0S工艺生产低消耗、高性能8位单片机,和MCS-51单片机兼容,其功效特点为:(1)4K字节闪烁存放器(FLASH),可进行1000次写。(2)静态操作,外界OHZ-24MHZ晶振。(3)三层程序存放器锁。(4)128字节内部数据
3、存放器(RAM)。(5)32跟可编程输入,输出线。(6)两个6位定时/计数器。(7)六个中止源。(8)一个可编程串口。(9)支持低功耗模式和掉电模式。很适适用作控制系统设计。 3.2传感器电路和信号放大电路 采取K型热电偶作为温度传感器,它是一个能测量较高温度廉价热电偶。它价格廉价,反复性好,产生热电势大,约为0.041mV/度,所以灵敏度很高,而且它线性很好。即使其测量精度略低,但完全满足工业测量要求,所以它是工业最常见热电偶。因为热电偶输出电压信号频率较低、电压弱,所以选择了一阶有源低通滤波电路。放大电路用同相放大、负反馈方法。 3.3模数转换器ADC0809和单片机接口 模数转换器ADC
4、0809是8位逐次比较式A/D转换芯片,含有地址锁存控制分时采集8种模拟开关,其模拟量输入电压为05V,对应数字量输出为00H-FFH,和对应通道抵制锁存用译码电路,其转换时间为100s左右。 温度传感器将温度信号转换为电信号经放大后输入模数转换器ADC0809,转换后数字量输入到单片机AT89C51中和模数转换器ADC0809接口电路2图所表示。 3.4数模转换器DAC0832和单片机接口DAC0832关键参数以下:分辨路为8位,转换时间为1s。满量程误差为1LSB,参考电压为(+10-10)V,供电电源为(+5+15)V,逻辑电平输入和TTL兼容。本设计只需要一个模拟量输出,所以DAC08
5、32输出采取单缓冲输出方法。其接收从单片机送来数字信号,并将其l转换为可在0V+5V范围内改变模拟信号,此信号输出至F一级全隔离单相交流调压模块,从而调整该模块输出功率。DAC0832和单片机AT89C5 I接口电路图3所表示 3.5 功率驱动电路设计当水温和设定值不等时,必需对其进行控制以稳定于设定温度。本设计用全隔离单相交流调压模块来响应DAC0832输出,以控制电阻丝发烧功率,进而控制水温。图4所表示。 4.PID温度控制算法程序 PID控制算法是温度控制系统软件关键部分。本设计采取增量式PID控制算法,其算式以下: 式中,分别为第n次、n-1次和n-2次偏差值; 分别为百分比系数、积分
6、系数和微分系数;T为采样周期。控制模块工作过程为:单片机每隔固定时间将现场温度和用户设定目标温度差值带入增量式PID算法公式,由公式输出量决定加热器大小。如现场温度和目标温度偏差大则电压导通个数多,加热电路加热功率大,是温度实测值和设定值偏差快速降低;反之,二者偏差小则电压导通个数小,加热电路加热功率降低,直至目标值和实测值相等,形成一个闭环调整系统。其控制步骤图5所表示。 数字增量式PID控制子程序关键代码以下: 5、 结论 本系统以AT89C51单片机为控制关键利用热电偶检测温度并配合PID控制算法提升了水温控制精度,使用PID控制算法和移相触发可控硅调整方法实施自动控制系统,含有控制参数精度高。反应速度快和稳定性好特点