毕业设计(论文)-基于单片机的温度测量控制系统设计.doc_第1页
毕业设计(论文)-基于单片机的温度测量控制系统设计.doc_第2页
毕业设计(论文)-基于单片机的温度测量控制系统设计.doc_第3页
毕业设计(论文)-基于单片机的温度测量控制系统设计.doc_第4页
毕业设计(论文)-基于单片机的温度测量控制系统设计.doc_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

本 科 毕 业 设 计 第 45 页 共 47页1 绪论1.1 研究的背景和意义 随着现代信息技术的飞速发展,温度测量控制系统在工业、农业及人们的日常生活中扮演了一个越来越重要的角色。因此,对温度采集控制系统的设计与研究就具有十分重要的意义。 随着信息领域各种技术的发展,在数据采集方面的技术也取得了长足的进步,采集数据的信息化是目前社会发展的主流方向。各种工业领域都用到了数据采集,在石油勘探、地震数据采集等领域已经得到广泛应用。随着测控技术的迅猛发展,以嵌入式计算机为核心的数据采集系统已经在测控领域中占到了统治地位。数据采集系统是将现场的各种参数如温度、压力、频率等进行采集后送微机进行处理和分析,达到检测和控制的目的。现代化生产对温度采集的精度、实时性和采集效率等都有很高的要求,而且有许多测温现场环境恶劣,对操作人员现场采集十分不利,这就需要使用一种能够自动采集、处理和传送数据的测温仪器。同时,为了方便安装和维护,这类仪器需要具备长期自动稳定工作的能力。因此,开发低功耗的温度采集系统,对这些应用领域的温度数据进行测量是非常必要的。在科研实验、大棚蔬菜种植、各种动物养殖及卫生医疗等场合经常要用到温度采集系统;以及火灾自动报警控制系统、电话室温采集系统等都有相关的应用。1.2 国内外发展现状 随着现代信息技术的飞速发展,温度测量控制系统在工业、农业及人们的日常生活中扮演着一个越来越重要的角色。它对人们的生活具有很大的影响,所以温度采集控制系统的设计与研究又十分重要的意义。随着信息时代的到来,作为获取信息的手段,传感器技术得到了显著的进步,其应用领域越来越广泛,对其要求越来越高,需求越来越迫切。传感器技术已成为衡量一个国家科学技术发展水平的重要标志之一。因此,了解并掌握各类传感器的基本结构、工作原理及特性是非常重要的。为了提高对传感器的认识和了解,尤其是对温度传感器的深入研究以及其用法与用途,基于实用、广泛和典型的原则而设计了本系统。本文利用单片机集合传感器技术而开发设计了这一温度采集系统。文中传感器论与单片机实际应用有机结合,详细的讲述了利用热电偶及热电阻作为温度传感器探测环境温度的过程,以及实现热电转换的原理过程。单片机是将微处理器、存储器、定时/计数器、I/O接口电路等集成在一个芯片上的大规模集成电路,本身即是一个小型化的微机系统。单片机技术与传感器测量技术、数据库技术以及数据结构、计算机操作系统、汇编语言程序设计、高级语言程序设计、软件工程、数据网络通信、数字信号处理、自动控制、误差分析、仪器仪表结构设计和制造工艺等的结合,使得单片机的应用非常广泛。同时,单片机具有较强的管理功能。采用单片机对整个测量电路进行管理和控制,使得整个系统智能化、功耗低、使用电子元件较少、内部配线少、成本低,制造、安装、调试及维修方便。国内外发展概况:随着计算机技术的发展和控制系统中的广泛应用,以及设备向小型化、智能化发展,作为高新技术之一的单片机以其体积小、功能强、价格低廉、使用灵活等优势,显示出了很强的生命力。进入21世纪以来,开发推出单片机的公司很多,各种高性能单片机市场也异常活跃,新技术的不断采用,更加是单片机的种类、性能以及应用领域不断扩大和提高。自从1976年Intel公司推出第一批单片机以来,80年代单片机技术进入快速发展时期,今年来,随着大规模集成电路的发展,单片机继续朝快速、高性能方向发展,从4位、8位单片机发展到16位、32位单片机。单片机主要用于控制,它的应用领域遍及各行各业,大到航天飞机,小至日常生活中的冰箱、彩电,单片机都可以大显其能。2 系统的总体设计系统包括系统硬件和软件的设计。硬件主要包括了各个功能模块的方案论证和电路设计,电路板设计和制作,各模块的硬件电路调试。软件的设计主要包括按键扫描判断主程序,数据采集、数据处理、BCD码转换、数码管显示、读键盘代码等子程序编制。硬件设计工作主要包括了:掌握温度传感器、LED数码管显示、放大器等器件的工作原理,并由此设计具体的硬件电路;在软件方面则是利用单片机组成控制系统,利用汇编语言编程实现温度数据采集、放大、A/D转换及显示的功能。本系统以AT89S52单片机为微处理器,利用传感器与单片机组成测温系统,检测当前温度并通过单片机实现对采集到的温度数据进行A/D转换,通过LED数码管显示。2.1 系统功能分析系统主要实现两个基本功能,一是对温度数据的采集,另一个是对采集到的温度值的显示。在实现第一个功能时,通过温度传感器k型电偶和热电阻PT100采集温度模拟信号,经过单刀八掷开关CD4051选通,再经过OP07放大后由A/D转换器转换为数字信号送单片机处理。实现第二个功能主要是通过单片机将转换出的数字信号经过LED数码管显示出来。2.2 系统组成框图根据上文所述的各个功能模块,系统硬件主要包括以下几个部分:控制核心部分、信号放大部分、选通信号部分、按键控制及LED显示部分。系统实现方案如图2.3所示。单片机多路模拟开关12位串行AD转换器数码管显示及LED指示 放大电路多 路 模 拟 量按键控制冷端温度补偿图2.3 系统总体原理框图3 芯片介绍3.1 AT89S52单片机介绍3.1.1 主要性能l 与MCS-51单片机产品兼容l 8K字节在系统可编程Flash存储器l 1000次擦写周期l 全静态操作:0Hz33Hzl 三级加密程序存储器l 32个可编程I/O口线l 三个16位定时器/计数器l 八个中断源l 全双工UART串行通道l 低功耗空闲和掉电模式l 掉电后中断可唤醒l 看门狗定时器l 双数据指针l 掉电标识符3.1.2 功能特性描述 单片机是随着大规模集成电路的出现及其发展,将计算机CPU、RAM、ROM,定时/计数器和多种I/O接口集成在一片芯片上,形成了芯片级的计算机,因此单片机早期的含义称为单片微型计算机。它拥有优异的性价比、集成度高、体积小、可靠性高、控制功能强、低电压、低功耗的显著优点。主要应用于智能仪器仪表、工业监测控制、机电一体化等方面,并且取得了显著的成果。单片机应用系统可以分为:(1)最小应用系统是指能维持单片机运行的最简单配置的系统。这种系统成本低廉,结构简单,常构成一些简单的控制系统,如开关状态的输入/输出控制等。片内有ROM/EPROM的单片机起最小应用系统除了外部配置晶振,复位电路,电源的单个单片机。片内无ROM/EPROM的单片机,其最小应用系统除了外部配置晶振,复位电路,电源外,还应外接EPROM或EEPROM作为程序存储器用。(2)最小功耗应用系统是指为了保证正常运行,系统的功耗最小。(3)典型应用系统是指单片机要完成工业测控功能所必须的硬件结构系统。 AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash存储器。使用ATMEL公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。3.1.3 引脚功能描述AT89S52引脚图见图3.1。12345678910111213141516171819204039383736353433323130292827262524232221VccP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7VPPALEPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.04567891011121314151617181920P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RSTP3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7XTAL2XTAL1GNDAT89S52图3.1 单片机封装及引脚结构 VCC : 电源 GND: 地 P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在 flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,P1 输出缓冲器能驱动4 个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。 此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),在flash编程和校验时,P1口接收低8位地址字节。具体如下表3.1所示。 表3.1 P1口引脚的第二功能引脚号第二功能P1.0T2(定时器/计数器T2的外部计数输入),时钟输入P1.1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P1.5MOSI(在系统编程中)P1.6MISO(在系统编程中)P1.7SCK(在系统编程中) P2 口:P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX DPTR)时,P2 口送出高八位地址。在这种应用中,P2 口使用很强的内部上拉发送1。在使用8位地址(如MOVX RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。P3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52特殊功能(第二功能)使用,如下表3.2所示。在flash编程和校验时,P3口也接收一些控制信号。表3.2 P3口的第二功能引脚号第二功能P3.0RXD(串行输入口)P3.1TXD(串行输入口)P3.2INT0(外中断 0)P3.3INT1(外中断 1)P3.4T0(定时/计数器0)P3.5T1(定时/计数器1)P3.6WR(外部数据存储器写选通)P3.7RD(外部数据存储器读选通) RST: 复位输入。晶振工作时,RST脚持续2 个机器周期高电平将使单片机复位。看门狗计时完成后,RST 脚输出96 个晶振周期的高电平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。 ALE/PROG:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8 位地址的输出脉冲。在flash编程时,此引脚(PROG)也用作编程输入脉冲。在一般情况下,ALE 以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置“1”,ALE操作将无效。这一位置“1”,ALE 仅在执行MOVX 或MOVC指令时有效。否则,ALE 将被微弱拉高。这个ALE 使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。 PSEN:外部程序存储器选通信号(PSEN)是外部程序存储器选通信号。当 AT89S52从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。 EA/VPP:访问外部程序存储器控制信号。为使能从0000H 到FFFFH的外部程序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接VCC。在flash编程期间,EA也接收12伏VPP电压。 XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2:振荡器反相放大器的输出端。3.2 A/D转换器MAX144介绍3.2.1 主要特点 MAxl44是美国MAXIM公司生产的新型双通道12位串行模数转换器,它具有自动关断和快速唤醒功能,且内部集成有时钟电路,采样保持电路;同时具有转换速率高、功耗低等优点,特别适合于由电池供电且对体积和精度有较高要求的智能仪器仪表产品。MAXl44的主要特点如下:单电源供电,电压范围为+2.7+5.25V;带有两路模拟信号输入通道CH0和CHI,其模拟CH0和CH1信号电压范围为0一VREF;采样频率最高可达108ksps;功耗低,当VDD为3.6V,且在采样频率达到最大值108ksps时,功耗仅3.2mW:具有与SPI/QSPI/MICROWIRE兼容的串行接口3.2.2 引脚功能MAXl44采用DIP8封装形式,其引脚功能如下:VDD:正电源端,+2.7一+5.25V;CH0/CH1:模拟信号输入通道;GND:模拟地/数字地;REF:外部参考电压输入,用作模数转换基准电压;CS/SHND:该脚为低电平时,为片选输入;为高电平时,为掉电模式输入;DOUT:串行数据输出端;SCLI:串行时钟输入端。MAX144引脚结构图如图3.287365421SCLKDOUTCS/SHDNGNDCH1CH0VDDREFMAX144图3.2 MAX144引脚3.2.3 功能介绍a) 模拟信号输入 MAX144的两个模拟输入通道CH0与CH1可连接到两个不同的信号源上。上电复位后,MAX144将自动对CH0通道的模拟信号进行A/D转换,转换完毕又自动切换到CH1通道,并对CH1通道模拟信号进行A/D转换,之后交替地在CH0和CH1通道间进行切换和转换。输出数据中包含的一个通道标志位CHID,用以确定该数据为哪一通道转换得到。如果只有一路模拟信号,可以将CH0与CH1连接在一起作为一个输入通道,但输出的数据中仍包含有通道标志位CHID。MAXl44内部有模拟输入保护电路,因而容许输入信号在GND-300mV到VDD+300mV范围内变化,如果要求的转换精度较高,则输入信号不得大于VDD+50mV,且不能小于GND-50mV。b) 时钟模式和工作时序将CS/SHDN设置为低电平可启动A/D转换过程,在CS/SHDN的下降沿,内部采样/保持电路将进入采样模式,此时如果SCLK为高电平,则选择内部时钟模式;若为低电平则选择外部时钟模式。图2给出了内部和外部时钟模式的时序图。当串行时钟频率小于100kHz或大于217MHz时,应选择内部时钟模式。当工作于外部时钟模式时,由于外部时钟不仅要移出数据,而且要驱动模数转换,因此,A/D转换必须在140s内完成,否则采样/保持电路中电容上电压的降低可能导致转换结果精度的降低。转换结束后,内部振荡电路被关闭,DOUT变为高电平,此时即可读取转换数据。3.3 放大器0P07介绍OP07芯片是一种低噪声,非斩波稳零的双极性运算放大器集成电路。由于OP07具有非常低的输入失调电压(对于OP07A最大为25V),所以OP07在很多应用场合不需要额外的调零措施。OP07同时具有输入偏置电流低(OP07A为2nA)和开环增益高(对于OP07A为300V/mV)的特点,这种低失调、高开环增益的特性使得OP07特别适用于高增益的测量设备和放 大传感器的微弱信号等方面。OP07管脚图如图3.3所示。87365421Offset Null 2Vcc+OutputVCC-Inverting InputOffset Null 1N.C.OP07Non-invertingf Input图3.3 OP07管脚图 OP07芯片引脚功能说明: 1和8为偏置平衡(调零端) 2为反向输入端 3为正向输入端 4接地 5空脚 6为输出7接电源正宽的输入电压范围(最小13V)与高达110dB(OP07A)的共模抑制比和高输入阻抗的结合,在同相电路组态中提供了很高的精度,即使在很高的闭环增益下,也能保持极好的线性和增益精度。3.4 选通开关CD4051CD4051/CC4051是单8通道数字控制模拟电子开关,有三个二进控制输入端A、B、C和INH输入,具有低导通阻抗和很低的截止漏电流。幅值为4.520V的数字信号可控制峰值至20V的模拟信号。例如,若VDD+5V,VSS0,VEE-13.5V,则05V的数字信号可控制-13.54.5V的模拟信号。这些开关电路在整个VDD-VSS和VDD-VEE电源范围内具有极低的静态功耗,与控制信号的逻辑状态无关。当INH输入端“1”时,所有的通道截止。三位二进制信号选通8通道中的一通道,可连接该输入端至输出。CD4051引脚功能见图3.4。 161531413421VDDIN/OUT2IN/OUT1IN/OUT7OUT/ININ/OUT6IN/OUT4IN/OUT0CD405112511610798IN/OUT3IN/OUT5Cnt1 Input ACnt1 Input BCnt1 Input CInhibitVSSVEE 图3.4 CD4051芯片图CD4051引脚说明见表3.3表3.3 CD4051功能引脚CD4051引脚功能说明引脚号符号功能1 2 4 5 12 13 14 15IN/OUT输入/输出端9 10 11A B C地址端3OUT/IN公共输入/输出端6INH禁止端7VEE模拟信号接地端8Vss数字信号接地端16VDD电源+3.5 温度传感器3.5.1 K型热电偶a) 简介 K型热电偶作为一种温度传感器,K型热电偶通常和显示仪表,记录仪表和电子调节器配套使用。K型热电偶可以直接测量各种生产中从0到1300范围的液体蒸汽和气体介质以及固体的表面温度。 K型热电偶通常由感温元件、安装固定装置和接线盒等主要部件组成。 镍铬-偶(K型热电偶是目前用量最大的廉金属热电偶,其用量为其他热电偶的总和。K型热电偶丝直径一般为1.24.0mm。 正极(KP)的名义化学成分为:Ni:Cr=92:12,负极(KN)的名义化学成分为:Ni:Si=99:3,其使用温度为-2001300。K型热电偶具有线性度好,热电动势较大,灵敏度高,稳定性和均匀性较好,抗氧化性能强,价格便宜等优点,能用于氧化性惰性气氛中广泛为用户所采用。 K型热电偶不能直接在高温下用于硫,还原性或还原,氧化交替的气氛中和真空中,也不推荐用于弱氧化气氛.b) 热电偶的测温原理 热电偶温度计由热电偶、连接导线及显示仪表三部分组成。如果将热电偶的热端加热,使得冷、热两端的温度不同,则在该热电偶回路中就会产生热电势,这种物理现象就称为热电现象(即热电效应)。在热电偶回路中产生的电势由温差电势和相接触电势两部分组成 接触电势:它是两种电子密度不同的导体相互接触时产生的一种热电势。当两种不同的导体A和B相接触时,假设导体A和B的电子密度分别为Na和Nb并且NaNb,则在两导体的接触面上,电子在两个方向的扩散率就不相同,由导体A扩散利导体B的电子数比从B扩散到A的电子数要多。导体A失去电子而显正电,导体B获很电子而显负电。因此,在A、B两导体的接触面上便形成一个由A到B的静电场,这个电场将阻碍扩散运动的继续进行,同时加速电子向相反方向运动,使从B到A的电子数增多,最后达到动态平衡状态。此时A、B之间也形成一电位差,这个电位差称为接触电势。此电势只与两种导体的性质相接触点的温度有关,当两种导体的材料一定,接触电势仅与其接点温度有关。温度越高,导体中的电子就越活跃,由A导体扩散到B导体的电子就越多,致使接触面处所产生的电场强度越高,因而接触电势也就越大。c) K型热电偶特点检出(测)元件热电偶是工业上最常用的温度检测元件之一。必须配二次仪表,其优点是:测量精度高。因热电偶直接与被测对象接触,不受中间介质的影响。测量范围广。常用的热电偶从-50+1600均可连续测量,某些特殊热电 偶最低可测到-269(如金铁镍铬),最高可达+2800(如钨-铼)。构造简单,使用方便。热电偶通常是由两种不同的金属丝组成,而且不受大小和开头的限制,外有保护套管,用起来非常方便。 2根据温度测量范围及精度,选用相应分度号的热电偶 使用温度在13001800,要求精度又比较高时,一般选用B型热电偶;要求精度不高,气氛又允许可用钨铼热电偶,高于1800一般选用钨铼热电偶;使用温度在10001300要求精度又比较高可用S型热电偶和N型热电偶;在1000以下一般用K型热电偶和N型热电偶,低于400一般用E型热电偶;250下以及负温测量一般用T型电偶,在低温时T型热电偶稳定而且精度高。3.5.2 PT100热电阻PT100是铂热电阻,它的阻值跟温度的变化成正比。PT100的阻值与温度变化关系为:当PT100温度为0时它的阻值为100欧姆,在100时它的阻值约为138.5欧姆。它的工业原理:当PT100在0摄氏度的时候他的阻值为100欧姆,它的阻值会随着温度上升而成匀速增长的。 金属热电阻的电阻值和温度一般可以用以下的近似关系式表示,即 Rt=Rt01+(t-t0) 式中,Rt为温度t时的阻值;Rt0为温度t0(通常t0=0)时对应电阻值;为温度系数。半导体热敏电阻的阻值和温度关系为 Rt=AeB/t 式中Rt为温度为t时的阻值;A、B取决于半导体材料的结构的常数。 相比较而言,热敏电阻的温度系数更大,常温下的电阻值更高(通常在数千欧以上),但互换性较差,非线性严重,测温范围只有-50300左右,大量用于家电和汽车用温度检测和控制。金属热电阻一般适用于-200500范围内的温度测量,其特点是测量准确、稳定性好、性能可靠,在程控制中的应用极其广泛。 3.5.3 温度传感器LM35介绍LM35是一种由NationalSemiconductor所生产的应用广泛的温度传感器。其输出电压与摄氏温标呈线性关系,0时输出为0V,每升高1,输出电压增加10mV。由于它采用内部补偿,所以输出可以从0开始。在常温下,LM35不需要额外的校准处理即可达到1/4的准确率。其电源供电模式有单电源与正负双电源两种,其接脚如图3.5所示。该器件采用塑料封装TO992,工作电压是430V,所以它似乎是无需校准的LM335。在上述电压范围以内,芯片从电源吸收的电流几乎是不变的(约50A),所以芯片自身几乎没有散热的问题。这么小的电流也使得该芯片在某些应用中特别适合,比如在电池供电的场合中,输出可以由第三个引脚取出,根本无需校准。LM35+VDDVOUTTTTTTTGND 图 3.5 LM35引脚图其中VOUT是电压输出端,+VDD接+5V电源,GND接地。目前,已有两种型号的LM35可以提供使用。LM35DZ输出为0-100,而LMCZ输出可覆盖-40-110,且精度更高,两种芯片的精度都比LM335高。在简单的应用中,LM35可以按图3.6那样连接,仅仅为它提供一组直流电源,比如PP3电池电源,再加上一个用作显示的DVM(数字电压表)即可工作。传感器甚至可以安装到“探针”之中,将DVM扩展为电子式直读温度计,用来测散热片地温度。A3R1VsVoutGND1235VR2OP07图3.6 LM35H 接线图在使用单一电源时,LM35的一个缺点是无法指示低至零度的温度。据称利用LM35可测出20mV的电压,这一值相当于2(一些情况下甚至可测出02mV的电压),但要指示零度或更低的温度时,最好还是再提供一个负电源和一只下拉电阻。3.6 LED数码管3.6.1 数码管简介数码管是一类显示屏通过对其不同的管脚输入相对的电流,会使其发亮,从而显示出数字能够显示 时间、日期、温度等所有可用数字表示的参数。 由于它的价格便宜 使用简单 在电器特别是家电领域应用极为广泛,空调、热水器、冰箱等等。绝大多数热水器用的都是数码管,其他家电也用液晶屏与荧光屏。3.6.2 动态显示驱动数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余晖效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。3.6.3 数码管引脚图 数码管引脚图如图3.7所示。 图3.7 数码管引脚图3.7 数码管驱动HD7279A3.7.1 HD7279A简介HD7279A是一片具有串行接口的,可同时驱动8位共阴式数码管(或64只独立LED)的智能显示驱动芯片,该芯片同时还可连接多达64键的键盘矩阵,单片即可完成LED显示、键盘接口的全部功能。HD7279A内部含有译码器,可直接接受BCD码或16进制码,并同时具有2种译码方式,此外,还具有多种控制指令,如消隐、闪烁、左移、右移、段寻址等。HD7279A具有片选信号,可方便地实现多于8位的显示或多于64键的键盘接口。HD7279A采用串行方式与微处理器通讯,串行数据从DATA引脚送入芯片,并由CLK端同步。当片选信号变为低电平后,DATA引脚上的数据在CLK引脚的上升沿被写入HD7279A的缓冲寄存器。HD7279A的指令结构有三种类型:1、不带数据的纯指令,指令的宽度为8个BIT,即微处理器需发送8个CLK脉冲。2、带有数据的指令,宽度为16个BIT,即微处理器需发送16个CLK脉冲。3、读取键盘数据指令,宽度为16个BIT,前8个为微处理器发送到HD7279A的指令,后8个BIT为HD7279A返回的键盘代码。执行此指令时,HD7279A的DATA端在第9个CLK脉冲的上升沿变为输出状态,并与第16个脉冲的下降沿恢复为输入状态,等待接收下一个指令。HD7279A需要一外接的RC振荡电路以供系统工作,其典型值分别为R=1.5K ,C=15pF。在印刷电路板布线时,所有元件,尤其是振荡电路的元件应尽量靠近HD7279A,并尽量使电路连线最短。HD7279A的RESET复位端在一般应用情况下,可以直接与正电源连接,在需要较高可靠性的情况下,可以连接一外部的复位电路,或直接由单片机控制。在上电或RESET端由低电平变为较高电平后,HD7279A大约需要经过18-25MS的时间才会进入正常工作状态。3.7.2 HD7279A的特点串行接口,无需外围元件可直接驱动LED各种独立控制译码/不译码及阴消和闪烁属性(循环)左移/(循环)右移指令具有段寻址指令,方便控制独立LED64键键盘控制器,内含去抖动电路有DIP和SOIC两种封装形式供选择3.7.3 引脚说明HD7279A引脚图如图3.8所示。图3.8 HD7279A引脚12345678910111213142827262524232221201918171615VDDVDDNCVSSNCCSCLKDATAKEYSGSFSESDSCRESETRCCLKODIG7DIG6DIG5DIG4DIG3DIG2DIG1DIG0DPSASBHD7279A 引脚功能:1,2:VDD,正电源3,5:NC,无连接,必须悬空4:Vss,接地6:CS,片选输入端,此引脚为低电平时,可向芯片发送指令及读取键盘数据7:CLK,同步时钟输入端,向芯片发送数据及读取键盘数据时,此引脚电平上升沿表示数据有效8:DATA,串行数据输入/输出端,当芯片接收指令时,此引脚为输入端;当读取键盘数据时,此引脚在读指令最后一个时钟的下降沿变为输出端9:KEY,按键有效输出端,平时为高电平,当检测到有效按键时,此引脚变为低电平10-16:SG-SA,段g-段a驱动输出17:DP,小数点驱动输出18-25:DIG0-DIG7,数字0-数字7驱动输出26:CLK0,震荡输出端27:RC,RC振荡器连接端28:RESET,复位端4 硬件设计4.1 温度采集模块温度数据采集是整个系统最重要也是最核心的部分,采集到的实时温度数据经过CPU处理后送LED显示。本次设计要进行六路信号的采集,一路为K型热电偶的采集信号,一路为PT100热电阻的采集信号,其余四路为电流信号的采集。由于热电偶与热电阻采集到的信号较小,需要经过OP07进行放大。四路4到20mA电流信号也需经过电阻R17、R18、R19、R20转换为0到5V的电压信号。采集到的六路信号分别与CD4051的A0到A5相连,通过CPU控制进行选通。4.2 选通电路模块CD4051是单边8通道多路调制解调器。C、B、A为二进制控制输入端,改变C、B、A的数值,可以译出8种状态,当INH=0时,通道接通,C、B、A的值依次取0、0、01、1、1,对应第0到7通道的选通;当INH=1时,通道断开。CD4051接线图如图4.2所示。 图4.2 CD4051接线图模拟开关CD4051的选通地址A、B、C由AT89S52的P1口的P1.0、P1.1、P1.2控制。选通的一路信号经OUT输出到MAX144进行A/D转换,将模拟信号转换为单片机可读懂的数字信号进行处理。4.3 显示电路设计由于人的视觉暂留效应,就可以获得视觉稳定的现实状态。本设计选用的是串行口动态扫描显示。 数码管显示由HD7279A驱动的,HD7279A的KEY、DATA、CLK引脚与单片机的P2.0、P2.1、P2.2连接,分别为按键信号输入端、数据输入段、同步时钟输入端。数码管接线图如图4.3所示。 图4.3数码管显示4.4 冷端温度补偿热电偶测量温度时要求其冷端(测量端为热端,通过引线与测量电路连接的端称为冷端)的温度保持不变,其热电势大小才与测量温度呈一定的比例关系。若测量时,冷端的(环境)温度变化,将影响严重测量的准确性。在冷端采取一定措施补偿由于冷端温度变化造成的影响称为热电偶的冷端补偿。热电偶的冷端补偿采用软件补偿法,而冷端温度的获取需要利用由NationalSemiconductor所生产的LM35温度传感器。测温范围是0-100.基于LM35的冷端温度补偿电路如图4.4所示。图4.4 冷端温度补偿电路4.5 按键控制硬件设计设计系统由按键控制多路模拟量的采集显示。四个按键将实现不同的功能,按键1控制热电阻温度采集,按键2控制热电偶温度采集,按键3实现通道加1功能,按键4实现通道减1功能。按键功能由HD7279A实现,硬件连接图如图4.5所示。图4.5 按键控制连接图利用HD7279A读键盘指令即可实现读取键盘的代码,从而判断是哪一个按键按下。读键盘指令为15HD7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D000010101d7d6d5d4d3d2d1d0该指令从HD7279A读出当前的按键代码。此指令的前一个字节00010101B为微控制器传送到HD7279A的指令,而后一个字节d0-d7则为HD7279A返回的按键代码,其范围是0-3FH(无按键按下时为0XFF)。此指令的前半段,HD7279A的DATA引脚从输入状态转为输出状态,输出键盘代码的值,故微处理器连接到DATA引脚的I/O口应有一个从输出态到输入态的转换过程。当HD7279A检测到有效的按键时,KEY引脚从高电平变为低电平,并一直保持到按键结束。在此期间,如果HD7279A接收到“读键盘数据指令”则输出当前按键的键盘代码;如果在收到“读键盘数据指令”时没有有效按键,HD7279A将输出0FFH。5 系统软件设计5.1系统软件设计整体结构系统软件主程序为按键扫描判断主程序,子程序包括数据采集子程序、数据处理子程序、BCD码转换子程序、数码管显示子程序、读键盘代码子程序、以及双字节数据除法子程序和延时子程序等。系统流程图如图5-1:开始系统初始化否有键按下、是 读取按键代码是是是否否否N=N-1N=N+1代码为3N=2代码为2代码为1N=1图5.1 系统程序流程图返回否是数码管显示BCD码转换LED报警数据是否超限数据处理程序采集第N路数据 系统采用汇编语言编程,汇编语言执行速度优于C语言,对于数据采集来讲实时性要好一些。5.2 按键扫描判断主程序主程序中实现按键的扫描,硬件电路若有按键按下则HD7279A的KEY端口变为低电平,此时,与之连接的单片机P2.0端口也变成低电平。因此,单片机只需判断P2.0端口的电平情况就可知是否有按键按下。当扫描到按键按下时,软件部分调用读键盘代码子程序,并将按键代码读入单片机对应的内存单元。若无按键按下,系统继续扫描,直到有按键按下才执行后面的程序。系统定义一个变量N,代表第N路模拟量选通。当按键代码是1时,软件实现N=1;当按键代码是2时,软件实现N=2;当按键代码是3时,软件实现N=N+1;当按键代码是4时,软件实现N=N-1。由于初始化后N的值是1,所以当N=1时若代码是4的按键按下则软件实现N=6。当N=6时若代码是3的按键按下,则软件实现N=1。采用以上的方法就可实现四个按键控制多路模拟量的循环检测。系统由按键扫描判断主程序调用其他子程序,从而实现数据的采集和显示。当主程序确定是哪一路数据输入后就调用数据采集子程序,并将采集的数据存放到指定的内存单元。之后调用数据处理子程序和BCD码转换子程序,将二进制数据转换为模拟量量程范围内的十进制数据,以便于显示。最后调用数码管显示子程序将程序处理后的数据进行显示。系统可在初始化时自由定义模拟量的上下限报警值,并在主程序中对模拟量输入值与设定值进行比较,如果超限,则通过LED灯的闪烁实现报警。5.3 数据处理子程序系统采集到的数据均是通过A/D转换得到的16位二进制数据,由软件实现屏蔽高四位从而得到12位的二进制数据0-0FFFH。数据处理的目的是将A/D转换得到的12位二进制数据转换为与之对应的模拟量。由于系统采用AT89S52是八位单片机,数据的运算指令只对单字节数据有效,不能直接进行双字节的数据运算。因此,还需要由软件编程实现双字节的除法运算。数据处理子程序只需在所需位置调用双字节的除法子程序即可。数据处理子程序分为三部分:热电阻数据处理子程序、热电偶数据处理子程序、电流数据处理子程序。各部分相互独立,均可由主程序调用。5.3.1 热电阻数据处理子程序系统采集的热偶电温度范围是0100。通过A/D转换得到的12位数据范围是00FFFH。如前所述,热电阻的阻值与温度并不成线性关系,但由于测温范围较窄,系统精度要求不是很高,因此,热电阻测温不进行线性化处理。热电阻所测温度值T等于A/D转换得到的12位数据除以41。数据运算由软件调用双字节除法子程序实现。5.3.2 热电偶数据处理子程序系统采集的热电阻温度范围是0800。通过A/D转换得到的12位数据范围是00FFFH。热电偶存在冷端温度,系统由硬件电路部分LM35采集热电偶冷端温度并进行放大、A/D转换,并将结果存放到指定的内存单元。冷端温度补偿由软件实现。 由于热电偶的输出电压与温度值并不呈线性关系,因此,系统由软件实现热电偶的线性化处理。工业测温线性化的方法主要有以下三种:a) 直接查表法:对分度表不经处理,直接按一定的排列的形式存入内存当中,用所得A/D转换值靠软件搜索来查得相应的温度值。b) 计算的方法:先用数学上的曲线拟合方法对热电势和对应温度进行拟合,得出误差最小的近似表达式T=f(e)。系统为了简单起见,常常用分段的数学表达式,之后用软件程序进行分区计算得到温度。c) 数据压缩法:将分度表进行压缩处理,减少数据表字节数,然后通过软件计算出所测温度。在线性化处理之前,首先要进行标度变换。系统采集到的是经过放大后的0-+5V的电压信号,再将对应的电压信号经过12位串行A/D转换器MAX144转换为对应的00-0FFFH的二进制数字量Dx。最后在程序进行过程中,将其转换成实际测量温度的显示码值。这个信号转换过程,就是标度变换。只有在被测量参数值与A/D转换结果为线性关系的情况下才可以进行线性化标度变换。线性化标度变换公式: Bo:模拟量的下限Bm:模拟量的上限Bx:实际测量值(工程量)N0:模拟量的下限所对应的数字量Nm:模拟量的上限所对应的数字量Nx:测量时所对应的数字量系统所测量的模拟量下限Bo=0,模拟量的下限所对应的数字量No=0。因此上式可简化为: 设计系统采用

温馨提示

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

评论

0/150

提交评论