液位控制系统设计_第1页
液位控制系统设计_第2页
液位控制系统设计_第3页
液位控制系统设计_第4页
液位控制系统设计_第5页
已阅读5页,还剩116页未读 继续免费阅读

下载本文档

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

文档简介

液位控制系统设计(完整版)资料(可以直接使用,可编辑优秀版资料,欢迎下载)

目录液位控制系统设计(完整版)资料(可以直接使用,可编辑优秀版资料,欢迎下载)摘要………………31前言……………41.1课题背景………………………41.2国内外研究的现状……………41.3使用单片机实现水体液位控制的优点…………………51.4系统的总体研究方案………51.4.1系统硬件总体方案…………1.4.2系统软件总体方案…………设计的研究进程……………62系统硬件设计…………………72.1核心芯片8051单片机………72.2液位传感器设计……………102.3光电传感器的基本特性…………………….132.4DAC0832D/A转换器和ADC0809A/D转换器…………2.4.1D/A转换

基本原理及特征……2.4.2ADC0809转换芯片……………2.5键盘及显示接口……………192.6报警装置……………………213软件的设计……………………223.1软件设计流程图…………….233.2水位检测的主程序………….244结论……………26致谢………………27参考文献…………28摘要本文主要设计了一种液位控制器,它以8051作为控制器,通过8051单片机和模数转换器等硬件系统和软件设计方法,实现具有液位检测报警和控制双重功能,并对液位值进行显示。本系统是基于单片机的液位控制,在设计中主要有水位检测、按键控制、水位控制、显示部分、故障报警等几部分组成来实现液位控制。主要用水位传感器检测水位,用六个控制按键来实现按健控制,用三位7段LED显示器来完成显示部分,用变频器来控制循环泵的转速,并且通过模数转换把这些信号送入单片机中。把这些信号与单片机中内部设定的值相比,以判断单片机是否需要进行相应的操作,即是否需要开启补水泵或排水泵,来实现对液面的控制,从而实现单片机自动控制液面的目的。本设计用单片机控制,易于实现液位的控制,而且有造价低、程序易于调试、一部分出现故障不会影响其他部分的工作、维修方便、等优点。关键词:8051单片机;模数转换;水位控制;自动控制1前言1.1课题背景液位控制系统是以液位为被控参数的控制系统,它在工业生产的各个领域都有广泛的应用。在工业生产过程中,有很多地方需要对容器内的介质进行液位控制,使之高精度地保持在给定的数值,如在建材行业中,玻璃窑炉液位的稳定对窑炉的使用寿命和产品的质量起着至关重要的作用。液位控制一般指对某一液位进行控制调节,使其达到所要求的控制精度。液体的液位的自动控制,是近年来新开发的一项新技术,它是微型计算机软件、硬件、自动控制等几项技术紧密结合的产物,工程作业采用的是微机控制和原有的仪表控制,微机控制有以下明显优势:1)直观而集中的显示各运行参数,能显示液位状态。2)在运行中可以随时方便的修改各种各样的运行参数的控制值,并修改系统的控制参数,可以方便的改变液位的上限、下限。3)具有水体控制过程的自动化处理以及监控软件良好的人机界面,操作人员在监控计算机上能根据控制效果及时修运行参数,这样能有效地减少工人的疲劳和失误,提高生产过程的实时性、安全性综合以上的种种优点可以预见采用计算机控制系统是行业的大势所趋。单片机是在一块芯片上集成了一片微型计算机所需的CPU、存储器、输入、输出等部件。单片机自问世以来,性能不断提高和完善,体积小、速度快、功耗低的特点使它的应用领域日益广泛。一般,工业控制系统的工作环境差,干扰强,利用单片机控制就能克服这些缺点,因此单片机在控制领域得到广泛的应用,使用单片机控制液体液位是很好的选择。1.2国内外研究的现状目前我国在单片机测控装置研究、生产、应用中,取得了很大的成绩,总结了很多经验,但是各行业仍处于发展期,经调查,更多科研究所在这方面开展的工作更看重的是理论和算法,数年来这方面的研究的论文较多,着重生产实际的很少。在上海,新型的单片机测控装置与系统研究的生产基础较雄厚,在生产过程中需要新型的测控装置与系统,因此在不断的努力研究与开发。上海的工程技术研究人员更着重的是生产实际研究,对理论、算法和成果的论文较少;深圳在研制新型的测控装置与系统领域也比较有成就,尽管与其他国家比较尚有差距,但是,深圳的高校、研究院所的最大的特点就是实际,与生产实际应用项目无关的问题基本不去考虑,主要考虑选取什么材料,测控什么物理量,优点是什么,与机器设备的通讯接口等等。一些发达国家在单片机新型系统研究、制造和应用上,已积累了很多经验,奠定了基础,进入了国际市场。我国在新型测控装置与系统研究、制造、应用和经验上,与其他发达国家相比还存在差距,但是我国的研究人员已经克服很多困难,并在不断的摸索中前进,有望在相关领域赶上甚至超过发达国家的技术水平,这是发展趋势。1.3使用单片机实现水体液位控制的优点使用单片机实现水体液位控制具有较高的实用价值和稳定性好等特点。采用高亮二极管和光敏三级管所组成的液位传感器测量水位,可有效保证水位的自动控制,能更好地对水体水位进行自动化控制,避免了工作人员在现场进行检测操控,方便了人员对液位系统的控制,控制方便且系统稳定性能好;单片机不仅有体积小,安装方便,功能较齐全等优点,而且有很高的性价比,应用前景广,同时有助于发现可能存在的故障,通过微机实现给水系统的自动控制与调节,维持稳定系统,保证安全经济运行。本文就是采用8051单片机为核心芯片的一种水体水位控制系统,具有较高的实用价值和优越性。本系统与PLC控制系统相比大大降低了使用成本,提高了控制运行速度。根据仿真模拟运行的结果表明,该系统能很好的运行,将液位控制在给定的范围内,对过高和过低进行安全报警,稳定性能好,容易操作和控制,保证了生产的正常进行。1.4系统的总体研究方案本设计是采用8051单片机为核心芯片,及其相关硬件来实现的水体液位控制系统,在用液位传感器测液位的同时,CPU循环检测传感器输出状态,并用3位七段LED显示示液位高度,检测液位数据,实施报警安全提示,当水体液位低于用户设定的值时,系统自动打开泵上水,当水位到达设定值时,系统自动关闭水泵或打开排水泵。系统硬件总体方案系统的原理是采用高亮二极管和光敏三级管所组成的液位传感器对液面进行控制,通过四对传感器分别安装在现场的四个不同的位置,由上至下测量水体的液位值,。并把这四个液位状态通过模数转换器ADC0809传到单片机中,在通过3位七段LED显示器显示出液位的四种状态及报警安全提示。用LED显示是因为它具有显示清晰、亮度高、使用电压低、光电转换效能高、寿命长等特点,根据当前的液位值和用户设定的水位决定是否进行开、关水泵,需要是否开启和关闭驱动阀门的电动机。本设计主要运用了液位传感器测液位,第三章将着重介绍。系统软件总体方案水位检测是通过四对由高亮二极管和光敏三极管所组成的液位传感器分别安装在四个不同的位置,由上至下四个输出端口分别接单片机的P1.0、P1.1、P1.2、P1.3口,实时对水位进行检测。当水位到达某一光敏三极管的位置时,其输出端口就向单片机输出高电平;当水位低于此光敏三极管的位置时,其输出端口就向单片机输出低电平。由上至下的第一个位置为水位上限报警线,即当水位高于此位置时,开水阀控制系统就会自动报警,提醒工作人员注意,加水电磁阀有可能出故障;第二个位置是自动停止加水线,即当水位高于此位置时,控制系统会自动关闭加水电磁阀,停止加水;第三个位置是自动加水线,即当水位低于此位置时,控制系统会自动接通加水电磁阀,开始加水;第四个位置是水位下限报警线,即当水位低于此位置时,控制系统就会自动报警,提醒工作人员注意,加水电磁阀可能出故障。本系统所使用的传感器性能稳定,测量准确,大大简化现场安装,具有较高的性价比,有较大的工程应用价值,而且利用计算机与组态软件技术对工业生产过程进行自动控制有着重要的意义。其优越性主要在于:首先,通过对水体液位进行的简易方便的操纵,可以准确得控制水泵进行添加水或放水以适应工作的需要,操作简单,经济效益好。其次,水体控制过程的自动化处理以及监控软件良好的人机界面,操作人员在监控计算机上能根据控制效果及时修运行参数,这样能有效地减少工人的疲劳和失误,提高生产过程的实时性、安全性。随着计算机控制技术应用的普及、可靠性的提高及价格的下降,工业以及其他方面的微机控制必将得到更加广泛的应用。设计的研究进程本设计第二章对系统进行硬件分析,主要介绍了本设计所使用的核心芯片8051,重要对其端口进行介绍,介绍其功能与用途,还介绍了液位传感器、数模转换ADC0809、执行设备、LED显示和报警装置,介绍了他们的原理、结构和电路连接,另外我着重介绍了本设计所使用的传感器,因为传感器的性能在整个系统中起着非常重要的作用,尤其对检测精确度起着重要的作用。第三章我介绍了整个系统的软件设计。2系统硬件设计广泛的液位控制系统包括对水体的液位,压力等的控制,本系统只侧重于介绍液位的控制。液位控制是利用由高亮二级管和光敏三级管所组成的液位传感器,把液位的状态转换成模拟信号,再通过模数转换器ADC0809把输出状态直接接到单片机的I/O接口,单片机经过运算控制,输出数字信号,输出接口接LED进行显示,实现液位的报警和键盘的显示与控制;下图即是液位控制系统:CCPULED显示传感器LED显示传感器报警装置报警装置控制执行装置控制执行装置图2-1基于单片机的液位控制系统由上图可观察到传感器通过对液面进行测量,输出模拟信号,再通过模数转换器把输入的模拟信号转换成数字信号,通过8051单片机的运算控制,在通过LED进行显示,通过报警装置进行报警,报警显示之后再通过对阀门的开启实现对水体的液位进行调节控制,阀门的驱动设备是电动机。2.1核心芯片8051单片机计算机芯片MCS-51是一个电脑晶片,英特尔公司生产系列。它是在MCS-48系列的基础上发展的高性能的8位单片机。所出的系列产品有8051、8031、8751。其代表就是8051。其他系列的单片机都以它为核心,所以本设计采用的核心芯片是8051单片机。CPU是它的核心设备,从功能上看,CPU包括两个部分:运算器和控制器,它执行对输入信号的分析和处理。整个系统电控部分以ATMEL公司的8051为核心芯片,控制信号采集、处理、输出三个过程。这种芯片内置4KEPROM,因为系统要求控制线较多,如果采用8031外置EPROM程序控制结构,则造成控制线不够;而8051却可以利用P0、P2口作控制总线,大大简化了硬件结构,并可以直接控制键盘参数输入、LED数据显示,方便现场调试和维护,使整个系统的通用性和智能化得到了很大的提高。系统的原理是采用液位式传感器测量液体的液位值,通过单片机的转换与分析在LED上显示及输出控制;根据当前的液位值和用户设定的水位决定是否进行开关水泵,以及是否到达危险高、低水位,需要关闭阀门。图2-28051引脚图上图是8051的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。现在我们对这些引脚的功能加以说明:Pin40:正电源脚,正常工作或对片内EPROM抄写程序时,接+5V电源。Pin19:时钟XTAL1脚,片内振荡电路的输入端。Pin18:时钟XTAL2脚,片内振荡电路的输出端。8051的时钟有两种方式,一种是片内时钟振荡方式,但需在18和19脚外接石英晶体(2-12MHz)和振荡电容,振荡电容的值一般取10p-30p。另外一种是外部时钟方式,即将XTAL1接地,外部时钟信号从XTAL2脚输入。本设计采用外部时钟电路,外接晶振和电容组成振荡器。输入输出(I/O)引脚:Pin39-Pin32为P0.0-P0.7输入输出脚,Pin1-Pin1为P1.0-P1.7输入输出脚,Pin21-Pin28为P2.0-P2.7输入输出脚,Pin10-Pin17为P3.0-P3.7输入输出脚。在对单片机设计中,P0口作为程序存储器扩展口,且是扩展并行输入/输出接口的接口,另外也作为模数转换的数据传输口,P2口为程序存储器扩展口的高八位地址总线口,P1口为输入/输出口。Pin9:RESET/Vpd复位信号复用脚,当8051通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高平,系统即初始复位。初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,堆栈指钟写入07H,其它专用寄存器被清“0”。RESET由高电平下降为低电平后,系统即从0000H地址开始执行程序。然而,初始复位不改变RAM(包括工作寄存器R0-R7)的状态,8051的初始态如下表2-1寄存器初始状态特殊功能寄存器初始态特殊功能寄存器初始态ACCPSW07HDPLIPIETMODSCONP0-P300H00H00H00Hxxx00000B0x00000B00HxxxxxxxxB1111111BBSPTH0TL0TH1TL1TCONSBUFPCON00H07H00H00H00H00H00H00H0xxxxxxxB8051的复位方式可以是自动复位,也可以是手动复位,见图2-3。此外,RESET/Vpd还是一复用脚,Vcc掉电期间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失,此设计采用自动复位电路。图2-3复位电路Pin30:ALE/当访问外部程序器时,ALE(地址锁存)的输出用于锁存地址的低位字节。而访问内部程序存储器时,ALE端将有一个1/6时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出。更有一个特点,当访问外部程序存储器,ALE会跳过一个脉冲。如果单片机是EPROM,在编程其间,prog将用于输入编程脉冲。Pin29:当访问外部程序存储器时,此脚输出负脉冲选通信号,PC的16位地址数据将出现在P0和P2口上,外部程序存储器则把指令数据放到P0口上,由CPU读入并执行。在编程时,EA/Vpp脚还需加上21V的编程电压。2.2液位传感器设计在液体液位控制系统中,传感器的选择是非常重要的,传感器是能感受规定的被测量,并按照一定的规律转换成可用输出信号的器件或装置,它通常由敏感元件和转换元件组成,它的性能直接影响到整个检测系统,对检测精确度起着重要的作用。传感器的种类很多,有温度传感器,加速度传感器,光学传感器,压力传感器的,本设计主要采用的是由高亮二级管和光敏三级管所组成的光电传感器来对液位进行控制,在把检测的电信号通过ADC0809输入到单片机进行分析,在由LED进行显示和键盘控制,实行对液位的报警。光电传感器是一种小型电子设备,它可以检测出其接收到的光强的变化。早期的用来检测物体有无的光电传感器是一种小的金属圆柱形设备,发射器带一个校准镜头,将光聚焦射向接收器,接收器出电缆将这套装置接到一个真空管放大器上。在金属圆筒内有一个小的白炽灯作为光源。这些小而坚固的白炽灯传感器就是今天光电传感器的雏形。光电检测方法具有精度高、反应快、非接触等优点,而且可测参数多,传感器的结构简单,形式灵活多样,因此,光电式传感器在检测和控制中应用非常广泛。我采用的是四对高亮二极管和光敏三极管所组成的液位传感器,这种液位传感器如下图图2-4液位传感器由图2-4可知,液位传感器的主要元件是高亮二极管和光敏三极管,它们都属于光电元件,光电元件主要采用的是光电效应,光电效应分外光电效应、内光电效应和光生伏特效应。我们知道,光电效应的原理是PN结加反向电压时,反向电流的大小取决于P区和N区中少数载流子的浓度,无光照时P区中少数载流子(电子)和N区中的少数载流子(空穴)都很少,因此反向电流很小。但是当光照PN结时,只要光子能量h大于材料的禁带宽度,就会在PN结及其附近产生光生电子、空穴对,从而使P区和N区少数载流子浓度大大增加,它们在外加反向电压和PN结内电场作用下定向运动,分别在两个方向上渡越PN结,使反向电流明显增大。如果入射光的照度变化,光生电子,空穴对的浓度将相应变动,通过外电路的光电流强度也会随之变动,光电效应的原理就是光电二极管的原理,光敏二极管就把光信号转换成了电信号,它是最简单的光学元件。而光敏三极管有两个PN结,因而可以获得电流增益,它比光敏二极管具有更高的灵敏度,也是把光信号转化成电信号。其结构如图2-11所示。光敏三级管是由高亮二极管进行发光的,高亮二极管是一种把电能转变成光能的半导体器件。它的原理和光敏二极管相似,也是产生光电效应。只不过原理正好相反,当有电流导体内部产生光电流,照射在PN结上,在内部产生光电流,它具有体积小、功耗低、寿命长、响应快、机械强度高等优点,并能和集成电路相匹配。因此,广泛地用于计算机、仪器仪表和自动控制设备中。由光通量对光电元件的作用原理不同所制成的光学测控系统是多种多样的,按光电元件(光学测控系统)输出量性质可分二类,即模拟式光电传感器和脉冲(开关)式光电传感器。模拟式光电传感器是将被测量转换成连续变化的光电流,它与被测量间呈单值关系。而我设计的液位传感器的主要组成光敏三级管就是属于模拟式光电传感器。通过吸收高亮二极管的光来测量液位的高度,在转化成光电流传到模拟传感器ADC0809中。a光敏三极管的结构示意图b基本电路当光敏三极管按图2—8的形式进行电路连接时,它的集电结反向偏置,发射结正向偏置。无光照时仅有很小的穿透电流流过,当光线通过透明窗口照射集电结时,和光敏二极管的情况相似,将使流过集电结的反向电流增大,这就造成基区中正电荷的空穴的积累,发射区中的多数载流子(电子)将大量注人基区,由于基区很薄,只有一小部分从发射区注入的电子与基区的空穴复合,而大部分电子将穿过基区流向与电源正极相接的集电极,形成集电极电流IC。这个过程与普通三极管的电流放大作用相似,它使集电极电流IC是原始光电流的(l+β)倍。这样集电极电流IC将随入射光照度的改变而更加明显地变化。光电传感器通常由光源、光学通路和光电元件三部分组成,如下图光电传感器框图:图2-10光电传感器框图光电传感器通常由光源、光学通路和光电元件三部分组成,如图2-12所示。图中,Ф1是光源发出的光信号,Ф2是光电器件接受的光信号,被测量可以是x1或者x2,它们能够分别造成光源本身或光学通路的变化,从而影响传感器输出的电信号I。光电传感器设计灵活,形式多样,在越来越多的领域内得到广泛的应用。水位检测是通过四对高亮二极管和光敏三极管分别安装在四个不同的位置,由上至下四个输出端口分别接单片机的P1.0、P1.1、P1.2、P1.3口,实时对水位进行检测。当水位到达某一光敏三极管的位置时,其输出端口就向单片机输出高电平;当水位低于此光敏三极管的位置时,其输出端口就向单片机输出低电平。由上至下的第一个位置为水位上限报警线,即当水位高于此位置时,开水房控制系统就会自动报警,提醒工作人员注意,加水电磁阀有可能出故障;第二个位置是自动停止加水线,即当水位高于此位置时,控制系统会自动关闭加水电磁阀,停止加水;第三个位置是自动加水线,即当水位低于此位置时,控制系统会自动接通加水电磁阀,开水加水;第四个位置是水位下限报警线,即当水位低于此位置时,开水房控制系统就会自动报警,提醒工作人员注意,加水电磁阀可能出故障。2.3光电式传感器的基本特性1)光谱特性在入射光照度一定时,光敏晶体管的相对灵敏度随光波波长的变化而变化,一种光敏晶体管只对一定波长范围的人射光敏感,这就是光敏晶体管的光谱特性,见图2-11。由曲线可以看出,当入射光波长增加时,相对灵敏度要下降,这是因为光子能量太小,不足以激发电子—空穴对。当人射光波长太短时,光波穿透能力下降,光子只在半导体表面附近激发电子—空穴对,却不能达到PN结,因此相对灵敏度也下降。从曲线还可以看出,不同材料的光敏晶体管,光谱峰值波长不同。硅管的峰值波长为0.9μm左右,锗管的峰值波长为1.5μm左右。由于锗管的暗电流比硅管大,因此锗管性能较差。因此在探测可见光或赤热物体时,多采用硅管。但对红外光进行探测时,采用锗管较为合适。2)伏安特性光敏三极管在不同照度下的伏安特性,就象普通三极管在不同基极电流下的输出特性一样,如图2-11所示。在这里改变光照就相当于改变一般三极管的基极电流,从而得到这样一簇曲线。3)光电特性它指外加偏置电压一定时,光敏晶体管的输出电流和光照度的关系。一般说来,光敏二极管光电特性的线性较好,而光敏三极管在照度小时,光电流随照度增加较小,并且在光照足够大时,输出电流有饱和现象。这是由于光敏三极管的电流放大倍数在小电流和大电流时都下降的缘故。4)温度特性温度的变化对光敏晶体管的亮电流影响较小,但是对暗电流的影响却十分显著,如图所示。因此,光敏晶体管在高照度下工作时,由于亮电流比暗电流大得多,温度的影响相对来说比较小。但在低照度下工作时,因为亮电流较小,暗电流随温度变化就会严重影响输出信号的温度稳定性。在这种情况下,应当选用硅光敏管,这是因为硅管的暗电流要比锗管小几个数量级。同时还可以在电路中采取适当的温度补偿措施,或者将光信号进行调制,对输出的电信号采用交流放大,利用电路中隔直电容的作用,就可以隔断暗电流,消除温度的影响。5)频率特性光敏晶体管受调制光照射时,相对灵敏度与调制频率的关系称为频率特性。如图2-12所示。减少负载电阻能提高响应频率,但输出降低。一般来说,光敏三极管的频响比光敏二极管差得多,锗光敏三极管的频响比硅管小一个数量级。图2-11光敏晶体管的光谱特性图2-12光敏三极管的伏安特性光电传感器的敏感范围远远超过了电感、电容、磁力、超声波传感器的敏感范围。此外,光电传感器的体积很小,而敏感范围很宽,加上机壳有很多样式,几乎可以到处使用。最后,随着技术的不断发展,光电传感器在价钱方面可以同用其他技术制造的传感器竞争。2.4ADC0809A/D转换器A/D是把模拟信号转换成数字信号,把由传感器传来的液位控制的模拟信号转换成数字信号,然后再通过8051单片机的分析处理进行LED显示和液位和压力的报警。2.4D/A转换接口技术是应用系统后向通道典型应用技术之一。它涉及了D/A转换芯片的选择参考电压源的配置、数字输入码与模拟输出电压的极性等问题,而其中最核心的问题是D/A转换芯片的选择与应用问题。D/A转换器的基本功能是将一个用二进制表示的数字量转换成相应的模拟量。实现这种转换的基本方法是对应于二进制的每一位,产生一个相应的电流,而这个电流的大小正比于相应的二进制位的权。D/A转换器主要由三部分构成,即加权电阻解码网、受输入数字量控制的电子开关组和由运算放大器构成的电流转换器。电子开关组受输入二进制数据D7~DO控制,当某一位为“1”时,则电子开关闭合,基准电压Vin接电阻解码网络,使某一支路电阻上有电流流过。当某一位为“0”时,则电子开关断开,该支路电阻上无电流流过。加权电阻解码网络各支路的电阻值与二进制数据D7~DO的“权”相对应,“权”大的电阻值小,“权”小的电阻值大。因此各支路的电流不仅决定于输入数字量的值(0或1),还决定于“权”,各支路的电流如下:

因此,总电流为Iout:该总电流经电流转换器后有:其中由式(2-6)看出,尽管使用的网络结构不同,但对于D/A转换器的输入输出来说是等效的。就8位D/A转换器而言,每一数字输入位所代表的输出模拟量是其相邻的2倍,这样就组成二进制数字量到模拟量的转换器。D/A转换芯片的主要性能指标如下:1)分辨率。表征D/A转换器对微小输入量的敏感程度,通常用数字量的数位表示,如8位、12位、14位等。分辨率为10位的D/A转换器,表示它可以对满量程的1/1024的增量做出反应。2)相对精度。在满刻度已校准的前提下,在整个刻度范围内,对于任一数码的模拟量输出与它的理论值之差。通常用偏差几个ISB来表示和该偏差相对满刻度的百分比表示。3)转换时间。数字变化量是满刻度时,达到终值±LSB/2所需要的时间,通常为几十纳秒至几微秒。4)非线性误差。通常给出在一定温度下的最大非线性度,一般为0.l%~0.03%。其工作过程是:比较开始时,首先对二进制计数器(输出锁存器)的最高位置“1”,然后进行转换、比较判断。若模拟输入Uin大于Ui,比较器输出为1,则使输出锁存器的最高位保持为1。然后对较低的位依次按照该办法进行比较和调整,无论哪种情况,均应继续比较下一位,直到最末位为止。此时D/A转换器的数字输入(输出锁存器内容)即为对应模拟输入信号的数字量。将此数字量输出就完成了A/D转换过程。这种方法好比用天平称一个物体的重量,第一次放最大的砝码,若不合适,就改放小一号的,依次类推。一旦天平指示砝码太重说明刚才放进去的那个应当取走,显然对于n位的转换器,总共需要重复这种过程n次。2.4本开发系统的A/D转换实验硬件主要是由ADC0809转换芯片和四个可变电位器组成的。ADC0809是8位8通路逐次逼近式A/D转换器,输入电压在(O~5)V,最大不可调误差小±1LSB,它具有高速、高精度、温度依赖度低以及在长期工作条件下能耗小、重复性好等优点。ADC0809芯片的引脚图如图2-6所示。由图2-6可看芯片主要是由一个8位A/D转换器、8路模拟输入选通开关、地址锁存及译码电路工作和三态数据输出锁存器组成。为实现8路模拟通道能有条不紊地工作,首先通过地址译码锁存器选通所要开通的8路模拟通道中的一路开关,将模拟信号送入A/D转换器中实现A/D的转换,转换后的数据放到三态数据锁存器中等待CPU来取,取后由CPU启动新一次的地址译码,重复以上完成新一次的A/D转换。ADC0809芯片提供了高转换速度、高精密度、环境影响小和低功耗等优点,被广泛应用于各种控制领域。下图为ADC0809芯片的引脚图。图2-6ADC0809芯片的引图ADC0809是带有8位A/D转换器、8路多路开关以及与微型计算机兼容的控制逻辑的CMOS组件,其转换方法为逐次逼近型。在A/D转换器内部含有一个高阻抗斩波稳定比较器,一个带有模拟开关树组的256电阻分压器,以及一个逐次逼近型寄存器。8路的模拟开关由地址锁存器和译码器控制,可以在8个通道中任意访问一个通道的模拟信号。由于多路开关的地址输入部分能够进行锁存和译码,而且三态TTL输出也可以锁存,所以它易于与微型计算机接口。2.5键盘及显示接口显示部分我采用三位7段LED显示器,LED显示器是单片机应用中最常用的输出部件,它是由若干发光二极管组成,当发光二极管导通时,相应的一个点或一个笔画发光,不同组合的二极管导通,就能显示出各种字符。用LED是因为它具有显示清晰、亮度高、使用电压低、光电转换效能高、寿命长的特点。LED(发光二极管)最早出现在19世纪60年代,现在我们可以经常在电气和电子设备上看到这些二极管作为指示灯来用。LED就是一种半导体元件,其电气性能与普通二极管相同,不同之处在于当给LED通电流时,它会发光。由于LED是固态的,所以它能延长传感器的使用寿命。因而使用LED的光电传感器能被做得更小,且比白炽灯传感器更可靠。不像白炽灯那样,LED抗震动抗冲击,并且没有灯丝。另外,LED所发出的光能只相当于同尺寸白炽灯所产生光能的一部分。在微型机系统中,LED常用的显示方法有两种。一种是静态显示,一种是动态显示。所谓的静态显示是由单片机一次输出后就能显示后就能保持,直到下次送新的显示模式为止。这种显示占用机少,显示可靠;缺点是使用元件多,且线路比较复杂,因而成本比较高。这种显示器显示方式的每一个七位显示器需要一个八位输出控制,我的设计就是采用的就是静态显示。所谓动态显示就是单片机定时的对显示器进行扫描。这种方法中,显示器件分时工作,每次只能有一个器件显示,但由于人的视觉暂留现象,所以,仍感觉到所有的器件都“同时”显示。这种显示方法的优点是使用硬件少,因而价格低,但占用机时多,只要单片机不执行显示程序,就立刻停止显示。动态显示的亮度与导电电流有关,也与点亮时间和间隔时间比例有关。键盘是有若干按键组成的开关矩阵,它是最简单的单片机输入设备,通过键盘输入数据或命令,来实现简单的人机对话。键盘可分为非编码键盘和编码键盘两种。非编码键盘有并行接口扫描和串联接口扫描,我采用的是串行接口,它的组成是由移位寄存器74LS164和六个键组成,74LS164是一个14位脚的寄存器,集成电路芯片,由8051串行接口的TXD端输出列扫描信号到74LS164的1、2引脚,键闭合信号则用端口P3.3、P3.4、P3.5输入8051单片机,由8051单片机的TXD引脚输出移位时钟脉冲到74LS164的时针输入端(CLK)。还有非前者用软件来识别和产生代码,后者则用键盘来识别,键盘处理程序实现对键盘的管理,显示具体见下图。图2-7LED显示器2.6自动报警电路下列二种情况发生系统报警。1)当水位达到上限极限水位时报警,水位到达上限极限水位时系统发出报警;2)当水位达到下限极限水位时报警,水位到达下限极限水位时系统发出报警图2-8自动报警电路的接线图3系统软件的设计该系统硬件系统完全,但系统的运算与控制必须靠软件支持,系统硬件组态完后,根据I/O地址分配和功能要求便可以进行软件编程。软件编程是系统完成控制的一个重要部分。系统软件程序主要完成初始化工作,输入输出控制,子程序主要完成数据采集处理的功能包括采集的液位数据与给定的液位值的比较,是否需要报警,以及处理完成显示部分与调节阀的信号输出。在该系统的软件部分的设计中,第一部分主要是对流程图的介绍,其中包括了对水位的检测,对补水泵的控制开和关,以及补水泵是否正常工作的报警。通过对水体液位进行的简易方便的操纵,可以准确得控制水泵进行添加水或放水以适应工作的需要,并可防止故障的发生;第二部分是系统工作程序的编程内容,由于全部编程部分较多,只取最重要的水位检测主程序段。本程序段主要实现启动ADC0809转换器,并从A/D转换器采集信号的功能。3.1软件设计流程图本软件流程图设计简易合理,方便易于操控,能够针对水位的不同状态和不同外界条件进行控制,水位运行稳定、控制品质良好、控制效果明显改善;同时大大提高了控制系统的抗干扰能力,保证了工业水体液位方面作业的稳定运行。下图即为软件设计流程图补水泵1有故障吗?补水泵1有故障吗?水位下限水位吗?开启补水泵1进行补水水位检测YNN补水泵2工作Y开始返回检测水位为上限水位吗?补水泵1停止补水YN检测水位为上限水位吗?补水泵2停止补水YN故障报警图4-1软件设计流程图3.2水位检测的主程序本控制系统采用的是控制,由于模糊控制量的求取是采用查表法,因此软件程序较简单,整个软件部分较多,现取最重要的水位检测主程序。这是程序运行的主要程序段,主要实现启动ADC0809转换器,并从A/D转换器采集信号,SHUICPM:MOVA,P1ANLA,#0FHMOV30H,#0FH;00001111CJNEA,30H,AAA1SETBP2.0SETB20H.1;setb水位状态标志位AJMPOUT2AAA1:MOV30H,#0EH;00001110CJNEA,30H,AAA2SETBP2.0CLR20H.1AJMPOUT2AAA2:MOV30H,#0CH;00001100CJNEA,30H,AAA3CLR20H.1CLRp2.0AJMPOUT2AAA3:MOV30H,#08H;00001000CJNEA,30H,AAA4CLRP2.0CLR20H.1AJMPOUT2AAA4:MOV30H,#00H;00000000CJNEA,30H,AAA5setbP2.0SETB20H.1AJMPOUT2AAA5:SETB20H.2RETOUT2:CLR20H.2RETBAOJING:JB20H.3,OUT6MOVA,20HMOV30H,#00HCJNEA,30H,OUT5AJMPOUT6OUT5:SETBP3.6JB20H.4,OUT9SETBP0.1OUT10:JB20H.2,OUT11SETBP0.2OUT12:JB20H.1,OUT13SETBP0.3OUT14:JB20H.0,OUT15SETBP0.4OUT16:RETOUT6:CLRP3.6RETOUT9:CLRP0.1AJMPOUT10OUT11:CLRP0.2AJMPOUT12OUT13:CLRP0.3AJMPOUT14OUT15:CLRP0.4AJMPOUT164结论本系统主要介绍了水体的液位检测控制,介绍了8051单片机和其它一些单片机在液位控制系统中的应用,介绍了它们的引脚和在系统中的电路图,本设计还采用了多种传感器来对液位的信号采集,利用LED来进行信号的输出显示,我设计的硬件系统的结构简化,系统精度高,具有良好的人机交互功能,并设有液位报警和阀门失灵等故障报警,有问题立即就能发现。通过自动调节控制液位并实现水体的液位报警。液位控制在设定值上正常运行不需要人工干预,操作人员劳动强度小。采用单片机设计出的工业水位控制器,能够针对水位的不同状态和不同外界条件进行控制,水位运行稳定、控制品质良好、控制效果明显改善;同时大大提高了控制系统的抗干扰能力,保证了工业水体液位方面作业的稳定运行。控制装置具有成本低、抗干扰能力强、控制性能好等优点,且系统硬、软件维护简单方便,尤其适用于工业控制现场,具有良好的应用前景。本系统所采用的传感器性能稳定,测量准确,大大简化现场安装,具有较高的性价比,有较大的工程应用价值,而且利用计算机单片机技术对工业生产过程进行自动控制有着重要的意义。其优越性主要在于:首先,通过对水体液位进行的简易方便的操纵,可以准确得控制水泵进行添加水或放水以适应工作的需要,可以产生巨大的经济效益。其次,水体控制过程的自动化处理以及监控软件良好的人机界面,操作人员在监控计算机上能根据控制效果及时修运行参数,这样能有效地减少工人的疲劳和失误,提高生产过程的实时性、安全性。随着计算机控制技术应用的普及、可靠性的提高及价格的下降,工业以及其他方面的微机控制必将得到更加广泛的应用。致谢在此毕业课题设计完成之际,向为此毕业设计倾注了大量心血田老师和同班级的同学表示深深地敬意和谢意。指导老师田艳兵在此课题的研究方向、收集资料、设计过程中倾注了悉心的指导和尽心所能的帮助,他的那严谨的治学态度和宽广的胸怀使我受益匪浅,在此特表示诚挚地感谢。在同班级的同学帮我一同研究课题,查阅资料,给我提出很多宝贵意见,在遇到难题灰心的时候给我了很到的鼓励,在此也为我们一起学习的同学表示诚挚地感谢。在本课题的研究过程中,也得到了院系的大力支持和同学的大力指导与热情帮助,院系开放单片机实验室,通过网络收集各方面的前沿信息,给我们创造一个良好的学习、设计环境。在此向实验室的各位老师表示由衷的谢意。最后,再次向所有关心和帮助我的老师、同学表达真诚的谢意。参考文献[1]王文琦.工业锅炉的检测与控制技术[M].成都:四川科学技术出版社,1986.[2]王骥程.化工过程控制工程[M].北京:化学工业出版社,1981.[3]王文琦.工业锅炉的检测与控制技术〔M〕.成都:四川科学技术出版社,1986.[4]王骥程.化工过程控制工程〔M〕.北京:化学工业出版社,1981.[5]谢自美.电子线路设计、实验与测试[M].华中科技大学出版社,2003.[6]杨国志,王立峰,杨东光,王辉林等.实用电子制作实例[M].福建科学技术出版社,2000.[7]金伟正.单线数字温度传感器的原理及用[M].电子工业出版社,2000.[8]王永平,陈建华.基于S7—200PLC的高性能电热锅炉控制系统[J].仪表技术与传感器,2002.[9]潘新民,王艳芳微.型计算机控制技术[M].高等教育出版社,2002.[10]谈振藩.自动控制专业英语[M].哈尔滨工程大学出版社,1999.[11]杨智,明丽萍.21世纪燃气锅炉在中国的发展前景[J].自动化学报,2001.[12]袁希光等.传感器技术手册[M].北京国防工业出版社,1986.[13]张洪润,张亚凡.传感技术与应用教程[M].清华大学出版社,2005.[14]李光飞,楼然苗.单片机课程设计实例指导[M].北京航空航天大学出版社,2004.[15]李明,徐向东.用容错技术提高锅炉控制系统的可靠性[J].清华大学学报,1999.[16]吴春旺.锅炉汽包水位调节控制系统设计[A].北京:机械工业出版社,2006.[17]何立民.MCS-51系列单片机应用系统设计系统配置与接口技术[M].北京:北京航空航天大学出版社,2001.[18]周航慈.单片机应用程序设计技术[M].北京:北京航空航天大学出版社,1991.[19]钱新贤,杨猛,VisualC++编程疑难详解,北京:人们邮电出版社,2000。[20]方崇智,萧德云,过程辨识,北京:清华大学出版社,1988。[21]史令,李建平,软件技术基础使用教程,北京:人民邮电出版1998。河南工业职业技术学院课程设计温度监测与控制系统系别:机电工程系专业名称:机电一体化学生姓名:张奇美学号:0202180432指导教师姓名:田林红完成日期2021年3月30日温度监测与控制系统摘要温度是日常生活中无时不在的物理量,温度的控制在各个领域都有积极的意义。很多行业中都有大量的用电加热设备,如用于热处理的加热炉,用于融化金属的坩锅电阻炉及各种不同用途的温度箱等,采用单片机对它们进行控制不仅具有控制方便、简单、灵活性大等特点,而且还可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量。因此,智能化温度控制技术正被广泛地采用。本温度设计采用现在流行的AT89S51单片机,配以DS18B20数字温度传感器,该温度传感器可自行设置温度上下限。单片机将检测到的温度信号与输入的温度上、下限进行比较,由此作出判断是否启动继电器以开启设备。本设计还加入了常用的数码管显示及状态灯显示灯常用电路,使得整个设计更加完整,更加灵活。目录1前言 11.2温度控制系统的目的 11.3温度控制系统完成的功能 12总体设计方案 22.1方案一 22.2方案二 23DS18B20温度传感器简介 73.1DS18B20的工作原理 73.2DS18B20工作时序 73.2ROM操作命令 93.2DS18B20的测温原理 93.2.1DS18B20的测温原理: 93.2.2DS18B20的测温流程 114单片机接口设计 124.1设计原则 124.2引脚连接 12晶振电路 12串口引脚 12其它引脚 135系统整体设计 145.1系统硬件电路设计 14主板电路设计 14各部分电路 145.2系统软件设计 16系统软件设计整体思路 16系统程序流图 175.3调试 21附录 24参考文献 311前言1.1温度控制系统设计的背景、发展历史及意义随着社会的发展,科技的进步,以及测温仪器在各个领域的应用,智能化已是现代温度控制系统发展的主流方向。特别是近年来,温度控制系统已应用到人们生活的各个方面,但温度控制一直是一个未开发的领域,却又是与人们息息相关的一个实际问题。针对这种实际情况,设计一个温度控制系统,具有广泛的应用前景与实际意义。温度是科学技术中最基本的物理量之一,物理、化学、生物等学科都离不开温度。在工业生产和实验研究中,像电力、化工、石油、冶金、航空航天、机械制造、粮食存储、酒类生产等领域内,温度常常是表征对象和过程状态的最重要的参数之一。比如,发电厂锅炉的温度必须控制在一定的范围之内;许多化学反应的工艺过程必须在适当的温度下才能正常进行;炼油过程中,原油必须在不同的温度和压力条件下进行分馏才能得到汽油、柴油、煤油等产品。没有合适的温度环境,许多电子设备就不能正常工作,粮仓的储粮就会变质霉烂,酒类的品质就没有保障。因此,各行各业对温度控制的要求都越来越高。可见,温度的测量和控制是非常重要的。单片机在电子产品中的应用已经越来越广泛,在很多的电子产品中也用到了温度检测和温度控制。随着温度控制器应用范围的日益广泛和多样,各种适用于不同场合的智能温度控制器应运而生。1.2温度控制系统的目的本设计的内容是温度测试控制系统,控制对象是温度。温度控制在日常生活及工业领域应用相当广泛,比如温室、水池、发酵缸、电源等场所的温度控制。而以往温度控制是由人工完成的而且不够重视,其实在很多场所温度都需要监控以防止发生意外。针对此问题,本系统设计的目的是实现一种可连续高精度调温的温度控制系统,它应用广泛,功能强大,小巧美观,便于携带,是一款既实用又廉价的控制系统。1.3温度控制系统完成的功能本设计是对温度进行48点实时监测并对其进行控制,设计的温度控制系统实现了基本的温度控制功能:当温度低于设定下限0℃温度时,系统自动启动加热继电器加温,使温度上升,同时绿灯亮。当温度上升到下限0℃温度以上时,停止加温;当温度高于设定上限50℃温度时,系统自动启动风扇降温,使温度下降,同时红灯亮。当温度下降到上限温度以下时,停止降温。温度在上下限温度之间时,执行机构不执行,从而实现将温度控制在0℃~50℃。三个数码管即时显示温度,精确到小数点一位。2总体设计方案2.1方案一测温电路的设计,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温电路比较麻烦。2.2方案二考虑使用温度传感器,结合单片机电路设计,采用一只DS18B20温度传感器,直接读取被测温度值,之后进行转换,依次完成设计要求。比较以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计容易实现,故实际设计中拟采用方案二。在本系统的电路设计方框图如图1.1所示,它由三部分组成:①控制部分主芯片采用单片机AT89S51;②显示部分采用3位LED数码管以动态扫描方式实现温度显示;③温度采集部分采用DS18B20温度传感器。加热继电器电风扇继电器加热继电器电风扇继电器单片机DS18B20LED显示指示灯图2-1温度计电路总体设计方案控制部分单片机AT89S51具有低电压供电和体积小等特点,四个端口只需要两个口就能满足电路系统的设计需要,很适合便携手持式产品的设计使用,系统应用三节电池供电。2.显示部分显示电路采用3位共阳LED数码管,从P0口送数,P2口扫描。3.温度采集部分DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温。这一部分主要完成对温度信号的采集和转换工作,由DS18B20数字温度传感器及其与单片机的接口部分组成。数字温度传感器DS18B20把采集到的温度通过数据引脚传到单片机的P1.0口,单片机接受温度并存储。将48个DS18B20传感器并联在惟一的三线上,并通过一线总线方式将测量信号通过时序控制送入单片机,即可实现48点温度监测,为下一步的显示工作提供条件。图2-2多路温度传感器采集模块此部分只用到DS18B20和单片机,硬件很简单。1)DS18B20的性能特点如下[9]:1)独特的单线接口仅需要一个端口引脚进行通信;2)多个DS18B20可以并联在惟一的三线上,实现多点组网功能;3)无须外部器件;4)可通过数据线供电,电压范围为3.0~5.5V;5)零待机功耗;6)温度以3位数字显示;7)用户可定义报警设置;8)报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;9)负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。(2)DS18B20的内部结构DS18B20采用3脚PR-35封装,如图1.2所示;DS18B20的内部结构,如图3所示。图2-3DS18B20封装(3)DS18B20内部结构主要由四部分组成[5]:1)64位光刻ROM。开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前56位的CRC校验码,这也是多个DS18B20可以采用一线进行通信的原因[10]。64位闪速ROM的结构如下.表2-1ROM结构8b检验CRC48b序列号8b工厂代码(10H)MSBLSBMSBLSBMSBLSB图2-4DS18B20内部结构2)非挥发的温度报警触发器TH和TL,可通过软件写入用户报警上下限值。3)高速暂存存储,可以设置DS18B20温度转换的精度。DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的E2PRAM。高速暂存RAM的结构为8字节的存储器,结构如图1.3所示。头2个字节包含测得的温度信息,第3和第4字节TH和TL的拷贝,是易失的,每次上电复位时被刷新。第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值。它的内部存储器结构和字节定义如图1.3所示。低5位一直为1,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式。表2-2DS18B20内部存储器结构Byte0温度测量值LSB(50H)Byte1温度测量值MSB(50H)E2PROMByte2TH高温寄存器TH高温寄存器Byte3TL低温寄存器TL低温寄存器Byte4配位寄存器配位寄存器Byte5预留(FFH)Byte6预留(0CH)Byte7预留(IOH)Byte8循环冗余码校验(CRC)DS18B20出厂时该位被设置为0,用户要去改动,R1和R0决定温度转换的精度位数,来设置分辨率,如图1.4。图2-3DS18B20字节定义TMR1R011111由表1.1可见,分辨率越高,所需要的温度数据转换时间越长。因此,在实际应用中要将分辨率和转换时间权衡考虑。高速暂存RAM的第6、7、8字节保留未用,表现为全逻辑1。第9字节读出前面所有8字节的CRC码,可用来检验数据,从而保证通信数据的正确性。当DS18B20接收到温度转换命令后,开始启动转换。转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1、2字节。单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以0.0625℃当符号位S=0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位S=1时,表示测得的温度值为负值,要先将补码变成原码,再计算十进制数值。表1.2是一部分温度值对应的二进制温度数据[6]。表2-4DS18B20温度转换时间表R1R0分辨率/位温度最大转向时间/ms00993.750110187.510113751112750表2-5一部分温度对应值表温度/℃二进制表示十六进制表示+125000001111101000007D0H+8500000101010100000550H+25.062500000001100100000191H+10.125000000001010000100A2H+0.500000000000000100008H000000000000010000000H-0.51111111111110000FFF8H续表2-5-10.1251111111101011110FF5EH-25.06251111111001101111FE6FH-551111110010010000FC90H4)CRC的产生

在64bROM的最高有效字节中存储有循环冗余校验码(CRC)。主机根据ROM的前56位来计算CRC值,并和存入DS18B20中的CRC值做比较,以判断主机收到的ROM数据是否正确。另外,由于DS18B20单线通信功能是分时完成的,它有严格的时隙概念,因此读写时序很重要。系统对DS18B20的各种操作按协议进行。操作协议为:初使化DS18B20(发复位脉冲)→发ROM功能命令→发存储器操作命令→处理数据。3DS18B20温度传感器简介3.1温度传感器的历史及简介温度的测量是从金属(物质)的热胀冷缩开始。水银温度计至今仍是各种温度测量的计量标准。可是它的缺点是只能近距离观测,而且水银有毒,玻璃管易碎。代替水银的有酒精温度计和金属簧片温度计,它们虽然没有毒性,但测量精度很低,只能作为一个概略指示。不过在居民住宅中使用已可满足要求。在工业生产和实验研究中为了配合远传仪表指示,出现了许多不同的温度检测方法,常用的有电阻式、热电偶式、PN结型谐振型等。它们都是基于温度变化引起其物理参数(如电阻值,热电势等)的变化的原理。随着大规模集成电路工艺的提高,出现了多种集成的数字化温度传感器。3.2DS18B20的工作原理3.2.1DS18B20工作时序根据DS18B20的通讯协议,主机控制DS18B20完成温度转换必须经过三个步骤:1.每一次读写之前都必须要对DS18B20进行复位;2.复位成功后发送一条ROM指令;3.最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待15~60微秒左右后发出60~240微秒的存在低脉冲,主CPU收到此信号表示复位成功。其工作时序包括初始化时序、写时序和读时序,具体工作方法如图2.1,2.2,2.3所示。(1)初始化时序图3-1初始化时序总线上的所有传输过程都是以初始化开始的,主机响应应答脉冲。应答脉冲使主机知道,总线上有从机设备,且准备就绪。主机输出低电平,保持低电平时间至少480us,以产生复位脉冲。接着主机释放总线,4.7KΩ上拉电阻将总线拉高,延时15~60us,并进入接受模式,以产生低电平应答脉冲,若为低电平,再延时480us[12]。(2)写时序图3-2写时序写时序包括写0时序和写1时序。所有写时序至少需要60us,且在2次独立的写时序之间至少需要1us的恢复时间,都是以总线拉低开始。写1时序,主机输出低电平,延时2us,然后释放总线,延时60us。写0时序,主机输出低电平,延时60us,然后释放总线,延时2us[8]。(3)读时序图3-3读时序总线器件仅在主机发出读时序是,才向主机传输数据,所以,在主机发出读数据命令后,必须马上产生读时序,以便从机能够传输数据。所有读时序至少需要60us,且在2次独立的读时序之间至少需要1us的恢复时间。每个读时序都由主机发起,至少拉低总线1us。主机在读时序期间必须释放总线,并且在时序起始后的15us之内采样总线状态。主机输出低电平延时2us,然后主机转入输入模式延时12us,然后读取总线当前电平,然后延时50us[4]3.2.2当主机收到DSl8B20的响应信号后,便可以发出ROM操作命令之一,这些命令如表2.2:ROM操作命令。3.3DS18B20的测温原理3.3.1DS18B20的测温原理:每一片DSl8B20在其ROM中都存有其唯一的48位序列号,在出厂前已写入片内ROM中。主机在进入操作程序前必须用读ROM(33H)命令将该DSl8B20的序列号读出。程序可以先跳过ROM,启动所有DSl8B20进行温度变换,之后通过匹配ROM,再逐一地读回每个DSl8B20的温度数据。DS18B20的测温原理如图2.4所示,图中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55℃所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55℃所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图2.3中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值.表3-1ROM操作命令指令约定代码功能读ROM33H读DS18B20ROM中的编码符合ROM55H发出此命令之后,接着发出64位ROM编码,访问单线总线上与该编码相对应的DS18B20使之作出响应,为下一步对该DS18B20的读写作准备搜索ROM0F0H用于确定挂接在同一总线上DS18B20的个数和识别64位ROM地址,为操作各器件作好准备跳过ROM0CCH忽略64位ROM地址,直接向DS18B20发温度变换命令,适用于单片工作。续表3-1告警搜索命令0ECH执行后,只有温度超过设定值上限或者下限的片子才做出响应温度变换44H启动DS18B20进行温度转换,转换时间最长为500MS,结果存入内部9字节RAM中读暂存器0BEH读内部RAM中9字节的内容写暂存器4EH发出向内部RAM的第3,4字节写上、下限温度数据命令,紧跟读命令之后,是传送两字节的数据复制暂存器48H将E2PRAM中第3,4字节内容复制到E2PRAM中重调E2PRAM0BBH将E2PRAM中内容恢复到RAM中的第3,4字节读供电方式0B4H读DS18B20的供电模式,寄生供电时DS18B20发送“0”,外接电源供电DS18B20发送“1”

另外,由于DS18B20单线通信功能是分时完成的,他有严格的时隙概念,因此读写时序很重要。系统对DS18B20的各种操作必须按协议进行。操作协议为:初始化DS18B20(发复位脉冲)→发ROM功能命令→发存储器操作命令→处理数据。减法计数器减法计数器斜坡累加器减到0减法计数器预置低温度系数振荡器高温度系数振荡器计数比较器预置温度寄存器减到0图3-4测温原理内部装置3.3.2DS18B20的测温流程初始化初始化DS18B20跳过ROM匹配温度变换延时1S跳过ROM匹配读暂存器转换成显示码数码管显示图3-5DS18B20测温流程.4单片机接口设计4.1设计原则DS18B20可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。另一种是寄生电源供电方式,如图3.1所示单片机端口接单线总线,为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个MOSFET管来完成对总线的上拉。本设计采用电源供电方式,P1.1口接单线总线为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个MOSFET管和89S51的P1.0来完成对总线的上拉。当DS18B20处于写存储器操作和温度A/D变换操作时,总线上必须有强的上拉,上拉开启时间最大为10μs。采用寄生电源供电方式是VDD和GND端均接地。由于单线制只有一根线,因此发送接收口必须是三状态的。主机控制DS18B20完成温度转换必须经过3个步骤:初始化;ROM操作指令;存储器操作指令。4.2引脚连接4.2.1晶振电路单片机XIAL1和XIAL2分别接30PF的电容,中间再并个12MHZ的晶振,形成单片机的晶振电路。4.2.2串口引脚。18B20单片机18B20单片机P1.0P1.0VCCVCCGND图4-1DS18B20与单片机的接口电路P2口中P2.0、P2.1、P2.2、P2.3分别接到显示电路的4.7K电阻上,P2.5接蜂鸣器电路,其他引脚悬空P3口中P3.5、P3.6、P3.7接到按键电路4.2.3其它引脚ALE引脚悬空,复位引脚接到复位电路、VCC接电源、VSS接地、EA接电源5系统整体设计5.1系统硬件电路设计5.1.1主板电路设计单片机的P1.0接DS18B20的2号引脚,P0口送数P2口扫描,P1.1、P1.2控制加热器和电风扇的继电器。如附录2。5.1.2各部分电路(1)显示电路显示电路采用了7段共阴数码管扫描电路,节约了单片机的输出端口,便于程序的编写。图5-1显示电路图(2)单片机电路图5-2单片机电路引脚图(3)DS18B20温度传感器电路图5-3温度传感器电路引脚图(4)继电器电路图中P1.1引脚控制加热器继电器.图5-4继电器电路图(5)晶振控制电路图5-5晶振控制电路图(6)复位电路图5-6复位电路图5.2系统软件设计5.2.1系统软件设计整体思路一个应用系统要完成各项功能,首先必须有较完善的硬件作保证。同时还必须得到相应设计合理的软件的支持,尤其是微机应用高速发展的今天,许多由硬件完成的工作,都可通过软件编程而代替。甚至有些必须采用很复杂的硬件电路才能完成的工作,用软件编程有时会变得很简单,如数字滤波,信号处理等。因此充分利用其内部丰富的硬件资源和软件资源,采用与S51系列单片机相对应的51汇编语言和结构化程序设计方法进行软件编程。程序设计语言有三种:机器语言、汇编语言和高级语言。机器语言是机器唯一能“懂”的语言,用汇编语言或高级语言编写的程序(称为源程序)最终都必须翻译成机器语言的程序(成为目标程序),计算机才能“看懂”,然后逐一执行。高级语言是面向问题和计算过程的语言,它可通过于各种不同的计算机,用户编程时不必仔细了解所用的计算机的具体性能与指令系统,而且语句的功能强,常常一个语句已相当于很多条计算机指令,于是用高级语言编制程序的速度比较快,也便于学习和交流,但是本系统却选用了汇编语言。原因在于,本系统是编制程序工作量不大、规模较小的单片机微控制系统,使用汇编语言可以不用像高级语言那样占用较多的存储空间,适合于存储容量较小的系统。同时,本系统对位处理要求很高,需要解决大量的逻辑控制问题。MCS—51指令系统的指令长度较短,它在存储空间和执行时间方面具有较高的效率,编成的程序占用内存单元少,执行也非常的快捷,与本系统的应用要求很适合。而且MCS—51指令系统有丰富的位操作(或称位处理)指令,可以形成一个相当完整的位操作指令子集,这是MCS—51指令系统主要的优点之一。对于要求反应灵敏与控制及时的工控、检测等实时控制系统以及要求体积小、系统小的许多“电脑化”产品,可以充分体现出汇编语言简明、整齐、执行时间短和易于使用的特点。本装置的软件包括主程序、读出温度子程序、复位应答子程序、写入子程序、以及有关DS18B20的程序(初始化子程序、写程序和读程序)5.2.2系统程序流图系统程序主要包括主程序,读出温度子程序,复位应答子程序,写入子程序等。1)主程序主程序的主要功能是负责温度的实时显示、读出并处理DS18B20的测量的当前温度值,温度测量每1s进行一次。这样可以在一秒之内测量一次被测温度,其程序流程见图19所示。通过调用读温度子程序把存入内存储中的整数部分与小数部分分开存放在不同的两个单元中,然后通过调用显示子程序显示出来图5-7主程序流程图DS18B20复位、应答子程序DS18B20复位、应答子程序跳过ROM匹配命令跳过ROM匹配命令写入子程序写入子程序温度转换命令温度转换命令写入子程序写入子程序显示子程序(延时)显示子程序(延时)DS18B20复位、应答子程序DS18B20复位、应答子程序跳过ROM匹配命令 跳过ROM匹配命令写入子程序写入子程序读温度命令子程序读温度命令子程序终终止图5-8读出温度子程序2)读出温度子程序读出温度子程序的主要功能是读出RAM中的9字节,在读出时需进行CRC校验,校验有错时不进行温度数据的改写。DS18B20的各个命令对时序的要求特别严格,所以必须按照所要求的时序才能达到预期的目的,同时,要注意读进来的是高位在后低位在前,共有12位数,小数4位,整数7位,还有一位符号位。3)复位、应答子程序P1.0口清0开始P1.0口清0开始延时537US延时537USP1.0口置1P1.0口置1否50US是否有低电平否50US是否有低电平是标志位置1P1.0口置1有234US低电平标志位置1是标志位置1P1.0口置1有234US低电平标志位置1终止终止图5-9复位、应答子程序4)写入子程序开始开始进位C清0进位C清0终止R2是否为0P1.0置0延时46US带进位右移延时12USP1.0清0终止R2是否为0P1.0置0延时46US带进位右移延时12USP1.0清0 图5-10写入子程序5)系统总的流程图开始开始初始化DS18B20显示当前温度判断当前温度值超过设定温度上限启动风扇降低温度红灯亮设定温度上、下限启动电热炉升高温度是否低于设定温度下限是绿灯亮否图5-11系统总的流程图5.3调试主程序的功能是:启动DS18B20测量温度,将测量值与给定值进行比较,若测得温度小于设定值0℃,则进入加热阶段,置P1.1为低电平,这期间继续对温度进行监测,直到温度在设定范围内,置P1.1为高电平断开可控硅,关闭加热器,等待下一次的启动命令。当测得温度大于设定值50℃,则进入降温阶段,则置P1.2为低电平,这期间继续对温度进行监测,直到温度在设定范围内,置P1.2为高电平断开,关闭风扇,等待下一次的启动命令。而且

温馨提示

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

评论

0/150

提交评论