SciELO - Scientific Electronic Library Online

 
 issue71Noise detection in semi-supervised learning with the use of data streamsTransition from a predictive multiple linear regression model to an explanatory simple nonlinear regression model with higher level of prediction: A systems dynamics approach author indexsubject indexarticles search
Home Pagealphabetic serial listing  

Services on Demand

Journal

Article

Indicators

Related links

  • On index processCited by Google
  • Have no similar articlesSimilars in SciELO
  • On index processSimilars in Google

Share


Revista Facultad de Ingeniería Universidad de Antioquia

Print version ISSN 0120-6230

Rev.fac.ing.univ. Antioquia  no.71 Medellín Apr./June 2014

 

ARTÍCULO ORIGINAL

 

Software para diseño e implementación de observadores de Luenberguer lineal y alta ganancia

 

Software for design and implementation observers of Luenberguer lineal and high gain.

 

 

Norha Ligia Posada Restrepo* , Marisol Osorio Cárdenas, Fabio Castrillón Hernández.

1Grupo Automática y Diseño A+D, Universidad Pontificia Bolivariana. CP. 050031. Medellín, Colombia.

*Autor en correspondencia: teléfono: + 57 + 4 + 448 83 88 ext. 14165, fax: + 57 + 4 + 411 87 79, correo electrónico: norha.posada@upb.edu.co. (N. Posada)

 

(Recibido el 16 de noviembre de 2013. Aceptado el 8 de febrero de 2014)

 

 


Resumen

En este artículo se presentan dos aplicaciones de software, uno para la simulación y diseño, y otro para la implementación de observadores de Luenberguer Lineal y Alta Ganancia. Se muestran las interfaces de cada uno de los programas y se realiza una descripción de las partes que las componen.

Los observadores se diseñan para un sistema de tanques en cascada conectados entre sí por un canal. Se presenta el modelo matemático planteado para la representación del sistema y las modificaciones que se le hacen para asegurar el cumplimiento de las condiciones de diseño que plantea la teoría de los observadores a diseñar. Se hace además, una breve presentación de la teoría de los observadores a diseñar e implementar. Luego, se plantean los aspectos más relevantes para la codificación de los algoritmos utilizados en la simulación, el diseño y la implementación de los observadores. Las aplicaciones se diseñaron en las plataformas Matlab® y LabVIEW®, y los resultados de la implementación se reportaron en un archivo .lvm, el cual puede ser procesado en Matlab® o EXCEL®.

Palabras clave: Observadores, observador de alta ganancia, observador lineal de Luenberguer, sistema de tanques en cascada


Abstract

In this paper we present two software applications, one for simulation and design, and another for implementing Luenberguer Linear and High Gain observers. We show the interfaces and present a complete description of the software.

The observers were designed for a system of tanks in cascade connected by a channel. We present the mathematic model proposed for this system and the changes that we made in it to ensure the compliance of theory design conditions observers. Further, we make a brief presentation over theory design of observers with us work and basic concepts for their implementation. The most relevant aspects for the programming algorithms used for simulation, design and implementation of observers are studied. The software used for platforms design was Matlab® and LabVIEW®, and report of results for implementation was made in a file, .lvm. This kind of file can process with Matlab® or Excel®.

keywords:High gain observer, Luenberguer lineal observer, observers, cascade system of tanks


Introducción

Existen procesos industriales que involucran variables cuyo valor en el tiempo se requiere conocer, pero para las cuales no se han desarrollado sensores, o si los hay tienen un costo muy alto. Una de las soluciones más utilizadas para este caso implica la implementación de observadores, los cuales permiten conocer el valor de las variables de interés a partir del conocimiento del modelo del sistema, sin necesidad de medirlas directamente [1]. El resultado obtenido es casi siempre satisfactorio y permite conocer de forma aproximada el valor real de la variable con un margen de error pequeño [2, 3].

La observación de los estados de un sistema (variables) se hace regularmente por medio de software, a partir del pleno conocimiento mediante medición de las variables de salida y de entrada del sistema a observar. Los sistemas que llevan a cabo la estimación se conocen como observadores y en algunos casos se les llama sotf-sensors, [4]. Son varios los métodos de diseño para observadores que se reportan en la literatura y que dan como resultado una amplia variedad de estructuras de observadores. No cualquier estructura es adecuada para observar los estados de un sistema, pues la que se utilice debe estar en sintonía con las características del sistema. Los observadores que se presentan en este artículo se aplican para un sistema no lineal, invariante en el tiempo y determinístico, consistente en una configuración de tanques en cascada, ubicada en el Laboratorio de Operaciones Unitarias de la Universidad Pontificia Bolivariana (UPB). Por razones de interés académico y comparativo, se decidió trabajar con un observador lineal (Luenberguer) y otro no lineal (Alta Ganancia), [5, 6].

El diseño de observadores de los tipos elegidos implica una gran cantidad de trabajo teórico que se encuentra ampliamente reportado la literatura, [7-12]. Se encuentra también reportado en muchas fuentes el resultado de simulaciones de diseño, e.g. observadores aplicados en manipuladores robóticos [7, 8], observadores en sistemas adaptativos donde se combinan estrategias de observación lineales y no lineales [9], en biorreactores [10], y en sistemas de carros acoplados [11].El paso siguiente es la implementación si los resultados de la simulación son satisfactorios y se cuenta con la planta física o con los elementos para construirla. En la literatura se han encontrado muy pocos casos reportados de implementación de observadores. Un ejemplo es el diseño e implementación de un observador no lineal adaptativo de alta ganancia para procesos de copolimerización en emulsión [12]. El presente artículo, entonces, busca contribuir a la literatura en cuanto a casos de implementación y desarrollo de herramientas para diseñar observadores. El caso tratado reviste interés debido a que existen muchos sistemas industriales con configuraciones similares a la presentada, y pueden hacerse extrapolaciones a otros tipos de sistemas con ecuaciones de estado similares.

En el documento se presenta la descripción del sistema a observar y los observadores Luenberguer y de Alta Ganancia diseñados. Se muestran los aspectos más relevantes del software desarrollado para la simulación e implementación de los observadores diseñados y finalmente se plantean conclusiones.

Descripción del sistema a observar

La planta para la que diseñan, simulan e implementan los observadores tiene propósitos didácticos y se encuentra en el laboratorio de Procesos Unitarios de la Escuela de Ingenierías de la Universidad Pontificia Bolivariana, sede Medellín. En ella se surten laboratorios y prácticas, y se realizan trabajos de grado e investigación con estudiantes de ingeniería Mecánica, Química, Eléctrica, Electrónica y Agroindustrial, así como de posgrado en Automatización y de otras universidades de la región.

La planta consiste en un sistema de tres tanques en cascada no interactuantes. En ella se puede hacer control del nivel en alguno de dos tanques, por medio de la variación del porcentaje de apertura de una válvula neumática abierta en falla (EFC, elemento final de control) que regula el flujo de entrada. El diagrama de tubería e instrumentación de la planta (P&ID, Piping and Instrumentation Diagram) se muestra en la figura 1. En esta figura se puede ver que el sistema recibe la alimentación por el tanque 1 (Tke1). La alimentación se hace por la parte superior a través del EFC y de un rotámetro ubicado a la salida de la misma, donde se puede medir el líquido que entra al sistema proveniente del tanque 3 (Tke3). El líquido se extrae e impulsa por medio de una bomba centrífuga de cabeza constante, por lo que el sistema está exento de fluctuaciones en su alimentación. Para la descarga del líquido de Tke1 al tanque 2 (Tke2) se cuenta con un vertedero con restricción no lineal en serie con un canal abierto, y a la salida de Tke2 se cuenta con otro vertedero de restricción lineal y un canal abierto.

Modelo matemático de la planta

Para obtener el modelo matemático del sistema se planteó, para cada tanque y el canal que los comunica, un balance de masas. Se supuso: densidad contante (fluido incompresible), proceso isotérmico y de parámetros concentrados (la altura en los tanques y canal sólo depende del tiempo y es independiente de la posición) e invariante en el tiempo. En la ecuación (1) se muestra el modelo matemático obtenido.

con salida y=x3 y donde xl, x2, x3 son las alturas del líquido en Tke1, en el canal que comunica los tanques y en Tke2, respectivamente. Al, Ac, A2, son las áreas de los tanques y del canal, nv es la potencia asociada al vertedero con restricción no lineal ubicado a la salida de Tke1, y nC es la potencia asociada al canal que comunica los dos tanques. k1 es la constante del vertedero asociado a Tke1,k2la asociada a Tke2, y kc la correspondiente al canal que comunica los dos tanques.

Para la parametrización y linealización se desplazó el modelo obtenido hasta un punto de operación ubicado dentro de la zona de trabajo y plenamente identificado, lo que se hizo mediante el uso de la variable de desviación, con donde xi es la variable de desviación, es la variable absoluta correspondiente y . es el valor de xi en el punto de operación, [13]. En ecuación (2) se presenta el modelo desplazado.

En el modelo matemático se puede dar el caso en que las potencias fraccionarias sean aplicadas a cantidades negativas durante la simulación, que es una situación irreal (se trata de un sistema en el que todas las variables conservan valores positivos) y puede llevar a que la solución del modelo no converja. Para evitarlo se expresa la altura en el vertedero1 y del canal como se plantea en la ecuación (3).

El modelo matemático del sistema con este cambio se muestra en la ecuación (4)

Una vez obtenido el modelo matemático del sistema se procede al diseño de los observadores implementados en las aplicaciones desarrolladas.

Observadores a implementar

Observador Lineal de Luenberguer (OL)

Éste tipo de observador se puede aplicar a sistemas deterministas, lineales o no, e invariantes en el tiempo. El software que permite implementarlo se diseñó para el modelo linealizado de la planta. Para el diseño de un OL se requiere que el sistema se pueda expresar de la forma planteada en la ecuación (5).

donde es la matriz de estado del sistema a observar, la matriz de inyección de entrada a la planta, la matriz de relación estado-salida, es el vector de las variables de estado, es el vector de las variables de entrada al sistema y es el vector de las variables de salida (medidas) [2].

Para un sistema expresado de esta forma la ecuación del OL de orden completo está dado por la ecuación (6):

donde es el vector de las variables de estado observados, y es el vector de las variables de salida observadas y es la matriz del observador.

Observador de alta ganancia (OAG)

En la ecuación (7): se muestra la forma que debe tener la planta para la cual se diseñan este tipo de observadores.

donde f(x) y h(x) son funciones que describen el comportamiento de los estados y salidas del sistema respetivamente, es el vector de variables de estado del sistema, es el vector de salidas medidas del sistema.

Para el OAG, el sistema debe poderse expresar como se muestra en la ecuación (8):

donde y (y) es una función que reúne las no linealidades de la ecuación (7). Además, las matrices A y C deben ser de la forma canónica de Brunosky, la cual se muestra en la ecuación (9):

Para el sistema descrito por la ecuación (8) el OAG es de la forma que se muestra en la ecuación (10).

donde K es la matriz del observador, es constante y de orden n x p y la matriz A+KC debe ser Hurwitz. La ecuación (8) está conformada por dos partes; una lineal y otra no lineal. Si la parte lineal es observable, el sistema es uniformemente observable, y además, se asegura convergencia exponencial del observador si la parte no lineal es una función globalmente Lipschitz [9]. Si el sistema no tiene la forma requerida, se hace necesario transformar el sistema utilizando un difeomorfismo donde es la k-ésma derivada de Lie de la función h(x) con k = 0,1,..., n - 1.

Para obtener el observador del sistema transformado, se hace uso de la proposición de Besançon [9], que permite expresar el OAG para el sistema como se muestra en la ecuación (11).

θ debe ser positiva y tener un valor alto, entre más alto, más rápia es la convergencia del observador, y la matriz A+KC debe ser Hurwitz [14].

Software para simulación de observadores

El software desarrollado para la simulación de observadores de Luenberguer y de Alta Ganancia se implementó bajo la plataforma Matlab® [15]. El software también permite la simulación de la planta en lazo abierto, la reparametrización de los coeficientes del modelo matemático, el diseño del observador, la simulación del mismo y la evaluación del resultado de la simulación mediante índices de desempeño, que para el caso fueron el error en estado estable, denotado ess (el subíndice por las siglas Stable State), y (coeficiente de correlación).

El software de simulación está conformado por varias interfaces, una principal (ver Figura 2) de donde se derivan las siguientes, que permiten simular y parametrizar el modelo del sistema, diseñar y simular de observadores de Luenberguer lineales y diseñar y simular de observadores de Alta Ganancia.

De cada una de estas se puede acceder a otras interfaces que permiten analizar los índices de desempeño y graficar las señales perturbadoras aplicadas durante la simulación y la entrada al sistema. A continuación se describe cada una de las interfaces mencionadas.

Re-parametrización del modelo matemático del sistema

El software está habilitado para permitir el diseño de los observadores con parámetros preprogramados para las constantes del modelo matemático, pero también permite su re- parametrización. Para hacerlo se creó la interface de parametrización y simulación del sistema.

La simulación es en lazo abierto y se hace para el modelo matemático no lineal y linealizado alrededor de un punto de operación. La re- parametrización se hace asignando valores a las constantes que componen el modelo matemático descrito por la ecuación (1).

Además de estos parámetros se pueden configurar aspectos relacionados con la simulación como:

Punto de operación (%): el software permite seleccionar puntos de operación del sistema de 0 a 100% cada 10%.

Tipo de entrada: se puede seleccionar una entrada de líquido aplicada en forma de escalón, senoidal o combinada. En esta última se aplica al sistema un escalón durante la primera mitad del tiempo de simulación y en el tiempo restante una señal senoidal.

Tiempo de simulación (en segundos): el usuario puede ingresar el tiempo que durará la simulación.

Perturbaciones: el software permite que el usuario adicione señales de perturbación, tipo escalón o senoidal, a las diferentes variables del sistema.

Las diferentes interfaces cuentan además con cuatro botones que tienen las siguientes funciones.

Botón cerrar: cierra la interface de simulación.Botón simular: ejecuta el programa de simulación y presenta los resultados en tres ejes. En el primero se grafica la respuesta de xl y así sucesivamente. La simulación se hace tanto para el sistema no lineal como para el linealizado, el comportamiento de los modelos se presenta en las dos gráficas. Además, habilita los botones Errores y Entradas.

Botón errores: este abre una nueva ventana donde se presenta de forma gráfica el comportamiento del error en el tiempo y los valores de los índices de evaluación para cada variable.

Botón entradas: habilita una ventana en la que se presentan gráficamente el tipo de entrada y las perturbaciones aplicadas al sistema durante la simulación.

Como se mencionó, el sistema se simula con el modelo lineal y no lineal. Para la simulación se utilizó el solucionador ode45 de Matlab®con la configuración que tiene por defecto, es decir, sólo se configuró el tiempo de simulación y las condiciones iniciales del sistema.

Observador de Luenberguer

El diseño de un OL se puede hacer para el sistema con los parámetros programados por defecto o con nuevos parámetros (ver figura 3). Para esto último, el usuario debe ingresar a la interface de Parametrización y simulación del sistema, donde podrá modificar los parámetros del sistema a observar

.Para poder diseñar el observador se debe ingresar el valor de los polos deseados para el cálculo del vector K. El valor que se asigne a los polos debe ser negativo para que asegurar que la matriz A+KC sea Hurwitz y así asegurar convergencia del observador. El cálculo de K se facilitó por medio del uso de la instrucción acker.

Adicionalmente, se deben seleccionar los valores para el punto de operación, el tipo de entrada, las perturbaciones que se tendrán en cuenta para la simulación y el tiempo de simulación. Las gráficas que reportan el resultado de la simulación son del sistema no lineal sin observador y para el sistema observado. Los cálculos de los índices de desempeño se hacen con estas dos respuestas. Como solucionador se utilizó ode45.

Interface de alta ganancia

La interface que permite el diseño y simulación de un OAG se muestra en la Figura 4. Al igual que para el OL, el diseño se puede hacer para el sistema con los parámetros programados por defecto o con nuevos parámetros.

Para el diseño se siguen los mismos pasos que para el diseño del observador. Adicional a esto se requiere ingresar el valor de 6 para calcular la matriz del OAG. En esta interface se cuenta con los mismos elementos para configurar la simulación y acceder a las de error y entradas.

En el diseño del OAG se requiere calcular la inversa del jacobiano del difeomorfismo utilizado para la transformación del sistema. Este cálculo se hizo con variables simbólicas y luego se evaluaron los valores de los estados, para lo que se utilizaron las instrucciones sym y subs. Como solucionador se utilizó ode45.

Software para la implementación de los observadores

El software se implementó bajo las plataformas LabVIEW® para la interfaz y almacenamiento de datos, Matlab® para el procesamiento de los observadores y NIDAQ82 para el manejo de la tarjeta de adquisición de datos (TAD), referencia NI USB 6008, y se utilizan archivos .lvm para reportar el comportamiento de las variables de interés.[16, 17].

Desde la interface de usuario del software se pueden seleccionar el tipo de observador a implementar Luenberguer Lineal (ver Figura 5) o Alta Ganancia (ver Figura 6). La selección se hace activando la respectiva pestaña. Cada una de las figuras 5 y 6 constituye un panel frontal del instrumento virtual, en ellos el usuario puede seleccionar entre dos modos de trabajo: Parámetros preprogramados y parámetros configurables.

En ambos modos se deben configurar la apertura del elemento final de control (EFC), que determina el valor de la entrada al sistema; y la dirección donde el usuario desea almacenar los valores de las variables que se miden y se observan con el fin de poder hacer análisis posteriores. Los datos son almacenados en un archivo de texto en formato .lvm, el cual puede ser interpretado en múltiples plataformas e.g. Matlab®, EXCEL®.

Para cualquiera de los dos modos de trabajo posibles, se cuenta con indicadores gráficos y numéricos que permiten seguir visualmente el comportamiento de las variables que se miden y se observan, así como el error de la observación. Cabe anotar que, dado que este sistema tiene fines didácticos e investigativos, dos de las variables observadas son, además, medidas, con el propósito de que el usuario pueda verificar la validez de la observación. A continuación se explica cada modo de trabajo.

Modo de trabajo con parámetros preprogramados

En este modo el usuario puede ejecutar un observador lineal de Luenberguer prediseñado con la ayuda del software de simulación, en el cual fue simulado y que además ha sido intensivamente probado sobre la planta. El prediseño se hizo para la planta polarizada con una apertura del EFC del 40%. Para la convergencia del observador se definieron polos del sistema observado en -19, -13 y -23. El método numérico de integración utilizó un período de muestreo de 6ms. Los datos arrojados durante la simulación se guardan en un archivo .lvm seleccionado por el usuario, hasta que sea oprimido el botón Stop mostrado en la Figura 5

Modo de trabajo con parámetros configurables

En este modo el usuario debe asignar los polos del sistema observado y el período de muestreo para el método numérico de observación, así como la polarización de la planta, a través de la apertura del EFC. Para el diseño, el usuario puede apoyarse en el software de simulación desarrollado para tal fin. Los datos arrojados durante la simulación se guardan en un archivo .lvm seleccionado por el usuario, hasta que sea oprimido el botón Stop mostrado en la Figura 6.

Para trabajar con cualquiera de estos modos se requiere realizar mediciones y procesar información que dará como resultado la observación de las variables de interés. Para esto se trabajó de la siguiente forma: las señales provenientes de los transmisores, que miden la altura del líquido en los Tkel y Tke2, se ingresan al sistema por medio de la TAD, a la que se accede con la herramienta DAQ Assistant, de donde se obtienen las señales independientes de las diferentes mediciones utilizando el bloque Convert from Dynamic Data, posteriormente se escalizan para que los valores de la medición estén en unidades coherentes a las de las constantes programadas para el cálculo de los observadores, es decir que las mediciones se expresan en cm, y finalmente se ingresan al script donde quedan disponibles para el cálculo del observador. Es de recordar que sólo la altura del Tkel se utiliza en dicho cálculo, la altura de Tke2 se almacena para efectos de validación del comportamiento de los observadores.

La otra variable que se requiere para poder calcular los observadores es la entrada al sistema, para el caso flujo. En este sistema se cuenta con un medidor de flujo local (rotámetro) cuya medición no se puede ingresar al sistema por medio de la TAD, por lo que se implementó una tabla dinámica de la cual se direcciona permanentemente el valor del flujo correspondiente a un determinado porcentaje de apertura del EFC.

El cálculo de los vectores K, en cada uno de los algoritmos y la integración se implementó en el script de Matlab® disponible en LabVIEW®. Esta Herramienta permite implementar el algoritmo para cada uno de los observadores utilizando instrucciones disponibles en Matlab®, e.g. acker. El método de integración implementado es el trapezoidal.

Los resultados de la observación y otros datos de interés se guardan en un archivo .lvm, el cual se crea y gestiona con la herramienta Write LabVIEWMeasurement.

Conclusiones

Como resultado de este trabajo se presentan herramientas que facilitan el diseño, simulación e implementación de obsevadores lineales (Luenberguer), y no lineales (Alta Ganancia) para un sistema de tanques en cascada. Las herramientas presentadas permiten la disminución de los tiempos de cálculo de observadores y entregan elementos que ayudan en el análisis del comportamiento del sistema en simulación y en campo.En la elaboración de estas aplicaciones se hizo uso de dos de las plataformas más utilizadas en control, Matlab® y LabVIEW® y se aprovecharon los elementos que tienen programados para el manejo de periféricos y de archivos. Además, se hizo uso de los script con que cuentan para programar los algoritmos de los observadores.Por medio de este trabajo se contribuye al acervo de conocimientos en lo referente a la implementación de observadores con rigurosas bases matemáticas en el control de sistemas reales.

Agradecimientos

Los autores desean agradecer la colaboración prestada al Laboratorio de Operaciones Unitarias de la Universidad Pontificia Bolivariana, para el desarrollo de este trabajo.

Referencias

1. G. Ellis. Observers in Control Systems: A Practical Guide. 1rd ed. Ed. Academic Press, San Diego - California, United States of America. 2002. pp. 67-90.         [ Links ]

2. H. Sira, P. Campoy, J. Sebastián, A. Jiménez. Control de Sistemas No Lineales. 1rd ed. Ed. Pearson Prentice Hall, Madrid, España. 2005. pp. 1- 312.         [ Links ]

3. O. Nelles. Nonlinear System Identification. 1rd ed. Ed. Springer, Berlin, Germany. 2001. pp. 36-45.         [ Links ]

4. J. Herbst,W. Pate.''Object Components for Comminution System Softsensor Design''. Powder Technology. Vol. 105. N°. 1.1999. pp. 424-429.         [ Links ]

5. H. Khalil. Nonlinear Systems. 3rd ed. Ed. Prentice Hall. New Jersey, United States of America. 2002. pp. 610-623.         [ Links ]

6. M. Arcak, P. Kokotovic. Nonlinear Observers: A Circle Criterion Design. IEEE: Proceedings of the 38th Conference on Decision Control. Phoenix, USA. December 1999. pp. 4872-4876.         [ Links ]

7. E. Shin, K. Lee. Robust Output Feedback Control of Robot Manipulators Using High-gain Observer. IEEE International Conference on Control Applications. Hawaii, USA. August 1999. pp. 881-886.         [ Links ]

8. A. Poznyak, R. Martínez, A. Osorio.''Robust High- gain Observer for Nonlinear Closed-loop Stochastic Systems''. Mathemathical Problems in Engineering. Vol. 6. 2000. pp. 31-60.         [ Links ]

9. G. Besançon. Nonlinear Observers and applications. 1rd ed. Ed. Springer. New York, United States of America. 2007. pp. 1-112.         [ Links ]

10. G. Cicarella, A. Dalla.''A Luenberger-like Observer for Nonlinear System''. Internetional Journal of Control. Vol. 57. N° 3. 1993. pp. 537-556.         [ Links ]

11. M. Osorio. Diseño de Observadores con no Linealidades Fuertes. Tesis Doctoral. Universidad Nacional Autónoma de México - UNAM. México DF., México. 1999. pp.8-45.         [ Links ]

12. S. Espinoza, J. Reyes, A. Álvarez, C. Astorga, E. Mendizabal; G. Cadenas.''Observador no Lineal de Alta Ganancia para Procesos de Copolimerización en Emulsió''. Revista Mexicana de Ingeniería Química. Vol. 7. N° 1. 2008. pp. 89-98.         [ Links ]

13. C. Smith, A. Corripio. Control Automático de Procesos. 2nd ed. Ed. Limusa, Cuernavaca, México. 1991. pp. 65-70.         [ Links ]

14. G. Besançon. Further on High Gain Observers for Nonlinear Systems. 38thIEEE conference on Decision and Control. Phoenix, USA. 1999. pp. 2904-2909.         [ Links ]

15. Matlab. R2010a Documentation. Disponible en: http://www.mathworks.com/help/. Consultado en Noviembre de 2010.         [ Links ]

16. LabVIEW. NI Developer Zone. Disponible en: http:// zone.ni.com/dzhp/app/main. Consultado en Junio de 2009.         [ Links ]

17. National Instruments. Adquisición de Datos USB. Disponible en: http://www.ni.com/data-acquisition/ usb/esa/. Consultado en Junio de 2009.         [ Links ]