摘要:文中介绍DS18B20型数字温度传感器内部结构及工作时序,给出以DS18B20和单片机为核心设计的烟叶烤房温/湿度控温度控制装置的硬件及软件设计方案.实验证明该装置的温湿度控制准确、测量精度高、控制性能良好。
关键词:DS18B20 烟叶烤房 温/湿度控制
1 引言
近年来,随着我国烟叶生产水平的提高,烟叶烘烤过程成为制约烟叶质量的关键因素。传统的人工长期监守、利用干湿球玻璃温度计采集数据的方式,劳动强度大,操作规程复杂,与现代化的烤房设施不相适应。目前推广应用的许多智能烟叶烤房监测仪多采用电阻式温度传感器,测量精度低,需要A/D转换,电路复杂,离散性大,温度反应缓慢。为此,设计的烟叶烤房监测仪采用DS18B20型数字式温度传感器作为温度采集单元,较好地解决了上述问题。
DS18B20是由Dallas半导体公司生产的“一线总线”接口的温度传感器。一线总线结构具有简洁且经济的特点,可使用户轻松地组建传感器网络,从而为测量系统的构建引入全新概念,DS18B20的测温范围为-55℃~+125℃,在-10℃~+85℃的范围内,精度为±0.5℃,现场温度可直接通过“一线总线”以数字方式传输,大大提高了系统的抗干扰性。DS18B20适合于恶劣环境的现场温度测量,如环境控制、设备或过程控制、测温类消费电子产品等。它工作在3V~5.5V的电压范围,采用多种封装形式,从而使系统设计灵活、方便,设定分辨率及用户设定的报警温度存储在EEPROM中,掉电后依然保存。
2 DS18B20的内部结构
DS18B20的内部结构如图1所示,主要由4部分组成:64位ROM、温度传感器、非易失性温度报警触发器TH和TL、配置寄存器。DS18B20的封装形式及引脚排列如图2所示,其中DQ为数字信号输入/输出端;GND为电源地;VDD为外接供电电源输入端(采用寄生电源供电方式时接地)。
ROM中的64位序列号是出厂前被光记得好的,它可以看作是该DS18B20的地址序列码,每个DS18B20的64位序列号均不相同。64位ROM的排列是:前8位是产品家族码,接着48位是DS18B20的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。ROM作用是使每一个DS18B20都各不相同,这样就可实现一根总线上挂接多个。DS18B20采用单总线工作方式,由于所有信号(控制和数据)都通过单总线传输,因此总线的时序逻辑必须非常严格,其工作时序如图3所示。
DS18B20中的温度传感器可完成对温度的测量,并用16位符号扩展的二进制补码形式输出温度值,以0.0625℃/LSB形式表达,其中S为符号位。例如+125℃的数字输出为07D0H,+25.0625的数字输出为0191H,-25.0625℃的数字输出为FF6FH,-55℃的数字输出为FC90H。
3 硬件设计
图4给出基于AT89C52型单片机和DS18B20的烟叶烤房监测系统的硬件连接图。图中DS18B20采用外接电源工作方式,VCC端用3V~5.5V电源供电。本系统选用AT89C52作为CPU。AT89C52是一种低功耗、高性能,片内带4kB快闪可编程/擦除只读存储器的8位CMOS微控制器,与MCS-51型微控制器产品系列兼容,使用高密度、非易失存储技术制造,不需扩展即能满足要求。
温度设定通过一个2×2的矩阵键盘输入P2 I/O口。同时,P3口将设定的温湿度值送到LCD上显示,在该I/O上还连接了8段LED驱动电路,用来将烤房的温湿度送到LED上显示,以方便烟农夜间观察烤房工作状态。报警电路由一只三极管构成驱动放大,然后外接蜂鸣器构成。风门控制和排湿风扇控制电路采用可控硅,为了提高系统的抗干扰能力,采用MOC3020光耦电路作为驱动模块。
4 软件设计
目前采用的烟叶烘烤工艺是3段式烘烤,该工艺将烟叶的烘烤过程分为3个阶段,第一阶段为变黄期,第二阶段为定色期,第三阶段为烘干期,各阶段对烤房的温度要求不同,如图5所示。
在3段式烟叶烘烤过程中,温度控制曲线要求第一、三段按照每小时1℃的固定斜率均匀升温,第二阶按照每小时0.5℃的固定斜率均匀升温。这需要对烤房温度连续读入并比较,以控制升温速率,并根据烤房的历史经验数据模拟出温度惯性参数,从而进行模糊控制。当烤房内温度达到温度设定值时,结束升测控制过程,进入恒温控制状态。烤房内湿度的控制方式和温度控制方式类似因此,应用程序主要包括系统初始化、键盘扫描、温度检测读入、数字滤波、温度显示、恒温恒湿控制、报警及驱动输出等,这些操作分别由相应子程序模块完成。其程序框图如6所示。
下面给出DS18B20的外接电源工作方式下的初始化、读出、写入程序。
;————————初始化——————
INI11:CLR DAT
DJNZ R2,INI11
SETB DAT
MOV R2,#30
INI12:DJNZ R2,INI12
CLR C
ORL C,DAT
JC INI10
MOV R6,#80
INI13:ORL C,DAT
JC INI14
DJNZ R6,INI13
SJMP INI10
INI14:MOV R2,E240
INI15:DJNZ R2,INI15
RET
;——————写入——————
WRITE:CLR EA
MOV R3,#8;
WR11:SETB DAT
MOV R4,#8
RRCA;
CLR DAT
WR12:DJNZ R4,WR12
MOV DAT,C
MOV R4,#20
WR12:DJNZ R4,WR13
DJNZ R3,WR11
SETB DAT
RET
;——————读出——————
READ:CLREA
MOV R6,E8
RD11:CLR DAT
MOV R4,#4
NOP
SETB DAT;
RD12:DJNZ R4,RD12
MOV C,DAT
RRCA;
MOV R5,#30
RD13:DJNZ R5,RD13
DJNZ R6,RD11
SETB DAT
RET
;————————————
5 结束语
利用DS18B20设计的烟叶烤房监测仪硬件结构简单、整机可靠性高、开发周期短、反应灵敏、较好地满足了用户需求,已推广使用。