Está en la página 1de 64
LA TARJETA NI USB 6009 Conexiones, configuraciones y ejemplos Descripcién breve £1 presente documento contene una breve descrpcin de a Tareta de Adauiscin de datos ‘USB, NI-6009, las conexiones a instrumentos y la forma de insertarlos en un programa en LabVIEW, of como eericios de progremacion, Luis Echeverria Yanez Imecheverria@espe.edu.ec Tabla de contenidos ‘TABLA DE CONTENIDOS... LA TARIETA NI USB 6009... Requsitos 0€ sorTwaRe v HARDWARE CCONEXION DE SENSORES V ACTUADORES. Conectando sensores y actuadares. Simulando un sensor digital ON/OFF Simulando un actuador digital ON/OFF. sSimulando un sensor analogico, Probando las conexiones.. ‘Test Panel: Analog Input. Test Panel: Analog Output. Test Panel: Digital V0. Test Panel: Counter 0... nts Insertondo instrumentos en un programa de LabVIEW... Insertando canal de entrada analdlce.. Incertando canal de entrada digital Insertando canal de slide digital... ‘ncertanda canal de slida analégico. Insertando canal de entrada para pulsos (contado‘.. ‘TRABAJANDO SIN SENSORES REALES. Los estapos bet PROCESO. CON INTERRUPTORES DE NIVEL. CON TRANSMISOR DE NIVE CON ELEMENTOS TEMPORADORES. 53 El elemento de temporizacién, 33 Proceso con temporizacién, 54 Con Etententos 0€ conteo 57 Proceso con conteo, 57 Un contador ascendente. 57 BORRANDO ETIQUETAS ASIGNADAS A UN DIRECCION DE LA NI 6009 .wrvsrsnon Pégt La tarjeta NI USB 6009 La tarjeta esté compuesto de tres elementos, el elemento principal de la DAQ (de aqui en adelante la DAQ se refiere a la tarjeta NI USB-6009) y dos grupos de borneras, tal como se observa a continuacién: {Fagus superior cov ndcdores de bore 3 igus de borer 2 Bornes 4 Gableuse Un grupo de borneras corresponden a las entradas y salidas analégicas y el grupo opuesto corresponden alas entradas y salides digitales, entrada de trigger o contador, +5 Vy tierra, como se indica a continuacién: Entradas/salidas analégicas del borne 1 al 16 1} 213/14 |5|6]7 | 819 |10) 1112/13 |14]15 Jono] +alo- [eno] +alt- [ono] +al2- Jano] +als- |[ano|Aoo| Aor 16 [ono] JBNO|AI0 |A14 [GNOJAITt | Als [GND] Al2 |Al6 GND) AI3 | Al7 |GND|A00] AO 1 /GND| Entradas/salidas digitales, +5 V y tierra del borne 17 al 32 32|31|30 [29/28] 27 |26| 25|24| 23) 22/21|20) 19] 18/17 [sso|+8/ f2svjPrio|pts]pt.2[P11]P1.0]Po.7/Po6| Pas|Po4|Po3|Po2| Pos] Pao] Requisitos de software y Hardware. Para poder trabajar con la tarjeta de adquisicién de datos Ni USB-6009 es necesario disponer de los siguientes elementos: Computador con NI LabVIEW! NI-DAGmx?, compatible con la versién de LabVIEW instalada Tarjeta de adquisicién de datos NI USB-6009" y, Cable USB tipo USB A/M 2 USB B/M. 1 NI LabVIEW es marca registrada do National Instruments Corporation. Todos los derechos roservados = NEDAC« es marca registrada de National Instruments Corporation. Todos los derechos reservados 2 NI USB-6009 es marca registrada de National Instruments Corporation. Todos los derechos reservados Pig? aE & Las especificaciones completas de la tarjeta se encuentran disponibles en el internet, en los siguientes enlaces: http://www.ni.com/pdf/manuals/371303m.pdf http://www. insdecem.com/archivos/documentos/NIUSB6009.pdf Conexién de sensores y actuadores. La conexién de sensores y actuadores analdgicos y digitales esta claramente indicada en el manual del usuario de la tarjeta DAQ, de la que extraemos la siguiente informacién Entradas analogicas en modo diferencial Vottage (+>) source (_ ) NI.USB-6008/6009 Entradas analogicas en mode simple 0 referenciada a tierra Voltage, Source! ‘Salidas analégicas g Load Pig. 3 Entradas y selidas digit Td en aniguradh como sale dial en clamor bie pre orraar LED 502 ets configura cme sais Stal ctv para corvlr vn LED [oa es conus some entrada pal pas recone ee! Ul ena compue verses 707 et oni comeerrde dal pa eib une ede OS (ON/OF) dun nterapter Conectando sensoras y actuadores. Vamos a simular sensores y actuadores mediante dispositivos sencillos féciles de encontrar en cualquier almacén de electrénica. Los elementos que se necesitaran son Un interruptor y una resistencia de 2.2 KO. Un LED y una resistencia de 220.0. Un potenciémetro de 10 KA, un conector de bateria de 9 Vy una bateria de 9 V. Un multimetro. Una tableta para prototipes electrénicos (protoboerd). Simulando un sensor digital ON/OFF Un sencillo circuito que opera como un sensor digital del tipo ON/OFF contiene un interruptor, una resistencia de 2.2 Ky una sefial de S Vdc. La conexién es la siguiente: entrada sw digital Con la DAQ nos quedarfa asi Pig. 4 Utilizamos la salida de 5 Vde, de la tarjeta para alimentar el circuito, llevamos la fuente y la tierra a los buses largos para poder distribuir fécilmente SV y GND a los elementos del circuito. Esto serd muy conveniente cuando dispongamos de varios elementos e instrumentos en el mismo protoboard, La forma como cada uno de los agujeros de un protoboard estén conectados, es importante para evitar un cortocircuito en la fuente o una mala conexién. Las conexiones se las puede observar en el siguiente esquema Buses largos Buses cortos ZEEE EE EERE EE GEERT EE EE Las lineas verdes indican que los Zonas sin conexién agujeros estén conectados unos con ———————— otros a lo largo de esta, internamente Canal central sin conexién Pigs Simulando un actuador digital ON/OFF Un sencillo circuito, que simula el encendido o apagado de un actuador, lo pocemos realizar con un LED y una resistencia de 220 0. La conexién a realizar es la siguiente: 2200 Desde esas aeul LED Con la DAQ nos quedaria asi 2200 LeD Ke Simulando un sensor analégico Para poder simular un sensor analégico, utilizamos el potenciémetro de 10 KO. la bateria de 9 V, para lo cual armamos el siguiente circuito: 10k tes Con la DAG nos quedaria asi Pig. 6 Entonces los tres dispositivos quedarian asi, conectados a la DAG: El circuito armado queda entonces asi Probando las conexiones. Una vez comprobada la correcta conexidn de los instrumentos procedemos a conectar la DAQ al computador. Al conectar el cable a la DAQ aparecera en y esta epareceré el menti indicado en la figura 2. oYeran oo, igura El mend de la figura 2, contiene varias opciones: ‘ener a. Run Test Panels. Que permite ejecutar los panales de prueba de — conexién y comunicacién con la instrumentacién, etecua b. Begin an Application with This Device. Que permite iniciar una aplicacién utllizande la tarjeta y los instrumentos conectados | = mediante LabVIEW. ¢. Configure and Test This Device. Ingress al programa NI MAX, que normalmente se encuentra ubicado en el escritorio de Windows Q eens con el icono BAH, para configurar y prober la tarjeta, = d, Take No Action. No realiza ninguna accion. eS Entonces escogemos la opcién c. obteniendo la ventana de la figura 3. Measurement & Automation Explorer “Arrongue del Measurement & Automation Explorer Figura 3: Measurement & Automation Explorer En Devices and interfaces, debe indicar la tarjeta DAQ como NI USB-6002 “Devi” o el nombre que le hayas dado a la tarjeta en el campo Name, en este caso aparece como Tarjetal Para comprobar las conexiones realizadas hacemos clic en la pestafia que dice Test Panels... entonces aparece la ventana de pruebas, tal como se observa en la figura 4a, Esta ventana contempla cuatro pestafias: Analog Input, Analog Output, Digital 1/0 y Counter //0. Test Panel: Analog Input. Esta pestafia, que es la primera que se aparece, y se observa en la figura da, nos permite observar la sefial que llega a la DAQ, para lo cual tenemos que indicar el canal por el que se encuentra conectado el sensor {Channel Name), en nuestro caso el AIO, en el modo de adquisicién (Mode) hay tres tipos: adquisicién de una muestra (On Demand), adquisicién den muestras, donde n es definida por # Points to Read (Finite) y adquisicién continua de muestras, hasta que se aplique Stop (Continuous), escogemos On Demand. En Input Configuration, tenemos dos modos diferencial (Differential) y sefial simple referenciada a tierra (RSE), usamos modo diferencial. En el valor maximo de voltaje (Max Input Limit) colocamos 10 y en el valor minime (Min Input Limit), 0. Suprimimos el V en la opcién de auto escalamiento (Auto-scale chart] y presionamos el botén Start. Pie. 9 La sefial que se obtiene al variar el potenciémetro es la que se indica a continuacién’ co ag Test Panel: Anal Output. La segunda pestafia, aparece en la figura 4b. Para poder tomar la sefial analdgica de salida, es suficiente ubicar tun multimetro. En primer lugar escogemos el canal de salida (Channel Name], en nuestro caso AOO. Luego de lo cual indicamos los limites de voltaje, Max Output Limit (V) para el maximo y Min Output Limit (V) para el minimo, en este caso mantenemos 5 y 0 respectivamente, Las otras opciones (Mode, Transfer Mechanism y Rate) estan desactivadas y no son aplicables a la NI USB- 6009. En la parte derecha de la ventana, podemos observar una corredera, que se va desplezando desde el valor minimo hasta el valor maximo de voltaje, esto es entre 0 y 5 V. El valor indicado en Output Value (V), es el valor al cual mantiene su salida analégica la DAQ, y es el valor que debe indicarnos el voltimetro. Cada vez que movemos la corredera y cambia el valor del voltaje virtual generado, es necesario presionar el botén Update, para que el mismo pueda ser actualizado en la salida. 10 Figura 4b) Test Ponel: Anolog Output Para una salida de 1 V, el multimetro indica lo siguiente: Lectura en la Salida AOO Pig. 12 Test Panel: Digital /0. Representa la tercera pestafia y se observa en la figura 4c. Como se observé en el punto 2) de este documento, una entrada/salida digital esta denominada por la combinacién de dos nuimeros xe y junto a la letra P, asi: Pry Figura 4c) Test Panel: Digitol VO ‘Como por ejemplo PO.0, P0.2, P1.6, etc, En la ventana de la figura 4c, el ntimero xes identificado como puerto (Port) mientras que el numero y represent la linea (Line). Entonces primero identificamos el puerto (J. Select Port) en Port Name. La tarjeta Ni USB-6008 tiene solo dos puertos el Oy el 1, para el caso de este tutorial colocamos port0. A continuacién en 2. Select Direction, determinamos el tipo de acceso para cada une de las Iineas (entrada o salida) a través de los circulos de seleccién. Si queremos que todas sean entradas presionamos All Input, 0 solo salidas con All Output. En la casilla port Direction 1 representa entradas yO representa salidas. En nuestro caso, en PO.0 tenemos una entrada yen PO.1 una salida, entonces el puerto 0 linea 0, mantenemos la seleccién donde esta y en puerto 0 linea 2, cambiamos al radio botén inferior, obteniendo la siguiente veriacién: Pig. 12 Obsérvese que en 3. Select State, las entradas son representadas por LED, y las salidas por interruptores. Al presionar el botén Start, se inicia la comunicacién con los instrumentos digitales y con el interruptor virtual podremos encender el LED externo, mientras que con el interruptor externo prenderemos y apageremos el LED virtual. Test Panel: Counter I/O. Representa la ltima pestafa cuya ventana la observamos en la figura 4d. La tarjeta NI USB-6009 tiene una sola entrada de pulsos, denominada PFIO. Figura 4d) Test Panel: Counter YO En Channel Name, la tinica opcién valida es ctrO, el nico modo reconocido de conteo para esta entrade @ por flanco, entonces en Mode mantenemos la opcién Edge Counting y en la fuente de los flancos tenemos dos opciones validas, cuando el fianco en PFIO da de inicio al proceso adquisicién de datos por las entradas analégicas Al, escogemos ai/StartTrigger, pero si buscamos contra pulsos de una fuente de pulsos como puede ser un tacémetro usamos /PFIO. En nuestro caso la segunda opcién es la utilizada, Le presionar el botén Start, en Counter Value, iran indic&ndose el ntimero de pulsos, que van llegando a PFIO. Externamente podemos crear un generador de pulsos con un circuito idéntico al dela entrada digital, pero conectada al borne PFIO, y en lugar del interruptor es mas conveniente utilizar un pulsador, como se indica a continuacién: Pig 13 Insertando instrumentos en un programa de LabVIEW Para poder insertar instrumentos en un programa es importante tener los dispositivos conectados a le tarjeta y comprobada su conexién. A continuacién iniciamos una aplicacién en blanco en LabVIEW, as a. Arrancamos LabVIEW aia EB LabVIEW 2013 PFET b. ER LabVIEW 2013 €. Se crean entonces la ventana de diagrama de bloque (Black Diagram) y panel frontal (Front Panel). Pig e FC em Pry Ope Ts Fay Single sie» Dan [ar] BP] La comunicacién con la DAQ y los instrumentos se lo hace sobre el diagrama de bloques, Hay dos formas de establecer esta comunicacién: mediante el OAQ Assist y a través de Vis. La primera n de procesos que a veces no opcién es la mas facil pero involucra macros grandes y programa‘ s¢ utilizan, salvo para el contador, el resto de instrumentos se conectaran mediante los Vis del mend NI-DAQmx ubicado en Measurement I/O como se observa en la figura 6. Figura 5: Meni NI-DAGms Pig 5 Los Vis a utilizar en el proceso son: ‘DAG Assist. Asistente para comunicacién con la DAQ y los instrumentos conectados. os (cheered ona DAQmx Global Channel. Variable mediante la cual estableceremos contacto con el instrumento, a través de un nombre especifico y utiliza al NI MAX para establecer la conexién y la configuracién. EB ‘DAQmx Read vi. Ejecuta la lectura de sefiales. Trabaja junto a la DAQmx Global Channel Wee DAQmx Write vi. Ejecuta él envid de sefiales. Trabaja junto @ la DAQmx Global Channel Iniciamos la programacién ubicando el lazo While y el botén de control general del programa: Insertando canal de entrada ar Arrastramos un DAQmx Global Channel y un DAQmx Read vi mediante el cual leeremos la sefial analégica y llevarla a un registrador. ig. 15 Llevamnos el cursor ala flecha El del oAamx Global Channel haste que el cursor cambie de flecha a une mano, entonces hacemos clic, y aparece un menii del cual escogemos Browse. Si anteriormente ya se definieron otras comunicaciones, los canales utilizados apareceran también. De ventana adicional que se abre, escogemos Create New... Pig. 37 ‘ceneen ea} (06) (_coes Al hacer clic en este botén aparece un ment, del cual escogemos MAX Channel Aparecerd entonces la ventana para establecer el canal de comunicaciones, esta 8s la siguiente: Pig. 8 atect the mansuramant type forthe ‘lobl vrtul channel SpalRec man tes soechad ysl von) Ce) Z En la parte derecha de esta ventana tenemos dos mentis que son Acquire Signals (leer sefiales desde sensores} y Generate Signals (escribir seffales a actuadores). En Acquire Signals tenemos las siguientes posibilidades: Acquire Signals Voltaje Temperatura Tex Thermistor RTD Thermocouple Vex Thermistor ‘Strain Current Resistance Frecuency Position Wor RVOT Analog input Eddy Current Proximity Probe ‘Sound Pressure ‘Acceleration Velocity (IEPE) Force Force (Bridge) Force (IEPE) Pressure Pressure (Bridge) Torque Torque (Bridge) Bridge (V/V) Custom Voltage with Excitation Counter Input | Edge Count Pig. 9 Frecuency Period Pulse Width ‘Semi Period Two Edge Separation Position Linear Angular Digital Input | Line input Port Input TEDS (Sensores virtuales) Voltage Analog Output Gna Generate signals Counter Output Pulse Output ; Line Output Digital Output Pat Outeut Como vamos a leer la sefial del potenciémetro conectado a una fuente de 9 voltios que nos genera un voltaje entre 0 y SV, entonces, para nuestro caso escogemos Voltage de Analog Input en Acquire Signals y presionamos el botén Next. Pig. 20 Escogemos ai0, y presionamos el botén Next. A continuacién ingresamos el nombre con el que se identificara el canal, le llamamos Temperatura: Finalmente presionamos el botén Finish. Al finalizar el proceso de “conexién” con la tarjeta aparece la Ultima ventana, que se conoce como la ventana de asistencia del DAQ (DAQ Assistant}, para configurar pardmetros adicionales de la sefial. oe 8. [ns om an ord Figura 6: DAQ Assistant La ventana del asistente de configuracién tiene tres pestafias, en la primera tenemos: en le parte superior herramientas para monitorear la sefial de entrada y su presentacidn en tabla o grafico: Pag. 22 {aH ibd Cowal ACen] loan Visualizacién en tabla Fe ee el jf ee > Ont lower seca Para poder apreciar sila sefial esté, presente efectivamente en la entrada Al0, presionamos el botén Run y lo apagamos con Stop. » + =y 2, S.|LeH = TaN thc nr Spe Ae En la parte inferior de la configuramos los pardmetros del canal como el rango de entrada, en Signal Inout Range: Max y Min, las unidades de la sefial en Scale Units, el tipo de conexién en Terminal Configuration y el escalamiento de sefial de usuario en Custom Scaling. La opcién de escalamiento nos permite ajustar, la salida a la realidad de la sefial fisica (caracteristica estética del sensor) a través de ajustes lineales, polinomiales, por mapeo y tablas. La ventana que sale al escoger Create New de Custom Scaling es: Escogemos Linear, suponiendo una relacién lineal entre la sefial fisice de temperatura y le salida de voltaje, entonces nominamos la escala, prasionando Next: Pig. 22 Finalmente presionamos el botén Finish para terminar. Si suponemos que la salida de voltaje de 0 a 9V, corresponde a una 200°C, la relacién °C vs. V sera’ fal de temperatura que varia entre Oy 2257 20 754 1504 ws 100} 7s- so vats Donde Ia pendiente de la curva es 200/9, entonces la configuracién de la escala Finalizamos presionando el botén Ok ig. 23 Finalmente la el rango de entrads lo fijamos entre 0 y 10V y la pestafia de configuracién nos quedaré asi Cerramos todo, presionando OK. Entonces en la lista de canales que se presenté al inicio ahora ya aparece el canal creado: Lo escogemos simplemente presionando el botén OK. Entonces en la ventana del diagrama de bloques aparece ya el canal creado. =p A continuacién unimos la salida del canal con la entrada del VI de lectura nominada task/channels in, asi: Pig. 26 Ejecutamos Ia aplicacién desde el Panel Frontal y lo que obtenemes es la sefial de potencidmetro en el graficador: Insertando canal de entrada digital. Al igual que la sefial analégica arrastramos un DAQmx Global Channel y un DAQmx Read vi mediante el cual leeremos la sefial digital que servird para encender un LED. Pig. 25 A continuacién llevamos el cursor @ la flecha El del acm Global Channel hasta que el cursor cambie de flecha a una mano, entonces hacemos clic, y aparece un menti del cual escogemos Browse. Pig. 26 De la ventana adicional que se abre, escogemos Create New... Apareceré entonces la ventana para establecer el canal de comuni opcién Line input, del submenii Digital input en Acquire Signals: nes, De esta ventana escogemos la Pig. 27 Si deseariamos leer todo un puerto, utilizariamos la opcién Port input. Escogemos el puerto y linea donde se encuentra la seffal, en nuestro caso PO.0 (puerto 0 y linea 0): Le asignamos un nombre: Y finalmente probamos la conexién y configuramos parémetros adiciona Pig. 28 Al igual que el asistente para el analdgico, en este caso en la parte superior un LED virtual nos permite determinar la correcta conexién del interruptor externo, al presionar Run, el LED se encenderd, si el interruptor externo se enciende y se apagera si el interruptor externo se apaga. Si queremos que el LED este encendido mientras el interruptor este apagado o se apague si en interruptor externo esta presionado (Iigica inversa), seleccionamos Invert Line. Al presionar Ok, regresamos a la primera ventana, la de asignacién de canales, se encuentra marcado SW2. my Fe i Finalmente el diagrama de Bloques queda asi, al presionar Ok: J ltl Chanel ee swe] # = “oweg oe Tans A continuacién y antes de unir los elementos el VI de lectura que indica Analog DBL 1 Chan 1 Samp, que estaba bien para analégicos, debe cambiarse a Digital para lo cual presionamos con el cursor en forma de mano sobre la flechael. Pig. 29 Y escogemos Boolean (1 Line) de Single Sample que se encuentra en Single Chanel de la opcién Digital. ren a Coote | Subp Chns | Milo Con lo que queda finalmente asi: ae Entonces unimos los elementos: Intenuptor Digta ue Point Una vez finalizada la conexién, presionamos el interruptor y el LED en el panel frontal del programa se encenderd. Insertando canal de salida digital, Arrastramos un DAQmx Global Channel y un DAQmx Write vi, mediante el cual enviaremos el estado de un interruptor virtual a un LED real Pig. 30 ae A continuacién llevamos el cursor a la flecha £1 del DAQmx Global Channel hasta que el cursor cambie de flecha a una mano, entonces hacemos clic, y aparece un mend del cual escogemos Browse.. De la ventana adicional que se abre, escogemos Create New... Pig. 31 Aparecerd entonces la ventana para establecer el canal de comuni opcién Line Output, del submenti Digital Output en Generate Signals: jones. De esta ventana escogemos la Pig. 32 A continuacién escogemos el puerto y la linea a donde se conecta el LED externo, para nuestro caso PO.1 (puerto Oy linea 1): a See ee Presionamos el botén Next para nominar al canal de salida, en la ventana que aparece en el campo Enter Name: ld Y luego presionamos el botén Finish, entonces finalmente sale el asistente de configuracién: Pig. 33 En la parte superior de la ventana tenemos la zona de prueba, que se activa al presionar el botén Run, luego de lo cual puedo seleccionar el circulo, y el LED externo, si se encuentra bien conectado debe prenderse y apagarse. En la pestafia Settings podemos cambiar la ldgica de operacién del canal de salida digital. Una vez terminada la configuracién presionamos Ok o simplemente cerramos la ventana. Entonces regresamos a la primera ventana del proceso, donde apereceré el canal creado: Finalmente el diagrama de Bloques queda asi, al presionar Ok paasere sw vu A continuacién y antes de unir los elementos, el Vi de escritura que indica Analog DBL 1 Chan 1 Samp, que estaba bien para analdgicos, debe cambiarse a Digital para lo cual presionamos con el cursor en forma de mano sobre la flecha E] Pig. 34 Ss a Escogemos Boolean (1 Line) de Single Sample que se encuentra en Single Chanel de la opcién Digital. Quedandonos finalmente: a Entonces procedemos a unir, como se observa en el siguiente grafico: Una vez finalizada la conexién, al ejecutar la aplicacién, presionamos el interruptor virtual y el LED en el protoboard se encenderd, Insertando canal de salida analégico. Arrastramos un DAQmx Global Channel y un DAQmx Write vi, mediante el cual indicaremos el valor de la salida que quiero enviar, cuye valor lo ingresamos en un cuadro numérico, ‘Bpteponon tow [ov [acre > Configuramos canal de salida: Pig. 36 Para el caso de las salidas analdgicas, como se ve en la tiltima ventana, hay solo dos posibilidades: voltaje (Voltage) y corriente (Current). Escogemos voltaje, La salida la tomamos por AOO. A continuacién nominamos el canal Pig. 37 erento ptt Y terminamos de configurar la salida: Para poder chequear la salida analégica, en el cuadro numérico, junto al botén Apply Valve to Channel, colocamos un valor dentro del rango de la seftal de salida indicada en Signal Qutput Range. Para que el voltaje salga efectivamente al canal tenemos que presionar el botén citado. El rango indicado en Signal Output Range y lo podemos cambiar variando los valores de Max y Min. En Terminal Configuration escogemos el tipo de conexién real de la salida, la DAQ que utilizamos solo tiene salida simple referenciada a tierra o RSE, finalmente como en el caso de las entradas digitales, podemos aplicar nuestra propia escala, escogiendo la opcién Create New... en Custom Scaling. Al presionar Ok, regresamos @ la ventana principal y aplicamos en nombre creado al canal: Pig. 38 Entonces procedemos a conectar: “Analog DBL lachan 1Semp_ La salida del cuadro numérico con la entrada de data del VI y Ia salida del canal creado con tasks/channels in enel Vi. Al ejecutar la aplicacién, el valor que le coloquemos en el cuadro numérico, se transformara en un voltaje de salida de ese valor en AOO, con respecto a tierra. Insertando canal de entrada para pulsos (contador). Para insertar esta entrada, y dado la complejidad del procesamiento de los datos, es preferible hacerlo a través del DAQ Assist, para lo cual en el meni DAQmx de Measurement I/O, escogemos el icono: DAQ Assist Y lo arrastramos al programa, entonces aparece la ventana del asistente, donde escogemos Edge Count, del ment Counter Input en Acquired Signal. Las otras opciones no estén habilitadas para la USB 6008. Pig. 39 ea) nee) | rn) Cte | Entonces seleccionamos el inico canal de entrada de pulsos que tiene la tarjeta, indicado como ctr0 y cuyo borne fisico es PFIO: (eta) (ea) (ea) (ema) J Entonces presionamos el botén Finish, para que nos aparezca ventana de configuracién. Pig. 40 28 Bates wth pees gee eR Ser ag ans ee ny Las opciones indicadas por el cuadro las mantenemos, pues son las unicas que se pueden aplicar para la USB 6009. Finalmente presionamos el botén Ok y nos queda asi el diagrama de bloques. Para observar el ntimero asociado al conteo de pulsos en el panel frontal ubicamos un indicador numérico y el diagrama de bloques lo conectamos a la salida de datos del VI creado. Seer Pig. a2 Tet er Pret CoeveTeos_ Winton Fem (SVL [9 [sel bel [Se reeton 7 [Sor inca | Al ejecutar la aplicacién, y en funcién de los pulsos ingresados a la tarjeta, un numero decimal aparecerd en el indicador relacionado con el ntimero de flancos negativos de la sefial. Hay que tomar en cuenta el rebote en el caso de utilizar un interruptor para generar los pulsos. Trabajando sin sensores reales. No siempre resulta posible disponer de una tarjeta de adquisicién de datos para trabajar, sin embargo se puede realizar procesos de programacién y simulacién de tareas de adquisicién y control a través de los elementos virtuales que tiene LabVIEW. Trabajemos sobre un ejemplo real sencillo: Se dispone de un tanque de almacenamiento de agua, donde se quiere controlar el llenado y vaciado automatico del tanque, realizar el programa en LabVIEW, para cumplir con este objetivo. En tanque de 12 m. de altura dispone de una vélvula de entrada y una de salida, El tenque inicialmente vacio, se llena hasta un nivel maximo, por medio de la valvula de entrada y posteriormente al cerrado de la misma se vacia hasta el nivel minimo, para volver nuevamente a llenar y continuar el proceso continuamente. Los estados del proceso =. OPER Figura 7: Proceso con interruptores de nivel Pag. a2 va as) 1 stn demise Figura 8: Proceso con medido anolégica de nivel La deteccién de nivel de liquido se la puede realizar mediante sensores analégicos, como por interruptores dligitales, en ambos casos se puede aplicar los estados del proceso, Con interruptores de nivel No. | Estados Condicién de los instrumentos SMIN_| SMAX |_VE Vs 1_| Eltanque se encuentra vacio. El liquido comienza a ingresar 0 0 T 0 2_| Elliquido ingresando aleanza al sensor de nivel minimo 1_|_o [talyo 3. | Elliquido ingresando alcanza al sensor de nivel maximo a [3 [oo if] 4 | Elliquido saliendo desactiva al sensor de nivel maximo 1 o jo jit 5_| Elliquido saliendo desactiva al sensor de nivel minimo 0 0 1 oO Para obtener la expresién de control hay que considerar que el proceso tiene cuatro estados diferentes pues el Sto y el ero son los mismos. Entonces por términos minimos tenemos, pat VE = SMIN.SMAX.VS + SMIN.SMAX.VS VE = SMAX.VS(SMIN + SMIN) Pero, por algebra booleana tenemos que SMIN + SMIN = 1 entonces VE = SMAX.VS Y para VS tenemos SMIN.SMAX.VE + SMIN.SMAX.VE VS = SMIN.VE(SMAX + SMAX) Pero, por algebra booleana tenemos que SMAX + SMAX = 1 entonces: VS = SMIN.VE Entonces a continuacién iniciamos una sesién de trabajo en LabVIEW. Incorporamos dos interruptores y dos LEDS, los primeros actuaran como SMIN y SMAX mientras que los Ultimos serén VS y VE: Pig. 43 Fle Gat View Projet Opeate_Toot window Fy [DED SIM] [Bet Applicaton Font+ | Baw |as~ [~ |] El resultado de la ejecucién del programa es: Pig. ae Condicién Resultado Tanque vacio, VE encendida Liquide @ SMIN. Llenando. VE encendida Liquide @ SMAX. VE cerrado. VS abierto a2 em) seen => a S Pig. 45 SMAX desactivado, Liquide bajando Liquide bajo de SMIN. VE abierta. Se repite el ciclo. Tie_lt_ View Project OpenteTook Window He > [eo] [00 (2 55) ole.» [15et Application Font Pig. 46 Para correr el programa con los dispositivos reales se ha hecho la sustitucién Elemento de entrada en el programa inicial Elemento de entrada que sustituye SMAX Ala salida se mantienen tanto el LED virtual como el ri Elemento de salida virtual Elemento de salida real Gib Chanel VE be [Biot Boo) wel Con transmisar de nivel a in 2 Saco Cuando utilizamos un sensor analégico, es necesaric establecer valores de nivel minimo y maximo, que son las alturas a las que estaban ubicados los dispositivos digitales del ejercicio anterior. El programe al comparer el valor arrojado por el sensor analégico con las referencias establecerd un valor de verdad que se lo puede involuerar en la tabla de valores de estados para establecer la ecuacién del proceso para las valvulas. Para este ejemplo las referencias sern NMIN = 0.5 my NMAX=11.5 m. Entonces la tabla de verdad quedara asi con. NC NMIN (condicién 1) Pig. 47 CON2 = TNC $ NMAX (condicién 2) Condicion de los instrumentos No. | Estados cont | con2] ve | vs T_| Eltenque se encuentra vacio. El liquide comienta a Ingresar. El 1 | 2 4~2]) 0 liquide esté bajo la referencia minima 2_[ El iquido sobrepasa la referencia minima a 3_| Elliquido cobrepasa la referencia maxima o | 0 | 0 |fa 4 | Elliquide esté bajo la referencia maxime o [1 fo {ia 5 [ Elliquido esta bajo la referencia minima 1 fifi] Los estados 1 y 5 son los mismos por |o tanto, el proceso nuevamente tiene 4 estados, de donde obtenemos las ecuaciones para VE y VS: Para simular el sensor de nivel capacitivo, utilizo un Dial de 0 a 12. El programa en su panel frontal y VE = CON1.CON2. VS + CONT. CON2. VS VE = CON2.VS = (TNC VS = CONT.CON2.VE + CONT. CON2.VE VS = CONI.VE = (TNC = NMIN).VE diagrama de bloques quedaria entonces asi = NMAX).VS Fie Eat View Prope Ope Took vindow Help [> [8] St] [50 Apptestion Fort_~ | fax | se Pig. 48 Toni Eltanque se encuentra vacio. El liquide comienza a ingresar. El liquido est bajo la referencia minima Resultado Pig. 49 El liquide sobrepasa la referencia minima Fi Eat view Pret Opus Toot Whdow aan Elliquido ha subido a medio tanque Elliquido sobrepasa la referencia maxima y ha comenzado a salir. Pig. 50 El liquide baja del nivel maximo Elliquido llega nuevamente medio tanque al salir. Elliquida baja del nivel minimo y comienza nuevamente a llenarse, Pag. 52 Puedo reemplazar el Dial, con un potenciémetro externo e incluir dos LEDs externos como vélvulas de entrada y salida, a través de la NI USB-6009, para lo cual es necesario reali r los cambios indicados a continu Fon Birctcnauedn Beck DgHT le tien Pred! Opecie Tool Wdow Ha [5 to] tele [se koontow > [Ror Fe [oa [Tm AW Para conectar elementos interno, lo Unico que se cambia es: Elemento de entrada en el programa inicial Elemento de entrada que sustituye TNC tat Los elementos que se mantienen son’ Pag. 52 Elemento de salida virtual Elemento de salida real VE Con elementos temporizadores. El elemento de temporizacién Entre los elementos de tiempo que tiene el LabVIEW, encontramos el siguiente VI, nominado como Elapsed Time. [Rese }|[Eapsed Time G] met ) ieee Elapsed Time Los pardmetros més importantes son: Time Target (s), Reset, Auto Reset, Elapsed Time (s) y Time has Elapsed. Time Target (s) representa el tiempo de temporizacién, Reset permite iniciar o detener la temporizacién, se Inicia con Oy se detiene y reinicia con 1, Auto Reset permite reiniciar el conteo una ve? finalizado el tiempo indicado en Time Target (s), si este esta 1 (V), pero siesta en 0 (F) no acta, Elapsed Time (s) es el tiempo que pasa desde iniciado el conteo y Time has Elapsed pasa a 1 cuando el conteo esté habilitado y se ha llegado al final de la cuenta. OPERACION DEL TEMPORIZADOR Pig. 53 Proceso con temporizacién. Se dispone de un tanque de almacenamiento de agua, donde se quiere controlar el llenado y vaciado automatico del tanque, realizar el programa en LabVIEW, para cumplir con este objetivo. En tanque de 12m. de altura dispone de una vélvula de entrada y una de salida. El tanque inicialmente vacio, se llena hasta un nivel maximo, por medio de la vélvula de entrada, se mantiene lleno por un lapso de 10 seg. y posteriormente se vacia hasta el nivel minimo, para volver nuevamente a llenar y continuar el proceso continuamente. En el proceso usaremos sensor de nivel analégico, como indica la figura siguiente: enrate cette) de 8) 2 ssiensomao Las condiciones del sensor de nivel son: CON1 = TNC < NMIN con2 NCS NMAX Y los valores para la tabla de valores del proceso son: Condicin da los instrumentos ONAL | CON2 | VE | VS | RES | THE 1. | Eltanque se encuentra vacio. E! liquide 1 a fa] ofo]o comienza a ingresar. El liquide esta bajo la referencia minima. Inicia el programa 2 | Eltanque se encuentra vacio. E! Ifquido 1 2 Ifayl° fpayt o comienza a ingresar. El liquide esta bajo la referencia minima. No. | Estados 3_[ El liquido sobrepasa la referencia minima 0 a [lay/o [iat 9 4 | Elliquido sobrepasa la referencia maxima. 0 o folojol|o Comienza la temporizacién 10 segundos de espera 5. | Finaliza el tiempo de espera Q o folfa[{T ofa 6_| Elliquido esta bajo la referencia maxima 0 1 [o[iat{o 72 7_[Elliquido estd bajo la referencia minima 1 2 [t[ofizfo Donde RES es Reset y THE es Time has Elapsed. RES se puede considerar como una entrada mientras que THE puede considerarse como una salida. A partir del estado 7 se repite nuevamente el 2 y asi continua indefinidamente. Pig. 54 Para plantear las ecuaciones hay que realizar las siguientes consideraciones: 1. La vélvula de entrada VE, claramente no depende de los elementos del temporizador considerados (RES y THE). 2. Lavélvula de salida VS, si depende de estos parémetros, y 3. La sefial del Reset (RES) depende de los actuadores (VE y VS) y de las condiciones del sensor (CON1 y CON2). Entonces las ecuaciones quedan asi VE = CON1,CON2.VS + CONT. CON2, VS = CON2.VS VS = CONT. CON2.VE.THE + CONT.CON2.VE.THE = CONT.VE.THE RES = CON1.CON2,VE,VS + CONT. CON2,VE.VS = CON2.VE.VS Quedando el panel frontal y el diagrams légico asi: Pig. 55 Néteze que en el diagrama de bloques no utlizames la operacién AND comtin (L&D), sino la operacién compuesta, denominada Compound Arithmetic ( Ei ). La ventaja de utilizar esta ultima operacién, sobre la AND standard es el hecho que puedo manejar varias entradas con un solo simbolo y puedo “negar las entradas”, como que si las seales de entrada pasarian representar la operacién A. B. primero por un NOT (42>). Entonees por ejemplo para " seguimos los siguientes pasos: Arrastramos el icono del operador ‘Aumentamos a tres las entradas, arrastrando de los cuadrados azules inferior o superior. Escogemos la operacién AND, al dar clic botén derecho sobre el operador, y escoger AND de Change Mode. Negamos las entradas para A. Para lo cual nos ubicamos sobre la entrada @ negar, presionamos el botén derecho y del meni que obtenemos, escogemos la opcién Invert, Luego hacemso lo mismo para C ‘Tenamos lista entonces las entradas para conectar @ las seflales A, By C Por lo tanto se presentan las siguientes equivalencias: a Pop Para conectar elementos interno, lo tinico que se cambia es: Elemento de entrada en el programa inicial Elemento de entrada que sustituye INC Ez Los elementos que se mantienen son’ Pig. 56 Elemento de salida virtual Elemento de salida real VE. te] [igs Bec) Con elementos de conteo El LabVIEW no dispone de un médulo 0 elemento contador en particular, pero con otras funciones, Vis y operadores, podemos facilmente implementar un contador de cualquier tipo. Proceso con conteo. Un tanque de almacenamiento posee una vélvula de entrada y una de salida, ademés de un sistema de mezclado. Ingresa el liquido por le valvula de entrada, une vez lleno el tanque el mezclador da 10 vueltes y luego se vacia el tanque. El proceso se repite continuamente, Vir neat pn fevetede do Vad 5) © satan Un contador ascendente Lo primero a realizar para resolver este problema es definir un contador, en este caso lo haremos con un contador ascendente, mediante el programa que vemos a continuacién: Pig. 57 El contador comprende tres etapas, el tratamiento de los pulsos, a través del nodo de realimentacién y el comparador >, El o Elreseteo y el incremento de la cuenta, formado por dos selectores y un incrementador, Hacis el ncicador de cuenta Desde ase oe rseteo Desde el tratamiento de pulsos fin decuents Y finalmente tenemos la deteccién de fin de conteo p> etl ole denn detinae events Des a cusnts atl Deedela referencia de events © limite de cuenta OPERACION DEL CONTADOR RESE CUENTE FINAL, CUENTS Pig. 58 Para poder contar las veces que giran las paletas de mezcla unidas al motor del mezclador (M), es necesario disponer de un sistema tacométrico, como el siguiente Cada vez que la luz pasa por el orificio, de una placa sujeta al eje se genera una sefial paso, sin emibargo no es préctico e involucre problemas en la programacién contar los pasos, lo mas practico es contar las transiciones de 0a 10 las transiciones de 1 a 0, conocidos como flancos positivos y flancos negativos respecti Dado que en toda una vuelta se generaran un flaco positive y un flanco negativo, entonces n flancos representaran n vueltas. La primera parte del circuito, en el procesamiento se encarga de contar los flancos ositivos. Fijese bien que en este caso, por la estructura del tacémetro resulta ser un flanco por vuelta, pero sila placa tendria més de un agujero habria que determinar cudntos flancos se generan por vuelta, y por lo tanto cuantos pulsos hay que contar para el ntimero de vueltas que se quiere controlar. mente El primer selector permite poner un cero en la cuenta, si llega un uno a la safal de RESET o mantiene la cusnta yel segundo selector permite mantener la cuenta o incrementarla en una unidad controlada por los flancos.. El circuito contador podemos utilizarlo incluyendo todos los elementos en el programa final o transforméndolo en un SuBVI, de acuerdo a lo que se explica en htte://www.insdecem.com/archivos/documentos/NI-Tutorial-7593-en.pdf En el caso de este tutorial le he transformado al contador en un SubVi, llamado upcounter.vi upcounter.vi Cosnts Cuyas entradas son RESET, PULSOS y Limite Cuenta, mientas las salidas son Cuenta y Final Cuenta. RESET inicializa la cuenta con 1, no hace nada con 0, PULSOS es la entrada para la seffal que viene del tacémetro, Limite Cuenta es un numérico que indica hasta que valor el contador llegaré, por Cuenta sale un valor que va de 0 al numero ingresado en Limite Cuenta y por Final de Cuenta sale un 1 cuanto Cuenta es mayor 0 igual al numérico en Limite de Cuenta. Entonces con este SubVI, podemos ya desarrollar el programa, primero planteamos los estados y sus valores yhallamos las ecuaciones para los actuadores y para el RESET del SubVI. Las condiciones generados por el sensor de nivel analdgico las tomaremos ahora como: cona NC NMIN, y con NC = NMAX Pig. 59 én de | Estados Condicién de los instrumentos No. coni | con2 | ve [ vs | m | Fc | Res | CONT 1 | Eltanque se encuentra vacio. El liquide 0 o fay} o [oo yay o comienza a ingresar. El liquido esta bajo la referencia minima. El liquido sobrepasa la referencia minima | 1 0 (alfo [ofolo] o 3 | Elliquido sobrepasa la referenciamaxima. | 1 1 [of o |fajfo fof om Comienza el conteo. Se generan los pulsos desde el dispositive tacométrico 9 cuentas con el estado anterior 4 | Finaliza el conteo 1 a [olfij[o[ijo] o 5_| El liquido esta bajo la referencia maxima 1 o o {tayo fifo 0 6_| Elliquido esta bajo la referencia minima ° o [ifofofolilo Como en cases anteriores, el estado 1 y el 6 son los mismos, por lo que el proceso tiene 5 estados. Es importante observar que los tinicos actuadores condicionado por el contador son VS y el motor de le mezcladora M, por lo tanto el final de cuenta FC, afectaré solo @ ellos. Por lo tanto las ecuaciones quedan asi VE = CONI.CON2.VS.M + CON1.CON2.VS.M = CON2.VS.M VS = CON1.CON2.VE.M.FC + CON1.CON2.VE.M.FC = CON1.VE.M.FC M = CON1.CON2.VE.VS.FC RES = CON1.CON2.VE.VS.M Quedando el panel frontal y el diagrama légico asi: Pig. 60 Borrando etiquetas asignadas a un direccidn de la NI 6009 Cada vez que conectamos la tarjeta Ni UBD 6009 a un computador, y atin mas si utilizamos diferentes puertos USB, los nombres automaticos definidos para el dispositive seran Devi, Dev2, Dev3,....Devx. ¥ las etiquetas o nombres de los canales de acceso 2 los sensores estarén dafinidos por estos nombres, Para poder observar los nombres de los canales de comunicacién a los sensores desde LabVIEW, arrancamos el programa Ni MAK, ante lo cual obtenemos lo siguiente: Measurement & Automation Explorer — iaiiiteee cementite Pag. 62 En la parte izquierda de la ventana podemos encontrar, desplegando Data Neighborhood y N/-DAQmx Global Virtual Channels, los diferentes canales creados durante la programacién en el entorno de LabVIEW, asi: My onstesponees reo Vache ‘oom FRouor Favors W once betes Sse 18 Rect sytane Al hacer clic sobre el nombre de cualquier canal, se despliega al lado derecho de la lista las caracteristicas del canal y la posibilidad de probar su funcionamiento, asi: Neopet no Thewesseue Ta] Dotan wows ane a | fcr soa ye - Pag. 62 Al hacer clic botén derecho sobre el canal indicado, nos apareceré en el meni la opcién Delete, que nos permitiré borrarlo, ast: Para poder resetear los canales a la configuracién inicial de LabVIEW, esto es sin ninguno definido, podemos utilizar la opcién Reset Configuration Data, al aplicarla el programa nos advierte que luego de lo cual seré necesario resetear el sistema, asi: También desde NI-DAQmx Global Virtual Channels, al hacer clic botén derecho podemos directamente desde aqui y sin entrar a LabVIEW crear canales que luego pueden ser usados en la programacién, asi: Pig. 63

También podría gustarte