




已阅读5页,还剩68页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大连海事大学装订线毕 业 论 文二一三年六月基于单片机的温度控制系统设计 专业班级: 09级别电气2班 姓 名: 高全树 指导教师: 王 莹 轮机工程学院基于单片机的温度控制系统设计摘 要工业技术水平正在不断提高,温度控制成为工业生产生活等多领域重要的性能指标,工业生产中需要温度控制具有可靠高效经济的特点,本设计迎合经济合理可靠性的需求,以 stc89c52mcu为核心设计温度控制系统, 因具有体积小、操作简单、造价合理的特点而被广泛采用。测温采用ds18b20,产自美国dallas公司,是单线数字温度传感器,特点是结构简单、使用方便、价格适中,仅通过编程处理温度信号,会变得十分复杂费时费力,通过ds18b20则可以节省很多时间人力。ds18b20的测温范围适中,在很多地方可以应用。通过自行设置温度上下限,可应用于农业大棚温度控制、粮食存储温度控制、冷冻库房、水温控制等很多温度控制系统。本设计以stc89c52为核心,设计制作具有lcd显示温度控制系统。测温范围为-55-125,通过功能键可自行设置温度控制范围,低于温度范围最小值,继电器吸合,加热电路工作。高于温度范围最大值,继电器控制加热电路断开,停止加热,从而保证控制环境温度处于设置范围内。 第2章开篇介绍整体的功能框图,接着论述了单片机引脚性能的、复位电路设计、时钟电路设计、键盘功能设计、lcd1602显示及ds18b20测温原理和程序功能实现流程图,最后介绍了编译软件和烧录软件的使用及其注意事项,和功能模块组合到一起后上电调试遇到的问题和解决方法。 关键词:温度控制 、单片机、ds18b20、a/dc0804、lcd1602abstractwith the development of industrial level, the temperature control system becomes more important in different areas, the industrial area requires the temperature control with reliable and efficient economic characteristics , this design can suit the requirement . the mcu stc89c52 is the main part of the temperature control system. it has a small size and can be easily operated. the price of it is cheap, so it is widely accepted and used. we use the ds18b20 sensor to measure the temperature. it is produced by dallas company. the ds18b20 is a kind of digital sensor with easy structure and cheap price. if you deal with the temperature signal through programming, it will be very complicated, if we use the ds18b20 sensor, we can save a lot of hard work. the temperature range of ds18b20 is widely used, you can set the value of the temperature. it can be used in agriculture greenhouse and the water temperature control system. we use the stc89c52 chip as the main part of the system design, the design aims to build the temperature control system with the lcd displaying function. the control temperature range is between -55 and 125. the user can set the temperature range, when the temperature is lower the min value, the relay closes, the heating circuit begins to work. when the temperature is higher than the max value, the heating circuit stops working, aiming to achieve the goal that the temperature is in the control range. at the beginning of the chapter two, the paper introduces the whole functional diagram, then introduces the function of mcus pins, the design of clock circuit and the design of keyboard. then the paper introduces the design of lcd displaying and the temperature measurement principle of ds18b20. the paper introduces the flowchart of the programming, and the precaution of using the programming software. at last the paper combines the different functional blocks together. then we begin debugging the temperature control system.keywords: temperature control, mcu, ds18b20, function key settings, lcd1602目 录第1章绪论11.1课题的研究背景及意义11.2设计的主要任务和目标1第2章系统硬件功能设计32.1系统整体功能设计框图32.2 stc89c52简介42.2.1选择stc89c52芯片的原因42.2.2单片机基本结构及原理42.2.2 stc89c52本身特性52.3供电方案确定92.5复位电路方案确定92.6单片机晶振电路设计102.7按键设计方案选择112.8继电器驱动电路设计122.9系统的显示方案122.10温度采集电路设计方案确定152.11温度控制系统电路设计182.12系统总电路图202.12组合功能模块焊接实物图21第3章系统软件编写及使用223.1系统总体设计方案流程图223.2 ds18b20时序流程图223.2.1ds18b20初始化233.2.2 ds18b20写时序253.2.3ds18b20读时序273.2.4a/d转换283.3显示部分初始化显示流程图283.4继电器动作流程图29第4章软件使用及上电调试304.1设计使用的编程软件和烧录软件304.2上电出现的问题及解决步骤31结论32参考文献33致 谢34附录一程序1附录2外文翻译141外文原文142中文翻译24iv基于单片机的温度控制系统第1章绪论1.1课题的研究背景及意义温度控制一直都是现代工业生产中重要的一部分。在现代化工业生产过程中,诸如温度、压力、流量、物位和转速等物理量都必须进行严格的测量和控制。设备的性能、价格、发展空间等特点备受人们的关注,尤其对电子设备的精密度和稳定度最为关注。近年来,测温技术高速发展,测温所应用的温度传感器类型也多种多样。目前国内多采用接触式测温,并且主要使用热电阻与热电偶。国外辐射测温技术发展很快,己引起国内有关人士的重视,近几年其使用也有了明显的增多。基于测温技术的不断发展,这就要求我们找到一种既经济又精确的测量方法。而在考虑经济性和精度的角度出发来看,单片机控制的测温方法其优越性是明显的。随着电子技术的发展,温控元件的性能得到了很大的提升。 单片机作为温度控制系统重要的一部分,片上集成了更多的资源,精确性和可靠性都得以提高,价格变得更加便宜,推动了单片机温控系统的发展,以单片机为核心的温控系统使得测量控制技术更加趋近于智能化,尤其是在需要较高精度控制的场合,利用运算能力更高的单片机,能够更好的满足工业生产控制的需求。本课题研究的温度控制系统设计,应该的范围十分广泛,可以应用于火灾报警,农业生产中的温度控制,粮食存储中温度的控制,以及冷冻库房温度的控制,以传统的工作方式采集温度,耗费时间较长,可操作性差,劳动强度较高,工作效率无法得以提升,造成资源的浪费。如果可以广泛应用智能温度控制系统,自动采集数据,并把采集到的数据传输到一处,然后进行集中地处理,这样可以有效的减少人力运营成本,而且能够保证系统控制的测量精度,市场上对这种高精度,低成本,质量过硬的温度控制系统的需求很大,市场的强烈需求会促进技术的快速发展,从而推动单片机技术更好的发展。 1.2设计的主要任务和目标设计任务:以stc89c52 mcu为核心,设计一个通过lcd1602显示测量温度的控制系统,通过功能按键能够设置温度范围,测温范围是-55-125,通过资料查找,进行理论分析,确定设计方案,通过编程语言使用,加深理解软件编程应用,更好理解整个系统设计的方法,结合学习课程加深理解mcu的使用。实现目标:分别设计不同硬件功能模块,组合各模块成为一个完整系统,按设计方案焊接硬件电路,根据硬件电路编程,实现一个温控系统功能,可以在lcd1602上正确显示温度,通过功能按键设置温度范围,超过温度范围以继电器通断表示加热电路通断。 论文开篇,论述整体功能设计框图,接着介绍使用单片机各引脚功能,然后介绍应用芯片自身特性以及硬件电路设计方案。第三章首先介绍了软件编写流程图, 包括ds18b20初始化流程图、读数据流程图、写数据流程图、温度数据a/d处理流程图。接着论述了lcd显示方案流程图、按键软件程序流程图、继电器控制流程图,第三章末尾介绍了单片机编程软件、下载软件的使用步骤及其注意事项。第四章论述了按设计方案焊接实物图上电调试遇到的问题和解决办法。第2章系统硬件功能设计2.1系统整体功能设计框图 本设计实现以stc89c52为核心,通过lcd1602显示测量温度,功能按键设置控制温度数值,继电器控制加热电路通断的温度控制系统,根据设计的要求,具体设计方案如图2.1,系统包括lcd显示模块,继电器控制加热模块,5v电源供电模块,功能按键设置模块,usb转串口下载模块。led显示stc89c52usb转串口功能键继电器ds18b205v电源加热开关 采集 图2.1系统整体设计框图整体设计框图解读:通过5v电源端口给stc85c52供电,通过usb转串口向单片机中下载程序,通过功能按键设置温度范围数值,ds18b20采集监控环境温度,经a/d转换传送到单片机,通过单片机写入程序处理决定继电器是否动作,当监控温度低于设置温度最小值,继电器吸合,开始加热;当所测温度大于温度范围最大值,继电器断开,停止加热。 功能按键设置:设置两个功能按键分别为k1、k2,分别连到单片机外部中断int0、int1端口,编写中断程序,按下k1报警温度增大,按下k2报警温度减小,测得温度和报警温度比较,大于报警温度,继电器断开停止加热,低于报警温度,继电器吸合开始加热,此时加热指示灯发光。2.2 stc89c52简介单片机(又称为微控制器)的出现是计算机发展史上的一个重要里程碑,他以体积小,功能全,性价比高等诸多优点而独具特色,在工业控制,尖端武器,通信设备,信息处理,家用电器等嵌入式应用领域中独占鳌头。51系列单片机是国内目前应用最广泛的一种8位单片机之一,经过近三十年的推广与发展,51系列单片机形成了一个规模庞大,功能齐全,资源丰富的的产品群。本设计采用51单片机的增强型stc89c52作为核心,下面分别介绍选用该芯片原因,基本结构及原理,以及单片机自身特性。 2.2.1选择stc89c52芯片的原因系统可选单片机有多种,如8031,8051, msp430,mega16,at89c52等,选择stc89c52有一下原因(1) 价格和msp430、mega16、at89c52相比较便宜,但仍能满足系统要求的高可靠性,。(2) 功耗比8031和8051低,性能比8031、8051好。(3)外部方便拓展eeprom,掉电数据不丢失。(4)为51增强型,兼容51使用编程指令,课程学过51单片机,上手比较容易。2.2.2单片机基本结构及原理程序存放在存储器中,cpu按照严格的时序关系,不断地从存储器中取指令,译码,执行指令规定的操作,即按照指令的指示发出地址信号和控制信号,打开某些门和关闭某些门,使信号(数据或命令)通过数据总线在cpu和存储器及i/o接口之间交流。这就是计算机的工作原理。简而言之,存储程序,执行程序是微机的基本工作原理,取指,译码,执行是微机的基本工作过程。单片机是微型计算机的一种,是将计算机主机(cpu,存储器和i/o接口)集成在一小块硅片上的微机,又称微控制器。它专为工业测量与控制而设计,具有三高优势(集成度高,性价比高,可靠性高),它的特点是小而全(体积小,功能全),主要应用于工业检测与控制,计算机外设,智能仪器,仪表,通信设备,家用电器等,特别适合嵌入式微机应用系统。stc89c52是增强型51单片机,内部结构和51单片机一致。如图2.2所示图2.2 内部结构示意图其中,cpu是计算机的控制核心部件,它的功能是执行指令,完成算术运算,逻辑运算,并对整机进行控制。存储器用于存储程序和数据,它由成千上万个单元组成,每个单元都有一个编号(称为地址),每个单元存放一个8位二进制数,这个二进制数可以是程序的代码,也可以是数据。输入、输出接口(又称i/o接口)是cpu和外设(外部设备)之间相连的逻辑电路,外设必须通过接口才能和cpu相连。不同的外设所用的接口不同,有并行接口,串行接口,定时器,a/d,d/a等;每个i/o接口也有一个地址,cpu通过对不同地址的i/o接口进行操作来完成对外设的操作。存储器,i/o接口和cpu之间通过总线相连。用于传送程序或数据的总线称为数据总线;地址总线用于传送地址,以识别不同的存储单元或i/o接口;控制总线用于控制数据总线上数据流传送方向,对象等。在程序指令的控制下,存储器或i/o接口通过控制总线和地址总线的联合作用,分时地占用数据总线,和cpu交流信息。2.2.2 stc89c52本身特性(1)由于stc89c52自身不带a/d、d/a功能,需要外部通过芯片扩展,通过外接dac0832,adc0804芯片来实现d/a,a /d功能(2)89c52属于增强型51机,可以选择两种机器周期工作方式,分别为6机器周期和12机器周期(3)工作电压有5.53.3v和3.82.0v两种,设计中选用5v供电(4)应用程序空间为8k,足够编写温度控制程序(5)具有eeprom和看门狗功能(6)32个通用i/o口,复位后为:p1/p2/p3/p4均为准双向口/弱上拉类型i/o口(7)有3个16位定时计数器即t0,t1,t2(8)漏极开路输出,不外加上拉电阻就可以作为总线扩展用,作为i/o口用时,需要外部接上拉电阻提高电平。(9)掉电工作模式:可以由外部中断唤醒,中断执行完毕返回后继续执行原程序(10)正常工作时的电流为4ma7ma(11)所选单片机正常温度范围:-40+85,可在工业生产里使用(12)封装的方式为pdip。图2.2stc89c52引脚封装图图2.2所示为stc89c52 pdip封装。其引脚功能为:vcc(40引脚):电源电压vss(20引脚):接地p0引脚:p0.0p0.7对应封装图2.2的32 到39引脚p0是一个漏极开路的8位双向的i/o口,每个引脚可以驱动8个ttl类型的负载,对p0写“1”,可以实现高阻抗输入的功能,在访问外部程序和数据存储器,p0端口可以提供8位的地址和数据的复用总线。p1引脚:p1.0p1.7对应图2.2上的1到8引脚,p1端口是一个内部带上拉电阻的8位双向i/o口,p1以吸收或是输出电流的方式可以驱动4个ttl输入类型的负载。p2引脚;p2.0p2.7对应图2.2的21到28引脚,p2端口也是一个带内部上拉电阻的8位双向i/o端口。p2以吸收或输出电流方式可以驱动4个ttl输入类型负载。对p2端口写入1时,可以通过内部的上拉电阻实现把端口拉到高电平的功能,这时p2端口可以满足作为输入口端口功能。p2作为输入口使用时,因为有上拉电阻的,那些被外部信号拉低的引脚会输出一个电流。p3引脚:p3.0p3.7对应图2.2上的10到17引脚,p3端口和p2端口一样也是一个内部带上拉电阻的8位双向型i/o口,p3端口以吸收或释放电流的方式可以驱动4个ttl输入类型的负载,p3引脚作为输入端口使用,因为内部存在上拉电阻的缘故,那些被外部输入信号拉低的引脚会输入一个电流,p3引脚不仅仅可以作为双向i/o口使用,还有一些复用功能,p3引脚特殊功能及对应的引脚如表2.2所示。表2.2 p3引脚复用功能说明对应引脚号拥有的复用功能p3.0rxd(串行输入口)p3.1txd(串行输出口)p3.2(外部中断0)p3.3(外部中断1)p3.4t0(定时器0的外部输入)p3.5t1(定时器1的外部输入)p3.6(外部数据存储器写选通)p3.7(外部数据存储器读选通)rst引脚:对应封装图2.2第9引脚,复位输入功能引脚,当该端口输入大于等于两个时钟周期的高电平即可实现复位功能,该引脚用来实现单片机复位初始化。ale引脚: ale是地址锁存控制信号当mcu访问外部程序存储器时,用来锁存地址低8位的输出脉冲。以固定时钟频率的六分之一作为ale的输入脉冲,但每次访问外部存储器的时候ale会跳。psen引脚:对应封装图2.2的第29引脚,该引脚为外部程序选通控制信号,当从外部程序rom执行代码时,在每个周期内被激活两次,当用户访问内部数据ram时,不会被激活。vpp引脚:对应封装图2.2上第31引脚,访问外部程序rom控制信号,为了实现从地址范围0000h到ffffh的外部程序rom读取指令,必须接上gnd引脚,接上vcc引脚可以满足执行内部程序rom功能。xtal1引脚:对应封装图2.2上第19引脚,振荡器反向放大器,以及内部时钟发生电路的输入端口。xtal2引脚:对应封装图2.2上第18引脚,振荡器反相放大器的输入端,特殊功能寄存器。89c52内部存储器中,80hffh地质单元为特殊功能寄存器区域,89c52单片机中有定时/计数器t0,定时计数器t1,还加进去一个定时计数器t2,其为十六位的,通过配置它的特殊功能寄存器t2con来决定它是定时器还是计数器。 t2具有三种工作方式:捕获模式,自动重新装载模式,以及波特率发生器模式,毕设中使用的是自动重新装载模式来控制时序。(1)捕获工作模式:通过设置t2con中exen2选项来决定工作方式,当exen2等于0时,定时器可作为一个十六位的定时器或是计数器,溢出时tf2会被置位,如果exen2等于1时,就会增加一个功能特性,exf一样可以产生中断,这一点和tf2很像,在捕获模式中,tl2和th2寄存器切勿重新装载值(2)自动重装模式:通过配置t2con来将其配置成十六位的定时计数器,通过编写程序来决定是递增还是递减工作方式,增减方式由寄存器dcen来确定,它位于t2mmon寄存器中,当dcen为0时默认为向上计数,当dcen等于0时,可以通过寄存器t2ex来确定是增计数还是减计数,如下图所示为例介绍一下自动装载计数功能,图示中dcen=0,为自动增计数模式,通过设置exen2位来选择,如果exen2被配置为0,那么t/c2则以增加的计数的方式计数到0ffffh,计数溢出将tf2置位为1,然后将rcap2l和rcap2h存储的16位数值从新装载到定时计数器,其中存储器rcap2l和rcap2h中的数值是通过软件编程预设置的(3)波特率发生模式:t2con的控制位tclk以及rclk允许t/c1或者t/2从串行口发送和接收波特率,寄存器tclk=0,t/c1作为串行口发送波特率的发生器,当寄存器tclk=1时,t/c2作为串行口波特率发生器,寄存器rclk对接收的波特率作用是相同的,通过tclk和rclk两个寄存器,可以使得串行口获得不同的接收以及发送波特率,一个通过t/c1产生,一个通过t/c2产生。2.3供电方案确定供电电路可选择两种方案:方案1:自己制作5v直流电源;方案2:应用集成电源适配器,将220v市电变为5v直流电输出。考虑到自制电源供电不稳,最后选择方案2,图2.3为供电电路图2.3供电电路图2.4为电源外接指示灯电路,让用户清楚知道是否供电。选用发光二极管为红色,导通压降2.0-2.2v,正常工作电流5-8ma,加560欧电阻可使工作电流处在正常范围内。图2.4指示灯电路2.5复位电路方案确定对于单片机,通常系统需要在上电瞬间进行内部参数的初始化,这时单片机无法立即进入工作状态,通常称为上电初始化。单片机可选上电复位和手动复位两种。如图2.5所示。图2.5常用复位电路为满足系统控制灵活性需要,本系统采用图2.6所示手动复位电路,悬空端节单片机reset引脚,为满足单片机外围电路设计,将电容变为10uf,电阻变为10k按下按键vcc接通,由电阻r6拉高电平,在复位引脚提供一定时间高电平,单片机复位。图2.6 选定复位电路方案2.6单片机晶振电路设计stc89c52mcu的时钟信号可以通过内部震荡电路方式或是外部震荡电路方式获得。通过在引脚xtal1和xtal2外接晶振,就构成了内部振荡的方式。由于单片机内部有反相高增益放大器,当外接晶振后,便构成了自激式振荡电路,并产生震荡的时钟脉冲。晶振通常选用6mhz,12mhz或24mhz。晶振可以提供基准频率,分为有源无源两类,无源式晶振需要选用芯片内部有震荡器,晶振的信号电压要根据起振电路的具体情况而定,允许不同的电压信号,但通常无源晶振精度和质量都较差,为更精确的匹配外围电路设计,晶振频率选取12mhz,如需更换晶振时要同时要改变外围电路设计。无振荡器的有源晶振就能提供较高精度基准频率,相对无缘晶振信号质量要好。实际应用中多采用无源晶振设计的电路居多。本设计采用图2.7晶振时钟电路。晶振选取12mhz,电容选取22pf图2.7 电路的晶振时钟电路2.7按键设计方案选择1.功能按键有两种方案:方案1:焊接独立按键,方案2:使用矩阵键盘。方案比较:使用独立按键相比于矩阵键盘的优点是编程容易,占用i/o口资源更少,lcd1602,已经占用较多i/o口,采用方案二会使焊接布线更复杂,出现问题不容易查找。综合考虑选用方案1。2.按键输入原理:按键动作将机械关系转化为数字逻辑电平,为标准的ttl电平,具体的按键动作状态和功能设置通过软件来实现。3.按键消抖解决方案:图2.8为按键按下产生抖动干扰示意图消除按键抖动可选用两种方式:(1)通过硬件方式,通常用电容滤波、单稳延时电路(2)通过软件延时再次检测方式消除抖动本设计选用软件延时的方式消除抖动,但无论是硬件还是软件都不能完全消除干扰。图2.8 按键抖动示意图4.系统按键功能设置:系统通过按键设置控制的温度范围,设计两个键k1、k2,分别连接到stc2.8继电器驱动电路设计系统通过继电器通断来控制温度控制系统的通。选用继电器型号为srs-12vdc-sl-c型号,该继电器为直流电磁继电器,触点类型可选为常开型、常闭型、以及转换型。由于继电器工作电流较大,直接从单片机输出的电流无法驱动,所以需要经过三极管放大,q6选用s8550三极管,特点是电压低,输出电流大,可用于继电器驱动,图2.9为继电器驱动电路,温度范围设定后,如果温度超过最大范围值,则通过单片机程序控制端口输出电平控制三极管的通断,从而控制继电器通断,达到控制温度目的。图2.9 继电器驱动电路选择2.9系统的显示方案本设计采用lcd1602液晶屏作为显示部分。工业用lcd1602可同时显示16列2行共计32个字符,可以用来显示数字字母符号,由于点距和行距不足所以不能用来显示图形,片工作电压:4.5-5.0v,工作电流:2.0ma(5.0v),模块最佳工作电压:5v,字符尺寸:2.954.35(wh)mm,表2.4为芯片功能引脚介绍。图2.10为1602显示屏和单片机的连接电路,在8位数据传输端口连接4.7k排阻,起到加大驱动电流的作用,防止连接短路损坏i/o口。图2.10 lcd1602与单片机的连接电路表2.4模块的引脚功能编号符号引脚说明编号符号引脚说明1vss电源地9d2i/o2vdd电源正极10d3i/o3vl液晶显示的偏压符号11d4i/o4rs数据/命令选择器12d5i/o5r/w读/写选择器13d6i/o6e使能信号14d7i/o7doi/o15bla背光源的正极8d1i/o16blk背光源的负极控制器的管脚接口说明:(1)基本操作的时序要求读状态:输入:rl=l,rw=h,e=h;输出:d0d7=状态字写状态:输入:rs=l,rw=l,d0d7=指令码,e=高脉冲;输出:无读数据:输入:rs=h,rw=h,e=h;输出:d0d7=数据写数据:输入:rs=h,rw=l,d0d7=数据,e=高脉冲;输出:无(2)程序状态字每次的读写操作都需要进行读写监测从而确保sta7为0,如表2.5所示表2.5 pswsta7d7sta6d6sta5d5sta4d4sta3d3sta2d2sta1d1sta0d0sta0-6当前数据地址指针的数值sta7读写操作使能1:禁止 0:允许(3)ram地址映射如图2.12图2.12 ram地址映射示意图(4)显示模式设置如表2.6表2.6显示模式控制设置指令码功能00111000设置16*2显示,5*7点阵,8位数据接口(5)显示开/关及光标设置如图2.13图2.13显示开/关及光标设置指令2.10温度采集电路设计方案确定方案一:采用热电阻温度传感器。热电阻是利用导体的电阻随温度变化的特性制成的测温元件。现应用较多的有铂、铜、镍等热电阻。其主要的特点是测量范围大、便于远距离测量。然后经过滤波和放大电路处理得到模拟量的电压信号。最后采用ad0809将模拟量转化为数字量,通过单片机中断功能采集入单片机。温度采集放大电路如图2.14所示。温度采集原理如图2.14所示为温度信号调理电路,由4部分组成:稳压电路,带pt100的反相放大电路,求和电路和同相放大电路。电路的温度传感器选用pt100,为消除其引线对测量精度的影响而采用三线制结构,a点电位为5v, pt100放在运算放大器的反馈回路中,若引线电阻为r,当=.时, 则有: (2.1) (2.2) (2.3) (2.4)由公式2.1到2.4可得到: (2.5)图2.14中的lm363和电容c11起稳压作用,它使得a点的电压恒定在5v,op07为8管脚的高精度运放,具有极低的输入失调电压和失调电压温漂,非常低的输入噪声电压幅度及长期稳定的特点,故采用它作为运放。电阻的取值如下:由公式推导可知,=100 ;取 ,,; pt100的阻值会随着温度的变化而改变。pt后的100即表示它在0时阻值为100欧姆,由pt100得特性表可得:在500时,其电阻为280.98,根据上述推导公式可得。该电路即可以克服直流桥电路具有非线性的缺点,又可以消除由于pt100引线电阻变化时的影响。取=100 ,可保证t=0时=0v,选择不同的电阻值可使在05v之间。图2.14 温度采集与放大电路 方案二:采用ds18b20数字温度传感器,ds18b20产自dallas公司, ds18b20主要特征:全数字温度转换及输出,先进的单总线数据通信,最高12位分辨率,精度可达0.5摄氏度,可选择寄生工作方式,检测温度范围为-55125,内置eeprom,限温报警功能,64位光刻rom,内置产品序列号,可以连接多个传感器一起工作,多样封装模式,适应不同硬件系统。图2.14为芯片封装图图2.14 18b20封装图ds18b20芯片引脚功能:gnd 电源地dq 单数据总线vdd 电源电压ds18b20测温原理简述:以高精度温度振荡器来确定计数周期,对低系数温度振荡器在该周期内计数累加来获得温度数值,计数器初始值预置为-55,门周期结束之前计数器处在零位置,则温度计数器数值变大,表示此时的温度比预置的初始温度-55大,此时计数器复位到斜坡累加电路决定的数值,斜坡累加电路用来补偿晶振抛物特性引起的误差,接着重复执行该过程。期望获得的分辨率较高,需要调整一度温度所对应的计数值,通过给定温度计数值和每一度温度对应数值可以知道传感器的分辨率,通常ds18b20传感器以0.5作为分辨单位数值,可测温度范围为-55125。九位制中最高位为温度数值的符号位,被存放在最高位msb当中,如果最高位msb中的数值为“1”则表示所测得的温度数值是负值,如果最高位msb中的数值是“0”则表示测得的温度为正值。图2.15为ds18b20内部功能模块框图图2.15 18b20内部结构框图图2.16示为设计的测温电路。图2.16测温电路设计图单片机通过p3.3口采集温度信号并控制ds18b20温度传感器的信号采集和传输频率,使之与1602液晶显示时序相匹配。由于温度传感器没有内置电源,所以无法输出高电平,故dq端需要通过一个上拉10k上拉电阻连接到电源,从而获得高电平。 比较方案一和方案二,本设计常用于室内环境,温度要求精度不是很严格,环境温度,方案一整体造价太高,所以方案二更适合本设计。2.11温度控制系统电路设计 安全是电力设备操作控制中需要考虑的重要因素,很多用电设备都具有高电压、强电流的特点。电路设计不合理,或人员操作不规范很容易引发触电事故,以低电压作为控制电路来控制高电压,通常使用继电器、可控硅等来控制,获得良好电隔离。 本设计中加热设备使用220v市电,对人体有威胁,用继电器来控制,继电器线圈电压为直流5v,触头可耐交流250v、10a。控制电路如图2.17,所选继电器为松乐4100 srs-dc5v-sl-c 3a继电器,s8550三极管特点是低电压,大电流,适合用来驱动控制继电器。图2.17热控制电路设计解读:反向二极管用来吸收线圈断电产生电流,防止继电器烧毁,并联一个与560欧串联的发光二极管,便于观察继电器通断。悬空端连单片机p3.6,通过p3.6高低电平变化,控制s8550三极管通断来控制继电器,由继电器来完成加热电路控制。p3.6端口为高电平,三极管关断,继电器不动作,二极管熄灭,加热继续保持工作,p3.6为低电平,此时三极管导通,继电器断开,二极管发光,加热器停止工作,停止加热。2.18系统总电路图图2.18系统总电路图2.19组合功能模块焊接实物图图2.19焊接实物的正面图图2.20焊接实物的反面图第3章系统软件编写及使用3.1系统总体设计方案流程图开始初始化单片机显示模块初始化ds18b20初始化检测键盘动作采集温度信号lcd1602显示温度和设定值比较max继电器动作,停止加热否是图3.1总体设计方案流程图3.2 ds18b20时序流程图ds18b20操作包括:初始化;rom操作指令;存储器操作指令;数据处理。1.初始化单总线上的所有处理操作均从初始化开始。2.rom操作指令先检测ds18b20是否存在,如果存在,便可以通过发送rom操作指令来工作read rom(读rom)33h;match rom(匹配rom)55h;skip rom(跳过rom)cch;search rom(搜索rom)f0h;alarm search(告警搜索)ech3.存储器操作指令write scatchpad(写暂存存储器)4eh;read scatchpad(读暂存存储器)beh;copy scatchpad(复制暂存存储器)48h;convert temperature(温度变换)44h;recall eprom(重新调出);read power supply(读电源)b4h3.2.1ds18b20初始化时序图如图3.2,通过主机总线在t0时刻发送一个持续一定时间间隔的低电平复位脉冲,最短持续时间为480us,接着在t1时刻释放总线并且进入接收状态,在温度传感器ds18b20检测到总线上升沿时,需要等待15-60us,接着在t2时刻发出表示温度传感器存在的脉冲,该脉冲为低电平,其持续时间为60-240us,如图虚线所示图3.2 ds18b20初始化时序由初始化时序得到初始化流程图3.3ds18b20初始化开始clr dq 向ds18b20发出复位reset 脉冲等待480usdq是否变低置位flag标志位并延时200us初始化结束清零flag标志位图3.3初始化流程图图3.3初始化流程图3.2.2 ds18b20写时序如图3.4和3.5所示,当主机总线由高电平变为低电平时,会产生写入时间间隙,从t0开始的15us内,需要将要写入的位传送到总线上,在15us以后的15us-60us时间范围内需要对总线进行采样,如果采样获得低电平,则写入位为0,如图3.4。如果采样获得的为高电平,则写入位为1,如图3.5,需要注意的是连续写两位的时间间隙需要大于1us图3.4写入0的时序图3.5写入1的时序图图3.6写入数据流程图开始ds18b20初始化写入cch、skip rom写入44h发送数据转换指令clr dq 准备发送延时15us写入1位数据延时1545us置位dq,完成1位数据发送8位数据发送完成完成否是图3.6写入数据流程图3.2.3ds18b20读时序如图3.7主机总线由高电平跳变为低电平,总线只需要保持17us的低电平,之后在t1时刻将总线拉高,从而产生读时间间隔,读功能在t1到t2时刻之前有效,t2距离t0为15us,所以在t2时刻之前主机必须完成对位的读工作,并在距离t0时刻60us到120us的时间内释放总线。图3.7读时序图读流程图如图3.8所开始ds18b20初始化写入cch、skip rom写入beh发送转换setb dq延时1us以上clr dq准备发送延时1545us延时1us以上读取1位数据8位数据是否读完11完成否是图3.8读取数据流程图3.2.4a/d转换系统a/d转换流程图如3.9所示开始初始化开启a/d转换转换是否结束结果送到50h滤波结果进行bcd编码放到60h-63h完成 否是 图3.9a/d转换流程图3.3显示部分初始化显示流程图图3.10为初始化显示流程图开始功能设置162显示8位数据延时等待数据显示图3.10初始化显示流程图3.4继电器动作流程图图3.11为继电器动作流程图开始继电器复位采集测量当前温度是否大于设置温度最大值断开停止加热保持闭合继续加热完成是否 图3.11继电器动做流程图第4章软件使用及上电调试4.1设计使用的编程软件和烧录软件系统使用的编程软件和51单片机相同,用的是keiluvision3汉化破解版,单击工程按键,选择新建工程,建立实验需要的工程,注意新建工程需要起一个与工程项目一致意义的名字,接下来选择工程所使用的单片机类型,本实验选用的是stc89c52类型的单片机,然后点击确定就表示工程建立完毕,然后点击文件选型里面的新建按键建立一个新的空白文档,在这个新的文档里面进行程序的编写、修改,因为该实验项目选择使用汇编语言编写,所以保存时,必须将其文件名加上“.c”,该后缀表示程序为汇编形式,保存文件后需要将编写的文件添加到项目中去,右击source group 1,在弹出的菜单中选择“带有.c后缀的文件”然后添加到项目中,然后右击target1,弹出菜单中选中“目标target 属性” 在输出选项卡当中需要在“e生成hex文件”选项前打钩选中,然后点击确定退出,之所以要选择“e生成hex文件”选型是因为通过stc-isp软件将程序烧录到单片机中烧录的即为程序编译后生成的hex类型文件,点击编译链接选项对程序进行编译,在窗口下方会提示程序出现的错误,根据提示修改程序,程序调试没有错误后,需要打开寄存器状态窗口,一步步运行程序,观察寄存器的状态变化,从而判断程序除了没有语法错误,程序的逻辑是否正确,是否能够实现编程前预想的程序功能。单片机的烧录软件使用步骤:stc89c52单片机使用的烧写软件为stc-isp,低版本的stc-isp软件出现无法和单片机开发板通信的问题,所以下载使用的是最新版本v6.3.8b,解决了无法通信的问题,由于使用的电脑不带9针串口线,所以只能使用usb转串口线往单片机里烧录程序,使用usb转串口线需要安装usb驱动生成模拟的usb端口,需要记住生成的虚拟端口的序号,烧录程序时选择通信的端口即为该序号的端口,否则无法进行通信,从而无法烧录程序。烧录程序的步骤如下:(1)首先需要关闭开发板电源,这时电源指示灯d15为熄灭状态(2)运行stc-ispv6.3.8b软件(3)选择单片机的型号为stc89c52,选取安装虚拟驱动生成的com 口(4)点击打开文件,选择编译后生成的带有hex后缀的文件(5)点击download按钮,表示单片机和电脑通信成功,软件提示“请给mcu上电”(6)打开实验板电源,烧录程序完毕。在整个烧录过程中不要用手触碰单片机,因为容易造成短路从而毁坏单片机以及电脑。4.2上电出现的问题及解决步骤遇到问题:系统设计调试时,借助基本功能健全的开发板,验证软件编译是否正确,避免了出现问题不知道在哪里。首先编写一个简单的显示程序显示hello字样,烧入单片机,将单片机插到焊接板,发现显示正常,说明lcd1602外围电路焊接没有问题,将按统设计编写的软件烧入单片机,发现lcd1602显示温度时而有显示,时而无显示,处于乱码状态,无法正确显示测得温度。解决的步骤:首先应用万用表欧姆档,检测电路板各部分电阻值显示大小都在200欧姆到400欧
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 跨文化传播与国际贸易
- 3D打印肘关节外固定支具在经肱动脉入路行冠脉介入诊疗患者术后的应用研究
- 农村广告招租合同范例
- 国有资本共同所有权对企业创新的影响研究
- 农村车库买卖合同范例
- 再生混凝土细粉对水泥基材料结构与性能的影响研究
- pcb抄板合同范例
- 传媒公司活动合同范例
- 加盟合同范本饮品
- 兑店定金合同范例
- 初中数学二元一次方程组作业设计
- 加强沟通协调:制定沟通协调工作方案
- 沙棘种植施工方案
- 安 全 旁 站 监 理 记 录 表
- 村卫生室医疗质量督导检查汇总表
- 电子商务专升本考试(习题卷12)
- (完整word版)Word信纸(A4横条直接打印版)模板
- 雨水管道水力计算表
- (完整版)《西游记》竞赛题目100题
- 困境儿童走访调查表、致困原因确定参考标准、困境儿童评估报告
- 电机学同步电机-全套课件
评论
0/150
提交评论