7. Comprobación de errores del instrumento

La comprobación de errores del instrumento (en adelante se denominará simplemente comprobación de errores) es el segundo aspecto más importante de una aplicación de control remoto. El objetivo de la comprobación de errores consiste en asegurar la comunicación libre de fallos con su instrumento, es decir, que se hayan ejecutado todos los ajustes correctamente y los resultados de medida obtenidos se hayan adquirido utilizando los ajustes deseados.

Una parte del subsistema de estado del instrumento es un búfer de mensajes de error, denominado cola de errores(Error Queue). Si envía, por ejemplo, un comando SCPI que el instrumento no reconoce, este genera una nueva entrada en la cola de errores. La cola de errores tiene una longitud finita, por lo general 10 entradas, y la entrada más antigua se sobrescribe con la siguiente nueva.

Como se ha explicado en el apartado Sincronización de medida, el byte de estadocontiene un bit 2 - Error Message Available(mensaje de error disponible). Para comprobar si la cola de errores está vacía, consulte el bit *STB? 2. Si su valor es 0, puede proseguir sin realizar más acciones. De lo contrario, utilice la consulta SCPI SYSTem:ERRor?. El instrumento devuelve el último error generado, p. ej. -113,«Undefined Header». Al mismo tiempo, esta entrada se borra de la cola de errores. Para leer todas las entradas debe solicitar SYSTem:ERRor? en un bucle hasta que reciba la respuesta 0,”No Error”que indica que no hay más errores pendientes.

El siguiente extracto de VISA muestra la comprobación de errores en curso:

  • El primer comando *RSTse ha enviado correctamente, y por consiguiente no se genera ningún error.
  • El segundo comando *RSaTestá mal escrito, lo que genera un error -113, "Undefined Header". Se envía la consulta SYST:ERR? en bucle hasta que la respuesta es 0,"No Error"
Registro RsVisaTraceTool con comprobación de errores
Registro RsVisaTraceTool con comprobación de errores
Abrir Lightbox

Si se utilizan drivers de instrumento, la comprobación de errores ya está implementada y se ejecuta con cada función así como después de establecer cada propiedad (atributo). Esto resulta muy cómodo, ya que el usuario es informado inmediatamente del error que ha ocurrido y después de qué comando se ha producido. Si se necesita la máxima velocidad, en los drivers existe la posibilidad de desactivar esta función (véase el primer consejo en el siguiente Apartado 8: Optimización de la velocidad).

Si utiliza comandos SCPI directos, el propio usuario debe ocuparse de la comprobación de errores. Es recomendable ejecutar la comprobación de errores después de un bloque lógico de comandos. En este caso debe tenerse en cuenta que, cuantos más comandos se envíen en un bloque, más difícil será localizar el comando específico que ha generado el error.

Tomemos el ejemplo del anterior Apartado 6: Sincronización de mediday concentrémonos solamente en las acciones del PC. En los ejemplos vinculados en ese apartado mostramos la implementación práctica de la comprobación de errores. La imagen de abajo muestra la comprobación de errores ejecutada después de bloques lógicos de comandos:

Request information

Do you have questions or need additional information? Simply fill out this form and we will get right back to you.

Permiso de marketing

Se ha enviado su solicitud. Nos pondremos en contacto con usted lo antes posible.
An error is occurred, please try it again later.