电压采集系统设计毕业设计毕业论文及文献综述[管理资料]
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
摘要
为了充分利用计算机资源进行数据采集及分析,设计了一种数据采集系统。
该系统使用虚拟仪器技术,可实现实时数据采集、存储以及对历史数据的复现和结果显示。
与传统数据采集系统相比,该系统具有成本低、控制容易、采样精度高、使用方便灵活等特点。
本设计借助LabVIEW软件来控制整个DAQ系统,利用开关、旋纽、随机数产生器、波形产生器等对象端子仿真外界环境模拟信号的变化,系统能实时的通过相应的端子将变化的信号采集进来,通过交互式的图形化前面板来控制系统,数据采集完成之后,再利用功能强大的数据分析程序,若现场数据超出设定值实现报警提示功能,再将原始数据转换成有意义的结果,达到利用虚拟仪器的技术仿真DAQ系统。
除任意波形发生器、示波器等通用测量与分析仪器外,各个领域都存在不计其数的特殊参量测量要求,如果建立了虚拟仪器平台,那么只要按照测量原理,借助信号分析与处理技术编制软件程序,就能设计建造各种不同的测试仪器。
关键词:数据采集;虚拟仪器;VI;图形化界面
Abstract
The system was designed for data acquisition and analysis through computer. By using the technology of Labview, the system could realize real-time data acquisition, data memory, and signal recall and display the result. Compared with traditional data acquisition, this data acquisition system based on Labview had characters of low-cost, high sampling precision, convenient and flexible in use.
With this design LabVIEW software to control the whole DAQ system, use of switches、Mechanics、random number generator, waveform generators and other objects outside terminal simulation environment analog signal changes,The adoption of real-time system corresponding to the terminal will change the signal acquisition in, through an interactive graphical front panel to control the system, after the completion of data acquisition,Re-use powerful data analysis procedures, if the data beyond setting the scene realization prompted alarm function, and then the raw data into meaningful results, achieved using virtual simulation technology equipment DAQ system. In addition to arbitrary waveform generators, oscilloscopes, and other common measurement and analysis instruments, there are countless areas of special parameters of measurement requirements, if a virtual instrument platform, then so long as measured in accordance with the principle of using signal analysis and processing technologies of software programs , Will be able to design the construction of a variety of test equipment.
Key words:Data Acquisition; Virtual Instrumentation; VI; Graphical Interface
目录
绪论 (1)
1.虚拟仪器的数据采集技术 (3)
数据采集的起源 (4)
数据采集系统的组成 (4)
数据采集系统的发展 (6)
2.系统设计任务及要求 (8)
系统设计任务 (8)
系统设计要求 (8)
3.容量采集系统设计 (9)
容量采集系统分析 (9)
前面板的设计 (9)
数据显示模块 (9)
控制报警模块 (11)
系统控制模块 (11)
程序框图的设计 (12)
模拟信号产生模块 (12)
报警系统模块 (13)
缓冲模块 (13)
数组及滤波模块 (14)
数据保存及读取模块 (14)
前面板整体修饰 (15)
4.电压采集系统设计 (18)
电压采集系统分析 (18)
前面板的设计 (18)
开关及旋钮控制模块 (18)
报警及开关模块 (19)
波形显示模块 (19)
程序框图的设计 (19)
模拟信号模块 (19)
报警及定时等待模块 (20)
数据保存及读取模块 (21)
前面板整体修饰 (22)
5.扩展及展望部分 (23)
总结 (24)
致谢 (25)
参考文献 (26)
绪论
随着现代电子技术和计算机技术的迅猛发展、数据采集技术的快速进步和普及应用,使得在自动化测试和电子测量仪器这些领域发生了革命性的变化,仪器技术也在高速发展中。
在计算机广泛应用的今天,数据采集的重要性是十分显著的。
它是计算机与外部物理世界连接的桥梁。
各种类型信号采集的难易程度差别很大。
实际采集时,除了有一些基本原理要注意,还有更多的实际的问题要解决。
从用户的观点来讲,今天的测试领域面临着三大主要挑战 测试成本不断增加、测试系统越来越庞杂以及对测试投资的保护要求越来越强烈。
在经历了模拟仪器、数字化仪器、智能仪器以及单台仪器、叠架式仪器系统、虚拟仪器系统这样两条发展主线后,虚拟仪器技术开始慢慢普及。
单片机在某些采集时其CPU无法进行如此大的工作,这时候就需要借助电脑来完成对信号量的采集,这里就要用到虚拟仪器技术。
在产品的研究、开发与研制、生产的全过程中,不同阶段有不同的测试要求。
在研究、开发阶段,技术责任单位不仅需要用高性能的测试设备来检查其设计是否达到技术规格书上的要求,而且还要确定其安全裕量是否足够。
在生产阶段对测试系统的主要要求是易于使用和测试快捷。
而军队现场使用的测试设备则要求便携、坚固,并具有快速、准确的诊断能力。
这势必使用户的测试投资难于得到有效的保护。
面对这些挑战,用户最可能的做法是试图在单位内选用标准化硬件平台(如VXIbus与统一的计算机平台)。
硬件的标准化可以部分地降低测试成本,但作用是非常有限的。
而使用VI则可以大大缩短用户软件的开发周期,增加程序的可复用性,从而降低测试成本。
而且,由于VI是基于模块化软件标准的开放系统,用户可以选择他认为最适合于其应用要求的任何测试硬件。
例如,你完全可以自己定义最适合于你生产线上用的低成本测试系统,或为研究与开发项目设计高性能的测试系统,而这些系统的软件或硬件平台可能是相同或兼容的。
简言之,采用基于VI的统一测试策略将有助于你面对当今的测试挑战而在激烈的竞争中处于优势地位。
许多领域都应用到了数据采集技术和虚拟仪器技术,例如:工业生产中对容量的监测控制,对反应炉压力的控制等等。
本设计则借助LabVIEW软件来控制整个DAQ 系统,利用开关、旋纽、随机数产生器、波形产生器等对象端子仿真外界环境模拟信号的变化,系统实时的通过相应的端子将变化的信号采集进来,通过交互式的图形化前面板来控制系统,数据采集完成之后,再利用功能强大的数据分析程序,若现场数据超出设定值实现报警提示功能,再将原始数据转换成有意义的结果,达到利用虚拟仪器的技术仿真DAQ系统。
除任意波形发生器、示波器等通用测量与分析仪器外,
各个领域都存在不计其数的特殊参量测量要求,如果建立了虚拟仪器平台,那么只要按照测量原理,借助信号分析与处理技术编制软件程序,就能设计建造各种不同的测试仪器。
1. 虚拟仪器的数据采集技术
虚拟仪器[1]的起源可以追朔到20世纪70年代,那时计算机测控系统在国防、航天等领域已经有了相当的发展。
PC机的出现使仪器的计算机化成为可能。
在仪器计算机化领域中,美国国家仪器公司(NationalInstruments.Nt)走在了前列,甚至在Microsoft公司的Windows诞生之前,。
对虚拟仪器和LabVIEW长期的、系统的和有效的研究开发使得NI公司成为业界公认的权威。
NI公司开发的Labview是基于图形编译语言(G语言)的实验室虚拟仪器集成环境(Lab.oratory Virtual Instrument EngineeringWork Bench),它具有十分强大的功能,包括函数数值运算、数据采集、数据分析、信号生成、信号处理、输入,输出控制,以及图像获取、处理和传输等等。
与传统编程采取的文本语言相比.Labview 使用图形语言(各种图标、图形符号、连线等)G语言编程,界面友好直观,都是人们熟悉的开关、旋钮、波形图等。
是一种直觉式图形程序语言。
传统的编程语言如C、Fortran等用于虚拟仪器控制,需要工程人员有相当丰富的编程经验。
他们必须将自己关于仪器和应用的知识转化成一行行的程序代码,以形成程序测试。
而Labview编程无须太多的编程验,只要以很直觉的方式建立前面板人机界面和方块图程序,便可完成编程过程。
这样就可以使没有丰富编程经验的工程师从繁重的程序文字编码中解脱出来,把更多的精力放在试验和测试上。
不像传统的编程语言程序必须逐行地执行。
Labview的执行顺序是依方块图间数据的传递来决定的,因此可以设计出可同时执行多个程序的流程图。
Labview[2]的开发环境分为三部分:前面板(Pane1)、框图程序(Diagram Programme)和图标/连接端口(Icon/Termina1)。
前面板就是图形化用户界面.用于设置输入数值和观察输出量。
在前面板中,输入量被称为控制fContro1),输出量被称为指示(Indicator),它们通过各种图标如按钮、旋钮、开关、图表等出现在前面板上,模拟真实仪器。
框图程序由节点(Node)和数据连线(Wire)组成,它利用图形语言对前面板上的控制对象即输入量和输出量进行控制。
节点用来实现函数和功能调用,数据连线表示程序执行过程的数据流。
它定义了程序框图内的数据流动方向。
图标、连接端口用于把Labview程序定义为一个子程序,从而实现模块化编程。
图标是子程序在其它程序框图中被调用的节点表现形式,连接端口则表示节点数据的输入、输出口。
Labview具有三个可移动的图形化工具模板:工具模板(Tools Palette1、控件模板(Controls Palette1和功能模板(FunctionPalette)。
工具模板提供了用于图形操作的各种工具,比如定位、标注、断点、连线、文字注释等;控件模板提供了前面板编辑所需的图像图标、一些特殊的图形:功能模板则提供了一些基本的数学函数和其他功能函数。
这三个模板是Labview编程的主要工具。
虚拟仪器的主要特点有:(1)尽可能采用通用的硬件,各种仪器的差异主要是软件;(2)可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能强大的仪器。
(3)用户可以根据自己的需要定义和制造各种仪器。
虚拟仪器实际上是一个按照仪器需求组织的数据采集系统,其研究中涉及的基础理论主要是数据采集和数字信号处理。
虚拟仪器的强大功能归因于它的层次化结构,用户可以把创建的VI程序当作子程序调用,以创建更复杂的程序,而这种调用的层次是没有限制的。
数据采集的起源
数据采集系统[3]起始于20世纪50年代,最早在美国运用于军事的测试系统,大约在60年代末期国外开始有成套的数据采集设备进入市场并用于专用的系统。
到70年代开始逐渐出现了采集器、仪表与计算机溶为一体的数据采集系统,并且数据采集的系统开始分成两类:一类是实验室数据采集系统,另一类则是工业现场数据采集系统。
80年代起数据采集系统有了极大的发展,开始逐步推出了通用的数据采集与自动测试系统。
该阶段的数据采集系统主要分为两类:一类是以仪器仪表和采集器、通用接口总线和计算机等构成,另一类则主要以数据采集卡、标准总线和计算机构成。
到了80年代后期,数据采集系统的发展更为迅速:工业计算机、单片机及大规模集成电路的组合,开始使用软件进行管理,这些都使得数据采集系统的成本降低,体积减小,功能成倍增加,从而让数据处理能力得到了很大范围的加强。
从90年代起至今,在技术较为先进的地方,数据采集技术已开始广泛的应用于军事,航空电子设备及宇航技术,工业等各项领域,并已经在这些领域中成为一项专门的技术被使用。
虚拟仪器设计数据采集系统的特征是:每个VI都有一个用户界面单元。
使用传统的编程语言方式,甚至用于一个典型测试程序的简单用户命令行界面都是一座输入输出基本指令的迷宫。
这些输入输出的基本指令通常是加在编写完的程序核心的后面。
有了VI,用户界面成为软件模型中不可缺少的组成部分。
用户界面使得在系统开发过程中频繁地、交互式地测试软件模块变得容易。
而且,由于用户界面是每个VI中必要的组成部分,当错误发生时,总能提供系统的故障检修。
这对数据采集系统来说提供了很大的方便,因此虚拟仪器被越来越多的应用于软硬件开发中来,尤其是数据采集这块。
数据采集系统的组成
数据采集系统[4]包括硬件和软件两大部分。
而软件是整个系统的灵魂,在数据采集系统中的作用越来越重要。
整个设计也主要运用软件来实现,包括信号模拟输入,
采样,数据分析和处理、模拟输出等。
典型系统如:
图1-1
信号分为数字量和模拟量。
数字量包括开/关信号、脉冲队列,模拟量包括直流信号、时域信号、频域信号。
本设计中主要是用模拟量来仿真外界环境数据。
将外部信号采集到计算机后需要进行信号调理,对信号进行放大、滤波、信号转换等处理,最后输出。
根据Nyquist采样定律[5]:能够正确显示信号而不发生畸变的最大频率叫做Nyquist频率,它是采样频率的一半:fs>=2* f max(fs:采样频率;f max:信号最高频率),一般最小为fs>=* f max 。
足够的采样率下的采样结果
过低采样率下的采样结果
图1-2
数据采集的意义及发展
在计算机广泛应用的今天,数据采集的重要性是十分显著的。
它是计算机与外部物理世界连接的桥梁。
各种类型信号采集的难易程度差别很大。
实际采集时,有一些基本原理要注意,还有更多的实际的问题要解决。
从用户的观点来讲,今天的测试领域面临着三大主要挑战−−测试成本不断增加、测试系统越来越庞杂以及对测试投资的保护要求越来越强烈。
虽然增加产品的电气程度可以增加其功能与性能,但所增加的功能与性能都需要通过测试来保证其质量。
因此,随着产品电气程度的增加,测试成本也在不断增大。
随机走访几家大专院校、科研院所与工厂的实验室或生产车间,就会发现各种各样、互不相同的测试系统。
这些测试系统往往既不兼容,又不能共享软、硬件资源。
即使在同一个单位,这种状况也是屡见不鲜。
造成这种状况的根源在于缺乏统一的测试策略−−其问题不全出在用户单位的管理上,而在于传统仪器无法向用户提供统一
的测试策略。
在产品的研究、开发与研制、生产的全过程中,不同阶段有不同的测试要求。
在研究、开发阶段,技术责任单位不仅需要用高性能的测试设备来检查其设计是否达到技术规格书上的要求,而且还要确定其安全裕量是否足够。
在生产阶段对测试系统的主要要求是易于使用和测试快捷。
而军队现场使用的测试设备则要求便携、坚固,并具有快速、准确的诊断能力。
这势必使用户的测试投资难于得到有效的保护。
面对这些挑战,用户最可能的做法是试图在单位内选用标准化硬件平台(如VXIbus与统一的计算机平台)。
硬件的标准化可以部分地降低测试成本,但作用是非常有限的。
而使用VI则可以大大缩短用户软件的开发周期,增加程序的可复用性,从而降低测试成本。
而且,由于VI是基于模块化软件标准的开放系统,用户可以选择他认为最适合于其应用要求的任何测试硬件。
例如,你完全可以自己定义最适合于你生产线上用的低成本测试系统,或为研究与开发项目设计高性能的测试系统,而这些系统的软件或硬件平台可能是相同或兼容的。
简言之,采用基于VI的统一测试策略将有助于你面对当今的测试挑战而在激烈的竞争中处于优势地位。
VI技术[6]经过十余年的发展,正沿着总线与驱动程序的标准化、硬/软件的模块化,以及编程平台的图形化和硬件模块的即插即用(Plug&Play)化等方向发展。
现在,VI技术在发达国家的应用已非常普及,而我国基本上还处于传统测试仪器与计算机互相分离的状态。
因此,从引进国外先进的VI技术和产品入手,大力推广VI的应用,无论对加速发展我国自己的电子仪器工业,还是提高我们的测试水平都是有益的。
现今,由数据采集系统技术所产生出的数据采集器与计算机组成独立的监测诊断系统,这个系统将设备上的震动传感器及过程传感器等所获得的信号作为其输入,使用各种测量分析技术和多种显示方式,应用于对机器设备等的定期状态监测和故障诊断。
在数据采集系统上国内技术与国外相比较在功能多样性、体积大小和使用的方便程度等上稍微有些差距,但也都达到了国外的一般水平,并且也开始广泛应用于各个领域。
未来的数据采集系统将被更为广泛的应用于这些相关领域,并且能在以太网上得到更大的发展,在现场设备控制层,促进信息从传感层到管理层的集成这些方面都能得以很好的应用。
2. 系统设计任务及要求
本设计要求借助labview软件来控制整个DAQ系统–包括采集原始数据、分析数据、给出结果等。
基于VI的数据采集仿真系统利用虚拟仪器的技术仿真一个DAQ 系统。
设计要求至少要两种环境数据仿真外界模拟信号的变化,用户能够自行设定系统参数,要求提供VI前面板图及流程框图。
系统设计任务
(1)利用开关、旋纽、随机数产生器、波形产生器等对象端子仿真外界环境模拟信号的变化,系统能实时的通过相应的端子将变化的信号采集进来。
(2)设计相应的对象端子显示现场的数据变化。
(3)若现场数据超过了设定的安全值,能发出报警信号及提示信息。
(4)将采集到的所有数据以文件的方式记录下来,以备今后查阅;并能随时调用以往的记录。
系统设计要求
系统要求至少要两种环境数据仿真外界模拟信号的变化,系统参数能够由用户自行设定。
本设计中模拟容量的采集和电压的采集来达到仿真的效果,根据设计任务将采集的信号通过数值和图形等对象端子显示出来,在将其转为数组格式把采集的信号存储到文本文件中,以备随时调出查看。
并在信号采集的过程中要设计一个报警系统,当现场数据超过设定的安全值时,系统发出报警信号。
3. 容量采集系统设计
容量采集系统分析
容量数据采集系统使用系统产生的随机数作为信号源。
由电脑生成0到1的随机数,经过公式:“随机数*80+15”的转换,转换成为一定容量范围内随机变化的仿真模拟容量信号,设置仪器保持最低容量为15,最高为95的容量。
界面上给予用户相应的容量数据显示,用户还可以自定义安全值。
这样一个简单的模拟容积信号设计完成,接着便是对此模拟信号进行采集。
将采集的容量值及其变化送到一个液罐界面上显示出来,并将采集到的数据以数字形式显示,这便完成了第一步基础的数据采集系统的设计。
下面要对此容量采集系统的功能进行具体设计。
容量在一个范围内变化,但在实际运用中若容积的容量过高或过低都会影响实际工业操作,造成压强等各项因素的变化,根据本设计的原理,能保证最低容量为15,所以这里要设置一个超限报警系统,系统设定一个默认安全值,将模拟信号的大小与安全值进行比较,用户也可根据另行进行设定安全值,若高于安全值时系统会发出声音提示并亮起报警灯对用户进行报警提示,提醒用户进行处理。
当用户需要比较详细的采集信息的时候,例如我们容量采集中需要掌握容量的最大值和最小值或者需要得到容量的大致水平,要求得所采集容量的平均值时,因此仅仅显示信号采集的即时数据是不能满足需要的。
这里就需要使用滤波技术,判断出采集过程中数据的最大和最小值,并求出其平均值,并将这些数值显示在界面上方便用户察看。
为了方便用户随时调用查看这些数据,需要将采集到的数据保存到文本中,这就要对数据文件进行存档保留。
使用户可以根据自己需要随时调出文本,对采集信号的数据进行查阅。
前面板的设计
前面板分别由输入控制和输出显示构成。
控制是用户输入数据到程序内的接口,显示是输出程序所产生的数据接口。
控制和显示的种类有很多,可以在控制模板中的各子模板中选择。
当用操作工具点击选择了控制部件后则可以将模板放在前面板上。
数值显示模块
数值模板包括了对数值的控制以及显示,将鼠标放置于其标志上的时候此模板会
展开出更多的子模块供用户的需要选择,如图示:
图3-1
这里我们需要一些数值输入、显示模板和数组模块,如图示:
图3-2
在这些显示控件中用户我们可以直接在安全值显示框内输入数据,也可以使用显示框左边的上下箭头点击来对数据进行微量调整。
其他的四个显示框,分别用来显示数据采集过程中所采集到的容量的最大值和最小值以及每一次采集到的容量值,采集完后计算得出采集过程的平均容量,并显示出来。
为了使得系统采集的数据更直观的体现出来,就需要设计一个数据图形显示模
块,这里选用数值模板中那个液罐图形显示的子模板,如图所示:
图3-2
用户可以在前面板的容积表上看出容量变化的幅度,了解容量的当前变化情况。
报警模块
布尔值子模板Boolean包含了对逻辑数值的控制和显示。
如图示:
图3-4
当采集数据超过规定的安全值时,需要报警,这就要设计报警指示灯。
在布尔模板下选择一个圆形指示灯,在属性任务栏把亮灭颜色改成深红色和浅红色,达到报警的警示效果。
此系统中对采集到的数据和用户设定的安全值的比较结果进行逻辑判断,若为真,即大于安全值,报警指示灯会亮起;若判断结果为假,报警灯熄灭或者不亮。
如图所示:
图3-5
系统控制模块
系统运行结束时需要一个控制开关来控制采集程序的停止。
就在布尔子模板下选择一个开关控制,并适当调整大小。
如图示:
图3-6
以上就是前面板的图形界面的各个模块。
程序框图的设计
框图程序是由节点、端点、图框和连线四个元素构成。
用选择和连线工具可以将节点、端点之间互相连线。
鼠标右键点击节点或端点,在弹出菜单中选择“Create Constant ”“Create Control”或“Create Indicator”等命令,在被创建的端点与所点击对象间会自动进行连线。
模拟信号产生模块
数值运算子模板Numeric和比较子模板Comparison是进行数值的运算包括多种函数的运算和数值比较的重要的模板。
要让系统产生一个一定范围内变化的模拟信号首先需要一个随机数,在数值子模板中选择随机数(0-1)模块,此模块会随机产生0到1之间的任意数。
接下来需要利用“随机数*80+15”这个公式对数值变化范围进行控制,这样就模拟出了一个容量仿真信号,其程序框图如下:
图3-7
此流程图中显示出系统产生的信号最低值为15,最高值为95,即设定容量的最大和最小值不会超出此范围,显示出系统容量安全控制。
根据此流程所产生的信号要送达到前面板中显示出来,只需要将产生的数据流与容量计模块和数据显示模块在程序框图中的对象端点相连接就可以实现了。
因为数据都设置为双精度,所以数据流的连线颜色均显示为黄色。
显示流程如图所示:。