水温控制器设计毕业设计论文 精品推荐.docx
《水温控制器设计毕业设计论文 精品推荐.docx》由会员分享,可在线阅读,更多相关《水温控制器设计毕业设计论文 精品推荐.docx(30页珍藏版)》请在冰豆网上搜索。
水温控制器设计毕业设计论文精品推荐
学生毕业设计(论文)
题目
水温控制器设计
作者
院(系)
专业
测控技术与仪器
指导教师
答辩日期
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人郑重承诺:
所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:
日 期:
指导教师签名:
日 期:
使用授权说明
本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:
按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:
日 期:
毕业设计(论文)诚信责任书
本人郑重声明:
所呈交的毕业设计(论文),是本人在导师的指导下独立进行研究所取得的成果。
毕业设计(论文)中凡引用他人已经发表或未发表的成果、数据、观点等,均已明确注明出处。
尽我所知,除文中已经注明引用的内容外,本论文不包含任何其他个人或集体已经公开发表或撰写过的研究成果。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人毕业设计(论文)与资料若有不实,愿意承担一切相关的法律责任。
论文作者签名:
年月日
摘要
水温控制无论是在工业生产中,还是在日常生活中都起着非常重要的作用。
过低的温度或过高的温度都会使水资源失去应有的作用,从而造成水资源的巨大浪费,给生活和生产带来许多不利因素。
本文以单片机技术和温度传感器技术为基础,制定出一套以硬件和软件相结合的方式完成水温控制器设计的方案。
硬件方面,利用AT89S52单片机作为核心控制器件,结合外围的晶振电路、复位电路、报警电路、显示电路和测温电路组成水温控制器系统。
软件方面,给出了系统的软件流程图,并采用C语言作为编程语言进行程序设计,使系统可以显示温度等信息。
水温控制器系统可以广泛地应用于电器、汽车、材料、生物工程等领域。
该系统操作简单、功率消耗低、准确率高,具有较好的适用性和推广价值。
关键词:
DS18B20;AT89S52;水温控制;C语言
TheDesignofWaterTemperatureController
ABSTRACT
Temperaturecontrolinindustrialproductionplaysaveryimportantroleinourdailylife.Lowtemperatureorhightemperaturewillcausethewatertoloseitsproperrole,resultinginahugewasteofwaterresources,bringmanynegativefactorstothelifeandproduction.
Thispaperbasedonthesinglechipcomputertechnologyandsensortechnology,developsasetofsolutionofhardwareandsoftwarecombinationtocompletetemperaturecontrollerdesign.Intermsofhardware,thispaperusesAT89S52microcontrollerasthecorecontroldevice,combineswithcrystalcircuit,resetcircuit,alarmcircuit,displaycircuitandperipheraltemperaturemeasurementcircuittemperaturecontrollersystem.Intermsofsoftware,thesoftwareflowchartofthesystemisgiven.ThispaperusesClanguageasaprogramminglanguagedesignandthesystemcandisplaythetemperatureandotherinformation.
Thewatertemperaturecontrollersystemcanbewidelyusedinelectricalappliances,vehicles,materials,bio-engineeringandotherfields.Thesystemissimple,lowpowerconsumption,highaccuracy,andhasgoodapplicabilityandpromotionalvalue.
Keywords:
DS18B20;AT89S52;Watertemperaturecontrol;Clanguage
1绪论
1.1水温控制器的介绍
水是生命之源,自从生命在水中形成的第一天起,水在生命体中所起的作用就没有发生过改变,无论日常生活还是生产过程中都离不开水,水温控制器广泛应用于社会生产、生活中的各个领域,如家用电器、汽车、材料、生物工程中等,都起着重要作用,温度过低或过高都会使水资源失去应有的作用,降低水资源的利用率,而且会造成水资源的巨大浪费,造成不必要的损失,给生活生产带来多不利因素,并且不符合当代社会的可持续发展。
本系统的设计可以用于水温控制,它以单片机AT89S52为核心,使用温度转换芯片DS18B20实时采集温度,通过数码管显示温度,并提供各种运行指示灯用来指示系统现在所处状态[1]。
传统的温度采集电路相当复杂,需要经过温度采集、信号放大、滤波、AD转换等一系列工作才能得到温度的数字量,并且这种方式不仅电路复杂,元器件个数多,而且线性度和准确度都不理想,抗干扰能力弱。
现在常用的温度传感器芯片不但功率消耗低、准确率高,而且比传统的温度传感器有更好的线性表现,最重要的一点是使用起来方便[2]。
1.2本设计的要求
基于AT89S52单片机水温控制器晶振采用12MHz,具体要求如下:
(1)初始温度设置为50℃。
(2)越线报警温度设置为70℃。
(3)控制精度为1℃。
(4)控制范围为环境温度室温到70℃。
2主要器件介绍
2.1单片机的选择
本次设计单片机选用ATMEL公司的AT89S52单片机。
2.1.1AT89C52单片机性能简介
AT89C52单片机是美国爱特梅尔(Atmel)公司生产的51系列单片机的一个型号[3]。
它是一个低电压、高性能CMOS8位的单片机,片内含8kbytes的可反复檫写Flash只读程序存储器(PEROM)和256bytes的随机存取数据存储器(RAM),器件采用Atmel公司的高密度、非易失性存储技术生产,与标准的MCS-51指令系统和8052产品引脚兼容,片内置通用8位中央处理器(CPU)和Flash存储单元[4]。
AT89C52单片机的主要性能特征如下[5]:
(1)与标准的MCS-51指令系统和8052产品引脚兼容;
(2)8kbytes的可反复檫写(>1000)Flash只读程序存储器;
(3)256×8bit内部RAM;
(4)全静态操作:
时钟频率0~24MHz;
(5)32个可编程I/O口;
(6)2个串行中断;
(7)2个外部中断源;
(8)6个中断源;
(9)2个读写中断口线;
(10)3个16位定时/计数器;
(11)可编程UART串行通道。
2.1.2AT89C52单片机引脚功能说明
AT89C52的引脚如图2-1所示。
图2-1AT89C52的引脚图
各引脚功能说明[6]:
AT89C52单片机有4组8位可编程I/O口,分别为P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。
其中P0口是一个漏极开路的8路准双向I/O端口,作输入口使用时要先写1,这就是准双向的含义。
P0(P0.0~P0.7)口:
一组8位漏极开路型双向I/O口,即地址/数据总线复用口。
当作为输出口使用时,每位可以驱动8个TTL逻辑门电路;当对端口写“1”时,引脚用作高阻抗输入;当Flash编程时,端口接收指令字节;当程序校验时,需要外接上拉电阻;当访问外部数据存储器或者程序存储器时,这组口线分时地转换低8位地址和数据总线复用,在访问期间激活内部的上拉电阻。
P1(P1.0~P1.7)口:
一组带内部上拉电阻的8位双向I/O口,端口的输出缓冲级可驱动4个TTL逻辑门电路。
当对端口写“1”时,可用作输入口;当作为输入口使用时,被外部信号拉低的引脚会输出电流IIL。
此外,P1.0和P1.1还能分别作为定时/计数器2的外部计数输入和输入。
P2(P2.0~P2.7)口:
一组带内部上拉电阻的8位双向I/O口,端口的输出缓冲级可驱动4个TTL逻辑门电路。
当对端口写“1”时,可用作输入口;当作为输入口使用时,被外部信号拉低的引脚由于内部存在上拉电阻会输出一个电流IIL;当Flash编程或校验时,端口接收高8位地址字节和一些控制信号;当访问外部程序存储器或16位地址的外部数据存储器时,端口送出高8位地址数据;当访问8位地址的外部数据存储器时,端口输出P2锁存器中的内容。
P3(P3.0~P3.7)口:
一组带内部上拉电阻的8位双向I/O口,端口输出缓冲级可驱动4个TTL逻辑门电路。
当对端口写“1”时,可用作输入口;当作为输入口使用时,被外部信号拉低的引脚由于内部存在上拉电阻会输出一个电流IIL。
另外,P3口还具有第二功能如表2-1所示[7]。
表2-1P3口第二功能表
引脚
第二功能特性
P3.0
串行输入口RXD
P3.1
串行输出口TXD
P3.2
外中断0
P3.3
外中断1
P3.4
定时/计数器0
P3.5
定时/计数器1
P3.6
外部存储器写选通
P3.7
外部存储器读选通
EA/VPP口:
外部访问允许控制信号。
要使CPU仅访问外部程序存储器,EA端必须保持低电平(接地)。
若EA端为高电平(接Vcc端),则CPU执行内部程序存储器中的指令。
ALE/PROG口:
地址锁存控制信号。
当访问外部程序存储器或数据存储器时,ALE输出脉冲用于锁存地址的低8位字节。
每当访问外部数据存储器时,跳过一个ALE脉冲。
RST:
复位输入端口,外接电阻电容组成复位电路。
当晶振工作时,RST引脚持续两个机器周期以上的高电平将使单片机复位。
XTAL1口:
内部时钟发生器和振荡器反相放大器的输入端。
XTAL2口:
振荡器反相放大器的输出端。
PSEN口:
外部程序存储器的读选通信号。
当单片机由外部程序存储器取指令时,每个机器周期输出两个脉冲;当访问外部数据存储器时,PSEN不被激活[8]。
2.2传感器的选择
本次设计选用的是单线数字传感器DS18B20。
2.2.1DS18B20的简介
DS18B20是美国DALLAS半导体器件公司在其前代产品DS18B20的基础上推出的单线数字化智能集成温度传感器,其特点是[9]:
(1)独特的单线接口,只需1个接口引脚即可通信。
(2)不需要额外的外部元件搭建外围电路即可正常运行。
(3)可用数据线供电,不需要备份电源。
(4)测量范围为-55~+125℃,增量值为0.5℃;等效的华氏温度范围是-67~257℉,增量值为0.9℉。
(5)以9~12位数字值方式读出温度。
(6)在1s典型值内把温度变换为数字。
(7)用户可定义的非易失性的温度告警设置。
主要的优点是:
(1)DS18B20可将被测温度直接转换成计算机能识别的数字信号输出。
(2)DS18B20能提供9~12位温度读数,精密度高且其信息传输只需1根信号线,与计算机接口的连接十分简便,读写及温度变换的功率全部来自于数据线,因此,不需要额外的附加电源。
(3)每一个DS18B20都含有一个唯一的序列号,这样的设计是为了允许多个DS18B20连接到同一总线上,因此,非常适合构建多点温度检测系统。
(4)负压特性。
DS1820的电源极性接反时,它虽然不能正常工作,但也不会因发热而烧毁。
2.2.2DS18B20的引脚功能说明
DS18B20全部传感元件及转换电路集成在形如一只三极管的集成电路内。
三端口分别是地线、数据线和电源线,其外围电路非常简单。
每一个DS18B20有唯一的序列号,多个DS18B20可以存在于同一条单线总线上[10]。
其DS18B20的管脚配置和封装结构如图2-2所示。
图2-2DS18B20的引脚图
引脚定义:
(1)DQ为数字信号输入/输出端;
(2)GND为电源地;
(3)VDD为外接供电电源输入端(在寄生电源接线方式时接地)。
2.3驱动芯片的选择
本设计驱动芯片选择74LS245
2.3.174LS245的简介
74LS245是我们常用的芯片,用来驱动LED或者其他的装备,它是8路同相三态双向总线收发器,可双向传输数据[11]。
74LS245还具有双向三态功能,既可以输出,也可以输入数据。
当8051单片机的P0口总线负载达到或超过P0最大负载能力时,必须接入74LS245等总线驱动器。
2.3.274LS245的引脚说明
当片选端/CE低电平有效时,DIR=“0”,信号由B向A传输;(接收)
DIR=“1”,信号由A向B传输;(发送)当CE为高电平时,A、B均为高阻态。
由于P2口始终输出地址的高8位,接口时74LS245的三态控制端1G和2G接地,P2口与驱动器输入线对应相连。
P0口与74LS245输入端相连,E端接地,保证数据线畅通。
8051的/RD和/PSEN相与后接DIR,使得RD且PSEN有效时,74LS245输入(P0.1←D1),其它时间处于输出(P0.1→D1)。
74LS245的引脚如图2-3所示。
图2-374LS245引脚图
2.4显示器的选择
本设计显示器选择2位8段共阳数码管。
2.4.1数码管的简介
数码管是电路中常见的显示元件,按段数分为七段数码管和八段数码管。
把段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按照显示“8”的个数可分为1位,2位,4位等数码管(如图2-4);按发光二极管单元连接方式分为共阳极数码管和共阴极数码管[12]。
八段数码管是数码管的一种,是半导体发光器件,数码管可分为七段数码管和八段数码管,区别在于八段数码管比七段数码管多一个发光二极管单元,其基本单元是发光二极管。
其优点是价格便宜、使用简单,通过对其不同的管脚输入相对的电流,使其发亮,从而显示出数字,能够显示时间、日期、温度等所有可用数字表示的参数的器件。
图2-4AT89C52的引脚图
图2-4数码管位数
2.4.2数码管驱动方式
直流驱动:
指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动。
优点是编程简单,显示亮度高,缺点是占用I/O端口多。
动态显示驱动:
将所有数码管通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示。
将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。
2.4.3数码管的引脚功能说明
七段LED有共阴极与共阳极两种。
在图2-5中,公共阴极接地,当阳极上的信息为“1”时,段就点亮;信息为“0”时,段就不亮。
在图2-6中,公共阳极接到+5V,当阴极上的信息为“1”时,段就不亮;信息为“0”时,段就点亮。
图中R是限流电阻。
图2-6表示七段LED内段的排列。
图2-5数码管共阴极接法
图2-6数码管共阳极接法
图2-77段数码管内段的排列
共阴极和共阳极数码管0-9这十个数字的段码表,如表2-2所示。
表2-2数字段码表
数字
0
1
2
3
4
5
6
7
8
9
共阴
0x3f
0x06
0x5b
0x4f
0x66
0x6d
0x7d
0x07
0x7f
0x6f
共阳
0xc0
0xf9
0xa4
0xb0
0x99
0x92
0x82
0xf8
0x80
0x90
3系统硬件构成
3.1设计原理
根据系统总体的设计方案,水温控制器的硬件设计部分采用AT89C52单片机作为核心控制器件,结合外围的测温电路和数码管显示电路等硬件辅助电路,组成水温控制器系统。
通过按键电路来设置加热温度,并将设置的温度值在数码管上显示,环境温度由DS18B20来测出,传到单片机进行处理。
硬件设计总体结构框图如图3-1所示。
图3-1硬件总体原理框图
3.2外围电路
本系统选用单片机AT89S52作为核心控制器件,结合电源电路、晶振电路、复位电路、报警电路、测温电路、显示电路等外围辅助电路,可以实现基本的水温控制功能。
其总电路图见附录A。
3.2.1电源电路
本次设计的电源电路为+5V稳压电源,其电路如图3-2所示。
图3-2电源电路原理图
稳压电源电路即利用晶体管作为调整元件和负载串联,调整元件看做是可变电阻,从输出电压中提取全部或部分电压调节调整管所呈现的电阻来维持输出电压基本不变。
它的输出电压可以随意连续调节,输出电流也可达到很大,稳压精度较高。
稳压电源电路主要由变压器、三端集成稳压器7805、整流电路、滤波电路组成。
变压器是利用电磁感应原理进行变换交流电压、阻抗和电流的器件;三端稳压器可靠性高、精度高、电路实现简单且价格低廉,可以实现可靠的直流稳压电源;整流电路采用全桥式整流桥,即利用四个二极管两两并联后接入输出电压;电容滤波电路即在输出端并联一个电容器。
3.2.2晶振电路
单片机是一种时序电路,必须提供脉冲才能正常工作。
MCS-51系列单片机内部都有一个时钟振荡电路,只需外接晶振源,就可以产生一定频率的时钟信号送到单片机的内部各个单元,决定单片机的工作速度。
XTAL1和XTAL2脚分别构成单片机片内振荡电路的反相放大器的输入端和输出端,外接石英晶体X1和振荡电容C1、C2构成并联谐振电路。
晶振是石英振荡器的简称,英文名为Crystal,是利用石英晶体(SiO2晶体)的压电效应制成的一种谐振器件;两个振荡电容C1、C2是分别接在晶振的两个脚和对地的电容,本设计分别选用12.0MHz的标准石英晶振和两个22pF的电容。
晶振电路如图3-3所示。
图3-3晶振电路图
3.2.3复位电路
89系列单片机的复位信号是从RST引脚输入到芯片内的触发器中的,当系统处于正常工作状态且振荡器稳定时,如果RST脚上有一个高电平并维持两个机器周期以上,CPU就可响应并且将系统复位。
不管是单片机刚接上电源还是断电后或发生故障后均要进行复位的操作。
通常采用手动复位和上电自动复位的组合,在通电瞬间,电容C通过电阻R充电,RST端出现正脉冲,用于复位。
复位电路如图3-4所示。
图3-4复位电路原理图
3.2.4报警电路
当环境温度不在设置温度范围内,需要发出警报,报警电路由PNP三极管和扬声器组成。
电路中用PNP三极管,选用低功率三极管9012,当P1.0低电平,三极管集电极正偏,发射机反偏,三极管导通,驱动蜂鸣器报警。
报警电路如图3-5所示。
图3-5复位电路原理图
3.2.5加热控制电路
当控制温度大于设定温度,则关闭加热器;当控制温度小于设定温度,则打开加热器。
为了防止干扰,在单片机接光电隔离。
加热控制电路如图3-6所示。
图3-6加热控制电路原理图
3.2.6测温电路
DS18B20可以采用两种方式供电,一中采用电源方式供电,此时DS18B201脚接地,2脚作为信号线,3脚接电源。
另一种是寄生电源供电方式,单片机端口接单线总线,为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个MOSFET管来完成对总线的上拉。
当S18B20处于写存储器操作和温度A/D转换操作时,总线上必须有上拉,上拉开启时间最大为10us。
采用寄生供电方式时VDD端接地。
由于单线制只有一根线,因此发送接口必须是三态的。
测温电路如图3-7所示。
图3-7测温电路原理图
3.2.7显示电路
数码管显示电路采用AT89S52单片机控制,通过芯片74LS245驱动进行显示。
本次设计采用的是两位共阳极8段数码管。
P2.0控制个位,P2.1控制十位。
采用数码管作为系统的数据显示器具有价格低、性能稳定和影响速度快等特点。
显示电路如图3-8所示。
图3-8显示电路原理图
4系统软件设计
单片机先进行温度控制的预设置,并显示控制温度,通过和环境温度进行比较决定加热器打开还是关闭,主程序流程图如图4-1所示。
其软件程序见附录B。
图4-1系统主程序主要流程图
5软件调试及仿真
本次设计软件调试工具采用KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统KeiluVision2,KeilC51标准C编译器为8051微控制器的软件开发提供了C语言环境,并保留了汇编代码高效、快速的特点。
软件仿真工具采用英国LabcenterElectronics公司研发的多功能EDA软件Proteus,其中的ProteusISIS是一款操作简单便捷的电子系统原理设计和仿真平台软件,它运行于Windows操作系统,可以仿真和分析各种模拟器和集成电路。
5.1软件编译
5.1.1工程的创建
运行KeiluVision2软件
点击Project点击NewProject,如图5-1所示。
图5-1工程的创建
5.1.2AT89C52单片机的选择
本次设计选用的是单片机AT89C52,如图5-2所示。
图5-2单片机选择
5.1.3程序的编译
(1)程序代码的编写
通过C语言对系统进行程序代码的编写工作,如图5-3所示。
图5-3程序的编写
(2)生成仿真所需的.hex文件
点击Project点击OptionsforTardet设置晶振为12.0MHz
点击Output选定CreateHEXFi,