sábado, 28 de enero de 2012

DAQ Carga y descarga de un condensador

Hola a todos, en esta práctica vamos a hacer una combinación de conocimientos, pro un lado, necesitamos saber lo básico de obtención de datos por parte del DAQ 6008 que nos proporciona, así como también el manejo de soporte labview en lo referente a obtención de datos,etc.
Por ello  lo primero que haremos será explicar de manera elemental las características esenciales de nuestro DAQ 6008, encontrareis dicha información en mi BIBLIOTECA.

Una vez sabemos más o menos lo que tenemos entre manos respecto al DAQ es momento de comentar un poco lo que va a ser el objetivo de esta práctica.
Se trata de un pequeño sistema de recogida de datos relacionado con la carga y descarga de un condensador electrolítico de 1000uf. El DAQ nos servirá para analizar mediante una cosa a la que llamamos “muestras”(toma de un dato concreto) cuanto  y cuando se carga el condensador, así como cuánto y cuando se descarga.  No es más que eso.

En primer lugar os diré como conectar nuestro DAQ al ordenador, es muy sencillo. Primero, obviamente tenemos que tener instalado labview, después de eso iremos a la ventana de buscar y pondremos “measurement”, nos aparecerá un programa, le clicaremos.




Y nos saldrá algo como esto.



Para ver que nuestro DAQ está conectado, debemos ir a “devices and interfaces” y al dar clic nos saldrá en subsangrado “NI USB 6008 “Dev1” el número del “dev” puede variar. Pero no es de más importancia que cambiar el nombre en labview, para utilizar el “1” si es el que tenemos.
Con esto ya sabremos que tenemos nuestro DAQ bien conectado. Entonces será el momento de crear nuestro VI y comenzar a tomar datos o “muestras”.


Este sería el VI ya finalizado.







Aunque no se ve al 100% tan solo falta fuera del flat un “close” del recurso.

Por otro lado este sería el front panel.





Como veis, en el lado derecho tenemos la gráfica, donde nos mostrará la información recogida por parte de DAQ, en la parte izquierda tengo un pequeño esquema que tengo que motar de manera real, claro.
 En la zona central tengo el “buffer” o “vaso” que me indicará el tiempo que lleva llenándose, así como la manera de tomar las muestras, si en modo continuo o en modo finito, y un indicador de tiempo de carga. Como veis, no tiene mucho.

Ahora vamos con la parte importante, el algoritmo. Lo que iremos haciendo será explicar cada una de las partes más importantes así como su funcionamiento.

Lo primero que vamos a hacer será abrir la función “create cannel”, el DAQ al conectarse, se mete por un canal concreto que va en función del número del “dev”, si era “dev1” es que está en el canal 1. Entonces con este recurso vamos a configurar el canal, poniéndole referenciado a masa RSE, poniéndole un rango de voltaje entre 0 y 5, diciéndole que utilice el canal de nuestro device que es el 1 y poniéndolo en AI voltaje.



Ya tendremos configurada nuestra entrada, ahora lo que vamos a hacer será configurar el Buffer, mediante la herramienta “timming”. Está en rojo en la imagen.



Hay 2 maneras de poner el buffer, donde pone “modo de toma” lo que hay es un control que nos deja elegir entre finito o continuo.
En el modo continuo el buffer se empieza a llenar cuando le damos a RUN. Es importante configurar la velocidad de lectura del DAQ para evitar desbordamiento porque nos daría error.
Por otro lado en el modo finito debemos configurar el tamaño de buffer en función del número de muestras que podemos leer. Lo que ocurrirá será, si deseamos leer más muestras de las que tenemos metidas en el buffer, nos aparecerá un error.
En este ejercicio configuraremos el número de muestras  por segundo (rate) a 1000, es decir, haremos que le DAQ coja 1000 muestras por segundo. Después configuraremos el llenado en 10000, es decir, en general lo que vamos a hacer es que el DAQ coja cada segundo 1000 muestras y el total del buffer va a ser 10000.

Luego el siguiente paso será ya abrir el recurso del DAQ.



Lo que haremos ahora será crear un “flat sequence” formado con dos partes. En la primera, en su interior, meteremos un while loop, como os enseño aquí.



Aunque hay comentarios explicativos os lo iré diciendo por partes, por un lado creamos un indicador que nos dice el tiempo de carga, es decir, el tiempo que transcurre desde que damos a RUN hasta que se llena el búffer.
Por otro lado el “tiempo de carga” le ponemos a 10, esto es el tiempo que le damos al buffer para que se llene. Obviamente son 10 segundos.

La herramienta que se encuentra en la parte superior derecha es “read node” que nos muestra mediante un indicador el llenado del buffer. 

El programa está configurado para que, cuando acabe de llenarse el buffer se salga del while y comencemos a leer los datos. Para eso pasamos al próximo flat sequence, como os pongo aquí.








Configuramos el read para que lea 10000 muestras y configuramos el número de canales y de muestras. Para eso nos vamos a “analog/multiples channels/2d dbl”, después creamos un “wavefrom graph” en la línea de DATA, con esto conseguiremos que se nos forme la gráfica, tanto de carga como de descarga, en función de las muestras tomadas.

Por último salimos del flat sequence  y cerramos el recurso, acabando así nuestro VI, este es el símbolo.




Y ya estaría nuestro proceso de cálculo de carga y descarga del condensador acabado, cuando pueda os adjuntaré una pequeña simulación con el DAQ, espero que os haya servido de ayuda, un saludo.


No hay comentarios:

Publicar un comentario