基于单片机的数据采集系统的设计.docx

上传人:b****1 文档编号:14472433 上传时间:2023-06-23 格式:DOCX 页数:40 大小:251.06KB
下载 相关 举报
基于单片机的数据采集系统的设计.docx_第1页
第1页 / 共40页
基于单片机的数据采集系统的设计.docx_第2页
第2页 / 共40页
基于单片机的数据采集系统的设计.docx_第3页
第3页 / 共40页
基于单片机的数据采集系统的设计.docx_第4页
第4页 / 共40页
基于单片机的数据采集系统的设计.docx_第5页
第5页 / 共40页
基于单片机的数据采集系统的设计.docx_第6页
第6页 / 共40页
基于单片机的数据采集系统的设计.docx_第7页
第7页 / 共40页
基于单片机的数据采集系统的设计.docx_第8页
第8页 / 共40页
基于单片机的数据采集系统的设计.docx_第9页
第9页 / 共40页
基于单片机的数据采集系统的设计.docx_第10页
第10页 / 共40页
基于单片机的数据采集系统的设计.docx_第11页
第11页 / 共40页
基于单片机的数据采集系统的设计.docx_第12页
第12页 / 共40页
基于单片机的数据采集系统的设计.docx_第13页
第13页 / 共40页
基于单片机的数据采集系统的设计.docx_第14页
第14页 / 共40页
基于单片机的数据采集系统的设计.docx_第15页
第15页 / 共40页
基于单片机的数据采集系统的设计.docx_第16页
第16页 / 共40页
基于单片机的数据采集系统的设计.docx_第17页
第17页 / 共40页
基于单片机的数据采集系统的设计.docx_第18页
第18页 / 共40页
基于单片机的数据采集系统的设计.docx_第19页
第19页 / 共40页
基于单片机的数据采集系统的设计.docx_第20页
第20页 / 共40页
亲,该文档总共40页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于单片机的数据采集系统的设计.docx

《基于单片机的数据采集系统的设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的数据采集系统的设计.docx(40页珍藏版)》请在冰点文库上搜索。

基于单片机的数据采集系统的设计.docx

基于单片机的数据采集系统的设计

 

论文题目:

基于单片机的数据采集系统的设计

摘要

本文介绍了基于单片机的数据采集的硬件设计和软件设计,数据采集系统是模拟域与数字域之间必不可少的纽带,它的存在具有着非常重要的作用。

本文介绍的重点是数据采集系统,而该系统硬件部分的重心在于单片机。

数据采集与通信控制采用了模块化的设计,数据采集与通信控制采用了单片机AT89C52来实现,硬件部分是以单片机为核心,还包括A/D模数转换模块,显示模块和串行接口部分。

本系统下位机负责数据采集并应答主机的命令。

8路被测电压通过模数转换器ADC0809进行模数转换,实现对采集到的数据进行模拟量到数字量的转换,并将转换后的数据通过串行口RS-485传输到上位机,由上位机负责数据的接受、处理和显示,并用LED数码显示器来显示所采集的结果。

软件部分应用VC++编写控制软件,对数据采集系统、模数转换系统、数据显示、数据通信等程序进行了设计。

 

关键词:

数据采集AT89C52ADC0809RS-485

 

Abstract

Thisarticledescribesthehardwaredesignandsoftwaredesignofthedataonwhichbasedonsignal-chipmicrocomputer.Thedatacollectionsystemisthelinkbetweenthedigitaldomainandanalogdomain.Ithasanveryimportantfunction.Theintroductivepointofthistextisadatatocollectthesystem.

Thehardwareofthesystemfocusesonsignal-chipmicrocomputer.Datacollectionandcommunicationcontrolusemodulardesign.Thedatacollectedtocontrolwithcorrespondencetoadoptamachine8051tocarryout.Thepartofhardware’scoreisAT89C52,isalsoincludesA/Dconversionmodule,displaymodule,andtheserialinterface.

Slavemachineisresponsiblefordataacquisitionandansweringthehostmachine.8roadsweremeasuredtheelectricvoltagetopasstheingeneralusemold-fewconversionofADC0809,therealizationcarriesontheconversionthatimitatestomeasurethenumeraltomeasuretowardsthedatathatcollect.ThensendthedatatothehostmachinethroughRS-485,thehostmachineisresponsiblefordataanddisplay,LEDdigitaldisplayisresponsibledisplaythedata.ThesoftwareispartlyprogrammedwithVC++.Thesoftwarecanrealizethefunctionofmonitoringandcontrollingthewholesystem.Itdesignsmuchprogramlikedata-acquisitiontreatment,data-displayanddata-communicationect.

Keyword:

dataacquisitionAT89C52ADC0809RS-485

1绪论

1.1研究背景及其目的意义

近年来,数据采集及其应用受到了人们越来越广泛的关注,数据采集系统也有了迅速的发展,它可以广泛的应用于各种领域。

数据采集系统起始于20世纪50年代,1956年美国最先在军事上研究的数据采集测试系统,目标是测试过程中不依靠相关的测试文件,由非熟练人员进行操作,并且是由测试设备自动控制高速完成测试任务。

由于该种数据采集测试系统具有高速和灵活等特性,可以满足许多传统方法不能完成的数据采集和测试任务,因而得到了人们的初步认可。

大概在60年代后期,国外市场就有成套的数据采集设备出现[1]。

20世纪70年代后期,随着微型机的发展,出现了采集器、仪表同计算机溶为一体的数据采集系统。

由于这种数据采集系统优良的性能,超过了传统的专用数据采集系统和自动检测仪表,因而获得了高速的发展。

从70年代起,数据采集系统在以后发展过程中逐渐演变成为两类,一类是工业现场的数据采集系统,另一类是实验室的数据采集系统[2]。

20世纪80年代计算机的高速发展和在生活中的应用,使数据采集系统获得了较快的发展,逐步出现了自动测试系统与通用的数据采集。

那时候的数据采集系统主要分为两类,一类由采集器和通用接口总线、仪表仪器和计算机组成。

这类系统不仅在实验室获得了较多的应用,在工业生产中也有一定程度的应用。

第二类以标准总线、数据采集卡和计算机构成,这一类主要应用于工业现场。

20世纪80年代中后期,数据采集发生了惊人的变化,单片机、大规模集成电路和工业计算机的组合,用软件来完成管理任务,使系统的体积变小,成本降低,功能大大增强,数据处理能力倍增[3]。

自20世纪90年代至今,一些技术先进的国家,数据采集系统已成功的运用到工业、航空电子设备及宇航技术、军事等诸多领域。

随着集成电路制造技术的提高,出现了高性能、可靠性较高的单片机数据采集系统(DAS)。

数据采集技术俨然已经成为一种专门的技术,在工业等领域得到了广泛应用[4]。

该阶段的数据采集系统采用模块化结构,根据不同的应用需求,通过简单的增加和更改模块,并结合系统编程,就可以扩展和修改系统,迅速组成一个新的系统。

尽管现在以微机为核心的可编程数据采集技术的发展方向得到了迅速的发展,而且组成一个数据采集系统只需要一块数据采集卡,把它插在微机的扩展槽内并辅以应用软件,就能实现数据采集的功能,但这并不会对基于单片机为核心的数据采集系统产生根本性的影响。

相较于数据采集板卡功能和成本的限制,单片机具高效率、高性能、低电压、低功耗、低价格、多功能等优点,而双单片机又具有精度较高、转换速度快、能够对多点同时进行采集,因此能够开发出能满足实际应用要求的、电路结构简单的、可靠性高的数据采集系统。

这就使得以单片机为核心的数据采集系统能在许多领域得到广泛的应用。

1.2国内外研究现状

数据采集系统是通过采集传感器输出的模拟信号并转换成数字信号,并进行分析、处理、传输、显示、存储和显示。

它起始于20世纪中期,在过去的几十年里,随着信息领域各种技术的发展,在数据采集方面的技术也取得了长足的进步,采集数据的信息化是目前数据采集技术发展的主流方向。

多数领域都用到了数据采集,在飞机飞行、石油勘探、科学实验、地震数据采集领域已经得到广泛的应用。

我国的数字地震观测系统主要采用TDE-124C型TDE-224C型地震数据采集系统。

近年来,又成功研制了动态范围更大、线性度更高、兼容性更强、低功耗可靠性的TDE-324C型地震数据采集系统。

该数据采集对拾震计输出的电信号模拟放大后送至A/D数字化,A/D采用同时采样,采样数据经DSP数字滤波处理后,变成数字地震信号。

该数据采集系统具备24位A/D转化位数,采样率有50HZ、100HZ、200HZ[5].

美国PASCO公司生产的“科学工作室”是数据采集应用于物理实验的崭新系统,它主要由3部分组成:

(1)传感器:

利用先进的传感技术可实时采集物理实验中各种物理量;

(2)计算机接口:

将传感器采集到的数据信号输入计算机,采样速率最高为25万次/S;(3)软件:

英文及中文的应用软件[6]。

受需求牵引,新一代机载数据采集系统为满足飞行实验应用也在快速地发展。

如爱尔兰ACRA公司2000年研发推出的新一代KAM500机载数据采集系统到了2006年。

该系统采用16位(A/D)模拟数字变换,总采样率达500K/S,同步时间为+/-250ns,可以利用方式组成高达1000通道的大容量的分布式采集系统。

1.3该课题研究的主要内容

数据采集技术是信息科学的重要分支之一,它研究信息数据的采集、存储、处理以及控制等问题。

它是对传感器信号的测量与处理,以微型计算机等高技术为基础而形成的一门综合应用技术。

数据采集也是从一个或多个信号获取对象信息的过程。

随着微型计算机技术的快速发展和普及应用,数据采集监测技术已成为非常重要的检测技术,被广泛地应用于工农业等需要同时监控压力、温度和湿度等数据的场合。

数据采集是工业控制等系统不可缺少的环节,大多采用一些功能相对独立的专用单片机系统来实现其控制功能。

作为测控系统至关重要的部分,数据采集系统的性能直接影响到整个系统的运转。

 

传统的基于单片机的数据采集系统就是因为没有上位机的支持,所以无论使用什么样的数据存储器,它都只有有限的存储容量,所以不得不覆盖刷新历史数据,这样一来不利于用户整体分析数据,因而也不能准确地把握生产过程的状况并做出适当的计划。

本系统采用下位机负责模拟数据的采集,单片机负责采集八路数据,并应答主机发送的命令,上位机即主机是负责处理接受过来的数字量的处理及显示,主机和从机之间用RS-485进行通信。

这样用户可以在上位机上编写各种程序对文件中的数据进行有效查询和分析,有利于工业过程的长期正常运行和检查。

该系统采用的是AT89C52单片机,此芯片功能比较强大,能够满足设计要求。

2数据采集总体设计

2.1系统设计的基本要求

(1)将采集的模拟信号转换成方便处理的数字量。

(2)对完成转换后的数字量进行处理。

(3)能够控制信号的采集、处理、显示等。

(4)该系统要具有准确性、可靠性和稳定性。

(5)给出具体的硬件和软件。

在系统的扩展和配置设计中,应遵循以下原则:

(1)为了给硬件系统的标准化、模块化打下基础,尽可能多地选择典型电路。

(2)系统外围设备的配置要满足系统的功能要求,留有余地,以便进行改进。

(3)应将硬件结构和软件相结合。

(4)系统中相关器件要尽可能做到性能匹配。

2.2数据采集系统结构功能及简介

数据采集,又称数据获取,是利用一种装置,从系统外部采集数据并输入到系统内部的一个接口。

数据采集技术广泛应用在各个领域。

70年代初,随着大规模集成电路及计算机技术的发展,特别是微处理器及高速A/D转换器的诞生,数据采集的系统结构发生了重大的改变。

原来由硬件程序控制器组成的采集系统及小规模集成的数字逻辑电路变为被由微处理器控制的采集系统所代替。

由微处理器完成程序控制,逻辑操作及大部分数据处理,使系统的可靠性和灵活性得到了较大的提高,系统的硬件成本和重建费用也得到了较大的降低[7]。

在本系统中需要将模拟量转换为数字量,而A/D是将模拟量转换为数字量的器件,它需要考虑的指标有:

分辨率、转换时间、转换误差等等。

而单片机是该系统的基本的微处理系统,它完成数据读取、处理及逻辑控制,数据传输等一系列的任务。

在该系统中采用的是8051系列的单片机。

双机通信的串行口可以采用RS485C标准接口,由芯片MAX485实现双机的通信。

而数据的显示则采用的是LED数码管,该器件比较简单,在生活中接触也较多。

本数据采集系统可以采集八路模拟信号。

由于采集的信号多种多样,需要多种转换器把信号转换为电压模拟信号,本文就不不作介绍。

系统把模拟电压信号转换成数字信号,由单片机串口经过TTL电平转换后,发送到PC机由PC机处理采集的信号。

其中:

AT89C52(主控芯片):

CPU作为该系统的核心控制芯片,起采集、控制显示的作用。

显示模块:

采用四位一体共阴LED数码管用来显示采集到的数值。

通信模块:

采用RS-485标准实现单片机与PC机间的通信。

模数转换模块:

采用ADC0809进行模拟信号到数字信号的转换,以供给单片机采集数据。

系统框图如图2-1所示:

图2-1系统框图

3硬件部分

信号采集过程中,被测量一般由传感器供给,常为微弱信号,需要对其进行适当的调整。

由于此处输入信号多种多样,不能一一列举,所以本文并未详细讨论。

但在实际工程设计中必不可少。

3.1单片机基本模块

单片机是一种面向大规模的集成电路芯片,是微型计算机中的一个重要的分支。

此系统是由CPU、输入输出电路(I/O口),还包括定时/计数器、串行通信口、显示驱动电路(LCD和LED驱动电路)、A/D转换器等电路集成到一个单块芯片上,构成了一个最小但完善的计算机任务。

单片机要使用特定的组译和编译软件编译程序,再用keiluvision2把程序下载到单片机内。

3.1.1AT89C52单片机 

美国ATMEL公司生产的AT89C52是低电压,高性能CMOS8位单片机,片内含256bytes的随机数据存储器(RAM)和8Kbytes的可反复擦写的只读程序存储器(EEPROM),器件不仅采用ATMEL公司的非易失性、高密度存储技术生产,而且兼容标准MCS-51指令系统及8052产品的引脚,片内置通用8位中央处理器(CPU)和Flash存储单元,AT89C52单片机的强大功能,能适合于许多比较复杂的控制应用场合。

因此,在这里我选用AT89C52单片机来完成,它的优点很多,比如结构简单、编程方便、经济、易于连接等,特别是其内部的定时器/计数器、中断系统资源丰富,具有较高的应用价值[8]。

3.1.2AT89C52单片机主要特性 

AT89C52提供以下标准功能:

8k字节FLASH闪速存储器,256字节片内RAM,32个I/O口线,一个5向量两级中断结构,2个16位定时/计数器,一个全双工串行通信口,时钟电路及片内振荡器。

同时,AT89C52降至0Hz的静态逻辑操作,并支持两种可选的节电工作模式。

空闲方式体制CPU的工作,但允许RAM、定时/计数器、串行通信口及中断系统继续工作。

掉电方式保存RAM中的内容,但振荡器停止工作并禁止其他所有部件工作直到下一个硬件复位。

AT89C52单片机的引脚如图3-1所示[99]。

图3-1AT89C52单片机的引脚图

3.1.3AT89C52单片机时钟和复位电路的设计

AT89C52单片机为40引脚双列直插芯片,有四个I/O口P0,P1,P2,P3,MCS-51单片机共有4个8位的I/O口(P0、P1、P2、P3),每一条I/O线都能独立地作输出或输入。

单片机的时钟电路连接图如图3-3所示,18引脚和19引脚接时钟电路,在单片机内部有一个高增益反相放大器,XTAL1接外部晶振和微调电容的一端,在片内它是高增益反相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片内它是高增益反相放大器的输出,所以这样就构成了自激振荡器。

结合本设计的要求采用内部振荡方式,所选的晶振为6MHz。

复位电路是完成单片机片内电路的初始化,使单片机从一种确定的状态下开始运行。

第9引脚为复位输入端,接上电容,电阻构成上电复位电路。

另外计算机系统在工作的时候,有时会不可避免地受到一些外界的干扰,如电源的波动、电磁场的干扰、现场环境的干扰等,这些都可能造成系统“死机”或程序跑飞,使系统不能正常工作。

对于事务处理、办公自动化的应用场合,操作者在现场,一经发现就马上进行处理,如进行复位操作或关断电源重新启动。

在单片机和嵌入式应用系统中,应用的对象对可靠性的要求更高,特别在无人值守、24小时连续工作的场合,如火灾报警系统、安全防盗报警系统等应用中,决不允许应用系统“死机”或程序跑飞。

这样,就要求单片机或嵌入式应用系统能够自动检测到并能自动重新复位或启动系统,保障应用系统正常工作。

为此,在单片机或嵌入式系统中引入自动监视技术,即俗称的看门狗技术(WatchDog)。

看门狗技术的监控思路是:

在系统中设置一个定时器(看门狗定时器),处理器正常运行时,软件程序中每隔一定时间间隔要发出一条(或几条)指令,将看门狗定时器清零,使看门狗定时器在系统正常工作时总是不能溢出。

一旦处理器“死机”或程序跑飞,处理器就不能向看门狗定时器发出清除脉冲。

看门狗定时器就会产生计数溢出信号,该信号和处理器的复位引脚相连,因此就会自动复位微处理器,应用系统重新启动和继续工作。

这些操作是系统自动检测和进行的,不需要人为干预,可保证应用系统可靠地工作。

在单片机数据采集系统中,89C52利用P1端口的四条线和看门狗芯片X5045的SPI接口相连。

89C52的P1.5连接到X5045的SI端,P1.6连接到X5045的SCK,P1.7连接到X5045的SO端和CS/WDI端,X5045的RESET输出信号连接到89C52的复位输入端RST上,电路图如图3-2所示[9]。

图3-2X5045连接图

综上,将时钟电路和复位电路与单片机相连单片机控制系统最基本的部分,如图3-3所示

图3-3单片机时钟和复位电路

3.2A/D转换模块

在我们所采集的信号中大多是连续变化的物理量,而要对各种信号进行处理,则需要将其转换为计算机能处理的数字量,A/D转换器就是将连续变化的模拟量转换成计算机能接受的数字量。

3.2.1A/D模数转换的选择

A/D转换器的种类很多,就位数来说,可以分为8位、10位、12位和16位等。

位数越高其分辨率就越高,价格也就越贵。

A/D转换器型号很多,而其转换时间和转换误差也各不相同。

按模拟量转换成数字量的原理可以分为3种:

双积分式、逐次逼近式及并行式A/D转换器。

(1)逐渐逼近式A/D转换器:

它是一种速度快、精度较高、成本较低的直接式转换器,其转换时间从几微秒到几百微秒。

(2)双积分A/D转换器:

它是一种间接式的A/D转换器,优点是抗干扰能力强,精度比较高,不足是数度很慢,适用于系统对转换度要求不高的场合。

(3)并行式A/D转换器:

它又被称为flash(快速)型,它的转换速度很高,但她采用较多的比较器,而n位的转换就需要2n-1个比较器,因此电路规模也极大,价格也很贵,只适用于视频A/D转换器等数度特别高的领域[10]。

比较以上三种方案,在价格、转换速度等多种标准的考虑下,本设计选用逐渐逼近式A/D转换器——ADC0809。

下面就具体的介绍一下ADC0809的工作原理。

1、ADC0809的介绍

ADC0809是八通道的八位逐次逼近式A/D转换器。

由单一的5V电源供电,片内带有锁存功能的8选1的模拟开关。

由C、B、A的编码来决定所选的模拟通道。

转换时间为100μs。

转换误差为1/2LSB。

它的引脚的排列见图3-4

图3-4ADC0809的引脚图

IN7~IN0:

八个通道的模拟输入量。

ADDA、ADDB、ADDC:

模拟通道地址线。

当CBA=000时,IN0输入,当CBA=111时,IN7输入。

ALE:

地址锁存信号。

START:

转换启动信号,高电平有效。

D7~D0:

数据输出线。

三态输出,D7是最高位,D0是最低位。

OE:

输出允许信号,高电平有效。

CLK:

时钟信号,最高频率为640KHZ。

EOC:

转换结束状态信号。

上升沿后高电平有效。

Vcc:

+5V电源。

Vref:

参考电压[11]。

2、ADC0809时序图及其接口电路

ADC0809的时序图如图3-5所示:

图3-5ADC0809的时序图

其工作过程是:

ALE的上升沿将A、B、C端选择的通道地址锁存到8位A/D转换器的输入端,START的下降验启动8位A/D转换器进行转换。

A/D转换开始使EOC端输出低电平;A/D转换结束,EOC输出高电平。

该信号通常可作为中断申请信号。

OE为读出数据允许信号,OE端为高电平时,可以读出转换的数字量。

硬件电路设计时,需根据时序关系及软件进行设计。

A/D转化模块对模拟量进行一次模数转换,要用到一个ADC0809,又因为它们之间的时钟频率不一样,所以需要用74LS74对其进行一个二分频的工作,这里只需要将74LS74的第3根引脚CLK1与单片机AT89C52的第30根ALE引脚相连,将74LS74的第9根引脚Q2与ADC0809的时钟信号CLK引脚相连。

由于ADC0809具有输出3态锁存器,其八位数据输出引脚可直接与数据总线相连。

地址译码引脚C、B、A分别与地址总线低三位P2.2、P2.1、P2.0相连,用来选通IN0~IN7中的一个通道。

在启动A/D转换时,由单片机的P3.4控制A/D转换器的启动和地址锁存,因为ALE和START连在一起,所以AD0809在锁存通道的时候,同时也启动了A/D转换器。

在读取转换结果时,用低电平的读信号RD,产生的正脉冲作为OE信号,用以打开三态输出锁存器。

将转换结果输出。

而低电平的写信号WR则表示转换结束状态信号。

因P0口还需要连接LED显示电路,所以AT89C52与ADC0809之间需要加芯片74LS573来缓冲数据的传输,芯片74LS573的介绍在3.4节有详细介绍。

该部分的连接图如图3-6所示

图3-6ADC0809与单片机的连接图

3.3键盘模块

键盘是一种常见的输入设备,用户可以向计算机输入数据或命令。

根据按键的识别方法分类,有编码键盘和非编码键盘两种。

通过硬件识别的键盘称编码键盘;通过软件识别的键盘称为非编码键盘。

非编码键盘有两种接口方法:

一种是独立按键接口;另一种是矩阵式按键接口。

1、独立按键接口

在单片机中,如果所需的按键较少,可采用独立式键盘。

每只按键接单片机的一条I/O线,通过对线的查询,即可识别各按键的状态。

如图3-7所示。

4只按键分别接单片机的P1.0~P1.3I/O线上。

无按键按下时,P1.0~P1.3线上均输入高电平。

当某按键按下时,与其相连的I/O线将得到低电平输入。

图3-7独立按键接口图

2.矩阵式按键接口

在单片机中需要的按键较多时,通常把键排成矩阵形式,这样可以节省硬件资源。

如对于20只按键接口,如采用按键独立方式,需要20个I/O口。

如采用矩阵式按键方式,则只需要9个I/O口。

如图3-8所示。

单片机系统中的非编码式键盘程序主要由判别是否有键按下子程序、键的识别子程序、找到闭合键后,读入相应的键值,再转到相应的键处理程序几个部分组成。

图3-8矩阵式按键接口图

在本系统中所用到的按键有9个,所以采取矩阵式按键接口方式。

3.4LED数码管显示模块

在小型控制装置和数字化仪器仪表中,往往只要几个简单的数字显示或字状态便可满足现场的需求,而显示数码管LED因其成本低廉、配置灵活、与计算机接口方便等特点,在小型微机控制系统中得到极为广泛的应用[12]。

3.4.1LED数码管显示器的结构原理

发光二极管LED是利用PN结把电能转换光能的固体发光器件,根据制造材料的不同,可以发出红、黄、绿、白等不同色彩的可见光束。

LED的伏安特性类似于普通二极管,正向压降为2V左右,工作电流一般在10mA~20mA之间较为合适一个8段LED显示器的结构如图3-9-1所示。

图3-9-18段数码管结构图

图3-9-2共阴极结构图图

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2