Powered By Blogger
Mostrando entradas con la etiqueta LabVIEW. Mostrar todas las entradas
Mostrando entradas con la etiqueta LabVIEW. Mostrar todas las entradas

sábado, 26 de mayo de 2018

Introducción a Comunicación LabVIEW - ARDUINO toolkit LIFA


National Instruments (NI), es el líder mundial cuando hablamos de equipos de prueba automatizados y software de instrumentación virtual. LabVIEW es un producto que esta compañía desarrollo, este software ha sido utilizado en muchos laboratorios alrededor del mundo.
LabVIEW se compone del inglés “Laboratory Virtual Instrument Engineering Workbench” (Espacio de trabajo de Instrumentación Virtual de Laboratorio de Ingeniería). Se utiliza un lenguaje de programación grafica conocido como G; Para ampliar con diferentes librerías de diferentes compañías LabVIEW soporta el Visual Package Manager (VIPM.)


Para establecer la comunicación entre LabVIEW y ARDUINO se presentan tres alternativas:
  • ·         Toolkit LabVIEW Interface for Arduino (LIFA).
  • ·         Toolkit LINX de Makerhub.
  • ·         Visa Serial.


Toolkit LabVIEW Interface for Arduino "LIFA"


Instalación
Para poder instalar este toolkit necesitamos descargar el VI Package Manager “VIPM” para esto nos dirigimos al siguiente enlace: https://vipm.jki.net/download. Una vez descargado lo instalamos y nos mostrara la siguiente ventana.

En el VIPM colocamos dentro del apartado de búsqueda el nombre del toolkit a descargar. (LabVIEW Interface for Arduino).



Nos abrirá la siguiente ventana:

Dentro de esta ventana seleccionamos la opción de instalar y comenzara con la instalación automáticamente.

Una vez instalado podemos comenzar a programa en LabVIEW utilizando este toollkit.

Breve introducción de encendido de LED con botón.


En este ejercicio se presenta la introducción para comenzar a interactuar con el toolkit LIFA. El objetivo de esta práctica es poder encender un LED físico a través de un botón virtual programado desde LabVIEW, así como encender un LED virtual a través de un botón físico. Los materiales a utilizar son los siguientes:

  • ·         Placa ARDUINO (UNO, MEGA)
  • ·         1 LED
  • ·         1 Push botón
  • ·         Resistores (220 y 10,000 Ohms)
  • ·         Protoboard.
  • ·         Cables para conexión


Partiendo de la siguiente representación de conexión en la protoboard comenzamos a conectar nuestros componentes.



Una vez realizada la conexión del sistema comenzamos a programar el VI en LabVIEW. A continuación, se presente el diagrama de bloques y el panel frontal.

Imagen de la programación en el diagrama de bloques

Imagen de los controles e indicadores en el panel frontal.


Mira el Video:









sábado, 10 de marzo de 2018

Estación de clima con Arduino y LabVIEW


Esta práctica presenta un sistema de monitoreo de clima, donde podemos obtener los datos de temperatura, luminosidad; además de almacenar los datos obtenidos en un archivo de notas.

Software:
  1. LabVIEW 2017 o posterior.
  2. Toolkit LINX para LabVIEW. ¿Como descargar el toolkit LINX?
  3. Librería VISA (Para comunicación serial). ¿Como descargar libreria VISA?
  4. ARDUINO IDE (para obtener controladores de las placas Arduino).

Materiales:

  1. Placa ARDUINO UNO (MEGA, Leonardo, Micro, Nano).
  2. 1 LDR Sensor.
  3. 1 LM335 Sensor.
  4. 2 LED.
  5. Resistores (10K, 2K, 330).
  6. 2 Servomotores.
  7. Protoboard
  8. Cables para conexión. 
Primer paso (Conexiones):

Como primer paso vamos a realizar las conexiones del sistema, en el siguiente esquema se puede apreciar como modo de ejemplo.

Fig. 1. Conexion utilizada para este sistema.


Una vez realizado el cableado del sistema vamos a realizar la programación en LabVIEW, cabe mencionar que la programación se llevara a cabo en este software por medio del toolkit LINX por lo cual no necesitamos programar en ARDUINO IDE, únicamente tendremos que cargarle el firmware a nuestra placa arduino ARDUINO.

El diagrama de bloques en LabVIEW es el siguiente:

Fig. 2. Diagrama de conexiones en LabVIEW.


Por ultimo vamos a correr nuestro VI:
  1. Conectamos la placa ARDUINO.
  2. Seleccionamos el puerto COM.
  3. Indicamos la ruta donde se encuentra nuestro archivo de notas.
  4. Indicamos los pines de conexión del sensor de temperatura y LDR.
  5. Corremos el VI.
  6. Ingresamos usuario y contraseña.


miércoles, 14 de febrero de 2018

Electrocardiograma


Breve descripción del ritmo cardíaco

Las frecuencias cardíacas en los seres humanos pueden ir desde los 40 BPM en personas muy entrenadas para mantener su cuerpo en estado de reposo hasta los 230 BPM cuando se realiza una actividad física intensa.

Frecuencias cardiacas superiores a 230 BPM son consideradas patológicas.


Introducción

Esta practica consiste en realizar un programa en LabVIEW para obtener el ritmo cardíaco utilizando como tarjeta de adquisición de datos una placa arduino.

Requerimientos:
LabVIEW 2017 o posterior.
Tener instalado el toolkit "LabVIEW Interface For Arduino"
Arduino IDE (para cargar el sketch LIFA Base a la placa)

Material a utilizar:
1 Placa ARDUINO UNO
1 Sensor de ritmo cardíaco "KY-039"
1 Buzzer o Zumbador.
1 Transistor 2n2222.
1 Fuente de alimentación externa 5 VCD.
1 Protoboard.
Cables para conexión.

El Sensor de ritmo cardíaco.

Este sensor por lo regular se coloca en la parte de la huella del dedo indice pero para esta practica yo lo colocare en la parte de la muñeca.

Contiene un LED y un fototransistor integrado con el cual permite recibir una señal de voltaje cuando el flujo de la sangre obstruye con el reflejo de luz emitido por el sensor.

Figura 1. Sensor de ritmo cardíaco utilizado.

Diagrama de conexiones

Figura 2. Esquema de conexiones en protoboard.



Mira el nuestro video.






viernes, 26 de enero de 2018

Control de LED RGB ARDUINO LabVIEW

Esta práctica consiste en controlar el color de un LED RGB a través de la creación de una interface amigable en LabVIEW.

Material:

-          Placa Arduino.
-          LED RGB (Ánodo común o cátodo común).
e     3 Resistores de 220 ó 330 Ohm.
-          Protoboard.
-          7 cables para conexión.


A continuación, se presenta la representación de conexión de los componentes.


Imagen 1. Conexión de LED RGB ánodo común (En caso de usar LED RGB cátodo común se conecta el pin común a tierra).

Enlace de descarga:
VI LabVIEW: https://goo.gl/A1ANAv



domingo, 5 de noviembre de 2017

Prueba de motor

En esta práctica se propone realizar una prueba de motor cd a través de LabVIEW utilizando la interface con Arduino.

La prueba consiste en controlar la velocidad del motor a través de un potenciómetro e indicar con tres LED’s la velocidad actual donde (verde – baja, amarillo – media, rojo – alto); la prueba será activada a través de una perilla para iniciar el arranque del motor.

Pre requisitos para esta practica:

  • Tener instalado el toolkit de "LabVIEW Interface for Arduino".
  • LabVIEW 2017, Si va a utilizar el VI que se ofrece en el link


Material:

Placa Arduino
Motor a 5 VDC
Potenciómetro
Resistores
Led
Transistor 2N2222
Protoboard

Cables

Como primer paso vamos a realizar la conexión del circuito electrónico.
En la conexión podemos apreciar a que pines de la placa Arduino están conectados los diferentes componentes electrónicos.

Conexión del sistema en placa de prototipos.


Arduino IDE:

En arduino IDE únicamente vamos a realizar la compilación y la subida del sketch LIFA_Base

Sketch LIFA_Base, Arduino IDE

LabVIEW:

En LabVIEW se va a realizar toda la programación del sistema.

1. Establece comunicación con la placa Arduino.

2. Configura pines digitales como salida.

3. Inicia ciclo while loop

 3.1. Inicia "case structure"

 3.2. Comienza con la lectura del potenciometro conectado al pin A0

   3.2.1. Mapea la salida de la lectura analógica de 0 - 5 a 0 - 10 (esto es para mostrar la velocidad en               el indicador).

       3.2.1.1. Mapear la salida del mapeo anterior de 0 - 10 a 0 - 255.

3.3 Realizar la comparación de la salida obtenida del mapeo en el punto "3.2.1" para determinar la velocidad y encender el led correspondiente.

3.4 Agregar el bloque de analogWrite y conectar el mapeo del punto "3.2.1.1" para escribir en el puerto la salida PWM al pin de la placa seleccionado.

3.5 Convertir los resultados de las comparaciones del punto 3.3, a dato digital para posteriormente conectarlos a los bloques digitalWrite correspondiente a los pines donde estan conectados los LED's fisicos. 

Diagrama de bloques en LabVIEW.

Panel frontal en LabVIEW.




martes, 8 de agosto de 2017

Control de display 7 segmentos

En esta práctica se desea controlar un display de 7 a través de la interface de LabVIEW y Arduino.

Antes de comenzar:

Tener en cuenta instalar el toolkit LINX en LabVIEW para realizar la comunicación con la placa Arduino.

Identificar y considerar el tipo de display a utilizar (ánodo común o cátodo común).

El display de 7 Segmentos 




El display de 7 segmentos es un componente que se utiliza para la representación de caracteres (normalmente números) en muchos dispositivos electrónicos, debido en gran medida a su simplicidad. Aunque externamente su forma difiere considerablemente de un led típico, internamente están constituidos por una serie de leds con unas determinadas conexiones internas, estratégicamente ubicados de tal forma que forme un número '8'

Los hay de dos tipos: ánodo común y cátodo común.

En los de tipo de ánodo común, todos los ánodos de los ledes o segmentos están unidos internamente a una patilla común que debe ser conectada a potencial positivo (nivel “1”). El encendido de cada segmento individual se realiza aplicando potencial negativo (nivel “0”) por la patilla correspondiente a través de una resistencia que limite el paso de la corriente.

En los de tipo de cátodo común, todos los cátodos de los ledes o segmentos están unidos internamente a una patilla común que debe ser conectada a potencial negativo (nivel “0”). El encendido de cada segmento individual se realiza aplicando potencial positivo (nivel “1”) por la patilla correspondiente a través de una resistencia que limite el paso de la corriente.

Material a utilizar:

Placa Arduino UNO o alguna otra que soporte LINX
Display de 7 segmentos
Protoboard

Cables para conexión

Representación de conexión en protoboard.

Identificacion de pines de display

Figura de relación entre pines de display de 7 segmentos.



.


sábado, 15 de julio de 2017

Grabar posiciones de Servomotor


Grabar posición de Servomotor

Materiales que necesitaras
1 Arduino UNO
1 Botón
1 Potenciómetro (cualquier valor)
1 Servomotor

1 Resistor de 10 K ohm



Descarga el Sketch de Arduino
https://goo.gl/MKAE3H

lunes, 20 de febrero de 2017

Comunicación Serial Arduino - Labview básico con encendido de LED

Que tal, bienvenidos a este pequeño apartado donde estaré dejando información mas detallada sobre los vídeos que subiré en el canal.

En esta ocasión, hablaremos sobre "Conexión Arduino - LabVIEW con modulo Bluetooth utilizando Visa Serial". Para el desarrollo de este articulo se utilizo el modulo bluetooth "HC-06", pero si cuentas con el modulo "HC-05" no tendrás problema.

Modulo bluetooth "HC-06", utilizado en esta practica.


El propósito de esta practica consta en encender y apagar un LED de manera remota, desde el software LabVIEW con Arduino como placa controladora, utilizando la transferencia de datos con el modulo bluetooth.

Cabe resaltar que no abordaremos a profundidad las características del modulo bluetooth, ya que esto sera tema de otro articulo; En este practica no aremos uso de comandos, ni programación para controlar este modulo. El bluetooth lo utilizaremos únicamente como un reemplazo del cable de datos , el cual se conecta a los pines RX y TX del arduino para establecer la comunicación con el software LabVIEW. 

Una vez dicho lo anterior comenzaremos escribiendo el programa en Arduino IDE.


int led = 6;
void setup() {

  Serial.begin(9600);
  pinMode(led,OUTPUT);
}

void loop() {

  if (Serial.available())
  {
    int dato = Serial.read();

    if (dato == 0)
    {
      digitalWrite(led,LOW);
      delay(5);
    }
    if (dato == 1)
    {
      digitalWrite(led,HIGH);
      delay(5);
    }
  }
}



Escrito el código, lo cargamos a nuestra placa Arduino; abrimos LabVIEW y colocamos el siguiente VI

Imagen de VI utilizado.


Ahora realizamos la conexión del circuito electrónico, como se muestra en la siguiente imagen.

Imagen de conexión utilizada en la practica del vídeo.


Para finalizar configuramos el bluetooth de nuestro computador como puerto de comunicación serial "COM"; para esto, ubicamos el icono de bluetooth y sobre este damos click derecho y seleccionamos "abrir configuración", nos dirigios a la pestaña de "puertos COM" y seleccioamos "Agregar Saliente", seleccionamos el nombre de nuestro modulo bluetooth que por default presenta el nombre de "JY-MCU".

Imagen de la ventana de configuración de puertos bluetooth.


Una vez echo esto solo tenemos que identificar el numero de puerto de comunicación nos agrego en la configuración y seleccionamos este puerto en el panel frontal de LabVIEW, para comenzar a correr el VI.


Gracias por ver el vídeo.


lunes, 16 de enero de 2017

Sensor BMP180 con Arduino, Características

Sensor BMP180, definiciones y funcionamiento.




El sensor BMP180 es un sensor de presión atmosférica de alta precisión.

Diagrama de conexión con placa Arduino UNO.


Figura de diagrama de conexión BMP180 y Arduino UNO.

Para usar este sensor con Arduino podemos utilizar la librería BMP180, que puedes descargar en el siguiente enlace: https://goo.gl/cbhBLy

Una vez que hayas descargado e instalado la librería, puedes comenzar utilizando los ejemplos de código que contiene la librería.


Figura de donde localizamos los ejemplos de la librería BMP180.

Abrimos el sketch de ejemplo y lo cargamos a la placa Arduino, abrimos el puerto serial a 9600 baudios. Recibiremos un mensaje diagnóstico, en dado caso que nos arroje un mensaje de que no encuentra el sensor debemos revisar si nuestra conexión sea correcta.


Figura del monitor serial que muestra las lecturas obtenidas del sensor BMP180.

Necesitas mas información sobre la presión atmosférica y como obtener la altitud, continua leyendo los párrafos debajo.

¿Qué es la presión atmosférica?

La presión es una fuerza “presión” ejercida sobre un área. La unidad de medida de la presión más común son las libras por pulgada al cuadrado (psi). Una libra ejerciendo presión sobre un área es igual a 1psi. En el sistema internacional es el newton por metro cuadrado, el cual se le denomina Pascal (Pa).


Figura de representación de la presión atmosférica.

Hay varias situaciones donde la presión puede ser medida (gravedad, tirones, etc.), pero en este artículo nos interesa la presión atmosférica, la cual es la fuerza que el aire está ejerciendo sobre todas las cosas, incluyéndonos. La presión atmosférica es creada por el peso de los gases en la atmosfera. Normalmente no notamos el peso del aire, pero si colocamos una columna de 1 pulgada de grosor con aire, desde el nivel del mar hasta tocar la atmosfera, esta podría pesar alrededor de 14.7 libras (1 cm de grosor de aire podría pesar alrededor de 1kg). Este peso, ejerce una presión en la base de la columna, la presión atmosférica generada en esta columna es la que nosotros podemos medir con sensores como el BMP180.

Debido a que una columna de aire, de 1 pulgada de grosor pesa alrededor de 14.7 libras, y está presionando un área de 1 pulgada al cuadrado, la presión promedio sobre el nivel del mar es aproximadamente 14.7 libras por pulgada cuadrada (psi), o 101,325 Pascales. Esto puede incrementar cerca de 4% por cada 1000 pies (o 300 metros) que se hacienda. A mayor altura, menor presión es ejercida, porque la base del punto más alto situado en la atmosfera es mucho más corta y por consiguiente tiene menor peso. Teniendo estos datos como referencia podemos calcular la altitud a la que nos encontremos.


Figura de columna de aire, representando la presión atmosferica.

Nota: La presión del aire a 12,500 pies (3810 metros) es la mitad que en el nivel del mar.
El BMP180 obtiene la presión absoluta en pascales (Pa). 1 Pa es una unidad de medida relativamente pequeña, aproximadamente la presión que ejerce una hoja de papel sobre una mesa. Podemos referirnos a unidades más grandes en unidades de hectopascales (1 hPa = 100 Pa) o kilo pascales (1 kPa = 1000 Pa). La librería de Arduino nos muestra los datos obtenidos en valores de punto flotante en hPa, el cual aparece en milibares (mbar).

Aquí tenemos algunas conversiones de unidades de presión:

1 hPa = 100 Pa = 1 mbar = 0.001 bar
1 hPa = 0.75006168 Torr
1 hPa = 0.01450377 psi (pounds per square inch “libras por pulgada al cuadrado”)
1 hPa = 0.02953337 inHg (Pulgadas de mercurio)
1 hpa = 0.00098692 atm (atmosferas estándar)

El efecto de la temperatura

La temperatura afecta la densidad de un gas, y la densidad afecta la masa de un gas, y la masa afecta la presión, por lo cual concluimos que la presión atmosférica sufrirá cambios dramáticos en relación a la temperatura del ambiente.
El BMP180 incluye un sensor de precisión para medir los cambios de temperatura en el ambiente. Para el funcionamiento del sensor, primero necesitamos leer la temperatura, después se le añade una lectura inicial de la presión para al final obtener una medida final de temperatura y presión.
Medición de la presión absoluta
Como hemos mencionado, si requerimos la medición de la presión absoluta, todo lo que tenemos que hacer es obtener la lectura de la temperatura. La lectura de la presión final está dada en hPa = milibares. Si se desea también se puede realizar la conversión de unidades dependiendo de los factores de conversión que se desee.
NOTA: la presión absoluta atmosférica varía dependiendo de la altitud y del clima al cual nos encontremos.


Observaciones sobre el clima

La presión atmosférica en cualquier lugar de la tierra ( o en cualquier lugar de la atmosfera) no es constante. La interacción entre los giros de la tierra, eje de inclinación, y muchos otros factores resultan con el movimiento de las áreas o zonas de presión más altas y bajas, las cuales ocasionan las variaciones en el clima que vemos todos los días. Por la observación de los cambios de presión, podemos predecir pequeños cambios en el clima. Por ejemplo, las pequeñas disminuciones en la lectura de la presión usualmente indican que el clima es húmedo o una tormenta esta se acerca. Un incremento en el clima indica que el día está siendo soleado.
Pero recordemos también que la presión atmosférica también varía dependiendo de la altitud.


Determinando la altitud

Debido a que la presión es directamente proporcional a la altitud, podemos usar el sensor de presión absoluta para medir la altitud.
La medida promedio de la presión atmosférica a nivel del mar es de 1013.25 hPa (o mbar). Esto puede variar dependiendo del incremento del vacío en el espacio. Ahora podemos obtener la altitud dependiendo de la medición de la presion (P y pₒ) usando la siguiente ecuación.
Exactitud: ¿Qué tan exacto es? El nivel de error en teoría del sensor BMP180 es de 0.25m (aproximadamente pulgadas), Sin embargo, en la práctica podemos detectar un error del orden de 1m (40 pulgadas).
Clima: También debemos recordar que la presión sufre cambios dependiendo del clima, tenemos que tener en cuenta que esto puede afectar nuestras mediciones.
Altitud máxima: El BMP180 no puede medir todos los tipos de vacío (o fuera del espacio). Esta indicado que su límite es cerca de 300 hPa (mbar), el cual corresponde a una altitud alrededor de 3000m o 30,000 pies. Las personas que han estado a estas alturas volando y han experimentado resultandos exitosos con este sensor, pero esto no es garantizado. (para obtener medidas a gran altura podríamos considerar usar un GPS).
Altitud minina: De igual forma el sensor no puede estar situado a una presion mayor a 1100 hPa o 16 psi, los cuales corresponde cerca de 500 pies por debajo del nivel del mar. Este sensor no es buena opción para utilizarlo en un sumergible, o mediciones de gas comprimido.


Tips y Recomendaciones:


El voltaje correcto de alimentación: El sensor BMP180 funciona con voltajes desde 1.8V a 3.6V. el voltaje recomendado es de 3.3V. Nunca lo conecte a un voltaje mayor a 3.6V.

Dale aire: Recordar que el sensor BMP180 necesita estar en contacto con el aire del ambiente para medir su presión, así que no lo coloque en lugares cerrados. Puede adjuntarle pequeñas compuertas que permitan la circulación de este, en caso de que lo tenga en un recipiente.

Pero no demasiado aire: De otra forma, una explosión como aire en movimiento por ejemplo al movimiento de un auto, ya que causa momentáneas variaciones en la medición que pueden afectar las lecturas de las mismas. Protégelo el dispositivo de fuertes corrientes de aire.

Mantenlo fresco: Porque una medición exacta de temperatura es necesaria para el cálculo de la presión, intenta no exponerlo a cambios rápidos de temperatura.


Mantenlo seco: El BMP180 es sensible a la humedad. No lo sumerja o deje en contacto con líquidos.