柔性测量仪器的设计.docx
《柔性测量仪器的设计.docx》由会员分享,可在线阅读,更多相关《柔性测量仪器的设计.docx(57页珍藏版)》请在冰点文库上搜索。
柔性测量仪器的设计
南京林业大学本科毕业设计(论文)
题目:
柔性测量仪器的设计
二O一一年六月二日
摘要
测量系统是用来对被测特性定量测量或定性评价的仪器或器具、标准、操作、方法、夹具、软件、人员、环境和假设的集合。
测量所得到的数据需要经过一定的数据采集系统进行处理。
在各种测量系统中,主要区别在于前端的测量原理或传感原理不同,而对于后续的信号采集和信号处理,其原理基本一致。
本课题的目的是以齿轮变形量测量仪的测量系统为依托,设计一套基于嵌入式系统的数据采集显示模块。
数据采集技术是一种实用的电子技术,它广泛应用于信号检测、信号处理、仪器仪表等领域。
近年来,随着数字化技术的不断发展,数据采集技术也呈现出速度更快、通道更多、数据量更大的发展趋势。
数据采集是为了对温度、压力、流量、速度、位移、光、强度、声音等物理量进行在线测量和控制,通过传感器把上述物理量转换成模拟物理量的电信号,然后将模拟电信号经过处理并转换成计算机能识别的数字量,送进计算机处理、存储、传输和显示。
本文介绍以80C51单片机和PCF8591的A/D转换器为核心而设计的柔性测量系统,同时本系统中还采用了24C02的EEPROM的存储器对采集到的数据进行存储,以及采用了7段LED数码管对采得的数据进行显示,并进行了对单片机和各个芯片的接口电路和软件程序的设计。
关键词:
80C51;柔性测量系统;数据采集显示;
Abstract
Themeasuresystemisusedtomeasurecharacterquotaortomeasurequalitativelyevaluatequota,orisakindofgatherofapparatus,standard,operation,method,fixture,software,staff,environmentandassumption.Thedatameasuredmustbeprocessedthroughdataacquisitionsystem.Invariousmeasuresystems,thedifferenceismainlyintheprincipleofmeasurementandsensingdeviceatthefrontend.Whiletheprincipleoflatterdatacollectionandsignalprocessisnearlythesame.Thisaimofthisprojectistodesignamodelofdatacollectionanddisplaybasedonthesystemofflushbonadingonthebasisofthemeasuresystemoftheadmeasuringapparatuswhichisusedtomeasurethedistortionofgears.
Thedataacquisitiontechnologyisakindofusefulelectronictechnique.Itisusedwideintheareaofsignaldetection,signalprocess,instrumentandsoon.Recentyears,withthedevelopmentofthedigitaltechnique,thedataacquisitiontechnologyappearstobemorerapid,tohavemorechannelsandmoredata.Thedataacquisitionisusedonlinetomeasureandcontroltemperature,pressure,flow,speed,shift,light,strength,soundandsoon,usingsensorstoconvertthosephysicalquantitiesintoelectricalsignalofanalogousphysicalquantities.Andthenthoseelectricalsignalsofanalogousphysicalquantitieswhichareprocessedandconvertedtodigitalsignalwhichcomputerscandistinguishwilldeliverintocomputerstoprocess,store,transmitanddisplay.
Thispaperintroducesakindofsystemofadmeasuringapparatusdatabasedon80C51singlechipandPCF8591A/Dadaptor.Atthesametime,thesystemusesthestorageofEEPROM24C02tostorethedatacollectedandLEDnixietubetodisplaythedata.Anddesigntheinterfacecircuitsandsoftwareprogrammeofthosechips.
Keywords:
80C51,Thesystemofsoftadmeasuringapparatus,Datacollectionanddisplay,
1绪论
1.1研究背景
测量系统是用来对被测特性定量测量或定性评价的仪器或器具、标准、操作、方法、夹具、软件、人员、环境和假设的集合;用来获得测量结果的整个过程。
这样的测量过程可以看作为一个数据制造过程,它产生的数据就是该过程的输出。
测量所得到的数据需要经过一定的数据采集系统进行处理。
数据采集通常有两种解释:
一种是指盘点机、掌上电脑等终端电脑设备;另外一种是指网络数据采集用的软件。
目前的数据采集系统分为两大类,第一类就是设备类:
是指从传感器和其它待测设备等模拟和数字被测单元中自动采集信息的过程。
数据采集系统是结合基于计算机的测量软硬件产品来实现灵活的、用户自定义的测量系统。
比如条码机、扫描仪等都是数据采集工具(系统);第二类就是指网络类:
用来批量采集网页,论坛等的内容,直接保存到数据库或发布到网络的一种信息化工具。
可以根据用户设定的规则自动采集原网页,获取格式网页中需要的内容,也可以对数据进行处理。
比如乐思(Knowlesys)数据采集系统等。
1.2本课题研究的目的及意义
在各种测量系统中,主要区别在于前端的测量原理或传感原理不同,而对于后续的信号采集和信号处理,其原理基本一致。
通常包括信号调理、信号滤波和放大、A/D转换、数字信号处理,最后显示测量结果。
本课题的目的是以齿轮变形量测量仪的测量系统为依托,设计一套基于嵌入式系统的数据采集显示模块。
该模块要求具有友好的显示界面,精度较高的数据采集电路,并较大的适用范围。
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU(CentralProcessingUnit)、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能集成到一块硅片上构成的一个小而完善的计算机系统。
本课题的设计使用了目前应用最为广泛的单片机技术,旨在结合单片机的优势技术特点,设计一个基于单片机的简单高效数据采集显示系统,希望能把数据采集系统广泛的应用到现代工业生产控制中去,充分的发挥其优点。
1.3国内外同类研究概况
数据采集系统在各行各业都有广泛应用,随着微电子技术和计算机技术的发展,国内外数据采集系统也有了发展。
我国各大相关院校经过多年的研究也弄出了一些比较可喜的研究成果,例如中国计量学院设计的电压数据采集系统是以单片机(STC89C52)为控制核心的系统.该系统具有电路简单、功耗低、可靠性高等优点,能实现对多路模拟通道信号的数据采集与处理[1];江苏工业学院设计基于CPLD与单片机的高速数据采集系统,以CPLD为代表的可编程逻辑器件以其工作速度快,灵活的可编程能力等特点越来越受到人们的广泛应用[2];佳木斯大学信息电子技术学院设计的基于单片机AT89S52为控制核,具有电路简单,功耗低,可靠性高等优点,能实现对多路模拟数据的数据送LED显示器显示等功能[3]。
目前国外数据采集技术已经有了很大的发展。
从近来国外公司展示的新产品可以看出,主要发展可以概括为体积小,功能多样和使用方便等三个方面。
在各种测量系统中,主要区别在于前端的测量原理或传感原理不同,而对于后续的信号采集和信号处理,其原理基本一致。
通常包括信号调理、信号滤波和放大、A/D转换、数字信号处理,最后显示测量结果。
本课题的目的是以齿轮变形量测量仪的测量系统为依托,设计一套基于嵌入式系统的数据采集显示模块。
该模块要求具有友好的显示界面,精度较高的数据采集电路,并较大的适用范围。
1.4本文的研究内容
整个系统由单片机监控电路、A/D转换电路、键盘、LED数码管显示,以及日历时钟电路、数据存储电路和串口通讯等组成,主要研究内容:
(1)了解单片机知识并选型,A/D转换器的选择,液晶模块的选择,时钟芯片的选择,外扩存器模块的选择;
(2)设计出软硬件系统图,并进行必要的编程。
进行实验验证。
基于单片机的数据采集A/D转换显示是一项在工程中常用的技术,本文的研究是在国内外专家学者的研究基础之上进行的,基于数据采集A/D转换技术的研究现状,进行了一系列的研究。
本文结构如下:
第1章为绪论,简要介绍了基于单片机的数据采集A/D转换显示、研究背景、意义,目前国内外研究现状及。
第2章对基于单片机的数据采集A/D转换显示技术进行了全面系统的介绍。
详细描述了基于单片机的数据采集A/D转换显示系统的总体软硬件设计以及想法构成。
第3章概述了基于单片机的数据采集A/D转换显示技术实际应用,介绍了各个部分电路的硬件搭建以及各自的原理。
第4章详细地描述了本次毕业设计的软件方面的编程设计。
运用C语言对整个系统进行编程。
第5章介绍了本次毕业设计系统的软件仿真和硬件调试过程当中出现的各项问题以及解决办法,并且也给出了最终的结果。
第6章是结束语,对本文各项工作进行简要的总结并对本次实验所做的课题项目做了展望。
2系统的总体设计以及通信协议
2.1系统的组成
随着计算机技术的发展,单片机的出现又一次开创了数据采集发展的新局面,以单片机为控制器的数据采集电路简化了电路。
本次设计的课题正是基于单片机的数据采集系统设计,整个系统的组成如图2-1所示:
图2-1系统的组成原理
该采集控制系统中,采集控制按键来控制整个系统是否采集模拟信号。
当需要进行数据采集时,通过采集控制按键启动这个系统,单片机控制A/D转换芯片PCF8591把通过采集通道采得的模拟信号转换成数字信号;同时系统还设置了存储器和数码管,分别用以存储采得的数据和显示采得的数据。
2.2系统工作原理
本文设计的以80C51单片机为核心的数据采集A/D转换系统不仅具有较高的转化精度,而且有较高的转换速度,可应用于多重需要数据采集的场合。
整个系统由单片机监控电路、A/D转换电路、键盘、LED数码管显示,以及日历时钟电路、数据存储电路和串口通讯等组成。
整个采集系统过程包括信号的采集,A/D转换以及单片机的信号处理,对采集的数据的显示以及存储,同时本设计还可以在数据采集结束之后对任意存储的数据进行查看。
系统选择了一个串行的A/D转换芯片PCF8591,一个串行的EEPROM存储芯片24C02,显示部分系统选择了7段LED数码管,通过74HC573与单片机进行连接,并通过74HC138进行数码管的选择。
整个系统的硬件图如图2-2所示:
图2-2系统的硬件
通过单片机P3.2口所接的单步按键来控制是否进行对模拟信号的采集,一旦按键打开则进行模拟信号的采集,先把A/D转换器PCF8591内部A/D转换标志进行置1,表示可以进行A/D转换,一旦采集到一个模拟信号后随机把转换标志置0,表示不可以进行A/D转换。
随后把采集到的模拟信号送入PCF8591A/D转换器进行A/D转换,A/D转换结束后把所得到的数字信号送于单片机,存到单片机的某个内部寄存器中,随后单片机先把得到的数字信号存放于24C02存储器中,存储结束后,单片机把所得到的数字信号进行相应的数字信号处理,然后通过数码管显示出当前所得到的数据。
显示完毕之后若P3.2口所接的按键依旧打开,则重复上面的过程对下面一个模拟信号进行采集,A/D转换,存储以及显示。
若P3.3所接的按键闭合,则表示停止对模拟信号的采集,这个时候可以通过对P3.0以及P3.1所接的按键的控制来显示所存储的信号,P3.0和P3.1所接的按键是用来控制24CO2存储器的地址指针,若按下P3.0所接的按键,则存储器的地址指针减1,若按下P3.1所接的按键,则存储器的地址指针加1,从而显示所要看到的存储的数据。
2.3串行通信总线协议I2C的介绍
本系统进行的A/D转换以及数据存储所用到的芯片PCF8591和24C02在和单片机进行通信的过程当中通通采用I2C总线协议进行通信,下面对I2C总线协议进行一些简单的介绍[4]。
I2C(Inter-IntegratedCircuit)总线是由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。
是微电子通信控制领域广泛采用的一种总线标准。
它是同步通信的一种特殊形式,具有接口线少,控制方式简单,器件封装形式小,通信速率较高等优点[5]。
I2C总线特征:
1、只要求两条总线线路:
一条串行数据线SDA,一条串行时钟线SCL;
2、每个连接到总线的器件都可以通过唯一的地址和一直存在的简单的主机/从机关系软件设定地址,主机可以作为主机发送器或主机接收器;
3、它是一个真正的多主机总线,如果两个或更多主机同时初始化,数据传输可以通过冲突检测和仲裁防止数据被破坏;
4、串行的8位双向数据传输位速率在标准模式下可达100kbit/s,快速模式下可达400kbit/s,高速模式下可达3.4Mbit/s;
5、连接到相同总线的I2C数量只受到总线的最大电容400pF限制。
总线连接图如图2-3所示:
图2-3I2C总线连线图图
I2C总线术语:
发送器:
发送数据到总线的器件;
接收器:
从总线接收数据的器件;
主机:
初始化发送产生时钟信号和终止发送的器件;
从机:
被主机寻址的器件;
多主机:
同时有多于一个主机尝试控制总线但不破坏传输;
仲裁:
是一个在有多个主机同时尝试控制总线但只允许其中一个控制总线并使传输不被破坏的过程;
同步:
两个或多个器件同步时钟信号的过程。
I2C总线位传输:
由于连接到I2C总线的器件有不同种类的工艺(CMOS、NMOS、双极性),逻辑0(低)和逻辑1(高)的电平不是固定的,它由电源VCC的相关电平决定,每传输一个数据位就产生一个时钟脉冲破坏的过程。
数据的有效性:
SDA线上的数据必须在时钟的高电平周期保持稳定。
数据线的高或低电平状态只有在SCL线的时钟信号是低电平时才能改变。
如图2-4所示:
图2-4SDA和SCL两根线工作时序
起始和停止条件:
SCL线是高电平时,SDA线从高电平向低电平切换,这个情况表示起始条件; SCL线是高电平时,SDA线由低电平向高电平切换,这个情况表示停止条件。
起始和停止条件一般由主机产生,总线在起始条件后被认为处于忙的状态,在停止条件的某段时间后总线被认为再次处于空闲状态。
如果产生重复起始条件而不产生停止条件,总线会一直处于忙的状态,此时的起始条件(S)和重复起始条件(Sr)在功能上是一样的。
如图2-5所示:
图2-5I2C总线起始和停止条件
I2C总线数据传输:
字节格式:
发送到SDA线上的每个字节必须为8位,每次传输可以发送的字节数量不受限制。
每个字节后必须跟一个响应位。
首先传输的是数据的最高位(MSB),如果从机要完成一些其他功能后(例如一个内部中断服务程序)才能接收或发送下一个完整的数据字节,可以使时钟线SCL保持低电平,迫使主机进入等待状态,当从机准备好接收下一个数据字节并释放时钟线SCL后数据传输继续。
应答响应:
数据传输必须带响应,相关的响应时钟脉冲由主机产生。
在响应的时钟脉冲期间发送器释放SDA线(高)。
在响应的时钟脉冲期间,接收器必须将SDA线拉低,使它在这个时钟脉冲的高电平期间保持稳定的低电平。
通常被寻址的接收器在接收到的每个字节后,除了用CBUS地址开头的数据,必须产生一个响应。
当从机不能响应从机地址时(例如它正在执行一些实时函数不能接收或发送),从机必须使数据线保持高电平,主机然后产生一个停止条件终止传输或者产生重复起始条件开始新的传输。
如果从机接收器响应了从机地址,但是在传输了一段时间后不能接收更多数据字节,主机必须再一次终止传输。
这个情况用从机在第一个字节后没有产生响应来表示。
从机使数据线保持高电平,主机产生一个停止或重复起始条件。
如果传输中有主机接收器,它必须通过在从机不产生时钟的最后一个字节不产生一个响应,向从机发送器通知数据结束。
从机发送器必须释放数据线,允许主机产生一个停止或重复起始条件。
如图2-6所示:
图2-6I2C总线应答时序图
寻址方式:
七位寻址:
第一个字节的头七位组成了从机地址,最低位(LSB)是第八位,它决定了传输的方向。
第一个字节的最低位是“0”,表示主机会写信息到被选中的从机;“1”表示主机会向从机读信息,当发送了一个地址后,系统中的每个器件都在起始条件后将头七位与它自己的地址比较,如果一样,器件会判定它被主机寻址,至于是从机接收器还是从机发送器,都由R/W位决定。
如图2-7所示:
图2-7七位寻址
十位寻址:
十位寻址和七位寻址兼容,而且可以结合使用。
十位寻址采用了保留的1111XXX作为起始条件(S),或重复起始条件(Sr)的后第一个字节的头七位。
十位寻址不会影响已有的七位寻址,有七位和十位地址的器件可以连接到相同的I2C总线。
它们都能用于标准模式(F/S)和高速模式(Hs)系统保留地址位1111XXX有八个组合,但是只有四个组合11110XX用于十位寻址,剩下的四个组合11111XX保留给后续增强的I2C总线。
十位从机地址是由在起始条件(S)或重复起始条件(Sr)后的头两个字节组成。
第一个字节的头七位是11110XX的组合,其中最后两位(XX)是十位地址的两个最高位(MSB)。
第一个字节的第八位是R/W位,决定了传输的方向,第一个字节的最低位是“0”表示主机将写信息到选中的从机,“1”表示主机将向从机读信息。
如果R/W位是“0”,则第二个字节是10位从机地址剩下的八位;如果R/W位是“1”则下一个字节是从机发送给主机的数据。
如图2-8所示:
图2-8十位寻址
了解了串行通信总线I2C的协议之后,就对下面的PCF8591和24C02两个芯片的使用做好了理论上的准备。
3系统硬件设计和制作
3.1单片机控制部分
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器、随机存储器RAM、只读存储器ROM,多重I/O口和中断系统、定时器、计时器等功能集成到一块硅片上构成的一个小而完善的计算机系统。
最早的单片机是由Intel公司生产Z80,早起8位单片机中最成功的是Intel的8031.Intel在此技术上发展出来的一系列8位单片机系统称为MCS-51系列单片机,直到现在MCS-51单片机也不失为单片机的主流系列[6]。
如图3-1所示,本设计采用的的单片机型号是80C51芯片,其主要参数性能如下:
1、全静态操作:
0Hz-24Hz;
2、256Bytes内部RAM;
3、5个中断源;
4、32个可编程I/O口线;
5、可编程串行通道;
6、2个16位定时/计数器;
7、低功耗空闲和掉电模式;
图3-180C51引脚
3.1.1外接晶体引脚以及对应电路设计
单片机的外接晶体引脚为18、19号引脚,两脚之间接入一个晶体振荡器,单片机就以此晶体的工作频率开始工作,其频率范围为1.2MHz~12MHz。
频率越高,单片机的工作速度越快,但单片机的功耗就要增加,其产生的高次谐波也会对系统内部的模拟电路产生严重的工作。
常用的有6MHz、12MHz,本设计中采用的是12MHz的石英晶体,微调电容选用的是30pF,如图3-2所示:
图3-2外部振荡电路
3.1.2外部引脚以及对应电路设计
单片机的9号引脚为RST:
复位信号输入端,高电平有效,高电平复位信号必须延续两个周期以上才能使单片机复位初始化。
一个机器周期即执行一条单机器周期指令的时间为振荡脉冲的十二分频,前面选用了12MHz的晶振,因此一个机器周期为1us。
复位操作有上电自动复位和按键手动复位两种方式。
这里采用的是上电自动复位方式,电路的设计如图3-3所示:
图3-3复位电路
该复位电路是通过电路中的电解电容充电来实现的,工作原理是电源接通瞬间电容视为短路,电容两板间电压都等于电源电压+5V,此瞬间单片机RST引脚也得到+5V的高电平;随后电源通过电阻R对电容充电,电容两极间的电压Uc按指数规律随时间增加而增长,因此电容负极(即RST端)的电压也随着时间慢慢降低。
Uc的计算公式如下:
Uc=U•(1-exp(-t/Tm),其中Uc=R•C。
因为单片机的复位信号是高电平有效,因此只有Uc<1.5V时,RST可以得到大于一个TTL高电平(3.5V)的高电平复位信号,因此根据公式计算选用10uF的电容,5.1K的电阻可以满足要求。
3.1.3EA引脚
EA/VPP引脚是单片机的31号引脚,该引脚为访问程序存储控制信号输入端,当EA为低电平时,对ROM的读操作限定在外部ROM;当EA为高电平时,则对ROM的读操作是从内部程序存储器开始的,并且可以顺延至外部程序存储器。
本次设计的电路中没有使用到外部程序存储器,因此该引脚接到了VCC(+5V)。
3.2A/D转换部分电路
整个系统实现A/D转换功能的部分由A/D转换芯片PCF8591实现,下面对该芯片进行简单的介绍[7]。
3.2.1PCF8591的性能参数
特性:
1、单电源供电;
2、工作电压:
2.5V~6V;
3、待机电流低;
4、I2C总线串行输入/输出;
5、通过3个硬件地址引脚编址;
6、采样速率取决于I2C总线速度;
7、4个模拟输入可编程为单端或差分输入;
8、5个自动增量通道选择;
9、6模拟电压范围:
VSS~VDD;
10、片上跟踪与保持电路;
11、8位逐次逼近式A/D转换;
12、带一个模拟输出的乘法;
概述:
PCF8591是单片、单电源低功耗8位CMOS数据采集器件,具有4个模拟输入、一个输出和一个串行I2C总线接口。
3个地址引脚A0、A1和A2用于编程硬件地址,允许将最多8个器件连接至I2C总线而不需要额外硬件。
器件的地址、控制和数据通过两线双向I2C总线传输器件