基于单片机的多路实时数据采集系统设计.docx
- 文档编号:26181293
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:26
- 大小:652.80KB
基于单片机的多路实时数据采集系统设计.docx
《基于单片机的多路实时数据采集系统设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的多路实时数据采集系统设计.docx(26页珍藏版)》请在冰豆网上搜索。
基于单片机的多路实时数据采集系统设计
分类号单位代码
密级学号——
学生毕业设计(论文)
题目
基于单片机的多路
实时数据采集系统设计
作者
院(系)
专业
指导教师
答辩日期
2010年5月27日
毕业设计(论文)诚信责任书
本人郑重声明:
所呈交的毕业设计(论文),是本人在导师的指导下独立进行研究所取得的成果。
毕业设计(论文)中凡引用他人已经发表或未发表的成果、数据、观点等,均已明确注明出处。
尽我所知,除文中已经注明引用的内容外,本论文不包含任何其他个人或集体已经公开发表或撰写过的研究成果。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人毕业设计(论文)和资料若有不实,愿意承担一切相关的法律责任。
论文作者签名:
年月日
摘要
数据采集系统是模拟领域和数字领域之间必不可少的纽带,在自动控制、电气测量、航空航天等工程实际中有着极为广泛的使用。
本文设计出一种以AT89C51为核心的数据采集系统,可以实现对模拟电压范围为-10V~+10V的4路模拟信号进行实时采集,最高取样可达250Ksps。
将采集的数据通过RS232接口传输到上位机,由上位机负责处理和实现。
整个数据采集系统由硬件和软件组成,硬件主要包含AD7862、MAX232和单片机的接口设计;软件主要包含上位机显示界面设计和单片机程序设计。
硬件设计部分采用Protel设计软件,包含原理图的设计和PCB图设计;下位机采用单片机编译软件KeiluVision2编写C语言程序;上位机采用VC++编写显示界面。
设计的结束部分,对采集到得数据的误差进行了分析。
实验证明,将单片机和AD7862相结合,是进行多路数据采集、处理和传输的理想解决方案。
关键词:
数据采集;单片机;AD7862;RS232
BasedonSinglechipofReal-timeDataAcquisitionSystem
ABSTRACT
Analogdataacquisitionsystemisessentialtothefieldandthelinkbetweenthedigitalrealm,intheautomaticcontrol,electricalmeasurement,aerospaceandotherengineeringpracticehasaverywiderangeofapplications.
ThisarticleisdesignedtoAT89C51asthecoreofadataacquisitionsystem,theanalogvoltagecanrangefrom-10V~+10V4-channelanalogsignalsinreal-timeacquisitionuptothemaximumsampling250Ksps.ThedatawillbecollectedthroughtheRS232interfacetotransfertothehostcomputer,thehostcomputerisresponsibleforprocessingandreality.Theentiredataacquisitionsystemconsistsofhardwareandsoftwarecomponents,hardwaremainlyincludesAD7862,MAX232andsinglechipinterfacedesign;softwareconsistsmainlyofPCdisplayinterfacedesignandmicrocontrollerprogramming.PartofhardwaredesignusingProteldesignsoftware,includingschematicdesignandPCBdesignplans;lowermachineusingSCMsoftwareKeiluVision2compileClanguageprogramwritten;onthecomputerusingVC++writtendisplay.Theendpartofthepaper,thecollecteddataerrorwasanalyzed.
ExperimentsshowthatthecombinationofthemicrocontrollerandtheAD7862isthemulti-channeldataacquisition,processingandtransmissionoftheidealsolution.
Keyword:
dataacquisition;MCU;AD7862;RS232
1绪论
1.1论文研究背景及其意义
近年来,数据采集及其使用受到了人们越来越广泛的关注,数据采集系统也有了迅速的发展,它可以广泛的使用于各种领域。
数据采集系统起始于20世纪50年代,1956年美国首先研究了用在军事上的测试系统,目标是测试中不依靠相关的测试文件,由非成熟人员进行操作,并且测试任务是由测试设备高速自动控制完成的。
由于该种数据采集测试系统具有高速性和一定的灵活性,可以满足众多传统方法不能完成的数据采集和测试任务,因而得到了初步的认可。
大概在60年代后期,国内外就有成套的数据采集设备和系统多属于专用的系统。
20世纪70年代后期,随着微型机的发展,诞生了采集器、仪表同计算机溶为一体的数据采集系统。
由于这种数据采集系统的性能优良,超过了传统的自动检测仪表和专用数据采集系统,因而获得了惊人的发展。
从70年代起,数据采集系统发展过程中逐渐分为两类,一类是实验室数据采集系统,一类是工业现场数据采集系统。
20世纪80年代随着计算机的普及使用,数据采集系统得到了很大的发展,开始出现了通用的数据采集和自动测试系统。
该阶段的数据采集系统主要有两类,一类以仪表仪器和采集器、通用接口总线和计算机组成。
这类系统主要使用于实验室,在工业生产现场也有一定的使用。
第二类以数据采集卡、标准总线和计算机构成,这一类在工业现场使用较多。
20世纪80年代后期,数据采集发生了很大的变化,工业计算机、单片机和大规模集成电路的组合,用软件管理,是系统的成本减低,体积变小,功能成倍增加,数据处理能力大大加强。
20世纪90年代至今,在国际上技术先进的国家,数据采集系统已成功的运用到军事、航空电子设备及宇航技术、工业等领域。
由于集成电路制造技术的不断提高,出现了高性能、高可靠的单片机数据采集系统(DAS)。
数据采集技术已经成为一种专门的技术,在工业领域得到了广泛的使用。
该阶段的数据采集系统采用模块式结构,根据不同的使用要求,通过简单的增加和更改模块,并结合系统编程,就可扩展或修改系统,迅速组成一个新的系统[1]。
尽管现在以微机为核心的可编程数据采集和处理采集技术的发展方向得到了迅速的发展,而且组成一个数据采集系统只需要一块数据采集卡,把它插在微机的扩展槽内并辅以使用软件,就能实现数据采集功能,但这并不会对基于单片机为核心的数据采集系统产生影响。
相较于数据采集板卡成本和功能的限制,单片机具多功能、高效率、高性能、低电压、低功耗、低价格等优点,而双单片机又具有精度较高、转换速度快、能够对多点同时进行采集,因此能够开发出能满足实际使用要求的、电路结构简单的、可靠性高的数据采集系统。
这就使得以单片机为核心的数据采集系统在许多领域得到了广泛的使用。
1.2国内外的研究现状
数据采集系统是通过采集传感器输出的模拟信号并转换成数字信号,并进行分析、处理、传输、显示、存储和显示。
它起始于20世纪中期,在过去的几十年里,随着信息领域各种技术的发展,在数据采集方面的技术也取得了长足的进步,采集数据的信息化是目前社会的发展主流方向。
各种领域都用到了数据采集,在石油勘探、科学实验、飞机飞行、地震数据采集领域已经得到使用。
我国的数字地震观测系统主要采用TDE-124C型TDE-224C型地震数据采集系统。
近年来,又成功研制了动态范围更大、线性度更高、兼容性更强、低功耗可靠性的TDE-324C型地震数据采集系统。
该数据采集对拾震计输出的电信号模拟放大后送至A/D数字化,A/D采用同时采样,采样数据经DSP数字滤波处理后,变成数字地震信号。
该数据采集系统具备24位A/D转化位数,采样率有50HZ、100HZ、200HZ。
由美国PASCO公司生产的“科学工作室”是将数据采集使用于物理实验的崭新系统,它由3部分组成:
(1)传感器:
利用先进的传感技术可实时采集技术可实时采集物理实验中各物理量的数据;
(2)计算机接口:
将来自传感器的数据信号输入计算机,采样速率最高为25万次/S;(3)软件:
中文及英文的使用软件[1]。
尽管现在以微机为核心的可编程数据采集和处理技术作为数据采集技术的发展方向得到了迅速的发展,并且适于通用微机(如IBMPC系列)使用的板卡级数据采集产品也已大量出现,组成一个数据采集系统简单到只需要一块数据采集卡,把它插在微机的扩展槽内,并辅以使用软件,就能实现数据采集功能,但这并不会对基于单片机为核心的数据采集系统产生影响,因为单片机功能强大、抗干扰能力强、可靠性高、灵活性好、开发容易等优点,使得基于单片机为核心的数据采集系统在许多领域得到了广泛的使用。
1.3本课题的主要技术指标
(1)采集信号通道数:
4通道。
(2)采集信号的电压范围:
-10V~+10V。
(3)最高采样速率:
250Ksps。
(4)能区分信号的最小变化电压:
4.883mV。
本系统采用下位机负责模拟数据的采集,从单片机负责采集四路数据,并应答主机发送的命令,上位机即主机是负责处理接受过来的数字量的处理及显示,主机和从机之间用RS-232进行通信。
这样用户可以在上位机上编写各种程序对文件中的数据进行有效查询和分析,有利于工业过程的长期正常运行和检查。
该系统采用的是AT89C52单片机。
2系统方案论证
2.1数据采集系统主要结构
数据采集,又称数据获取,是利用一种装置,从系统外部采集数据并输入到系统内部的一个接口。
数据采集技术广泛引用在各个领域。
70年代初,随着计算机技术及大规模集成电路的发展,特别是微处理器及高速A/D转换器的出现,数据采集系统结构发生了重大变革。
原来由小规模集成的数字逻辑电路及硬件程序控制器组成的采集系统被微处理器控制的采集系统所代替。
由微处理器去完成程序控制,数据处理及大部分逻辑操作,使系统的灵活性和可靠性大大地提高,系统硬件成本和系统的重建费用大大地降低。
在该系统中需要将模拟量转换为数据量,而A/D是将模拟量转换为数字量的器件,他需要考虑的指标有:
分辨率、转换时间、转换误差等等。
而单片机是该系统的基本的微处理系统,它完成数据读取、处理及逻辑控制,数据传输等一系列的任务。
在该系统中采用的是8051系列的单片机。
双机通信的串行口可以采用RS232C标准接口,由芯片MAX232实现双机的通信。
数据采集系统一般由信号调理电路,多路切换电路,采样保持电路,A/D,单片机等组成。
系统设计电路的结构框图如下:
图2-1数据采集系统的结构框图
如图1,单片机通过控制AD7862进行数据采集,将4路通道的数据可同时送入数据缓冲区,通过串行接口发送到PC机,在PC机中将十六进制的数据进行处理,最终电压数值可以在界面上显示。
2.2系统硬件器材的选型
2.2.1A/D模数转换器的选择
由于数据采集系统的精度和实时性对于和整个控制系统的性能至关重要,所以必须合理设计使其能提供预期的采样速度、达到一定的转换精度,并能做到电路简单、抗干扰性能强。
为了和本设计的指标一致,本采集系统采用ADI公司生产的12位模数转换器AD7862,它是一款高速、低功耗、双核12位模数转换器,采样的电压范围、精度及速度满足本设计的要求。
2.2.2单片机的选择
单片机是一种面向大规模的集成电路芯片,是微型计算机中的一个重要的分支。
此系统是由CPU、随即存取数据存储器、只读程序存储器、输入输出电路(I/O口),还有可能包括定时/计数器、串行通信口、显示驱动电路(LCD和LED驱动电路)、脉宽调制电路、模拟多路转换器及A/D转换器等电路集成到一个单块芯片上,构成了一个最小但完善的计算机任务。
而本设计选用的是AT89C52。
2.2.3串行口的选择
该串行口我选用了标准RS-232C接口,它是电平和TTL电平转换驱动电路。
常用的芯片是MAX232,MAX232的优点是:
(1)一片芯片可以完成发送转换和接收转换的双重功能;
(2)单一电源+5V供电;
(3)它的电路设计和连接比较简单而且功能齐全。
串行接口采用异步通信方式,将数据发给PC机。
利用VC++编写界面进行控制和显示。
3硬件介绍及系统硬件设计
3.1AD7862简介
AD7862是美国ADI公司出品的12位高速、低功耗转换器,单电源5伏供电。
它包含两个4us的延时的ADC,两个锁存器,一个内部的+2.5V参考电压和一个高速并行输出端口。
有四个模拟输入通道,分为两组,由A0选择。
每一组通道有两个输入(VA1&VA2orVB1&VB2),它们能同时的被采样和转化,保存相对的信号信息。
图3-1AD7862的内部结构
图3-2AD7862工作时序图
图3是AD7862的时序控制图。
在时序图中,一个转换在/CONVST的下降沿开始。
这时两个锁存器同时锁存两个通道的模拟量,在3.6us之后,转换完成,AD7862的输出寄存器的数据是有效的。
BUSY信号指示转换的结束,这时两个通道的转化的结果是有效的,可以去读。
下一个转化然后开始,如果多路选择器A0是低电平,那么转化后的第一次和第二次读的结果是A通道的模拟量。
在A0为高电平时,转换后的数据是B通道的模拟量。
3.2单片机简介
3.2.1单片机的概述
单片机是一种集成的电路芯块采用了超大规模技术把具有运算能力(如算术运算、逻辑运算、数据传送、中断处理)的微处理器(CPU),随机存取数据存储器(RAM),只读程序存储器(ROM),输入输出电路(I/O口),可能还包括定时计数器,串行通信口(SCI),显示驱动电路(LCD或LED驱动电路),脉宽调制电路(PWM),模拟多路转换及A/D转换器等电路集成到一块单片机上,构成一个最小然而很完善的计算机系统。
这些电路能在软件的控制下准确快速的完成程序设计者事先规定的任务。
总的而言单片机的特点可以归纳为以下几个方面:
集成度高、存储容量大、外部扩展能力强、控制功能强、低电压、低功耗、性能价格比高、可靠性高这几个方面[8]。
单片机按内部数据通道的宽度,可分为4位、8位、16位及32位单片机。
它们被使用在不同领域里,8位单片机由于功能强大,被广泛的使用在工业控制、智能接口、仪表仪器等各个领域。
8位单片机在中、小规模使用场合仍占主流地位,代表了单片机的发展方向,在单片机使用领域发挥越来越大的作用。
随着移动通讯、网络技术、多媒体技术等高科技产品进入家庭,32位单片机使用得到了长足发展。
纵观单片机的发展过程,可以预示单片机的发展趋势:
1、微型单片化;2、低功耗CMOS;3、和多品种共存;4、可靠性和使用水平越来越高。
单片机有着微处理器所不具备的功能,它可以独立地完成现代工业控制所要求的智能化控制功能这就是单片机的最大特点。
然而单片机又不同于单板机,芯片在没有开发前,它只是具备功能极强的超大规模集成电路,如果赋予它特定的程序,它便是一个最小的、完整的微机控制系统。
它和单板机或个人电脑有着本质的区别,单片机属于芯片级使用,需要用户了解单片机芯片的结构和指令系统以及其它集成电路使用技术和系统设计所需要的理论和技术,用这样特定的芯片设计使用程序,从而使芯片具备特定的智能[8]。
3.2.2AT89C52简介
AT89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
使用Atmel公司高密度非易失性存储器技术制造,和工业80C51产品指令和引脚完全兼容。
片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使AT89C52为众多嵌入式控制使用系统提供高灵活、超有效的解决方案[8]。
AT89C52具有以下标准功能:
8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。
另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止[8]。
其引脚图,如图3-3所示,它一共有40个引脚,引脚又分为四类。
其中有四个电源引脚,用来接入单片机的工作电源。
工作电源又分主电源、备用电源和编程电源。
还有两个时钟引脚XTAL1、XTAL2。
还有由P0口、P1口、P2口、P3口的所有引脚构成的单片机的输入/输出(I\O)引脚。
图3-3AT89C52的引脚图
综上所述,单片机的引脚特点是:
(1)单片机多功能,少引脚,使得引脚复用现象较多。
(2)单片机具有四种总线形式:
P0和P2组成的16位地址地址总线;P0分时复用为8位数据总线;ALE、PSEN、RST、EA和P3口的INT0、INT1、T0、T1、WR、RD以及P1口的T2、T2EX组成控制总线;而P3口的RXD、TXD组成串行通信总线。
89C52单片机的主要功能
和MCS-51单片机产品兼容
1)8K字节在系统可编程Flash存储器;
2)1000次擦写周期;
3)全静态操作:
0Hz~33Hz;
4)三级加密程序存储器;
5)32个可编程I/O口线;
6)三个16位定时器/计数器;
7)八个中断源;
8)全双工UART串行通道;
9)低功耗空闲和掉电模式;
10)掉电后中断可唤醒;
11)看门狗定时器;
12)双数据指针;
13)掉电标识符。
3.3系统硬件设计
系统硬件电路的设计由主要电路设计以及辅助电路设计。
主电路设计即单片机和微处理器AD7862的接口电路设计,和串行口RS-232C的硬件接口电路设计。
辅助电路包括复位电路和晶振电路。
3.3.1单片机最小系统设计
(1)复位电路设计
电容在上接高电平,电阻在下接地,中间为RST。
这种复位电路的工作原理是:
通电时,电容两端相当于是短路,于是RST引脚上为高电平,然后电源通过电阻对电容充电,RST端电压慢慢下降,降到一定程序,即为低电平,单片机开始正常工作。
如图3-4所示。
图3-4复位电路图
上电复位:
上电瞬间,电容充电电流最大,电容相当于短路,RST端为高电平,自动复位;电容两端的电压达到电源电压时,电容充电电流为零,电容相当于开路,RST端为低电平,程序正常运行。
手动复位:
首先经过上电复位,当按下按键时,RST直接和VCC相连,为高电平形成复位,同时电解电容被短路放电;按键松开时,VCC对电容充电,充电电流在电阻上,RST依然为高电平,仍然是复位,充电完成后,电容相当于开路,RST为低电平,正常工作。
(2)晶振电路设计
晶振的作用是选频,其实它就是频率选通的作用,晶振生产出来后就具有一个固定的谐振频率,它的工作原理是利用谐振去选择频率的;电路工作时会有很多不同频率的分量组成,当晶振接于电路时,和晶振发生谐振的频率分量将被选通,从而再进一步放大,形成一个闭环工作,晶振在单片机中的频率的确定要看具体的用途才好说了,要求运算速度快的选用谐振频率高的晶振,要求省电的选用谐振频率低的晶振。
如图3-5所示。
图3-5晶振电路图
3.3.2主电路设计
由于AD7862的输出是12位,单片机的寄存器是8位,所以要分俩次才能读。
到A\D转换的结果,固将单片机的两个IO口P2和单片机低8位相连,P1和高四位相连。
P3.4、P3.5、P3.7、P3.6作为控制口分别和AD7862的CONVST、CS、RD、A0以及指示灯信号相连。
具体电路如图3-6。
图3-6单片机和AD7862的接口电路
3.3.3RS232接口电路设计
PC机的串行口都是RS-232C标准的接口,所以其输入输出在电平上合采用TTL电平的AT89C52在接口时会产生电平不同的问题。
所以为了解决这个问题,在PC机和AT89C52单片机的串口通信电路中加入了MAXIM公司的MAX232芯片。
这种芯片可以实现TTL电平和RS-232C电平之间的转换。
采用MAX232接口的硬件接口电路如图3-7所示。
图3-7MAX232接口的硬件接口电路
现选用其中一路发送/接收,R1OUT接MCS-51的RXD,T1IN接MCS-51的TXD,T1OUT接PC机的RD,R1IN接PC机的TD,因为MAX232具有驱动能力,所以不需要外加驱动电路。
4软件程序设计
4.1单片机程序设计
单片机的设计采用查询方式如图4-1所示。
主要包括两部分,一个是单片机主动控制AD7862获得4路采集数据,存于数据缓冲区内,这里主要深刻理解AD7862的功能时序;另一种部分是单片机将存于数据缓冲区的4路采集数据(8字节)发送到上位机
。
图4-1下位机主程序流程
/******************************************/
//发送数据程序段
while(TI==0);
TI=0;
SBUF=temp[1];//0x5a;
while(TI==0);
TI=0;
CS=0;
RED=0;
temp[0]=P2;
temp[1]=P1;
temp[1]=temp[1]&0x0f;
RED=1;
CS=1;
SBUF=temp[0];//0x58;P2;
while(TI==0);
TI=0;
SBUF=temp[1];//0x5a;
while(TI==0);
TI=0;
/*功能描述:
单片机将存于数据缓冲区的4路采*/
/*集数据(12字节)发送到上位机*/
/******************************************/
4.2上位机程序设计
上位机主要解决数据处理的过程,当接受的2个字节的数据小于2048,即可判断电压为正电压,利用公式1;大于2048,利用公式2计算。
out=a×LSB
(1)
out=(a-4096)×LSB
(2)
最小分辨电压LSB=20/
利用VC对数据的处理程序和部分显示程序:
if(bReceive)
{
switch(myComm.GetCommEvent())
{
case1:
//数据发送事件
break;
case2:
//数据接收事件
input1=myComm.GetInput();
safearray1=input1;//将VAR
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 实时 数据 采集 系统 设计