基于LabVIEW的多功能信号采集与多通道定时计数器/触发器的设计
摘要:随着虚拟仪器计数的发展,软件即设备的思想已然成为科研仪器设备需求的发展趋势。文中利用现有硬件平台,给出了一个基于LabVIEW的虚拟仪器的设计与实现方法。该虚拟仪器不仅可实现多达24路以上通道的同步、异步精确计数功能,还可用于完成可控交互的定时触发和信号采集,同时能对试验数据进行存储、显示和回放。试验证明,结合设备软件化理念和虚拟仪器的实现,该方法可大幅提高现有设备的利用率,节约科研成本。
关键词:信号采集;LabVIEW;LabvIEW RT;虚拟仪器
0 引言
随着电子技术、计算机技术、网络技术等的快速发展,虚拟仪器(Virtual Instrument,VI)技术已得到了广泛应用。
LabVIEW和C、DELPHI等一样,是一种程序开发环境,但其最大的区别在于使用了图形化的编程语言(G语言)。LabVIEW可以依托高性能设备,实现高精度的测量控制,并可根据需求快速实现设备的软件化、虚拟化,以满足多种多样的应用需求。
设备的软件化、虚拟化已经成为现代测控的发展方向。它不仅可以提高设计和开发效率,同时还可以大大节省硬件投入成本,提升已有硬件资源的利用率。因此,本文提出了基于LabVIEW的虚拟仪器设计与实现。
1 系统设计思想
为了更好地应用扩展性,提高系统采集和执行精度,系统设计采用了上、下位机的机构。
上位机采用普通PC机或通用工控机,预装Windows XP操作系统,主要运行虚拟仪器的人机交互界面。
下位机预装LabVIEW RT系统,运行测量与控制程序。其硬件组成主要有PXI-1045机箱、PXI-8108控制器、PXI-6608板卡、PXI-6229板卡,以及外部硬件信号条例模块。
系统总体设计框图如图1所示。
系统的实现主要包括硬件和软件两部分,主要工作流程如图2所示。
2.1 硬件的组成及工作原理
硬件系统主要由普通PC机或工控机、PXI机箱及匹配的控制器、板卡,以及外部信号调理模块组成。
硬件系统的工作原理比较直观,通过信号调理模块,将信号源转换为板卡可接入的标准信号,通过对板卡工作模式的设定,来完成同步、异步的定时器计数、触发和数据采集工作。
2.2 软件的组成及设计
软件系统采用上、下位机结构。其中,上位机软件开发采用的是Windowrs XP操作系统平台和LabVIEW软件开发平台。下位机软件则基于LabVIEW RT操作系统平台和LabVIEW软件开发平台进行开发。系统对数据的采集应用了两种不同的通信编程方法。对于试后数据采集的应用,例如定时器高速计数方式,采用了共享变量方法;对于过程数据的采集,使用了基于TCP/IP的通讯编程。
2.2.1 上位软件
上位软件主要完成人机交互功能,对虚拟仪器进行配置与使用,同时对试验数据进行显示、保存及回放等操作,其上位软件的主界面如图3所示。
软件在首次使用或有硬件配置更改的情况下,需要对硬件进行资源配置、使用配置、初始化操作。例如定时计数器的使用配置,如图4所示。
2.2.2 下位软件
下位软件负责按照上位软件对各板卡的配置和模式设定情况进行初始化,并根据上位软件启动、停止等指令执行相应的数据采集和定时器计数与触发工作。
结合实际应用验证,模拟信号量的检测和采集使用Queuce数据结构,可以保证程序运行中小会出现丢失或复制数据的现象,但对于定时计数板卡PXI-6608的应用方式,将直接导致多路定时计数采集的成败。
对于PXI-6608板卡的应用,在多种计数模式中,“CI两个边沿的间隔”方式比较特殊,且在用于多个定时计数器(具体个数取决于PXI-6608板卡的使用个数及每块板卡选用的定时计数器数量)同步采集时,根据使用方法的不同,会导致不同的结果。因此,在该虚拟仪器的设计过程中,主要讲述“CI两个边沿的间隔”方式的两种使用方法和特点,以及DI/O使用中值得注意的问题。
2.2.2.1 “CI两个边沿的间隔”方式计数的实现方法及其对比
第一种使用方法是采用计数器单采样方式,其配置和使用方法如图5所示,图中的常量参数可根据实际使用进行修改。
该方法的特点如下:
(1)配置和使用简单,在进行数量较少且为单点计数时,可以采用该方法,但通道传输方式的设置在该方法下将不起作用。
(2)对每个定时计数器只能采集一个时间,且可同时采集的数量与板卡和选用的定时器组合方式有关。例如同时对3块PXI-6608板卡的24个定时计数器进行并行采集时,能成功采集的定时器数量不会超过12个;
(3)在进行多路定时计数器的采集过程中,若同步采集的定时器中有任何一个产生超时错误,则将导致其后的所有采集任务全部超时。
第二种使用方法是采用计数器多采样方式,其配置和使用方法如图6所示,图中的常量参数可根据实际使用进行修改。
- 基于LabVIEW RT的自定义流程测控系统(10-30)
- 基于LabVIEW的语音分析平台的实现(10-30)
- 基于示波器卡和LabVIEW的马达编码器测试系统(11-06)
- 基于虚拟仪器的网络虚拟实验室构建(11-06)
- 运用LabView控制DS3900串口通信模块(02-02)
- 采用模块化仪器,对新兴音频和视频应用进行测试(02-19)