基于单片机的PID温度控制毕业设计论文_第1页
基于单片机的PID温度控制毕业设计论文_第2页
基于单片机的PID温度控制毕业设计论文_第3页
基于单片机的PID温度控制毕业设计论文_第4页
基于单片机的PID温度控制毕业设计论文_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

1、-. z前 言温度是表征物体冷热程度的物理量。在很多生产过程中,特别是在冶金、化工、建材、食品、机械、石油等工业中,温度的测量和控制都直接和平安生产、提高生产效率、保证产品质量、节约能源等重大技术经济指标相联系。因此,温度的测量与控制在国民经济各个领域中均受到了相当程度的重视。单片机系统的开发应用给现代工业测控领域带来了一次新的技术革命,自动化、智能化均离不开单片机的应用。将单片机控制方法运用到温度控制系统中,可以克制温度控制系统中存在的严重滞后现象,同时在提高采样频率的根底上可以很大程度的提高控制效果和控制精度。现代自动控制越来越朝着智能化开展,在很多自动控制系统中都用到了工控机,小型机、甚

2、至是巨型机处理机等,当然这些处理机有一个很大的特点,那就是很高的运行速度,很大的存,大量的数据存储器。但随之而来的是巨额的本钱。在很多的小型系统中,处理机的本钱占了系统本钱的比例高达20%,而对于这些小型的系统来说,配置一个如此高速的处理机没有任何必要,因为这些小系统追求经济效益,而不是最在乎系统的快速性,所以用本钱低廉的单片机控制小型的,而又不是很复杂,不需要大量复杂运算的系统中是非常适合的。 随着电子技术以及应用需求的开展,单片机技术得到了迅速的开展,在高集成度,高速度,低功耗以及高性能方面取得了很大的进展。现在完全可以运用单片机和电子温度传感器对*处进展温度检测,而且可以很容易地做到多点

3、的温度检测,如果对此原理图稍加改良,还可以进展不同地点的实时温度检测和控制。1绪论1.1研究的目的和意义温度是工业生产中主要被控参数之一,温度控制自然是生产的重要控制过程。工业生产中温度很难控制,对于要求严格的的场合,温度过高或过低将严重影响工业生产的产质量及生产效率,降低生产效益。这就需要设计一个良好温度控制器,随时向用户显示温度,而且能够较好控制。单片机具有和普通计算机类似的强大数据处理能力,结合PID,程序控制可大大提高控制效力,提高生产效益9。例如钢铁生产过程中,按照工艺条件的规定保持一定的温度才能保证产品质量和设备的平安。对电气设备进展温度的监控,例如高压开关、变压器的出线套管等,判

4、断可能存在的热缺陷,进而能及时发现、处理、预防重大事故的发生。因此研究温度控制仪具有重要的意义10。在单片机温度测量系统中的关键是测量温度、控制温度和保持温度,温度测量是工业对象中主要的被控参数之一。因此,单片机温度测量则是对温度进展有效的测量,并且能够在工业生产中得到了广泛的应用,尤其在电力工程、化工生产、机械制造、冶金工业等重要工业领域中,担负着重要的测量任务。在日常生活中,也可广泛实用于地热、空调器、电加热器等各种家庭室温测量及工业设备温度测量场合16。目前市场上热水器的控制系统大多存在功能单一、操作复杂、控制不方便等问题,很多控制器只具有温度和水位显示功能,不具有温度控制功能即使热水器

5、具有辅助加热功能。也可能由于加热时间不能控制而产生过烧,从而浪费电能。本文设计的热水器控制系统以51单片机为检测控制中心单元,具有温度设定与控制功能。该控制器和以往显示仪相比具有性价比高、温度控制与显示精度高、使用方便和性能稳定等优点,提高了电能的使用效率,具有可观的经济效益和社会效益18。1.2国外开展状况 温度控制采用单片机设计的全数字仪表,是常规仪表的升级产品。温度控制的开展引入单片机之后,有可能降低对*些硬件电路的要求,但这绝不是说可以忽略测试电路本身的重要性,尤其是直接获取被测信号的传感器局部,仍应给予充分的重视,有时提高整台仪器的性能的关键仍然在于测试电路,尤其是传感器的改良。现在

6、传感器也正在受着微电子技术的影响,不断开展变化。传感器正朝着小型、固态、多功能和集成化的方向开展。 近年来,温度控制的开展尤为迅速。国外市场上已经出现了多种多样温度控制仪表,应用于社会的各个方面。例如能够进展程序控温的智能多段温度控制仪,能够实现数字PID和各种复杂控制规律的智能式温度调节器等11。 水温系统的传递函数事先难以准确获得,因而很难判断哪一种控制方法能够满足系统对控制品质的要求。但从对控制方法的分析来看,PID控制方法最适合本例采用。另一方面,由于可以采用单片机实现控制过程,无论采用上述哪一种控制方法都不会增加系统硬件本钱,而只需对软件作相应改变即可实现不同的控制方案。因此本系统可

7、以采用PID的控制方式,以最大限度地满足系统对诸如控制精度、调节时间和超调量等控制品质的要求7。传统的一位式模拟控制方案,选用模拟电路,用电位器设定值,反应的温度值和设定值比拟后,决定加热或不加热。其特点是电路简单,易于实现,但是系统所得结果的精度不高并且调节动作频繁,系统静态差大、不稳定。系统受环境影响大,不能实现复杂的控制算法,不能用数码管显示,不能用键盘设定13。传统的二位式模拟控制方案,其根本思想与方案一一样,但由于采用上下限比拟电路,所以控制精度有所提高。这种方法还是模拟控制方式,因此也不能实现复杂的控制算法使控制精度做得较高,而且不能用数码管显示,对键盘进展设定13。 现在国外一般

8、采用经典的温度控制系统。采用模拟温度传感器对加热杯的温度进展采样,通过放大电路变换为 05V 的电压信号,经过A/D 转换,保存在采样值单元;利用键盘输入设定温度,经温度标度转换转化成二进制数,保存在片设定值单元;然后调显示子程序,屡次显示设定温度和采样温度,再把采样值与设定值进展 PID 运算得出控制量,用其去调节可控硅触发端的通断,实现对电阻丝加热时间的控制, 以此来调节水温使其根本保持恒定2。采用单片机AT89C52设计温度实时测量及控制系统。单片机AT89C52能够根据温度传感器DS18B20所采集的温度数据来控制加热器或致冷器的启停,从而把温度控制在设定的围之。在温控开关被激活的情况

9、下,当温度低于设定的下限时,单片机启动加热器加热,同时点亮绿色发光二极管,当温度高于设定的上限时,单片机启动致冷器降温,同时点亮红色发光二极管。所有温度数据均通过液晶显示器LCM1602显示出来。为了防止单片机掉电引起的数据丧失,温度上下限的设定值存储在AT24C02B中8。采用一线制数字温度传感器DS18B20来作为温度传感器。传感器输出信号进4.7K的上拉电阻直接接到单片机的P1.0引脚上。DS18B20温度传感器是美国达拉斯(DALLAS)半导体公司推出的应用单总线技术的数字温度传感器。该器件将半导体温敏器件、A/D转换器、存储器等做在一个很小的集成电路芯片上。温度传感器之所以选择单线数

10、字器件DS18B20,是在经过多方面比拟和考虑后决定的12。从硬件和软件两方面来讲述水温自动控制过程,在控制过程中主要应用AT89C52、ADC0809、LED显示器、LM324比拟器,而主要是通过 DS18B20数字温度传感器采集环境温度,以单片机为核心控制部件,并通过四位数码管显示实时温度的一种数字温度计。软件方面采用汇编语言来进展程序设计,使指令的执行速度快,节省存储空间。为了便于扩展和更改,软件的设计采用模块化构造,使程序设计的逻辑关系更加简洁明了,使硬件在软件的控制下协调运作。 而系统的过程则是:首先,通过设置按键,设定恒温运行时的温度值,并且用数码管显示这个温度值.然后,在运行过程

11、中将采样的温度模拟量送入A/D转换器中进展模拟-数字转换,再将转换后的数字量用数码管进展显示,最后用单片机来控制加热器,进展加热或停顿加热,直到能在规定的温度下恒温加热5。2系统总体设计2.1系统设计任务与要求该温度自动控制系统采用AT89C52单片机为主控芯片,传感器采用数字温度传感器DS18B20,实现对温度的检测和控制。 技术要求: 1、能够连续测量水的温度值,用十进制数码管来显示实际温度,最小单位为1。 2、能够设定水的温度值,设定围是3090,温度误差0.5。 3、能够实现水温的自动控制,如果设定水温为80,则能使水温保持恒定在80的温度下运行。 4、用单片机AT89C52控制,通过

12、按键来控制水温的设定值,数值采用数码管显示。该温度自动控制系统由温度信号采样电路,键盘及显示电路,温度控制电路,报警电路,时钟信号电路等构成,并运用PID算法进展温度控制和调整。 根据设计任务,详细分析温度自动控制系统的设计需求,并进展软硬件的总体设计。由键盘电路输入设定温度信号给单片机,温度信号采集电路采集现场温度信号给单片机,单片机根据输入与反应信号的偏差进展PID计算,输出反应量给温度控制电路,实现升温。显示电路实现现场温度的实时监控。设计人员需完成全部硬件和软件的设计,并利 Altium Designer 6.0仿真软件对设计结果进展验证。2.2系统方案的选择 在这个系统中我们从性能及

13、设计本钱考虑,我们选择AT89C52芯片。AT89C52的广泛使用,使单片机的价格大大下降。在温度传感器的选择上我们采用温度芯片DS18B20测量温度。该芯片的物理化学性很稳定,它能用做工业测温元件,且此元件线形较好。该芯片直接向单片机传输数字信号,便于单片机处理及控制。本制作的最大特点之一就是直接采用温度芯片对温度进展测量,使数据传输和处理简单化。采用温度芯片DS18B20测量温度,表达了作品芯片化的这个趋势。局部功能电路的集成,使总体电路更简洁,搭建电路和焊接电路时更快。而且,集成块的使用,有效地防止外界的干扰,提高测量电路的准确度。在这个过程中,我们通过单片机将传感器所测量出来的温度通过

14、LCD1602可以显示出来。这样就能实时显示温度情况。 本设计采用了PID控制。在工程实际中,PID控制器以其构造简单、稳定性好、工作可靠、调整方便而成为工业控制的主要技术之一。当被控对象的构造和参数不能完全掌握,或得不到准确的数学模型,控制理论的其他技术也难以采用,系统控制器的构造和参须依靠经历和现场调试来确定时,应用PID控制技术最为方便。 PID控制器的参数整定是控制系统设计的核心容。它是根据被控过程的特性确定PID控制器的比例系数、积分时问和微分时间的大小。PID控制器参数整定的方法概括起来有两大类:一是理论计算整定法。它主要是依据系统的数学模型,经过理论计算确定控制器参数。这种方法所

15、得到的计算数据未必可以直接用,还必须通过工程实际进展调整和修改。二是工程整定方法,它主要依赖工程经历,直接且方法简单、易于掌握,在实际中被广泛应用。3器件和模块的选用3.1 AT89C52单片机AT89C52是一种低功耗、高性能8位微控制器,具有8K 在系可编程Flash 存储器。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使AT89C52为众多嵌入式控制应用系统提供高灵活、有效的解决方案。AT89C52具有以下标准功能:8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2个数据指针,三个16

16、位定时器/计数器,一个6向量2级中断构造,全双工串行口,片晶振及时钟电路。另外,AT89C52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停顿工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM容被保存,振荡器被冻结,单片机一切工作停顿,直到下一个中断或硬件复位为止。其主要工作特性为:1、含8KB的Flash存储器,擦写次数达1000次;2、含128字节的RAM;3、具有32根可编程I/O线;4、具有2个16位可编程定时器;5、具有6个中断源、5个中断矢量、2级优先权的中断构造;6、具有1个全双工的可编程串行通信接口;7、具有1个数据指针

17、DPTR;8、两种低功耗工作模式,即空闲模式和掉电模式;9、具有可编程的3级程序锁定位;10、工作电源电压为51.2V,典型值为5V;11、最高工作频率为24MHz。引脚排列如图3.1所示。图3.1 AT89C52引脚排列3.2DS18B20传感器DS18B20原理与特性:采用了DS18B20单总线可编程温度传感器,来实现对温度的采集和转换,大大简化了电路的复杂度,以及算法的要求。首先来介绍一下DS18B20这块传感器的特性及其功能: DSl8B20的管脚及特点 DS18B20可编程温度传感器有3个管脚。部构造主要由四局部组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配

18、置存放器。DS18B20的外形及管脚排列如图3.2所示。GND为接地线,DQ为数据输入输出接口,通过一个较弱的上拉电阻与单片机相连。VDD为电源接口,既可由数据线提供电源,又可由外部提供电源,围3.05.5 V。本文使用外部电源供电。主要特点有: 1. 用户可自设定报警上下限温度值。 不需要外部组件,能测量55+125 围的温度。10 +85 围的测温准确度为05 。 图3.2 DS18B20的外形及管脚图通过编程可实现9l2位的数字读数方式,可在至多750 ms将温度转换成12 位的数字,测温分辨率可达0.0625 。 独特的单总线接口方式,与微处理器连接时仅需要一条线即可实现与微处理器双向

19、通讯。测量结果直接输出数字温度信号,以一线总线串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力。负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。DS18B20支持多点组网的功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温。DS18B20部功能模块如图3.3所示,图3.3 DS18B20原理图DS18B20的读写时序和测温原理与DS1820一样,只是得到的温度值的位数因分辨率不同DS18B20 为9位12位A/D转换精度,而DS1820为9位A/D转换,虽然我们采用了高精度的芯片,但在实际情况上由于技术问题比拟难实现,而实际精度此时温度存放器中的

20、数值即为所测温度。斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。如下3.4的测温原理图不同,且温度转换时的延时时间由2s减为750ms。 DS18B20测温原理如图3.4所示。 图3.4 DS18B20的测温原理框图图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。则高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度存放器被预置在55所对应的一个基数值时。计数器1对低温度系数晶振产生脉冲信号,进展减法计数,当计数器1的预置值减到0时,温度存放器的值将加1,计数器1的预置将重新被装入,计数器

21、1重新开场对低温度系数晶振产生的脉冲信号进展计数,如此循环直到计数器2计数到0时,停顿温度存放器值。在DS18B20测温程序设计中,向DS18B20发出温度转换命令后,程序要等待DS18B20的返回信号,一旦*个DS18B20接触不好或断线,当程序读该DS18B20时,将没有返回信号,程序进入死循环。这一点在进展DS1820硬件连接和软件设计时也要给予一定的重视。测温电缆线采用屏蔽4芯双绞线,其中有一对接地线与信号线,另一组接VCC和地线。3.3复位和时钟电路的设计本系统中采用手动复位键复位相的方式。系统时钟电路设计采用部方式。AT89C52部有一个用于构成振荡器的高增益反相放大器。这个放大器

22、与作为反应元件的片外晶体谐振器构成一个自激振荡器。外接晶体谐振器以及电容构成并联谐振电路,接在放大器的反应回路中。本系统电路采用的晶体振荡器频率为11.0592MHz。采用这种频率的晶体振荡器的原因是可以方便的获得标准的波特率。复位电路和时钟电路如图3.5所示。复位电路有上电自动复位和按钮手动复位两种。上电复位是利用电容充电来实现的,上电瞬间RST/VPD端的电位与VCC一样,随着充电电流的减少,RST/VPD的电位逐渐下降,图3.5中的10K的电阻是施密特触发器输入端的一个下拉电阻,时间常数为10*10-6*10*103s=100ms,只要Vcc的上升时间不超过1ms,振荡器建立时间不超过1

23、0ms,这个时间常数足以保证完成复位操作6。上电复位所需最短时间是震荡周期建立时间加上2个机器周期时间。按钮复位采用电平复位方式,按下复位电钮时,电源对外接电容充电,使RST/VPD端为高电平,复位按钮松开后,电容通过部下拉电阻放电,逐渐使RST/VPD端恢复低电平。图3.5 复位电路和时钟电路3.4 温度采集电路数据采集电路如图3.6所示,1脚接地,2脚即为单总线数据口,3脚接电源。温度传感器DS18B20采集被控对象的实时温度,提供应AT89C52的P3.5口作为数据输入。图3.6 数据采集电路3.5显示电路的设计 数码管显示局部,采用与单片机相连接,将温度传感器采集到的信息迅速转化为可视

24、温度,增加了可读性。图3.7数码管显示电路图3.6供电系统 供电局部采用TL431构成的恒压源,TL431是一个有良好的热稳定性能的三端可调分流基准源。他的输出电压用两个电阻就可以任意的设置到从Verf2.5V到36V围的任何值。该器件的典型动态阻抗为0.2。其稳压电路图如图3.8: 图3.8供电电路 4 PID控制和参数整定4.1 PID调节器控制原理 PID控制器是一种线性控制器,一种它根据给定值rin(t)与实际输出值yout(t)构成控制偏差: Error(t)=rin(t)-yout(t) PID控制就是对偏差信号进展比例、积分、微分运算后,形成一种控制规律。即,控制器的输出为:SK

25、IPIF 1 0 4.1 或写成传递函数的形式:SKIPIF 1 0 4.2 式中,kp比例系数;Ti积分时间常数;Td微分时间常数。简单说来,PID控制器各校正环节的作用如下: 比例环节:成比例地反映控制系统的偏差信号error(t),偏差一旦产生,控制器立即产生控制作用,以减小偏差10。 比例控制: Gc(s)= Kp 积分环节:主要用于消除静差,提高系统的无差度。积分作用的强尽弱取决于积分 时间常数Ti,Ti越大,积分作用越弱,反之则越强。 积分控制: Gc(s) = Kp/T is 微分环节:反偏差信号的变化趋势变化速率,并能在偏差信号变得太大之前, 在系统中引入一个有效的早期修正信号

26、,从而加快系统的动作速度,减少调节时间。 微分控制: Gc(s) =KpTds4.2 PID控制的分类 根本PID控制器的理想算式为(4.3) 式中u(t)控制器(也称调节器)的输出;e(t)控制器的输入常常是设定值与被控量之差,即e(t)=r(t)-c(t);Kp控制器的比例放大系数;Ti 控制器的积分时间;Td控制器的微分时间。 设u(k)为第k次采样时刻控制器的输出值,可得离散的PID算式(4.4), 由于计算机的输出u(k)直接控制执行机构如阀门,u(k)的值与执行机构的位置如阀门开度一一对应,所以称式(2)为位置式PID控制算法。位置式PID控制算法的缺点:当前采样时刻的输出与过去的

27、各个状态有关,计算时要对e(k)进展累加,运算量大;而且控制器的输出u(k)对应的是执行机构的实际位置,如果计算机出现故障,u(k)的大幅度变化会引起执行机构位置的大幅度变化。 增量式只需计算增量,算式中不需要累加,控制增量确实定仅与最近几次偏差采样值有关,当出现计算误差或精度缺乏时,对控制量计算的影响较小,且较容易通过加权处理获得比拟好的控制效果。4.3 数字PID参数的整定 PID控制器的参数整定是控制系统设计的核心容。它是根据被控过程的特性确定PID控制器的比例系数、积分时间和微分时间的大小。PID控制器参数整定的方法很多,概括起来有两大类:一是理论计算整定法。它主要是依据系统的数学模型

28、,经过理论计算确定控制器参数。这种方法所得到的计算数据未必可以直接用,还必须通过工程实际进展调整和修改。二是工程整定方法,它主要依赖工程经历,直接在控制系统的试验中进展,且方法简单、易于掌握,在工程实际中被广泛采用。本设计采用PID归一整定法把对控制台三个参数Kc、Ti、Td,转换为一个参数KP,从而使问题明显简化。以到达控制器的特性与被控过程的特性相匹配,满足*种反映控制系统质量的性能指标。4.4 PID计算程序PID调节规律的根本输入输出关系可用微分方程表示为: SKIPIF 1 0 4.5式中 SKIPIF 1 0 为调节器的输入误差信号,且 SKIPIF 1 0 4.6其中: SKIP

29、IF 1 0 为给定值, SKIPIF 1 0 为被控变量; SKIPIF 1 0 为调节器的输出控制信号; SKIPIF 1 0 为比例系数; SKIPIF 1 0 为积分时间常数; SKIPIF 1 0 微分时间常数。计算机只能处理数字信号,假设采样周期为T第n次采样的输入误差为 SKIPIF 1 0 ,且 SKIPIF 1 0 ,输出为 SKIPIF 1 0 ,PID算法用的微分 SKIPIF 1 0 由差分 SKIPIF 1 0 代替,积分 SKIPIF 1 0 由 SKIPIF 1 0 代替,于是得到 SKIPIF 1 0 4.7写成递推形式为 SKIPIF 1 0 SKIPIF 1

30、 0 = SKIPIF 1 0 = SKIPIF 1 0 = SKIPIF 1 0 SKIPIF 1 0 = SKIPIF 1 0 4.8其中: SKIPIF 1 0 4.9 SKIPIF 1 0 4.10 SKIPIF 1 0 4.11 显然,PID计算un只需要保存现时刻en以及以前的两个偏差量en-1和en-2。初始化程序初值en-1= en-2 =0 通过采样并根据参数KP、KD、KI以及en、en-1和en-2计算un。 根据输出控制增量un,可求出本次控制输出为 SKIPIF 1 0 + SKIPIF 1 0 = SKIPIF 1 0 4.12 下面对PID运算加以说明: 所有的数

31、都变成定点纯小数进展处理。 算式中的各项有正有负,以最高位作为符号位,最高位为0表示为正数,为1表示负数。正负数都是补码表示,最后的计算以原码输出。 节16位进展计算,最后将运算结果取成高8位有效值输出。输出控制量un的限幅处理。为了便于实现对晶闸管的通断处理,PID的输出在0250之间。大于250或小于0的控制量 SKIPIF 1 0 都是没有意义的,因在算法上对 SKIPIF 1 0 进展限幅,即 SKIPIF 1 0 = SKIPIF 1 0 4.13开场计算PD=KD(en-2en-1+en-2)输入5rn计算en=rn-计算un=un-1+PP+P1+PDun un-1,e n-1

32、en-2,en e n-1P1=K1*en计算Pp=Kp(en-en-1)un 输出限幅处理计算P1+Pp返回图4.1 PID计算程序的流程图 PID的计算公式采用位置式算法,计算公式为 SKIPIF 1 0 + SKIPIF 1 0 = SKIPIF 1 0 4.145软件设计系统的软件主要由主程序模块、数据采集模块、数据处理模块、控制算法模块等组成。主模块的功能是为其余几个模块构建整体框架及初始化工作;数据采集模块的作用是将数字量采集并储存到存储器中;数据处理模块是将采集到的数据进展一系列的处理,其中最重要的是数字滤波程序:控制算法模块完成控制系统的PID运算并且输出控制量。5.1主程序模

33、块主程序模块要做的主要工作是上电后对系统初始化和构建系统整体软件框架,其中初始化包括对单片机的初始化、串口初始化等。然后等待温度设定,假设温度已经设定好了,判断系统运行键是否按下,假设系统运行,则依次调用各个相关模块,循环控制直到系统停顿运行。设计模块图如下列图5.1所示。供电系统单片机STC89C52数码管显示温度温度传感器按键设置蜂鸣器报警 图5.1设计模块图主程序模块的程序流程图如图5.2所示。YNYNNYNY图5.2 主程序流程图开场读温度设定值等待数据采集温度显示PID运算控制输出系统初始化 温度设定否运行/停顿键按下否运行/停顿键按下否等待5.2数据采集和显示模块数据采集模块的任务

34、是负责温度信号的采集以及将采集到的数字量提供应单片机。AT89C52通过控制DS18B20读取实时温度,然后,通过P0口送到LCD1602进展显示。显示程序设计框图如图5.3所示。测试显示屏幕是否忙状态返回开场去除屏幕 N送显示地址送显示数据 Y 图5.3显示程序设计框图6 仿真与实物展示6.1 Altium Designer 6.0软件简介2005年年底,Protel软件的原厂商 Altium公 司推出了Protel系列的最新高端版本Altium Designer 6.0。 Altium Designer 6.0,它是完全一体化电子产品开发系统的一个新版本,也是业界第一款也是唯一一种完整的板

35、级设计解决方案。Altium Designer 是业界首例将设计流程、集成化 PCB 设计、可编程器件如 FPGA设计和基于处理器设计的嵌入式软件开发功能整合在一起的产品,一种同时进展PCB和FPGA设计以及嵌入式设计的解决方案,具有将设计方案从概念转变为最终成品所需的全部功能。 6.2仿真通过对电路的硬件设计和程序设计,我们使用了PROTEUS对设计的电路进展仿真设计。首先,我们将硬件电路在PROTEUS中连接好,按照设计总电路图连接各个硬件,通过单片机C语言来进展编程,程序如附录所示。通过KEIL软件降我们的源程序转换成目标程序来进展仿真,生成*.he*文件。最后从PROTEUS中,将我们

36、的程序导入单片机中,便能进展实时仿真。PCB电路图如图6.1所示: 图6.1整体设计PCB图通过PCB图做出的实物图如图6.2所示: 图6.2 实物图致 毕业设计已经接近了尾声,这也意味着我的大学生活就要完毕了,学生活一晃而过,回首走过的岁月,心中倍感充实,当我写完这篇毕业论文的时候,有一种如释重负的感觉,感慨良多。 首先,我要特别感我的指导教师媛媛教师。做设计的过程是艰辛的,但是在我的努力之下还是完成了。在这个过程中媛媛教师给了我很大的的帮助,没有她的尽心指导和严格的要求,我也不会顺利完成这次设计。教师平日里工作繁多,但我做毕业设计的每个阶段,从选题到查阅资料,论文提纲确实定,中期论文的修改

37、,后期论文格式调整等各个环节中都给予了我悉心的指导。这几个月以来,教师不仅在学业上给我以精心指导,同时还在思想给我以无微不至的关心,在此谨向媛媛教师致以诚挚的意和崇高的敬意。其次,还要感这四年来教我知识的美味教师们,毕业论文能够顺利完成,你们也都有很大的功绩。 这次的毕业设计,对于培养我们理论联系实际的设计思想;训练综合运用有关课程的理论,结合生产实际反系和解决工程实际问题的能力;稳固、加深和扩展有关方面的知识等方面有重要的作用。 写作毕业论文是一次再系统学习的过程,毕业论文的完成,同样也意味着新、生活的开场。希望大家在将来的生活中继续追逐最初的梦想,永不放弃。 在此,我还要特别感我的同学们,

38、由于你们的帮助和支持,我才能克制一个一个的困难和疑惑,你们对本课题做了不少工作,直至本文的顺利完成,给予我不少的帮助,你们! 参考文献1妙芳,胡晓东.基于AT89C51单片机的温度控制系统设计J.机械工程师,2009, (01): 151-152.2鸿图.基于单片机的温度控制系统的设计与实现J.微计机信息,2008, (26): 96-98.3叶景.基于单片机的温度控制系统的设计J.中国新通信,2009, (13): 1-2.4纪纲.HD7279A键盘显示驱动芯片及应用J.仪表技术,2001, (30): 15-16.5罗云松.基于单片机AT89C51的温度控制系统设计J.中国科技信息,200

39、9 (12): 23-25.6万超.51单片机温度控制系统设计J.科技信息,2009, (29): 3-4.7艳艳.基于PID算法和89C52单片机的温度控制系统J.现代电子技术,2009,(21): 8-9.8胡朝.基于单片机的温度控制系统的开发应用J.商场现代化,2010, (14):62-65.9青.单片机温度控制系统方案的研究J.交通大学学报,2007, (41):4-7.10Zhou Z, Vucetic B. Design of adaptive modulstion using impact CSI in MIMO systemsJ. Elesctronics Lctters,

40、2004 ,40(17): 73-74.11Dai L, Zhou S D,Zhang H R, et al, Closed-loop MIMO architecture based on water-fillingJ. Elesctronics Lctters, 2002 ,38(25):118-120.12Narula A, Lopcz M J, Troct M D, et al.Efficient use of side information in multiplc-antenna data transmission over fading channelsJ. IEEE Katsuh

41、iko OgataModen Control EngineeringPublishing house of electronics industry,2000:196202.13娜.基于51单片机的温度测量系统J.微计算机信息, 2007, (16):146-148.14Jang J,Lee K B,Lee Y H,Transmit power and bit allocations for OFDM systems in a fading channcl C IEEE GLOHE,USA;IEEE, 2003: 858-862.15伯春.智能PID调节器的设计及应用J电子自动化, 1995,

42、 (3): 2025.16佳贤.基于单片机的温度控制器设计J.科技与生活, 2010, (19): 58.17欧亚军.Proeus软件在单片机实验中的应用J.科技信息, 2006, (1):1-2.18叶剑超.单片机实验教学改良刍议J.学院学报, 2006, (1):3-4.19朝青.单片机原理及接口技术M. :航空航天大学.2006.20王忠飞,胥芳.MCS-51 单片机原理及嵌入式系统应用M:电子科技大学,2007. 附 录附录1:单片机程序/*/*奇毕设*/ Descriptoon: / *采用89C52+DS1820+数码管+蜂鸣器/ *DS1820设置为12位精度/ *环境温度超过A

43、larm值 蜂鸣器报警 / *Alarm值可通过按键自由设定/*该温度可设定围1-100度,测量围-55-125度 /*/*可调温度报警器*#include #include #include #define uchar unsigned charunsigned char code dis_code= 0*C0,/*0*/ 0*F9,/*1*/ 0*A4,/*2*/ 0*B0,/*3*/ 0*99,/*4*/ 0*92,/*5*/ 0*82,/*6*/ 0*F8,/*7*/ 0*80,/*8*/ 0*90,/*9*/ 0*F7,/*负号*/ 0*B6,/*温度设定状态*/ ;uchar da

44、ta dis_buf8,i;uchar data dis_inde* ; /数码管显示标签uchar dis_digit=0*fe; /数码管位选通控制端sbit Spk=P37; /驱动蜂鸣器报警sbit Key_UP = P33; /上调温度sbit Key_DOWN = P34; /下调温度sbit Key_SET = P32; /设定键温度设定/*18B20驱动程序,DQ为数据口,接于P1.4*11.0592M晶振,上拉4.7k电阻*/#define uchar unsigned char#define uint unsigned intsbit dq = P10; /定义18B20的

45、数据端bit flag;uint Temperature;uchar gechar,shichar,baichar,Alarm;uchar temp_buff9; /存储读取的字节,read scratchpad为9字节,read rom ID为8字节uchar id_buff8;uchar *p;uchar crc_data;uchar code CrcTable 256=0, 94, 188, 226, 97, 63, 221, 131, 194, 156, 126, 32, 163, 253, 31, 65,157, 195, 33, 127, 252, 162, 64, 30, 95,

46、 1, 227, 189, 62, 96, 130, 220,35, 125, 159, 193, 66, 28, 254, 160, 225, 191, 93, 3, 128, 222, 60, 98,190, 224, 2, 92, 223, 129, 99, 61, 124, 34, 192, 158, 29, 67, 161, 255,70, 24, 250, 164, 39, 121, 155, 197, 132, 218, 56, 102, 229, 187, 89, 7,219, 133, 103, 57, 186, 228, 6, 88, 25, 71, 165, 251, 1

47、20, 38, 196, 154,101, 59, 217, 135, 4, 90, 184, 230, 167, 249, 27, 69, 198, 152, 122, 36,248, 166, 68, 26, 153, 199, 37, 123, 58, 100, 134, 216, 91, 5, 231, 185,140, 210, 48, 110, 237, 179, 81, 15, 78, 16, 242, 172, 47, 113, 147, 205,17, 79, 173, 243, 112, 46, 204, 146, 211, 141, 111, 49, 178, 236,

48、14, 80,175, 241, 19, 77, 206, 144, 114, 44, 109, 51, 209, 143, 12, 82, 176, 238,50, 108, 142, 208, 83, 13, 239, 177, 240, 174, 76, 18, 145, 207, 45, 115,202, 148, 118, 40, 171, 245, 23, 73, 8, 86, 180, 234, 105, 55, 213, 139,87, 9, 235, 181, 54, 104, 138, 212, 149, 203, 41, 119, 244, 170, 72, 22,233

49、, 183, 85, 11, 136, 214, 52, 106, 43, 117, 151, 201, 74, 20, 246, 168,116, 42, 200, 150, 21, 75, 169, 247, 182, 232, 10, 84, 215, 137, 107, 53; /CRC校验表/*Function:延时处理 */void TempDelay (uint us)while(us-);/*Function:18B20初始化*/void Init18b20 (void)EA=0;dq=1;_nop_();dq=0;TempDelay(86); /delay 530 uS/80

50、_nop_();dq=1;TempDelay(14); /delay 100 uS/14_nop_();_nop_();_nop_();if(dq=0)flag = 1; /detect 1820 success!elseflag = 0; /detect 1820 fail!TempDelay(20); /20_nop_();_nop_();dq = 1;EA=1;/*Function:向18B20写入一个字节*/void WriteByte (uchar wr) /单字节写入uchar i;EA=0;for (i=0;i= 1;EA=1;/*Function:读18B20的一个字节*/uchar ReadByte (void) /读取单字节uchar i,u=0;EA=0;for(i=0;i= 1;dq = 1;if(dq=1)u |= 0*80;TempDelay (4);_nop_(); EA=1;return(u);/*Function:读18B20*/vo

温馨提示

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

评论

0/150

提交评论