基于LabVIEW的USB实时数据采集处理系统的实现.pdf
穷则独善其身,达则兼善天下。——《孟子》
基于LabVIEW的USB实时数据采集处理系统的实现
通用串行总线USB(UNIversalSerialBus)作为一种新型的数据通信接口在越
来越广阔的领域得到应用。而基于USB接口的数据采集卡与传统的PCI卡及ISA
卡相比具有即插即用、热插拔、传输速度快、通用性强、易扩展和性价比高等优
点。
USB的应用程序一般用VisualC++编写,较为复杂,LabVIEW语言是一种基于图
形程序的编程语言,内含丰富的数据采集、数据信号分析分析以及控制等子程序,
用户利用创建和调用子程序的方法编写程序,使创建的程序模块化,易于调试、理
解和维护,而且程序编程简单、直观。因此它特别适用于数据采集处理系统。利
用它编制USB应用程序,把LabVIEW语言和USB总线紧密结合起来的数据采集
系统将集成两者的优点。USB总线可以实现对外部数据实时高速的采集,把采集
的数据传送到主机后再通过LabVIEW的功能模块顺利实现数据显示、分析和存
储。
1、USB及其在数据采集设备中的应用
USB自1995年在Comdex上亮相以来,已广泛地为各PC厂家所支持。现在生产
的PC几乎都配置了USB接口,Microsoft的Windows98、NT以及MacOS、Linux
等流行操作系统都增加对USB的支持。USB具有速度快、设备安装和配置容易、
易于扩展、能够采用总线供电、使用灵活等主要优点,应用越来越广泛。
一个实用的USB数据采集系统硬件一般包括微控制器、USB通信接口以及根据
系统需要添加的A/D转换器和EPROM、SRAM等。为了扩展其用途,还可以加
上多路模拟开关和数字I/O端口。系统的A/D、数字I/O的设计可沿用传统的设
计方法,根据采集的精度、速率、通道数等诸元素选择合适的芯片,设计时应充分
注意抗干扰性,尤其对A/D采集更是如此。在微控制器和USB接口的选择上有两
种方式:一种是采用普通单片机加上专用的USB通信芯片;另一种是采用具备
USB通信功能的单片机。USB的另一大优点是可以总线供电,在数据采集设备中
穷则独善其身,达则兼善天下。——《孟子》
耗电量通道不大,因此可以设计成总线供电。
一个USB设备的软件一般包括主机的驱动程序、应用程序和写进ROM里面的
Firmware。Windows98提供了多种USB设备的驱动程序,但还没有一种专门针对
数据采集系统,所以必须针对特定的设备编制驱动程序。尽管系统已经提供了很
多标准接口函数,但编制驱动程序仍然是USB开发中最困难的一件事。通常采用
WindowsDDK实现,但现在有许多第三方软件厂商提供了各种各样的生成工具,
如Compuware的DriverWorks、BlueWaters的DriverWizard等软件能够轻易
地生成高质量的USB驱动程序。单片机程序的编制也同样困难,而且没有任何一
家厂商提供了自动生成的工具。编制一个稳定、完善的单片机程序直接关系到设
备性能,必须给予充分的重视。以上两个程序是开发者所关心的,而用户却不太关
心。用户关心的是如何高效地通过鼠标操作设备,如何处理和分析采集进来的大
量数据。因此还必须有高质量的用户软件。用户软件必须有友好的界面、强大的
数据分析和处理能力以及提供给用户进行再开发的接口。
2、LabVIEW及其外部动态链接库的调用
LabVIEW是美国国家仪器(NI)公司开发的一种基于图形程序的虚拟仪表编程语
言,其在测试与测量、数据采集、仪