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
[email protected]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égtLa 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. 3Entradas 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. 4Utilizamos 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
PigsSimulando 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. 6Entonces 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. 9La 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.
10Figura 4b) Test Ponel: Anolog Output
Para una salida de 1 V, el multimetro indica lo siguiente:
Lectura en la
Salida AOO
Pig. 12Test 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. 12Obsé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 13Insertando 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 eFC 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 5Los 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. 15Llevamnos 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. 8atect 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. 9Frecuency
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. 20Escogemos 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. 22Finalmente 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. 23Finalmente 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. 26Ejecutamos 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. 25A 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. 26De 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. 27Si 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. 28Al 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. 29Y 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. 30ae
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. 31Aparecerd 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. 32A 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. 33En 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. 34Ss 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. 36Para 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. 37erento 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. 38Entonces 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. 39ea) 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. 4028 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. a2Tet 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. a2va 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. 43Fle Gat View Projet Opeate_Toot window Fy
[DED SIM] [Bet Applicaton Font+ | Baw |as~ [~ |]
El resultado de la ejecucién del programa es:
Pig. aeCondicién
Resultado
Tanque vacio, VE
encendida
Liquide @ SMIN.
Llenando. VE
encendida
Liquide @ SMAX. VE
cerrado. VS abierto
a2 em)
seen
=>
a
S
Pig. 45SMAX 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. 46Para 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. 47CON2 = 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. 48Toni
Eltanque se
encuentra vacio. El
liquide comienza a
ingresar. El liquido
est bajo la
referencia minima
Resultado
Pig. 49El 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. 50El liquide baja del
nivel maximo
Elliquido llega
nuevamente
medio tanque al
salir.
Elliquida baja del
nivel minimo y
comienza
nuevamente a
llenarse,
Pag. 52Puedo 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. 52Elemento 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. 53Proceso 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. 54Para 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. 55Né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. 56Elemento 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. 57El 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. 58Para 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. 60Borrando 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. 62En 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. 62Al 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