基于数显百分表单片机数据采集系统的构建

上传人:痛*** 文档编号:45324630 上传时间:2021-12-06 格式:DOC 页数:29 大小:705.50KB
收藏 版权申诉 举报 下载
基于数显百分表单片机数据采集系统的构建_第1页
第1页 / 共29页
基于数显百分表单片机数据采集系统的构建_第2页
第2页 / 共29页
基于数显百分表单片机数据采集系统的构建_第3页
第3页 / 共29页
资源描述:

《基于数显百分表单片机数据采集系统的构建》由会员分享,可在线阅读,更多相关《基于数显百分表单片机数据采集系统的构建(29页珍藏版)》请在装配图网上搜索。

1、陕西理工学院毕业设计基于数显百分表单片机数据采集系统的构建作者:XXX(陕西理工学院机.械工程学院测控技术与仪器XXXX班,陕西 汉中 723000)指导老师:XXX摘要在充分了解容栅式.传感.器原理的基.础上,采用数字式示波.器对.数显百分表的.输出信号进行了.详细分析,找出其显示数.据与.输出信号的关系。进而构建.了以数显百分表为.前端传.感器、以AT89S52单片机.为主控单元的信号采集和.数据处理位移测距系统,并将所采集的数据.通过 LCD准.确、实时地显示出来。关键字数显百分表;单片机;位移数据采集;容栅式传感器Construction of digital indicator da

2、ta acquisition system based on MCUAuthor: XXX(Measurement and control technology and instrument of mechanical engineering, Shaanxi University of Technology, XXXX)Teacher:Liang YingxuanAbstract:In fully understand capacitive gate sensor principle based and uses digital oscilloscope to digital indicat

3、or output signal is analyzed in detail and find out the display data and the output signal. And the construction of the digital indicators in front of the sensor, the AT89S52 single-chip microcomputer based controlling unit for signal acquisition and data processing displacement distance measuring s

4、ystem. Then, the collected data through the LCD accurate, real-time display. Keyword:Digital indicator;MCU;Displacement data acquisition;Capacitive grating sensor目 录绪论11容栅传感器22方案的论证与择优42.1 方案一42.2 方案二42.3 方案选择42.4 设计思路52.4.1 容栅式传感器输出信号分析52.4.2 采用数字示波器对输出数据进行分析处理52.4.3 单片机对数据的采集62.4.4 数据的处理与显示部分63硬件系

5、统及介绍73.1 电路原理图设计73.2 信号转换部分93.3 反相器93.4 串/并转换部分及数据采集实施办法103.5 显示部分113.6 晶振电路113.7 复位电路124软件系统设计134.1 主程序134.2 中断子程序134.3 数据处理子程序144.4 数据显示子程序145总结与展望165.1 数据采集部分165.2 移位寄存部分165.3 数据处理部分165.4 展望16致谢17参考文献18附录20绪论1 选题的目的及意义百分表作为位移及形变测量工具,在机械加工、器械测量、仪器校准等方面,应用较为广泛。目前市面上,常见的百分表分为两种,分别是机械式和数显式。机械式百分表应用广泛

6、,历史悠久,但随着精度的提高,其加工难度也随之成倍增加,且因为机械式百分表在测量过程中是人工读数,使得不可避免的造成了人为误差。数显百分表多采用容栅传感器,测量精准,但大多没有外接的端口,使其应用受到限制。本文结合容栅位移传感器原理,着重分析数显百分表输出信号与实际显示数据如何对应的过程,并在此基础上,设计一套利用数显百分表为前端传感器、AT89S52单片机做为主控单元的测距系统。2 与本课题相关的研究现状、应用领域等数显百分表是通过齿轮或杠杆将一般的直线位移(直线运动)转换成指针的旋转运动,然后在显示屏上进行读数的长度测量仪器。数显百分表具有显示精确,而且很方便,读数一目了然,精度高优点。数

7、显百分表与机械式百分表相比,测量更加精准,能避免读数过程中的人为误差,可以进行绝对测量和相对测量,并且能同时显示英寸数值与国际单位更是机械式百分表所无法媲美的。但目前常用的数显百分表大多都没有微机接口,使其应用受到大大的限制。单片机.即单片微控制器单元(Micro-controllerUnit),由微处.理器、I/O接口、存储器、定时器/计数器等电路集成在一块.芯片上所构成。单片机的面世最早在20世纪70.年代初,由美国芯片制造商Inter.公司推出.,当时还是只有4位数据线的简单产品,.可用于家用电器、计算器等产品的开发;到.了70年代中后期,各种8位.单片机开始相继问世,如MCS-48系列

8、.单片机,其功能已经可以满足工.业的现场控制以及测.量用智能仪器仪表设计的需要;80年代之后.,单片机迎来了.高速发展期,高性.能的单片机如MCS-51系列8位.单片机成为主流,它具有串行通信.接口、16位定时器/计数器和多级中断.功能,使其在网络通信、现场监控、人工智能、实.时控制和高性能测量.仪器等诸多方面得到了广.泛的应用。随着单片机的发展,单片机大都具有以下特点:1、功耗低、性价比高、重量轻、体积小;2、由于电路的高度 集成,带来了高可 靠性与较高的抗干扰性;3、快速 的运行速度和丰富的控制 指令集,可供设计 开发人员灵 活的运用 各种逻辑操作,实现实 时控制与必要的运算;4、具有异步

9、串 行通信接口适应网 络化环境工作。单片机目前已广泛使用的各种 智能IC卡,民用豪华轿车的安全 保障系统,摄像机、录像机、全自动 洗衣机的控制,以及程控玩具、电子宠 物等等,这些都离不 开单片机。更不用说自动控制领域 的机器人、医疗器械、智能仪表 以及各种智能机械了。1容栅传感器容栅传感器是一种基于变面积工作原理,可测量大位移的电容式数字传感器。它与其它数字式位移传感器,如光栅、感应同步器等相比,具有体积小、结构简单、分辨率和准确度高、测量速度快、功耗小、成本低、对使用环境要求不高等突出的特点,因此在电子测量技术中占有十分重要的地位。本系统中主要是对直线位移的测量,所以采用直线型容栅传感器。容

10、栅传感器的结构非常类似于平行板电容器,它是由一组排列成栅状结构的平行板电容器并联而成的,如果把随时间变化的周期信号,通过电子电路的控制,在同一瞬间以不同的相位分布,分别加载于顺序排列的栅状电容器各个栅极上,则在另一公共极板上,任一瞬间产生的感应信号将与该瞬间加载的激励信号具有相同的相位分布。图1.1 容栅结构示意图容栅传感器动栅、定栅各极板之间形成的电容的等效电路,设C1(x),C2(x),C3(x)C8(x)为动栅上48块极板与定栅上相应极板所构成的电容量,它是位移x的函数,假设小发射极板与反射极板完全覆盖时两者之间的电容为C0,每一块小发射极板的宽度为w,当0xw 时,C 8(x)=C 0

11、(x)/w,C 1(x)=C 2(x)=C 3(x)=C 0,C 4(x)=C 0(1-x/w),c5(x)=c6(x)=c7(x)=0。由此可以得出整个量程中两极板之间的电容量随位移x的变化规律。图1.2 容栅传感器极板间等效电路在x为任何值时,动栅上的48块极板中总有一部分与“地”(屏蔽板)形成电容,相应的输入信号源直接接入“地”,对传感器的输出信号不产生影响,可是为了导出(x)(x)为传感器的输出信号相对于某一驱动信号的相位移)随位移量x连续变化的统一公式,在推导中不考虑这些极板对“地” 形成电容,而仍把它们看作对定栅板形成电容,只不过此时它们的电容量为零而已。由于这些电容量为零,则其阻

12、抗为无穷大。相应的信号源全部落在这些电容上,同样,对传感器的输出信号无影响。如果给容栅传感器每组发射极板上所加的发射电压V1V8为8路频率、幅值相同而相邻小极板间相位相差为/4的正弦交变电压,则在发射极上有电压Vf,在接收极上有电压Vr。应用交流电路理论及基尔霍夫电流定律,解读图l.2的等效电路,如下:如果用Vo表示各发射极电压的幅值,并取8路信号中的第1路信号的相位为参考值,则有:其中0为V1的相角。将上述各量及Ci(x)(i=1,2,8)代入以上两式,即得可见,容栅传感器的输出电压是一频率与发射电压相同的正弦电压,其幅值在很小范围内变化,可近似看作一常数,而相位比V1超前了/4+(x)。相

13、位移 (x)可采用鉴相型测量电路测出,即可得到相对位移x,可见容栅传感器是一种相位跟踪型的位移传感器,这种传感器对输入信号的幅值变化不敏感,故具有较好的抗干扰能力。图1.3 多级片容栅结构及输出示意图在整个测量系统中,容栅传感器的主要作用是把机械位移量转变成电信号的相位变化量,然后送给测量电路进行数据处理。容栅传感器通过精密电压比较器 TLC354进行控制,由继电器供电,由CPU89C52提供所需的激励信号,同时接收其感应信号,并通过鉴相型电路测量出激励信号与感应信号的相位差,经过一系列的变化,即可得出活塞移动的长度距离。 2方案的论证与择优2.1 方案一 方案一框图见图2.1,该方案采用3片

14、8位移位寄存器接收24位数据信号,通过片选控制分3次读入结果。为了准确无误地读取信号,必须使单片机在进入第2组数据时就产生中断读取数据。为了告诉单片机锁存完毕进行正确的读取,还须分离出锁存信号。系统通过中断的方式对容栅式传感器数据信号进行分组,它由单稳态触发器产生的外部中断进行控制,当产生中断后就读取单片机I/O口的数据。当串行数据经移位寄存器转化为并行数据后经锁存器锁存,这时所有的24位可以全部通过单片机的某一I/O口,然而单片机只有8位口,系统则用片选法来控制数据的读入,单片机的另一I/O口分别与3片锁存器相连,在读取数据时选通相应的锁存芯片。图2.1 方案一框图2.2 方案二方案二框图见

15、图2.2。将数显百分。表输出的CLK和Data数据通过双电压比较器转变为单片机可以识别的高低电平信号。将CLK同时接入单片机和移位寄存器,目的是可以进行准确的数据组读取。移位寄存器每接受8位数据进行一次移位寄存,共6次将两组24位的绝对数据和相对数据全部传输到单片机中。单片机对采集到的数据进行与标定数的运算,先拆分,计算,再合并,并最终由单片机控制使其在液晶显示屏LCD1602上显示。图2.2 方案二框图采用一个8位移。位寄存器成功与否在于。软件的正确编制,这。里需要解决两个问。题:一是怎。样确定要读的数。据组;二是怎样控制每次。一如8位就读取一次,若能。控制好,显然3次读取。就能采集24b完

16、整信息。解决。好第一个问题的办法是。将CLK信号同时送移。位寄存器和单片机的。计数通道,检。测到一段持。续的低电平就启动计算。器,记满24个脉冲后就。准备读取P1口的后24。为数值。解决好第。一个问题,第二个。问题也就好解决了,将计。算器置成连续装载值。为8的工作方式,每。计数8个CLK。脉冲就读。取一段数据,在这里只要。保证在下一个脉冲到来之。前的13s内取走数。据就能保证读数。正确。2.3 方案选择方案一与方案二都是可行的方案,但方案一的大部分工作靠硬件来完成,没有充分利用软件的功能,测量系统硬件组成比较复杂,成本较高。而方案二合理的运用软件来实现部分功能,减少硬件的使用,大大的减少了成本

17、,制作也更为方便可行。故选用方案二。2.4 设计思路 首先是对容栅式传感器输出信号的分析,然后用数字示波器对输出数据进行分析处理,单片机要获取这些数据,需要一个双电压比较器和一片移位寄存器。获得数据后,在单片机内对数据进行处理,最后将数据送往LCD显示。2.4.1 容栅式传感器输出信号分析容栅。式传感器输出的电。容信号经过容栅集成及芯。片的处理可转化为数字信。号输出。其中输出信号有。4根线,分别为电源。线(+1.5V)、地。线(0V)、时钟控。制线(CLK)、串行数据。输出线(Data)。CLK为同步时钟。信号,在一次数据。传送中,开始。为54s的高电平,表示。数据即将开始传送。接下。来 Da

18、ta 输出两组。各有24个宽度为13s的。窄脉冲,前组为绝对。数据; 后组为相对数。据,前后两组数。据之间有110s的高电平作。为间隔; 最后是75s的高。电平,以示数据传送。结束(其输出波。形如图2.3所示) 。图2.3 容栅式传感器输出脉冲时序Data 信号。为数据信号,它包含了传感器。的位移信息。在数。据采样时,容栅芯片。在 CLK 信号窄脉冲的下。降沿对 Data 信号进行。采样,先后采样。两组 24 位绝对数据和。相对数据。CLK时钟脉冲。串的第一组对应的信号是包。含基准0的绝对数。据,第二组是减。去基准0后的实际位移值,为。相对数据。绝对数据计数范。围从000000H到FF。FFF

19、FH;相对数据。有正负区分,可以进行。清零。数据采用。二进制编码,低位在。前,高位在后,最。后位为符号位,以。时钟线每次CLK信号。负跳变时刻为准。进行数据采集。以上信。号为非标准串行码,幅值。均为1.5 V。绝对数据。不能清零 ( 含基准0 ) ,相对数。据可以进行清零,所以此。次将直接读取相对数。据进行研究。2.4.2 采用数字示波器对输出数据进行分析处理在数字示。波器上可以观察到如图2.1所。示数显百分表输出波形。信号,CLK一个脉冲。下降沿就可以读对。应这个脉冲宽度内的Data数据。的状态 (高电。平为1、低电平为0)。表。2.1和表2.2为。测量时读到的。相对数据的。二进制。表2.1

20、为。正数,表2.2为负数。表2.1 直接读取的传感器的相对数据(正数)表2.2 直接。读取的传感器的相对数据(负数)由上表可以。看出:正数标定的系。数为非常数,而负数的。为常数。还有,当传。感器输出的相对数据为。正数时,其二进制最高。位都为“1”,负数的最。高位都为“0”。那么只要。给正数的二进制取。反,那么就会。得到表2.3中的数据。表2.3 对正数的相对数据取反后的数据取反后可。发现,正数标定的系数。变为常数。标定系数是用数。显表显示的值除以传感器。正数的相对数据取反。后的值 ( 负数。直接读取的相对数据) 。在后续的软。件编程时,将数显表的实际。值扩大1 000倍变成整。数,即将标定系数

21、。扩大1 000倍定为 0.124,这样便。于数据处理显示时数。据的拆分。在数据采集编。程时首先判断读取的数据的。正负号(最高位。为1是正号,最高。位为0是负号) 后,判断是否需。要取反,再经过单。片机对采集数据进行。处理,最后就可直接显。示采集数据的正负。及大小。2.4.3 单片机对数据的采集 传感器的Data数据。是一个串行信号,在此。先把这个信号输入到。一个串入并出带锁存。移位寄存器74H。C595里。由于。一个完整的数据。是24位,用一个。8位的串入。并出移位寄存器,向单。片机并行口P1进行。传输,一次读8位,并。进行锁存,不会影响。到后面数据的位移,单。片机3次就可以将24位读完。将

22、经过了双电压。比较器的CLK信号同。时接到移位寄存器和。单片机的计数通道,这样。移位寄存器就可以在。CLK时钟的控制下进行正确的。移位了,并且在每次中断。后给P3.0口一个上升沿的。脉冲作为74HC595的。锁存时钟,从而将串行。信号转换成了并行信号。进入单片机。2.4.4 数据的处理与显示部分单片机要对从。移位寄存器传输来的。数据进行处理,首先,对数据的。正负进行判断,若最高位为1,则。为正数,需先取反再进。行合并;若最高位为0,则为。负数,可以直接合并。将合并后。的数据先转换为十。进制数,再乘以其标定系。数,即可得到一个真实。值。而这个真实值。小数点后保留三位小。数,为了便。于数据显示处理

23、是方便,我们。把这个数放大1000倍,将。其变成整数。经过标定。计算后再进行。拆分,可以将计算所。得的五位数全部显示在。LCD上。 3硬件系统及介绍3.1 电路原理图设计在仿真中,用。两个方波模拟CLK和Data的脉。冲信号,先经过双电压比较器后,将CLK信号连。接到单片机的P3.4和3.5口,同时。将其经过一个反相器74H。C04后接到移位寄。存器的SH_CP端。目的是。要确定移位。寄存器能在CLK的时。钟控制下进行正确。的移位。ST_CP端接到单。片机的P3.0口目的是在每。次中断后给P3.0口一个。上升沿的脉冲作为锁存时。钟。Data信号接到移。位寄存器的DS端口,在这。里进行串行信号的

24、接收,为。了方便单片机的计算,将74H。C595的输出端的高。位(Q7)接到单片。机P1口的低位(P1.0)上,其它位。依此类推,直接在硬件上进行。高低位的颠倒。单片机对采集的数。据进行处理后将显示命令发送。给LCD1602,单片机(P0.0-0.7)口分。别接LCD的(D0-D7)口,期间需要加。上一个上拉电阻,将不确定的信号通过一个电阻钳位在高电平,电阻同时起限流作用。图3.1 电路原理图3.2 信号转换部分将数显百分表输出的CLK ( 1.5V) 和 Data( 1.5V) 信号接入 LM393 双电压比较器。当 CLK 或Data 信号是高电平时 (1.5V) ,它大于比较器的参考电压

25、 (1V) ,比较器就输出一个 5 V 高电平信号(因为比较器的电源电压是5V) ; 当CLK 或Data是低电平时(0) ,小于比较器的参考电压 (1 V) ,则比较器就输出一个为0的低电平信号。LM393 是双电。压比较器集成电。路。输出负载电阻。能衔接在可允许电。源电压范围内的任何。电源电压上,不。受 Vcc端电压值的限制.此v输出能作为一个简单的。对地SPS开路(当不用负载。电阻没被运用),输。出部分的陷电流被可能得到的。驱动和器件的值所。限制。当达到极限电。流(16mA)时,输。出晶体管将退出而。且输出电压将很快上升。图3.2 LM393内部结构图3.3 反相器本次设计使用74HC0

26、4反相器,其作用是将输入的CLK信号的相位反转180度。因为容栅传感器在CLK下降沿时读取数据,而位移寄存器在上升沿时读取数据,故需要一个74HC04反相器对CLK信号进行相位的反转。反相器由典型TTL与非门电路电路组成,是可以将输入信号的相位反转180度,这种电路应用在摸拟电路,比如说音频放大,时钟振荡器等。在电子线路设计中,经常要用到反相器。工作原理:当输入Vi=3.6V(高电平),Vb1=3.6+0.7=4.3V 足以使T1(bc结)T2(be结)T3 (be结)同时导通, 一但导通Vb1=0.7+0.7+0.7=2.1V(固定值),此时V1发射结必截止(倒置放大状态) Vc2=Vces

27、+Vbe2=0.2+0.7=0.9V不足以T4和D同时导通,T4和D均截止。V0=0.2V (低电平)当输入Vi=0.2V(低电平)Vb1=0.2+0.7=0.9V不足以使T1(bc结)T2(be结)T3 (be结)同时导通,T2,T3均截止, 同时Vcc-Rc2-T4-D-负载形成通路,T4和D均导通。V0=Vcc-VRc2(可略)-Vbe4-VD=5-0.7- 0.7=3.6(高电平)。结论:输入高,输出低;输入低,输出高(非逻辑)。TTL的优势:1、工作速度快;2、带负载能力强;3、传输特性好。TTL反相器的电压传输特性:电压传输特性是指输出电压跟随输入电压变化的关系曲线,即UO=f(u

28、I)函数关系。大致分为四段:截止区:当UI0.6V时,T1工作在深饱和状态,Uces10.1V,Vbe20.7V,故T2、 T3截止,D、T4均导通, 输出高电平UOH=3.6V。TTL反相器的电压传输特性 线性区:当0.6VUI1.3V时,0.7VVb21.4V, T2开始导通,T3尚未导通。此时T2处于放大状态,其集电极电压Vc2随着UI的增加而下降,使输出电压UO也下降。转折区:1.3VUI1.4V,当UI略大于1.3V时, T2 T3均导通, T3进入饱和状态,输出电压UO迅速下降。饱和区:当UI1.4V时,随着UI增加 T1进入倒置工作状态,D截止,T4截止,T2、T3饱和,因而输出

29、低电平UOL=0.3V。图3.3 74HC04六反相器引脚图3.4 串/并转换部分及数据采集实施办法传感器的Data信号是一个串行信号,在此先把这个信号输入到一个串入并。出带锁存的移位。寄存器74HC595 里。由于一个完整的数据是24位,用一个8位的。串入并出移。位寄存器,向单。片机并行口 P1 进。行传输一次读进来8位,并。进行锁存,则不影。响后面数据的。移位,这样单片机读3次就将 24位读完,这样就避。免了硬件电路的繁琐和。纯采用软件编程实时。性差的缺点。74HC595是硅。结构的CMOS器件,兼容。低电压TTL电路,遵。守JEDECNO.7A标。准。它具有。8位移位寄存。器和一个存储器

30、,三态输。出功能。 移位寄存。器和存储器有相互。独立的时钟。数据。在SH_cp(移位。寄存器时钟输入)的上升。沿输入到移位寄存器中,在。ST_cp(存储器时钟输入)的。上升沿输入到。存储寄存器中去。如果两个时钟。连在一起,则移位寄存器总。是比存储寄存器早一。个脉冲。移位寄存器有。一个串行移位输入(Ds),和一。个串行输出(Q7),和一个异。步的低电平复位,存储寄。存器有一。个并行8位的,具备三态的总。线输出,当使能OE时(。为低电平),存储寄存。器的数据输出到总线。8位串。行输入/输出或者。并行输出移位寄存器,具有。高阻关断状态,三态输出(即具有高电平、低电平和高阻抗三种输出状态的门电路)。将

31、串。行输入的8位数字,转变为。并行输出的8位数字,例。如控制一个8位数码管,将。不会有闪烁。图3.4 移位寄存器74HC59574HC595具体使用的步骤:第一步:目的:将要准备输入的位数据移入74HC595数据输入端上。方法:送位数据到_595。第二步:目的:将位数据逐位移入74HC595,即数据串入方法:SH_CP产生一上升沿,将DS上的数据移入74HC595中.从低到高第三步:目的:并行输出数据。即数据并出方法:ST_CP产生一上升沿,将由DS上已移入数据寄存器中的数据送入到输出锁存器。说明: 从上可分析:从SH_CP产生一上升沿(移入数据)和ST_CP产生一上升沿(输出数据)是二个独立

32、过程,实际应用时互不干扰。即可在输出数据的同时移入数据。3.5 显示部分单片机应用。系统最常用。的显示器是LED(发光。二极管显示器)和LCD (。 液晶显。示器),这两。种显示器可。显示数字、字符及系。统的状态。由于 LED 显。示信息量少,形式比。较单一,人机交。互性差,而 LCD液晶。显示内含有控制驱动。器,使得它和单。片机的接口电路实。现比较简单,还。具。有功耗低、体积小、质。量轻、超薄和可。编程驱动等其他显。示方式无法比拟的优点,故。选用1602 液晶显示屏。液。晶显示电。路如图3.5所示,单。片机的P2.5-P2.7引。脚分别。为液晶显示器。的复位端R。ST、读/写端R/W、使。能

33、端E调节R2可调节。液晶显示器的对比度。图3.5 液晶显示电路3.6 晶振电路单片机系统里都有晶振,在单片机系统里晶振作用非常大,全程叫晶体振荡器,他结合单片机内部电路产生单片机所需的时钟频率,单片机晶振提供的时钟频率越高,那么单片机运行速度就越快,单片接的一切指令的执行都是建立在单片机晶振提供的时钟频率。 在通常工作条件下,普通的晶振频率绝对精度可达百万分之五十。高级的精度更高。有些晶振还可以由外加电压在一定范围内调整频率,称为压控振荡器(VCO)。晶振用一种能把电能和机械能相互转化的晶体在共振的状态下工作,以提供稳定,精确的单频振荡。 单片机晶振的作用是为系统提供基本的时钟信号。通常一个系

34、统共用一个晶振,便于各部分保持同步。有些通讯系统的基频和射频使用不同的晶振,而通过电子调整频率的方法保持同步。 晶振通常与锁相环电路配合使用,以提供系统所需的时钟频率。如果不同子系统需要不同频率的时钟信号,可以用与同一个晶振相连的不同锁相环来提供。3.6 晶振电路3.7 复位电路 单片机。的置位和复位,都是为了。把电路初始化到一个确定的状。态,一般来说,单。片机复位电路作用。是把一个例如状态机。初始化到空状态,而在单。片机内部,复位的时候。单片机是一些寄存。器以及存储设备装入厂商预。设的一个值。图3.7 复位电路图单片机。复位电路原理是在单。片机的复位引脚RST。上外接电阻和电容,实现。上电复

35、位。当复位电。平持续两个机器周期以上。时复位有效。复位电平的持续。时间必须大于单片机的。两个机器周期。具。体数值可以由RC电路计算。出时间常数。复位电。路由按键复位和上电复。位两部分组成。(1)上电复位:ST。C89系列单片及为高电。平复位,通常在复位引。脚RST上连接一个电。容到VCC,再。连接一个电阻到GND,由此形成一。个RC充放电回路保证。单片机在上电时RST脚。上有足够时间。的高电平进行复位,随。后回归到低电平进入正常工作。状态,这个电阻和电容。的典型值为10K。和10uF。(2)按键复位:按键。复位就是在复位电容上并联一。个开关,当开关按下时电。容被放电、RST也被拉到。高电平,而

36、且由于电容。的充电,会保持一段时。间的高电平来使单片。机复位。4软件系统设计系统的软件部分主要包括主程序、中断子程序、数据处理子程序、显示子程序等几部分。4.1 主程序主程序的流程图如图4.1所示。数据采集的具体具体实施过程为: 首先完成系。统的初始化; 其次将经电平转。换后的CLK 信号接到单片机的。 P3.5 来检测CLK电平。的变化, 当连续检测到。低电平时,就用P3.4口进行外部。脉冲计数中断。在此用定时器/计数器0,并将其设定为自。动装载的方式1 进行计数,每计数到8中断一次。由于前24位数据为绝。对数据是不需要的,可以让单片机接收但不用读出,当前 24位数据传输完(前3次中断完),

37、后面每次中断接收到的数据再读出,3次中断就可以将全部24位相对数据读出了。最后将采集数据经过单片机处理后将测量结果显示在 LCD液晶显示屏上。图4.1 主程序框图4.2 中断子程序 其流程图。如图4.2所示。当定时器/计。数器计满8个时钟脉冲时。就中断,这时就将进入移位寄存器的8位数据锁存,锁存器工作时。需要提供一个上升沿锁。存时钟才能进行锁存,所以就。用软件给P3. 0一个上升沿控制。移位寄存。器锁存并行。输出到 P1口,然后读。取P1口并将读完。之后的数据。另存,以防止被。后一组数据覆。盖,当3组数据。存储完毕后就关。闭中断。图4.2 中断程序流程图4.3 数据处理子程序其流程图如图4.3

38、所示。在。读取完之后就进行数据。处理,先判断采集到。的数据的正负,最。高位若为 1(正数) ,则先。取反再进行合并; 若为0(负。数) 就直接合。并。最后将合。并后的数据进行标定然后拆。分出各位。图4.3 数据处理子程序流程图。4.4 数据显示子程序LCD的数据显示的流程图如图4.4所示。首先是完成系统的初始化,然后开始接收新的数据,在显示新内容之前,需要先判断数据是否需要更新,最终完成数据的显示。图4.4 显示子程序5总结与展望我的毕设.题目是“基于数显百.分表。单片机数据采集系统。的构建”,我将整个设计的重难点分为三个部分:1.数据采集部分;2.移位寄存部分;3.数据处理部分。5.1 数据

39、采集部分使数显百分表输出的。一组数据经过双电压比。较器LM393,当CLK。或Data信号是高电平。时(1.5 V) ,它大于比。较器的参考电压(1V),比。器就输出一个5V高电平信号(因。为比较器的电源电压是5 V); 当。CLK或Data是低电平时(0),小。于比较器的参考电。压(1V),则比较。器就输出一。个为0的低电平信号。在数据。开始传输后,容栅芯片。在CLK信号窄脉冲。的下降沿对Data信号进行。采样,Data输出两组各。有24个宽度为13微。秒的窄脉冲,前一组为绝。对数据,后一组为。相对数据,用一个。串入并出带锁存的移位。寄存器74HC595对数。显百分表输出的串行。信号进行处理

40、。5.2 移位寄存部分当定时器/。计数器计满8个时钟脉冲时。就中断,这时就将进入移。位寄存器的8位数据。锁存,锁存器工。作时需要提供一个上升沿锁。存时钟才能进行锁存,所以就用软。件给 P3.0一个上升沿。控制移位寄存。器锁存并行输出到P1口,然后读。取P1口并将读完之后的数。据另存,以防止被后一组。数据覆盖,当3组数据存。储完毕后就关闭中断。5.3 数据处理部分。 当CLK一个脉。冲下降沿时,就可以读这个脉冲宽。度内相应的Data数据(高电。平为1,低电平为0)。前面。提到,正数的标定系数为非常数,而负数的标定系数为常数。而且对所得的。相对数据进行高低位颠。倒后发现,正数的二进制的。最高位都为

41、1,而负数的。为0(判断是否需要取反)。但若给颠倒后的正数的。相对数据再进行取反,之后再用真。实值去除以这个取反后的数,即可得到。为常数的标定系。数,在后续的软件。编程时,只需将标定系数扩。大1 000倍,乘以单片机。采集到的数据,即可得。到一个整数,这样处理便。于数据的拆分与显示。借助相关测量仪器分。析数显百分表输出信号与其显示。数据之间的关系是软件编程的基。础; 合理选择相关硬。件搭建电路可有效地保证系统运。行稳定性的同时降低成本。5.4 展望随着机械现代化和自动化的发展,越来越多的机械硬件被软件设计所代替,准确的程序编写和合理的电路搭建,可以有效的在保证系统运行下降低成本。相信不远的将来

42、,数显百分表会发展的越来越成熟同时能被广泛的应用于各类工程领域。致谢很快,四年时间就要结束了,我们也即将步入社会这个大家庭去,冲向崭新的工作与生活。很感谢此次毕业设计中我的指导老师梁应选老师,在我迷茫时给予帮助,不自信时给我鼓励,让我能成功的完成毕业设计。 另外,需要特别感谢的就是我的父母,他们总是给予我无私的爱和关怀,前两天,也就是毕设快要结束的几天,我得病住院的几天,我妈妈还特地从老家赶来照顾我,帮我解决了后顾之忧,让我能顺利的完成毕业设计。最后,我还要感谢这次审阅我论文的老师们,由于我的能力有限,论文中的不足,还请老师们不吝指导,谢谢。参考文献1尹志刚. 百分表自动检测装置的研究与设计D

43、.黑龙江大学,2011.2王盼盼. 容栅传感器在数字式皮革测厚仪中的应用研究D.陕西科技大学,2012.3梁应选,杨明亮. 基于容栅传感器和单片机的检测系统J. 实验室研究与探索,2013,06:25-29.4王辉林,李莎莎. 基于LabVIEW的数显百分表测量系统J. 计量技术,2008,06:37-39.5项琳. 基于MCS-51单片机的油井系统测试仪研究D.中国石油大学,2008.6李蒙. 基于STC89单片机的实验教学系统D.天津大学,2008.7张剑. 基于USB总线的便携式数据采集系统设计D.南京理工大学,2004.8王蕊. 基于单片机的多功能自动调温风扇系统设计D.郑州大学,20

44、14.9刘文. 基于STC89C52的探测救援智能车的设计与研究J. 电子技术与软件工程,2016,02:255.10周宦银,吕子勇,马果花,胡杰微. 电压比较器实验研究J. 实验技术与管理,2012,03:42-44.11张荣. 容栅编码器研究及其应用D.同济大学,2007.12戚瑞民. 数字存储示波器的设计研究D.合肥工业大学,2007.13王习文,齐欣,宋玉泉. 容栅传感器及其发展前景J. 吉林大学学报(工学版),2003,02:89-94.14邵拓. 容栅传感器机理研究及其测量系统构建D.华北电力大学(北京),2011.15徐科军,马修水,廖健芳,马文. 容栅传感器研究与开发现状J.

45、工具技术,1994,12:37-40.16毛春丽. 如何做好数字示波器幅值的测量审核J. 国外电子测量技术,2014,08:78-81.17唐文彦 传感器M4版北京: 机械工业出版社,200918张国雄测控电路M 3 版北京: 机械工业出版社,200819孙永泉,王振清基于容栅传感器和单片机的变形检测系统J微计算机信息,2007,23( 35) : 103 104,3720杨雪芳,蔡萍,王卫钢,等全数字式容栅位移传感器J仪表技术与传感器,2005( 7): 5621Akira Maekawa,Michiyasu Noda,Masanori Shintani. Experimental stud

46、y on a noncontact method using laser displacement sensors to measure vibration stress in piping systemsJ. Measurement,2016,79:.22Levent Paral,Jiri Pechousek,İsrafil abikolu,Petr Novak,Jakub Navarik,Milan Vujtek. A digital measurement system based on laser displacement sensor for piezoelectric cerami

47、c discs vibration characterizationJ. Optik - International Journal for Light and Electron Optics,2016,1271:.23D. Milewska,K. Karpienko,M. Jdrzejewska-Szczerska. Application of thin diamond films in low-coherence fiber-optic fabry-Prot displacement sensorJ. Diamond & Related Materials,2016,:.24Ch

48、unlei Jiang,Chengwei Li,Yun Wang. IMPROVED TRANSITION DETECTION ALGORITHM FOR A SELF-MIXING DISPLACEMENT SENSORJ. Optik - International Journal for Light and Electron Optics,2016,:.25Sicong Tao,Xiaopeng Dong,Bowen Lai. Temperature-insensitive fiber Bragg grating displacement sensor based on a thin-w

49、all ringJ. Optics Communications,2016,:.26Jun Li,Hong Hao. Health monitoring of joint conditions in steel truss bridges with relative displacement sensorsJ. Measurement,2016,88:.27Supakorn Harnsoongnoen,Niwat Angkawisittpan. Angular Displacement Sensor Based on Coplanar Waveguide (CPWs) Loaded with

50、S-Shaped Golden Spiral-Tapered Split Ring Resonators (SGS-SRRs)J. Procedia Computer Science,2016,86:.28Y.-C. Tan,Z.M. Ripin. Technique of Measuring Piston Secondary Motion Using Laser Displacement SensorsJ. Experimental Mechanics,2012,529:.29Murugan Sethuramalingam,Umayal Subbiah. Enhancing the line

51、arity characteristics of photoelectric displacement sensor based on extreme learning machine methodJ. Photonic Sensors,2015,51:.30A. Arifin,A. M. Hatta,Sekartedjo,M. S. Muntini,A. Rubiyanto. Long-range displacement sensor based on SMS fiber structure and OTDRJ. Photonic Sensors,2015,52:.31A. Arifin,

52、A. M. Hatta,Sekartedjo,M. S. Muntini,A. Rubiyanto. Long-range displacement sensor based on SMS fiber structure and OTDRJ. Photonic Sensors,2015,52:.附录主程序#include Source.hvoid main()uint32_t val;float disp;init_dialgauge();init_1602();clear_1602();delay_ms(20);loop:while(true)if(NewData)/如果有新数据EA = 0

53、;/关闭中断,防止新数据过来出乱子val = transform();/转换新数据disp = val;disp = disp*0.000124;val = (uint32_t) disp*1000;write_string(0,0,Dialgauge Value:);if(isPlus)/显示正负号write_char(1,0, );elsewrite_char(1,0,-);/显示数据write_char(1,1,val/10000%10+0x30);write_char(1,2,val/1000%10+0x30);write_char(1,3,.);write_char(1,4,val/

54、100%10+0x30);write_char(1,5,val/10%10+0x30);write_char(1,6,val%10+0x30);NewData = false;while(true)if(INTE=0)/如果等待13us,中断过来的线一直是低电平,说明初始的54us高电平经过反相器成为的低电平来了,开中断,接数据delay(13);if(INTE=0)EA = 1;goto loop;程序2#include dialgauge.huint8_t readData6;bool NewData;bool isPlus;void init_dialgauge()/初始化和百分表相关的

55、中断TMOD = (0x02|0x04);/0x04计数功能,0x02自动重装8位定时模式TH0 = 256-8;/自动重装8位计数模式,每次计数溢出时TH0自动复制给TL0TL0 = 256-8;/预置数,TL0=256-8,以后置数工作由自动重装8位模式干EA = 1;/开总中断TR0 = 1;/开始启用T0计数器/定时器ET0 = 1;/计数器可以计数void timer0() interrupt 1/中断函数,8个下降沿脉冲到来之后,也就是串行转并行器件完成1byte记录之后执行,读取该bytestatic uint8_t times = 0;/静态变量times记录第几次来中断,第1

56、-6次分别对应数据的第1-6组,全部都读取,但是只用最后三组。readDatatimes = DATA_PORT/将第times组的数据从并口DATA_PORT存到数组里面,times从0-5,分别对应6组读取出来的数据times = (+times)%6;/times在0-5中间变动,每次自增1,5会自动自增成0。经典算法if(times=0)/times被上述等式置0,一组数据全部读取完成的时候NewData = true;/报告新数据=true,主函数会处理uint32_t transform()/将最后三组数组转换成正确的数字,无论读取出来的是正还是负数uint8_t i, j;uint32_t ans;if(readData5&0x01)/

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!