Este documento trata sobre la adquisición de datos (DAQ) y cómo se puede implementar con GeneXus. Explica brevemente qué es la DAQ, sus aplicaciones en medicina, industria, ciencia e investigación y en dispositivos domésticos y de transporte. Luego describe los componentes típicos de un sistema DAQ como sensores, acondicionamiento de señal, software, hardware y almacenamiento de datos. Finalmente, muestra cómo GeneXus puede utilizarse para implementar un sistema DAQ mediante el uso de objetos externos que interactúan con las DLL de fabricantes
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
DAQ con GeneXus: termómetros, lámparas y más
1. Las crónicas de SD: El termómetro, la lámpara…y GeneXus!#GX2418 A/P Alejandra Caggiano acaggiano@genexus.com Ing. Rodolfo Roballo rroballo@genexus.com
10. Cómo se construye un DAQ Fenómeno físico Visualización de datos Acondicionamiento de la señal Sensor Software 1011010… Hardware de DAQ Computador Actuador Fenómeno físico Almacenamiento de datos
12. Implementación con GeneXus HARDWARE DAQ 0-5V Analog Output ≈3V Voltímetro Analog Input Sensor de temperatura Motor DC 0..1 0..1 Digital Input 220VAC Digital Output USB Interruptor Relay driver Relay
Los sistemas que capturan datos por sí mismos se llaman genéricamente Sistemas de Adquisición de datos.La adquisición de datos (DAQ por sus siglas en inglés) es el proceso de en primer lugar adquirir señales de fenómenos del mundo real. Esto incluye cosas como temperatura, vibraciones, presión y otras magnitudes físicas de valor analógico. También se incluye señales digitales como pulsadores o interruptores.El siguiente paso es acondicionar y digitalizar las señales, esto es convertirlas a ceros y unos, de forma de que el computador las pueda entender.Finalmente vamos a analizar, visualizar y salvar los datos en un PC. También podemos a partir de datos en el PC, activar un mecanismo que provoque una acción en el mundo físico, como accionar una válvula, prender un motor o encender una máquina.Los sistemas industriales llamados SCADA (Supervisory Control and Data Acquisition) combinan la adquisición de datos con el control y supervisión de procesos.
Un fenómeno físico lo medimos con sensores (también llamados transductores). Estos convierten la magnitud física en una señal eléctrica, típicamente un voltaje o una corriente.Esta señal en general tiene mucho ruido que la distorsiona, por lo que es necesario acondicionarla con un circuito adecuado.Luego utilizamos una interfase especial para poder leer estas señales. Este hardware de adquisición de datos tiene generalmente múltiples entradas y salidas, como entradas analógicas, entradas digitales, salidas analógicas y salidas digitales. Hay muchos dispositivos disponibles comercialmente, algunos de carácter general y otros altamente especializados, con precios que varían entre los U$S 100 a decenas de miles de U$S.Para poder digitalizar las señales analógicas, esta interfase incluye uno o varios conversores analógico digitales. Y para poder generar un voltaje a partir de un dato digital incluye conversores digitales-analógicos. También incluye contadores y temporizadores, por ejemplo para mover un motor mediante la técnica de modulación por ancho de pulsos.Una vez que la información está accesible desde el computador, podemos utilizar comprar software comercial o desarrollar el nuestro, para analizarla, desplegarla y almacenarla.Observemos que no sólo podemos capturar información sino que también podemos generar una acción, como causar un movimiento, que se cierre un circuito, que se encienda un dispositivo, etc. a partir de un comando dado desde nuestro programa.
El hardware de DAQ se conecta a un PC de varias maneras, puede ser una tarjeta PCI, PCMCIA o comunicarse por USB, WiFi, Ethernet, RS232 o ser productos especializados como PLCs o módulos PXI.En cuanto al software, existe software comercial para DAQ muy conocidos como el LabView (de National Instruments) o incluso el MatLab tiene un módulo para adquisición de datos, pero también podemos desarrollar nuestro propio software, ya que la mayoría de las interfases DAQ proveen varios mecanismos para hacerlo.Los fabricantes generalmente proveen una API (Application Program Interface) para poder acceder a estos dispositivos desde nuestro lenguaje de programación. Esta API puede ser una DLL, una clase Java o un wrapper para otros lenguaje como Python, Visual Basic, etc.Muchos también proveen bibliotecas de controles visuales, con diversas formas de desplegar la información adquirida (como gráficas, lámparas, dispositivos, etc.) o controles para ingresar datos, por ejemplo botones, perillas, barras de desplazamiento, etc.
Hemos visto que las computadoras se usan en la vida cotidiana en muchas aplicaciones, no solamente en sistemas comerciales o de gestión administrativa, sino que es común ver computadores en medicina, autos, deportes, controles industriales, etc.Vimos que hay una gran variedad de empresas comerciales que venden interfaces para usar un PC como sistema de adquisición de datos o para controlar procesos.También probamos que se puede usar perfectamente a GeneXus como lenguaje para desarrollar este tipo de aplicaciones, y aprovechar las ventajas que GX tiene frente a los lenguajes convencionales. La conclusión final es que que dado un sistema para una empresa, podamos usar GX para todo, tanto para desarrollar los casos de uso de gestión, como para conectarse a los dispositivos físicos que generan la información o generarla notros mismos usando sensores directamente.