论文总字数:21863字
摘 要
虚拟仪器是有美国国家仪器公司(NI)于上世纪七十年代提出的一个概念,由计算机的硬件资源、模块化仪器硬件和人机交互界面所组成的测控系统,把计算机强大的数据处理能力和仪器的控制、测量能力结合起来。与主要通过硬件实现各种功能的传统仪器不同的是,虚拟仪器强调了软件的作用,它提供了完成测量任务或者控制任务的软件开发环境和硬件设备,而仪器所要完成的功能完全由用户自己定义,所以虚拟仪器有更为灵活的可操作性。LabVIEW采用更为形象的图形化语言,如开关、按钮、示波器、波形图等,对于没有经验的工程师来讲,是一个很好的选择。
本文介绍了labVIEW图形化语言,以及用labVIEW对苏黎世仪器(Zurich Instruments)所生产的MFLI锁相放大器进行编程控制,实现仪器预有的功能,能在计算机中对仪器进行实时控制和远程控制,使用者可以通过USB或者远程网络使用电脑连接仪器,根据不同的要求进行编程,并且相应的进行数据采集,储存。
关键词:labVIEW;虚拟仪器;图形化编程;仪器控制
The instrument control system and its optimization based on LabVIEW development
02012403 Huo Fei
Supervised by Wang Jianli
Abstract:With the wide using of electronics, computer and digital signal processing technology in the field of measurement, some test equipment, like traditional electronic instruments with a specific function and appearance have been greatly changed in the recent few years. New test method based on computer technology of VI (virtual instrument) is gradually take the place of traditional instruments.
Virtual instrument is a conception proposed by National Instruments (NI) in the 70s last century, a test system composed by the hardware resources of the computer, modularization instrument and human-computer interaction interface. The powerful ability of date handling, instrument controlling and testing are combined together. Different from the traditional instrument whose function is achieved by hardware, virtual instrument, which provide the software development environment and hardware equipment, emphasize the function of software, the function of the instrument is defined totally by the users themselves, so virtual instrument has more flexible maneuverability. LabVIEW use visual programming language such as switch, button, oscilloscope and oscillogram, for some inexperienced engineer, it is quite a better choice.
This paper show the visual programming language and how to use it to programming a MFLI lock-in amplifier from Zurich Instruments and achieve some of the functions which is designed originally. User can connect the instrument with the computer and control the instrument real-timely and remotely via USB or LAN. According the different requirement, Users can programme it and collect the data.
Key words: LabVIEW;Virtual instrument;Instrument controlling;
目录
1、 绪论 1
1.1 系统开发背景和目的 1
1.1.1 开发背景 1
1.1.2 研究目的 2
2、 虚拟仪器概述和NI LabVIEW 3
2.1 虚拟仪器的概念 3
2.1.1 仪器控制 3
2.1.2 数据采集 3
2.2 虚拟仪器的硬件系统 4
2.3 虚拟仪器开发平台LabVIEW 6
2.3.1 LabVIEW概述 6
2.3.2 LabVIEW程序的基本构成 7
3.仪器综述 10
3.1锁相放大器 10
3.1.1锁相放大器技术综述 10
3.2 MFLI锁相放大器 12
3.2.1 MFLI锁相放大器综述 12
3.2.2 MFLI锁相放大器综合介绍 12
3.2.3 MFLI的规格介绍 15
4.基于LabVIEW的仪器控制系统开发 19
4.1 LabVIEW2013支持的总线 19
4.1.1 仪器总线技术简介 19
4.1.2 仪器控制及LabVIEW2013支持的总线类型 20
4.2 仪器控制 22
4.2.1选择仪器控制方案 22
4.3 LabVIEW编程 26
4.3.1 编程概念的介绍 26
4.3.2 Labone的架构 26
4.3.3 LabOne端口和主机名称的选择 27
4.3.4 从仪器中获取数据 28
4.3.5 仪器控制的编程 28
5.总结 33
5.1 工作总结 33
5.2 展望 33
基于LabVIEW的仪器控制系统开发及其优化
1、 绪论
1.1 系统开发背景和目的
1.1.1 开发背景
近些年来,计算机行业的迅猛发展,带动了相关行业的快速进步,其中比较显著的就是自动化仪器系统的革新,其标志就是虚拟仪器的出现、发展再到今天的逐步走向成熟。计算机硬件水平的发展以及中央处理单元处理能力的提高,使得虚拟仪器得以突破了传统仪器的概念,从而可以充分利用高性能的模块化硬件以及更为灵活并且高效的软件来实现传统仪器所具有的各种测试功能。
随着虚拟仪器技术的出现以及日渐成熟,用户可以根据自己的需求和喜好定义自己的仪器所具有的功能,对一个仪器的系统进行更为灵活的设计,从而满足所需要的各种不同的要求,这就大大减少了不必要的单一功能仪器的生产,对于时间和资源而言,节省了很大的一笔开支。产品的开发效率和生产效率得到了很大的提高,产品投放市场的时间大大缩短,产品的质量也不用受到更多不可控因素的影响,这就使得测量精度得到了很大程度的提升。
与其他技术相比较,虚拟仪器在以下四个方面具有明显的优势:
- 高性能
计算机技术迅速发展的同时,也大力推动了虚拟仪器技术的不断进步,所以,虚拟仪器也就理所当然的具备了很多计算机的优点。处理器的不断进步使得在虚拟仪器技术可以处理更为复杂的数据,不断发展的互联网使得虚拟仪器的远程控制不在是一个可望不可即的技术。
- 灵活性
虚拟仪器的软硬件技术使得我们不在受制于传统仪器所带来的单一功能方面的制约,从而更加灵活地对于仪器所能所要实现的功能进行设计,仅仅需要更新测量硬件就能“制造”出不同的仪器,使得经济成本得到了最大限度上的节省。
- 集成性
虚拟仪器技术可以将很多已有模块的功能集成在一起来完成更为复杂的测量要求,把多个测量系统集成成为一个系统,大大节约了空间成本。使得仪器更容易地就可以接入一个系统当中。
美国国家仪器公司(National Instruments)在虚拟仪器的发展过程中做出了重要的贡献。它开发了labVIEW这个程序开发环境,类似于C语言的一种图形化的编程原因,这就是它与其他语言最大的不同。labVIEW使用的图形化编程语言乘坐G语言,主要产生程序框图,它集成了各种应用所需要地所有工具,更便于一些没有太多经验的年轻工程师进行开发。LabVIEW的函数库涵盖了数据采集、数据分析,数据显示以及数据储存,而在前面板上提供了许多与传统仪器类似的控件,例如,数字示波器,万用表以及一些布尔元件,可以更方便地来创建人机交互界面,便于程序的运行和操作。通常,labVIEW会采用通用的测量硬件系统,而差异主要体现在软件方面,这就使得用户可以根据不同的设计需求,使用同样的硬件设计出具有不同功能的仪器。LabVIEW应用于很广泛的领域,主要有测量测量,仪器控制,运算仿真。
1.1.2 研究目的
仪器控制的目的主要是把已经存在的不同仪器与计算机设备连接起来,把它们的功能协同起来,还可以通过根据需求把这些功能进行一个延伸和拓展,具备完成原来单独的仪器所不能完成的任务。仪器控制的顺利完成,首先要使得仪器与计算机设备进行通信,通过一些特殊的通信协议,使得计算机与仪器设备之间存在着连接通路,计算机在硬件要求上支持这种通路,并且编程好一些可以实现具体功能的仪器控制程序。仪器和计算机的通信就可以通过选择各种不同种类的标准接口来实现,这就显得十分的方便。
2、 虚拟仪器概述和NI LabVIEW
2.1 虚拟仪器的概念
虚拟仪器是一种以计算机为载体的测量和控制系统,对各种物理量进行测量并对物理过程进行控制。传统仪器的设计理念是把集成所有的测量电路和软件,并把它们进行封装,通过仪器前面板上一些特定的功能按键,用户可以实现仪器所提供有限的功能。而虚拟仪器提供的则是完成测量任务和控制任务所需要的软件开发环境和硬件设备,而具体的功能完全可以由用户自己定义。通常虚拟仪器的价格会比传统仪器低很多,而且也具有更大的灵活性。
图2-1 典型的虚拟仪器机构
2.1.1 仪器控制
仪器控制所要实现的功能将仪器设备和计算机连接起来完成工作,根据不同的需求进行仪器功能的延伸和拓展。仪器通常都会有预设的通信接口引出端,计算机中通常也会有可以完成编程实现仪器控制的软件。仪器和计算机之间有多种不同的标准接口可以采用,通常会有GPIB(IEEE-488)和串口(RS232/RS485/RS422)。如果使用GPIB电缆将仪器与计算机进行连接,则需要计算机上需要安装GPIB卡;而对于串口而言,可以直接与计算机进行连接安装硬件相应的驱动程序,就可以在软件的开发环境中对仪器进行控制。
2.1.2 数据采集
数据采集是测试系统最主要的环节,也是虚拟仪器的一个重要的组成部分,其典型的硬件结构为:传感器→信号处理器→数据采集设备→计算机。传感器可以讲被测量的各种物理信号,例如:温度,位移等转变成相应的电信号,再对电信号进行进一步的处理分析。只有构建一个完整的数据采集系统,才能够将所需要的数据采集到计算机当中,以供计算机处理系统对数据行进分析和处理。一般情况下,完整的数据采集系统包括变换器、传感器、数据采集装置、信号调理设备,驱动程序、硬件配置管理软件、应用软件和计算机等部分。通过改变传感器和变换器的类型,可以测量不同的物理量,并将它们转换成为电信号;信号调理设备的作用是对于变化期和传感器所采集到的电信号进行进一步的加工处理,这一步所处理加工过的数据必须要符合数据采集卡的需要,不然就不能够满足采集的要求,计算机采集到相关的测量数据之后,软件就会通过测量程序对测量系统进行控制,这个过程可以告知设备应该子啊什么时候,从哪条通道进行数据采集,与此同时,并对原始采集数据进行进一步的分析处理。从某种意义上讲,数据采集系统本身就是一台完整的仪器。
2.2 虚拟仪器的硬件系统
虚拟仪器硬件平台的核心是计算机,计算机功能的优势可以决定虚拟仪器的发挥,而一个具有强大数据处理和分析能力的计算机,无疑可以将虚拟仪器的水平提高一个档次,使其具有更多的功能,更强的测量能力,用户可以根据他们的自身需求构建出新的虚拟仪器平台。虚拟仪器可以通过不同的接口总线组成不同的测试系统,根据所使用的硬件系统和总线方式的不同,可以分为以下几类:
- GPIB系统
GPIB是标准通用接口总线的缩写(General Purpose Interface Bus),它是独立仪器中一种很常见的输入输出接口。GPIB使用8位并行的异步通信方式,它的数据传输速率高达8 Mb/s。典型的GPIB系统是由一台计算机、一块GPIB接口卡和若干台GPIB总线仪器通过GPIB电缆连接到一起的。在标准配置的情况下,一个GPIB控制器总线可以最多连接14个仪器,电缆长度可以达到40米。虽然这样的机械连接会受到电缆长度的影响,但是随着科技的进步,可以通过使用GPIB扩展器和延长器来使连接不受到距离因素的制约。GPIB电缆和连接器种类丰富,其加工等级都能达到工业等级,对于环境的要求也会因此而降低不少。
利用GPIB仪器控制系统实现计算机对仪器的操作和控制,可以对多台仪器进行自由的组合,形成比较综合的自动测量系统。但是,GPIB也有其自身的缺点,那就是无法提供多台仪器同步和触发的功能,在传输大量数据的过程当中可能会表现出带宽不足的劣势。
- 串行总线
串行总线是一种非常通用的设备通信协议,它是一种主要用于台式计算机和笔记本电脑上的设备通信协议。在很多设备中,串行总线是最常见的仪器通信协议,主要用于仪器控制。而且很多与GPIB兼容的设备还具有EIA232端口。EIA232 和EIA485/EIA422也可以被称作RS232和RS485/RS422。
串行通信的概念很简单。串口按位(bit)发送和接收字节。虽然它比按字节(byte)的并行通信的速度稍慢,但是串行总线采用异步通信的方式,它的结构更简单,而且使用距离更长。因为串行通信是异步的,端口可以在一条线路上传输数据,而在另一条线路上接收数据,从而可以再同一时间内完成双向的数据传输。其它线路可用于信号握手,但并不是必须的。波特率、停止位、数据位和奇偶校验位是串行通信的关键指标。两个串行端口若要进行通信,以上的这些参数是必须要相互匹配的。
- USB
通用串行总线(USB)主要是用于连接一些可以直接与计算机用USB接口相连的外部设备,例如键盘、鼠标、磁盘驱动器和扫描仪等。随着科学技术的发展,支持USB连接的外部设备的种类较以往增加了很多。USB最方便的特点就是它可以即插即用,当计算机发现添加一个新设备时,它会自动检测该设备,并且会对该设备进行识别,为这个设备配置一个合适的驱动程序。因此,通用串行总线被认为在未来的一段时间中将成为市场的主导。
- 以太网(LAN)
以太网是一种可以进行网络连接和远程控制的总线技术,它被广泛的应用于测量系统当中。目前,世界上约有一亿台计算机设备已经接入了外网。此外,以太网还能够提供用于仪器控制方面的功能。以太网是基于IEEE 802.3标准定义的,理论上可支持10Mbits/s(10 BASE-T)、100 Mbit/s (100BASE-T)和 1 Gbit/s (1000BASE-T)的数据传输速率。其中,最常见的就是100 Mbit/s (100BASE-T)以太网。
基于以太网对仪器进行控制,应当把以太网总线最大的优势发挥出来,这就包括远程控制仪器,以及一些简单的仪器共享方式。用户还可以使用办公场所现有的以太网络来进行一些实时的数据结果的发布。
除了以上的各种优点之外,以太网还有其自身的不足之处。以太网总线的仪器控制在实际传输速率,数据传输的稳定性和安全性方面的表现还有待于提高。虽然目前以太网总线的理论传输速率可以实现高达1 Gbit/s,但在实际使用中,由于网络可能被其他的用户所占用,而且数据传输的过程中可能会出现失效的问题,这种理论传输速率不太容易轻易地实现。另外,由于受到很多因素的影响,以太网的传输速率不稳定,这就可能导致数据传输很不稳定。最后一点,对于一些要求保密的数据,用户可能需要采取一些必要的安全措施,确保数据完整与保密。
- PIC
PCI总线通常是作为一种外设总线,而不是直接用于对仪器的控制。它对于仪器的控制,通常是通过连接GPIB或者串行通信总线来实现的。此外,由于其PCI总线带宽较高,因此,通常用于模块化仪器的背板总线,此时,其输入输出总线内置于测量设备中。
总线 | 带宽(MB/s) | 延迟(μs) | 距离(m) | 设置与安装 | 连接器坚固性 |
GPIB | 1.8(488.1) | 30 | 20 | 良好 | 最佳 |
USB | 60(高速) | 1.000(USB) 125(高速) | 5 | 最佳 | 良好 |
以太网/LAN | 12.5(快速) 125(Gigabit) | 1000(快速) 1000 (Gigabit) | 100 | 良好 | 良好 |
PIC | 132 | 1.7 | 内部PC 总线 | 良好 | 较好 |
表 2-1 总线选择指南
2.3 虚拟仪器开发平台LabVIEW
2.3.1 LabVIEW概述
软件系统对于虚拟仪器技术实现来说至关重要,它主要用于实现对数据的读取、分析处理、显示以及对硬件的控制等功能,使用正确的软件工具并通过设计或者利用相应的程序模块,设计者可以设计出直观的人机交互界面。
虚拟仪器应用程序的开发平台的类型有很多,就目前的情况来说,可以分为两大类,一类是文本式的编程语言,如Visual C ,另一类是图形化的编程语言。但是目前比较流行的功能相对强大的就是美国国家仪器(National Instruments,NI)所开发的图形化的编程软件LabVIEW(Laboratory Virtual Instruments Engineering Workbench)。如今LabVIEW已经被广泛的应用于航空航天、电力电子、半导体、生物医学等众多科学领域,具有了越来越大的影响力。通过仪器驱动和连接软硬件,LabVIEW能实现对第三方仪器灵活有效的控制。
总的来说,LabVIEW具有以下几个方面的优点:
- 高速的开发效率
图形化的编程语言,使得工程师可以边去繁琐的编写文本形式的代码,可以创建图形化的用户界面并且进行程序的编写。工程师不必担心低级编程语法错误的发生,而是能够专注地解决问题,这就大大加快了测量系统的开发速度。
测量的虚拟仪器图形化系统设计方法提供了完全覆盖的采集、分析、报告、和显示功能。与此同时,虚拟仪器提供了成千上万的内置信号处理和分析功能,使用者可以立即使用内联处理测量数据。
- 稳定的连接
NI为GPIB提供了高度可靠地硬件连接产品以及标准的接口,可以通过USB、以太网、串口、LXI简化了仪器的通信和控制。
- 灵活性和扩展性
LabVIEW支持多平台运行,它所生成的源程序具有可移植性,编译产生的可执行程序可以再Windows、OS、Linux等多个平台上运行。它的编程环境更为开放,提供了与动态链接库(DDL)、动态数据交换(DDE)、ActiveX等的开放式链接。第三方厂商提供可大量的外部代码和仪器驱动程序,使用者可以更轻松地使用软件进行程序的编写。
2.3.2 LabVIEW程序的基本构成
在LabVIEW中开发的应用都被称为虚拟仪器,也就是我们常说的VI(Virtual Instruments),所有的VI都由前面板,程序框图和操作选板这三个部分组成。
- 前面板
前面板是图形用户界面,是进行虚拟仪器设计的平台。这就相当于传统仪器的面板,在这个界面上有交互式的输入控件和输出控件。输入控件有开关、旋钮、按钮、转盘等;输出控件值得是指示灯、波形图等。输入控件通过模拟仪器的输入来向VI的程序框图提供数据信息,而输出控件则是接收程序框图输出的数据并模拟仪器的形式来显示数据。
图2-2 LabVIEW前面板
- 程序框图
程序框图则是操纵和控制前面板的输入和输出功能的编程平台,是VI程序的图形化源代码,它采用的是图形化的编程,就相当于传统仪器仪器箱内的各类功能部件。前面板上的输入控件获得了用户所输入的信息之后,通过程序框图的运行,即计算机的处理和计算之后,再通过输出控件从前面板上呈现出来。程序框图一般由端点、节点、连线、结构等四类元素所构成。
图2-3 LabVIEW程序框图
- 操作选板
操作选板一般由控件选板、函数选板、工具选板三个部分构成。
控件选板在前面板显示,它是进行界面设计的模块工具,用于给前面板添加各种输入控件和输出控件,涵盖了前面板设计的全部对象元素,包括了数值的控制和显示,逻辑值的控制和显示等。
函数选板在程序框图中显示,它是程序框图设计的模块工具,涵盖了创建程序框图所需要的函数对象,包括程序控制结构命令,各种常用的数值运算、数制转换、三角函数等。
图 2‑4 LabVIEW控件面板
3.仪器综述
3.1锁相放大器
3.1.1锁相放大器技术综述
锁相放大器是一种可以对交变信号就行相敏检测的放大器,对于强度非常微弱的信号,利用与之相同频率和相位关系的参考信号为基准进行比对,检测出与被检测的信号具有相同频率(或者倍频)、相同相位的信号。所以,它能够检测出来一些无用的信号,从而大幅度地提高了检测的信噪比。通常,锁相放大器的检测灵敏的很高。它的主要优点为“窄的频宽”,可以将电路特定的频率与相位筛选出来,并且过滤掉杂讯,从而可准确量得讯号。
上世纪90年代,美国EGamp;G PARC公司研制出来世界上第一台锁相放大器(Lock-in
Amplifier,简称LIA),这使得微弱信号的检测技术得到了突破性的进步。早期的LIA由模拟电路来实现的,随着科技的发展进步,数字电路技术被应用在新一代的LIA中,可以实现由计算机进行控制、监视、以及显示的功能,但是其相敏检波器仍然采用了模拟电路技术,本质上和模拟锁相放大器没有区别。知道后来,相敏检波器或者是调节器一类的部件采用了数字信号技术之后,就出现了现在的数字锁相放大器。
锁相放大器主要是以相干检测技术为基础的,通过利用参考信号频率和输入信号频率之间的相关,和噪声信号的不相关关系,从而可以在噪声信号中提取对测量有用的信号。它的核心部件叫做相敏检波器(phase sensitive detector),下图为锁相放大器的原理框图。
前置放大
Vr
Vi
Vo
图3‑1 锁相放大器原理图
相敏检测器室友乘法器和积分器两个部分构成的,其中乘法器一般采用开关乘法器,而积分器则通常采用低通滤波器,下图是相敏检测器的构成原理图。
参考信号
VR
VO
VS1
待测信号
待测信号
剩余内容已隐藏,请支付后下载全文,论文总字数:21863字
该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;