¿Es Posible Controlar un Dispositivo USB con NI-VISA desde un Controlador Real-Time?



Software Primario:
Versión de Software Primario: 3.4
Versión de Software Primario Corregido: N/A
Software Secundario: N/A
Hardware: CompactRIO>>Chassis (Backplanes)>>cRIO-9074

Problema:
Tengo un controlador Real-Time con puertos USB y me gustaría usar NI-VISA para controlar un dispositivo conectado a uno de estos puertos ¿Es esto posible?

Solución:
Sí, es posible utilizar NI-VISA para el control de un instrumento desde el dispositivo Real-Time. Cualquier dispositivo USB que no tiene un driver asociado en el Sistema Operativo es asignado a VISA por defecto. Esto significa que si se conecta cualquier dispositivo USB en el sistema, este debería tener un recurso de VISA. A partir de ahí, es posible utilizar los VIs de VISA para comunicarse con el dispositivo.

Existen dos tipos de intrumentos USB: USBTMC (acrónimo de USB Test & Measurement Class) y USB RAW. El instrumento debe tener soporte para el protocolo USBTMC para ser considerado dentro de la clase USB Test & Measurement, de otro modo estará clasificado dentro de la categoría de USB RAW. Si el dispositivo es clasificado como USBTMC, actúa exactamente como un instrumento GPIB. Si un instrumento es USBRAW aún es posible utilizar VISA pero se requerirá información extra en cómo se comunica este instrumento en específico.

Para cualquier instrumento USB, existen cuatro modos diferentes de comunicación o transferencias: Masivo (Bulk), Control, Interrupción e Isócrono. Sin embargo, el driver NI-VISA solo soporta los modos Masivo, Control e Interrupción. En el buscador de ejemplos de LabVIEW, existen tres ejemplos del uso de USBRAW cada uno explicando uno de los modos de comunicación específico que soporta.

Debe recordarse que controlar un instrumento de este tipo es inherentemente no determinístico por lo que  LabVIEW Real-Time  no es usualmente utilizado para este tipo de comunicación. En el documento adjunto, KnowledgeBase 33N9JUMW: How Can I Use GPIB Instruments in My LabVIEW Real-Time Application? (En Inglés) se describen los conceptos para una comunicación con un instrumento GPIB y también son aplicables para USB.

Nota: Esta funcionalidad está disponible para todos los controladores corriendo el sistema operativo Real-Time VxWorks.

Si se está utilizando un controlador corriendo Phar Lap, se debe utilizar el módulo de LabVIEW Real-Time 2011 o alguno posterior con NI-VISA 5.1 o alguna versión posterior para obtener esta funcionalidad. Dispositivos conectados a un cRIO-901x o cFP-2220 podrían no ser automáticamente enumerados. Si este es el caso, conecte estos dispositivos a través de un hub USB.
Si está utilizando un controlador que corre LinuxRT consulte el documento Knowledgebase 6BG9IUGW: USB Device not Recognized by NI-VISA on LinuxRT Target (En Inglés).



Ligas Relacionadas:
KnowledgeBase 2QDASEPG: What NI-VISA Features are Supported on my Operating System? (En Inglés)
KnowledgeBase 33N9JUMW: How Can I Use GPIB Instruments in My LabVIEW Real-Time Application? (En Inglés)
KnowledgeBase 4LRA4IQO: ¿Qué Sistema Operativo Tiene Mi Controlador en Tiempo Real y Por Qué?
Knowledgebase 6BG9IUGW: USB Device not Recognized by NI-VISA on LinuxRT Target (En Inglés)


Archivos Adjuntos:





Día del Reporte: 02/05/2015
Última Actualización: 03/04/2015
Identificación del Documento: 56IE7IN8