多点温度监测控制系统设计_第1页
多点温度监测控制系统设计_第2页
多点温度监测控制系统设计_第3页
多点温度监测控制系统设计_第4页
多点温度监测控制系统设计_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

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

文档简介

1、邵阳学院毕业设计(论文)摘 要近年来随着计算机在社会领域的渗透,单片机的应用正在不断地走向深入,同时带动传统监测控制日新月益的更新。在实时监测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及具体应用对象特点的软件结合,以作完善。本文从硬件和软件两方面来讲述室温自动控制过程,在控制过程中主要应用AT89S51、DS18B20、LCD显示器、LM324放大器,其目的主要是通过DS18B20数字温度传感器采集环境温度,以单片机为核心控制器件,并通过液晶显示器显示实时温度的一种温度控制系统。软件方面采用汇编语言来进行程序设计,使指令

2、的执行速度快,节省存储空间。为了便于扩展和更改,软件的设计采用模块化结构,使程序设计的逻辑关系更加简洁明了,使硬件在软件的控制下协调运作。而系统的过程则是:首先,通过设置按键,设定恒温运行时的温度值,并且用LCD显示这个温度值。然后,在运行过程中将采样的温度模拟信号经过DS18B20传感器转换为数字信号传给单片机,再将转换后的数字量用LCD进行显示,最后用单片机来控制系统,进行温度调节,直到能在规定的温度下恒温。关键词:单片机系统;传感器;数据采集;模数转换器;温度AbstractIn recent years, with the computer penetrating in the soc

3、ial field, the application of SCM is to keep at the same time, traditional control testing update on Crescent benefits. In real-time detection and automatic control system of single-chip applications, often as a single-chip core component to use only single-chip is not enough knowledge, but also the

4、 specific hardware structure and the specific features of application software objects combine to make perfect. In this paper, both hardware and software for automatic control of water temperature on the process, in the control of the main application of the process of AT89S51, LCD display, LM324 co

5、mparator, but mainly through the digital temperature sensor DS18B20 collecting ambient temperature to single-chip microcomputer as the core control components, and through four real-time digital display of a digital thermometer temperature. Software using assembly language for programming, so that t

6、he implementation of Directive speed, to save storage space. In order to facilitate the expansion and changes to the design of modular software structure, so that the logic of the relationship between program design more concise,Hardware software co-operation under the control of it.And systematic p

7、rocess is: First of all, by setting the button, set the thermostat temperature at the time of operation, and digital display of the temperature. Then, in the running temperature of the process of sampling analog into the DS18B20 in the simulation - digital converter, and then converted digital contr

8、ol with digital display, the last single-chip microcomputer to control the heater used for heating or stop heating until the temperature in the provisions under the constant temperature heating.Key words:Single-chip microcomputer system;Sensor;Data Acquisition;LCD;Temperature邵阳学院毕业设计(论文)目 录摘 要IAbstr

9、actII1 绪 论11.1课题的背景及其意义11.2 课题研究的内容及要求11.3 课题的研究方案22 多点温度监测控制系统的硬件设计52.1 AT89S51系列单片机52.2 运算放大器LM324112.3 移位寄存器74LS164132.4 液晶显示器LCD142.5 数字传感器DS18B20152.6 RS485总线通信172.7 系统主电路图183 多点温度监测控制系统的软件设计193.1主程序流程图193.2中断子程序流程图203.3按键流程图213.4显示流程图224 多点温度监测控制系统的仿真及结果分析234.1系统的仿真234.2 系统仿真的结果及分析24总结25参考文献26

10、致谢27附录28系统程序清单28仿真总图44ii邵阳学院毕业设计(论文)1 绪 论1.1课题的背景及其意义二十一世纪是科技高速发展的信息时代,电子技术、微型单片机技术的应用更是空前广泛,伴随着科学技术和生产的不断发展,需要对各种参数进行温度测量。因此温度一词在生产生活之中出现的频率日益增多,与之相对应的,温度控制和测量也成为了生活生产中频繁使用的词语,同时它们在各行各业中也发挥着重要的作用。如在日趋发达的工业之中,利用测量与控制温度来保证生产的正常运行。在农业中,用于保证蔬菜大棚的恒温保产等。温度是表征物体冷热程度的物理量,温度测量则是工农业生产过程中一个很重要而普遍的参数。温度的测量及控制对

11、保证产品质量、提高生产效率、节约能源、生产安全、促进国民经济的发展起到非常重要的作用。由于温度测量的普遍性,温度传感器的数量在各种传感器中居首位。而且随着科学技术和生产的不断发展,温度传感器的种类还是在不断增加丰富来满足生产生活中的需要。在单片机温度测量系统中的关键是测量温度、控制温度和保持温度,温度测量是工业对象中主要的被控参数之一。单片机温度测量则是对温度进行有效的测量并且能够在工业生产中得到了广泛的应用,尤其在电力工程、化工生产、机械制造、冶金工业等重要工业领域中,担负着重要的测量任务。在日常生活中,也可广泛实用于地热、空调器、电加热器等各种家庭室温测量及工业设备温度测量场合。但温度是一

12、个模拟量,如果采用适当的技术和元件,将模拟的温度量转化为数字量虽不困难,但电路较复杂,成本较高。1.2 课题研究的内容及要求本次的毕业设计的题目是多点温度监测控制系统设计。它是多种技术知识的结合,不仅涉及到软件与硬件的设计,而且还将应用电子技术与单片机的应用技术有机结合,使其具有精度高、测量误差小、稳定性好等特点。仿真的设计技术和实际要求的巧妙结合,使其具备了操作便捷、系统稳定性好等特点,能为它在其它领域的广泛应用打下良好的基础。因为经过我们调查发现许多应用场合原来就有测温控温仪器,只是随着对生产质量与生产需要的要求在不断地提高,以往的那些测温控温的仪器根本不能满足现在的要求。其中,有部分应用

13、场合对精度提高的幅度要求也不是特别高。因此,为了提高性价比,我所设计的系统提出在原有系统的基础上进行一些简单的改良,以此为出发点,主要阐述室温自动控制系统的实现方法。1.2.1 课题的主要研究的内容本文所要研究的课题是基于单片机控制的室温控制系统的设计,主要是介绍了对温度的显示、控制及报警,实现了温度的实时显示及控制。室温控制部分,提出了用DS18B20、AT89S51单片机及LCD的硬件电路完成对室温的实时检测及显示,利用DS18B20与单片机连接由软件来实现对温度的实时控制及超出设定的上下限温度的报警系统。由DS18B20检测室内温度,即测量3个点的实际温度,并把实际温度放在LCD中显示。

14、控制器是用AT89S51单片机,对检测信号和设定值的差值进行调节后输出控制信号给执行机构,去调节系统的温度控制系统,从而控制室内温度。它具有微型化、低功耗、高性能、抗干扰能力强、易配微处理器等优点,特别适合于构成多点温度测控系统,可直接将温度转化成串行数字信号供微机处理,而且每片DS18B20都有唯一的产品号,可以一并存入其ROM中,以便在构成大型温度测控系统时在单线上挂接任意多个DS18B20芯片。从DS18B20读出或写入DS18B20信息仅需要一根口线,其读写及其温度变换功率来源于RS-485数据总线,该总线本身也可以向所挂接的DS18B20供电,而且不需要额外电源。同时DS18B20能

15、提供九位温度读数,它无需任何外围硬件即可方便地构成温度检测系统。而且利用本次的设计主要实现温度测试、温度显示、温度门限设定、超过设定的门限值时自动启动加热装置等功能。而且还要以单片机为主机,使温度传感器通过一根口线与单片机相连接,再加上温度控制部分和人机对话部分来共同实现温度的监测与控制。1.2. 2 多点温度检测控制系统设计要求(1)能够连续测试室温的温度值,用液晶显示器LCD来显示室温的实际温度。(2)能够设定室内的温度值,设定范围是2040。(3)能够实现室温的自动控制,如果设定室温为32,则能使室温保持恒定在32的温度下运行。(4)用单片机AT89S51控制,通过按键来控制室温的设定值

16、,数值采用LCD显示。1.3 课题的研究方案温度控制系统是比较常见和典型的过程控制系统。温度是工业生产过程中重要的被控参数之一,当今计算机控制技术在这方面的应用,已使温度控制系统达到自动化、智能化,比过去单纯采用电子线路进行调节的控制效果要好得多,可控性方面也有了很大的提高。温度是一个非线性的对象,具有大惯性的特点,在低温段惯性较大,在高温段惯性较小。对于这种温控对象,一般认为其具有以下的传递函数形式: (1.1)方案一(见图1.1)图1.1 方案的原理框图此方案是传统的一位式模拟控制方案,选用模拟电路,用电位器设定值,反馈的温度值和设定值比较后,决定加热或不加热。其特点是电路简单,易于实现,

17、但是系统所得结果的精度不高并且调节动作频繁,系统静态差大、不稳定。系统受环境影响大,不能用液晶显示器显示,不能用键盘设定,操作起来很复杂,故不采用一位式模拟控制方案。方案二(见图1.2)图1.2 方案二的原理框图此方案是传统的二位式模拟控制方案,其基本思想与方案一相同,但由于采用上下限比较电路,所以控制精度有所提高。这种方法还是模拟控制方式,因此也不能实现复杂的控制算法使控制精度做得较高,而且不能用液晶显示器LCD显示,对键盘进行设定。操作起来比较复杂,需要花费很多的时间对其进行设计。这无疑会降低次毕业设计的效率,故不采用二位式模拟控制方案。方案三(见图1.3) 图1.3 方案三的原理框图此方

18、案采用AT89S51单片机系统来实现。单片机软件编程灵活、自由度大,可用软件编程实现各种控制算法和逻辑控制。单片机系统可以用液晶显示器来显示室温的实际值,能用键盘输入设定值。本方案选用了AT89S51芯片,不需要外扩展存储器,可使系统整体结构更为简单。结论:前两种方案是传统的模拟控制方式,而模拟控制系统难以实现复杂的控制规律,控制方案的修改也较为繁琐。而方案三是采用以单片机为控制核心的控制系统,尤其对温度控制,可达到模拟控制所达不到的效果,并且实现显示和键盘设定功能,大大提高了系统的智能化。也使得系统所测得结果的精度大大提高。所以,经过对三种方案的比较,本次毕业设计采用了方案三。4邵阳学院毕业

19、设计(论文)2 多点温度监测控制系统的硬件设计 本设计系统的基本组成包括:主机、温度采样单元、温度显示部分、单片机控制单元等,本章将逐一进行介绍。2.1 AT89S51系列单片机2.1.1 AT89S51 系列基本组成及特性AT89S51是一种4k字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable And Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。而在众多的51系列单片机中,要算ATMEL公司的AT89S51更实用,也是一种高效微控制器,因为它不但和8051指令、管脚完全兼容,而且其片内的4k程序存储器是

20、FLASH工艺的,这种工艺的存储器,用户可以用电的方式达到瞬间擦除、改写。而这种单片机对开发设备的要求很低,开发时间也大大缩短。AT89S51基本功能描述如下:AT89S51是一种低损耗、高性能、CMOS八位微处理器,而且在其片种还有4k字节的在线可重复编程快擦快写程序存储器,能重复写入/擦除1000次,数据保存时间为十年。它与MCS-51系列单片机在指令系统和引脚上完全兼容,不仅可完全代替MCS-51系列单片机,而且能使系统具有许多MCS-51系列产品没有的功能。AT89S51可构成真正的单片机最小应用系统,缩小系统体积,增加系统的可靠性,降低了系统成本。只要程序长度小于4k,四个I/O口全

21、部提供给用户。可用5V电压编程,而且写入时间仅10毫秒,仅为8751/87C51 的擦除时间的百分之一,与8751/87C51的12V电压擦写相比,不易损坏器件,没有两种电源的要求,改写时不拔下芯片,适合许多嵌入式控制领域。AT89S51芯片提供三级程序存储器锁定加密,提供了方便灵活而可靠的硬加密手段,能完全保证程序或系统不被仿制。另外,AT89S51还具有MCS-51系列单片机的所有优点。1288位内部RAM,32位双向输入输出线,两个十六位定时器/计时器,5个中断源,两级中断优先级,一个全双工异步串行口及时钟发生器等。AT89S51有间歇、掉电两种工作模式。间歇模式是由软件来设置的,当外围

22、器件仍然处于工作状态时,CPU可根据工作情况适时地进入睡眠状态,内部RAM和所有特殊的寄存器值将保持不变。这种状态可被任何一个中断所终止或通过硬件复位。掉电模式是VCC电压低于电源下限,当振荡器停止振动时,CPU停止执行指令。该芯片内RAM和特殊功能寄存器值保持不变,一直到掉电模式被终止。只有VCC电压恢复到正常工作范围而且在振荡器稳定振荡后,通过硬件复位、掉电模式可被终止。2.1.2 AT89S51系列引脚功能AT89S51有40引脚双列直插(DIP)形式。其与80C51引脚结构基本相同,其逻辑引脚图如图2.1: 图2.1 AT89S51逻辑引脚图各引脚功能叙述如下(1)电源和晶振VCC:

23、运行和程序校验时加+5V。GND: 接地。XTAL1: 输入到振荡器的反向放大器。XTAL2: 反向放大器的输出,输入到内部时钟发生器。(当使用外部振荡器时,XTAL1接地,XTAL2接收振荡器信号)RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止

24、ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。(2)I/O(4个口,32根)P0口: 8位、漏极开路的双向I/O口。当使用片外存储器(ROM、RAM)时,作地址和数据分时复用。在程序校验期间,输出指令字节(需加外部上拉电路)。P0口(作为总线时)能驱动8个LSTTL负载。P1口: 8位、准双向I/O口。在编程/校验期间,用于输入低位字节地址。P1口可驱动4个LSTTL负载。对于80C51,P1.0:T2,是定时器的计数端且为位输入;P1.1:T2EX,是定时器的外部输入端。这时,读两个特殊输入引脚的输出锁存器应由

25、程序置1。P2口: 8位、准双向I/O口。当使用片外存储器(ROM及RAM)时,输出高8位地址。在编程/校验期间,接收高位字节地址。P2口可以驱动4个LSTTL负载。P3口: 8位、准双向I/O口,具有内部上拉电路。P3口提供各种替代功能。在提供这些功能时,其输出锁存器应由程序置1。P3口可以输入/输出4个LSTTL负载。(3)串行口P3.0: RXD(串行输入口)、输入。P3.1: TXD(串行输出口)、输出。(4)中断P3.2: INT0外部中断0、输入。P3.3: INT1外部中断1、输入。(5)定时器/计数器P3.4: T0定时器/计数器0的外部输入、输入。P3.5: T1定时器/计数

26、器1的外部输入、输入。(6)数据存储器选通P3.6: WR低电平有效,输出,片外存储器写选通。P3.7: RD低电平有效,输出,片外存储器读选通。(7)控制线(共4根)输入RST: 复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。EA/Vpp: 片外程序存储器访问允许信号,低电平有效。在编程时,其上施加21V的编程电压。注意:在加密方式1时,EA将内部锁定为RESET;当EA端保持高电平时,此间内部程序存于存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。输入、输出ALE/PROG:地址锁存允许信号,输出。ALE以1/6的振荡频率稳定速率输出,可用作

27、对外输出的时钟或用于定时。在EPROM编程期间,从输入端输入编程脉冲(PROG)。ALE可以驱动8个LSTTL负载。当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。注意:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。输出PSEN:片

28、外程序存储器选通信号,低电平有效。在从片外程序存储器取址期间,在每个机器周期中,当PSEN有效时,程序存储器的内容被送上P0口(数据总线)。PSEN可以驱动8个LSTTL负载。2.1.3 AT89S51系列单片机的功能单元(1)并行I/O接口单片机芯片内有一项主要功能就是并行I/O口。51系列共有4个8位的并行I/O口,分别记作P0、P1、P2、P3每个口都包含一个锁存器,一个输出驱动器和输入缓冲器。实际上,它们已被归入专用寄存器之列,并且具有字节寻址和位寻址功能。在访问片外扩展存储器时,低八位地址和数据由P0口分时传送,高八位地址由P2口传送。(2)定时器/计数器定时器/计数器(timer/

29、counter)是单片机中的重要部件,其工作方式灵活、编程简单,使用它对减轻CPU的负担和简化外围电路都大有好处。S51系列包含有两个16位的可编程定时器/计数器分别称为定时器/计数器T0和定时器/计数器T1;在S51部分产品中,还包含有一个用做看门狗的8位定时器。定时器/计数器的核心是一个加1计数引脚上施加器,其基本功能是加1功能。在单片机的定时器T0或T1中,有一个定时器发生由0到1的跳变时,计数器增1,即为计数功能;在单片机内部对机器周期或其分频进行计数,从而得到定时,这就是定时功能。在单片机中,定时功能和计数功能的设定和控制都是通过软件来进行的。定时器/计数器内部结构及其原理:由定时器

30、0、定时器1、定时器方式寄存器TMOD和定时器控制寄存器TCON组成。当定时器/计数器设置为定时工作方式时,计数器对内部机器周期计数,每过一个机器周期,计数器加1,直到计满为止。定时器的定时时间与系统的振荡频率紧密相关,因为S51系列单片机的一个机器周期由12个振荡脉冲组成,所以,计数频率fc=fosc/12。如果单片机系统采用12MHz晶振,则计数周期为 (2.1)这是最短的定时周期,适当选择定时器的初值可获取各种定时时间。当定时器/计数器设置为计数工作方式时,计数器对来自输入引脚T0(P3.4)和T1(P3.5)的外部信号计数,外部脉冲的下降沿将触发计数。在每个机器周期的S5P2期间采样引

31、脚输入电平,若前一个机器周期采样值为1,后一个机器周期采样值为0,则计数器加1。新的计数值是在检测到输入引脚电平发生1到0的负跳变后,于下一个机器周期的S3P1期间装入计数器中的,可见,检测一个由1到0的负跳变需要两个机器周期,所以最高检测频率为振荡频率的1/24。计数器对外部输入信号的占空比没有特别的限制,但必须保证输入信号的高电平与低电平的持续时间在一个机器周期以上。(3)振荡器 XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。当输入至内部时钟信号时要通过一个二分频触发器,而对外部

32、时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。(4)芯片擦除 整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms来完成。在芯片擦除操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。AT89S51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM、定时器、计数器、串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。(5)中断系统中断系统是单片机的重要组成部分。实时控制、故障自

33、动处理、单片机与外围设备间的数据传送往往采用中断系统。中断系统大大提高了系统的效率,保护了整个系统的安全。AT89S51系统有关中断的寄存器有4个,分别为中断源寄存器TCON和SCON、中断允许控制寄存器IE和中断优先级控制寄存器IP;中断源有5个,分别为外部中断0请求INT0、外部中断1请求INT1、定时器0溢出中断请求TF0、定时器1溢出中断请求TF1和串行中断请求R1或T1。5个中断源的排列顺序由中断优先级控制寄存器IP和顺序查询逻辑电路共同决定,5个中断源分别对应5个固定的中断入口地址。中断的特点是分时操作,实时处理和故障处理。 简单介绍一下本次设计所需的单片机芯片AT89S51的中断

34、系统中要用到的中断类型。外部中断源AT89S51有INT0和INT1两条外部中断请求输入线,用于输入两个外部中断源的中断请求信号,并允许外部中断源以低电平或负边沿两种中断触发方式来输入中断请求信号。AT89S51究竟工作于哪种中断触发方式,可由用户对定时器控制寄存器TCON中IT0和IT1位状态的设定来选取。AT89S51在每个机器周期的S5P2时对INT0、线上中断请求信号进行一次检测,检测方式和中断触发方式的选取有关。若AT89S51设定为电平触发方式(IT0=0),则CPU检测到INT0、INT1上低电平时就可认定其上中断请求有效;若设定为边沿触发方式(IT0=1或IT1=1),则CPU

35、需要两次检测INT0、INT1线上电平方能确定其上中断请求是否有效,即前一次检测为高电平和后一次检测为低电平时中断请求才有效。定时器溢出中断源定时器溢出中断由AT89S51内部定时器分的中断源产生,故它们属于内部中断。AT89S51内部有两个16位定时器/计数器,受内部定时脉冲(主脉冲经12分频后)或T0/T1引脚上输入的外部定时脉冲计数。定时器T0/T1在定时脉冲作用下从全“1”变成全“0”时可以自动向CPU提出溢出中断请求,以表明定时器T0或T1的定时时间已到。串行口中断源串行口中断由AT89S51内部串行口的中断源产生,也是一种内部中断。串行口中断分为串行口发送中断和串行口接收中断两种。

36、在串行口进行发送/接收数据时,每当串行口发送/接收完一组串行数据时串行口电路自动使串行口控制寄存器SCON中的RI或TI中断标志位置位,并自动向CPU发出串行口中断请求,CPU响应串行口中断后便立即转入串行口中断服务程序执行。因此,只要在串行口中断服务程序中安排一段对SCON中RI和TI中断标志位状态的判断程序,便可区分串行口发生了接收中断请求还是发送中断请求。2.2 运算放大器LM324本次设计所用的运算放大器是LM324,而LM324的系列器件为价格便宜的带有真差动输入的四运算放大器。该放大器可以工作在低到3V或者高到32V的电源下,静态电流为MC1741的静态电流的五分之一。共模输入范围

37、包括负电源,因而消除了在许多应用场合中采用外部偏置元件的必要性。每一组运算放大器有5个引出脚,其中“+”、“-”为两个信号输入端,“V+”、“V-”为正、负电源端,“Vo”为输出端。两个信号输入端中,Vi-为反相输入端,表示运放输出端Vo的信号与该输入端的相位相反;Vi+为同相输入端,表示运放输出端Vo的信号与该输入端的相位相同。它的性能特点是短跑保护输出、真差动输入级、底偏置电流为最大100mA、每封装含四个运算放大器、具有内部补偿的功能、共模范围扩展到负电源、行业标准的引脚排列、输入端具有静电保护功能。运算放大器LM324的引脚图如图2.3:图2.2 运算放大器LM324的引脚图由于本次设

38、计中采集电路所采集到的信号值与我们所预期的结果有时会有很大的差距,因此信号值要被真实地反映出来,须采用放大电路进一步处理。按比例将信号放大的电路,称为比例运算放大电路,简称比例电路。对于比例电路,在实际应用中可分为以下几种,下面也做一些简单的介绍。2.2.1 反相比例放大器如图2.4所示,集成运放的同相输入端通过电阻R接地,电阻与信号源串联,另一端接到运放的反相输入端,运放的输出段与反相输入端之间接有电阻,为保证集成运放输入级两边对称有: (2.2)比例电路输出电压与输入电压之间的函数关系为: (2.3) (2.4)图2.3 反向比例电路注意:反相比例电路的特点是深度电压并联负反馈电路。因此,

39、集成运放的反相输入端为“虚地”点,它的共模输入电压可视为零,对运放的共模抑制要求低;比例电路的输入电阻小,可视为,因此对输入电流有一定要求,如果电流较大会损坏反向比例电路。2.2.2 同相比例放大器如图2.4所示,为同相比例电路,其对运放的共模抑制要求也较低,为保证电路输入对称仍要求: (2.5)输出电压与输入电压的函数关系为: (2.6) (2.7)图2.4 同相比例电路注意:同相比例电路的特点是深度电压串联负反馈电路。电路的输入电阻很大,可达100M以上;输出电阻很小可视为零,因此有较强的带负载能力。由于,集成运放的共模抑制比要求较高,这是缺点。但此同相比例电路符合本设计的要求,故选用此比

40、例电路。2.3 移位寄存器74LS164移位寄存器74LS164的引脚如图2.5所示:图2.5 移位寄存器74LS164引脚图74LS164为串行输入、并行输出移位寄存器,其引脚功能如下A、B:串行输入端Q0Q7:并行输出端: 清除端,低电平有效CLK:时钟脉冲输入端,上升沿有效CLR: 清零输入端,高电平信号清零VCC: 电源输入端,为+5V多片74LS164串联,能实现多位LCD静态显示。每扩展一片164就可增加一位显示。MR接+5V,不清除。2.4 液晶显示器LCD带中文字库的128X64是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液

41、晶显示模块;其显示分辨率为12864,内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示84行1616点阵的汉字,也可完成图形显示。低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。一片LCD可显示多路温度值,且清晰稳定,其基本特性如下。基本特性低电源电压:+3.0-+5.5V显示分辨率:12864点 汉字字库: 提供8192个1616点阵汉字(简繁体可选)2MH

42、Z时钟频率 显示方式:STN、半透、正显驱动方式:1/32DUTY,1/5BIAS 视角方向:6点 背光方式: 侧部高亮白色LCD,功率损耗仅为普通LCD的1/5-1/10,且寿命较普通LCD长。通讯方式:串行、并口可选 转换电路:内置DC-DC转换电路,无需外加负压 无需片选信号,简化软件设计 工作温度: 0 - +55 ,存储温度: -20 - +60通过74LS164芯片将主机处理的温度信息显示在LCD数码管上。图2.6则为温度控制系统的单片机显示部分。而显示部分在整个的设计过程中的作用也是很大的,没有LCD的正确显示,就没有整个系统的正常运行,同时会造成工作人员的误判,不能保证系统的高

43、质量性。且此LCD可以将多路温度数值显示出来,且比数码管LED要方便、清晰。LCD具有以上诸多优点,故本毕业设计不选用LED,选用LCD液晶显示器。图2.6 温度显示部分2.5 数字传感器DS18B20DS18B20是DALLAS公司生产的、线式数字温度传感器,它具有微型化、低功耗、高性能抗干扰能力、强易配处理器等优点,特别适合用于构成多点温度测控系统,可直接将温度转化成串行数字信号(按9位二进制数字)给单片机处理,且在同一总线上可以挂接多个传感器芯片,它具有三引脚TO-92小体积封装形式,温度测量范围1545度,可编程为912位A/D转换精度,测温分辨率可达0.0625度,被测温度用符号扩展

44、的16位数字方式串行输出,其工作电源既可在远端引入,业可采用寄生电源方式产生,多个DS18B20可以并联到三根或者两根线上,CPU只需一根端口线就能与多个DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。从而可以看出DS18B20可以非常方便的被用于远距离多点温度检测系统。在传统的模拟信号远距离的温度测量系统中,需要很好的解决引线误差补偿问题、多点切换误差问题和放大电路零点漂移误差问题等技术。另外考虑到一般的测量现场的电磁环境非常的恶劣,各种干扰信号较强,模拟信号很容易受到干扰而产生测量误差,影响测量精度。因此,在温度测量系统中,采用抗干扰能力较强的新型数字温度传感器是解

45、决这些问题的最有效的方案。在实际的温度测量过程中被广泛应用,同时也取得了良好的测量效果。DS18B20数字传感器的主要特性(1)DS18B20的适应电压范围更宽,其范围为:3.0-5.5V,而且它能够直接由数据线获取电源(寄生电源),无需外部工作电源。(2)DS18B20提供了9位摄氏温度测量,具有非易失性、上下触发门限用户可编程的报警功能。(3)DS18B20通过1-Wire总线与中央微处理器通信,仅需要单根数据线(或地线)。同时,在使用过程中,它不需要任何的外围的元件,全部的传感元件和转换电路集成在形状如一只三极管的集成电路内。(4)DS18B20具有-55C至+125C的工作温度范围,在

46、-10C至+85C温度范围内精度为0.5C。(5)每片DS18B20具有唯一的64位序列码,这些序列码允许多片DS18B20在同一条1-Wire总线上工作,因而,可方便地使用单个微处理器控制分布在大范围内的多片DS18B20器件。(6)DS18B20的测量结果直接输出数字温度信号,以“一线总线”串行传送给CPU,同时还可以传送给CRC校验码,它具有极强的抗干扰纠错的能力。DS18B20具有负载特性,当电源极性接反时,芯片不会因发热而烧毁,但是不能正常的工作。本系统为多点温度监测控制系统,DS18B20采用外部供电方式,理论上可以在一根数据总线上挂256个DS18B20,但时间应用中发现,如果挂

47、接25个以上的DS18B20仍旧有可能产生功耗问题。另外单总线长度也不宜超过80M,否则也会影响到数据的传输。在这种情况下我们可以采用分组的方式,用单片机的多个I/O来驱动多路DS18B20。在实际应用中还可以使用一个MOSFET将I/O口线直接和电源相连,起到上拉的作用。DS18B20使用中注意事项(1)较小的硬件开销需要相对复杂的软件进行补偿,由于DS18B20与微处理器间采用串行数据传送。因此,在对DS18B20进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。在使用PL/M、C等高级语言进行系统程序设计时,对DS18B20操作部分最好采用汇编语言实现。(2)在DS18B2

48、0的有关资料中均未提及单总线上所挂DS18B20数量问题,容易使人误认为可以挂任意多个DS18B20,在实际应用中并非如此。当单总线上所挂DS18B20超过8个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时要加以注意。(3)连接DS18B20的总线电缆是有长度限制的。试验中,当采用普通信号电缆传输长度超过50m时,读取的测温数据将发生错误。当将总线电缆改为双绞线带屏蔽电缆时,正常通讯距离可达150m,当采用每米绞合次数更多的双绞线带屏蔽电缆时,正常通讯距离进一步加长。这种情况主要是由总线分布电容使信号波形产生畸变造成的。因此,在用DS18B20进行长距离测温系统设计时要充

49、分考虑总线分布电容和阻抗匹配问题。(4)在DS18B20测温程序设计中,向DS18B20发出温度转换命令后,程序总要等待DS18B20的返回信号,一旦某个DS18B20接触不好或断线,当程序读该DS18B20时,将没有返回信号,程序进入死循环。这一点在进行DS18B20硬件连接和软件设计时也要给予一定的重视。(5)测温电缆线建议采用屏蔽4芯双绞线,其中一组线接地线与信号线,另一组接VCC和地线,屏蔽层在电源端单点接地。根据以上这些特性而从中受益的应用包括:HVAC环境控制、室内,设备或者机器内部的温度监测系统、过程监控和控制系统。通过DS18B20可以将室内温度进行采样,以便AT89S51单片

50、机能够及时处理,见图2.7:图2.7 温度采样单元2.6 RS485总线通信在RS-422标准的基础上,EIA研究出了一种支持多节点、远距离和接收高灵敏度的RS-485总线标准,其驱动是采用MAX232。RS-485标准采有用平衡式发送,差分式接收的数据收发器来驱动总线,具体规格要求如下:接收器的输入电阻RIN12k驱动器能输出7V的共模电压输入端的电容50pF在节点数为32个,配置了120的终端电阻,驱动器至少还能给其提供1.5V的电压。2.7 系统主电路图在protues软件里面将主电路图建立起来,如图2.8:图2.8 系统主电路图3 多点温度监测控制系统的软件设计3.1主程序流程图系统的

51、软件部分由主程序流程图、中断子程序流程图、按键流程图和显示流程图四部分组成。系统的主程序流程图如图3.1,当有信号输入时,主程序启动,根据内部设定的条件逐步运行,达到设计目的。NY图3.1 主程序流程图3.2 中断子程序流程图 图3.2为中断子程序的流程图,这个主要是为了保障整个软件程序在运行时可以达到中断,从而使系统进一步达到完善。图3.2 中断子程序图3.3 按键流程图图3.3为系统的按键流程图。主要是通过人为的对外部按键的控制来调节系统的温度,从而实现系统对温度的手动和自动控制。如果温度过低,可按外部按键使室内温度升高;如果温度过高,则按外部按键使温度降低。所以建立一个按键流程图是十分有

52、必要的。N图3.3 按键流程图3.4 显示流程图图3.4为系统的显示流程图。主要是通过对传输过来的信号进行显示后,给操作者提供提示。已达到为本系统提供对温度的显示和监控的目的。图3.4 显示流程图本章节主要讲的是单片机温度系统的软件设计部分的主要的流程图,这也是系统程序设计的基本设计思路,通过依照四部分的流程图进行设计,已达到对系统完整的运行,对温度的显示、监控和控制。27邵阳学院毕业设计(论文)4 多点温度监测控制系统的仿真及结果分析多点温度监测控制系统设计的仿真总图完成以后,再将系统程序注入到AT89S51单片机,便可进入系统的仿真及分析环节。其主要任务是试运行所设计的程序,排除程序错误,

53、优化程序结构,及发现仿真电路图的不足之处,完善电路图,使系统达到期望的功能和要求,进而确定最终程序及仿真电路图。4.1系统的仿真多点温度监测控制系统的仿真电路图及程序是同时在仿真中检验的,但如果都有故障,通常是先排除系统中明显的仿真电路图错误,尤其是粗心引起的器件选择错误。然后才对程序进行修正,最后才进行正式仿真。仿真程序及仿真总图在附录。4.1.1仿真电路图故障及解决方法(1)错线、开路、短路:由于设计错误所造成的错线、开路、短路等故障。解决方法:在画原理图时仔细检查、校正即可解决。(2)元器件选择错误:由于对元器件的程序代码不熟悉导致选择失误。解决方法:在设计过程中要熟知各元器件的程序代码

54、,严格按照制作要求进行操作,选择错误的要及时更换,以免影响电路功能的实现。4.1.2 仿真程序故障及解决方法(1)当以断点或连续方式运行时,系统没有按规定的功能进行操作或什么结果也没有,这是由于程序转移到意外之处或在某处死循环所造成的。解决方法:这类错误的原因是程序中转移地址计算错误、堆栈溢出、工作寄存器冲突等。在采用实时多任务操作系统时,错误可能在操作系统中,没有完成正确的任务调度操作,也可能在高优先级任务程序中,该任务不释放处理器,使CPU在该任务中死循环。通过对错误程序的修改使其实现预期的功能。(2)不响应中断CPU不响应中断或不响应某一个中断这种错误的现象是连续运行时不执行中断任务程序

55、的规定操作,当断点设在中断入口或中断服务程序中时碰不到断点。错误的原因有:中断控制寄存器(IE,IP)的初值设置不正确,使CPU没有开放中断或不许某个中断源请求;或者对片内的定时器、串行口等特殊功能寄存器和扩展的I/O口编程有错误,造成中断没有被激活;或者某一中断服务程序不是以RETI指令作为返回主程序的指令,CPU虽已返回到主程序但内部中断状态寄存器没有被清除,从而不响应中断;或由于外部中断源的硬件故障使外部中断请求无效。解决方法:修改中断控制寄存器(IE,IP)的初值设置。4.2 系统仿真的结果及分析通过对多点温度监测控制系统仿真的运行,进一步理解了多点温度监测控制系统的原理,同时也发现了

56、一些问题,原设计电路缺乏对室温的实时控制,因此后加入调节执行软件,采用实时控制的方法,取得了良好的仿真效果。以下为结果及分析(1)当DS18B20测得的实际温度并通过LCD显示出来,是大于设定的温度40C,则在主机AT89S51的P1.4、P1.5、P1.6口输出温度控制信号,再驱动DG1、DG2、DG3电机转动对室内气流进行通风,降低了室内的温度。如果温度降低到40C以下,电机停止转动,室内温度恢复正常。分析:这个仿真结果说明本系统能对实际温度进行测量,并能控制室内温度。(2)若室内某点温度突然高于100C,在此时电机转动对室内进行降温,同时报警器响应,即通知值班人员注意此事项。分析:此仿真结果说明本系统能对实际温度进行测量,能控制温度,而且能够实现报警功能。通过

温馨提示

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

评论

0/150

提交评论