版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目 录第1章 前言1.1 数据采集技术介绍31.2通信技术介绍4第2章 单片机数据采集系统总体功能介绍和说明.62.1 系统实现的功能62.2 系统各部分的功能72.2.1 信号调理部分82.2.2 数据处理部分10第3章 单片机数据采集系统硬件设计143.1 主要芯片介绍143.1.1 8051ah的功能特点143.1.2 adc0809的功能特点183.1.3 ds12887的功能特点203.2 功能模块电路设计243.2.1 数据采集模块电路设计243.2.2 查询打印模块电路设计29第4章 单片机数据采集系统软件设计314.1单片机数据采集的分析与设计334.2单片机与pc通信的分析与
2、设计424.3查询,打印功能的实现46第5章 误差分析51第6章 结束语52致 谢53参考文献54附 录55基于单片机数据采集系统的设计摘 要:面对大量的数据,人工处理已远远无法满足时代的要求,依靠微电子技术来实现数据的采集、存储和显示,成为适应时代步伐的唯一有效捷径。本系统采用模数转换、微处理器、存储器等芯片来实现8路数据的采集,将采集的信号进行存储,按时间上传到上位机pc,通过不同模式的选择进行数据采集、查询、打印和显示等。在文中较系统的介绍了从模拟信号到数字信号的转换过程和讨论了转换过程中的技术参数等问题,在文中最后还进行了系统存在的一些误差分析。关键词:单片机,数据,采集,打印,查询,
3、上位机通信abstractkey words: signal chip micro-computer 、acquisition、pc-communcation第1章 前 言数据采集技术研究信息数据的采集、传输、存储、处理以及控制等,它是信息科学的一个重要分支。在智能仪器,信号处理以及工业自动化控制领域,都存在数据的测量与控制问题。将外部世界存在的温度、压力、流量、电流、电压、流速、开关量、位移以及角度等模拟量转换为数字信号,再将收集到的数据显示、处理、传输与记录的这一过程即称为“数据采集”,相应的系统即为数据采集系统(das)。数据采集技术已在雷达、通信、水声、遥感、地质勘探、振动工程、无损检
4、测、语声处理、智能仪器、工业自动控制以及生物医学工程等领域有着广的应用。随着科学和技术的需要,在速度、分辨率、精度、接口能力、软件设计以及抗干扰能力等方面向现代数据采集技术提出了越来越高的要求。可以预言:随着大规模集成电路技术与计算机科学技术的发展,数据采集技术的应用领域更为广阔20世纪90年代后期,各国的单片机和外围芯片大量涌入我国,各种开发工具和软件应有尽有,大大提高了我国单片机的应用水平。目前,单片机正在过程控制、数据采集、智能仪表、机电一体化、家用电器以及网络技术等领域中发挥着重要的控制作用。面对大量的数据,人工处理已远远无法满足时代的要求,依靠微电子技术来实现数据的采集、存储和显示、
5、查询,成为适应时代步伐的唯一有效的出路。设计以单片机为核心的数据采集、存储和显示、查询、打印系统,可以把传感器信号经过处理后,进行控制和存储传给上位机pc,以满足远程控制和无人工作站的建立。数据采集和自动控制技术广泛地渗透到化工、轻工、热工、电力、水力、能源、环保、航空、航天、机械制造和精密仪器等各个领域,需求广泛。一个数据采集系统通常可用两种方法实现,一种是利用传统的数据采集系统设计方法,另一种是利用现有的一些数据采集系统芯片(即处理器)为核心构成。对于传统的数据采集系统设,它的硬件一般由传感器、信号调理电路、多路开关、采样保持电路、模数转换电路、微处理器、存储器等组成。而对于利用数据采集芯
6、片的系统,由于芯片集成了ad转换、闪速电擦除存储器、定时计数器等电路,加上它的高转换速度和高精度,能大大降低系统开发时间和成本、缩小设备体积、提高系统可靠性和电气性能指标,较适合于设计低功耗、便携式的数据采集系统。在一个数据采集系统中ad转换又是十分重要的环节。它的精度会直接影响到整个采集系统的精度。本文将利用传统的数据采集系统设计方法,以实现不同传感器信号的处理。用单片机来对系统进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高采集数据的技术指标,从而能够大大提高产品的质量和数量。第2章 单片机数据采集系统总体功能介绍和说明在检测系统中,各个组成部分是以信息流的过程来划
7、分的。检测时,首先获取被测量的信息,并通过信息的转换把获得的信息变换为电量,然后进行一系列的处理,再用指示仪或显示仪将信息输出,或由计算机对数据进行处理,最后把信息输送给执行机构。所以一个检测系统主要分为信息的获得、信息的转换、信息的处理和信息的输出等几个部分。2.1 系统实现的功能1、8路数据采集:可以进行8路05v的模拟电压进行循环采集,每路采集的8次,超出界限led显示报警,将采得的数据求平均。2、及时保存数据:对采集的数据按时间及时进行保存。3、数字实时显示:led将实时显示采集的数据,并且能够显示查询时输入的查询量和查询到的数据。4、可以将采集的数据及时上传到上位pc机功能;5、可按
8、时间查询历史数据,也很方便的打印出来2.2 系统各部分的功能要完成这些功能主要依靠传感器、信号处理电路、显示装置、数据处理装置和执行机构等。其具体组成框图如图 1 .2. 1 所示。 模 数转 换信号处理8051单片机rs-232串口键盘电路盘led显示模块串行微型打印机ds12887日历/时钟存 储 器传 感 器被检测的各种参数(温度、流量、压力、位移、速度等)由传感器变换成易于后续处理的电信号。由于传感器输出信号太弱或信号质量不高,应经过前端预处理电路进行放大、滤波等,然后经过数据采集系统转换成数字量,并通过接口送入存储器,经过单片机运算、变换处理后,由数据分配子系统和接口输出到执行机构,
9、由基本系统及其接口输出用于显示、记录、打印或绘制成各种图表、曲线等。此外,其他仪器仪表或系统通过通信子系统及接口完成相互之间的信息交换和互连。所以我们把微机自动检测系统也常称为计算机数据采集系统,或简称为数据采集系统。微机自动检测技术不仅能解决传统的检测技术不能或不易解决的问题,而且能简化电路、增加功能、提高精度和可靠性等,还能实现人脑的部分功能,使自动检测系统具有智能化,实现代替人工自动检测的目的,随着微机自动检测技术的不断发展,自动检测系统会变得更加智能化、多功能化。2.2.1 信号调理部分信号调理电路的主要作用就是把传感器输出的电学量变成具有一定功率的模拟电压信号或数字信号,以推动后级的
10、输出显示或记录设备、数据处理装置及执行机构。根据测量对象和显示方法的不同,信号处理电路可以是简单的传输电缆,也可以是由许多电子元件组成的数据采集卡,甚至包括计算机在内的装置。传感器前置放大滤波器多路模拟开关传感器前置放大滤波器传感器前置放大滤波器. . . . .(1)传感器接收被测量(如物理量、化学量、生物量等),然后才能将其变换为另一种与之有确定对应关系,并且容易测量的量(通常为电学量)。它是一种获得信息的重要手段,它所获得信息的正确与否,关系到整个检测系统的精度,因而在非电量检测系统中占有重要的地位。(2)从传感器过来的信号较小(常用热电偶的输出变化往往在几毫伏到几是毫伏之间,电阻应变片
11、输出电压的变化只有几个毫伏,人体生物电信号仅是微伏级)。因此需要加以放大才能满足大多数a/d转换器的满量程输入05v的要求。此外,某些传感器内阻比较大,输出功率较小,这样放大器还起阻抗变换器的作用来缓冲输入信号。由于各类传感器输出信号的情况各不相同,因此需要的放大器种类也很多。例如,为了减少输入信号的共模分量,就采用各种差分放大器、仪用放大器和隔离放大器;为了使不同数量级的输入电压都具有最佳变换,就产生了量程可以变换的程控放大器;为了减少放大器输入的漂移,就产生了斩波为零和激光修正的精密放大器。(3)传感器以及后续处理电路中的器件常会产生噪声,人为的发射源也可以通过各种耦合渠道使信号通道感染上
12、噪声,常见的工频信号就是人为干扰源。为了提高模拟输入信号的信噪比,常常需要使用滤波器对噪声信号进行一定的衰减。(4)在数据采集系统中,往往要对多个物理量进行采集,即所谓多路巡回检测,这可以通过多路模拟开关来实现,这样可以简化设计,降低成本。多路模拟开关可以分时选通多个通道中的某一路通道。因此,在多路模拟开关后的单元电路,如采样/保持电路、模/数转换电路以及处理电路等,只需要一套即可,这样可以节省成本和体积,但这仅适用于物理量变化比较缓慢、变化周期在数十至数百毫秒之间的情况下。因为这时可以使用普通的微秒级a/d转换器从容地分时处理这些信号。但当分时通道较多时,必须注意泄露及逻辑安排等问题,当信号
13、频率较高时,使用多路开关后,对a/d转换速率要求也随之上升。在数据通过率超过4050khz时,一般不宜使用分时的多路开关。模拟开关也可以根据需要安排在放大器之前,但当输入的信号电平较低时,需注意选择多路模拟开关的类型;若选用继承电路的模拟多路开关,由于它比干簧和继电器组成的多路模拟开关导通电阻大、泄露电流大,因而有较大的误差产生。所以要根据具体情况来选择多路模拟开关。2.2.2 数据处理部分s/ha/d单片机存储查询打印显示数据通信从传感器采集来的数据经过信号调理电路,信号做好了模数转换的准备。模拟信号要变成数字信号,首先要经过采样,采样保持器是快速拾取输入信号的子样脉冲,并保持幅值恒定,以提
14、高a/d转换器的转换精度,如果把采样保持电路放在模拟多路开关之前(每通道一个),这可实现对瞬时信号同时进行采样。数据采集的采样方式有两种选择:一为“实时采样”;一为“等效时间采样”。(1)实时采样:数据采集开始后,信号波形的第一个采样点即被采人并数字化,经过一个采样间隔后再采入第二个采样点,这样一直将整个信号波形数字化并存入存储器中。为了不丢失被采样信号所携带的信息,实时采样的采样频率应满足采样定理(香农定理)的要求,当采样频率不满足采样定理时将产生信号混叠现象,使采样后波形中增加了额外的低频成分造成失真,引起误差。在工程上采样频率应取被采样信号所含最高频率的两倍通常采用10-20倍 。实际测
15、量时信号往往会混入各种噪声,谐波成分丰富,频带很宽,智能仪表的采样速度很难达到采样定理的要求,这时就应在a / d 转换之前加入抗混叠模拟滤波器,滤掉多余的高频分量。除了“定时采样”(等间隔采样)外,“实时采样”通常使用“变步长采样”,即“等点采样”。这种方法不论被测信号频率如何,一个信号周期内均匀采样的点总数为n个。由于采样周期随被测信号周期变化,故通常称之为“变步长采样”。(2)“等效时间采样”技术要求信号波形是可以重复产生的。由于波形可以重复取得因此采样可以用较慢的速度进行,采集的样本可以是时序的(步进、步退、差额),也可以是随机的。这样就可以把许多采集的样本合成一个采样密度较高的波形。
16、评价智能仪表数据采集部分的主要技术指标有分辨率、精度、输人信号形式和信号电平、采集速度,抗干扰能力,设计时应根据被测变量的信号特性,仪表的整机技术要求,确定这些指标的具体数值。 采样保持电路输出的信号送至a/d转换器,a/d转换器是模拟输入通道的关键电路。由于输入信号变化的速度不同,系统对分辨率、精度、转换速率及成本的要求也不同。因此a/d转换器的种类也比较多。早期的采样保持电路和a/d转换电路需要数据采集系统设计人员自行设计,目前普遍采用单片集成电路,有的单片a/d转换器内部包括有采样保持电路、基准电源和接口电路,这为系统设计提供了较大方便。a/d转换器将结果输出给计算机,有的采用并行码输出
17、,有的则采用串行码输出。使用串行输出结果的方式对长距离传输和需要光电隔离的场合较为有利。模数转换器的任务在于把一个未知的连续的模拟输入信号(通常为电压)转换为数字信号,即微型计算机能接受的二进制数。以进一步用于处理、显示、记录、查询和传输。模拟输入信号的采样脉冲应做得很窄,以便在采样脉冲空余时间可以进行多路复用。这个多位数是二进制分数,代表这个未知输入电压vex与adc的满刻度电压vs.的比值,adc是微机数据采集系统的关键部件,它的性能往往直接影响整个系统的技术指标。本系统采用的adc0809采用的是逐次逼近式,此种转换器采用一种极有效的方案来改变比较器的参考输入,从而只需要n个时钟周期就能
18、完成n位转换。单片机系统是整个计算机数据采集系统的核心。单片机控制整个计算机数据采集系统的正常工作,并且把a/d转换器输出的结果读入到内存,进行必要的数据分析和数据处理。单片机还需要把数据分析和处理之后的结果写入存储器以备将来分析和使用,通常还需要把结果显示出来。数据采集系统的数据与机器时间是一一对应的,一个数据唯一的对应一个数据,这就方便了数据查询和显示。为了得到机器时间,本系统采用了ds12887芯片得到需要的机器时间。为了让系统便于操作,按照需要和设定模式进行运行,那就需要人机交互装置键盘。从键盘发出指令,进入不同的模式,实现不同的功能。测量的目的是使人们了解被测量的数值,所以必须有显示
19、装置。显示装置的主要作用就是使人们了解检测数值的大小或变化的过程。目前常用的显示方式有模拟显示、数字显示、图像显示三种方式。 ( l )模拟显示是利用指针对标尺的相对位置来表示被测量数值的大小,如毫伏表、毫安表等,其特点是读数方便、直观,结构简单,价格低廉,在检测系统中一直被大量使用。但这种显示方式的精度受标尺最小分度限制,而且读数时易引入主观误差。 ( 2 )数字显示是指用数字形式来显示测量值,目前大多采用 led 发光数码管或液晶显示屏等,如数字电压表。这类检测仪器还可附加打印机,打印记录测量数值,并易于计算机联机,使数据处理更加方便。 ( 3 )图像显示是指用屏幕显示( crt )读数或
20、被测参数变化的曲线,主要用于计算机自动检测系统中。如果被测量处于动态变化中,用一般的显示仪表读数就十分困难,这时可将输出信号送给计算机进行图像显示或送至记录仪,从而描绘出被测量随时间变化的曲线,并以之作为检测结果,供分析使用。本系统采用的是第二种方案,此方案设计简单,成本较低,实用于不同场所。第3章 单片机数据采集系统硬件设计 在整个系统中硬件是基础,也是系统设计的基础,硬件系统的建立才使系统有运算的可能,硬件的参数决定了系统的技术参数。本系统硬件包括数据采集模块、数据处理和存储模块。3.1 主要芯片介绍在系统设计中,硬件系统设计和软件系统设计两者相互渗透,不可分离。在硬件设计中尽量采用了功能
21、强大的芯片,以减化电路,提高系统电路的集成度和可靠性。功能强大的芯片可以代替若干普通芯片,随着生产工艺的提高,新型芯片的价格不断下降,体积不断缩小,具有很高的性价比,是硬件设计的首选。3.1.1 8051ah的功能特点mcs-51系列单片机是1980年intel公司推出的8位单片机系列,由于它良好的性价比,此后其他一些公司也相继研制并生产mcs-51系列单片机8051及其兼容芯片。因此,这个系列成为主流单片机。它主要特性如下:(1)具有两级中断优先处理能力,可管理5个中断源,且都有自动转入的中断入口地址;(2)内含定时器/计数器,工作方式可编程选择;(3)有32条i/o线,输入输出操作功能强,
22、可直接带外设;(4)布尔处理功能强,可扩展用途;(5)内部ram和寄存器有位寻址功能;(6)外部具有独立的64k程序存储空间和64k数据存储空间;(7)有全双工串行接口,波特率可编程设置;(8)有多种型号,且不同型号的内部程序存储器不同,用户可根据需要选用。管脚功能:p0.7p0.0:p0口是一个漏极开路型准双向i/o口。在访问外部存储器时,它是数据总线和地址总线低8位分时复用的接口:在eprom编程时,在接收指令字节;在验证程序时,输出指令字节,并要求外接上拉电阻。p1.7p1.0:p1口是带内部上拉电阻的8位双向i/o口,它是通用i/o端口。在eprom编程和程序验证时,它接受低8位地址。
23、p2.7p2.0:p2口是带内部上拉电阻的8位双向i/o口。在访问外部存储器时,它输出高8位地址;在对eprom编程和程序验证时,接受高8位地址。p3.7p3.0:p3口是带内部上拉电阻的8位双向i/o口,它是双功能i/o端口。除基本输入/输出功能外每个引脚还有专用功能,其专用引脚功能:p3.0:rxd串行数据接收p3.1:txd串行数据发送p3.2:int0外部中断0请求输入p3.3:int1外部中断1请求输入p3.4:t0定时器0外部计数脉冲输入p3.5:t1定时器1外部计数脉冲输入p3.6:wr外部数据存储器写信号p3.7:rd外部数据存储器读信号rst/vpd:复位引脚,这是一个双功能
24、引脚,复位/备用电源:复位功能rst:单片机的复位是靠外部电路实现的。在振荡信号正常运行情况下,只要rst引脚保持两个机器周期以上时间的高电平,系统复位。备用电源功能vpd:当vcc掉电时,在vcc下降到操作系统允许极限之前,rst/vpd引脚接上备用电源,向内部ram供电,这时系统处于一种低功耗方式。当vcc恢复时,备用电源仍然保持一定时间,以便完成复位操作,然后重新开始工作。xtal1和xtal2是mcs-51系列单片机的时钟引脚。两引脚连接于单片机内部的一个高增益反向放大器,用于与外部振荡源一起构成振荡电路。其中xtal1为该放大器的输入引脚,xtal2为该放大器的输出引脚。ale:地址
25、锁存信号,输出。给应用系统中的地址锁存器提供锁存控制信号,实现地址/数据分时复用。在每一个机器周期(movx指令除外)出现两个ale正脉冲,当ale为高电平时,地址锁存的输出随输入变化(这时p0口输出的是低8位地址信息);当ale有高电平变成低电平时,锁存器将地址锁定,即输出不再随输入变化(p0口可传送数据信息)。另外,ale信号还可以作为应用系统中频率要求较低的其他部件的时钟信号、计数信号等。prog:片内程序存储器编程脉冲,输入。对于eprom型单片机,在对片内程序存储器编程时,该引脚输入编程脉冲信号。:外部程序存储器读写信号,输出,低电平有效。由于mcs-51系列单片机外部程序和外部数据
26、存储空间是独立的,但地址是重叠的,因此除了在指令上加以区分外,控制信号也有所不同。 、是用于读/写数据存储器的,而是用于读程序代码的,他在应用系统中接程序存储器的读控制端。在访问外部程序存储器时,在每个机器周期,两次有效。:内、外程序存储器选择信号。当访问该地址范围的存储单元时,由于mcs-51系列单片机的片内程序存储器地址与片内程序是重叠的,所以用引脚电平来区分是访问内部程序存储器,还是访问外部程序存储器。当=“1”时选择访问单片机内部的程序存储器;当=“0”时选择访问外部的程序存储器。vpp:片内程序存储器编程电压。对于eprom型单片机,在对片内eprom编程时,vpp引脚输入21v的编
27、程电源电压。vcc:+5v工作电压。正常工作时vcc引脚接+5v电源电压。vss:接地端。正常工作时vss引脚接地。3.1.2 adc0809的功能特点adc0809数据采集元件是单片cmos器件,具有8位模/数转换器、8通道的多路开关以及和微处理器相兼容的控制逻辑,这个8位a / d 转换器使用逐位逼近作为转换技术。该转换器的主要特点是:具有一高阻抗斩波稳定比较器,带有模拟开关树的256r分压器、以及一逐位逼近寄存器, 8个通道的模拟开关可以直接访问8个单端信号中的任何一个。该器件取消了外部调零和满量程调整。锁存及译码的多路地址输人和锁存的ttl三态输出使该器件易于和微处理器接口。集许多a
28、/ d 转换技术于一体, adc0808和adc0809 的设计被优化,它们提供高速、高精度、最小温度相关性、极好的长期精度和可重复性以及最小功耗。这些特点使该器件非常适合于从过程和机器控制到消耗装置及自动化的应用。主要指标: 分辨率 8 位 线性误差士l / 2lsb单电源 5vdc低功耗 15mw 转换时间 100us 分辨率为1/ 28 0.39 %模拟电压转换范围是 0 - +5 v标准转换时间为100ms各引脚功能如下:in0in7:8路模拟量输入端。允许8路模拟量分时输入,共用一个a/d转换器。ale:地址锁存允许信号,输入,高电平有效。上升沿时锁存3位通道选择信号。start:启
29、动a/d转换信号,输入,高电平有效。上升沿时将转换器内部清零,下降沿时启动a/d转换。eoc:转换结束信号,输出,高电平有效。oe:输出允许信号,输入,高电平有效。该信号用来打开三态输出缓冲器,将a/d转换得到的8位数字量送到数据总线上。d0d7:8位数字量输出。d0为最低位,d7为最高位。由于有三态输出锁存,可与主机数据总线直接相连。clock:外部时钟脉冲输入端。当脉冲频率为640khz时,a/d转换时间为100ms。vr+,vr-:基准电压源正、负端。取决于被转换的模拟电压范围,通常vr+ = +5v dc,vr- = 0v dc。vcc:工作电源, +5vdc。gnd:电源地零点调整:
30、这是当输入电压是1 / 2lsb (满量程10.24v 时为20mv ) ,输出从11111111 变为 11111110 。在大多数情况下,可以在引脚5上接一1k电位器来实现。在引脚5和地之间接一475电阻是实现零点调整的最好近似。满量程调整:这是当输人电压是满量程1/2lsb ( 10.24v 量程时比满量程低60mv ,输出从0000000l 变为00000000。没有调整时,adc 0809的这个电压在士1/2lsb范围内,在大多数情况下,在引脚15上加上1k的电位器可实现这个调整。3.1.3 ds12887的功能特点 ds12887是美国达拉斯半导体公司最新推出的时钟芯片,采用cmo
31、s技术制成,把时钟芯片所需的晶振和外部锂电池相关电路集于芯片内部,同时它与目前ibm at计算机常用的时钟芯片mc146818b和ds1287管脚兼容,可直接替换。ds12887芯片具有微功耗、外围接口简单、精度高、工作稳定可靠等优点,可广泛用于各种需要较高精度的实时时钟场合中。其主要功能如下: (1)内含一个锂电池,断电情况运行十年以上不丢失数据。 (2)计秒、分、时、天、星期、日、月、年,并有闰年补偿功能。 (3)二进制数码或bcd码表示时间、日历和定闹。 (4)12小时或24小时制,12小时时钟模式带有pwm和am指导,有夏令时功能。 (5)motorola5和inatael总线时序选择
32、。 管脚功能: gnd,vcc:直流电源+5v电压。当5v电压在正常范围内时,数据可读写;当vcc低于4.25v,读写被禁止,计时功能仍继续;当vcc下降到3v以下时,ram和计时器被切换到内部锂电池。 mot(模式选择):mot管脚接到vcc时,选择motorola时序,当接到gfnd时,选择intel时序。 sqw(方波信号同):sqw管脚能从实时时钟内部15级分频器的13个抽头中选择一个作为输出信号,其输出频率可通过对寄存器a编程改变。 ad0ad7(双向地址/数据复用线):总线接口,可与motorola微机系列和intel微机系列接口。 as(地址选通输入):用于实现信号分离,在ad/
33、ale的下降沿把地址锁入ds12887。 ds(数据选通或读输入):ds/rd管脚有两种操作模式,取决于mot管脚的电平,当使用motorola时序时,ds是一正脉冲,出现在总线周期的后段,称为数据选通;在读周期,ds指示ds12887驱动双向总的时刻,在写周期,ds的后沿使ds12887锁存写数据。选择intel时序时,ds称作(rd),rd与典型存贮器的允许信号(oe)的定义相同。 r/w(读/写输入):r/w管脚也有两种操作模式。选motorola时序时,r/w是一电平信号,指示当前周期是读或写周期,dso为高电平时,r/w高电平指示读周期,r/w低电平指示写周期;选intel时序,r/
34、w信号是一低电平信号,称为wr。在此模式下,r/w管脚与通用ram的写允许信号(we)的含义相同。 cs(片选输入):在访问ds12887的总线周期内,片选信号必须保持为低。 irq(中断申请输入):低电平有效,可作微处理的中断输入。没有中断条件满足时,irq处于高阻态。irq线是漏极开路输入,要求外接上接电阻。 reset(复位输出):当该脚保持低电平时间大于200ms,保证ds12887有效复位。 3.1.4 lf398芯片介绍lf398是单片采样/保持器,它使用bi-fet技术以获得快速捕捉信号的超高直流精度和低下降率。作为一个单独的增益跟随器工作,其直流增益精度典型值为0.002 %,
35、采集时间低至6s在0.01精度时,一个双极性输入级用于实现低偏差电压和宽范围带宽。用一个引脚来达到调整输人偏差,并且不降低输入偏差漂移。宽范围带宽使lf198可放于1mhz运算放大器反馈回路内,而不引起稳定性间题。输人阻抗允许使用高源阻抗,而且不会使精度降低,使用1f的保持电容,p通道结型场效应管与在输出放大器的两极性器件一起,实现低至5mv分钟的下降率。jfet比以前设计中所用的mos器件具有更低的噪声,而且没有高温时的不稳定性。总体设计确保在保持模式下,从输人到输出没有藕合,即使对输人信号等于电源电压的情况也是如此: 工作在5v18v 电源下 低于10us采集时间,与ttl , pmos
36、, cmos逻辑输人兼容 在 ck=0.01uf下,0.5mv的保持阶跃 低输人偏差0.002的增益精度 在保持模式下的低输出噪声lf398 的逻辑输入是完全差分的,具有低输入电流,允许与 ttl、pmos 和lmos直接连接差分阀值为1.4v。lm198的工作电源为5v18v。3.2 功能模块电路设计以8051为cpu设计一个单片机应用系统,在其外部扩展64kb sram,本系统数据采集模块以adc0809为核心,lf398采样保持来实现一秒中采集8次数据,输出数字量直接与总线的数据线连接,从而挂在总线上的存储器,打印机,led很方便的进行数据读取。3.2.1 数据采集模块电路设计如果在数据
37、采集器中,直接使用模数转换器对模拟信号进行转换,则应该考虑到任何一种模数转换器都需要有一小段时间来完成量化及编码操作。模数转换器的转换时间决定于转换的位数、转换方法、采用的器件等因素。如在转换时间tconv内,输入模拟信号仍在变化。此时进行量化显然会产生一定的误差。现在考虑对正弦波信号采样,在转换时间tconv内,信号电压的最大改变发生在正弦信号过零时,所以而在转换时间tconv内最大可能的由此可以得出: 其中f为输入的正弦信号频率。所以数字化的最大正弦信号频率可用下式计算。其中m为模数转换器adc的分辨率。在本系统中m=8,tconv =100us带入公式就可得 如果我们在数据采集器的模数转
38、换器adc前再加一个采样保持放大器sha(它的任务是把要转换的信号快速采样后保持一段时间,以备转换用),这相当于在adc转换时间内开可一个窄“窗孔”,将此窗孔开启瞬间内的模拟信号以量化形式记录下来,此窗孔称为“孔径时间”ta,ta一般远小于转换时间tconv。显然,如在孔径时间ta内,输入模拟信号仍在孔径时间ta内,输入模拟信号仍在变化时进行量化,会引入一定的误差,称其为“孔径误差”,仍考虑对输入的正弦信号采样,那么对m位adc,并采用sha的数据采集器。则数字化的最大正弦信号频率为: 如欲以8位分辨率去量化1khz的正弦波,可计算出所需孔径时间为160ns,根据给定的在正弦信号频率与adc的
39、分辨率确定要求的孔径时间。这样,数据采集时在模数转换器adc前采用采样保持放大器sha,就解决了adc转换时间较长与分辨率要求较短的孔径时间的矛盾,其实质是把模拟信号的离散化与量化分两步进行。sha先完成模拟信号的离散化。adc接着进行离散信号的量化。最终获得所需要的数字信号。 数据采集模块是将从调理电路送过来的信号进行量化,把模拟量变成数字量的模块,a/d转换过程(即采样信号的量化过程)需要时间,如果输入信号变化较大,就会引起转换误差。所以在a/d转换前,加上保持器做信号保持。保持起把时刻的采样值保持到a/d转换结束。t为采样周期。采样控制电平为“1”,保持控制电平为“0”,offfset用
40、于零位调整。保持电容是外接的,其取值与采样频率和精度有关,常选用5101000pf。减小可提高采样频率,但会降低精度。而且应该选用聚苯乙烯、聚四氟乙烯等高质量电容器作。在本系统中根据采样时间、电压下降率等取为0.01f,这样信号达到0.01%精度的获取时间为25s,保持期间的输出电压下降率为每秒3mv。也就是说a/d转换器的转换时间为100s,转换期间,保持器输出电压下降约0.3v。a/d转换器的任务是完成采样信号到数字信号的转换,adc0809是逐次逼近式,转换时间为100s的8位转换器,它的线性误差为lsb,抗干扰能力较强,比较适合于信号变化缓慢,现场干扰严重的场合。8位a/d转换器的分辨
41、率约为0.0039,转换精度在0.4以下, 这对一些精度要求比较高的控制系统而言是不够的,因此要采用更多位的a/d转换器,如10位、12位、14位等a/d转换器。下面转换时序图 alec.b.astartoedo71eoc 其转换过程表述如下:首先ale的上升沿将地址代码锁存、译码后选通模拟开关中的某一路,使该路模拟量进入到a/d转换器中。同时start 的上升沿将转换器内部清零,下降沿起动a/d转换,即在时钟的作用下,逐位逼近过程开始,转换结束信号eoc即变为低电平。当转换结束后,eoc恢复高电平,此时,如果对输出允许oe输入一高电平命令,则可读出数据。a、b、c:3位地址线即模拟量通道选择
42、线。ale为高电平时,地址译码与对应通道选择见表3-2 。cba选中通道000int0001int1010int2011int3100int4101int5110int6111int7adc0809的量化单位本系统基准电压 ,此时q=(5.12-0)/28=20mv,转换结果d=a/d转换器与单片机的硬件接口一般有两种方法,一种方法是通过并行i/o接口与8051a单片机连接(例如8155或8255)需要占用两个并行口(其中一个端口接a/d转换器数据线,另一个端口用来产生a/d转换器工作控制信号);第二种接口方法是利用adc0809转换器三态输出锁存功能,可以直接与8051的总线连接,在系统中把
43、adc0809转换器当作外部ram单元对待。系统中的adc0809转换器的片选信号由p2.7线选信号控制,若假设地址中的无关位均为1,则其通道in0-in7的地址为7ff8h-7ffffh。当8051产生写信号时,则由一个或非门产生转换器的启动start和地址锁存信号ale(高电平有效),同时将地址总线信息由a,b,c输入并锁存,模拟量通过被选中的通道送到a/d转换器,并在start信号下降沿时开始逐位转换。当转换信号结束时,转换结束信号eoc变高电平。经反相器可向cpu发送一个高电平信号。当8051产生读信号时,则由一个或非门产生oe输出允许信号(高电平有效),使a/d转换结果读入8051单
44、片机。3.2.2 查询打印模块电路设计用锁存器或用8155都可以作键盘显示器的接口。但它们共同的缺点是,需要编制定时扫描显示和扫描键盘的程序,使整个系统软件变得比较复杂。本系统采用的intel18279是一个专用的显示器键盘接口,它用硬件完成对显示器和键盘的扫描。在硬件上它占用两个地址,在软件上省去了显示和键盘扫描,使用程序变得简洁、易读和模块化。db0db7是数据线,与cpu总线相连。当=0时,选中8279。此时若a0=1。数据线上的信息是命令或状态。若a0=0,数据线上的信息是显示数据或键盘数据。即a0=1、=0命令写到定时器与控制寄存器去,对8279进行编程,=0读fifo/传感器ram
45、状态寄存器的内容;a0=1、=0数据写到显示ram,=0读显示ram或fifo/传感器ram的内容。扫描计数器通过sl0sl3输出扫描信号,扫描信号分为译码和编码两种。显示寄存器通过outa和outb同步输出显示ram的内容。这一过程8279通过硬件自动完成,无需程序干预。扫描输出和回扫线可以构成对键的一个扫描阵列。当有键按下时,该键在行列中的位置上shift和cntl的状态一起被送到fifo存储器中,同时使irq变高。fifo/传感器ram是一个88ram,在键盘和选通方式工作时,它是fifo存储器,其输入或读出遵循先入先出的原则。此时fifo状态寄存器存储器空、满、益处等状态。当fifo存
46、储器有数据时,irq信号变为高电平。在传感器矩阵方式工作时,这个存储器是传感器ram,它的每一位对应着一个传感器的状态。当传感器变化时。irq信号变为高电平。系统通过按键来选择工作的模式,当按下“#”键,系统就进入到查询模式,屏幕显示清零状态,等待数据的输入,当输入数据时,屏幕显示输入的数据,当数据输入完毕以后,系统进行数据的查询,查询到的数据按统统显示在屏幕上,如过此时按下打印键“#”,系统就进入打印模式,把查询到的数据打印出来。第4章 单片机数据采集与通信系统软件设计上一章我们对系统的几个主要硬件部分进行了介绍,这些构成了数据采集和通信系统的硬件基础。但是,光有这样的硬件,还只是具有了计算
47、的可能。系统要真正能够进行按照我们设计的意愿进行工作还必须有软件的配合。软件是利用mcs一51汇编语言编制的,并利用了最优化方法,使其在具有较多的功能条件下,占有较少的地址空间同时采用了浮动地址,使程序在不同地址的条件下,不需要改动就能完成各种设计功能,从而方便了调试与应用,并使整体软件系统具有较大的灵活性。开始初始化(键盘、显示、存储、打印)读adc0809状态(是否空闲)读打印机状态(是否空闲)设置各通道数据存放地址段判断键盘送来的字符查询模式通信模式数据采集模式结束采用键入不同的值进入不同的模式,进行各种不同功能的实现,如果在没按下“#”键以前有键按下,判断为误操作,程序不予处理,当按下
48、“#”键时,系统进入采集模式,当键入的是“*”键时,系统进入的是通信模式,当在数据采集模式下键入的是“#”键时,系统就进入了查询模式,如果需要将查询到的数据打印出来,就需要再一次按下“#”键,从而使系统完成各项功能。main :查询是否有键闭合lcall key;查询键闭合,调键盘处理子程序lcall dir;调显示子程序sjmp main;键盘处理子程序key: mov dptr,#7fffhmov a,#40h;写读扫描键命令movx dptr,#7effh;movx a,dptr;扫描键值anl a,#3fhmov dptr,#ktabmovc a,a+dptr;查表转换成有序编码cjn
49、e a,#0ah,key1key1: jc pdata;是数字键,转pdata处理subb a,#0ah;以下为命令处理mov b,#03hmul abmov dptr,#comtabjmp a+dptrcomtab: ljmp find;是*键转到查询打印处理ljmp give;是#键转通信处理系统通可以工作在不同的模式下,在数据采集模式下将从模拟通道采集8次等不同次数的数据,本系统采用的是adc0809,它是具有8路通道模拟开关、通道选择逻辑(地址锁存与译码)、8位a/d转换器以及三态输出锁存缓冲器,他可以实现8路通道的切换和采集数据的锁存,adc0809的转换时间为100us,线形误差为
50、lsb。按照时间和通道进行存储,这是是为了方便查询的方便,也是保存数据的常用方式,采集模式就工作在查询的模式下。进入数据查询模式我们就可以根据输入的时间来查询那一时刻所存储的数据,按下打印键,系统将为你进行把所查询到的数据进行打印。系统如果工作在通信模式下的话,将进行与pc机的通信,进行数据传输。过从键盘送来的不同键值选择不同的工作模式;接受到“*”系统将自动进入到查询和打印模式, 接受到“#”系统将自动进入打印状态,再一次接受到“#”的时候系统将返回到数据采集状态。4.1单片机数据采集的分析与设计在程序开始时经过初始化后,设置各个通道界限值,然后通道号置为0,采集次数也置为0,就保证了采集次
51、数和通道的开始是正确的,启动数据采集,将采集到的数据进行存储,接着进行第二次数据的采集,当采集到预定的采集次数时,将调用计算平均值子程序,计算出采集的数据,再把这个数据进行判断是否在正常范围之内。然后就是第二通道的采集。开 始初 始 化通道号置为 0采集次数置0启动数据采集调判越界子程序采集次数+1计算平均值到n次调存储子程序调显示子程序通道号+1通道号=9?ynyyn mov al,10h ; 设置0通道的下限值mov x0min,almov al,80h ;设置0通道的上限值mov x0max,almov al,90h ;设置1通道的上限值mov x1max,almov al,0a0h ;
52、设置2通道的上限值mov x2max,almov al, 0b0h ;设置3通道的上限值mov x3max,almov al, 0c0h ;设置4通道的上限值mov x4max,almov al,0d0h ;设置5通道的上限值mov x5max,almov al, 0e0h ;设置6通道的上限值mov x6max,almov al, 0f0h ;设置7通道的上限值mov x7max,al;设置各通道界限值mov a,#10hmov r0,ainc r0mov r1 , #8mov a,#f0hl1: mov r0,ainc r0clr csubb a,#8djnz r1,l1mov dptr,
53、#228h;写d/a转换mov a,#80hdjnz r1,l1mov dptr,ainc dptrmovx dptr,al2:mov r2,#0;通道号设置为0l3:mov r3,#8;采集次数设置为8l4:movx dptr,#220h;启动a/d转换movx dptr,amov r7,#0ffh;延时等中断here:djnz r7,heremov dptr,tab;中断后处理,设置散转表指针mov a,r2rl ajmp a+dptr;实现散转tab:ajmp prg0;跳转到0通道处理程序ajmp prg1;跳转到1通道处理程序ajmp prg2;跳转到2通道处理程序ajmp prg3
54、;跳转到3通道处理程序ajmp prg4;跳转到4通道处理程序ajmp prg5;跳转到5通道处理程序ajmp prg6;跳转到6通道处理程序ajmp prg7;跳转到7通道处理程序prg0:cjne r3,0,prg01;8次未采集完了,取采集数据mov a,b;8次未采集完了,取采集数据mov 38h,a ;保存第8次采集数据到38hmov r0,#30h;设置求平均值子程序入口参数lcall mysub1;求8次的平均值lcall store;保存数据,显示数据lcall pyj;判是否越界inc r2 ;通道号加1ljmp l3;采集下一通道prg01:mov a,b;取采集数据cjn
55、e r3,7,prg02;是第一个数吗?不是转prg02mov 30h,a ;是第一个数吗,则保存到30hajmp prg09 ;转prg09prg02: cjne r3,6,prg03;是第二个数吗?不是转prg03mov 31h,a ;是第二个数吗,则保存到31hajmp prg09 ;转prg09prg03: cjne r3,5,prg04;是第三个数吗?不是转prg04mov 32h,a ;是第三个数吗,则保存到32hajmp prg09 ;转prg09prg04: cjne r3,4,prg05;是第四个数吗?不是转prg05mov 33h,a ;是第四个数吗,则保存到33hajmp prg09 ;转prg09prg05: cjne r3,3,prg06;是第五个数吗?不是转prg06mov 34h,a ;是第五个数吗,则保存到34hajmp prg09 ;转prg09prg06: cjne r3,2,prg07;是第六个数吗?不是转prg07mov 35h,a ;是第六个数吗,则保存到35hajmp prg09 ;转prg09prg07: cjne r3,1,prg08;是第七个数吗?不是转prg08mov 36h,a ;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024农业科技研发与土地租赁合同
- 2024年房产测绘服务合同
- 2024-2030年药房自动化行业市场发展分析及前景趋势与投资研究报告
- 2024年数字版权保护系统开发与运营合同
- 2024-2030年版中国第三方物流行业发展规划及运作模式分析报告
- 2024-2030年版中国烟花爆竹行业市场竞争态势及发展策略分析报告
- 2024-2030年版中国天然靛蓝行业产量预测及发展风险分析报告
- 2024-2030年新版中国蓄电池材料项目可行性研究报告
- 2024-2030年新版中国液化石油气牵引车项目可行性研究报告
- 2024-2030年可见光纤激光器行业市场现状供需分析及重点企业投资评估规划分析研究报告
- 曲靖市数字经济产业餐厨垃圾资源化再利用项目(重新报批)环评报告
- 小学语文跨学科学习任务群学习任务设计策略
- 编施工方案的目的
- 亮化工程安全施工方案
- 广西南宁市西乡塘区2023-2024学年四年级数学第一学期期末调研试题含答案
- ul2464电线线径标准
- 《乡土中国》整本书阅读公开课
- 气排球比赛规则课件
- NB/T 11123-2023煤矿安全双重预防机制规范
- 人美版小学美术六年级上册1建筑艺术的美课件
- 氧气瓶安全操作技术规程
评论
0/150
提交评论