基于LabWindows/CVI的双通道数据采集系统
摘要介绍了使用Labwindows/CVI和DAQ/PXI-2005数据采集卡搭建的数据测量系统。通过传感器将所测特征信号变为电信号传输,再用数据采集卡采集传送给处理器,用LabWindow/CVI搭建数据处理和显示的人机交互界面,实现对物体特征的测量。该系统可以实时显示所测物体特征,修改数据采集时的各项参数,显示采集到数据的波形,存储、调用采集到的数据。
关键词LabWindows/CVI;数据采集卡;人机交互界面;数据存储
物体的特征有多种,如温度、压力、流量、液位等,本文以温度为例。通过获知部分特征,可以确定其当前状况。因此特征的获知尤为重要。通常用专业的仪器测量这些信号,所需仪器较昂贵。虚拟仪器利用高性能的模块化硬件,加上高效灵活的软件完成测试。目前国内、国际虚拟仪器市场,主要采用LabView软件,但LabView作为一款图形化的开发工具,不够灵活。因此NI公司推出了面向测控领域的LabWindo ws/CVI软件开发平台,这款测量软件将控件和编程结合在一起,灵活高效。
1 总体架构
首先通过传感器测量物体的特征,以温度为例,将模拟温度信号转换为相应大小的电压信号,对电压信号进行调理放大并去噪,然后通过数据采集卡对电压信号进行采集,实现A/D转换,处理所采信号,将之转变为相应的温度信号加以显示,如图1所示。
1.1 硬件方面
处理器用PXI-8106。PXI-8106是2.16 GHzIntelCore2 Duo双核处理器。PXI-8106插在PXI机箱的0号插槽上,通过机箱上的高速PXI总线与插在1号插槽上的PXI数据采集卡相连接。LabWindows/CVI与NI的数据采集卡配套使用灵活方便,但考虑到成本,选用了凌华公司的PXI-2005数据采集卡。其是一款4通道16位并行多功能数据采集卡,最高采样速率为500 ksample/s,满足项目需要。
1.2 软件方面
使用NI公司的LnbWindows/CVI编写上位机界面,对采集到的数据进行处理和显示。
LabWindows/CVI是NI公司推出的面向计算机测控领域的虚拟仪器软件开发平台,能够在多操作系统下运行。LabWindows/CVI将用于测控的专业工具与C语言平台结合,利用测控专业工具的集成化开发环境、交互式编程方法、函数面板和丰富的库函数大幅增强了C语言的功能,为开发设计人员编写检测系统、数据采集系统、过程监控系统等应用软件提供了一个理想的软件开发环境。
LabWindows/CVI适用于测试盒测量的ANSI C开发环境,提高了生产效率,广泛用于制造测试、军事/航天、通讯、设计验证和汽车工业等领域。
2 测量系统
测量系统首先要驱动数据采集卡,对数据进行采集,并进行数据处理,最后将处理结果显示到界面上。
2.1 数据采集卡的驱动
在驱动数据采集的过程如下:数据采集卡首先要经过硬件初始化,这个过程多数由生产商提供的驱动程序完成。初始化完成以后,在工程内加入D2K-Dask.lih,就可使用生产商提供的软件操作语句对数据采集卡进行控制。
数据采集卡的硬件驱动一般由硬件生产厂家提供的驱动完成。硬件生产厂家会提供函数库以供使用该数据采集卡。
2.1.1 PXI-2005编程所用主要函数
(1)D2K_Register_Card。
该函数用于初始化凌华的板卡,函数原型为:D2K_Register_Card(U16 CardType,U16card_num)。
CardType是板卡类型,如使用PXI-2005即添DAQ_2005;card_num为板卡所插插槽,只用一块板卡就添0,有两块板卡则用0、1区分开。
(2)D2K_AI_ContBufferSetup。
为连续采集数据分配内存,函数原型为:D2K_AI_ContBufferSetup(U16 CardNumber,void*Buffer,U32 ReadCount,U16*BufferId)。
CardNumber是所操作板卡的ID;*Buffer即分配内存的名称;ReadCount为所需内存的大小;*BufferId是分配好内存返回的序列。
(3)D2K_AI_ContSeanChannels。
开始连续的A/D转换,函数原型为:D2K_AI_ContScanChannels(U16 CardNumber,U16 Channel,U16Build,U32 ReadScans,U32 ScanIntrv,U32 SampIntrv,U16 SyneMode)。
Channel为使用的最多的通道数,如PXI-2005可以使用0,1,2,3这4个通道;BufId为数据存放的内存位置;ReadScans为每通道采样数;最大扫描速率除以ScanIntrv即为当前扫描速率;SampIntrv为A/D转换最小间隔,最大采样速率除以SampIntrv即为当前采样速率。
(4)D2K_Release_Card。
释放使用中的数据采集卡,函数原型为:D2K_Release_Card(U16 CardNumber)。
2.1.2 PXI-2005数据采集卡驱动实例
驱动凌华PXI-2005数据采集卡,进行4通道、采样速率为500 kHz、每通道采样点数为60 000的采样。
2.2 软件整体设计
软件设计总体框图如图2所示。
LabWindows/CVI由自行选用的插件以及C代码组成,除此之外,系统还配有各类丰富的软件包,从而更方便地构建软件系统,界面如图3所示。
LabWindows CVI 双通道 数据采集系统 相关文章:
- 用于雷达测试和验证的自动化测试设备(05-15)
- 基于LabWindows的录波分析仪的设计(03-01)
- LabWindows/CVI虚拟仪器设计技术基本控件使用之: Tab 控件(11-13)
- LabWindows/CVI虚拟仪器设计技术场景与游戏设计之:时钟制作(11-13)
- LabWindows/CVI虚拟仪器设计技术场景与游戏设计之: 下雪场景(11-13)
- LabWindows/CVI虚拟仪器设计技术基本控件使用之:回调函数(11-13)