Social Icons

jueves, 21 de febrero de 2013

LABVIEW + ARDUINO: VOLTIMETRO

Me pareció interesante este artículo, les dejo con esto...



Como ya pudimos ver en un tutorial anterior, LabVIEW es una potente herramienta ingenieril y, podemos conectarla con Arduino. La unión de Arduino y LabVIEW puede ser explosiva y, esto os lo vamos a ir mostrando poco a poco aquí, en Geeky Theory.


En este tutorial, vamos a diseñar un proyecto en LabVIEW para crear un voltímetro con Arduino. Si miramos atrás, podemos ver que ya creamos un tutorial para hacer un voltímetro con Arduino, pero os voy a refrescar un poco la memoria con un pequeño resumen de su funcionamiento.




En esta imagen, vemos el voltímetro creado en el tutorial anterior, con un display LCD y tres botones. Los botones eran para seleccionar la magnitud que queríamos medir, como podemos ver escrito en la pantalla.
¿Cómo vamos a conseguir saber qué tensión estamos midiendo?


Para realizar el voltímetro, utilizamos 3 resistencias de 120 KOhms. Con este circuito, se realiza un divisor de tensión. Al ser las resistencias iguales, la tensión se dividirá entre tres y, sobre cada resistencia caerá un potencial equivalente a un tercio del voltaje de entrada. Tras simular con OrCAD, obtenemos estas gráficas:





¿Cómo empiezo a hacerlo con LabVIEW?


En este caso, tendremos algo parecido, pero seguro que mucho más cómodo y con una interfaz gráfica que podremos modificar a nuestro gusto. Tras este tutorial, acabaréis teniendo lo siguiente:






Como podéis ver, tenemos un indicador analógico y un indicador numérico. Además, como no podría ser de otra manera, tenemos una opción para seleccionar la magnitud en la que queremos medir y, su correspondiente LED para indicarnos lo que estamos midiendo.


En caso de que estemos midiento en milivoltios, se encenderá el LED de mVoltios, como se ve en la imagen. Con los voltios y KVoltios pasa exactamente lo mismo.


Pero… ¿Cómo consigo poner todo eso en mi ventana?


Es tan sencillo como arrastrar objetos. Lo que haremos es ir a la pestaña View/Controls Palette y a View/Tools Palette, tal y como se ve en la siguiente imagen:




Tras esto, nos saldrán esas dos ventanas y, desde aquí, podremos crear nuestra interfaz gráfica.


Vemos que nos salen botones para LEDs, para indicadores numéricos o para botones. Si hacemos click en ellos y arrastramos el modelo que queramos, ya lo tendremos todo montado. Es conveniente añadir un botón de STOP para cuando queramos parar la ejecución.


Ahora tendremos algo parecido a esto, pero sin funcionalidad alguna, ya que no hemos establecido ninguna relación entre los distintos bloques creados:



Aunque probablemente no se encienda ningún LED y tengamos un indicador por un lado y otro por otro. Van a ser tres indicadores diferentes, uno para cada magnitud, ya que no podemos redimensionar en el momento estos indicadores.


Ahora vamos a ver el diagrama de bloques de nuestro proyecto y, lo haremos siguiendo esta serie de pestañas o pulsando Ctrl+E:




Seguidamente, se nos abrirá el diagrama de bloques. Lo primero que haremos será poner un bucle while-loop:




Dentro del bucle While, pondremos los bloques para inicializar la conexión con Arduino. Es muy importante seleccionar el cable de color verde oscuro en la salida del bucle, con el botón derecho y darle a “Replace with Sift Register”. Nos quedará lo siguiente:




Ahora tenemos que decirle a LabVIEW desde qué pin vamos a recibir los datos. Esto lo haremos de la siguiente manera y, elegiremos el pin analógico número cero:


Una vez inicializada la conexión con Arduino, tendremos que ver cómo conectamos todos los bloques que tengamos por ahí sueltos. Yo no tengo ninguno ahora mismo porque he empezado el proyecto desde cero para el tutorial y tengo la interfaz de usuario totalmente vacía:




Si introducimos todos los LEDs, el Menu Ring y los indicadores, nos quedará algo así, muy desordenado:











Ahora, vamos a crear una estructura condicional para saber si estamos midiendo en milivoltios, voltios o kilovoltios. Esto lo haremos dentro del bucle:




Cuando lo pongamos, lo tendremos que unir al menú desplegable que hemos creado antes, el Menu Ring. Automáticamente se cambiarán los valores de True y False a 0, Default y 1. Como ahora tenemos 2 únicos valores y queremos 3, mV, V y kV, tendremos que añadir uno más.





Para añadir un nuevo caso y, ya que estamos, codificar cada caso, iremos a las propiedades del Menu Ring:




Una vez estemos dentro de las propiedades, iremos a la pestaña “Edit Items” y la dejaremos de la siguiente manera:




De esta forma, ahora ya tenemos los tres casos que queríamos dentro del Ring, pero no en la estructura condicional. Para ello, vemos al hacer click derecho sobre la estructura “case” unas opciones para añadir casos o quitarlos. Es ahora cuando tendremos que añadir un nuevo caso, que será el 2 y, pondremos por defecto el caso 1, que es el de la medida en Voltios:




Ya tenemos prácticamente todo hecho. Ahora, lo único que nos falta es multiplicar por 3000 (para mV), por 3 (para V) o por 0.003 (para KV), por la razón que he explicado al principio del artículo. Además, habrá que meter cada indicador dentro de su correspondiente casilla.


Para multiplicar por un número cualquiera, tendremos que ir a la ventana de funciones y elegir el bloque de multiplicación:


 
Para poner el número por el cual queremos multiplicar lo que leamos de Arduino, dentro de la misma pestaña en la que estábamos:



Una vez hecho esto, podemos decir que estamos ya casi en el final. Ahora simplemente queda hacer visibles o invisibles los indicadores analógicos. Esto lo hacemos desde aquí:




Crearemos tres, bloques “visible”, uno para cada indicador y, según estemos en un caso o en otro, lo pondremos a true o a false. Además, tenemos que conectar los LEDs para que se encienda uno de los tres en función de la magnitud en la que estemos midiendo. Tras hacer esto, nos quedará algo así:




Lo único que falta es añadirle un temporizador para que el bucle se ejecute cada 500 ms y, finalmente, tendremos todo listo para ejecutar nustro VI:




Falta decir que, antes de poder ejecutarlo, tenemos que cargar la interfaz para Arduino que nos proporciona Arduino en nuestro microcontrolador. La ruta es, según donde hayamos instalado LabVIEW:




Pues ya tenemos nuestro proyecto creado. Puede que hayáis tardado un poco en hacerlo si es vuestra primera vez con LabVIEW, pero practicando un poco, podéis tardar unos 10 o 15 minutos como máximo en hacerlo. Es sólo cuestión de práctica. A continuación os dejo el esquemático del proyecto y el link de descarga, además de un video tutorial.


MONTAJE


VÍDEO





LINK DESCARGA




(DEBES CREARTE UNA CUENTA EN box.com, EL ARCHIVO SE ENCUENTRA ENCRIPTADO, LO PODRAS BAJAR SI TE CREAS UNA CUENTA)

Esto es todo. Espero que os haya gustado y que realmente os sirva de ayuda. ¡Hasta el próximo!


FUENTE: http://adf.ly/Jh8H9
 
 

6 comentarios:

Anónimo dijo...

Tyya's dad won't overload anything sunday at the store - no ice cream, no bon-bons, no cookies. But when the saleslady puts a recompense sticker on Tyya's nose, Daddy is at the mould mo stiff to corrupt something textile

http://www.webhunter.pl/?p=1


http://seograf.pl/czesci-komputerowe/naprawa-dysku-twardego
http://boomsystem.pl/wybieramy-meble/komoda-%E2%80%93-niezastapiona-w-kazdym-domu
http://kapitalnie24.info.pl/2013/01
http://ryby.zgq.pl/temat/liczebnosc-karasia
http://ekonomia365.com

Anónimo dijo...

This is statutory guidance from the Department for Education. Local authorities (LAs) must acquire honour to it when carrying manifest their excise to set up proper full-time education (or part-time when appropriate in place of the child’s needs) representing children who are unable to attend a mainstream or noteworthy day-school because of their robustness

http://katalog.wplab.pl/biznes,ekonomia/szkola,dla,doroslych,warszawa,s,70/
http://radcaprawnygorzow.pl/tag/nowoczesne-dywany-do-salonu/
http://fioletowy.zuru.com.pl/2011/07/page/4/
http://www.rodia.waw.pl/tag/licea
http://www.bimber.dobrapozycja.net/tag/Technikum%20ekonomiczne%20w%20warszawie

Anónimo dijo...

In place of of texting my daughter pertaining to laundry, I accidentally texted a pal from drudge away and it autocorrected to whores.
http://novacon.pl/firmy/mdj,electronic,panele,operatorskie,s,5358/
http://www.pirlo.pl/elektronika-telefony/sprzet-elektroniczny/7.html
http://heray.malopolska.pl/?p=5300
http://www.lizbary.com.pl/strony,blogi,fora/mdj,electronic,automatyka,przemyslowa,s,1023/
http://www.kinplast.com.pl/strony,blogi,fora/mdj,electronic,automatyka,przemyslowa,s,1030/

Anónimo dijo...

Tyya's dad won't swallow anything qualified at the hold - no ice cream, no sweets, no cookies. But when the saleslady puts a valuation sticker on Tyya's nose, Daddy is conclusively stiff to suborn something virtuous

http://www.webhunter.pl/?p=1


http://nokia2700classic.jakitelefon.pl/archives/tag/krecenie-filmikow
http://czarneoliwki.pl/tag/inny
http://pubstarakuznia.pl/tag/brak
http://biznes-internetowy.easy-buys.com/archives/tag/sprzedaz
http://vaduz.pl/category/kulinaria/page/4

Anónimo dijo...

Two paramount manufacturers of special treat products are pulling specific popular brands from the hawk because they may admit traces of poultry antibiotics that are not approved in the U.S.

http://www.centrum-firm.com/katalog/pokaz/3707
http://promowanefirmy.pl/katalog/pokaz/2569
http://www.biznesdlafirm.com/katalog/pokaz/5389
http://www.centrum-firm.com/category/budownictwo-kontenery/cat/81
http://biznesdlafirm.com/katalog/pokaz/2956

http://centrum-firm.com/katalog/pokaz/5228
http://www.biznesdlafirm.com/katalog/pokaz/3828
http://centrum-firm.com/katalog/pokaz/5378
http://promowanefirmy.pl/katalog/pokaz/1397
http://centrum-firm.com/katalog/pokaz/5829

Anónimo dijo...

Two major manufacturers of special premium products are pulling specific in vogue brands from the market because they may contain traces of poultry antibiotics that are not approved in the U.S.

http://www.canonic.com.pl/strony,blogi,fora/lecznica,weterynaryjna,weterynarz,chylonia,s,1153/
http://www.promowanefirmy.pl/katalog/firma-usugowo-sprztajce-gloss
http://www.biznesdlafirm.com/katalog/pokaz/6269
http://promowanefirmy.pl/katalog/pokaz/8173
http://centrum-firm.com/katalog/drewnitex-meble

http://centrum-firm.com/katalog/pokaz/3333
http://promowanefirmy.pl/katalog/agencja-turystyczno---handlowa-i-ubezpieczeniowa-hermes-janusz-pietrzak
http://www.centrum-firm.com/category/budownictwo--konstrukcje-stalowe-aluminiowe/cat/80
http://www.centrum-firm.com/katalog/pokaz/5443
http://centrum-firm.com/category/budownictwo--wyburzenia-rozbiorki/cat/109