Вы находитесь на странице: 1из 108

Instrumentacin Virtual con LabVIEW

Objetivos del Curso


Comprender los componentes de un instrumento virtual
Introducir LabVIEW y las funciones comunes de LabVIEW
Crear una subrutinas en LabVIEW
Trabajar con Arreglos, Clusters y Estructuras
Desarrollo en arquitecturas de programacin.
Publicar VIs en el navegador

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

El Enfoque de la Instrumentacin Virtual.

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Aplicaciones de la Instrumentacin Virtual


Diseo
Procesamiento de Seal e Imagen Una Sola Plataforma de Desarrollo Grfico
Programacin Integrada de Sistemas
(PC, DSP, FPGA, Microcontroladores)

Diseo

Creacin de Prototipos y Simulacin


Control
Control Automtico y Sistemas Dinmicos
Mecatrnica y Robtica
Programacin de PACs
Mediciones
Circuitera y Electrnica
Medidas e Instrumentacin

Ing.SerafinCastaedaCedeo

Prototipo Desarrollo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Sistema de Desarrollo Grfico de LabVIEW


Ambiente de Programacin Grfico
Compilacin de cdigo para mltiples SO y dispositivos.
Utilizable en una amplia gama de aplicaciones

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Plataformas Integradas
Instrumentacin Modular PXI

High-Speed
Digitizers

Multifunction
Data Acquisition

High-Resolution
Digitizers and DMMs

PC Porttil

PC de Escritorio

PDA

Control de
Instrumento
Dynamic
Signal Acquisition

E/S Digital

Counter/
Timers

Visin
de Mquina

Motion
Control

Distributed I/O and


Embedded Control

Acondicionamiento
de Seal y
Conmutacin

Unidad Bajo
Prueba

Departamento
de Ingeniera
Mecatrnica

Deprtamento

DEPARTAMENTO DE
INGENIERIAde Ingeniera
Mecatrnica
MECATRNICA.

Programas en LabVIEW y otros lenguajes es los mismo?


Pareciera que no, pero en realidad los planteamientos generales son los mismo:
Definir el tipo de dato de las variables antes de usarlas.
Cada variable depende de un solo tipo de datos.
No todas las operaciones son aplicables a todos los datos.
Tipo de dato: Conjunto de valores que puede asumir una variable.
Existen dos tipos de variables: Las variables globales, aquellas a las que se puede acceder o
llamar desde cualquier parte del programa y variables locales.
Clase de datos: Tipo escalar (nmeros enteros, reales, booleanas, etc.) y Tipo estructurado (arrays
y clusters).

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Tipo de datos en LabVIEW.

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Seccin I

Trminos de LabVIEW
Componentes de aplicacin de LabVIEW
Herramientas de programacin de LabVIEW
Crear una aplicacin en LabVIEW

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Programas de LabVIEW se llaman instrumentos virtuales (VIs)

Panel frontal
Controles = entradas
Indicadores = salidas

Diagrama de bloque
Programa de acompaamiento
para el panel frontal
Componentes cableados
entre si

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Panel frontal de VI
Barra de herramientas
del panel frontal

Icono

Control
Booleano

Leyenda del
grfico

Grfico de
Forma de onda
Leyenda de
la escala

Leyenda de
La grafica

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

VI Diagrama de bloque
Barra de
Herramientas
Del diagrama de
Bloque

Funcion de
dividir

SubVI
Terminal
grafica
Cableado
de
datos
Estructura
While loop

Constante
numerico

Funcion de
tiempo

Terminal de control
booleano
DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Paleta de controles y funciones


Paletas de control

(Ventana del panel frontal)

Paleta de funciones

(Ventana de diagrama de bloque)

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Paleta de Herramientas
Paleta flotante
Utilizado para operar y modificar
objetos en el panel frontal y en el
diagrama de bloques.
Herramienta de seleccin automatica
Herramienta de operacin

Herramienta de desplazamiento

Herramienta de posicionamiento

Herramienta de punto de paro

y redimensin

Herramienta de prueba

Herramienta de etiquetado

Herramienta para copia de color

Herramienta de cableado

Herramienta para colorear

Herramienta de men (atajo)

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Barra de herramientas de Estado


Botn de ejecucin (Run)
Botn de ejecucin continua
(Continuous Run)
Cancelacin de ejecucin
(Abort Execution)

Botones adicionales en
el diagrama de la barra
de herramientas

Botn de pausa/continuacin

Botn de ejecucin resaltada


(Highlight Execution)

Configuracin de textos
(Text Settings)

Botn de entrada al ciclo


(Step Into)

Alineamiento de objetos
(Align Objects)

Botn sobre (Step Over)

Distribucin de objetos
(Distribute Objects)

Botn de salida del ciclo


(Step Out)

Reordenamiento
Redimensionamiento de objetos
de panel frontal (Resize Objects)
DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

VIs Expreso, VIs y Funciones

VIs Expreso: VIs interactivos con pagina de dialogo


configurable
VIs estndar: VIs modulares y personalizables mediante
cableado
Funciones: Elementos fundamentales de operacin de
LabVIEW; no hay panel frontal o diagrama de bloque Funcion

VI Expreso

VI Estandar
DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Ejemplo :Abra y Ejecute un Instrumento


Virtual
Buscador de Ejemplos

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Creando un VI
Ventana de Panel Frontal

Ventana de Diagrama de Bloques

Terminales
de
Control

Terminales
de
Indicador

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Creando un VI Diagrama de Bloques

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Consejos Para Conectar Diagrama de Bloques


Punto Caliente de Cableado

Utilice la Ruta Automtica


del Cable

Haga Clic para Seleccionar los Cables

Limpiando el Cableado

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Ejemplo: Creando un VI
Ventana del Panel Frontal

Indicador
Grafico

Control
Numrico

Seal del sensor


20C/volt

Conversin:
F=(9/5)(C)+32

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Programando el Flujo de Datos


El diagrama de bloque se ejecuta
dependiendo del flujo de los datos;
el diagrama de bloques NO se
ejecuta de izquierda a derecha
El nodo se ejecuta cuando los
datos estn disponibles para
TODOS los terminales de entrada.
Los nodos suministran datos a
todos los terminales de salida
cuando termina.
DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Opciones de Ayuda
Contexto de la Ayuda

Ayuda en lnea
Congelar Ayuda
Ayuda del Diagrama Simple/Complejo
Ctrl + H

Referencias en Lnea
Todos los mens en lnea
Clic en las funciones del diagrama para tener acceso directo a
la informacin en lnea.

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Nodos de Formula
En la subpaleta de Estructuras (Structures).
Implementa ecuaciones complicadas.
Variables creadas en los mrgenes
Nombres de variables son sensibles (maysculas/minsculas)
Cada declaracin debe de terminar con un punto y coma(;)
La ventana de ayuda muestra las funciones disponibles.
Note el Punto y coma

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Tcnicas para Eliminar Errores


Encontrando los Errores
Haga clic en el botn de correr que esta roto;
Aparece una ventana mostrando los errores

Resaltar la Ejecucin

Haga clic en el botn de ejecucin resaltada; el


flujo de datos es animado utilizando burbujas.
Los valores se despliegan en los cables.

Herramienta de Prueba

Haga clic con el botn derecho sobre el cable para


exhibir la ventana de prueba y as mostrar los
datos mientras fluyen por el segmento de cable.
Tambin puede seleccionar la herramienta de
prueba desde la paleta de herramientas y hacer un
clic en el cable.

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Seccin II SubVIs

Que es un subVI?
Elaboracin de un icono
y un conector para un
subVI
Utilizando un VI como un
subVI
DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Nodos del Diagrama de Bloques


Icono

Nodo Expandible

Nodo Expandido

VI de Generador de Funciones
El mismo VI, visto en tres maneras
diferentes.
El campo amarillo designa un VI Estndar.
El campo azul designa un VI Expreso
DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

SubVIs
Un SubVI es un VI que puede ser utilizado dentro de
otro VI
Similar a una subrutina
Ventajas
Modular
Fcil para eliminar errores
No tiene que crear cdigos
Requiere menos memoria

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Las Funciones de LabVIEW y los SubVIs operan


como Funciones en otros lenguajes
Funcin de Pseudo Cdigo
function average (in1, in2, out)
{
out = (in1 + in2)/2.0;
}

SubVI Diagrama de Bloques

Llamando Programa con Pseudo


Cdigo
main
{
average (in1, in2, pointavg)
}

Llamando al VI en el
Diagrama de Bloques

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Icono y Conector

Icon
Terminals

Un icono representa un VI en otro


diagrama de bloque
El conector muestra terminales
disponibles para transferir datos

Connector

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

SubVIs

Sub VIs

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Pasos para crear un SubVI


Crear el icono
Crear el conector
Asignar terminales
Salvar el VI
Insertar el VI dentro del VI principal

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Crear el Icono
Haga click derecho sobre el icono en el
diagrama de bloque o panel frontal

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Crear el Conector
Haga click derecho sobre el icono (solamente en el panel frontal)

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Asignar Terminales

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Salvar el VI
Escoja un sitio o un flder fcil de recordar
Organizar por funcionalidad
-salvar los VIs similares en un mismo directorio (Ej. Utilidades
matemticas)
Organizar por aplicacin
Salvar todos los VIs Usados para una Aplicacin Especifica dentro de
un directorio o un archivo de librera (Ej. Lab 1 Frecuencia de
respuesta)
Archivo de librera (.llbs) combina todos los VIs en un solo archivo, ideal para
transferir aplicaciones enteras a travs de computadoras

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Insertar el SubVI dentro de un VI Principal


Acceder subVIs creados por el usuario
Funciones >> All Functions >> Seleccione
un VI o
arrastre el icono hasta el diagrama deseado

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Ejemplo:
Crear un SubVI del convertidor de temperatura.

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Tips para trabajar en LabVIEW


Atajos desde el teclado
<Ctrl-H> Activa/Desactiva la Ventana de Ayuda
<Ctrl-B> Remueve todos los cables rotos del diagrama de bloques
<Ctrl-E> Cambiar entre el Panel Frontal y el Diagrama de Bloques
<Ctrl-Z> Deshacer cambios Undo (tambin disponible en el menu
de edicin)

Herramientas Opciones Establecer Preferencias en


LabVIEW
Propiedades del VI Configurar la Apariencia del VI,
Documentacin, etc.

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Adquisicin de Datos en LabVIEW

NI-DAQ Tradicional
VIs especficos para
realizar:
Entrada Anloga
Salida Anloga
I/O (entrada/salida)
Digital
Operaciones de conteo

NI-DAQmx
Controlador (Driver) de
siguiente generacin:
VIs para ejecutar una
tarea
Un serie de VIs para
todos los tipos de
mediciones

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

DAQ Adquisicin De Datos


Adquisicin de temperatura utilizando el Asistente de DAQ
(DAQ Assistant)

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Terminologa De la Adquisicin De Datos


Resolucin Determina cuantos diferentes cambios de voltajes
pueden ser medidos
Resolucin mas grande Una representacion mas exacta de la
seal

Rango Voltajes mnimos y mximos


Rango mas pequeo Una representacin mas precisa de la
seal

Gain (ganancia) Amplifica o atena la seal para un mejor


ajuste del rango

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Conexiones de Hardware
BNC-2120

SC-2075
NI-ELVIS
SCB-68

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Ejemplo Adquisicin de Datos Simples


Complete el VI de conversin de C a F (Conversion C a
F.vi), y despus cree el VI Termmetro (Thermometer.vi).

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Seccin IV Ciclos y Grficas


For Loop (Ciclo Para)
While Loop (Ciclo Mientras)
Grficas
Multiplots

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Ciclos
Ciclo While
Tiene una Terminal de Iteracin
Siempre corre al menos una vez
Corre de acuerdo a la Terminal
Condicionante

Ciclos For
Tiene una Terminal de Iteracin
Corre de acuerdo a la entrada
N de la Terminal de Conteo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Ciclos (cont.)
1. Seleccionar el ciclo

2. Encerrar cdigo que va a ser repetido

3. Arrastrar nodos adicionales y luego cablear

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Grficas

Grfica de forma de onda


indicador nmerico especial
que puede mostrar una historia
de valores
Controles >> Indicadores de
Grficas >> Grfica de forma
de onda

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Cableando Datos a las Grficas


Grafica de diagrama simple

Grafica de diagrama mltiple

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Ejemplo Usando ciclos


Estudiantes construyen un VI con un Ciclo.vi.

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Seccin V Arreglos & Manejo de Archivo (File I/O)


Construir arreglos manualmente
Dejar que LabVIEW construya arreglos
automticamente
Escribir a un archivo de hoja de clculo (spreadsheet)
Leer desde un archivo de hoja de clculo (spreadsheet)

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Agregando un Arreglo al Panel Frontal


Desde la sub-paleta de Controls >> All Controls
>> Array and Cluster, seleccione el Array Shell

Colquelo en la pantalla.

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Agregando un Arreglo (cont.)


Situ el objeto de datos dentro del shell (Ej. Control Numrico)

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Creando un Arreglo con un Ciclo


Los ciclos acumulan arreglos en sus limites.

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Creando Arreglos Bidimensionales (2D)

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Construyendo Arreglos con Ciclos (Auto-Indexando)


Los ciclos pueden
acumular arreglos auto
indexados en sus bordes
Los ciclos For se auto
indexan por defecto
Los ciclos While sacan
solo el valor final por
defecto
Un clic derecho en el
tnel habilita /
deshabilita el auto
indexado

Auto-Indexado Habilitado
El cable engrosa su tamao

Arreglo de 1D
0

1 2

4 5

Auto-Indexado Deshabilitado
El cable conserva su
tamao

Solo un valor (ltima


iteracin) pasa fuera del
ciclo
DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Funciones de los Arreglos Lo Basico


Functions >> All Functions >> Array

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Funciones de los Arreglos Construccin de un Arreglo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Cmo tomo decisiones en LabVIEW?


1. Estructuras Caso (case)

(a)

(b)

2. Seleccin (select)

(c)
DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Repaso de los tipos de Datos hallados en LabVIEW

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Cmo controlo el Tiempo de un Ciclo?


1. Ciclo de Retardo de Tiempo (Time Delay)
Configura el VI Expres Time Delay para segundos de espera en
cada iteracin del ciclo (funciona en ciclos For y While).

2. Ciclos Temporizados
Configura el ciclo especial temporizado While para un retraso en
tiempo deseado.

Retardo de Tiempo

Ciclo Temporizado
DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Ejemplo:
Realizar un programa generar la
secuencia de movimiento de un motor
de pasos.
Colocar un dial (control numrico) para
poder variar el tiempo entre cada dato.
Colocar un control booleano para el
cambio del sentido de giro del motor.

Valor decimal

Valor
Hexadecimal

0011

0110

12

1100

1001

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Grficos
Seleccionados desde la Paleta de Controles del Menu
Controls >> All Controls >> Graphs
Grafico de Forma de Onda
(Waveform Graph) Grafica un
arreglo de numeros en contra de sus
indices
Grafico XY Expreso (Express XY
Graph) Grafica un array en contra
de otro
Grafico de Forma de Onda Digital
(Digital Waveform Graph)
Grafica bits de datos binarios
DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Grficos

Haga Clic Derecho en la grafica y seleccione Properties


(propiedades) para poder personalizar interactivamente
DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Ejercicio 5 Usando Graficos de Forma de Onda


(Waveform )

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Shift Register
Disponible en los bordes derecho e izquierdo de los ciclos y
estructuras
Con un clic derecho en el borde y selecciona Add Shift
Register
El terminal derecho guarda el dato al terminar la iteracin
La terminal izquierda provee el dato al comenzar la nueva
iteracin
Valor
Inicial

Antes de
que Inicie
el Ciclo

Primera
Iteracin

Segunda
Iteracin

Ultima
Iteracin
DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Valor 3

Variables Locales
Las Variables Locales permiten que los datos pasen a travs de los
ciclos.
Un solo control o indicador puede ser escrito o ledo por ms de
una ubicacin en el programa
Las Variables Locales rompen con el paradigma de que el flujo de datos
debe ser usado en un orden concreto.

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Estructuras de Secuencia
En la subpaleta de control de ejecucin (Execution Control) de la paleta de funciones.
Ejecuta diagramas secuencialmente.
Presionar botn derecho del mouse para agregar un nuevo cuadro (frame).

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Ejemplo:
Realizar un programa para indicar las
secuencia de encendido de las luces de
un semforo.
La luz verde debe durar 5 segundos y la
luz mbar 3 segundos.

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Almacenamiento de datos en un archivo.

Para guardar datos en un archivo nuevo se han de seguir


tres pasos:

1.
2.
3.

Crear un archivo nuevo


Escribir los datos en el archivo
Cerrar el archivo
Tambin podemos abrir uno ya existente y aadir
informacin al final de ese fichero o sobrescribir su
contenido.

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Para crear un archivo nuevo, hay que proporcionar el nombre del archivo y de la localizacin del archivo
(pathname) dentro del VI.
Indicar que funcin se quiere hacer con el archivo:

Abrir
Abrir/crear
Crear/remplazar
Crear
Abrir (solo lectura)
Dicha funcin devuelve un nmero de referencia (refnum), este parmetro es un identificador de archivo
generado cuando se crea un archivo o se abre uno ya existente, identifica el archivo en la operaciones
subsiguientes.
Este nmero de referencia hay que pasrselo de una funcin File I/O a otra.
un directorio y escribir el nombre del archivo.

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Modelos para Programacin de Archivos E/S


Abre / Crea /
Remplaza
Archivos

Lee y / o
Escribe
Archivos

Cierra
Archivos

Busca
Errores

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Recuperacin de datos desde un archivo.


Cuando se lee desde un archivo, normalmente lo
abrimos, leemos el contenido en forma de string o
cualquier otro tipo de datos y cerramos el fichero.
Los datos se deben leer con el mismo formato con el que
se almacenaron.
Indicar el nmero de datos a leer del archivo.

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Manejo de Archivos (File I/O)


Manejo de Archivos transferir datos a y desde archivos
- Los Archivos pueden ser binarios, texto u hojas de calculo
- Escritura/Lectura de Archivos de Medicin de LabVIEW
(LabVIEW Measurements *.lvm)
Escritura en Archivo LVM
Lectura de un Archivo LVM

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Escritura de Archivos de Medicin LabVIEW


(LabVIEW Measurement)
Incluye las funciones de apertura, escritura, cierre y manejo de errores
Maneja el formateo de cadenas de caracteres (strings) ya sea con
delimitacin por medio de tab o de coma
La funcin de concatenar seales es usada para combinar datos en
datos de tipo dinmico

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Ejemplo Analizando e Introduciendo Datos


Los Estudiantes construyen el VI Logger de Temperatura.vi

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Ejemplo:

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Seccin VII Cadenas de Caracteres, Clusters,


& Manejo de Errores
Cadenas de caracteres
Creando Clusters
Funciones de los Clusters
I/O Error

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Cadenas de caracteres
Una cadena es una secuencia de caracteres desplegables o
no desplegables (ASCII)
Tienen muchos usos despliegue de mensajes, Control de
instrumentos, Archivos de entrada y Salida (I/O)
El controlador/indicador de cadenas se encuentra en
Controls Text Control o Text Indicator

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Clusters
Estructura de Datos que agrupa datos juntos.
Los Datos pueden ser de diferentes tipos.
Semejante a una estructura (struct) en C++
Los elementos deben de ser ya sea, todos
Controles o todos Indicadores
Se puede considerar como un conjunto de
alambres agrupados en un cable.

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Creando un Cluster
1. Seleccionar la pre-forma (shell) del Cluster

Controls >> All Controls >> Array & Cluster

2. Colocar Objetos dentro de la pre-forma (shell)

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Funciones del Cluster


Estn ubicadas en la subpaleta de Cluster de la
paleta Functions>>All functions.
Tambin puede ser accesada haciendo clic con el
botn derecho del mouse en la terminal del Grupo.

Bundle
(Agrupar)

(Las etiquetas de la
terminal reflejan los
tipos de datos)

Bundle by name
(Agrupar por nombre)
DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Funciones del Cluster


Unbundled
(separar)

Unbundled by name
(separar por nombre)

Ejemplo de un
Cluster separado
(Unbundled Cluster)

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Errores de Cluster
Los Errores de Cluster contienen la siguiente informacin:
Booleano (Boolean) Para reportar si surgi algn error
Enteros (Integer) Para reportar errores especficos de cdigos
Cadena (String) Para brindar informacin acerca del error

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Tcnicas de Manejo de Errores


La informacin de un Error es transmitida de un subVI al siguiente
Si un Error ocurre en un subVI, todos los subVI subsecuentes no sern
ejecutados de la manera usual
Los errores de Cluster contienen todas las condiciones del Error
Manejo automtico de Errores

Errores de Cluster

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Estructuras Caso
En la subpaleta de estructura de las paleta de funciones.
Encerrar los nodos o arrastrarlos hacia adentro de la estructura.
Colocados como un juego de cartas (naipes), solo un caso es visible a la vez.

Functions >> Execution control

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Seccin X Arquitectura Bsica de Programacin


Arquitectura VI de un simple
Arquitectura de un VI General
Arquitectura de maquina de estado

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Arquitectura de un VI simple
VI funcional que produce resultados al ser ejectado
No tiene opciones para comienzo o fin
Adecuado: para pruebas de laboratorio, clculos
Ejemplo: Convertir C a F.vi

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Arquitectura de un VI General
Tres pasos principales
Inicio
Aplicacin principal
Cierre (shutdown)

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Mquinas de estado
Adquisicin

Estado
presente

Muestras
completas
Entrada
Filtrado

Estado
siguiente

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Tiempo

Inicio
Estado
1

Inicializacin de
variables.
Abrir archivos.
Abrir y configurar
puertos de
comunicacin.

Cerrar archivos.
Cerrar puertos de
comunicacin.
Estado
3

Case
Stop

While
Fin

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Mquinas de estado
Inicio
Estado
1

Estado
6

Entrada 2

Estado
2

Entrada 4

Entrada 3
Estado
5

Entrada 1

Estado
3
Estado
4

STOP

Ing.SerafinCastaedaCedeo

Fin

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Arquitectura de Maquina de Estado


Ventajas

Puede ir de cualquier estado a otro


Fcil de modificar y depurar

Desventajas

Se pierden eventos si dos ocurren al


mismo tiempo
Pasos:
0: Inicio (Startup)
1: Ocio (Idle)
2: Evento 1
3: Evento 2
4: Cierre
(Shutdown)

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Ejemplo Mquina de Estado

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Ejercicio 5 Aplica lo aprendido

Tomar una muestra cada


segundo

Almacenar en archivo .txt:


Temp Tmin Tmax Tipo de Alarma
DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Seccin XI Panel Frontal Remoto


Observar y Controlar Paneles Frontales de LabVIEW
desde un Navegador en la Web
No Requiere Programacin
Usuarios en lugares Remotos pueden ver en Tiempo
Real las Actualizaciones del Panel Frontal
Mltiples clientes pueden Observar el Panel Frontal
Simultneamente
Solo un Cliente Puede Controlar el Panel Frontal a la vez

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Herramienta para la Publicacin de un Panel Remoto


Tools Web Publishing Tool
Clic Salvar a Disco y el
VI es embebido a un
archivo HTML
Despus que el
archivo a sido grabado,
puede ser reabierto y
personalizado en
cualquier editor HTML

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

El estndar RS-232
El RS232 Recommended Standard 232, est definido en las especificaciones ANSI
(American National Standard Institution) como la interface entre un equipo terminal de
datos y un equipo de comunicacin de datos empleando un intercambio en modo serie
de datos binarios.
Normalmente, los dispositivos que intervienen en una comunicacin serie son el Equipo
Terminal de Datos (ETD), que suele ser una PC y el Equipo de Comunicacin de Datos
(ECD) que suele ser un modem un perifrico.

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Utilizacin del puerto serie mediante


LabVIEW.
LabVIEW proporciona herramientas de gran utilidad para el
manejo del puerto serie. Todas las funciones que son
necesarias a la hora de realizar una comunicacin serie entre
la PC y un perifrico se encuentran ya programadas en forma
de Instrumentos Virtuales (VIs). De esta forma, la utilizacin
del puerto serial es transparente al programador de LabVIEW.

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Es importante tener en cuenta que los pasos a


seguir al utilizar el puerto serie los siguiente:

1.

Realizar la configuracin del puerto serie, inicializndolo segn las


caractersticas que se deseen para la comunicacin.
Acceder al puerto serie para recibir o enviar datos tantas veces como
se desee.
Cerrar el puerto serie para dejarlo libre para otra aplicacin.

2.
3.

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Configuracin del puerto serie.


Aqu hay que indicar a la PC cmo ha de actuar en las comunicaciones, es decir,
qu puerto se ha de utilizar, con qu velocidad de transmisin ha de emitir y recibir
bytes, que tipo de paridad, etc.

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Lectura del puerto serie


Una vez configurado el puerto serie y establecida la comunicacin es posible que el perifrico
haya transferido datos a la PC. Para el programador, este proceso de recepcin de datos es
transparente, es decir, es el propio puerto serie quien se encargar de gestionar la comunicacin
con el perifrico si ste desea enviar informacin.
Una vez terminada la transferencia, los datos recibidos quedan almacenados en el buffer de
recepcin, en espera de que sean ledos
Ahora bien en el momento en que se quiera acceder a la informacin recibida para poder tratarla,
es necesario programar un acceso de lectura al puerto.

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Esta lectura se realiza con el VI VISA Read

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Escritura del puerto serie.


El mtodo que se sigue para transferir informacin a un perifrico es utilizar el
icono VISA write.

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Ing.SerafinCastaedaCedeo

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Ejemplo
Realizar un programa para leer informacin por el puerto serial de un lector de RF
(Microreader de TIRIS), el cual cada que recibe un TAG valido, enva por su puerto serial
(9600,8,N,1) una trama de 12 bytes.
De la trama obtenida, sacar el TAG ID y compararlo con uno conocido, si son iguales,
almacenar en un archivo el ID, la hora y la fecha e indicar con una variable boolena que el ID
coincide.

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.

Byte

Contenid
o

Comentario

Descripcin

01

Start Mark

09

Length

9 bytes seguidos, excluyendo BCC

0C

Status

Tag valido

**

Data Field (1)

Tag ID (LSB)

**

Data Field (2)

**

Data Field (3)

**

Data Field (4)

**

Data Field (5)

**

Data Field (6)

**

Data Field (7)

10

**

Data Field (8)

Tag ID (MSB)

11

**

BCC

Deteccin de error

DEPARTAMENTO DE
INGENIERIA
MECATRNICA.