温度控制器的设计与制作
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
温度控制器的设计与制作
一、功能要求
设计并制作一个温度控制器,用于自动接通或断开室内的电加热设备,从而使室内温度达到设定温度要求,并能实时显示室内温度。当室内温度大于等于设定温度时,控制器断开电加热设备;当室内温度比设定温度小2时,控制器接通电加热设备。
控温范围:0~51
控温精度:≤1
二、硬件系统设计
1.硬件系统由七部分组成,即单片机及看门狗电路、温度检测电路、控制输出电路、键盘电路、显示电路、设置温度储存电路及电源电路。
(1)单片机及看门狗电路
根据设计所需的单片机的内部资源(程序存储器的容量、数据存储器的容量及I/O口数量),选择AT89C51-24PC较合适。为了防止程序跑飞,导致温度失控,进而引起可怕的后果,本设计加入了硬件看门狗电路IMP813L,如果它的WDI脚不处于浮空状态,在1.6秒内WDI不被触发(即没有检测到上什沿或下降沿),就说明程序已经跑飞,看门狗输出端WDO将输出低电平到手动复位端,使复位输出端RST发出复位信号,使单片机可靠复位,即程序重新开始执行。(注:如果选用AT89S51,由于其内部已具有看门狗电路,就不需外加IMP813L)
(2)温度检测电路
温度传感器采用AD590,它实际上是一个与绝对温度成正比的电流源,它的工作电压为4~30V,感测的温度范围为-550C~+1500C,具有良好的线性输出,其输出电流与温度成正比,即1μA/K。因此在00C时的输出电流为273.2μA,在1000C时输出电流为373.2μA。温度传感器将温度的变化转变为电流信号,通过电阻后转变电压信号,经过运算放大器JRC4558运算处理,处理后得到的模拟电压信号传输给A/D转换部分。A/D转换器选用ADC0804,它是用CMOS集成工艺制成的逐次逼近型模数转换芯片,分辨率8位,转换时间100μs,基准电压0~5V,输入模拟电压0~5V。
(3)控制输出电路
控制信号由单片机的P1.4引脚输出,经过光耦TLP521-1隔离后,经三极管C8550直接驱动继电器WJ108-1C-05VDC,如果所接的电加热设备的功率≤2KW,则可利用继电器的常开触点直接控制加热设备,如果加热设备的功率>2KW,可以继电器控制接触器,由接触器直接控制加热设备。
(4)键盘电路
键盘共有四个按键,分别是S1(设置)、S2(+)、S3(-)、S4(储存)。通过键盘来设置室内应达到的温度,键盘采用中断方式控制。
(5)显示电路
显示电路由两位E10501_AR数码管组成,由两片74LS164驱动,实现静态显示,74LS164所需的串行数据和时钟由单片机的P3.0和P3.1提供。对于学过“串行口”知识的班级,实习时,可以采用串行口工作于方式0,即同步移位寄存器的输出方式,通过串行口输出显示数据(实时温度值或设置温度值);对于没学过“串行口”知识的班级,实习时,可以采用模拟串行口的输出方式,实现显示数据的串行输出。
(6)设置温度存储电路
为了防止设定温度在电源断电后丢失,此设计加入了储存电路,储存器选用具有I2C总线功能的AT24C01或FM24C01均可。每次通过键盘设置的室内设定温度都通过储存器储存起来,即使是电源断电,储存器存储的设定温度也不丢失,在电源来电后,单片机自动将设
定温度从储存器中读出,一方面避免了断电后的更新设置工作;另一方面也保护了控制器控制的安全性,可靠性。
(7)电源电路
电源采用了串联型集成稳压器电路,电源有两路输出,一路由L7805CV稳压输出+5V,除JRC4558、AD590外,电路的其它部分均由+5V供电;一路由MC78L12和LM79L12稳压输出±12V,给JRC4558、AD590供电。当然这里还可以选择现成的开关型稳压电源,但
;----------------------------
;温度控制器源程序
;----------------------------
s1 bit p1.0 ;s1按键控制口位
s2 bit p1.1 ;s2按键控制口位
s3 bit p1.2 ;s3按键控制口位
s4 bit p1.3 ;s4按键控制口位
wdkz bit p1.4 ;温度控制口位
wdi bit p1.5 ;看门狗触发端
sda bit p1.7 ;AT24C01的数据线
scl bit p1.6 ;AT24C01的时钟线
drxd bit p3.0 ;74LS164数据
dtxd bit p3.1 ;74ls164时钟
intr bit p3.2 ;A/D转换结束信号控制口位
szled bit p3.5 ;设置LED
sbz bit 00h ;秒标志位
swwd equ 30h ;十位温度的BCD码存储单元
gwwd equ 31h ;个位温度的BCD码存储单元
adpj equ 32h ;A/D转换后的平滑滤波值存储单元szwd equ 33h ;设置温度值存储单元
adwz equ 34h ;5次A/D值的初始位置,即34h~38h mjsz equ 39h ;1秒记数值(50ms次数)
smjsz equ 3ah ;3秒记数值(200ms次数)
shmjsz equ 3bh ;10秒记数值(200ms次数)
org 0000h
ljmp start
org 000bh
ljmp timezd ;T0中断
org 0013h
ljmp temszzd ;INT1中断
org 0030h
start: clr sbz
mov mjsz,#20
mov smjsz,#15
mov shmjsz,#50
mov sp,#60h
;--------------赋初值
;lcall durom
mov szwd,a
;--------------读设置温度
mov tmod,#01h
mov th0,#3ch
mov tl0,#0b0h
setb tr0