多通道数据采集的研究与设计.docx
- 文档编号:24014500
- 上传时间:2023-05-23
- 格式:DOCX
- 页数:29
- 大小:436.03KB
多通道数据采集的研究与设计.docx
《多通道数据采集的研究与设计.docx》由会员分享,可在线阅读,更多相关《多通道数据采集的研究与设计.docx(29页珍藏版)》请在冰豆网上搜索。
多通道数据采集的研究与设计
摘要
近年数据采集系统的应用范围越来越多、所涉及到的测量信号和信号源的类型越来越宽、对测量的要求也越来越高。
国内现在已有不少数据测量和采集的系统,但很多系统存在功能单一、采集通道少、采集速率低、操作复杂、并且对测试环境要求较高等问题。
人们需要一种应用范围广、性价比高的数据采集系统。
基于单片机的多通道数据采集系统是将来自传感器的信号通过放大、输入A/D转换器转换为数字信号后由单片机采集,、后期处理与显示,实现了数据处理功能强大、显示直观、界面友好、性价比高、应用广泛的特点,可广泛应用于工业控制、仪器、仪表、机电一体化、智能家居等诸多领域。
关键词:
多通道;数据采集;单片机;通信;
ABSTRACT
Nowadays,withtheTheapplicationrageofdataacquisitionsystemisbecomingwideincreasingly,thetypesofmeasurementsignalandsignalsourcearealsomoreandmore,Surveyorsalsorequiremuchhighermeasurerequirements.Domesticnowhavealotofdateacquisitionandmeasuresystems,buttherearemanysystemsinvolvingtheseissues:
singlefunction,lesscollectionaccess,lowcollectionrate,highdemandsofcollectiontestenvironmentandsoon.Sopeoplerequireabroadscopeofapplication,highreliabilityandlow-costdataacquisitionsystem.
Multi-channelacquisitionsystembasedonSCMcanprocesssignalfromsensorbyamplification,linerfiltering.Afterprocessingmaintainsynchronoussampling,whichconvertedtodigitalsignalinputA/DconversionbySCMAcquisition,processedanddisplayed.Soawiderangeoffeaturescanbewidelyusedinindustrialcontrolequipment,instruments,andelectricalengineeringintegration,intelligenthomeandmanyotherfields.
Keywords:
Multi-Channel;Dataacquisition;MCU;Communication;
第一章绪论
1.1多通道数据采集的研究背景
随着计算机技术的飞速发展和普及,数据采集系统在多个领域有着广泛的应用。
在现实中要通过计算机对现实世界中的信息进行处理和显示,首先必须将计算机和现实世界联系起来,这需要将真实世界中的各种信号(称为模拟信号)转化为计算机可以识别、存储的信号(称为数字信号),这一过程即是数据采集。
数据采集技术是以前端的模拟信号处理、模拟信号数字化、数字信号处理和计算机控制技术等高科技为基础而形成的-N综合技术。
它在许多领域得到了广泛的应用。
数字技术促进了上述这些领域的发展,而反过来又对数据采集系统提出了愈来愈高的要求。
一个大型的数据采集系统由以下几个部分组成:
数据测量、数据采集、数据传送、数据存储、数据处理、数据分析和数据显示等[1]。
随着计算机技术的发展和计算机技术在信号处理中的广泛应用,现代的测量系统在数字信号处理方面的能力也大大加强了,形成了所谓的数字化测量技术.数字化测量就是借助于各种类型的传感器检测外部世界的各种信号,并转换成电信号,然后进行信号调理和A/D转换,使之转换成为能够在数字系统中进—步处理的数字信号。
具体来说,就是将电压、电流、温度、压力等物理信号转化为数字量并传递到计算机中。
在当今网络化时代,以Intemet为代表的计算机网络通信的发展和应用取得了前所未有的突破和成功,网络化测量、采集和(对网中仪器设备的)控制技术正随着网络技术的发展而迅速发展[2]。
网络化、分布式的数据采集优势体现在:
采集范围扩大,处理能力增强,信息索取更加方便,并且能够适应场合变更的需
要。
凭借这些优良的性能,网络化测量和控制已经成为数据采集技术发展的必然趋势。
传感器技术、计算机技术和网络技术的长足发展以及由此所产生的测量需求成为数据采集技术发展的不竭动力,并对数据采集技术提出了更新、更高的要求:
测量的方法、可测量的种类和范围应不断拓宽和更新,准确度要提高,可靠性要增强,并能够适应各种不同的实验环境需要。
简而言之,数据采集技术的发展离不开传感器和计算机控制技术,网络化测量、采集和控制是其发展的必然趋势。
数据采集系统,从严格的意义上来说,应该是用计算机控制的多路数据自动检测或巡回检测,并且能够对数据实行存储、处理、分析计算以及从检测的数据中提取可用的信息,供显示、记录、打印或描绘的系统。
虽然现在有不少数据测量和采集的系统.这些数据测量和采集系统的研制成功解决了部分用户需要,但是也有一部分系统存在功能单一、采集通道少、采集速率低、操作复杂,并且对测试环境要求较高等问题。
本文在研究单片机技术、单片机数据采集、单片机通信技术及A/D数模转换的基础上,设计并实现了基于单片机的数据采集系统——数字电压表,系统结构简单、性能稳定、造价低廉及便于维护。
且能应用于生活中的测量。
因为是基于单片机,所以能对不同物理量的测量进行修改程序与测量显示。
1.2数据采集系统的应用
数据采集是生活中工、农业控制系统中至关重要的一环,在医药、化工、食品、等领域的生产过程中,往往需要随时检测各生产环节的温度、湿度、流量、压力、电压及电流等参数。
同时,还要对某一检测点任意参数能够进行随机查寻,将其在某一时间段内检测得到的数据经过转换提取出来,以便进行比较,做出决策,调整控制方案,提高产品的合格率,产生良好的经济效益。
目前已有各种各样高速、高精度、多通道的数据采集卡及新兴的片上数据采集系统问世,使得计算机的应用向着更深、更广阔的领域渗透。
由于应用目的、方式、方法以及运行环境的各不相同,计算机的应用系统也体现出多样性,其现有的数据采集系统也不可能做到一切通用。
单片机技术的发展为多通道的数据采集提供了又一种有效方法,可实现众多数据采集和数据处理的应用要求。
数据采集,又称数据获取,是利用一种装置,从系统外部采集数据并输入到系统内部的一个接口。
被采集数据是已被转换为电讯号的各种物理量,可以是模拟量,也可以是数字量。
目前,使用最多的数据采集系统就是功能不同的传感器,例如,温度传感器,湿度传感器等单一功能传感器。
当然也有多功能的数据采集传感器。
传感器作为信息源头对计量测试技术的发展有着重要作用;目前,传感器正不断朝着多功能性和智能性方向发展。
1.3数据采集系统组成
本文设计的基于单片机的数据采集系统,所以,在硬件结构上,主要由单片机(MCU)、A/D转换器以及显示器。
论文中主要对基于单片机的数据采集系统的设计与实现进行论述,并设计制作出硬件电路实现,以此研究数据采集的一个简单应用以及说明基于单片机的数据采集的灵活运用。
主要工作有以下几点:
(1)设计数据采集系统原理电路,并对组成电路各个模块和模块组成器件进行介绍,即对数据采集模块、数据分析和显示模块的分析;
(2)系统的流程以及各个模块之间的数据传送流程介绍;
(3)对设计电路以及实现所使用的软件介绍,并制作硬件电路;
(4)烧写程序,焊接测试。
第二章系统硬件设计
2.1系统原理电路设计
设计中的硬件电路设计对数据采集的研究只是一个小方面,但是也是基于单片机——即基于单片机的数字电压表,只采集电压数据并分析显示。
数字电压表(DigitalVoltmeter)简称DVM,它是智能仪器中最常见的,是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。
传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,由精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC进行实时通信。
目前,由各种单片A/D转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等领域,显示出强大的生命力。
数字电压表的设计方法很多,设计方案也是各色各样。
由于传统的指针式电压表已经不能满足时代的需求,采用单片机的数字电压表精度高、抗干扰能力强、集成方便、测量范围广,目前,由各种单片A/D转换器构成的数字电压表,已被广泛用于生活中的各个领域。
由此选择由单片机结合数字芯片设计数字电压表。
本文利用单片机系统、模数转换芯片、显示模块等组建数字电压表。
现在单片机已经发展成熟,利用单片机的软硬件结合可以设计出许多的应用电路。
本方案的原理是模数转换芯片的基准电压端、被测电压输入端分别输入基准电压和被测电压。
A/D转换芯片将从被测电压端收集到的模拟电压信号转换成相应的数字信号;然后通过对单片机系统进行软件编程使其能按照规定的时序来采集这些数字信号,通过一定的算法计算出被测电压值;最后单片机系统将计算出的被测电压按一定的时序送入显示模块加以显示。
图2.1基于单片机数字电压表原理框图
各模块的主要器件:
测量输入电路:
设计中采用了模数转换,因袭从外界测量输入电路中的输入电路就是直接用正负极的导线连接;
模数转换模块:
模数转换采用常用的8位8通道逐次逼近式A/D转换器ADC0809,采用CMOS工艺制造。
单片机模块;单片机模块式整个电路的控制分析中心,采用AT89C51,CMOS工艺低功耗PQFP和PLCC封装。
显示模块;本设计采用了常用的LED数码显示管,文中采用的四个数码显示管显示测量值,还可通过级联以扩展测量精度和范围。
本设计电路采用的单片机进行A/D转换,LED数码显示管显示,具有读书直观准确、测量速度快、输入阻抗大、测量范围宽,硬件电路成本低、简单、体积小,安全性好,可扩展性强。
最后,将各模块经导线正确连接。
即可设计原理电路为;
图2.2基于单片机数字电压表原理电路图2.2模块及器件工作原理
从图2.2所示的原理电路可以看出,经测量检测的模拟信号进入模数转换器ADC0809中,后经过模数转换器转换将模拟信号转换为数字信号,再经过模数转换器的的8个输出端口(D1~D8)进入AT89C51的P0口,信号进入单片机中,经过内部的操作以及调用相应子程序,最后,驱动LED数码显示管显示所测量的数值。
2.2.1单片机模块
设计中的控制模块是采用AT89C51单片机来实现数据的处理和控制的。
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89C52可为许多嵌入式控制应用系统提供高性价比的解决方案。
此外,AT89C52设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。
空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬复位,同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。
(一)AT89C51特点
AT89C51单片机有如下特点:
(1)与MCS-51产品兼容;
(2)具有4K字节可在系统编程的Flash内部程序存储器,可擦/写1000次;
(3)4.0V~6.0V的工作电压范围;
(4)128×8bit内部RAM;
(5)32条可编程双向I/O口线;
(6)两个16位可编程定时器/计数器;
(7)两个外部中断源;
(8)一个串行接口;
(9)低功耗空闲和掉电保护;
(10)通过中断中止掉电方式;
(11)时钟频率0~24MHZ;
(12)可直接驱动LED显示器;
(13)软件设置睡眠和唤醒功能。
(二)AT89C51引脚及功能介绍
图2.3AT89C51引脚示意图
设计中采用的是PDIP双列直插式封装,这种封装与MCS-51系列单片机的引脚完全兼容,可互换使用。
引脚说明:
Vcc(40):
供电电压+5V。
Vss(20):
接电源地。
P0口(32~39):
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P0口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口(1~8):
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口(21~28):
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口(10~17):
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,即具有第二功能:
表2.1P3口的第二功能表
端口引脚
符号
第二功能
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
外部数据存储器读通道
XTAL1(19):
振荡器反相放大器的及内部时钟发生器的输入端。
XTAL2(18):
振荡器反相放大器的输出端。
通过XTAL1、XTAL2外接晶振后,即可构成自激振荡器,驱动内部时钟发生器向主机提供时钟信号。
RST(9):
RST即RESET,复位信号输入端。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
ALE/PROG(30):
地址锁存有效信号输出端。
当访问片外程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节,一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的,但是每当访问外部数据存储器时将跳过一个ALE脉冲。
PSEN(29):
程序存储允许输出端。
是片外程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个周期两次PSEN有效,即输出两个脉冲。
在此期间,当访问外部数据存储器,将跳过两次PSEN信号。
EA/VPP(31):
外部访问允许。
欲使CPU仅访问外部程序存储器(地址为0000H—FFFFH),EA端必须保持低电平(接地),需注意的是:
如果加密位LB1被编程,复位时内部会锁EA端状态。
如EA端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。
Flash存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。
2.2.2单片机最小系统
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能集成到一块硅片上构成的一个小而完善的计算机系统。
因此应用广泛,正是由于它具有这样的功能,在实际电路中,常采用单片机最小系统整个接入电路。
单片机的最小系统由单片机加上时钟电路和复位电路。
前者为单片机工作提供准确的时钟信号,后者保护单片机在突发状况能正常复位清零。
如图2.4所示为本文中AT89C51最小系统,与应用最广泛的单片机最小系统的区别只是少了按钮的手动复位。
图2.4单片机最小系统示意图
(一)最小系统的复位电路
如图2.4所示的最小系统,单片机AT89C51的RST(9)引脚上由R1、C1组成的外围电路是系统的复位电路,属于上电复位,也称自动复位。
所谓上电复位,是指整个电路加电瞬间,要在RST引脚上形成一个正脉冲,是单片机进入复位状态。
上电复位原理是:
当加电瞬间,RST端与Vcc同电位,随着电容C1上的电压逐渐上升,RST端的电压逐渐下降,于是在RST端便形成了一个正脉冲,只要该脉冲的宽度持续两个机器周期的高电平,就可实现系统的自动复位。
在单片机应用中,我们应该知道,对系统进行可靠的复位时非常重要,无论出现何种状况,上电后单片机系统都应能正常复位。
否则系统将出现严重的事故,这在单片机的应用中也是不允许的。
只要在RST引脚上持续出现两个机器周期的高电平就可实现系统正常复位,一把脉冲宽度可适当取大一些,通常取RST引脚上正脉冲宽度约为10ms。
(二)最小系统的时钟电路
在单片机系统中,本身内部有一个振荡器,它可用两种方式为单片机提供时钟信号:
一种是内部时钟方式;另一种是外部时钟方式。
本文采用的是内部部时钟方式,即图2.4中的石英晶体振荡器XTAL1和电容C2、C3组成电路。
采用这种时钟方式,我们只需提供振荡源,通常是以石英振荡器和两片电容组成外部振荡源。
片内的高增益反相放大器通过单片机的XTAL1、XTAL2外接,作为反馈元件的片外晶体振荡器与电容组成的并联谐振回路构成一个自激振荡器,向内部时钟电路提供振荡时钟。
振荡器的频率取决于晶体的振荡频率,一般振荡频率可在1.2至12MHz之间,作为实际应用一般是6MHz和12MHz。
本设计就是12MHz;而电容的一般取30pF,因为电容的大小对振荡频率有微小的影响,可起频率微调作用。
2.2.3A/D模数转换模块
本文设计的数字电压表主要利用A/D转换器,处理过程是先用A/D转换器对各路电压值进行采样,得到相应的数字量,再按数字量与模拟量成正比关系运算得到对应的模拟电压值,然后把模拟值通过显示器显示出来。
设计时假设待测的输入电压为八路,电压值的范围为0~5V,要求能在4位LED数码管上轮流显示或单路选择显示。
测量的最小分辨率为0.0119V,c测量误差为±0.02V。
A/D转换模块是由ADC0809芯片来完成的。
ADC0809芯片是典型的8位8通道逐次逼近式A/D转换器,采用CMOS工艺制造。
ADC0809的主要性能有:
(1)8位逐次逼近型A/D转换器,所有引脚的逻辑电平与TTL电平兼容。
(2)带有锁存功能的8路模拟量转换开关,可对8路0~5V模拟量进行分时切换。
(3)输出具有三态锁存功能。
(4)分辨率:
8位,转换时间:
100μs。
(5)不可调误差:
±1LBS,功耗:
15mW。
(6)工作电压:
+5V,参考电压标准值+5V。
(7)片内无时钟,一般需外加640KHz以下且不低于100KHz的时钟信号。
(一)ADC0809内部结构及封装引脚介绍
ADC0809是8路8位ADC芯片,28引脚双列直插式封装,片内有8路模拟开关、地址锁存与译码、256电阻梯形网络、电子开关树、逐次逼近寄存器、比较器和3态输出锁存器等,特别适合与微机接口。
时钟频率=1.26MHz,转换时间=100μs。
8路8位2进制码LSTTL电平输出,28脚封装。
ADC0809多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。
三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。
图2.5ADC0809内部结构示意图图2.6ADC0809引脚图
ADC0809的内部逻辑结构如图2.5所示,图中多路模拟量开关可选通8个模拟通道,允许8路模拟量分时输入,并公用1个A/D转换器进行转换。
其内部结构为:
ADC0809是CMOS的8位模/数转换器,采用逐次逼近原理进行A/D转换,芯片内有模拟多路转换开关和A/D转换两大部分,可对8路0~5V的输入模拟电压信号分时进行转换。
模拟多路开关由8路模拟开关和3位地址锁存译码器组成,可选通8路模拟输入中的任何一路,地址锁存信号ALE将3位地址信号ADDA、ADDB、ADDC进行锁存,然后由译码电路选通其中的一路,被选中的通道进行A/D转换。
A/D转换部分包括比较器、逐次逼近寄存器(SAR)、256R电阻网络、树状电子开关、控制与时序电路等。
另外ADC0809输出具有TTL三态锁存缓冲器,可直接连到CPU数据总线上。
ADC0809引脚图如2.6所示,各引脚功能为:
(1)IN7~IN0:
8条模拟量输入通道。
0809对输入模拟量的要求主要有:
信号单极性、电压范围0~5V、若输入信号过小还需进行放大。
另外,模拟量输入在A/D转换过程中其值不应变化,而对变化速度快的模拟量,在输入前应增加采样保持电路。
(2)ADDA、ADDB、ADDC:
模拟通道地址线。
这3根地址线用于对模拟通道进行选择,ADDA为低位地址,ADDC为高位地址。
(3)ALE:
地址锁存信号。
对应于ALE上跳沿时,ADDA、ADDB、ADDC地址状态送入地址锁存器中。
(4)START:
转换启动信号。
在START信号上跳沿时,所有内部寄存器清0;在START下跳沿时,开始进行A/D转换。
在A/D转换期间,START信号应保持低电平。
该信号可简写为ST。
(5)D7~D0:
数据输出线。
该数据输出线为三太缓冲输出形式,可以和单片机的数据总线直接相连。
(6)OE:
输出允许信号。
它用于控制三太输出锁存器向单片机输出转换后的数据。
OE=0时输出数据线呈高阻状态;OE=1时输出允许。
(7)CLK:
时钟信号。
ADC0809的内部没有时钟电路,所需时钟信号有外界提供,通常使用频率微500KHZ的时钟信号。
(8)EOC:
转换结束状态信号。
当EOC=0时,表示正在进行转换;EOC=1时,表示转换结束。
实际使用中该状态信号即可作为查询的状态标志,还可作为中断请求信号使用。
(9)VREF(+),VREF(-)为参考电压输入。
(二)ADC0809工作原理
8路模拟信号由ADC0809的IN0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 通道 数据 采集 研究 设计