Control del bus GPIB -- Controlador del sistema vs. Controlador a Cargo



Software Primario:
Versión de Software Primario: 2.2
Versión de Software Primario Corregido: N/A
Software Secundario: N/A

Problema: Tengo instrumentos múltiples en el bus GPIB con capacidad de tomar control del bus. Necesito escribir un programa que se comunique con cualquier instrumento del bus, incluyendo a los instrumentos controladores, luego pasar control a algún otro instrumento para que este pueda controlar al resto de los instrumentos. ¿Cómo puedo lograr esto?

Solución: En primer lugar, es bueno establecer la terminología apropiada:

Para muchas aplicaciones, la tarjeta GPIB en la computadora cumple las tareas de SC y CIC. Sin embargo, Si tiene un instrumento con la capacidad de controlar el bus, puede resultar útil pasarle el CIC a este dispositivo. Esto se logra a través de varios métodos, siendo el más común usar la función "ibpct" (NI-488) o "PassControl" (NI-488.2). Vea el manual de referencia de 488.2 para detalles sobre estas funciones.

La pregunta es -- Ahora que el instrumento es CIC y controla a los demas instrumentos del bus GPIB, ¿cómo puede la tarjeta GPIB recuperar el CIC para continuar con la ejecución del programa? Esto se puede lograr de dos maneras.
  1. El instrumento controlador tiene conoce la dirección del SC, del comando "ibpct" y es lo suficientemente amable como para ceder el control del bus una vez que ha terminado su operación. Usualmente este no es el caso, lo que lleva a la segunda opción.

  2. Uno de los beneficios principales del SC es que es el único dispositivo capaz de tomar control del bus, sin que otro instrumento se lo ceda, de esta manera pasando a ser CIC. Los comandos "ibsic" (NI-488) o "SendIFC" (NI-488.2) cumplen con esta tarea. Estas funciones limpian el bus, toma el control de cualquier instrumento del bus y lo retorna al SC. Al usar este método, su programa debe tener un estimado de cuanto tiempo el instrumento va a necesitar el control del bus. De esta manera, se puede establecer un tiempo de espera antes de enviar el comando y permitir al instrumento finalizar su tarea.


Ligas Relacionadas: Developer Zone Example: Using a C Program as a GPIB Non-Controller with LabVIEW as the GPIB Controller
Developer Zone Example: How to Use LabVIEW as a GPIB Instrument (Non-controller)


Archivos Adjuntos:





Día del Reporte: 07/26/2002
Última Actualización: 11/15/2007
Identificación del Documento: 2G675LEW