单片机的数据采集系统的制作正文.doc_第1页
单片机的数据采集系统的制作正文.doc_第2页
单片机的数据采集系统的制作正文.doc_第3页
单片机的数据采集系统的制作正文.doc_第4页
单片机的数据采集系统的制作正文.doc_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

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

文档简介

引言数据采集是获取信息的基本手段,信息采集技术作为信息技术的一个重要分支,与传感器,信号测量与处理,微型计算机等技术为基础而形成的一门综合应用技术,它研究数据的采集,存储,处理及控制等作业,具有很强的是用性。随着科学技术的发展,数据采集系统得到了越来越广泛的应用,同时人们对数据采集系统的各项技术指标,如:采样率。分变率,线度性,精度,输入范围,控制方法以及抗干扰能力等提出了越来越高的要求,特别是精度和采样率更是使用者和设计者所共同关注的重要问题,于是,高速及超高速数据采集系统应运而生并且的到了快速发展。2今天,数据采集技术已经在雷达,通讯,水声,遥感,地质勘探,震动工程,无损监测,语音处理,智能仪器,工业自动控制以及生物医学工程等众多领域的到广泛的应用并且收到了良好的效果。 数据采集也是工业生产中十分重要的环节,只有对生产现场有关的信号进行检测,才能判断生产过程是否正常,是否符合控制要求,才能充分发挥计算机的特点。对采集到的数据进行加工处理,如数制转换分析判断统计显示以及打印等,以便得到所需要的结果,为生产管理和过程控制服务。下面通过基于单片机的电压采集系统来介绍数据采集在此方面的应用。数据采集系统,从严格的意义上来说,应该是用计算机控制的多路数据自动检测或巡回检测,并且能够对数据实行存储、处理、分析计算以及从检测的数据中提取可用的信息,供显示、记录、打印或描绘的系统。 数据采集系统一般由数据输入通道,数据存储与管理,数据处理,数据输出及显示这五个部分组成。输入通道要实现对被测对象的检测,采样和信号转换等工作。4数据存储与管理要用存储器把采集到的数据存储起来,建立相应的数据库,并进行管理和调用。数据处理就是从采集到的原始数据中,删除有关干扰噪声,无关信息和必要的信息,提取出反映被测对象特征的重要信息。1另外,就是对数据进行统计分析,以便于检索;或者把数据恢复成原来物理量的形式,以可输出的形态在输出设备上输出,例如打印,显示,绘图等。数据输出及显示就是把数据以适当的形式进行输出和显示。 接下来本文将论述一个简单的数据采集系统的制作过程。1研究的背景及意义1.1 数据采集技术的发展1.1.1数据采集系统的概念近年来,信息这个词已经广泛用于生活的各个领域,例如经济,商品信息,市场信息,科技信息等这样的词,我们经常都可以听到。所谓的信息就是数据加工后得到的,对于某个目的来说有用的知识。数据既是对于课题属性的记录。现代工业控制,自动检测技术及信号处理中数据是指现场采集来的电压,电流,压力,物位,温度和角度等信号处理和工业自动化等过程中。在微型计算机应用于智能化仪器仪表,信号处理和工业自动化等过程中,都存在着模拟量与控制问题既将温度,压力,流量,唯一及角度等模拟量转换为数字信号,再收集到微机上进一步以显示,处理,记录和传输这个过程既称“数据采集”。相应的系统称为数据采集系统。科学技术的发展己在速度,分辨率,精度,接口能力及抗干扰能力等方面向现代化的数据集系统提出了越来越高的要求。71.1.2数据采集系统的构成 一般来讲,一个典型的数据采集系统应该具备如下三部分:1数据采集器包括多路开关MUX,测量放大器IA,采样保持器及模数转换器ADC等。可将多个现场模拟信号逐个采样在量化成数字信号后送往微型计算机(单片机)。典型的数据采集系统的框架图如1-1所示。2微机接口电路 用来传输数据采集系统运行所需要的数据,状态信息以及控制信号等。3数模转换器(D/A CONVERTER) 将微机输出的数字信号再转换为模拟信号,以实现系统要求的显示,记录与控制任务。人们将包含模数转换器和数模转换器的数据采集系统也成为模拟输入与输出系统。实际上,可以从数字信号处理的观点来解释数据采集的过程:输入的模拟信号(时间,幅值均在连续范围内取值)首先经过一个连续时间的预采样滤波器,由采样器每个T秒读出一次数据,再有ADC转化为二进制数码,既微机可接受的数字信号。信号的采样脉冲应做的很窄,一便在脉冲空余时间可以进行多路服用。在微机输出端,利用数模转换器,可将数字信号再转换为模拟信号。在此转换的过程中,二进制数首先转换为连续时间脉冲。脉冲之间空隙则利用:“再建滤波器”填充恢复平滑。1.1.3数据采集系统的种类及特点 迄今为止,工业上使用的数据采集系统大致可分三种:567(1)基于通用微型计算机(如PC机)的数据采集系统。这种系统主要功能是将采集来的信号通过外部的采样和A/D转换的数字信号通过接口电路送入微机内进行处理,然后再显示处理结果或经过D/A转换输出。它主要有以下几个特点:系统较强的软,硬件支持。通用微型计算机系统所有的软,硬件资源都可以用来支持系统进行工作;具有自开发能力;系统的软硬件的应用/配置比较小,系统的成本较高,但二次开发时,软硬件扩展能力交好;在工业环境中运行的可靠性差,对安放的环境要求较高;程序在RAM中运行,易受外界干扰。(2) 基于单片机的数据采集系统。它是由单片机及其一些外围芯片构成的数据采集系统,是进年来微型技术快速发展的结果,它的具有如下的特点:系统不具有自主开发能力。因此,系统的硬件开发必须借助开发工具;系统的软硬件设计与配置规模都是以满足数据采集系统功能要求为原则,因此系统的软硬件应用/配制比较接近1,具有最佳的性价比;系统的软件一般都有应用程序;系统的可靠性好,使用方便,应用程序在ROM中运行不会以外界的干扰而破坏,而且上电后系统立刻键入用户状态。(3) 基于DSP数字信号微处理器的数据采集系统 DSP数字信号微处理器从理论上而言就是一种单片机的形式,常用的数字信号吃力芯片有两种类型,一种是专用DSP芯片,一种是通用DSP芯片。基于DSP数字信号微处理器的数据采集系统的特点如下:精度高,灵活性好,可靠性好,容易集成,分时复用等,但同时价格不菲。 1.1.4数据采集系统的发展趋势 随着微电子技术的一系列成就以及微型计算机的广泛应用,不仅为数据采集系统的应用开拓了广泛的前景,也对数据采集技术的发展产生了深刻的影响,数据采集系统的发展趋势主要表现在以下几个方面:5 1 新型快速,高分辨率的数据转换不断涌现,大大提高了数据采集系统的性能2 高性能的单片机的问世和各种数字信号处理器的涌现,进一步推动了数据采集系统的广泛应用。3 新一代的系统编程技术ISP的推出,必将对今后数据采集系统的发展昌盛深远的影响 4 与微型机配套的数据采集不断的大量问世,大大方便了数据采集系统在各个领域里的应用并有利于促进数据采集系统技术进一步的发展。 5 分布式数据采集是数据采集系统发展的一个重要趋势1.2 单片机发展 自从1971 年微型计算机问世以来,随着大规模集成电路技术的不断进步,微型机主要向两个方向发展:一个向高速度,高性能的高档微型计算机方向发展。一个向稳定可靠,小而廉价的单片机方向发展。所谓的单片机,就是把中央处理器CPU、只读存储器ROM、定时/计数器以及I/O 接口电路等集成在一块集成电路芯片上的微型计算机。从组成和功能上看,它具有微型计算机的含义。电子技术和微型计算机的迅速发展,促进微型计算机测量和控制技术的迅速发展和广泛应用,单片机(单片微型计算机)的应用已经渗透到国民经济的各个部门和领域,如国防技术、航空航天、化工等产业领域;电梯、电冰箱、洗衣机等家用电器的模糊控制;以及智能小区的自动报警系统等。单片机的出现和发展,引起了仪器仪表结构的根本变革。以单片机为主体,取代传统的仪器仪表的常规测量电子线路,很容易地将计算机技术与测量控制技术结合在一起,组成新一代的所谓“智能化测量控制系统”。(一)单片机技术的特点单片机由于将CPU、内存和一些必要的接口集成到一个芯片上,并且面向控制功能将结构作了一定的优化,所以它有一般芯片不具有的特点:1. 体积小、重量轻;2. 电源单一、功耗低;3. 功能强、价格低;4. 全部集成在一块芯片上,布线短、合理;5. 数据大部分在单片机内传送、运行速度快,抗干扰能力强,可靠性高。(二) 单片机技术的应用单片机的应用领域非常广泛,包括:(1)智能产品:单片机与传统的机械产品结合,使传统机械产品结构简化、控制智能化,构成新一代的机电一体化的产品;(2)智能仪表:用单片机改造原有的测量、控制仪表,能使仪表数字化、智能化、多功能化、综合化,而测量仪表中的误差修正、线性化等问题也迎刃而解;(3)测控系统:用单片机可以设计各种工业控制系统、环境控制系统、数据控制系统;(4)数控型控制机:在目前数字控制系统的简易控制机中,采用单片机可提高可靠性,增强其功能,降低成本,数控型控制机采用单片机后可以改变其结构模式,例如使控制机与伺服控制分开,用单片机构成步进电机控制器可减轻数控型控制机的负担;(5)智能接口:微电脑系统,特别是较大型的工业测控系统中,除外围装置(打印机、键盘、磁盘、CRT)外,还有许多外部通信、采集、多路分配管理、驱动控制等接口。这些外围装置与接口如果完全由主机进行管理,势必造成主机的负担过重,降低执行速度,如果采用单片机进行接口的控制与管理,单片机与主机可并行工作,大大地提高系统的执行速度,如大型数据采集系统、通信接口等都可以采用单片机。2. 方案论证及选择2.1 系统要求与功能设计数据采集系统的整体设计思想是单片机通过接口电路,控制A/ D 转换器,由这个转换器不断地采集一个可调节的模拟电压量,将采集到的电压转换成对应的数字量,单片机将其读入CPU 内。然后通过显示器把单片机处理过的数据显示出来。本系统主要由单片机、A/D转换器、显示器等部分组成,从而实现对信号的采集、处理、显示,工作的功能。原理框图如下图(图2-1)所示。输入模拟信号A/D转换单片机控制的检测系 统显示器图2.1数据采集采集电路原理框图2.2 系统设计原则、方案论证及芯片选取顺应数据采集系统的发展,本着拓宽系统功能,使用更少的元器件,降低系统功耗及使系统更加可靠为目标设计一款使用器件最少的数据采集系统。依照上述原则,接下来讨论芯片的选取以及方案论证。2.2.1芯片选取1)单片机选取 由于本系统中单片机处理数据的要求不高,并且单片机和转换器之间的接口电路不复杂,所以选用了一片MCS 51 系列的89C51 单片机,它结构精简,价格低廉,指令系统有111 条指令组成。2)A/D转换器的选取1.转换时间的选择转换速度是指完成一次A/D转换所需时间的倒数,是一个很重要的指标。A/D转换器型号不同,转换速度差别很大。通常,8位逐次比较式ADC的转换时间为100us左右。由于本系统的控制时间允许,可选8位逐次比较式A/D转换器。2.ADC位数的选择 A/D转换器的位数决定着信号采集的精度和分辨率。10对于该8个通道的输入信号,8位A/D转换器,其精度为: (2-2)输入为05V时,分辨率为 (2-3)A/D转换器的满量程值 ADC的二进制位数量化误差为 (2-4)ADC0809是TI公司生产的8位逐次逼近式模数转换器,包括一个8位的逼近型的ADC部分,并提供一个8通道的模拟多路开关和联合寻址逻辑,为模拟通道的设计提供了很大的方便。3)显示器的选取 因为系统对显示的要求不高,可以选择LED作为显示器。2.2.2 方案论证1)信号采集分析被测电压为05V直流电压,可通过电位器调节产生。待测量一般不能直接被转换成数字量,通常要进行放大、特性补偿、滤波等环节的预处理。被测信号往往因为幅值较小,而且可能还含有多余的高频分量等原因,不能直接送给A/D转换器,需对其进行必要的处理,即信号调理。如对信号进行放大、衰减、滤波等。通常希望输入到A/D转换器的信号能接近A/D转换器的满量程以保证转换精度,因此在直流电流电源输出端与A/D转换器之间应接入放大器以满足要求。本题要求中的被测量为05V直流信号,由于输出电压比较大,满足A/D转换输入的要求,故可省去放大器,而将电源输出直接连接至A/D转换器输入端。ADC0809是一个8通道的转换器,其管脚ADDA 、ADDB 、ADDC为通道地址线,用于选择通道。其通道寻址如下表所示。由于本题没有具体要求,可以选择单通道采集,既ADDA 、ADDB 、ADDC全部接地,这样模拟信号总是保持从IN0进入。表2.5 ADC0809通道地址选择表ADDC ADDB ADDA选择的通道 0 0 0 IN0 0 0 1 IN1 0 1 0 IN2 0 1 1 IN31 0 0 IN41 0 1 IN51 1 0 IN61 1 1 IN7 2)单片机系统分析 1.复位电路单片机在开机时都需要复位,以便中央处理器CPU以及其他功能部件都处于一个确定的初始状态,并从这个状态开始工作。51的RST引脚是复位信号的输入端。复位电平是高电平有效,持续时间要有24个时钟周期以上。方案一:上电复位电路上电瞬间,RST端的的电位与Vcc相同,随着电容的逐步充电,充电电流减小,RST电位逐渐下降。上电复位所需的最短时间是振荡器建立时间加上二个机器周期,在这段时间里,振荡建立时间不超过10ms。复位电路的典型参数为:C取10uF,R取8.2k,故时间常数=RC=10108.210=82ms以满足要求。图2.6上电复位方案二:开关复位电路典型的上电外部复位电路是既具有上电复位又具有外部复位电路,上电瞬间,C与Rx构成充电电路,RST引脚出现正脉冲,只要RST保持足够的高电平,就能使单片机复位。一般取C=22uF,R=200,Rx=1k,此时=2210110=22ms当按下按钮,RST出现4.2V时,使单片机复位。图2.7开关复位2.振荡源在MCS-51内部有一个用于构成振荡器的高增益反相放大器。引脚XTAL1(19)、XTAL2(18)分别是此放大器的输入端和输出端。方案一:内部方式与作为反馈元件的片外晶体或陶瓷谐振器一起组成一个自激振荡器。方案二:外部方式外部振荡器信号的接法与芯片类型有关。CMOS工艺的MCU其XTAL1端接外部时钟信号,XTAL2端可悬空。HMOS工艺的MCU则XTAL2端接外部时钟信号,XTAL1端须接地。由于ADC0809没有内部时钟,必须由外部提供,其范围为101280kHz,典型时钟频率为640kHz。在本系统中由单片机的ALE提供,ALE信号频率和晶振的频率有关,为其1/6。如果选择12M晶振还要连接一个分频器,而使电路复杂化。本系统中单片机时钟频率为3.596MHz,ALE管脚的输出品率约为600KHz。3)显示器分析 缓慢变化信号和直流信号,要求用数码管适时地进行十进制显示,由于精度要达到0.01V,所以这里用3只LED数码显示器来表示该十进制数。1译码方法用单片机驱动LED数码管有很多方法,按显示方式分,有静态显示和动态(扫描)显示,按译码方式可分硬件译码和软件译码之分。方案一:硬件译码硬件译码就是显示的段码完全由硬件完成,CPU只要送出标准的BCD码即可,硬件接线有一定标准。方案二:软件译码 软件译码是用软件来完成硬件的功能,接线灵活,显示段码完全由软件来处理,是目前常用的显示驱动方式。本着拓宽系统功能,使用更少的元器件这个思想,我选择软件译码的方式。2显示方法 在该单片机系统中,使用7段LED显示器构成3位显示器,段选线控制显示的字符,位选线控制显示位的亮或暗。方案一:静态显示静态显示,显示驱动电路具有输出锁存功能,单片机将所要显示的数据送出后就不用再管,直到下一次显示数据需要更新时再传送一次数据。编程容易,管理简单,显示亮度高,显示数据稳定,占用很少的CPU时间。但引线多,线路复杂,硬件成本高。方案二:动态显示动态显示需要CPU时刻对显示器件进行数据刷新,显示数据会有闪烁感,占用的CPU时间多。这两种显示方式各有利弊;静态显示虽然数据稳定,占用很少的CPU时间,但每个显示单元都需要单独的显示驱动电路,使用的硬件较多;动态显示虽然有闪烁感,占用的CPU时间多,但使用的硬件少,能节省线路板空间。当显示装置中有多个多段LED时,通常采用动态扫描驱动电路,节省开销,简化电路。3. 硬件电路设计3.1 数据采集系统电路设计3.1.1 A/D转换原理 1.模/数转换器采样/保持电路输出的信号送至A/D转换器,A/D转换器是模拟输入通道的关键电路。由于输入信号变化的速度不同,系统对分辨率、精度、转换速率及成本的要求也不同,因此,A/D转换器的种类也较多。早期的采样/保持电路和A/D转换电路需要数据系统设计人员自行设计,目前普遍采用单片集成电路,有的单片A/D转换器内部还包含有采样/保持电路、基准电源和接口电路,这为系统设计提供了较大方便。A/D转换器的结果输出给计算机,有的采用并行码输出,有的则采用串行码输出。使用串行码输出结果的方式对长距离传输和需要光电隔离的场合较为有利。2.数据采集与分析系统的主要性能指标数据采集系统的性能要求与具体应用目的和应用环境有密切关系,对应不同的应用情况往往有不同的要求。下面是比较常用的几个指标及含义。1).系统分辨率系统分辨率是指数据采集系统可以分辨的输入信号的最小变化量。通常可以使用以下几种方法表示系统分辨率:使用系统所采用的A/D转换器的位数表示系统分辨率;使用最低有效位值(LSB)占系统满度值的百分比表示系统分辨率;使用系统可分辨的实际电压数值表示系统分辨率;使用满度值可以分的级数表示系统分辨率。2).系统精度系统精度是指当系统工作在额定采集速率下,整个数据采集系统所能达到的转换精度。A/D转换器的精度是系统精度的极限值。3).采集速率采集速率又称为系统通过速率或吞吐率,是指在满足系统精度指标的前提下,系统对输入的模拟信号在单位时间内所能完成的采集次数,或者说是系统每个通道、每秒钟可采集的有效数据的数量。4).动态范围动态范围是指某个确定的物理量的变化范围。信号的动态范围是指信号的最大幅值和最小幅值之比的分贝数。数据采集系统的动态范围通常定义为所允许输入的最大幅值和最小幅值之比的分贝数。5).非线性失真非线性失真也称谐波失真。当给系统输入一个频率为f的正弦波时,其输出中出现很多频率为kf(k为正整数)的新的频率分量,这种现象称为非线性失真。3.A/D转换原理A/D转换的通常方法有:计数式A/D转换、逐次逼近型A/D转换、双积分式A/D转换、并行A/D转换和串行A/D转换等。在这些转换方式中,计数式A/D转换线路比较简单,但转换速率比较慢,因此现在很少应用。双积分式A/D转换精度高,多用于数据采集系统及精度要求比较高的场合。并行A/D转换和串行A/D转换速度快。逐次逼近型A/D转换具有较高的转换速度,又有较好的转换精度,是目前应用最多的一种A/D转换。逐次逼近型A/D转换器的原理如下图所示。逐次逼近型A/D转换的方法是用一系列的基准电压同输入电压进行比较,以从高位到低位逐位确定转换后数据的个位是1还是0。逐次逼近型A/D转换器由电压比较器、D/A转换器、控制逻辑电路、逐次逼近寄存器和输出缓冲寄存器组成。在进行逐次逼近转换时,首先将最高位置1,这就相当于取最大电压的1/2与输入电压进行比较,如果搜索值在最大允许电压的1/2范围内,那么最高位置0,此后次高位置1,相当于在1/2范围中再做对半搜索。如果搜索值超过最大允许电压的1/2范围,那么最高位和次高位均为1,这相当于在另一个1/2范围中再作对半搜索。因此,逐次逼近法也称为二分搜索法或多半搜索法。下图是逐次逼近A/D转换器原理图:图3.1逐次逼近A/D转换器原理4.A/D转换器的性能指标分辨率分辨率分辨率是相应于最低二进位(LSB)的模拟量值。它规定为A/D转换器能够区分的模拟量的最小变化值。因为能够分辨的模拟量值取决于二进制位数,因此通常用位数表示分辨率,如4位、8位、12位等。转换时间A/D转换时间是指从发出启动转换命令到转换结束,得到稳定的数字输出量为止的时间。量化误差A/D转换是将连续的模拟量转化为离散的数字量。对一定范围连续变化的模拟量只能反映同一个数字量。A/D转换器总存在1/2LSB的量化误差,这个误差是量化过程中不可避免的。精度精度量化误差和附加量化误差之和。A/D转换器除了量化误差外,还有其他因素引起的误差,如非线性引起的误差,对这种附加误差的总和,称总不可调误差,实际上就是A/D调整到最精确情况下还存在的附加误差。3.1.2 AD转换器ADC0809简介在此系统中,A/D转换部分我们采用CMOS单片型逐次逼近式AD转换器ADC0809。a.主要特性1)8路8位AD转换器,即分辨率8位;2)具有转换起停控制端;3)转换时间为100s;4)单个5V电源供电;5)模拟输入电压范围05V,不需零点和满刻度校准;6)工作温度范围为-4085摄氏度;7)低功耗,约15mW。 b.ADC0809内部结构ADC0809是CMOS单片型逐次逼近式AD转换器,内部结构如下图所示,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型DA转换器、逐次逼近寄存器、三态输出锁存器等其它一些电路组成。因此,ADC0809可处理8路模拟量输入,且有三态输出能力,既可与各种微处理器相连,也可单独工作。输入输出与TTL兼容。 ADC0809是CMOS单片8通道A/D转换器,采用双列直插式28引脚封装。它主要由逐次逼近式A/D转换器、8位模拟开关、三态输出数据锁存器、以及地址锁存与译码等组成。ADC0809的主要特征是:可直接与微型机系统相连,不需要另加接口逻辑,也可以单独使用;具有锁存控制的8路模拟开关,可以输入8个模拟信号;分辨率为8位;输入输出引脚与TTL电路兼容;转换时间100S。当输入模拟电压范围在05V时,可使用+5V电源。ADC0809芯片是最常用的8位模数转换器。 它的模数转换原理采用逐次逼进型,芯片由单个5V电源供电,可以分时对8路输入模拟量进行AD转换,典型的AD转换时间为100微妙左右。在同类型产品中,ADC0809模数转换器的分辨率、转换速度和价位都属于居中位置。内部逻辑结构,如图所示。EOCOC149GNDVCCUREF(-)UREF(+)CLK1526IN0IN1IN28位模拟开关8位A/D转换电路三端数据锁存器地址锁存与译码IN3IN4IN5IN6IN72728123451714818192021D0D1D2D3D4D5D6D722ALECBA2324251516121067START图3.2 ADC0809内部结构框图 c.ADC0809外部特性ADC0809芯片有28条引脚,采用双列直插式封装,如图1.9所示。下面说明各引脚功能。D7D0:8位数字量输出,AD转换结果。IN0IN7:8路模拟电量输入,可以是:05V或者5V5V或者10V+10V。+VREF:正极性参考电源。VREF:负极性参考电源。START:启动AD转换控制输入,高电平有效。CLK:外部输入的工作时钟,典型频率为640KHz。ALE:地址锁存控制输入,高电平开启接收3位地址码,低电平锁存地址。CBA:3位地址输入,其8个地址值分别选中8路输入模拟量IN0IN7之一进行模数转换。C是高位地址,A是最低位地址。OE:数字量输出使能控制,输入高有效,输出AD转换结果D7D0。EOC:模数转换状态输出。当模数转换未完成时,EOC输出低电平;当模数转换完成时,EOC输出高电平。EOC输出信号可以作为中断请求或者查询控制。Vcc:芯片工作电源5V。GND:芯片接地端。3.1.3 AT89C51单片机简介 (见参考文献)3.1.4ADC0809与单片机接口(用Proteus软件绘制)图3.3 ADC0809与AT89C5151单片机的接口图3.4 ADC0809转换工作时序ADC0809的工作过程是:首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动 AD转换,之后EOC输出信号变低,指示转换正在进行。直到AD转换完成,EOC变为高电平,指示AD转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平 时,输出三态门打开,转换结果的数字量输出到数据总线上。其转换工作时序如图3-7所示。在ADC0809和CPU之间传输数据有三种方法:延时等待法、查询法和中断法。a.延时等待法延时等待法是利用CPU执行一条输出指令,启动ADC转换,然后CPU执行延时程序。延时时间大于所选用的ADC芯片转换时间,延时结束,CPU执行输入指令,打开三态门获取ADC转换好的数据。b.查询法查询法是由CPU来检查EOC信号。当CPU启动ADC芯片开始转换后,再通过状态端口读取EOC信号,检查ADC是否转换结束。若转换结束,则读取转换结果,否则继续查询。c.中断法当ADC转换结束,由EOC信号上升沿通过中断控制逻辑向CPU发出中断请求,CPU响应中断在服务程序中读出结果。我选择查询方式,这样可以简化电路,缩短程序。本设计选用IN0作为模拟量输入通道,则将ADC0809的A、B、C三条地址线均置底电平。转化启动信号START接到AT89C51的P2.0口,转换结束状态信号EOC接P3.7口,输出允许信号OE接P3.6口,地址锁存允许信号ALE接P3.3口,由于ADC0809内部没有时钟电路,只能由单片机的ALE提供。因ADC0809的典型转换频率为640KHz,ALE信号频率与晶振频率有关,如果晶振频率去3.5795MHz,则ALE的频率约为600MHz。由于转换精度要求不高,可将校正电压接+5V。通过软件编程给地址锁存允许信号ALE一个上跳变,使A、B、C地址状态送入地址锁存器中,给START一个上跳沿是内部寄存器清0,再给其一个下跳沿,开始进行A/D转换,转换时用最高位(1/2满量程值)与输入电压进行比较。如果输入电压大于最高位,则该位的寄存器(称为逐位逼近寄存器SAR)导通,输出“1”电平。接着用次高位与输入电压进行比较,如输入电压低于最高位和次高位之和,则该位截止、输出“0”电平。如果次高位加上最高位后仍低于输入电压,则该位的逐位逼近寄存器仍然输出“1”电平。这个逐位比较的过程一直进行到最低位、数字输出代码逼近模拟输入量为止。在A/D转换期间,START保持低电平。然后判断转换结束状态信号EOC是否为1,为1则将转换好的数据经过ADC0809的8个数据口送到单片机的P0口,作为单片机的输入信号。3.2 LED显示部分设计显示部分主要是利用3个数码管通过软件译码和动态显示的形式与单片机相连,这样即可以省去了一部分元器件也可以拓宽系统功能。选择单片机的P1口为数据的输出口,将3个数码管的段选码串联以后接到P1口,单片机的P2.5、P2.6、P2.7分别作为显示数据的个位、十分位、百分位的位选码信号的输出口。由于数码管选择的是共阴的,所以只有在P2.5、P2.6、P2.7都为0时才可以分别导通。(下图用Proteus软件绘制)图3.5 LED显示器与单片机接口LED极限参数的意义:(1)允许功耗Pm:允许加于LED两端正向直流电压与流过它的电流之积的最大值。超过此值,LED发热、损坏。(2)最大正向直流电流IFm:允许加的最大的正向直流电流。超过此值可损坏二极管。 (3)最大反向电压VRm:所允许加的最大反向电压。超过此值,发光二极管可能被击穿损坏。 (4)工作环境Topm:发光二极管可正常工作的环境温度范围。低于或高于此温度范围,发光二极管将不能正常工作,效率大大降低。 一般LED的工作电流在十几mA至几十mA,而低电流LED的工作电流在2mA以下(亮度与普通发光管相同)。6SQ博客空间%Mp/YLV6SQ博客空间Zv yP8由于发光二极管具有最大正向电流IFm、最大反向电压VRm的限制,使用时,应保证不超过此值。为安全起见,实际电流IF应在0.6IFm以下。我选用的共阴极数码管是一个低电流的(最小驱动电流是微安),所以驱动电流不能超过毫安但是也不能小于微安。由于单片机的驱动能力不是很好,在单片机和数码管连接的的时候,需要一个上拉排阻来辅助驱动,就是提供电流。单片机的输出电流很小一般就是几十微安,考虑到数码管的最大正向电流,在电压是的时候阻排应选左右的电阻最为适宜。当排阻小于时数码管将被烧毁。4. 软件设计4.1A/D转换程序设计开始 定义A/D转换缓冲区首地址置通道数启动A/D转换转换完?将转换结果暂存单片机的累加器A返回NY 图4.1A/D转换子程序流程图查询方式使用EOC信号作为数据输出的判断标志,若EOC为1,则将转换结果送到单片机的P0口,若为0,继续进行A/D转换。4.2显示部分程序设计该单片机系统中,被测量经过A/D转换,均统一为0255二进制码,因此要把A/D转换的数码X变换成被测量的实际数值。开始数值转换得十分位存入21HR0地址减1取数至22H数值转换得个位数置取数地址指针R0的初值置通道号存储单元R0地址再减1数值转换得百分位存入20H返回图4.2数值转换子程序流程图将内部RAM中20H22H单元中的3个分离BCD码,译码后从左至右依次显示出来,编制的程序如下:开始返回指向数值初始地址口取位选码指定显示位指向R0取显示字符查七段码段选码从P1口送出调用1ms延时子程准备显示下一位位选YN3位显示完毕?图4.3显示子程序流程图4.3主程序设计在此程序中包括了一个主程序和三个子程序,三个子程序前面已经介绍,下面来介绍主程序的设计。 单片机初始化调用A/D转换子程序调用数制转换子程序开始调用显示子程序返回图4.4主程序流程图 5. 系统调试及数据处理5.1 调试方法由于我所做一种软件驱动硬件实现检测目的,所以系统调试时先将软件和硬件分离开来,分别进行测试。软件进行仿真,检测软件的逻辑性是否正确,然后检测指令是否符合设计要求。最后利用Proteus(ISIS)软件进行整体防真,相当于用软件模拟一个硬件进行防真。得到正确结果以后在把程序下载到单片机上进行实物电路的整体调试。对于硬件电路,由于在防真时已经得到正确的结果。所以在连接实物电路的时候,不会出现理论上的错误。利用万用表检测电路连接是否正常,然后分级检测是否每一环节都能正确输出。为了验证A/D转换器是否工作,我在ADC0809的输出端加几个发光二级管。按照设计及原理,如果输入是+5V的话,5V对应的是FF,所以输出都为1,发光二级管全部都亮,如果输出低电平的话输出为0显示值是0,发光二级管全部熄灭。然后调节电位器,观察发光二级管的变化。再调试过程中发光二级管有亮灭的交替,从以上结果可以看出,A/D转换部分工作正常。在验证显示部分的时候,由于编写程序的时候以把ADC0809转换过的二进制数通过单片机进行译码,转换成了实时电压值,所以可以直接观察LED来验证显示部分,得到以下数据。表5.1 实际电压与显示电压对照表显示数值 0.000.090.851.001.331.892.002.553.003.664.004.024.045.00实际数值 0.020.080.870.991.351.892.012.562.983.643.994.004.014.985.2 测试结果及分析通过对数据的测量发现,结果有误差。一部分是芯片本身自带的误差,主要是ADC0809本身的量化误差,一个是人为误差,是在编程时造成的。下面进行分析:量化误差有两种表示形式:分别是相对误差和绝对误差。前面已经介绍过,现在只给出数值,相对误差:0.39% ;绝对误差:0.0098V。 在编程时,首先先把ADC0809转换成的二进制码转换为BCD码。由于系统要求对电压进行实时显示,所以在编程时采用除以51的办法,因为255对应的是正5V。当第一次除以51时,得到个位数以后的余数,在用它的到十分位时要乘以一个10,(这个平常的数学运算一样,这个不难理解)由于两个8位的无符号的二进制数相乘得到的是16位数,单片机的累加器A、B只能放8位的二进制数。这就涉及到一个溢出的问题。当余数乘10以后大于255的时候,溢出标志位置1(CY=1),然后用低8位的数除以51,然后程序判断溢出标志位是否位1,为1商加5,为0继续向下执行。问题就出在商加5的问题上,商加5是由于益处的部分也是十分位的部分,但是溢出的部分是256,应该是商加5还余1。这个余1就影响到下一位的计算。误差就是1/51=0.019V。 通过两种误差的计算可以看出,本系统的电压的最小阶梯是0.02V,与上表数据相符,也符合要求,此系统基本满足要求。6. 结论与展望 6.1结论1 由于能力问题,本设计存在以下缺点:1)系统每完成测试一次后要用复位键进行全面复位,才能清除存储空间中的值,以免影响测试结果;2)系统通过提前设定选择测量通道,而不能随测随选;3)数码管的亮、暗程度不能调节;解决以上问题主要是优化软件设计:1)在程序中编写一专门清除单片机存储空间的子程序;2)用C语言编写程序,可以解决编程中函数的问题,那么设计将进一步简化;3)选择合适的排阻,最好是可以调节的。2 本设计中存在的不足之处:信号采集过程中,被测量一般由传感器供给,常为微弱信号,需要对其进行适当的调整。由于此处输入信号满足A/D转换器的输入要求,所以本文并没有详细讨论。但在实际工程设计中必不可少。信号调理的任务就是将被测对象的输出信号变换成计算机要求的输入信号。信号调理包括:阻抗匹配、放大电路、隔离电路、滤波等。a.阻抗匹配放大电路与传感器之间往往存在阻抗不匹配的现象,信号要进入A/D转换器也存在阻抗匹配问题,阻抗不匹配会使信号在传输过程中严重畸变,导致严重检测误差,调理过程中必须十分注意阻抗匹配问题,一般阻抗匹配可以由运放组成的跟随器完成。b.信号放大电路信号放大电路是信号调理电路的核心,一般传感器输出的物理信号量幅值很小,需要通过放大调理电路来增加分辨率和敏感性,将输入信号放大为A/D转换所需要的电压范围,为了获得尽可能高的精度,应将输入信号放大至与ADC量程相当的程度。c.信号隔离电路隔离是指使用变压器、光电耦合或电容耦合等方法在被测系统中与测试系统之间传输信号,避免直流的电流或电压的物理连接的一种手段。(1)数据采集系统所监测的设备可能会有高压瞬变现象,足以使计算机与数据采集板损坏,隔离可使传感器信号与计算机隔离开,使系统安全得到保障。(2)保证数据采集各个环节间不受地电位或共态电压差异的影响,从而影响测试精度,这是因为在采集信号时,都需要以“地”为基准,如果在两“地”之间存在电位差,就可能导致地环路产生,从而导致所采集的信号再现不准确,若这一电位差太大,可能危机测量系统的安全,利用隔离电路的信号模块可以消除地环路,并保证准确的采集信号。模拟信号的隔离比数字信号的隔离难度大的多,成本高,常用的方法有:采用线性光耦或两个特性几乎完全接近的普通光耦用特殊的电路实现,另外,直接采用具有隔离作用的仪表放大器也行。d.信号滤波:几乎所有的数据采集系统都会不同程度的受到来自电源线或机械设备的50Hz噪声干扰,因此大多数信号调理电路包含低通滤波器,最大限度的剔除50Hz或60Hz的噪声。交流信号(如振动)则往往需要防混淆滤波器,防混淆滤波器是一种低通滤波器,具有非常陡峭的截止频率,几乎可以将频率高于采集板输入信号带宽的信号全部剔除;若不除去,这些信号将会错误的显示为数据采集系统输入带宽内的信号。6.2展望单片机具有体积小、可靠性高、功能强、灵活方便等许多优点,广泛应用于现代工业的各个行业。随着单片机和微机技术的不断发展,由微机和单片机构成的数据采集系统已成为单片机技术发展的一个方向。它结合了单片机在实时数据采集和微机对图形处理、显示的优点。二者结合,使得单片机的应用已不仅仅局限于传统意义上的自动监测或控制,而形成了向以网络为核心的分布式多点系统发展的趋势。串口通信虽然传输速度较慢,但是由于简单易行,并且现有的微机都具备串行通信口,因而得到了广泛的应用。在本文研究的单片机数据采集系统中,利用串口实现了对单片机的通信控制,以及对单片机产生的波形占空比的控制。本系统可以采用AT89C51作为下位机,PC机作为上位机,二者通过RS-232串口接收或发送数据和指令。传输介质为二芯屏蔽电缆。RS-232信号和单片机串口信号的电平转换采用MAX232,它是具有双驱动器、双接收器的通信器接口电路,不需外接电容而进行倍压及电压极性转换,只需+5V供电,电源电流为5mA,传输率200kb/s。系统中PC机承担主控任务,负责该系统的通信参数设定、数据的采集处理及对单片机运行的控制。单片机接收PC机的指令,根据指令信息实现波形的发生和结束,并对波形的占空比进行实时调节。其通信协议为:采用RS-232异步通信方式,51单片机串行口共有4种工作方式,本文中采用单片机串口通信的方式1,该方式为8位异步串行通信方式,其波特率是可变的,1位起始位,8位数据位,1位停止位,无奇偶校验,若晶振频率为11.592MHz,取波特率为48000b/s。下位机按接收到的指令工作,若主控机发出无效或错误指令,将不作任何控制。下图就是单片给与PC机通信的电路图。图 6.1 与微机通信接口电路通过本次毕业设计,我系统的了解了一个完整是电子产品的制作过程。更重要的是在接到设计指标之后,自己如何去分析设计的重点和难点,先通过系统的分析,查阅资料,并选择元器件,既要尽可能的满足设计指标,然后搭建电路和编写软件,最后进行系统调试。设计不但要满足设计要求还要考虑系统的稳定性,同时还要考虑生产成本以及产品性能等。本次毕业设计并不只是毕业设计,它是对我大学四年来所学知识的一个综合考核。它与以前的课程设计不同的是,在设计和制作的过程中,我们都要依靠自己去完成,一步步摸索,遇到困难就查阅资料并把遇到的问题记录下来,查找原因、分析原因直到把问题解决,然后又遇到问题,又解决问题直到设计成功,对自己的毅力是一种考验也是对知识的一次全面学习,也是对合作精神的一次锻炼。由于本人水平有限,所做的设计在功能方面上还有很大的不足之处,论文也有不足的地方,希望老师给予指正。致谢我的毕业设计是在老师的悉心指导之下完成的,他能够亲临实验室,对我遇到的各种问题进行耐心的分析与讲解,帮助我理清设计思路,提出有效的改进方案。在他的指导下我受到了深深的启发,顺利的完成了设计要求。感谢他为我的毕业设计所做的一切。在设计和制作过程当中,林传涛和任红娇两位同学提出了自己的宝贵意见,这些意见和想法对我的毕业设计起了和很大的作用,在此我向他们表示感谢。同时系上实验室的各位老师也为毕业设计中的实验提供了各种条件和方便,没有他们的付出,毕业设计同样无法顺利完成,在这里我也向他们表示衷心的感谢。也感谢我所参考过的资料的作者们。看过他们的文章,我收益匪浅。使我的设计思路豁然开朗。经过这次设计,我各方面的能力都得到了很大的提高,比如实验水平、分析问题的能力、操作能力、合作精神等。再次,我要向在毕业设计给予我帮助的老

温馨提示

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

评论

0/150

提交评论