冰箱温度智能控制系统的设计--大学毕业论文.doc
冰箱温度智能控制系统的设计目 录第一章概 论4一电冰箱的系统组成4二工作原理:6三本系统采用单片机控制的电冰箱主要功能及要求6第二章硬件部分7一系统结构图7二微处理器(单片机)7三温度传感器12四电压检测装置16五功能按键16六压缩机,风机、电磁阀控制17七故障报警电路17第三章 软件部分18一、主程序:MAIN18二、初始化子程序:INTI122三、键盘扫描子程序:KEY23四打开压缩机子程序:OPEN26五关闭压缩机:CLOSE27六定时器0中断程序:用于压缩机延时28七延时子程序29第四章 分析与结论30电冰箱温度测控系统设计目前市场销售的双门直冷式电冰箱,含有冷冻室和冷藏室,冷冻室通常用于冷冻的温度为-6-18;冷藏室用于在相对冷冻室较高的温度下存放食品,要求有一定的保鲜作用,不能冻伤食品,室温一般为010.传统的电冰箱温度一般是由冷藏室控制,冷藏室、冷冻室的不同温度是通过调节蒸发器在两室的面积大小来实现的,温度调节完全依靠压缩机的开停来控制.但是冰箱内的温度受诸多因素的影响,如放入冰箱物品初始温度的高低、存放品的散热特性及热容量、物品在冰箱的充满率、环境温度的高低、开门的频繁程度等.因此对这种受控参数及随机因素很多的温度控制,既难以建立一个标准的数学模型,也无法用传统的PID调节来实现.一台品质优良的电冰箱应该具有较高的温度控制精度,同时又有最优的节能效果,而为了达到这一设计要求采用模糊控制技术无疑是最佳的选择. 一电冰箱的系统组成 液体由液态变为气态时,会吸收很多热量,简称为“液体汽化吸热”,电冰箱就是利用了液体汽化的过程中需要吸热的原理来制冷的。 蒸气压缩式电冰箱制冷系统原理图如图1-1所示,主要由压缩机、冷凝器、干燥过滤器、毛细管、蒸发器等部件组成,其动力均来自压缩机,干燥过滤器用来过滤赃物和干燥水分,毛细管用来节流降压,热交换器为冷凝器和蒸发器。制冷压缩机吸入来自蒸发器的低温低压的气体制冷剂,经压缩后成为高温高压的过热蒸气,排入冷凝器中,向周围的空气散热成为高压过冷液体,高压过冷液体经干燥过滤器流入毛细管节流降压,成为低温低压液体状态,进入蒸发器中汽化,吸收周围被冷却物品的热量,使温度降低到所需值,汽化后的气体制冷剂又被压缩机吸入,至此,完成一个循环。压缩机冷循环周而复始的运行,保证了制冷过程的连续性。 图1-1 电冰箱制冷系统原理图 直冷式电冰箱的控制原理是根据蒸发器的温度控制制冷压缩机的启、停,使冰箱内的温度保持在设定温度范围内。冷冻室用于冷冻食品通常用于冷冻的温度为3°C15°C,冷藏室用于相对于冷冻室较高的温度下存放食品,要求有一定的保鲜作用,不能冻伤食品,温度一般为0°C10°C,当测得冷冷冻室温度高至3°C 0°C时或者是冷冻室温度高至10°C13°C是启动压缩机制冷,当冷冻室温度低于15°C18°C或都冷藏室温度低于0°C3°C时停止制冷,关断压缩机。采用单片机控制,可以使控制更为准确、灵活。二工作原理:根据冷藏室和冷冻室的温度情况决定是否开压缩机,若冷藏室的温度过高,则打开电磁冷门V1,关闭阀门V2,V3,同时打开压缩机,产生高温高压过热蒸气,经过冷凝器冷凝,干燥过滤器干燥,毛细节流管降压后,在蒸发器汽化制冷,产生低温低压的干燥气体。经过电磁阀门V1 流入冷藏室,使冷藏的温度迅速降低,当温度达到要求时关闭压缩机,同时关闭电磁阀门V1 。若是冷冻室的温度过高,则应打开V2关闭V1, V3 。电磁阀门V3主要用于冷冻室的化霜。需要化箱时打开V3,从压缩机流出的高温高压气体流经冷冻室可匀速将冷冻室霜层汽化。达到化霜的效果。一般化霜的时间要短,不然会伤存放的食品。三本系统采用单片机控制的电冰箱主要功能及要求:1、设定2个测温点,测量范围:26°C26°C,精度±0.5°C;2、利用功能键分别控制温度设定、冷藏室及冷冻室温度设定等;3、制冷压缩机停机后自动延时3分钟后方能再启动;4、电冰箱具有自动除霜功能;5、开门延时超过20秒发声报警;6、工作电压为180240V,当欠压或过压时,禁止启动压缩机并用指示灯显示。 硬件部分设计一系统结构图控制系统结构如图2-1 所示,主要由电源开关,电压检测装置,温度传感器,功能按键,单片机,延时电路,显示电路,指示灯电路,除霜装置和故障报警装置等。图2-1 控制系统结构图二微处理器(单片机)微处理器是本系统的核心,其性能的好坏直接影响系统的稳定,鉴于本系统为实时控制系统,系统运行时需要进行大量的运算,所以单片机采用INTEL公司的高效微控制器AT89C51。AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51 指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 1主要特性:·与MCS-51 兼容 ·4K字节可编程闪烁存储器 寿命:1000写/擦循环数据保留时间:10年·全静态工作:0Hz-24Hz·三级程序存储器锁定·128*8位内部RAM·32可编程I/O线·两个16位定时器/计数器·5个中断源 ·可编程串行通道·低功耗的闲置和掉电模式·片内振荡器和时钟电路 2管脚说明VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚 备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。三温度传感器 在传统的模拟信号远距离温度测量系统中,需要很好的解决引线误差补偿问题、多点测量切换误差问题和放大电路零点漂移误差问题等技术问题,才能够达到较高的测量精度。我们在为冰箱测温系统中,为了克服上面提到的三个问题,采用了新型数字温度传感器DS1820,在对其测温原理进行详细分析的基础上,提出了提高DS1820测量精度的方法,使DS1820的测量精度由0.5提高到0.1以上,取得了良好的测温效果。四电压检测装置电压检测装置是为了保护系统的稳定运行,采用WB系列电压越限报警传感器WB系列电压越限报警传感器以电压隔离传感器为基础,增配比较器电路、基准电压设定电路、输出驱动电路组成,用来隔离监测主回路中的交流或直流电压,当被监测的电压超过预先设定的上限值,或低于预先设定的下限值时,给出开关量控制信号。本系列产品测控一体化、体积小、精度高、使用方便,报警界限值可以由用户根据需要随时进行调整,具有很高的性能/价格比。 五功能按键因本系统使用的按键数目少,故按键采用硬件去抖。按键电路如图2-6 所示。用两个与非门构成一个RS触发器。当按键未按下时输出为1;刚键按下时输出为0。此时即使用按键的机器性能,使按键因弹性抖动而产生瞬时断开(抖动跳开B),只要按键不返回原来状态A,双稳态电路的状态不会改变,输出保持为0,不会产生抖动的波形。也就是说,即使B点的电压波形是抖动的,但经双稳态电路之后,其输出为正规的矩形波。 图2-6按键电路六压缩机,风机、电磁阀控制压缩机,风机工作原理是制冷系统内制冷剂的低压蒸汽被压缩机吸入并压缩为高压蒸汽后排至冷凝器。同时轴流风扇吸入的室外空气流经冷凝器,带走制冷剂放出的热量,使高压制冷剂蒸汽凝结为高压液体。高压液体经过过滤器、节流机构后喷入蒸发器,并在相应的低压下蒸发,吸取周围的热量。同时贯流风扇使空气不断进入蒸发器的肋片间进行热交换,并将放热后变冷的空气送向室内。如此室内空气不断循环流动,达到降低温度的目的。 而冰箱没有风扇靠自然对流来进行热量交换。电磁阀的工作原理非常简单,阻流板就象一个闸门,一个弹簧让它处于关闭状态,上面一个电磁铁芯,铁芯(低部橡胶)压在阻流板中间(凸起)的一个小眼儿上,外面一个电磁线圈,接通电源后铁芯别吸上去,小眼儿开始进气,压力达到顶开弹簧后电磁阀打开。七故障报警电路报警电路主要用示电冰箱使用过程中出现的故障,包括系统自身故障,外界故障,和误操作,如:冰箱内温度太高,外界电压波动大,未关好冰箱门或是开门时间太长等等。四个指示灯作用:L1:设置冷藏室温度时亮L2:设置冷冻室温度时亮L3:压缩机运行时亮L4:电源过压或欠压时亮第三章 软件部分 本系统软件主要由主流程、功能子程序、中断服务程序组成。采用主程序调用功能子程序,子程序尽可能少的调用其它子程序,以保证系统的稳定运行。本系统温度在64°C64°C,用七位即可存放,因此温度值用一个字节存放, 最高位存放符号位。 各温度值均用全程变量形式存放,如下:60H冷藏室温度设定值61H冷冻室温度设定值62H冰箱运行时冷藏室温度实际值63H冰箱运行时冷冻室温度实际值64H用于存放压缩机,电源状态和压缩机关机延时状态值其中: 最低0位COMP存放压缩机状态标志:1 压缩机开启0压缩机关闭 第1位TIME_OUT离上次关闭压缩机是否已有5S:1 否0是第2 位UP电压过欠压标志:1过欠压0正常65H,66H用于存放化霜时间计数67H用于压缩机关闭延时计数一、主程序:MAIN主程序由初始化,键盘扫描,显示,温度采集,温度控制和定时化霜子程序组成,为系统软件的主干部分,化霜采用定时化霜,每三十分钟化霜一次,化霜原理见概论电冰箱式作原理部分,其流程图如图3-1所示:程序如下: 图3-1 主程序流程图 ORG 0000H AJMP MAINORG 0003H LJMP DY_INTORG 000BLJMP TIME0_INTORG 0030HDATA EQUP1.0 V1 EQU P1.3 V2 EQU P1.4 V3 EQU P1.5 SET_KEY EQU P1.5 V3 EQU P1.5 V3 EQU P1.5 SET_KEY EQU P1.5 ADD_KEY EQU P1.6 SUB_KEY EQU P1.7 L1 EQU P0.6 L2 EQU P0.7 L3 EQU P2.5 L4 EQU P2.6 MAIN:CLR A START:LCALL INIT1; 初始化 LCALL KEY; 键盘扫描 LCALL GETWD; 获得冷藏室温度 MOV 62H , R0 INC DATA LCALL GETWD; 获得冷冻室温度 MOV 63H , R0 DEC DATA MOV R3 , 62H; 显示两室温度值 MOV R4 , 63H LCALL DISP MOV A , 60H CLR C HIGH:CJNE A , 62H , HIGH1; 冷藏室温度等于高于设定值时 AJMP HIGH2 HIGH1:JC HIGH3 HIGH2:SETB V1; 开启压缩机LCALL OPENAJMP LOWHIGH3:MOV A , 61HCLR C CJNE A , 63H , HIGH4; 冷冻室温度等于高于设定值时AJMP HIGH5 HIGH4:JC LOW HIGH5:SETB V2; 开启压缩机 LCALL OPEN LOW: MOV A , 61H CLR C CJNE A , 63H , LOW1; 冷冻室温度等于低于最低值时AJMP LOW2 LOW1:JNC LOW3 LOW2:CLR V2; 关闭压缩机 LCALL CLOSE AJMP LS LOW3:MOV A , 60H CLR C CJNE A , 62H , LOW4; 冷冻室温度等于低于最低值时 AJMP LOW5 LOW4:JNC LS LOW5:CLR V1; 关闭压缩机 LCALL CLOSE LS:MOV R1 , #10H; 延时1S LS1:LCALL DLY_100MS DJNZ R1 , LS1 INC 65H; 化霜时间计数加1 MOV A , 65H CJNE A , #00H , LS2 INC 66H LS2:MOV A , 65H CJNE A , #08H , LOOP MOV A , 66H CJNE A , #07H , LOOP JB V1 , LOOP; 化霜定时时间到且V1,V2均关闭 JB V2 , LOOP SETB V3; 打开V3开始化霜 MOV R0 , #50; 化霜时间5 S LS3:LCALL DLY_100MS DJNZ R0 , LS3 LOOP:AJMP START END 四打开压缩机子程序:OPEN程序流程图如下图3-3如示:图3-3 打开压缩机子程序 入口参数:全局变量COMP , TIME_OUT , UP COMP 压缩机开启标志:1 压缩机开启 0 压缩关闭 TIME_OUT 离上次关闭压缩机是否已有3S:1 否 0 是 UP 电压过欠压标志:1 过欠压 0 正常 作用: 根据条件打开压缩机 返回值:无 程序如下: OPEN:CLR A MOV A , 64H MOV COMP , ACC.0 MOV TIMP_OUT , ACC.1 MOV UP , ACC.2 JB COMP , EXIT ; 压缩机处于关闭状态 JB TIMP_OUT , EXIT ; 距上次关闭有3s JB UP , EXIT ; 电压正常 SETB COMP ; 置压机状态位 SETB TIME_OUT ; 置TIME_OUT位 MOV ACC.0 , COMP MOV ACC.1 , TIME_OUT MOV 64H , A SETB P2.4 ; 打开压缩机 SETB L3 ; 打开压缩机运行指示灯 EXIT:MOV R7 , #10H ; 延时一段时间退出 MOV R6 , #0FFH NOP NOP DJNZ R6 , DL1 DJNZ R7 , DL2 RET 五关闭压缩机:CLOSE 关闭压缩机后用定时器0中断计时,做为下次是否开压缩机的依据,因为压缩机不能连续启停。 程序如下: CLOSE:CLR A CLR P2.4; 关闭压缩机 CLR L3; 关闭压缩机运行指示灯 MOV A , 64H; 清空压缩机状态标志 CLR ACC.0 MOV 64H , A MOV TMOD , #01H; 设置T0工作于模式1 MOV TL0 , #0B0H MOV TH0 , #3CH SETB TR0; 启动定时器T0 SETB ET0; 允许T0中断 RET 通过此项设计的分析可得到如下结论: 1.本系统运用单片机速度快、体积小、价格低廉的8位MCS51单片机,可以做出可行、可靠性强的自动控制产品-电冰箱温度的控制系统。实现了电冰箱温度的自动控制。 2.在单片机应用环境不是很恶劣的地方,利用软件抗干扰也可以达到精度不高的要求,而且,节省了硬件资源,降低了产品设计成本,有助于产品的推广、民用化。 3.本系统的设计尽量简化电路,提高软件质量。 4.本系统支持多功能模块。如果再加上少许外围器件,如语音芯片,环境温度传感器,在软件方面采用模糊控制技术,可以使电冰箱的智能化大大提高。 参考文献: 1 陈明荧.8051单片机课程设计实训教材 北京:清华大学出版社 20042李军 .检测技术及仪表M. 北京: 中国轻工业出版社 2002.4 3 凌玉华.单片机原理与应用系统设计 长沙:中南大学出版社 2006 4 刘鸣,车立新,陈兴梧,赵煜. 温度传感器DS18B20的特性及程序设计方法. 电测与仪表 , 2001,(10) . 5 周月霞,孙传友. DS18B20硬件连接及软件编程J. 传感器世界 , 2001,(12) . 6 刘易雄,刘建雄 DS18B20接口的C语言程序设计. 仪器仪表用户,河南科技大学机电工程学院 ,2005,06 7 陈涛. DS18B20芯片与单片微控制器的接口设计与应用J. 山东煤炭科技 , 2002,(03) . 8 陈跃东. DS18B20集成温度传感器原理及其应用J. 安徽工程科技学院学报 , 2002,(04) . 9 Zhang Chunzhi Feng Haiming. Design of Micro-controllers Control System of Electric RefrigeratorJ .Journal of Beijing Vocational & Technical Institute of Industry.2002,(03).16