DS18B20温度测量及控制设计报告_第1页
DS18B20温度测量及控制设计报告_第2页
DS18B20温度测量及控制设计报告_第3页
DS18B20温度测量及控制设计报告_第4页
DS18B20温度测量及控制设计报告_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

PAGE23江西中医药大学课程设计课程名称电子制作课题名称温度测量及控制电路设计专业班级10生物医学工程姓名***学号2010010150**指导教师***2013年10月25日目录TOC\o"1-3"\h\u1737一.摘要 231413二.设计目的与意义 313383三.方案论证与确定 4101093.1系统方案的确定 436603.1.1方案一 4307143.1.2方案二 55873.1.3方案三 5266823.2传感器方案的确定 5222623.2.1方案一 5234463.3测量显示方案的确定 610063.3.1方案一 6118213.3.2方案二 613263四.系统工作原理分析 728774.1微控制器原理 7111734.2传感器原理 8305324.2.1DS18B20简介 8274124.2.2DS18B20内部结构 8133184.2.3DS18B20测温原理 10129874.3温度数值分析 105615五.电路制作与软件调试 11190855.1硬件制作 11239195.2软件调试 12287415.2.1主程序流程 1231805六.附录 14220436.1课程设计心得体会 14116826.2系统电路原理图及仿真测试图 14169626.3程序代码 158015七.参考文献 2222628八.致谢 22一.摘要在现今科技高速发展的时代,各行各业对控制和测量的要求越来越高,其中,温度测量和控制在很多行业中都有比较重要的应用,尤其在工业上,如炼钢时对温度高低的控制。要控制好温度,测量是前提,测量的精度影响着后续工序的进行,因此温度测量的方法和选取就显得相当重要了。针对各种温度测量方案的讨论分析后,我们组决定以STC89C52为核心,采用DS18B20温度传感器进行温度信号的检测,并通过数码管显示测量所得温度,外加按键调节设置温度测量的上下限数值(默认温度上下限为00℃~99℃),在所测温度到达、超过所设上下限数值时,启动相应的升温和降温功能(由两个发光二极管模拟)。本报告是我们组所设计的数字温度计的说明书,包括方案论证选取、工作原理、所用元件介绍和设计电路原理图、调试程序等。关键词:STC89C52、DS18B20、LED数码管显示、模拟温控设计目的与意义随着电子技术的高速发展,对电子方面人才的要求越来越高,不仅要求其具备相关的专业理论知识,还要求其具有较强的设计、制作等实践动手能力。此次课程设计无疑是对从事测控专业的人的一次很好的锻炼和考验,是培养测控技术的人才的一次良好的机会,为其提供了一个理论知识与实践相结合的平台。通过本次课程设计,引导学生结合所学的测控电路理论知识,思考设计方案,以小组合作方式,分工完成各个部分,从而掌握相关的测量显示电路的设计和调试技术,一方面提高了学生的实践动手和协作能力,另一方面培养了学生综合运用所学理论知识进行工程设计的能力。通过此次课程设计,可以培养学生的工程设计能力,包括动手能力、独立思考设计能力、解决实际设计过程中遇到的问题以及团队协作能力等,为今后的专业学习和工程实践打下坚实的基础。方案论证与确定3.1系统方案的确定3.1.1方案一该方案为ICL7107A/D转换&译码方案。常见A/D转换器的转换方式有非积分式和积分式两类,如逐次逼近比较式A/D转换、斜坡电压式A/D转换等属于非积分式,其特点是转换速度快,但抗干扰能力差。电压反馈型V-F变换、双积分式A/D转换则属于积分式,其特点是抗干扰能力强、测量精度高,但转换速度低,在转换速度要求不太高的情况下,获得广泛应用。工作方框图如图1所示:图1方案一工作框图图1方案一工作框图电路原理图如图2所示:图2方案一电路原理图图2方案一电路原理图3.1.2方案二该方案利用AVR单片机对输入信号进行模数转换输出数字信号控制数码管显示温度值。并且可以通过编写程序对输入信号进行分段线性化处理,使得测量精度大大提高,而且该电路无须外接译码器,结构简单。工作框图如图3所示:图3方案二工作框图图3方案二工作框图3.1.3方案三该方案以STC89C52为控制器,采用DS18B20温度传感器检测温度信号,利用按键设置温度测量的上下限数值,并通过LED数码管显示。工作框图如图4所示:图4方案三工作框图图4方案三工作框图经过综合研究分析,考虑整个设计和成本,方案三成本低,测量温度方便简单,故此次数字温度计课程设计选取方案三。3.2传感器方案的确定3.2.1方案一该方案采用热敏电阻。热敏电阻价格比较便宜、灵敏度比较好,在实际应用的时候线性度较差,另外调试比较困难。不适合使用。故不使用热敏电阻。3.2.2方案二DS18B20数字温度传感器,是美国DALLAS半导体公司智能温度传感器,他能够直接读出被测温度并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,使用DS18B20可使系统结构更趋简单,可靠性更高。他在测温精度、转换时间、传输距离、分辨率等方面拥有很大优势,给用户带来了更方便的使用和更令人满意的效果。经过上述两种方案的论证比较,综合考虑成本、性能等因素,最终选方案二。3.3测量显示方案的确定3.3.1方案一该方案采用LED显示。LED数码显示中每一个像素单元就是一个发光二极管,如果是单色,一般是红色发光二级管。如果是彩色,一般是三个三原色小二极管组成的一个大二级管。这些二级管组成的矩阵由数码控制实时显示文字或者图像,造价相对低廉,组成的显像面积大。3.3.2方案二该方案采用LCD液晶显示。液晶显示器是一种被动式的显示器,即液晶本身并不发光,而是利用液晶经过处理后能改变光线通过方向的特性,而达到白底黑字或黑底白字显示的目的。LCD液晶的像素单元是整合在同一块液晶版当中分隔出来的小方格。通过数码控制这些极小的方格进行显像。造价高但是显示非常细腻。经过研究分析,考虑成本等选择方案一。系统工作原理分析本系统由温度传感器DS18B20、STC89C52、LED数码显示电路、软件构成。DS18B20输出表示摄氏温度的数字量,然后用51单片机进行数据处理、译码、显示、报警等,系统框图如图5所示:图5系统框图图5系统框图4.1微控制器原理STC89C52是一个低功耗,高性能CMOS8位单片机,片内含8KBytesISP的可反复擦写100000次的Flash只读程序存储器,器件采用STC公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,其具有如下特点:40个引脚,8KBytesFlash片内程序存储器,256bytes的随机存取数据存储器,32个外部双向输入/输出口,5个中断优先级2层中断嵌套中断,3个16位可编程定时计数器,2个全双工串行通信口,看门狗电路,片内时钟振荡器。单片机引脚如图6所示:图6单片机引脚图图6单片机引脚图4.2传感器原理4.2.1DS18B20简介DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器。采用单总线工作方式,能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值的读数方式。DS18B20元件图如图7所示:DS18B20的性能特点如下:独特的单线接口仅需要一个端口引脚进行通信;多个DS18B20可以并联在惟一的三线上,实现多点组网功能;无须外部器件;可通过数据线供电,电压范围为3.0~5.5V;零待机功耗;温度以9或12位数字;用户可定义报警设置;报警搜索命令识别标志超过程序限定温度(温度报警条件);负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;图7DS18B20元件图4.2.2DS18B20内部结构图7DS18B20元件图DS18B20采用3脚PR-35封装或8脚SOIC封装,其内部结构框图如图8。C64C64位ROM和单线接口高速缓存存储器与控制逻辑温度传感器高温触发器TH低温触发器TL配置寄存器8位CRC发生器Vdd图8DS18B20内部结构图图8DS18B20内部结构图64位ROM的结构开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前面56位的CRC检验码,这也是多个DS18B20可以采用一线进行通信的原因。温度报警触发器TH和TL,可通过软件写入户报警上下限。DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的EERAM。高速暂存RAM的结构为8字节的存储器,结构如图9所示。头2个字节包含测得的温度信息,第3和第4字节TH和TL的拷贝,是易失的,每次上电复位时被刷新。第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值。该字节各位的定义如图3所示。低5位一直为1,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式,DS18B20出厂时该位被设置为0,用户要去改动,R1和R0决定温度转换的精度位数,来设置分辨率。温度LSB温度MSBTH用户字节1TL用户字节2配置寄存器保留保留保留CRC

图9DS18B20字定义图9DS18B20字定义由表1可见,DS18B20温度转换的时间比较长,而且分辨率越高,所需要的温度数据转换时间越长。因此,在实际应用中要将分辨率和转换时间权衡考虑。表1DS18B20温度转换时间表表1DS18B20温度转换时间表高速暂存RAM的第6、7、8字节保留未用,表现为全逻辑1。第9字节读出前面所有8字节的CRC码,可用来检验数据,从而保证通信数据的正确性。它有严格的时隙概念,因此读写时序很重要。系统对DS18B20的各种操作按协议进行。操作协议为:初使化DS18B20(发复位脉冲)→发ROM功能命令→发存储器操作命令→处理数据。4.2.3DS18B20测温原理DS18B20低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入。当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55℃所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55℃所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。此外,用斜率累加器补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值,4.3温度数值分析利用的单片机的一个IO口,读取DS18B20的温度高位,温度低位。由上面的分析可知:温度高位的高5位的符号位、低3位是整数部分的高四位(整数部分的最高位永远为0),温度低温的高四位为整数部分的低四位,温度地位的低四位是小数部分用以下公式计算:整数部分=温度低位/16+温度高位×16小数部分十分位=(温度低位&0x0f)×10/16由于DS18B30的集成度很高,使得设计的原理还是比较简单,设计的关键是了解DS18B20的时序,准确地获得温度高位和温度低位。

电路制作与软件调试5.1硬件制作本次设计应用Proteus绘制电路原理图,然后焊接电路元件,最后调试系统功能。硬件电路主要由单片机最小系统、DS18B20为核心的传感器电路、数码显示电路、模拟温控电路和供电电路组成。单片机最小系统:提供一个上电复位高电平,和12MHZ时钟振荡。DS18B20传感器电路:加电即可工作,DATA端加4.7K电阻作上拉电阻保证有足够大的灌拉电流。数码显示电路:用两个4位共阳数码管显示实测温度和设定的温度范围。模拟温控电路:利用两个发光二极管代替升温和降温指示。供电电路:利用7805组成线性稳压电源为整个系统供电。具体电路连接如图10、11所示:图10焊接板反面图10焊接板反面图图11焊接板正面5.2软件调试首先用Proteus进行仿真,调试程序,然后在制作好的电路板上调试程序。测温精度可取到小数点后一位。5.2.1主程序流程主程序说明:小于最低温度,亮红色LED,表示开启升温功能;大于最高温度,亮绿色LED,表示开启降温功能;按键控制,改变上下限温度。主程序流程图如图12所示5.2.2子程序流程DS18B20工作流程图如图13所示图1图12主程序流程图YY发DS18B20复位命令发跳过ROM命令发读取温度命令读取操作,CRC校验9字节完?CRC校验正?确?移入温度暂存器结束NNY图13图13DS18B20工作流程图图14温度读取流程图附录6.1课程设计心得体会本次课程设计,我们组成功完成了数字温度计的设计、制作与调试。三天的时间里,我们分工合作,我负责写程序和设计电路,***和***负责电路部分(主要绘制电路、焊接电路)。最后的调试工作我们共同参与,遇到了不少问题,大家从电路、程序中寻找出错的原因(负责检查自己负责的那部分,并作相应修改),经过讨论、思考找到解决的方法,使得最终用程序调试电路显示成功。在这里,很感谢与我共同奋斗的我们组的成员,尤其是***,几乎是她一个人独自焊接完整个电路图。这次课程设计,我尝试用Keil连接并调试Proteus仿真电路。因为我们是采取教材上相关例题改作的,所以刚开始调试时很成功。后来修改了电路和程序,调试中出现了很多问题,边学边用,学到很多。这次课程设计我受益匪浅,也是进实验室以来的又一次不错的经历。团队协作做出来的作品,每一部分都不可或缺,既要分工又要合作,这样才能有更佳的效果。6.2系统电路原理图及仿真测试图6.3程序代码TMPL EQU 29HTMPH EQU 28HFLAG1 EQU 38HDATAIN BIT P3.7 ORG 00H LJMP MAIN1 ORG 03H LJMP ZINT0 ORG0BH LJMPZIT0 ORG 13H LJMP ZINT1ORG1BH LJMPZIT1 ORG 30HMAIN1: MOVTMOD,#66HMOVTL0,#0FFH MOVTH0,#0FFH MOVTL1,#0FFH MOVTH1,#0FFH MOV SP,#78HSETB IT0 SETB EA SETB EX0 SETB IT1 SETB EX1 SETBTR0 SETBET0 SETBTR1 SETBET1 SETB P3.2 MOV 74H,#9 MOV 75H,#9 MOV 76H,#0 MOV 77H,#0MAIN: LCALL GET_TEMPER LCALL CVTTMP LCALLCOMPARE LCALL DISP1 AJMP MAININIT_1820: SETB DATAIN NOP CLR DATAIN MOV R1,#3TSR1: MOV R0,#107 DJNZ R0,$ DJNZ R1,TSR1 SETB DATAIN NOP NOP NOP MOV R0,#25HTSR2: JNB DATAIN,TSR3 DJNZ R0,TSR2 CLR FLAG1 SJMP TSR7TSR3: SETB FLAG1 CLR P1.7 MOV R0,#117TSR6: DJNZ R0,$TSR7: SETB DATAIN RET GET_TEMPER: SETB DATAIN LCALL INIT_1820 JB FLAG1,TSS2 NOP RETTSS2: MOV A,#0CCH LCALL WRITE_1820 MOV A,#44H LCALL WRITE_1820 ACALL DISP1 LCALL INIT_1820 MOV A,#0CCH LCALL WRITE_1820 MOV A,#0BEH LCALL WRITE_1820 LCALL READ_1820 RETWRITE_1820: MOV R2,#8 CLR CWR1: CLR DATAIN MOV R3,#6 DJNZ R3,$ RRC A MOV DATAIN,C MOV R3,#23 DJNZ R3,$ SETB DATAIN NOP DJNZ R2,WR1 SETB DATAIN RETREAD_1820: MOV R4,#2 MOV R1,#29HRE00: MOV R2,#8RE01: CLR C SETB DATAIN NOP NOP CLR DATAIN NOP NOP NOP SETB DATAIN MOV R3,#9RE10: DJNZ R3,RE10 MOV C,DATAIN MOV R3,#23RE20: DJNZ R3,RE20 RRC A DJNZ R2,RE01 MOV @R1,A DEC R1 DJNZ R4,RE00 RETCVTTMP: MOV A,TMPH ANL A,#80H JZ TMPC1 CLR C MOV A,TMPL CPL A ADD A,#1 MOV TMPL,A MOV A,TMPH CPL A ADDC A,#0 MOV TMPH,A MOV 73H,#0BH SJMP TMPC11TMPC1: MOV 73H,#0AHTMPC11: MOV A,TMPL ANL A,#0FH MOV DPTR,#TMPTAB MOVC A,@A+DPTR MOV 70H,A MOV A,TMPL ANL A,#0F0H SWAP A MOV TMPL,A MOV A,TMPH ANL A,#0FH SWAP A ORL A,TMPLH2BCD: MOV B,#100 DIV AB JZ B2BCD1 MOV 73H,AB2BCD1: MOV A,#10 XCH A,B DIV AB MOV 72H,A MOV 71H,BTMPC12: NOPDISBCD: MOV A,73H ANL A,#0FH CJNE A,#1,DISBCD0 SJMP DISBCD1DISBCD0: MOV A,72H ANL A,#0FH JNZ DISBCD1 MOV A,73H MOV 72H,A MOV 73H,#0AHDISBCD1: RETTMPTAB: DB 0,1,1,2,3,3,4,4,5,6,6,7,8,8,9,9COMPARE:MOVA,77HCJNEA,75H,COM SJMPCOM01COM:JNCCOM02SJMPCPENDCOM01:MOVA,76HCJNEA,74H,COM11 SJMPCPENDCOM11:JNCCOM03SJMPCPENDCOM02:MOVA,77HXCHA,75H MOV77H,ACOM03: MOVA,76H XCHA,74H MOV76H,ACPEND:RETDISP1: MOV R1,#70H MOV R0,#74H MOV R5,#01HPLAY: MOV P1,#00H MOV A,R5 MOV P2,A MOV A,@R1 MOV DPTR,#TAB MOVC A,@A+DPTR MOV P1,A MOV A,@R0 MOVC A,@A+DPTR MOV P0,A MOV A,R5 JNB ACC.2,LOOP1 SETB P0.7 SETB P1.7LOOP1: ACALL DL1MS INC R1 INC R0 MOV A,R5 JB ACC.3,ENDOUT RL A MOV R5,A MOV A,73H CJNE A,#1,DD2 SJMP LEDHDD2: MOV A,72H CJNE A,#0AH,DD3 MOV 72H,#0DD3: MOV A,75H CJNE A,72H,DDH SJMP DDLDDH: JNC PD SJMP LEDHDDL: MOV A,74H CJNE A,71H,DDL1 SJMP PLAY2DDL1: JNC PD4SJMPLEDHPD:MOVA,77HCJNEA,72H,PD1SJMPPD2PD1:JNCPLAY1SJMPPLAY2PD2:MOVA,76HCJNEA,71H,PD3SJMPPLAY2PD3:JNCPLAY1SJMPPLAY2PD4:MOVA,77HCJNEA,72H,PLAY2SJMPPD5PD5:MOVA,76HCJNEA,74H,PD6SJMPPLAY1PD6:MOVA,76HCJNEA,71H,PD

温馨提示

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

评论

0/150

提交评论