ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:398.60KB ,
资源ID:23853433      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/23853433.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于单片机的电冰箱温度控制器设计 韩凯.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于单片机的电冰箱温度控制器设计 韩凯.docx

1、基于单片机的电冰箱温度控制器设计 韩凯 课 程 设 计 大 纲学 院 名 称 电气工程与自动化学院 课 程 名 称 传感器原理开课系(或教研室) 测控技术与仪器执 笔 人 韩凯审 定 人 孙凯修(制)订日期 2013年1月13日山 东 轻 工 业 学 院课 程 设 计 任 务 书学院 电气工程与自动化学院 专业 测控技术与仪器姓名 韩凯 班级 10-2 学号 201002051071题目 基于单片机的电冰箱温度控制器设计 主要内容、基本要求、主要参考资料等:一、 主要内容利用51单片机、温度传感器DS18B20、过欠电压检测电路等设计出冰箱温控器二、 基本要求 掌握51单片机的使用,掌握温度传

2、感器与相关电路的工作原理与设计关键点。本系统可实现电冰箱温度设置、电冰箱过欠压检测、开门显示、压缩机开启延时等功能。三、 参考文献1 求是科技.8051系列单片机C程序设计完全手册M.北京:人民邮电出版社,20062 张鑫等.单片机原理及应用M.北京:电子工业出版社,20063 谭浩强.C程序设计(第三版)M.北京:清华大学出版社,20054 周兴华.单片机智能化产品C语言设计实例详解M.北京:北京航空航天大学出版社,20075 张齐等.单片机应用系统设计技术基本C语言编程M.北京:电子工业出版社,20046 王东锋,董冠强.单片机C语言应用100例M.北京:电子工业出版社,20097 余瑾,

3、姚燕.基于DS18B20测温的单片机温度控制系统J.单片机开发与应用,2009,25(3-2):105-106.完成期限:自 2013 年 1 月 6 日至 2013 年 1 月 10 日指导教师: 孙凯 系(或教研室)主任: 孙涛目录第1章 绪论 41.1课题研究背景及目的 41.2 电冰箱的基本介绍 41.3 本设计研究内容 5第2章 总体设计方案 62.1 功能要求 62.2 方案论证 62.2.1方案一 62.2.2方案二 6第3章 系统的硬件设计 83.1 硬件电路的重要芯片介绍 83.1.1 MCS-51单片机STC89C52 83.1.2 温度传感器DS18B20 113.2 部

4、分电路简介 133.2.1 过欠电压检测电路 133.2.2 12864液晶连接电路 14第4章 系统软件程序设计 164.1 显示子程序 174.2 DS18B20程序 184.3 预置温度调节程序 194.4 判断控制程序 204.5 开启延时程序 21第5章 分析与结论 23总结与体会 24参考文献 25温控器系统原理图 26摘 要单片机是实时检测和自动控制系统中心一个核心器件。本文设计的基于单片机的电冰箱温度控制器系统是利用温度传感器DS18B20采集电冰箱冷藏室的温度,通过INTEL公司的高效微控制器STC89C52单片机进行信号控制,从而达到智能控制的目的。本系统可实现电冰箱温度设

5、置、电冰箱过欠压检测、开门显示、压缩机开启延时等功能。通过对直冷式电冰箱制冷系统的改进,实现了电冰箱的智能控制,使电冰箱能根据使用条件的变化迅速合理地调节制冷,且节能效果良好。关键词:单片机;电冰箱;温度控制;过欠压检测;开启延时 第1章 绪论1.1课题研究背景及目的冰箱是深刻改变了人类生活的现代奇迹之一。在人们发明冰箱之前,保存肉类的唯一方法是腌制,而在夏季喝到冰镇饮料更是一种奢望。随着国民经济的日益发展,人民的生活水平有了很大的提高,冷冻器具在家庭,医院,旅馆,餐厅和科研单位得到了广泛的应用。电冰箱作为应用较为普及的家用电器,近年来,随着微电子技术、传感器技术以及控制理论的发展,其呈现迅猛

6、发展,电冰箱向大容量、多功能、无氟、节能、智能化、人性化方向发展,因此传统的机械式、简单的电子控制难以满足现代冰箱的发展要求。电冰箱一般设有冷冻室和冷藏室。冷冻室的温度为:- 16 - 24 。冷藏室的温度为:28 。电冰箱控制的主要任务就是保持箱内食品最佳温度,达到食品保鲜的目的。而此次设计的目的则是熟悉温控器的原理,并通过开发板模拟实现电冰箱温控器。1.2 电冰箱的基本介绍冰箱的基本原理很简单:冰箱利用液体蒸发吸收热量。冰箱中使用的液体(即制冷剂)会在极低的温度蒸发,使冰箱内部保持冰冻温度。所有冰箱都由五个基本部件组成:压缩机热交换管,冰箱外部呈弯曲或盘曲状的管道安全阀冷交换管,冰箱内部呈

7、弯曲或盘曲状的管道制冷剂,冰箱内蒸发以制造低温的液体很多工业冰箱使用纯氨作为制冷剂,纯氨在-32时蒸发。压缩机压缩制冷剂气体,这将升高制冷剂的压力和温度(橙色),而冰箱外部的热交换线圈帮助制冷剂散发加压产生的热量。 当制冷剂冷却时,制冷剂液化成液体形式(紫色),并流经安全阀。当制冷剂流经安全阀时,液态制冷剂从高压区流向低压区,因此它会膨胀并蒸发(浅蓝色)。在蒸发过程中,它会吸收热量,发挥制冷效果。 冰箱内的线圈帮助制冷剂吸收热量,使冰箱内部保持低温。然后,重复该循环。1.3 本设计研究内容在本次课题研究中我将参考从各个方面收集到的文献,博取其精华。研究方法则是采用C51单片机开发板模拟电冰箱工

8、作环境,并模拟设定电冰箱各项参数,以研究电冰箱温控器的工作原理及设计。研究的内容主要包括以下方面:1、液晶显示的工作原理,并通过液晶将各项数据显示在冰箱外;2、温度控制器原理,制冷原理,自动控制电冰箱工作使其通过制冷达到所设定的温度;3、智能检测电冰箱工作电压是否正常,避免压缩机烧坏;4、继电器工作原理,模拟对压缩机的通/断电操作;5、单片机C程序编程语言;在本文中将介绍基于单片机的电冰箱温控器设计的总体设计思想和方案,及用得到的部分芯片及硬件设计的原理,还有软件设计过程中的思想和方法等。 第2章 总体设计方案2.1 功能要求通过液晶显示所设定的温度,温度能随意调节,能自动控制电冰箱工作,使其

9、通过制冷达到所设定的温度。2.2 方案论证根据毕业设计的要求,我们可以知道在本次设计中最重要的部分就是温控器,温控器的选择将决定外部电路的设计,所以温控器的选择具体有两种以下方案。2.2.1方案一在日常生活及工农生产中,经常要用到温度的检测及控制,传统的测温元件有热电耦和热电阻。温控器的第一选择就可以选择热电耦和热电阻,他们测出的一般都是电压,再转换成对应的温度,但是需要比较多的外部硬件支持。因此这种选择就有如下主要缺点: 硬件电路复杂; 软件调试复杂; 制作成本高;2.2.2方案二采用美国DALLAS半导体公司生产的高性能数字智能温度传感器DS18B20。DS18B20作为检测元件,测温范围

10、为-55125,最高分辨率可达0.0625。DS18B20可以直接读出被测温度值,而且采用三线制与单片机相连,减少了外部的硬件电路,具有低成本和易使用的特点。所以在本次毕业设计中采用方案二,使用DS18B20作温控器配合51单片机STC89C52进行设计。按照系统设计功能的要求,确定系统由6个模块组成:主控制器、测温电路、液晶显示电路、过欠压检测电路、按键电路、继电器压缩机电路。温度控制器总体电路结构框图如图2-1所示。图 2- 1 温度控制器总体电路结构框图第3章 系统的硬件设计3.1 硬件电路的重要芯片介绍 温控器电路设计原理图如附录A所示,控制器使用单片机STC89C52,温度传感器使用

11、DS18B20,及12864液晶显示屏实现温度和其他显示。3.1.1 MCS-51单片机STC89C52单片微机封装形式为双排直列式结构(DIP),引脚共40个。如图3-1所示。MCS51单片机STC89C52其内部基本组成为:一个8位的中央处理器(CPU),256byte片内RAM单元,4Kbyte掩膜式ROM,2个16位的定时器计数器,四个8位的并行I/O口(P0,P1,P2,P3),一个全双工串行口5个中断源,一个片内振荡器和时钟发生电路,可编程串行通道,有低功耗的闲置和掉电模式。这种结构特点决定了单片机具有体积小、成本低、可靠性高、应用灵活、开发效率高、易于被产品化等优点,使其具有很强

12、的面向控制的能力,在工业自动化控制、家用电器、智能化仪表、机器人、军事装置等领域获得了广泛的应用。图 3- 1 MSC-C51单片机STC89C52引脚图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口管脚写

13、入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLA

14、SH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。 P3口也可作为8051的一些特殊功能口,如下所示: 口管脚 备选功能 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 /

15、RD(外部数据存储器读选通) P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略

16、微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。3.1.2

17、温度传感器DS18B20温度传感器是本系统不可或缺的元件,其性能的好坏直接影响系统的性能,因此温度传感器采用DALLAS公司生产的高性能数字温度传感器DS18B20。 DS18B20是DALLAS公司生产的一线式数字温度传感器,具有3引脚TO92小体积封装形式;温度测量范围为55125,可编程为9位12位A/D转换精度,测温分辨率可达0.0625,被测温度用符号扩展的16位数字量方式串行输出;其工作电源既可在远端引入,也可采用寄生电源方式产生;多个DS18B20可以并联到3根或2根线上,CPU只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。以上特

18、点使DS18B20非常适用于远距离多点温度检测系统。 DS18B20内部结构如图3-3所示,主要由4部分组成:64位ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的管脚排列如图3-2所示: 图 3- 2 DS18B20的管脚排列图DQ: 为数字信号输入输出端; GND:为电源地; VDD:为外接供电电源输入端(在寄生电源接线方式时接地,见图3-2)。 ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码,每个DS18B20的64位序列号均不相同。64位ROM的排的循环冗余校验码(CRC=X8X5X41)。ROM的作用是使每一个DS

19、18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。图 3- 3 DS18B20的内部结构DS18B20 用12 位存贮温度值,最高位为符号位。以下图表为DS18B20的温度存储方式,负温度S = 1,正温度S = 0,如:0550H为+ 85,0191H为25.0625 ,FC90H为- 55。2322212021222324温度值低字节 LSBSSSSS262524温度值高字节 MSB 高低温报警触发器TH和TL、配置寄存器均由一个字节的EEPROM组成,使用一个存储器功能命令可对TH、TL或配置寄存器写入。其中配置寄存器的格式如下: 0R1R011111R1、R0

20、决定温度转换的精度位数:R1R0=00,9位精度,最大转换时间为93.75ms,R1R0=01,10位精度,最大转换时间为187.5ms,R1R0=10,11位精度,最大转换时间为375ms,R1R0=11,12位精度,最大转换时间为750ms;未编程时默认为12位精度。 高速暂存器是一个9字节的存储器。开始两个字节包含被测温度的数字量信息;第3、4、5字节分别是TH、TL、配置寄存器的临时拷贝,每一次上电复位时被刷新;第6、7、8字节未用,表现为全逻辑1;第9字节读出的是前面所有8个字节的CRC码,可用来保证通信正确。 DS18B20的一线工作协议流程是:初始化ROM操作指令存储器操作指令数

21、据传输。3.2 部分电路简介3.2.1 过欠电压检测电路 如图3-4(a)所示即为过欠压检测电路,也称为电压窗口比较器。在图3-4(a)中,A1,A2是专用电压比较器LM119。LM119的内部采用射级接地、集电极开路的三极管集电极输出方式。在使用时,必须外接上拉电阻。过欠压检测电路只有检测出电压是否稳定便可,而这种电路允许输出端并接在一起。 此电路的工作原理是: 当输入电压UiUR1时,比较器A1的输出管导通,而比较器A2的输出管截止,此窗口比较器的输出电平将由比较器A1输出电平确定为低电平。 只有当输入电压处于窗口电压之内,即UR2UiUR1时,比较器A1和A2输出管均截止,窗口比较器输出

22、电平是由上拉负载电阻拉向高电平。此窗口比较器的传输特性如图3-4(b)所示。 (a) (b)图 3- 4 过欠压检测电路3.2.2 12864液晶连接电路 液晶显示屏有功耗低、体积小、重量轻、超薄等许多其他显示器无法比拟的优点,近几年来被广泛用于单片机控制的智能仪器、仪表和低功耗电子产品中。利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示84行1616点阵的汉字. 也可完成图形显示.低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块

23、。带中文字库的12864每屏可显示4行8列共32个1616点阵的汉字,每个显示RAM可显示1个中文字符或2个168点阵全高ASCII码字符,即每屏最多实现32个中文字符或64个ASCII码字符的显示。带中文字库的12864内部提供1282字节的字符显示RAM缓冲区,字符显示是通过将字符显示编码写入该字符显示RAM实现的。根据写入内容的不同,可分别在液晶屏上显示CGROM(中文字库)、HCGROM(ASCII码字库)及CGRAM(自定义字形)的内容。字符显示的RAM的地址与32个字符显示区域有着一一对应的关系,其对应关系如下表所示:表 3- 1 汉字显示坐标X坐标Line180H81H82H83

24、H84H85H86H87HLine290H91H92H93H94H95H96H97HLine388H89H8AH8BH8CH8DH8EH8FHLine498H99H9AH9BH9CH9DH9EH9FH 在此系统中,液晶采用并口通信,所以第15脚PSB端固定接高电平,引脚7-14作为三态数据线,其他引脚说明见表3-2,连接图如图3-5所示:图 3- 5 12864液晶连接电路图表 3- 2 12864引脚功能说明引脚号引脚名称方向功能说明1VSS-模块的电源地2VDD-模块的电源正端3V0-LCD 驱动电压输入端4RS(CS)H/L并行的指令/数据选择信号;串行的片选信号5R/W(SID)H/L

25、并行的读写选择信号;串行的数据口6E(CLK)H/L并行的使能信号;串行的同步时钟16NC空脚17/RETH/L复位 低电平有效18NC空脚19LED_A-背光源正极(LED+5V)20LED_K-背光源负极(LED-OV)第4章 系统软件程序设计 基于单片机的电冰箱温控器软件设计主要由显示子程序、读出并处理DS18B20的测量温度值程序、预置温度调节程序、温度判断控制程序、电冰箱开启延时程序、还有软件复位程序等组成。软件程序设计总体流程图如下图4-1:图 4- 1 软件程序设计总体流程图 由于51系列的单片机没有停机的指令,所以可以利用主程序设置死循环反复运行各个任务。于是就把有实时要求的部

26、分放在最内层的循环中。4.1 显示子程序 在本次设计中,显示子程序包括三部分:往LCD液晶显示屏发送一个字节的数据或指令子程序,LCD液晶屏初始化子程序,显示数据处理程序。1) 往LCD液晶显示屏发送一个字节的数据或指令子程序其调用的函数是void TransferData(char data1,bit DI),在程序中首先将并行口选择为写的状态,然后选择将要传送的是指令还是数据,再将数据送到P1口,打开并行口的使能端,等待数据输出完毕后关闭并行口使能。其流程图如图4-2所示。 图 4- 2 传送数据流程图 图 4- 3 LCD液晶初始化程序流程图2) LCD液晶屏初始化子程序其使用的函数是v

27、oid initinal(void),仅在开机时调用一次,主要负责设置LCD液晶屏的一些状态,包括设置液晶总线模式,芯片复位,功能设定,关闭芯片显示,设置芯片动态显示,清屏,设置起始行0行0列;液晶初始化结束返回。LCD液晶屏初始化完成后就可以显示各种字符了,即进入正常工作状态。具体流程图4-3所示。3) 显示数据处理程序调用方式:void lcd_mesg(uchar code *adder1)函数说明:显示全屏的内容调用方式:void lcd_mesg2(uchar add,uchar code *adder2)函数说明:显示某一行的内容调用方式:void LCD_w_wd(uchar a

28、dd2,int wwd,uchar fs)函数说明:温度显示处理并送入LCD的指定区域这些函数的使用可以使得显示内容时,非常合适的处理好了页切换和列切换,只要通过查表送至12864液晶显示屏RAM中便可显示自如。4.2 DS18B20程序 整个DS18B20程序调用方式是uint ReadTemperature(void),该函数主要包括了对DS18B20的初始复位,读温度,温度转换,计算温度等子程序,并将转换后的数据扩大10倍返回主函数,提供给下一个函数使用。读DS18B20程序流程图如图4-4。图 4- 4读DS18B20程序流程图1) 对 DS18B20 操作时,首先要将它复位将DQ线拉

29、低480至960s,再将数据线拉高15至60s,然后DS18B20发出60至此240s的低电平作为应答信号,这时主机才能对它进行其它操作11。2) 读温度子程序的主要功能是读出DS18B20的RAM中的9个字节。前两个就是温度,将高低字节分别放入b和a中。在读出时须进行CRC校验,校验有错时不进行温度数据的改写。读操作:主机将数据线从高电平拉至低电平1s以上,再使数据线升为高电平,从而产生读起始信号从主机将数据线从高电平拉至低电平起15s至60s,主机读取数据每个读周期最短的持续期为60s周期之间必须有1s以上的高电平恢复期11。3) 温度转换命令子程序主要是发送温度转换开始命令。当采用12位

30、分辨率时,转换的时间约为750ms。在本程序中,采用2s显示程序延时法等待转换完成。发送温度转换命令的写操作:将数据线从高电平拉至低电平,产生写起始信号从DQ 线的下降沿起计时,在 15s到60s这段时间内对数据线进行检测,如数据线为高电平则写1;若为低电平,则写0,完成了一个写周期在开始另一个写周期前,必须有1s以上的高电平恢复期每个写周期必须要有60 s以上的持续期11。4) 计算温度子程序将RAM中读取值进行BCD码的转换运算,并进行温度值正负的判定。因为从DS18B20中读出的二进制值必须先转换成十进制值,才能用于字符的显示。DS18B20的转换精度为912位可选,为了提高精度采用12位。在采用12位转换精度时,温度寄存器里的值是以0.0625为步进的,即温度值为温度寄存器里的二进制值乘以0.0625,就是实际的十进制温度值。扩大十倍,四舍五入后便可将精

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1