完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
关键词:MCS-51单片机;温度检测;温度控制;温度传感器
温度是工业控制中主要的被控参数之一,特别是在冶金、化工、建材、食品、机械、石油等工业中,具有举足重轻的作用。随着电子威廉希尔官方网站 和微型计算机的迅速发展,微机测量和控制威廉希尔官方网站 得到了迅速的发展和广泛的应用。单片机具有处理能力强、运行速度快、功耗低等优点,应用在温度测量与控制方面,控制简单方便,测量范围广,精度较高。本设计使用单片机作为核心进行控制。单片机具有集成度高,通用性好,功能强,特别是体积小,重量轻,耗能低,可靠性高,抗干扰能力强和使用方便等独特优点,在数字、智能化方面有广泛的用途。 1 系统结构及工作原理 根据应用系统的要求及软硬件功能的划分,初步确定应用系统硬件结构如图1所示。 利用温度传感器AD590可以直接渎取被测温度值,进行转换的特性,模拟温度值经过ADC0809处理后转换为数字值,然后送到单片机中进行数据处理,并与设置的温度报警限比较,超过限度后通过扬声器报警。同时处理后的数据送到LCD中显示。 1.1 系统硬件设计 1.1.1 微处理器选择和主机系统设计 由于本设计对控制精度要求不高,控制功能一般,故选择常用的MSC-51系列单片机中的STC89C58作为微处理器。片外程序存储器选用2732,容量为4 k×8位。因采集和处理的数据不多且不需要保留,估计数据存储器使用片内的即能满足要求。其中,硬件元器件STC89C58有40条引脚,有两条专门用于电源的引脚,两条外接晶振的引脚,四条控制或与其他电源复用的引脚,32条L/O引脚。 1.1.2 输入通道设计 输入通道只有一个,包括温度传感器、放大器和A/D转换器三部分。本次设计的温度检测范围属于低温,适用于低温的检测元件有热电偶、热敏电阻、集成温度传感器等。 1)这里采用集成温度传感器AD590。这种传感器是一个双端元件,其工作温度范围为-55℃~+150℃,要求工作电源为直流+4 V~+30 V。它能把温度信号变为与绝对温度成比例的电流信号,比例因子为1 μA/K。其稳定性高,线形度好,测温误差有±1、±0.5、±0.3几种等级。 AD590本身产生的电流信号,通过运算放大器TD07对电流做加法运算。在运放输出端可得到合适的电压信号,作为A/D转换的输入。电阻RP1、RP2的选择原则是使运放输出电压为0;当温度为60℃时,调节RP2使运放输出电压为4.69 V。如果0℃不能实现,也可以在另外一个温度点上(如室温)来调整。0 V和4.69 V经A/D转换后的数字量为00H和F0H(240),这样对应1℃的数字量为04H,便于进行温度的标度变换。 AD590是电流型温度传感器,通过对电流的测量可得到所需要的温度值。根据特性分挡,AD590的后缀以I,J,K,L,M表示。AD590L,AD 590M一般用于精密温度测量电路,它采用金属壳3脚封装,其中1脚为电源正端V+;2脚为电流输出端IO;3脚为管壳,一般不用。 AD590的工作原理是在被测温度一定时,AD590相当于一个恒流源,把它和5~30 V的直流电源相连,并在输出端串接一个1 kΩ的恒值电阻,那么,此电阻上流过的电流将和被测温度成正比,此时电阻两端将会有1 mV/K的电压信号。 2)本系统的运算放大器采用TD07。TD07高精度运算放大器具有极低的输入失调电压,极低的失调电压温漂,非常低的输入噪声电压幅度及长期稳定等特点。可广泛应用于稳定积分、精密绝对值电路、比较器及微弱信号的精确放大,尤其适应于宇航、军工及要求微型化、高可靠的精密仪器仪表中。 3)本系统的AD转换芯片采用ADC0809。ADC0808是精度为8位的CMOS器件,不仅包括一个8位的逐次逼近型的ADC部分,而且还提供一个8通道的模拟多路开关和通道寻址逻辑,因而有理由把它作为简单的“数据采集系统”。利用它可直接输入8个单端的模拟信号分时进行A/D转换。 1.1.3 输出通道设计 输出通道有3条,分别控制3台电炉通电和断电。这是3条具有相同结构的开关量输出通道,拟采用前面介绍的光电耦合双向晶闸管驱动电路。 2 系统软件设计 2.1 软件总体设计 应用程序结构采用中断方式,由定时器发出定时中断申请。主程序进行系统初始化,包括定时器、I/O口和中断系统的初始化,等待定时中断。在中断服务程序中,先判断是否到30 s。若不到30s,则返回;若到30s,进行以下操作:拨盘设定值检测、温度检测、标度变换、温度显示和温度控制,并根据温度检测值决定是否报警。 在应用程序总体结构中,将以下6个功能程序作为模块程序:温度设定输入、温度检测、温度值标度变换、温度显示、温度控制和报警程序模块。 2.2 程序模块设计 下面说明温度检测和温度控制这两个模块的程序设计。 1)温度检测程序模块。温度检测程序的功能是连续进行4次A/D转换,求取转换结果的平均值,存入内部50 H单元,A/D转换采用查询方式。 2)温度控制程序模块。温度控制程序的功能是将温度实测值(存于50H)与设定值(存于51H)作比较,如测值高于设定值1℃(注意,此值小于要求误差2℃,对应的数字量为04H),则关闭1台电炉;如实测值低于设定值,则接通一台电炉;否则不与调节。3台电炉接通的顺序是3#、2#、1#,这样可以保持电炉的通断具有相对稳定性。 3)主程序和中断服务程序设计。在定时中断服务程序中,各功能程序都已模块化,可直接调用。 先说明30 s定时的实现方法。当振荡频率为6 MHz时,STC89C58内部定时器的最大定时值为131 ms。要实现30 s定时,需要另外设置一软件计数器。现使定时器T0工作于方式1,定时时间为130 ms,则其时间常数为: N=216-130*10-3*6*106/12=536=0218H 软件计数器的初值=30、0.13≈E7H 主程序清单: ORG 0000H AJMP MAIN ORG 000BH AJMP T0INT//转定时中断服务程序 ORC 0030H |
|
|
|
只有小组成员才能发言,加入小组>>
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-10 20:45 , Processed in 0.345447 second(s), Total 48, Slave 40 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号