基于USB 和LabVIEW 的虚拟仪器的设计

作者: 车新生,,何永杰,张中祥,   发布日期:2006-06-26 15:49   查看数:0
中文摘要:

  虚拟仪器和USB 的接口技术在仪器研发领域受到了密切关注. 数据采集及控制的智能外 设采用USB 接口改善了其瓶颈现象,也加强了它与通用计算机的“亲和力”. 普通的MCS251 单片机没有USB 接口,作为虚拟仪器应用软件开发平台之一的LabVIEW也没有提供USB 接口的驱动程序. 为此,介绍了基于USBLabVIEW的虚拟仪器的设计原理以及USB 开发的方法,提出一种开发简单的设计方案. 阐述了利用FT245BM 进行USB 开发的过程,给出FT245BM 与AVR 单片机AT90S1200 接口的电路图和编写的程序. 介绍了安装两种不同驱动时编写LabVIEW应用程序的方法,并给出编写的LabVIEW应用程序,经过调试,给出测试结果.

英文摘要:

  The technology of virtual inst rument and USB interface has been paid special attention in instrument design and development . The intellectual peripheral which adopting USB interface for data acquisition and control improves the bottleneck phenomenon of the communication , and strengthens ″affinity″of it with general computer too. General single-chip microcomputer MCS251 provides no USB interface. As an application software development platform of virtual inst rument ,LabVIEW also doesn′t offer USB driver of interface too. This paper int roduces the design principle of virtual inst rument s based on USB and LabVIEW briefly. A kind of simple and feasible scheme are put forward , the course of utilizing FT245BM to develop USB is explained ,circuit diagram of the interface between FT245BM and AVR single-chip AT90S1200 are given ,and program is offered. The approach to program with LabVIEW while installing two kinds of USB drivers are described and the LabVIEW application program is also given. These programs have been debugged ,and the test result s are provided.

NI 公司的LabVIEW 是当前流行的图形化 开发环境,同时它也是一种功能强大的编程语言 (亦被称为G语言) . 它是一套专为数据采集与仪 器控制、数据分析和数据表达而设计的图形化编 程软件,使创建的程序模块化,易于调试、理解和 维护,而且程序编程简单、直观. 因此它特别适用 于数据采集处理系统. 而USB 总线[4 ,10 ]以其使用 方便、传输速度快、即插即用、通用性强、扩展性好 和性价比高等优点得到广泛的应用. 把LabVIEW 语言和USB 总线紧密结合起来的数据采集系统, 将集成两者的优点. LabVIEW软件本身免费提供RS232 、GPIB、 VXI 等总线的驱动程序,却并不提供USB 驱动程 序. 对于自己制作的USB 接口采集系统,一般认 为必须编制上位机USB 驱动程序;也可不写USB 驱动程序,利用虚拟端口技术完成[5~8 ] . 本文介绍 了几种设计方案,就一种简单、易行的方法进行了设计.
1  设计原理
     虚拟仪器由计算机、仪器硬件和应用软件组 成. 从构成方式讲,有多种方式,主要取决于系统 所采用的接口硬件:有以信号调理电路和数据采 集卡为硬件组成的插卡式虚拟仪器,有以各种标 准总线仪器为硬件组成的虚拟仪器系统. 设计基于USB 总线的数据采集硬件时,USB 与单片机接口可以采用带USB 接口的单片机 (如: EZ2USB) 或采用USB 接口控制芯片(如: PDIUSBD12) . 要实现LabVIEW应用程序与基于 USB 总线的仪器的通讯,上位机需要添加USB 驱动程序,LabVIEW通过调用动态链接库的方式 来与下位机进行数据交互. 对于USB 驱动程序, 可以自行研发,也可采用虚拟端口技术,利用芯片 厂家提供的驱动程序. 其中利用虚拟端口技术的 USB 控制芯片进行USB 通讯的开发过程最为简单,本文将详述.
212  FT245BM的硬件设计及软件编程
     FT245BM 的8 根数据线D0~D7 及读写控 制线(WR、RD、TXE 和RXF) 与AVR 单片机 AT90S1200 的连接如图2 所示. FT245BM 的外围电路,AT90S1200 工作在零“外 围”的情况下,即:使用片内RC 振荡器1 MHz ,外 部无复位电路. FT245BM 发送和接收时序如下.  FT245BM 发送时序如图3 所示,当单片机 检测到TXE 为低时,表示FT245BM 内部发送缓 冲区允许发送数据到USB 端口,可以将数据通过 八位数据总线发给FT245BM. TXE 为高时,禁止 发送数据.  FT245BM 接收时序如图4 所示,当单片机 检测到RXF 为低时,表示FT245BM 内部发送缓 冲区有来自USB 端口的数据,可以通过数据通过 八位数据总线接收数据.
4  结 论
     通过上述方法成功实现了LabVIEWUSB 接口的硬件数据采集部分的数据交换,从而实现 了以LabVIEW 为应用程序的USB 实时采集处 理系统,通过编制应用软件组建自己的虚拟仪器. 采用这种USB 开发方式的好处还在于,一方面可 保护原有的软件开发投入,并使已开发成功的针 对RS2232 外设的应用软件不加修改可继续使用; 另一方面充分利用了USB 总线的高传输速率和 即插即用的特性.