UNH
Ing. Electrónica
SISTEMAS EMBEBIDOS
SOFTWARE PARA SIMULACIÓN,
INSTRUMENTACIÓN Y CONTROL DE
PROCESOS INDUSTRIALES
LabVIEW 2020
Semana 3 (Sesión 5,6)
Profesor: Mg. Javier Camilo Poma Palacios
Engineering’s Software Development
Pampas - 2021
¿Qué es LabVIEW?
Potente HERRAMIENTA de PROGRAMACIÓN
Ambiente COMPLETO de DESARROLLO de SOFTWARE
Lenguaje de Programación BASADO en GRÁFICOS (Lenguaje G)
Programación basada en Flujo de Datos
Ampliamente usado en Instrumentación, Simulación
y Control de Procesos.
Flexible, Modular y con un entorno de programación
muy amigable.
Evolución de la Programación
EL ENTORNO DE LABVIEW Panel frontal Diagrama de bloques Opciones de ayuda
Instrumentación Industrial
SISTEMAS DE CONTROL POR:
- SÓLO INSTRUMENTOS DE LA MISMA MARCA
- LÓGICA DIFUSA
- SIN REGISTRO HISTÓRICO DE DATOS - REDES NEURONALES
- Con AUTOAPRENDIZAJE
- SISTEMAS PURAMENTE ELECTRÓNICOS
- SCADA, HMI, DSC…
EL ENTORNO DE LABVIEW Panel frontal Diagrama de bloques Opciones de ayuda
Evolución de la Instrumentación Industrial
TEMPERATURA:
PRESIÓN:
EL ENTORNO DE LABVIEW Panel frontal Diagrama de bloques Opciones de ayuda
Instrumentación Industrial (3 Niveles)
EL ENTORNO DE LABVIEW Panel frontal Diagrama de bloques Opciones de ayuda
Instrumentación Industrial (3 Niveles)
EL ENTORNO DE LABVIEW Panel frontal Diagrama de bloques Opciones de ayuda
Instrumentación Virtual
EL ENTORNO DE LABVIEW Panel frontal Diagrama de bloques Opciones de ayuda
Módulos y Toolkits de LabVIEW
EL ENTORNO DE LABVIEW Panel frontal Diagrama de bloques Opciones de ayuda
Aplicaciones de LabVIEW (HMI, SCADA)
EL ENTORNO DE LABVIEW Panel frontal Diagrama de bloques Opciones de ayuda
Aplicaciones de LabVIEW (Dynamic’s,RT)
EL ENTORNO DE LABVIEW Panel frontal Diagrama de bloques Opciones de ayuda
LabVIEW el software más usado
Survey, 2006 Global Product Awareness Tracking Study. Thinking of Data Acquisition and Instrument
Control Software, WHICH OF THE FOLLOWING SOFTWARE PACKAGES DO YOU USE THE MOST?
Responses receiving less than 4% mentions aren’t reported in the chart above. Other and none are not
reported in the chart above. Total respondents =1006, margin error +/- 2.59%.
EL ENTORNO DE LABVIEW Panel frontal Diagrama de bloques Opciones de ayuda
El entorno de programación LabVIEW
Panel Frontal: Diagrama de Bloques:
Interfaz de Usuario Programación Lógica
EL ENTORNO DE LABVIEW Panel frontal Diagrama de bloques Opciones de ayuda
¿Qué es un VI?
Los programas en LabVIEW son llamados VI’s.
VI (Virtual Instrument), es un modulo software que simula el panel frontal de un
Instrumento ó Equipo Real de medición de variable físicas.
Cumple una función idéntica a la de un instrumento real (mide una magnitud física con
una Diferencia en precisión y tiempo).
Se apoya en elementos de hardware accesibles por el ordenador (GPIB, RS-232, RS-
485, USB, etc...), puede administrar muchos dispositivos (de distintos fabricantes)
simultáneamente.
VIRTUAL INSTRUMENT INSTRUMENTO REAL
PROGRAMACION en LABVIEW Creación de un VI Tipo de datos Edición Depuración
TRES PARTES FUNDAMENTALES DE UN VI
1. El PANEL FRONTAL
• Diseño artístico (SCADA - DSC)
• Elementos gráficos para el diseño de la interfaz de usuario.
• Opciones para personalizar nuestra aplicación.
• Control y monitoreo remoto desde la web.
EL ENTORNO DE LABVIEW Panel frontal Diagrama de bloques Opciones de ayuda
TRES PARTES FUNDAMENTALES DE UN VI
2. El DIAGRAMA DE BLOQUES
• Programación lógica
• Estructura ó Código del programa.
• Puede no estar visible, si así lo desea el programador
(recursos de seguridad).
EL ENTORNO DE LABVIEW Panel frontal Diagrama de bloques Opciones de ayuda
TRES PARTES FUNDAMENTALES DE UN VI
3. El ICONO/CONECTOR
Temperatura (F) Temperatura (°C)
Elemento gráfico:
Representa la huella digital del programa, ya
que el ícono identifica al VI dentro de otro
Icono diagrama de bloques de orden superior y lo
diferencia de otros.
Terminales
El conector muestra los terminales
disponibles para transferir datos.
Conector
EL ENTORNO DE LABVIEW Panel frontal Diagrama de bloques Opciones de ayuda
TRES PARTES FUNDAMENTALES DE UN VI
3. El ICONO/CONECTOR
Sub VIs
SubVIs
TRES PARTES FUNDAMENTALES DE UN VI
Pasos para crear un SubVI
Crear el icono
Crear el conector
Asignar terminales
Salvar el VI
Insertar el VI dentro del VI principal
TRES PARTES FUNDAMENTALES DE UN VI
Crear el Icono
Haga clic derecho sobre el icono en el diagrama de bloque o panel frontal
TRES PARTES FUNDAMENTALES DE UN VI
Crear el Conector
Haga click derecho sobre el icono (solamente en el panel frontal)
TRES PARTES FUNDAMENTALES DE UN VI
Asignar Terminales
TRES PARTES FUNDAMENTALES DE UN VI
Salvar el VI
Escoja un sitio o un fólder fácil de recordar
Organizar por funcionalidad
salvar los VIs similares en un mismo directorio (Ej. Utilidades
matemáticas)
Organizar por aplicación
Salvar todos los VIs Usados para una Aplicación Especifica dentro de un directorio o
un archivo de librería (Ej. Lab 1 – Frecuencia de respuesta)
Archivo de librería (.llbs) combina todos los VIs en un solo archivo, ideal para transferir
aplicaciones enteras a través de computadoras
PANEL FRONTAL de un VI
Nombre
del VI ÍCONO
Barra de del VI
Menú
Barra de Legenda
Estado del gráfico
Gráfico de
Carta
Control
Booleano
PROGRAMACION en LABVIEW Creación de un VI Tipo de datos Edición Depuración
DIAGRAMA DE BLOQUES de un VI
Barra de
Menú
Barra de Temporizador
Estado
Cableado
de datos Terminal
Gráfico
Constante
Numérica
Lazo WHILE Función Función Terminal
División Seno Booleano
PROGRAMACION en LABVIEW Creación de un VI Tipo de datos Edición Depuración
TRES PALETAS IMPORTANTES (ventanas flotantes)
PALETAS DE CONTROLES Y FUNCIONES
Paleta de controles Paleta de funciones
(Activo en el Front Panel) (Activo en el Block Diagram)
PROGRAMACION en LABVIEW Creación de un VI Tipo de datos Edición Depuración
TRES PALETAS IMPORTANTES (ventanas flotantes)
PALETA DE HERRAMIENTAS
(IMPORTANTE: DEBE ESTAR SIEMPRE ACTIVA)
• Paleta flotante
• Usado para operar y/o modificar objetos del
panel frontal ó diagrama de bloques
Herramienta de seleción automática
Herramienta de operación Scrolling Tool
Positioning/Resizing Tool Breakpoint Tool
Labeling Tool (Texto) Probe Tool
Wiring Tool (Cableado) Herramienta copiado de color
Shortcut Menu Tool Herramienta coloreado
PROGRAMACION en LABVIEW Creación de un VI Tipo de datos Edición Depuración
BARRA DE ESTADO
EJECUTAR UNA VEZ
EJECUTAR CONTINUAMENTE
DETENER EJECUCION
Botones adicionales del
Pause/Continue Button Diagrama de Bloques
Configurar texto EJECUCION INTERACTIVA
Alinear objetos
Step Into Button
Distribuir objetos
Step Over Button
Reordenar objetos
Step Out Button
Redimensionar objects
PROGRAMACION en LABVIEW Creación de un VI Tipo de datos Edición Depuración
PROGRAMACIÓN DE UN VI EN
LABVIEW
CREAR OBJETOS EN EL PANEL FRONTAL
REGLA PARA CREAR UN OBJETO:
1. ASIGNARLE UN NOMBRE Ó ETIQUETA AL OBJETO [UNIDADES]
2. HABILITAR EL INDICADOR DIGITAL SI DISPONE.
3. PERSONALIZAR EL OBJETO.
PROGRAMACION en LABVIEW Creación de un VI Tipo de datos Edición Depuración
PROGRAMACIÓN DE UN VI EN LABVIEW
Programación basada en Flujo de Datos
• El diagrama de bloques se ejecuta
basado en el flujo de datos y de
izquierda a derecha (aunque no
necesariamente).
• Para que un resultado se pueda obtener
primero deben estar completos todos los
datos de entrada de la función (ó nodo).
• Las funciones proveen de resultados a
todos las terminales de salida.
PROGRAMACION en LABVIEW Creación de un VI Tipo de datos Edición Depuración
Opciones de ayuda
Contexto de la ayuda
• Ayuda en línea
• Congelar Ayuda
• Ayuda del Diagrama Simple/Complejo
Ctrl + H.
Referencias en línea
• Todos los menús en línea
• Clic en las funciones del diagrama para tener
acceso directo a la información en línea.
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 (también disponible en e menú
de edición).
Herramientas » Opciones… – Establecer Preferencias en LabVIEW
Propiedades del VI – Configurar la Apariencia del VI, Documentación,
etc.
PROGRAMACIÓN DE UN VI EN LABVIEW
Tipos de Datos en LabVIEW
EN LABVIEW LOS DISTINTOS TIPOS DE DATOS SE DIFERENCIAN POR EL COLOR DEL TERMINAL CORRESPONDIENTE
EN EL DIAGRAMA DE BLOQUES, ESTOS SON:
1. BOOLEANO: (VERDE)
Datos lógicos de verdadero=1, falso=0
2. NUMÉRICO: (NARANJA, AZUL)
Datos numéricos de precisión Extendida, doble, simple, entero,
complejos y otros.
3. STRING: (ROSA)
Datos tipo texto (cadena de caracteres letras ó números)
4. PATH: (VERDE OSCURO)
Datos de caracteres que indican la ubicación de un archivo
5. CLÚSTER: (MARRÓN ó ROSA)
Conjunto de datos iguales o diferentes (numérico, booleano, string etc…)
PROGRAMACION en LABVIEW Creación de un VI Tipo de datos Edición Depuración
Tipos de Datos en LabVIEW
LOS ARREGLOS DE DATOS SON UN CONJUNTO DE DATOS DEL MISMO TIPO, AGRUPADOS EN UN SOLO
TERMINAL, Ejm: Vectores 1d, Matrices 2d, Tensores 3d-nd:
1. ARRAY NUMÉRICO NARANJA :
Arreglo de datos numéricos de doble precisión, ó
enteros.
2. ARRAY BOOLEANO :
Arreglo de datos booleanos.
3. ARRAY STRING :
Arreglo de datos tipo string.
PROGRAMACION en LABVIEW Creación de un VI Tipo de datos Edición Depuración
Tipos de Datos en LabVIEW
Approximate Number of Decimal
Terminal Numeric Data Type Bits of Storage on Disk Approximate Range
Digits
32 6 Minimum positive number: 1.40e–45
Single-precision, floating- Maximum positive number: 3.40e+38
point Minimum negative number: –1.40e–45
Maximum negative number: –3.40e+38
64 15 Minimum positive number: 4.94e–324
Double-precision, floating- Maximum positive number: 1.79e+308
point Minimum negative number: –4.94e–324
Maximum negative number: –1.79e+308
128 varies from 15 to 20 by platform Minimum positive number: 6.48e–4966
Extended-precision, floating- Maximum positive number: 1.19e+4932
point Minimum negative number: –6.48e–4966
Maximum negative number: –1.19e+4932
Complex single-precision, 64 6 Same as single-precision, floating-point for each (real and
floating-point imaginary) part
Complex double-precision, 128 15 Same as double-precision, floating-point for each (real and
floating-point imaginary) part
Complex extended-precision, 256 varies from 15 to 20 by platform Same as extended-precision, floating-point for each (real and
floating-point imaginary) part
64, or 72 if you include an varies by user configuration varies by user configuration
Fixed-point
overflow status
Byte signed integer 8 2 –128 to 127
Word signed integer 16 4 –32,768 to 32,767
Long signed integer 32 9 –2,147,483,648 to 2,147,483,647
Quad signed integer 64 18 –1e19 to 1e19
Byte unsigned integer 8 2 0 to 255
Word unsigned integer 16 4 0 to 65,535
Long unsigned integer 32 9 0 to 4,294,967,295
Quad unsigned integer 64 19 0 to 2e19
128 19 Minimum time: 01/01/1600 [Link]
128-bit time stamp UTC maximum time: 01/01/3001 [Link] UTC
PROGRAMACION en LABVIEW Creación de un VI Tipo de datos Edición Depuración
Creación de un VI en LabVIEW
Ventana del panel frontal
Ventana del diagrama de bloques
Terminales Terminales
tipo control tipo indicador
PROGRAMACION en LABVIEW Creación de un VI Tipo de datos Edición Depuración
Como cablear un Diagrama de Bloques
CABLEAR USANDO SELECCIONAR CABLES USANDO
HERRAMIENTA CABLEADO HERRAMIENTA SELECCIÓN (FLECHA)
(CARRETE DE HILO)
Usar la ruta de PARA OPTIMIZAR EL CABLEADO
cableado CLICK derecho y Clean Up Wiring ó USAMOS:
automático
PROGRAMACION en LABVIEW Creación de un VI Tipo de datos Edición Depuración
Técnicas de depuración en LabVIEW
• BUSCANDO ERRORES
Click en el Botón Ejecutar (flecha fraccionada)
Aparece una ventana con los errores
• EJECUCION INTERACTIVA
Click en Ejecución interactiva, el flujo de datos
es animado y los valores mostrados.
• HERRAMIENTA PRUEBA
Click en el cable para mostrar el valor que trasnporta.
Se usa cuando el VI se esta ejecutando.
Se selecciona la herramienta prueba (Probe) de la
paleta de herramientas.
EL ENTORNO DE LABVIEW Panel frontal Diagrama de bloques Opciones de ayuda
Opciones de ayuda
EL ENTORNO DE LABVIEW Panel frontal Diagrama de bloques Opciones de ayuda
CICLOS Y ESTRUCTURAS EN
LABVIEW
Crear y Utilizar Lazos y Estructuras
1. SELECCIONAR EL TIPO DE LAZO 2. ENCERRAR LOS OBJETOS DENTRO DEL LAZO
3. ARRASTRAR O CABLEAR LOS TERMINALES FALTANTES
CICLOS Y ESTRUCTURAS EN LABVIEW WHILE FOR CASE SEQUENCE FORMULA NODE
Ciclo WHILE
Temporizador
Ejecuta el código encerrado dentro del lazo.
El lazo se ejecuta indefinidamente hasta que
el terminal condicional lo dispone.
Posee un terminal de iteración y un terminal
condicional
Tiene dos modos de operación
Stop: TC verdadero
Stop: TC falso
El tiempo de ejecucion puede ser controlado
Terminal de Control del Terminal
Iteración Ciclo Condicional
con un temporizador.
CICLOS Y ESTRUCTURAS EN LABVIEW WHILE FOR CASE SEQUENCE FORMULA NODE
Temporizadores
Son herramientas que nos permiten controlar el tiempo de ejecución de un ciclo o del programa en
general según sea configurado.
El tiempo configurado se encuentra en segundos y dependiendo del valor ingresado se retrasa o
acelera la ejecucion del ciclo. Por ejm. 1=1 segundo en tiempo real, 0.5=equivale a medio
segundo en tiempo real, etc…
CICLOS Y ESTRUCTURAS EN LABVIEW WHILE FOR CASE SEQUENCE FORMULA NODE
Ciclo FOR
Ejecuta el código encerrado dentro
del lazo.
El lazo se ejecuta N-veces según
lo indique el terminal contador.
Posee un terminal de iteración.
El tiempo de ejecución puede ser Terminal de
Iteración Temporizador
controlado con un temporizador.
CICLOS Y ESTRUCTURAS EN LABVIEW WHILE FOR CASE SEQUENCE FORMULA NODE
Estructura CASE
Ejecuta el código encerrado dentro
del caso verdadero o falso según
el control.
Posee un indicador del caso que
se esta ejecutando.
La estructura es controlada
mediante una entrada booleana.
Terminal Indicador
condidional del caso
CICLOS Y ESTRUCTURAS EN LABVIEW WHILE FOR CASE SEQUENCE FORMULA NODE
Estructura SEQUENCE
Ejecuta secuencialmente el código Flat Stacked
Sequence Sequence
encerrado dentro de cada caso o escena
ordenadamente.
El flujo de datos es de izquierda a derecha.
La estructura puede intercambiarse entre el
modo Flat o el modo Stacked.
Indicador
El tiempo de ejecución puede ser del caso o escena
controlado con un temporizador.
CICLOS Y ESTRUCTURAS EN LABVIEW WHILE FOR CASE SEQUENCE FORMULA NODE
Estructura NODO DE FÓRMULA
Salida numérica
(OUTPUT)
Entradas numéricas
(INPUT’s)
VARIABLES DE
VARIABLES DE SALIDA
ENTRADA
El nodo de formulas permite editar cualquier tipo de fórmula no importa su extensión y con un
Número Ilimitado de Variables y/o Constantes.
Dentro del nodo SE DIFERENCIA MAYÚSCULAS Y MINÚSCULAS de las variables de ingreso
y/o salida.
Posee una extensa galeria de funciones de formula que facilitan el desarrollo de modelos
matemáticos complejos.
CICLOS Y ESTRUCTURAS EN LABVIEW WHILE FOR CASE SEQUENCE FORMULA NODE
Funciones del NODO de FÓRMULA
Función Descripción (AMPLIA GALERIA DE FUNCIONES EN INGENIERIA)
x*y Devuelve el producto de x por y
x/y Devuelve el cociente de x entre y
x+y Devuelve la suma de x mas y
x-y Devuelve la diferencia de x menos y
abs(x) Devuelve el valor absoluto de x
exp(x) calcula el valor de e elevado a x
ln(x) calcula el logaritmo natural de x
log(x) calcula el logaritmo en base 10 de x
max(x,y) compara x con y y devuelve el mayor valor
min(x,y) compara x con y y devuelve el menor valor
mod(x,y) calcula el cociente de x entre y
rand() genera un numero aleatorio entre 0 y 1
x**y calcula el valor de x elevado a y
CICLOS Y ESTRUCTURAS EN LABVIEW WHILE FOR CASE SEQUENCE FORMULA NODE