随着社会的发展,温度的测量及控制变得越来越重要。及时准确地获取温度信息并对其进行适当的控制,这在许多工业场合中都是很重要的环节。对于不同生产情况和工艺要求下的温度控制,所采用的加热方式和控制方式均不同。目前,一个学习与应用单片机的高潮在全社会大规模地兴起。单片机由于自身的优势,使得它在当代社会占据着很大的位置。单片机具有体积小、处理能强、成本低运行速度快、功耗低及应用面广等优点,应用在温度测量与控制方面,控制简单方便,测量范围广,精度较高。
1 单片机温度控制系统的组成及工作原理
在平时生活以及工业生产当中,对于温度的控制,大多是让温度在一个固定的范围变化,这样做就使得其有很好的稳定性,不振荡,并且对于整个系统的快速性要求不高。下面就是对集中不同的单片机的温度控制系统的工作原理以及其实现的方法进行了一些简单的分析。
单片机对温度的控制流程如下:
温度传感器→模拟电压信号→放大器→模/数转换器→数字信号→单片机→温度控制范围以及通过继电器控制加热设备→单片机对温度控制
1.1单片机AT89S51的工作原理
硬件部分CPU主控制采用单片机AT89S51,电路部分主要由4个部分组成:温度采集电路、按键显示电路、电热丝控制电路和电源电路。主要是通过采用智能温度传感器DS18B20集成芯片来完成温度采集,此芯片可以把温度传感器、A/D传感器、寄存器、接口电路集成在一块芯片中,然后可以直接数字化输出和测试。按键显示电路主要经过HD7279A芯片驱动共阴数码管的显示和实现按键功能。实现电源电路主要是通过TL431二极管的稳压。而对于电热丝控制电路,可直接由电热丝接继电器和电源并通过单片机控制继电器的开和关,从而得以实现控制电热丝的加热。
1.2 凌阳单片机工作原理
图1电路原理图
实现对温度的实时测量监控,可采用凌阳单片机。采用凌阳单片机的用户可以自由输入自己想要设定的温度数值,由数码管将先前输入的温度数值显不。用尸可以把单片机测量得到的温度数值作为第一组数据,把模拟量向数字信号转换(通过A/D转换),同理通过单片机进行识别并编译后会显示在从数码管上;然后对输入数据与实际测得数据的大小自动进行一个比较,这是系统的功能。假如用户输入的数值小于实际测量得到的温度数值,那么,控制端口IOA1输出高电平控制制冷设备将会做降温工作;反之,如果说输入的数值大于或者等于实际测量到的结果,控制端口IOA2输出高电平控制加热设备就会对其进行加热升温操作。剩下的工是对实际温度进行不间断的测量并显示记录,再来与当初设定的温度数相比较,从而不断的对制冷设备和加热设备工作进行调整,来完成对温度的控制。
图1是凌阳单片机及其外围电路组成的系统,主要是由温度值键盘输入电路和温度测量电路以及显示电路组成,而凌阳单片机则是温度控制的核心。
1.3 AT89C52单片机控制原理
AT89C52单片机作为一种低功耗、高性能CMOS8位微控制器,其具有8K在系统可编程Flash存储器。从硬件上看, Vcc接外部电源是连接DS18B20与单片机的部件,GND接地,还有I/O与单片机的I/O线相连接。而相对复杂的接口编程是DS18B20简单的硬件接口的代价。经过单总线与单片机进行通讯,因此DS18B20的通讯功能是分时进行完成的。通过严格的时序来实现传感器与单片机的接口协议,然而只能是在特定的时隙,才能对DS18B20数据的写入和读出进行实现。
AT89C52对DS18B20的访问流程如下:先对DS18B20进行初始化操作再进行ROM操作命令,最后才能对存储器和数据进行操作。严格的遵循工作时序和通信协议来对DS18B20进行每一步的操作。如由AT89C52控制DS18B20完成温度转换这一过程,根据DS18B20的通讯协议,完成这一过程应经过三个步骤:在进行每一次读写之前应对DS18B20进行复位,复位成功后应发送ROM指令,最后再对RAM指令进行发送,只有进行这样一系列的操作才能预定操作DS18B20。DS18B20在通过上面的命令时,对外界的温度进行测试,用存储器将测试的温度记录下来,对其数据处理后,经过与89C52之间的通信协议,将相关的信息发送到89C52,然后将该信息交由89C52处理。
1.4 89C51单片机应用原理
本设计对89C51单片机应用系统进行采用以实现我们的设计要求,由89C51单片机在片内已经含4KB的EEPROM,因此并不需要外扩展存储器,这样可使整个系统的整体结构简单。采用89C51串行口的输出工作方式,大大提高了89C51的利用率,如此也简化了外部电路。89C51可直接扫描读数键盘,可用串/并转换模块74Ls164驱动LED直接对温度值进行显示。由于其的利用率很高,负载又重,只需在后向电路加一块同向驱动器,单片机就可正常工作。在进行串行传输数据时,可达到1MHz的频率,对温度的显示完全可以达到测控精度要求。
具体方案硬件电路由单片机、拨码开关、显示器、温度采集电路、执图1 电路原理图行部件等构成,框图见图2。
图2 原理框图
2 以加热炉为例的系统设计及相关计算
随着科学技术和生产的发展,需要对各种参数进行测量。温度是工业对象中几种被控参数最重要的部分。人们在许多行业(如冶金工业、化工生产、电力工程、机械制造和食品加工等许多领域中)都要对不同的加热用偏差控制法。首先要得到的是实测炉温对所需炉温的偏差值,其次要对炉、热处理炉、反应炉和锅炉中温度进行监测和控制。偏差值处理获得控制信号,对电阻炉的加热功率进行调节,以实现对炉温的控制。
现以加热炉为例,对其进行系统设计及相关计算,希望能够起到抛砖的控制,这就是偏差控制的原理。偏差控制(通常又成为PID控制)在日引玉的效果。常的生活和生产当中的应用较为普及,一般情况下都可以让人满意。
2.1 系统结构的设计
控制系统的组成结构如图3所示
图3 系统结构框图
温度控制系统的原理是:加热炉的温度范围为0~800℃,经过温度变送器放大并做线性化处理后,将温度信号转换成0~20mA电流信号再经过电流/电压(I/V)变化,变成0~5V的标准电压信号,此信号接到A/D转换器,经过A/D转换后,将数字信号送入单片机与给定的温度值比较,其差作为数字PID控制器的输入,经过PID运算后的输出值控制电源的PWM的通断时间,使实际温度值与给定温度值的差接近为零,达到自动控制炉温的目的。本系统还设计了LED静态显示器来实时显示温度值,对人工监视比较方便,其给定的温度值由键盘输入设定,使系统能适应各种不同温度的控制需要。如图4所示。
图5 中断服务程序框图
以电阻炉炉温为例,进行温度控制算法。一般电阻炉炉温控制,都采用偏差控制法。首先要得到的是实测炉温对所需炉温的偏差值,其次要对偏差值处理获得控制信号,对电阻炉的加热功率进行调节,以实现对炉温的控制,这就是偏差控制的原理。偏差控制(通常又成为PID控制)在日常的生活和生产当中的应用较为普及,一般情况下都可以让人满意。
2.3 温度控制程序的框图
1)主程序的框图
总的说来,本程序包括以下程序:设置有关标志、暂存单元和显示缓冲区清零、T0初始化、CPU开中断、温度显示和键盘扫描等。主程序包括8031本身的初始化以及并行接口8155初始化等等。
2)中断服务程序的框图
T0中断服务程序是温度控制系统的主体程序(如图5),主要将其用于启动数/模转换器、读入采样数据、数字滤波、越限温度报警和越限处理、PID计算以及输出可控硅的触发脉冲等等。
3)主要子服务程序的框图
主要服务子程序包括温度检测采样及数字滤波子程序、带符号双字节乘法子程序以及标度转换子程序,这是为了把实际采样取得的二进制值转换成BCD码形式的温度值,然后将其存放到显示缓冲区中,以便显示子程序调用。
在以上式子中,A0代表一次测量仪表的下限;Am代表一次测量仪表的上限;Vx代表实际测量值(工程量);Vm代表仪表上限对应的数字量;V0代表仪表下限对应的数字量。
3 结语
在数字化技术日益普及的今天,利用单片机组成的控制电路正在逐步代替传统的控制电路,本文所介绍的温度控制电路具有控制方法比较科学,控制精度较高,控温范围较广,成本低,控温效果较好等特点具有一定的推广意义及实际应用价值。