可以在CompactRIO控制器上通过NI-VISA来控制USB设备吗?



主要软件:
主要软件版本: 3.4
主要软件修正版本: N/A
次要软件: N/A
硬件: CompactRIO>>Chassis (Backplanes)>>cRIO-9074

问题: 我的 CompactRIO控制器上有USB接口,想要通过NI-VISA来控制USB设备,可以实现吗?

解答:

当CompactRIO控制器运行在VxWorks实时操作系统上时,你是可以在CompactRIO上使用NI-VISA进行仪器控制的。使用装有VxWorks的LabVIEW实时系统,我们可以通过VISA控制任何USB设备,即使这个设备没有安装任何操作系统的驱动。也就是说,如果你将任何USB设备插入你的系统,系统就可以探测到它并为它分配一个VISA源。通过以上的操作,就可以利用VISA的API函数和设备进行通信了。

我们有两种USB设备:USBTMC (USB Test & Measurement Class) 和USB RAW。如果一个USB设备支持USBTMC协议的话,那么我们将它视为USB Test & Measurement类,否则就将其归入USB RAW类。如果一个USB设备是USB Test & Measurement类,那么与它的通信方式与与GPIB通信类似;如果一个USB设备是USB RAW类,我们也可以通过VISA与其通信,但是需要知道更多关于设备的信息。

对于任何USB设备,我们有四种方式与其通信:数据块传输(Bulk)、控制传输(Control),中断传输(Interrupt)以及等时传输(Isochronous)。但是NI-VISA只支持前面三种方式。在National Instruments的范例查找器中(National Instruments Example Finder),我们可以找到使用USB RAW协议的以上三种通信方式的范例。每一个范例解释了上面对应的三种通信方式中的一种。

注意到,仪器的控制本质上是非确定性的,所以LabVIEW的实时系统是不适合此类通信的。在附件文档( KnowledgeBase 33N9JUMW: How Can I Use GPIB Instruments in My LabVIEW Real-Time Application?)中,将给出使用GPIB设备通信的概念。这些概念与USB的一致。



相关链接: KnowledgeBase 2QDASEPG: Supported NI-VISA Operating Systems and Features
KnowledgeBase 4LRA4IQ0: What Operating System is my Real-Time Controller Running and Why?
KnowledgeBase 33N9JUMW: How Can I Use GPIB Instruments in My LabVIEW Real-Time Application?

附件:





报告日期: 02/19/2010
最近更新: 09/13/2011
文档编号: 56IE7IN8