数据采集系统课程设计.docx
- 文档编号:11494064
- 上传时间:2023-06-01
- 格式:DOCX
- 页数:37
- 大小:671.59KB
数据采集系统课程设计.docx
《数据采集系统课程设计.docx》由会员分享,可在线阅读,更多相关《数据采集系统课程设计.docx(37页珍藏版)》请在冰点文库上搜索。
数据采集系统课程设计
智能仪表综合训练设计说明书
题目:
数据采集系统设计(LCD)
——硬件设计
学生姓名:
学号:
专业:
班级:
指导教师:
年月日
摘要
数据采集系统是模拟域与数字域之间必不可少的纽带,它的存在具有着非常重要的作用。
本设计介绍的重点是数据采集系统,而该系统硬件部分的重心在于单片机。
数据采集与通信控制采用了模块化的设计,数据采集与通信控制采用了单片机STC89C52来实现,硬件部分以单片机为核心,包括A/D转换模块,LCD显示模块,和串行接口模块等。
8路被测电压通过模数转换器ADC0832进行模数转换,实现对采集到的数据进行模拟量到数字量的转换,将转换后的数字量送入到单片机STC89C52中进行处理,并将处理后的数据通过LCD1602进行显示。
软件部分应用KeilμVision4编写程序控制软件,对数据采集系统、模数转换系统、数据显示、数据通信等程序进行设计。
关键词:
数据采集系统;单片机;A/D转换;标度变换;LCD显示
Abstract
Dataacquisitionsystemisessentialbetweentheanalogdomainanddigitaldomainlink,itspresencehasaveryimportantrole.Thefocusofthispresentationistodesigndataacquisitionsystem,andthecenterofgravityliesinthehardwareofthesystemmicrocontroller.Dataacquisitionandcommunicationcontrolusesamodulardesign,datacollectionandcommunicationiscontrolledbythemicrocontrollerSTC89C52toachieve,thehardwarepartofmicrocontrollerasthecore,includingtheA/Dconvertermodule,LCDdisplaymodule,andaserialinterfacemodule.8-channelanalogtodigitalconverterADC0832measuredvoltagethroughanalogtodigitalconversion,thecollecteddataisanalogtodigitalconversion,theconverteddigitalSTC89C52fedtothemicrocontrollerforprocessingandtreatmentthedataLCD1602display.KeilμVision4partoftheapplicationsoftwareprogrammingcontrolsoftware,dataacquisitionsystems,analogtodigitalconversionsystems,datadisplay,datacommunicationsandotherprogramdesign.
Keywords:
Dataacquisitionsystem;themicrocontroller;A/Dconversion;thescaletransformation;LCDdisplay
第一章绪论
1.1数据采集系统的背景及发展
数据采集系统起始于20世纪50年代,1956年美国首先研究了用在军事上的测试系统,目标是测试中不依靠相关的测试文件,由非熟练人员进行操作,并且测试任务是由测试设备高速自动控制完成的。
由于该种数据采集测试系统具有高速性和一定的灵活性,可以满足众多传统方法不能完成的数据采集和测试任务,因而得到了初步的认可。
大约在60年代后期,国外就有成套的数据采集设备产品进入市场,此阶段的数据采集设备和系统多属于专用的系统。
20世纪70年代中后期,随着微型机的发展,诞生了采集器、仪表同计算机溶为一体的数据采集系统。
由于这种数据采集系统的性能优良,超过了传统的自动检测仪表和专用数据采集系统,因此获得了惊人的发展。
从70年代起,数据采集系统发展过程中逐渐分为两类,一类是实验室数据采集系统,另一类是工业现场数据采集系统。
就使用的总线而言,实验室数据采集系统多采用并行总线,工业现场数据采集系统多采用串行数据总线。
20世纪80年代随着计算机的普及应用,数据采集系统得到了极大的发展,开始出现了通用的数据采集与自动测试系统。
该阶段的数据采集系统主要有两类,一类以仪器仪表和采集器、通用接口总线和计算机等构成。
另一类以数据采集卡、标准总线和计算机构成。
20世纪80年代后期,数据采集系统发生了极大的变化,工业计算机、单片机和大规模集成电路的组合,用软件管理,使系统的成本降低,体积减小,功能成倍增加,数据处理能力大大加强。
20世纪90年代至今,在国际上技术先进的国家,数据采集技术已经在军事、航空电子设备及宇航技术、工业等领域被广泛应用。
由于集成电路制造技术的不断提高,出现了高性能、高可靠性的单片数据采集系统(DAS)。
目前有的单片机数据采集系统(DAS)精度已达16位,采集速度每秒达到几十万次以上。
因此数据采集技术已经成为一种专门的技术,在工业领域得到了广泛的应用。
1.2数据采集系统设计的目的及意义
本设计的主要目的是实现单片机的数据采集及显示功能,为实现该功能,进行了有关的硬件电路与软件编程设计。
硬件电路设计中,运用protel99,在已给实验板上,选择设计中要用到的器件,并进行硬件原理图的绘制以及实验器件的连接。
软件编程设计中,运用KeiluVision4编程环境,对要实现的功能进行编程。
1.3数据采集系统设计的内容
本设计运用单片机STC89C52进行数据采集的设计,通过一个可调电位器输出0-5V的模拟量,模拟量(0-5V)通过ADC0832模数转换芯片转换成数字量送入单片机中,单片机对输入的数字量进行处理之后,通过LCD1602液晶显示屏显示。
该系统可测量0~100℃的温度信号,通过按键控制信号的上下限以及报警功能。
第二章数据采集系统总体方案设计
2.1数据采集系统
数据采集,又称数据获取,是利用一种装置,从系统外部采集数据并输入到系统内部的一个接口。
是对一个或多个信号获取对象信息的过程。
数据采集器是一种具有实验室或现场进行实时数据采集、自动存储记录、信号预处理、即时显示、即时状态分析、自动传输等功能的自动化设备。
70年代初,随着计算机技术及大规模集成电路的发展,特别是微处理器及高速A/D转换器的出现,数据采集系统结构发生了重大变革。
原来由小规模集成的数字逻辑电路及硬件程序控制器组成的采集系统被微处理器控制的采集系统所代替。
由微处理器去完成程序控制,数据处理及大部分逻辑操作,使系统的灵活性和可靠性大大地提高,系统硬件成本和系统的重建费用大大地降低。
2.2数据采集系统工作原理
数据采集系统一般由数据输入通道、数据存储与管理、数据处理、数据输出及显示五部分组成。
通过传感器从被测对象获取有用信息,并将其输出信号转换为计算机能识别的数字信号,然后送入计算机进行相应的处理,得出所需的数据。
同时将得到的数据送入计算机进行显示、储存,以便实现对某些物理量的监视,其中一部分数据还将被生产过程中的计算机控制系统用来进行某些物理量的控制。
2.3数据采集系统总体结构
本设计主要由单片机模块、A/D转换模块、显示模块、通信模块以及按键模块构成。
数据采集系统框图如图2.1所示。
图2.1数据采集系统框图
2.3.1单片机模块
单片机是在一块芯片上集成了CPU(中央处理器)、RAM(数据存储器)、ROM(程序存储器)、时钟、定时/计数器、I/O(输入/输出)口等的微型计算机。
广泛运用于各种仪器仪表中,使仪器仪表数字化、微型化和智能化,提高它们的测量速度、测量精度和自动化程度,简化仪器仪表的硬件结构,便于使用、维修和改进,提高其性能和价格比。
有些型号的单片机包括A/D转换器、D/A转换器、模拟比较器、脉宽调制器、USB口等,功能强、价格低、支持软件多,便与开发。
不同单片机的区别主要在于CPU的字长、结构,存储器的容量和种类,以及I/O功能等方面。
本次设计选用STC89C52RC作为系统的微控制芯片。
2.3.2A/D转换模块
模拟量转换成数字量的过程被称为模数转换,简称A/D转换。
完成模数转换的电路称为A/D转换器。
模数转换器是把经过与标准量(或参考量)比较处理后的模拟量转换成以二进制数值表示的离散信号的转换器。
模数转换器最重要的参数是转换的精度,通常用输出的数字信号的位数的多少表示。
转换器能够准确输出的数字信号的位数越多,表示转换器能够分辨输入信号的能力越强,转换器的性能也就越好。
A/D转换一般要经过采样、保持、量化及编码4个过程。
A/D转换器的种类繁多,智能仪器中应用较多的主要有并联比较型。
双积分型、逐次逼近型、∑-△调制型等.
本次设计选用逐次逼近型ADC0832A/D转换器。
2.3.3显示模块
液晶显示器(LCD)是一种借助光线照射液晶材料而实现的被动显示器件,它利用液晶分子排列结构的可极化性和旋光特性进行工作。
显示器的组成包括上下偏振片、反光板、正背面电极及其基板、液晶材料等。
液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。
本设计选用LCD1602作为显示芯片。
2.3.4按键模块
键盘是一组代表数字和有关命令的按键集合,是智能仪器最常见的输入设备。
按键具有“断开”和“闭合”两种状态,通过接口电路对应于0和1两个逻辑值。
按照与主机的连接方式,键盘可分为独立式键盘、非编码矩阵式键盘和编码矩阵式键盘。
本次设计选用独立式键盘。
2.3.5通信模块
串行通信是通行双方的数据沿一根或两根连线实现二进制数据序列的传输。
根据数据的传送方向和发送/接收是否能同时进行,将数据的传送方式分为单工方式、半双工方式和全双工方式。
根据同步方式分为同步串行方式和异步串行方式。
本次设计选用MAX232实现与单片机的通信。
数据采集系统实物图见附录1。
第三章硬件设计
3.1硬件系统原理
将传感器采集到的模拟信号经ADC0832转换成数字信号,并送入到STC89C52单片机中进行处理,处理后的信号通过LCD1602液晶显示屏显示。
3.2系统主要仪器仪表选型
系统主要器件选型如表3.1所示。
表3.1系统主要器件型号
名称
型号
数量
单片机
STC89C52
1
A/D转换器
ADC0832
1
串口芯片
MAX232
1
LCD
LCD1602
1
3.2.1单片机选型
STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
⑴主要功能
STC89C52主要功能特性如表3.2所示。
表3.2STC89C52主要功能特性
兼容MCS51指令系统
8K可反复擦写Flash ROM
32个双向I/O口
256x8bit内部RAM
2个串行中断
可编程UART串行通道
2个外部中断源
共6个中断源
2个读写中断口线
3级加密位
低功耗空闲和掉电模式
软件设置睡眠和唤醒功能
3个16位可编程定时/计数器中断
时钟频率0-24MHz
⑵引脚功能
①主电源引脚(2根)
VCC(Pin40):
电源输入,接+5V电源
GND(Pin20):
接地线
②外接晶振引脚(2根)
XTAL1(Pin19):
片内振荡电路的输入端
XTAL2(Pin18):
片内振荡电路的输出端
③控制引脚(4根)
RST/VPP(Pin9):
复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。
ALE/PROG(Pin30):
地址锁存允许信号
PSEN(Pin29):
外部存储器读选通信号
EA/VPP(Pin31):
程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。
④可编程输入/输出引脚(32根)
STC89C52单片机有4组8位的可编程I/O口,分别为P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。
PO口(Pin39~Pin32):
8位双向I/O口线,名称为P0.0~P0.7
P1口(Pin1~Pin8):
8位准双向I/O口线,名称为P1.0~P1.7
P2口(Pin21~Pin28):
8位准双向I/O口线,名称为P2.0~P2.7
P3口(Pin10~Pin17):
8位准双向I/O口线,名称为P3.0~P3.7
STC89C52引脚分布图如图3.1所示。
图3.1STC89C52引脚分布图
3.2.2模数转换器件选型
ADC0832是美国国家半导体公司生产的一种8 位分辨率、双通道A/D转换芯片。
具有体积小,性价比高,兼容性高的特点。
⑴主要特点
·8位分辨率;
·双通道A/D转换;
·输入输出电平与TTL/CMOS相兼容;ADC0832;
·5V电源供电时输入电压在0~5V之间;
·工作频率为250KHZ,转换时间为32μS;
·一般功耗仅为15mW;
·8P、14P—DIP(双列直插)、PICC多种封装;
·商用级芯片温宽为0℃~+70℃,工业级芯片温宽为−40℃~+85℃;
⑵引脚说明
·CS_ 片选使能,低电平芯片使能;
·CH0模拟输入通道0,或作为IN+/-使用;
·CH1模拟输入通道1,或作为IN+/-使用;
·GND芯片参考0电位(地);
·DI数据信号输入,选择通道控制;
·DO数据信号输出,转换数据输出;
·CLK芯片时钟输入;
·Vcc/REF电源输入及参考电压输入(复用);
ADC0832引脚分布图如图3.3所示。
图3.3ADC0832引脚分布图
3.2.3显示器件选型
LCD1602液晶显示模块基本技术:
⑴主要功能
·40通道点阵LCD驱动;
·可选择当作行驱动或列驱动;
·输入/输出信号:
输出,能产生20×2个LCD驱动波形;输入,接受控制器送出的串行数据和控制信号,偏压(V1~V6);
·通过单片机控制将所测的频率信号读数显示出来。
⑵引脚说明
模块引脚功能表如表3.3所示。
表3.3模块引脚功能表
引脚序号
符号
名称
功能
1
VSS
接地
0V
2
VDD
电路电源
5V±10%
3
VEE
液晶驱动电压
保证VDD-VEE=4.5~5V电压差
4
RS
寄存器选择信号
1:
数据寄存器0:
指令寄存器
5
R/W
读/写信号
1:
读信号 0:
写信号
6
E
片选信号
下降沿触发,锁存数据
7~14
DB0~DB7
数据线
数据传输
LCD1602引脚分布图如图3.4所示。
图3.4LCD1602引脚分布图
1指令功能
指令功能表如图3.4所示。
表3.4指令功能表
指令
RS
R/W
DB7
DB6
DB5
DB4
DB3
DB2
DB1
DB0
清屏
0
0
0
0
0
0
0
0
0
1
返回
0
0
0
0
0
0
0
0
1
X
置输入模式
0
0
0
0
0
0
0
1
I/D
S
显示开/关控制
0
0
0
0
0
0
1
D
C
B
光标或字符移位
0
0
0
0
0
1
S/C
R/L
X
X
置功能
0
0
0
0
1
DL
N
F
X
X
置字符发生存储器地址
0
0
0
1
字符发生存储器地址
置数据存储器地址
0
0
1
显示数据存储器地址
读忙标志或地址
0
1
BF
计数器地址
写数到CGRAM或DDRAM
1
0
写入的数据
从CGRAM或DDRAM读数
1
1
读出的数据
寄存器选择功能表如表3.5所示。
表3.5寄存器选择功能表
RS
R/W
操 作
0
0
指令寄存器(IR)写入
0
1
忙标志和地址计数器读出
1
0
数据寄存器(DR)写入
1
1
数据寄存器读出
(注:
忙标志为"1"时,表明正在进行内部操作,此时不能输入指令或数据,要等内部操作结束,即忙标志为"0"时。
)
3.2.4串口芯片选型
MAX232芯片是美信(MAXIM)公司专为RS-232标准串口设计的单电源电平转换芯片,使用+5v单电源供电。
⑴主要特点
·符合所有的RS-232C技术标准;
·只需要单一+5V电源供电;
·片载电荷泵具有升压、电压极性反转能力,能够产生+10V和-10V电压V+、V-;
·功耗低,典型供电电流5mA;
·内部集成2个RS-232C驱动器;
·高集成度,片外最低只需4个电容即可工作。
⑵引脚介绍(16个引脚)
第一部分是电荷泵电路。
由1、2、3、4、5、6脚和4只电容构成。
功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。
第二部分是数据转换通道。
由7、8、9、10、11、12、13、14脚构成两个数据通道。
其中11脚(T1IN)、12脚(R1OUT)、13脚(R1IN)、14脚(T1OUT)为第一数据通道。
7脚(T2OUT)、8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)为第二数据通道。
TTL/CMOS数据从11引脚(T1IN)、10引脚(T2IN)输入转换成RS-232数据后从14脚(T1OUT)、7脚(T2OUT)送到电脑DB9插头;DB9插头的RS-232数据从13引脚(R1IN)、8引脚(R2IN)输入转换成TTL/CMOS数据后从12引脚(R1OUT)、9引脚(R2OUT)输出。
第三部分是供电。
15脚GND、16脚VCC(+5v)。
MAX232引脚分布图如图3.5所示。
图3.5MAX232引脚分布图
3.3相关电路设计
3.3.1单片机最小系统
单片机的最小系统由电源、晶振以及复位电路构成。
·电源:
5V;
·晶振:
一般用12MHz的,配两个30pF的电容,接到18、19两个脚;
·复位:
高电平复位,RST接10K电阻到地,接10uF电容到电源。
单片机最小系统接线图如图3.6所示。
图3.6最小系统接线图
3.3.2模数转换电路
模数转换电路主要将传感器采集到的模拟信号通过ADC0832转换成数字信号,实现模拟量到数字量的转换。
模数转换电路如图3.7所示。
图3.7模数转换电路
3.3.3显示电路
显示电路主要由单片机STC89C52的P0口输出数字信号给LCD1602,实现信号的显示。
当P0口做I/O输出时,需接上拉电阻;做数据输出时,不需接上拉电阻。
LCD1602液晶显示电路如图3.8所示。
图3.8LCD1602液晶显示电路
3.3.4串口电路
串口通信电路主要由MAX232连接单片机与计算机,进行电平转换,实现单片机与计算机的通信。
MAX232串口通信电路如图3.9所示。
图3.9串口通信电路
3.3.5按键电路
按键电路由三个独立按键构成,分别接单片机STC89C52的P1.4,P1.5和P1.6口。
P1.4口的按键功能是控制设定值的增加,P1.5口的功能是控制设定值的减小,P1.6口的功能是控制报警及报警。
按键电路如图3.10所示。
图3.10按键电路
3.4系统原理图
根据以上各部分电路的设计,原理图见附录2。
根据原理图绘制的PCB图见附录3。
第四章软件设计
4.1开发环境
KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。
Keil则为其提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。
运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。
本设计所用到的编程软件KeilμVision4是在KeilμVision2的基础上发展并完善而来的。
KeilμVision4发布于2009年2月,引入了灵活的窗口管理系统,使开发人员能够使用多台监视器,并提供了视觉上的表面对窗口位置的完全控制的任何地方。
新的用户界面可以更好地利用屏幕空间和更有效地组织多个窗口,提供一个整洁,高效的环境来开发应用程序。
新版本支持更多最新的ARM芯片,还添加了一些其他新功能。
2011年3月ARM公司发布最新集成开发环境RealViewMDK开发工具中集成了最新版本的KeiluVision4,其编译器、调试工具实现与ARM器件的最完美匹配。
4.2程序设计
整个设计分为四大块,A/D转换程序、LCD显示程序、键盘程序、主程序。
按设计方法的思路将A/D转换程序以子程序调用的形式出现,LCD显示程序设为库文件,然后由主程序调用子程序和库文件完成设计功能。
4.2.1主程序
主程序开始先对LCD进行初始化,然后进入循环状态(while
(1))。
进入循环状态后,首先对设定值进行检测,然后读取实际电压值与温度值,将实际测得的温度值与设定值进行比较,若实际温度大于设定温度则报警,否则解除报警,最后将实际的电压值与温度值通过LCD进行显示。
主程序流程图如图4.1所示。
图4.1主程序流程图
4.2.2A/D转换程序
A/D转换程序首先对ADC0832进行初始化并启动0832,此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK输入时钟脉冲,DO/DI端则进行通道功能的选择。
进行A/D转换时,要先将CS使能端置于低电平并且保持低电平直到转换完全结束。
在第1个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。
在第2、3个脉冲下沉之前DI端应输入2位数据用于选择通道。
在第3个脉冲的下沉之后DI端的输入电平就失去输入作用,DO/DI端开始利用数据输出DO进行转换数据的读取。
从第4个脉冲下沉开始到第11个脉冲发出,DO端从高到低输出8位数据,一个字节的输出完成。
此后开始从低到高输出相反字节的数据,即从第11个脉冲的下沉输出数据,到第19个脉冲时数据输出完成,也标志着一次A/D转换的结束。
最后将CS置高电平禁用芯片,直接将转换后的数据进行比较输出。
A/
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 采集 系统 课程设计