温度控制器的设计与制作_第1页
温度控制器的设计与制作_第2页
温度控制器的设计与制作_第3页
温度控制器的设计与制作_第4页
温度控制器的设计与制作_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、温度控制器的设计与制作一、功能要求设计并制作一个温度控制器,用于自动接通或断开室内的电加热设备,从而使室内温度 达到设定温度要求,并能实时显示室内温度。当室内温度大于等于设定温度时,控制器断开 电加热设备;当室内温度比设定温度小2时,控制器接通电加热设备。控温范围:051控温精度:W 1二、硬件系统设计1.硬件系统由七部分组成,即单片机及看门狗电路、温度检测电路、控制输出电路、 键盘电路、显示电路、设置温度储存电路及电源电路。单片机及看门狗电路根据设计所需的单片机的内部资源(程序存储器的容量、数据存储器的容量及I/O 口数 量),选择AT89C51-24PC较合适。为了防止程序跑飞,导致温度失

2、控,进而引起可怕的后 果,本设计加入了硬件看门狗电路IMP813L,如果它的WDI脚不处于浮空状态,在1.6秒 内WDI不被触发(即没有检测到上什沿或下降沿),就说明程序已经跑飞,看门狗输出端 而厂将输出低电平到手动复位端,使复位输出端RST发出复位信号,使单片机可靠复位, 即程序重新开始执行。(注:如果选用AT89S51,由于其内部已具有看门狗电路,就不需外 加 IMP813L)温度检测电路温度传感器采用AD590,它实际上是一个与绝对温度成正比的电流源,它的工作电压 为430V,感测的温度范围为-550C+1500C,具有良好的线性输出,其输出电流与温度成正 比,即1PA/K。因此在00C

3、时的输出电流为273.2 人,在1000C时输出电流为373.2 nA。 温度传感器将温度的变化转变为电流信号,通过电阻后转变电压信号,经过运算放大器 JRC4558运算处理,处理后得到的模拟电压信号传输给A/D转换部分。A/D转换器选用 ADC0804,它是用CMOS集成工艺制成的逐次逼近型模数转换芯片,分辨率8位,转换时 间100s基准电压05V,输入模拟电压05V。控制输出电路控制信号由单片机的P1.4引脚输出,经过光耦TLP521-1隔离后,经三极管C8550直 接驱动继电器WJ108-1C-05VDC,如果所接的电加热设备的功率W2KW,则可利用继电器 的常开触点直接控制加热设备,如

4、果加热设备的功率2KW,可以继电器控制接触器,由接 触器直接控制加热设备。键盘电路键盘共有四个按键,分别是S1 (设置)、S2 ( + )、S3 (-)、S4 (储存)。通过键盘来设 置室内应达到的温度,键盘采用中断方式控制。显示电路显示电路由两位E10501_AR数码管组成,由两片74LS164驱动,实现静态显示,74LS164 所需的串行数据和时钟由单片机的P3.0和P3.1提供。对于学过“串行口 ”知识的班级,实 习时,可以采用串行口工作于方式0,即同步移位寄存器的输出方式,通过串行口输出显示 数据(实时温度值或设置温度值);对于没学过“串行口”知识的班级,实习时,可以采用 模拟串行口的

5、输出方式,实现显示数据的串行输出。设置温度存储电路为了防止设定温度在电源断电后丢失,此设计加入了储存电路,储存器选用具有I2C总 线功能的AT24C01或FM24C01均可。每次通过键盘设置的室内设定温度都通过储存器储存 起来,即使是电源断电,储存器存储的设定温度也不丢失,在电源来电后,单片机自动将设定温度从储存器中读出,一方面避免了断电后的更新设置工作;另一方面也保护了控制器控 制的安全性,可靠性。(7)电源电路电源采用了串联型集成稳压器电路,电源有两路输出,一路由L7805CV稳压输出+5V, 除JRC4558、AD590外,电路的其它部分均由+5V供电;一路由MC78L12和LM79L1

6、2稳 压输出土 12V,给JRC4558、AD590供电。当然这里还可以选择现成的开关型稳压电源,但 它的价格相对来说要高一些。2硬件系统电路原理温度控制器电路原理图注:AT89S51的20脚为GND; 40脚为VCC。注:电源部分,整流桥的引脚号与实际器件的脚号不符;集成稳压器的脚号与实际器件的脚号相符。3 .材料表型号数量对应元件序号种类330 Q1R26电阻470 Q19R1R17、R28、R29820 Q2R20、R251K2R22、R232K1R273K2R21、R2410K2R18、R192K2RP3、RP4电位器5K2RP1、RP210P1C9瓷片电容30P2C17、 C1810

7、0U/25V4C1、C2、C3、C4电解电容470U/16V2C5、C61N41482D2、D3整流二极管3.9V/1W1D1稳定二极管红色、祖32D4、D5发光二极管DB1071ZLQ1整流桥KBP2061ZLQ2C85501Q1三极管12M1Y1晶振74LS1642U11、U12ICAD5901U9ADC08041U5AT24C011U6AT89C511U4IMP813L1U7JRC45581U8L7805CV1U3LM79L121U2MC78L121U1TLP521-11U10E10501-AR2DS1、DS2数码管WJ108-1C-05VDC1K1继电器220V/8V/2X15V/2.

8、5W1T1电源变压器VH-22CN1、CN2连接座三、软件系统设计341.温控系统采用模块化程序结构,可分为四大模块:(1)系统初始化模块:完成变量的设定、中断入口的设定、各变量赋初值、堆栈设定、 读设置温度、定时器T0工作方式及初值的设定并启动、开中断。(2)循环模块:完成A/D转换及温度值的换算、温度值显示、温度比较、看门狗的触 发。(3)定时器T0中断模块:完成1秒的定时。(4)外部中断INT1中断模块:完成键盘对温度值的设定。2.软件流程框图:开始- 山程序初始化A/D转换及导温度换算山BCD码转换温度比较温度显示秒标志位清零调用看门狗主程序流程图3.参考程序:(50ms 到(S1TH

9、0、TL0 赋值吗?NY-秒记数返回量温度恢复现场温度设置值加1设置灯点亮等待S1释放秒标志位置11秒记数单 元重新赋值置灯T0中断程序流程图INT1中断程序流程图温度设置值减1并显示_保存温度设置值TitleSizeNu mberRe;温度控制器源程序si s2 s3 s4 wdkz wdi sda scl drxd dtxd intr szled sbz swwd gwwd adpj szwd adwz mjsz smjsz shmjszbit p1.0 ;s1按键控制口位bit p1.1 ;s2按键控制口位bit p1.2 ;s3按键控制口位bit p1.3 ;s4按键控制口位bit p

10、1.4 ;温度控制口位bit p1.5 ;看门狗触发端bit p1.7 ;AT24C01 的数据线bit p1.6 ;AT24C01 的时钟线bit p3.0 ;74LS164 数据bit p3.1 ;74ls164 时钟bit p3.2 ;A/D转换结束信号控制口位bit p3.5 ;设置 LEDbit 00h ;秒标志位equ 30h;十位温度的BCD码存储单元equ 31h;个位温度的BCD码存储单元equ 32h ;A/D转换后的平滑滤波值存储单元equ 33h;设置温度值存储单元equ 34h;5次A/D值的初始位置,即34h38hequ 39h;1秒记数值(50ms次数)equ 3

11、ah ;3秒记数值(200ms次数)equ 3bh ;10秒记数值(200ms次数)org 0000hljmp startorg 000bhljmp timezd;T0 中断org 0013hljmp temszzd ;INT 1 中断org 0030hstart:clr sbzmov mjsz,#20mov smjsz,#15mov shmjsz,#50mov sp,#60h;赋初值;lcall durommov szwd,a;读设置温度mov tmod,#01hmov th0,#3chmov tl0,#0b0hsetb tr0;定时器T0的设定及启动setb it1 setb ex1 se

12、tb et0 setb ea ; 中断(INT1和T0中断)cyc:lcall adzhmov a,adpj lcall bcdzh lcall disp lcall tembj jnb sbz,$ clr sbz lcall wdog sjmp cyc; ;模数转换子程序名:adzh ;入口参数:无 ;出口参数:adpj; adzh:push pswpush acc mov r1,#adwz mov r2,#5 adzh1: movx r0,a jb intr,$ movx a,r0 mov r1,a inc r1 djnz r2,adzh1 ;5次A/D值完成mov r0,#adwz mo

13、v r2,#5 lcall paix ;5次A/D值排序mov r5,#00h mov r6,#00h mov r7,#3 mov a,#adwz add a,#1 mov r1,a jiafa: mov a,r1 add a,r5 mov r5,amov a,r6 addc a,#0 mov r6,a inc r1 djnz r7,jiafa ;去极值后,余下的3个值求和(和在r6r5中)chufa: mov r3,#16 mov r4,#30 mov r7,#0 mov a,r5 add a,r5 mov r5,a mov a,r6 addc a,r6 mov r6,a mov a,r5

14、add a,#15 mov r5,a mov a,r6 addc a,#0 mov r6,a ;为四舍五入作准备即和值乘以2加上15除以30chufa1: clr c mov a,r5 rlc a mov r5,a mov a,r6 rlc a mov r6,a mov a,r7 rlc a subb a,r4 jnc chufa2 add a,r4 sjmp chufa3 chufa2: inc r5 chufa3: mov r7,a djnz r3,chufa1 mov adpj,r5 ;完成温度平均值pop acc pop psw ret ;;排序子程序名:paix(从大到小);入口参数

15、:R0指向数据存储区的首地址,R2存放数据长度 ; paix:push pswpush acc paix0: mov a,r0 mov r1,a mov a,r2 mov r5,a dec r5 clr f0 paix1: mov a,r1 inc r1 clr c subb a,r1 jnc paix2 setb f0 add a,r1 xch a,r1 dec r1 mov r1,a inc r1paix2:djnz r5,paix1jnb f0,paix3 clr f0 dec r2cjne r2,#01h,paix0 paix3: pop acc pop psw ret ;T0中断程序

16、名:timezd ;出口参数:sbit ; timezd: mov th0,#3ch mov tl0,#0b0h djnz mjsz,timezd1 mov mjsz,#20 setb sbz timezd1: reti ;温度设置中断程序名:temszzd ;入口参数:szwd ;出口参数:szwdtemszzd: push psw push acc clr rs1 setb rs0 clr tr0 mov a,szwd lcall bcdzh Icall disptemsz0: lcall wdog lcall delay200ms jb s1,temsz0a ljmp temsz0bte

17、msz0a: ljmp ret0temsz0b: djnz smjsz,temsz0 mov smjsz,#15 clr szledwdog1:lcall wdoglcall delay200ms jnb s1,wdog1 ljmp temsz2temsz1: lcall delay200ms djnz shmjsz,temsz2 mov shmjsz,#50 ljmp ret0temsz2: jb s2,temsz3 lcall delay20ms jb s2,temsz3wdog2:lcall wdoglcall delay200ms jnb s2,wdog2 inc szwd mov a

18、,szwd cjne a,#52,temsz2a mov a,#51 mov szwd,atemsz2a: lcall bcdzh lcall disp mov shmjsz,#50 sjmp temsz2temsz3: jb s3,temsz4 lcall delay20ms jb s3,temsz4wdog3:lcall wdogIcall delay200ms jnb s3,wdog3 dec szwd mov a,szwd cjne a,#255,temsz3a mov a,#0 mov szwd,a temsz3a: Icall bcdzh Icall disp mov shmjsz

19、,#50 sjmp temsz2 temsz4: jb s4,temsz1 lcall delay20ms jb s4,temsz1 wdog4:lcall wdoglcall delay200ms jnb s4,wdog4 lcall xierom ret0:setb szledmov a,adpj lcall bcdzh lcall disp lcall wdog setb tr0 pop acc pop psw reti , ;bcd码转换子程序名:bcdzh ;入口参数:a ,出口参数:swwd、gwwd ; bcdzh:push pswpush b mov b,#10 div ab

20、mov swwd,a mov gwwd,b pop b pop psw ret ;温度比较子程序名:tembj ;入口参数:adpj、szwd;出口参数:wdkz tembj: push psw push acc mov a,adpj cjne a,szwd,tembj0 tembj0: jc tembj1 setb wdkz sjmp tembj3 tembj1: add a,#2cjne a,szwd,tembj2 tembj2: jnc tembj3 clr wdkz tembj3: pop acc pop psw ret ;读ROM子程序名:durom ;出口参数:a;durom: p

21、ush pswclr sda ;启动 AT24C01 mov a,#0a0h lcall a_send mov a,#08h lcall a_send setb scl setb sda clr sda mov a,#0a1h lcall a_send lcall a_receive clr sda nop nop setb scl nop nop setb sda pop psw ret ;字节发送子程序名:a_send ;入口参数:aa_send: push psw mov r0,#08ha_send1: clr scl rlc a mov sda,c nop setb scl nop n

22、op nop djnz r0,a_send1 clr scl nop nop nop setb scla_loop: mov c,sda jc a_loop clr scl pop psw ret ,;字节接收子程序名:a_receive ;出口参数:a;a_receive:push psw mov r0,#08ha_rec:setb sclnop nop mov c,sda rlc a clr scl nop nop djnz r0,a_rec setb sda nop nop setb scl nop nopclr sclpop psw ret,;写ROM子程序名:xierom;入口参数:

23、szwd;xierom: push psw push acc setb scl setb sda clr sda mov a,#0a0h lcall a_send mov a,#08h lcall a_send mov a,szwd lcall a_send clr sdanopnop setb sclnopnop setb sdalcall delay50mspop accpop psw ret;,延时200mS子程序名:delay200ms;delay200ms:mov r7,#4dell:mov r6,#200del2:mov r5,#123nopdjnz r5,$djnz r6,del

24、2 djnz r7,del1 ret;,延时50ms子程序名:delay50msdelay50ms:mov r7,#200 delal: mov r6,#123nopdjnz r6,$djnz r7,dela1ret,;延时20ms子程序名:delay20ms ,delay20ms:mov r7,#80 delayl: mov r6,#123nopdjnz r6,$djnz r7,delay1ret,,看门狗子程序名:wdog,wdog:clr wdisetb wdi clr wdi ret ,,显示子程序disp,入口参数:swwd、gwwd,disp:push pswpush accpus

25、h bmov dptr,#tabmov a,swwdcjne a,#00h,n0mov a,#0ffhajmp n1n0:movc a,a+dptrn1:lcall zjfsmov a,gwwdmovc a,a+dptr lcall zjfs pop b pop acc pop pswretzjfs:mov r0,#08hclr c zjfsl:rrc amov drxd,c setb dtxd nop nop nop nop nop nop clr dtxd nopnopnopnopnopnop djnz r0,zjfs1 rettab:db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90hend四、系统调试1.硬件系统的调试得:看温度检测电路部分,图中标有V” Vi2、Vo,由运放构成的差分比例运算电路可)(R 21 + RP3) VR 22i 2 TOC o 1-5 h z V

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论