SlideShare ist ein Scribd-Unternehmen logo
1 von 138
Downloaden Sie, um offline zu lesen
“ANÁLISIS DE SOFTWARE PARA DESARROLLO ENTORNO GRÁFICO
LABVIEW Y PROPUESTA DE IMPLEMENTACIÓN PARA
LABORATORIO EN EL INSTITUTO DE ELECTRICIDAD Y
ELECTRÓNICA EN UNIVERSIDAD AUSTRAL DE CHILE”
Trabajo de Titulación para optar al
Título de Ingeniero Electrónico
PROFESOR PATROCINANTE:
Sr. Pedro Rey Clericus
RODRIGO GONZÁLEZ CAYUFILO
RODRIGO PRADINES PINO
Valdivia, Diciembre 2007
UNIVERSIDAD AUSTRAL DE CHILE
FACULTAD DE CIENCIAS DE LA INGENIERÍA
ESCUELA DE ELECTRICIDAD Y ELECTRÓNICA
ii
PROFESOR PATROCINANTE
PEDRO REY CLERICUS ………………………………….
PROFESORES INFORMANTES
NÉSTOR FIERRO MORINEAUD …………………………………
RICARDO GUTIÉRREZ ZÚÑIGA …………………………………
FECHA ………………………………….
iii
Agradecimientos
Me puse a pensar a quién podría agradecer.
Se me hizo un nudo en la garganta.
Y me puse a llorar.
Entonces, decidí agradecer:
A Dios.
A mi familia.
A mis profesores
A mis compañeros/as.
A mis amigos/as.
Y a toda persona que ha intervenido en mi andar por la vida.
A todos ellos, gracias por el constante apoyo en este importante logro.
Luego, me puse a pensar todo lo nuevo que podría venir.
Desapareció el nudo.
Y una sonrisa, quiso ser parte de estas líneas.
Rodrigo Pradines Pino
Agradezco a todos y cada una de las personas que me acompañaron y apoyaron a cada momento,
es gracias a ellos que todo esto se hizo posible.
Agradezco a Rosa y Scarlett, mi familia, a Corina por darme las fuerzas y llegar en el momento
justo, profesores, amigos y compañeros por la paciencia prestada durante este periodo por los
momentos de alegría vividos, pero más aun por estar en los momentos de tristeza, es gracias a
ellos que ahora puedo sonreír.
Una nueva etapa comienza llego el momento de empezar a vivirla.
Rodrigo Edgardo González Cayufilo
iv
Índice de Materia
Págs.
Comisión de Titulación……………………………………………………………….… ii
Agradecimientos………………………………………………………………………... iii
Índice de Materias………………………………………………………………….…... iv - vi
Índice de Fotos e Imágenes…………………………………………….......................... vii - ix
Índice de Tablas………………………………………………………………………... x
Resumen………………………………………………………………………………... xi
Abstract…………………………………………………………………………….…... xii
I. Introducción…………………….………………………………………………. 1
1.1 Introducción………..……………………………………………….. 2, 3
II. Objetivos…………………………………………………………………..……. 4
2.1 Objetivos Generales…………………………………….………….. 5
2.2 Objetivos Específicos….………………………………….………... 5 - 8
III. El problema y su importancia…………….…………………………………….. 9
3.1 Definición del problema….…………………………………………. 10, 11
3.2 Problema del sistema….…………………………………………….. 11
3.3 Solución propuesta….………………………………………………. 11 - 12
IV. Marco teórico y referencial….…………………………………………………... 13
4.1 Compendio del capítulo……….…………………………………….. 14
4.2 LabVIEW y su importancia…………………………………………. 14 - 15
4.3 Principales usos………..…………………………………………….. 16
4.4 Principales características…..………………………………………... 16 - 17
4.5 Hardware de adquisición de datos (DAQ)……..……………………. 17 - 18
4.5.1 National Instruments y Measurement Computing ………………. 18 - 20
V. Análisis del Software – LabVIEW………..……………………………………… 21
5.1 Resumen del capítulo………………..……………………………….. 22
v
5.2 ¿Qué es un VI?...................................................................................... 22
5.3 Creando un VI………………………………………………………… 22 - 26
5.4 ¿Cómo ejecutar un VI?.......................................................................... 26 - 28
5.5 Tipos de datos……………………………………………………….... 28
5.6 Sub rutina o Sub VI………….………………………………………... 32 - 33
5.7 Estructuras de control…………………………….…………………… 34 - 39
5.8 Registro de desplazamiento……………….………………………….. 39 - 41
5.9 Nodo de fórmula…………..…………………………………………… 41 - 43
5.10 Arreglos y cluster…………………………………………………….. 43 - 46
5.11 Indicadores gráficos…..…….………………………………………... 46 - 50
5.12 Archivos I/O………………………………………………………….. 50 - 53
5.13 Variables locales y globales………………………………………….. 54 - 58
VI. Análisis Experimental…………………………………………..……………….. 59
6.1 Resumen del capítulo………….…………………………………….… 60
6.2 Instalación………….……………………………………………….…. 60 - 64
6.3 Análisis…………..………………………………………………….…. 64 - 79
VII. Proyecto laboratorio….…………………………………………………………… 80
7.1 Proyecto laboratorio………………………………………………….… 81
7.2 Resumen del proyecto…………..…………………………………….… 82
7.3 Objetivos………………………………………………………………… 82
7.3.1 Objetivos Generales ………………………….…………………. 82
7.3.2 Objetivos Específicos….……...……………………………….… 82-83
7.4 Actividades concretas para lograr los objetivos……………………..…. 83
7.5 Problema que busca resolver el proyecto...………………………….…. 83
7.6 Resultados esperados…….………………………………………….…... 84
7.7 Situación con y sin proyecto………………..………………………..…. 85
7.8 Equipamiento necesario para implementación del laboratorio.....……… 86
7.9 Espacio físico del laboratorio……………………………………….…... 86 - 89
7.10 Aplicaciones realizadas con LabVIEW……………………………..…. 89
7.11 LabVIEW a cualquier red industrial y PLC……………………………. 89
7.12 E/S digital y análoga básica.………………..……………………….…. 89 - 91
vi
7.13 Modbus TCP y Modbus Serial…………………………………………. 91
7.14 Tarjetas de comunicación insertables……..…………….....…………… 92
7.14.1 Interfaces DeviceNet…………………...…………………….….... 92 - 93
7.14.2 Configuración DeviceNet de NI………...………………….…....... 94
7.14.3 Analizador DeviceNet de NI ……………………...………..…...... 95
7.14.4 Interfaces CANopen……………………...………………….….... 94 - 95
7.14.5 Interfase serial (RS232, RS422, y RS485)………......……………. 95 - 96
7.14.6 Productos Seriales de National Instruments.….…...………..…..... 96
7.14.7 Interfaces Profibus.…………………………...…………..…......... 97
7.14.8 OPC……………..……………………...…………………….…... 97 - 98
7.14.9 LabVIEW como un servidor OPC………………...………………. 98
7.14.10 Agregando la funcionalidad de cliente OPC a LabVIEW……….. 98 – 99
7.14.11 Publicando Datos a partir de los Dispositivos de Adquisición
de Datos de NI (DAQ) con un Servidor OPC……………........... 99
7.14.12 Publicando Datos de NI Fieldpoint y CompactFieldPoint con
un Servidor OPC………………………………………………... .. 99
7.14.13 Convertidores de Terceros……………………………...………… 99 – 103
7.15 Toolkit de LabVIEW para LEGO® MINDSTORMS® NXT………. 104 – 105
7.16 Monitoreo y Control de una Línea Neumática en una Planta de
ensamble automotriz ……………………………………….............. 106
7.16.1 Hardware…………………………….….…...…………....…… 106
7.16.2 Software.…………………………...…………..…................... 107-108
VIII. Conclusiones………………………………………………………….. .. 109
Conclusiones..……………………………...…………..….................... 110 – 111
IX. Glosario ………………………………………………………………… 112
9.1 Glosario …………………………………………………………. 113
X. Referencia Bibliográfica …………………………………………………114
10.1 Linkografía …………………………………………………….. 115
XI. Anexo…………………………………………………………………… 116
Anexo 1 Plantas simulación laboratorio...…………..…...................... 117 - 122
Anexo 2 Cotizaciones…………………...…………..…...................... 123 - 127
vii
Índice de Fotos e Imágenes
Págs.
Figura 4.1 Diagrama adquisición de datos basada en PC 18
Figura 4.2 Modelo: USB - 1208FS 18
Figura 4.3 Modelo: USB – 6008 18
Figura 4.4 DAQ 19
Figura 4.5 Software InstaCal 20
Figura 4.6 Librería Universal LabVIEW 7.11a 20
Figura 5.1 Ventana inicio nuevo VI 22
Figura 5.2 Panel frontal 23
Figura 5.3 Diagrama de bloque 23
Figura 5.4 Controles de entrada 23
Figura 5.5 Indicadores de salida 24
Figura 5.6 Menú Paletas de Controles y Herramientas 25
Figura 5.7 Paleta de controles 25
Figura 5.8 Paleta de herramientas 25
Figura 5.9 Menú paleta de funciones 26
Figura 5.10 Paleta de funciones 26
Figura 5.11 Visualización de paletas 26
Figura 5.12 Panel control Compuertas Lógicas 27
Figura 5.13 Diagrama de bloques Compuertas Lógicas 28
Figura 5.14 Esquema Tipos de datos 28
Figura 5.15 Controles e Indicadores booleanos 29
Figura 5.16 Diferentes representaciones para los datos numéricos 30
Figura 5.17 Datos alfanuméricos Panel de control 30
Figura 5.18 Datos alfanuméricos Diagrama de bloque 30
Figura 5.19 Ejemplo Dato alfanumérico Panel de control 31
Figura 5.20 Ejemplo Dato alfanumérico Diagrama de bloque 31
Figura 5.21 Ejemplo suma de dos números 31
Figura 5.22 Ejemplo Concatenate strings Panel de control 32
Figura 5.23 Concatenate strings Diagrama de bloques 32
Figura 5.24 Show connector 33
Figura 5.25 Icono show connector 33
Figura 5.26 Terminal asignado Icono show connector 34
Figura 5.27 Edit Icono show connector 34
Figura 5.28 Icono ejemplo Show Connector 34
Figura 5.29 Estructuras 35
Figura 5.30 Case Structure (Estructura Caso) 36
Figura 5.31 Conector serial de 9 pines 37
Figura 5.32 Pines conector serial rs-232 38
Figura 5.33 Ejemplo inicialización puerto serie 38
Figura 5.34 Ejemplo escritura puerto serie 39
Figura 5.35 Ejemplo delay puerto serie 39
Figura 5.36 Ejemplo lectura puerto serie 39
viii
Figura 5.37 Ejemplo test puerto serial 40
Figura 5.38 Add shif register 41
Figura 5.39 For While 41
Figura 5.40 Ejemplo registro desplazamiento 42
Figura 5.41 Ejemplo nodo fórmula 42
Figura 5.42 Ejemplo práctico nodo fórmula (panel frontal) 43
Figura 5.43 Ejemplo práctico nodo fórmula (diagrama de bloques) 44
Figura 5.44 Arreglos 45
Figura 5.45 Iconos cluster 46
Figura 5.46 Gráfico Waveform Graph - Chart 48
Figura 5.47 Ejemplo Waveform Graph (panel frontal) 48
Figura 5.48 Ejemplo Waveform Graph (diagramade bloques) 49
Figura 5.49 Gráfico Intensity Graph – Chart 49
Figura 5.50 Gráfico Digital Waveform Graph (panel frontal) 50
Figura 5.51 Gráfico Digital Waveform Graph (diagrama de bloques) 50
Figura 5.52 Gráfico XY Graph (panel frontal) 50
Figura 5.53 Gráfico 3D Graph 51
Figura 5.54 Ejemplo práctico con Waveform Graph 52
Figura 5.55 Generación de números aleatorios 52
Figura 5.56 Tone measurement 53
Figura 5.57 Verificación del rango establecido 53
Figura 5.58 Etapa guarda valor 53
Figura 5.59 Ejemplo archivos I/O (diagrama de bloques) 54
Figura 5.60 Pulsadores 56
Figura 5.61 Menú Mechanical Action 56
Figura 5.62 Variables locales (diagrama de bloques) 57
Figura 5.63 Variables Globales (panel frontal) 58
Figura 5.64 Variables Globales (diagrama de bloques) 58
Figura 6.1 Instalación software InstaCal 62
Figura 6.2 Configuración InstaCal Paso 1 62
Figura 6.3 Configuración InstaCal Paso 2 63
Figura 6.4 Descompresión ULforLV711a 64
Figura 6.5 Topología del sistema de monitoreo 65
Figura 6.6 Paleta controles Containers 65
Figura 6.7 Paleta de herramientas 66
Figura 6.8 Tab control 66
Figura 6.9 Ejemplo Tab control 66
Figura 6.10 Controles MCC Data Acquisition 67
Figura 6.11 Bloque AIn 67
Figura 6.12 Bloque ToEng 68
Figura 6.13 Bloque ErrMsg 68
Figura 6.14 Etapa simulación de la DAQ 1208FS 68
Figura 6.15 Subsistema de almacenamiento 69
Figura 6.16 Alarma visual (panel frontal) 70
Figura 6.17 Alarma sonora (diagrama de bloques) 70
Figura 6.18 Pantalla principal Sistema Monitoreo (panel frontal) 71
ix
Figura 6.19 Pantalla nivel de presión 72
Figura 6.20 Pantalla nivel de agua 72
Figura 6.21 Pantalla nivel temperatura de petróleo 73
Figura 6.22 Diagrama general elaboración harina de pescado 74
Figura 6.23 Pozos – Cocedores – Prensa (Tramo 1) 75
Figura 6.24 Separadoras – Desborradoras (Tramo 2) 76
Figura 6.25 Planta Evaporadora (Tramo 3) 77
Figura 6.26 Secadores a Vapor (Tramo 4) 78
Figura 6.27 Homogenizadores – Ensaque (Tramo 5) 79
Figura 7.1 Entrada laboratorio 85
Figura 7.2 Mobiliario laboratorio 86
Figura 7.3 Equipamiento laboratorio 86
Figura 7.4 CompactRIO de NI y Allen-Bradley Control Logix Integration con E/S
Digital
90
Figura 7.5 Interfases DeviceNet de Conexión Directa de National Instruments 92
Figura 7.6 Interfases CANopen de National Instruments 94
Figura 7.7 Interfases Seriales de National Instruments 96
Figura 7.8 OPC está diseñado para mejorar la conectividad del sistema empresarial. 97
Figura 7.9 Convertidores de Terceros Proveedores de HMS, Hilscher, y Woodhead 99
Figura 7.10 LabVIEW y LEGO 103
Figura 7.11 Robótica LEGO y LabVIEW 104
Figura 7.12 Monitoreo y Control de una Línea Neumática en una Planta de Ensamble
Automotriz
107
Figura 9.1 Diseño planta 1 113
Figura 9.2 Diseño planta 2 113
Figura 9.3 Diseño planta 3 114
Figura 9.4 Diseño planta 4 114
Figura 9.5 Diseño planta 5 115
Figura 9.6 Diseño planta 6 115
Figura 9.7 Diseño planta 7 116
Figura 9.8 Diseño planta 8 116
Figura 9.9 Diseño todas las plantas 117
x
Índice de Tablas
Tabla 5.1 Tabla Estructuras 35
Tabla 7.1 Situación con y sin proyecto 84
Tabla 7.2 Costos implementación laboratorio 85
xi
Resumen
Una de principales necesidades de la empresa de hoy es el control total o parcial de sus
actividades, esto se traduce en un mejor rendimiento tanto del equipamiento de la industria así
como de los mismos trabajadores que son parte del proceso. Es por ello que para nuestro trabajo
de titulación hemos considerado el diseño de un instrumento virtual que se complemente y ajuste
a las necesidades y actividades de la empresa actual teniendo como principales objetivos la
necesidad de centralizar determinados procesos y abriendo además la posibilidad de
gradualmente abarcar la totalidad de los procesos realizados en una planta pesquera. El diseño de
dicho instrumento se traduce en un mayor control de las actividades y por ende un mayor
aprovechamiento de los recursos lo cual es uno de los principales objetivos de la empresa
moderna.
Pero para lograr dicho instrumento se necesito una herramienta que para nuestro caso se titula
LabVIEW el cual es proporcionado por la empresa internacional National Instruments. Dicha
herramienta es un poderoso software con una plataforma gráfica de diseño de sistemas para el
desarrollo de pruebas, control y diseño de sistemas embebidos entre otros.
Sin embargo, antes de realizar dicho instrumento virtual y debido a que es un software poco
utilizado, nos vemos en la necesidad de realizar una reseña de este con la finalidad de acercar
tanto al profesorado así como a los mismos alumnos a los conceptos básicos para la utilización
del software lo cual permite un mayor entendimiento del trabajo realizado.
Finalmente, se proyecta la implementación de un laboratorio dedicado única y exclusivamente a
la utilización del software en automatización con trabajos en tiempo real, analizando las
necesidades para conseguir su implementación, así como para aplicaciones y ventajas que este
ofrecería en laboratorios e industrias.
xii
Abstract
One of the mains necesities of today's companies, its to have total or parcial control of their
activities, this translate into a better performance of the industry equipment as well as their
workers wich are part of the process. That's why that we have consider for our intership, the
design of a virtual instrument that will complement, and adjust to the necesitiesand activities of
today's companies having as a main object the necesity of focusing in certains process, and
opening the posibilities of slowly incorporate the totally of the process done in pesquera by using
this instrument it translate into a higher contro of the activities, and as a result a better usage of
the resources which is one of the goals of the modern companies.
We are working with a tool that we have named labview which is giving to us by the
international natinal instrument these tool its a powerful software with a graphic platform of
design of sistems to develop test, control, and design of embebid sistems just to name a few.
However, before making such a virtual instrument and because it is a little-used software, we feel
the need to make a review of this, with the aim of bringing both teachers and the students
themselves to the basic concepts for its use, which allows for a greater understanding of the work
done.
Finally, it is planned to implement a laboratory devoted solely to the use of automation software
works in real time, analyzing needs to get its implementation, as well as for applications and
advantages that this offer in laboratories and industries.
I INTRODUCCIÓN
INTRODUCCIÓN
______________________________________________________________________________________________
2
1.1 Introducción.
Mas que conocidos son los grandes desarrollos que se han realizado en los últimos tiempos con la
ayuda de herramientas informáticas llámese software o hardware. La tecnología se a encargado
de solucionar grandes problemas que en su momento se pensó seria imposible resolver.
Factores como la reducción de tiempos en tareas determinadas, mejoramiento del trabajo,
reducción de costos de los procesos, automatización, etc. han sido el fruto del apoyo brindado por
una infinidad de software desde D.O.S hasta complejos software de calculo matemático gestión,
contabilidad se han transformado en un aliado poderoso tanto para empresas, profesionales y sin
dudarlo para nosotros los estudiantes en una herramienta poderosa para la solución de problemas
y el desarrollo de nuevas ideas.
Es por eso que como trabajo de titulación nos hemos propuesto analizar LabVIEW este software
propiedad de National Instruments fue creado en el año 1987 teniendo como objetivo entregar al
operador la posibilidad de realizar diversos análisis en variadas áreas siendo unas de las mas
fuertes la automatización, siendo una de sus principales características la facilidad de manejo
debido a que incorporaba un nuevo sistema de programación llamado G en alusión a su interfaz
grafica. Al cabo de un tiempo muchos fueron los interesados en trabajar con el y por ende
muchas las aplicaciones realizadas lo que ah transformado a LabVIEW de una herramienta de
análisis a un software capaz de resolver grandes problemas en la industria ya sea en el área de
automatización entregando la posibilidad de monitorear diversos procesos o bien realización de
SCADA, así como en comunicaciones, etc.
Sin embargo, nuestro trabajo no solo se limita a un simple análisis si no que además pretende
demostrar de forma practica las ventajas entregadas por LabVIEW mediante una suma de
ejemplos realizados y con ello la solución de problemas comunes para algunos de nosotros.
Considerando además un problema real de empresa en este caso de una pesquera dando solución
al problema de monitoreo de las dos calderas que posee por medio de una interfaz grafica de fácil
entendimiento para los operadores, incorporando además diversos parámetros de interés del
INTRODUCCIÓN
______________________________________________________________________________________________
3
operador como son gráficos del comportamiento de las calderas así como almacenamiento de
datos estadísticos, alarmas en casos críticos, etc.
Por otra parte, dada la gran potencialidad de LabVIEW como herramienta de trabajo y por ende
aprendizaje es que se propone la implementación de un laboratorio en las dependencias de
nuestra universidad, esto considerando que dentro de nuestra investigación se observo que
universidades extranjeras lo consideran como un ramo más dentro de la carrera lo que nos lleva a
pensar en la posibilidad de que esta experiencia pueda ser reproducida dentro de nuestra facultad
en un mediano plazo.
Para ello, es que procedemos a evaluar los costos y las necesidades básicas para la
implementación de dicho laboratorio como seria principalmente la licencia del software el
espacio físico a utilizar, así como la instrumentación y equipamiento de dicho laboratorio.
II OBJETIVOS
OBJETIVOS
______________________________________________________________________________________________
5
2.1 Objetivos Generales
2.1.1 Investigar analíticamente, la herramienta de programación LabVIEW con el propósito de
que las futuras generaciones lo utilicen con fines didácticos.
2.1.2 Diseñar un sistema de monitorización del estado de calderas de una pesquera usando
LabVIEW.
2.1.3 Proponer la implementación de un laboratorio práctico para el trabajo con LabVIEW en
el Instituto de Electrónica de la Universidad Austral de Chile.
2.2 Objetivos Específicos
2.2.1 Creación de programas (VI), para cada tema en particular a medida que se va explicando
el funcionamiento del software.
2.2.2 Creación de un VI intuitivo y de fácil manejo en LabVIEW para el usuario final, que sirva
como interfaz entre un PC y las calderas de una pesquera.
2.2.3 Conseguir que el proceso de encendido del equipo en la etapa del VI sea lo más
automático posible evitando así la intervención de los operadores de la planta y que
pueda ser manejado con teclas específicas del teclado, facilitando así la comprensión y
utilización del sistema para los operarios.
2.2.4 Creación de un sub-sistema de medición en tiempo real de las variables físicas como
presión, nivel de agua y temperatura del petróleo (visibles en el panel frontal del VI).
OBJETIVOS
______________________________________________________________________________________________
6
2.2.5 Creación de un sub-sistema de seguridad que consiste en una alarma de tipo visual como
sonora, para la prevención de situaciones riesgosas que puedan ocurrir dentro de la
pesquera.
2.2.6 Creación de un sub-sistema de almacenamiento de datos adquiridos mediante una tarjeta
DAQ (dispositivo de adquisición de datos).
2.2.7 Guardar los datos en planilla electrónica, dando la posibilidad al usuario cambiar el
programa que utiliza como base de datos, como por ejemplo, al programa bloc de notas u
otro según desee y sirva para el propósito final que es de analizar los datos y detectar
posibles fallas en una etapa posterior.
2.2.8 Tomar muestras cada cierto tiempo (segundos o minutos), dando la posibilidad al usuario
de cambiar este valor, según sea su conveniencia para un óptimo registro.
2.2.9 Archivar las muestras con hora y fecha actual, indicando si la muestra fue de tipo normal
o peligrosa según el valor límite aceptado, establecido inicialmente por el operador.
2.2.10 Posibilidad de que las muestras sean borradas al instante que deje de funcionar el VI por
“x” motivos o que se vayan añadiendo tras la última muestra obtenida.
2.2.11 Visualizar el muestreo de datos mediante gráficos en tiempo real.
2.2.12 Visualizar a medida que van cambiando las muestras, la última de ellas en el panel
frontal.
OBJETIVOS
______________________________________________________________________________________________
7
2.2.13 Analizar los aspectos necesarios para la propuesta de implementación del laboratorio,
como son las posibles dependencias a utilizar, equipamiento y licencias de software,
considerando sus costos y potenciales ventajas con el fin de considerar la viabilidad del
proyecto.
III EL PROBLEMA Y SU IMPORTANCIA
EL PROBLEMA Y SU IMPORTANCIA
_____________________________________________________________________________________
10
3.1 Definición del problema
El motivo que nos llevo a realizar la presente tesis es el problema presente dentro de una
pesquera, esto motivado por el problema generado en la visualización de importantes parámetros
tanto para los operadores así como para los técnicos, instrumentistas y todo personal que tenga
relación con el funcionamiento de los equipos de la planta a nivel de operación y mantención.
De modo mas especifico el problema general radica en la dificultad para visualizar las variables
presentes tanto en las calderas así como en el resto de los procesos de la planta debido a que estos
valores son obtenidos a partir de instrumentos análogos que en ocasiones se encuentran alojados
en lugares de difícil acceso así como grandes alturas o simplemente a distancias no adecuadas
para quien se interese en monitorearlas.
Esto sumado a la necesidad de centralizar la información y llevar un registro específico de las
actividades de la planta en lo que se refiere a la producción, es el motivo que nos lleva a
encontrar una solución ad hoc al problema en la cual se pretende solucionar la totalidad de los
problemas presentes además de proponer novedosas alternativas de monitorización y registro las
cuales se presume serán y se transformaran en un gran beneficio para la empresa mediante un
bajo grado de inversión lo que asegura la recuperación pronta de los montos invertidos.
A raíz de todo esto, es que se abrieron múltiples variables de trabajo para nuestra tesis, de las
cuales abarcamos dos, las cuales detallamos a continuación:
Problema de la implementación y utilización del software
Problema de la realización del instrumento virtual para la pesquera.
Considerando estos dos factores es que además sumamos un problema a nivel de instituto el cual
radica en la falta de conocimiento de LabVIEW como software de programación y análisis, y más
EL PROBLEMA Y SU IMPORTANCIA
_____________________________________________________________________________________
11
allá de esto la gran posibilidad de transformarlo en una potente herramienta de trabajo no solo
para empresas y/o en el aspecto laboral, si no que también para estudiantes y profesores
esperando un feedback (retroalimentación) entre estos lo que se traduce en un rápido aprendizaje
mediante desarrollos tanto prácticos como teóricos.
3.2 Problema del sistema
Uno de los principales problemas encontrados es el como obtener la información y centralizarla
mediante un ordenador considerando para ello el funcionamiento del proceso completo en la
pesquera, analizando el proceso desde la entrada de la materia prima, pescado para este caso,
hasta la salida de este como producto final que para nuestro caso es la harina de pescado (esto
considerando que las pesqueras como empresa tienen una amplia variedad de productos que
entregan al mercado tanto nacional como internacional).
Para ello, es que nuestra principal consideración es la utilización de una DAQ (Hardware de
adquisición de datos) la cual es el corazón de nuestro proyecto tesis y que fue descrito con
anterioridad.
Una vez conocida la DAQ (ver figura 4.2) podemos observar que este instrumento es nuestra
interfaz entre las mediciones lógicas y su transformación en señales digitales lo cual se traduce en
la posibilidad de ser visualizadas en el servidor instalado para dicho fin. Esta visualización es
realizada a través del instrumento virtual VI creado para el caso.
3.3 Solución Propuesta
Como anteriormente se menciono existen dos variables claras en nuestro proyecto de tesis para
las cuales se proponen respectivamente las soluciones siendo la primera solución el
planteamiento claro de la gran cantidad de posibilidades que entrega el software y como poder
explotar las diversas potencialidades que este posee.
EL PROBLEMA Y SU IMPORTANCIA
_____________________________________________________________________________________
12
Es por ello, como primera parte de nuestro proyecto entregamos la información básica para poder
comenzar a utilizar el software entregando nociones básicas para la utilización y significado de
los comandos utilizados, así como sus atajos, herramientas, arreglos, instrumentos virtuales, etc.
Una vez conocido a cabalidad la primera parte del proyecto es que podemos proceder con la
etapa de creación del instrumento virtual .VI el cual satisfacerá las necesidades planteadas y será
desarrollado de acuerdo a los objetivos propuestos para la tesis, esto sin dejar de considerar el
hecho de que el diseño de este sistema de monitoreo es una simple propuesta.
Sin embargo, esto no es un impedimento para realizar nuestro .VI debido a que se considera la
simulación de gran parte de los procesos, para ello, se ha recopilado la mayor información
posible dentro de una planta pesquera para definir cuales son los procesos más importantes y por
ende cuales son los procesos que deben ser monitoreados.
Por último, en lo que se refiere a la tercera etapa de nuestro proyecto en la cual se considera la
implementación de un Laboratorio en el cual se abra la posibilidad de enseñar LabVIEW, para
ellos se considera una gran cantidad de análisis los cuales contemplan un análisis F.O.D.A así
como el estudio de los espacios físicos necesarios para la eventual implementación de este y la
obtención de las respectivas licencias así como los equipamientos necesarios, finalmente se
contempla un resumen de los costos o mas bien la inversión necesaria así como las posibilidades
de financiamiento para la realización de la propuesta entregada.
IV MARCO TEÓRICO Y REFERENCIAL
MARCO TEÓRICO Y REFERENCIAL
_____________________________________________________________________________________
14
4.1 Compendio del capítulo.
A través del marco teórico y referencial se expresa el origen del software LabVIEW y su
importancia, algunos conceptos, utilización y características dadas por los propios fabricantes.
Posteriormente, se presenta una descripción general sobre la finalidad de un Hardware de
Adquisición de Datos (DAQ) con un pequeño diagrama basado en PC de adquisición de datos.
Luego se realiza una breve reseña sobre la relación que existe entre National Instruments y la
empresa fabricante de la DAQ - elegida por nosotros - , Measurement Computing.
Finalmente, se da explica la función de pequeñas utilidades que son necesarias para nuestro
trabajo final.
4.2 LabVIEW y su importancia
LabVIEW fue creado en 1976 por le empresa National Instruments (NI) con el propósito de
funcionar sobre máquinas Apple Macintosh (MAC). Actualmente está disponible en los
principales sistemas operativos utilizados en el mundo, como es Windows y Linux, entre otros.
El 16 de abril de 2007, National Instruments anunció la disponibilidad de una nueva versión de
LabVIEW, como es LabVIEW 8.2.1 éste software puede ser utilizado en la versión más nueva
del sistema operativo de Microsoft (Windows Vista).
En el capítulo primero denominado “Introducción”, nos preguntábamos ¿Qué es LabVIEW?
A partir de esta interrogante, acudimos a la definición de los creadores de este software.
National Instruments señala que:
MARCO TEÓRICO Y REFERENCIAL
_____________________________________________________________________________________
15
“LabVIEW es un revolucionario entorno de desarrollo gráfico con funciones integradas para
realizar adquisición de datos, control de instrumentos, análisis de medida y presentaciones de
datos. LabVIEW le da la flexibilidad de un potente ambiente de programación, pero mucho más
sencillo que los entornos tradicionales”.
Esta definición es bastante clara, el software LabVIEW tiene funciones específicas para acelerar
el desarrollo de aplicaciones de medida, control y automatización, nos proporciona herramientas
poderosas para que el usuario pueda crear aplicaciones sin líneas de código (lenguaje G) y nos
permite colocar objetos ya construidos para lograr crear interfaces de usuario rápidamente.
Después es uno mismo el que específica las funciones del sistema construyendo diagramas de
bloques.
No podemos dejar de mencionar que LabVIEW se puede conectar con todo tipo de hardware
incluyendo instrumentos de escritorio, tarjetas insertables, controladores de movimiento y
controladores lógicos programables (PLCs).
Otra de las razones que explican la importancia y le dan un punto a favor a este software es que
como las necesidades de las aplicaciones van cambiando con el tiempo, los sistemas definidos y
creados por el usuario de LabVIEW tienen la movilidad y la flexibilidad necesaria para adecuarse
sin la necesidad de incorporar equipos nuevos.
Por lo descrito anteriormente, un sistema basado en LabVIEW, simplifica el desarrollo de
sistemas y tiene la habilidad de reutilizar su código, tiene acceso a sistemas de instrumentación
completos con un coste mucho más bajo que un único instrumento comercial.
Finalmente, una de las ventajas que posee este software y que nos llamó la atención para nuestro
trabajo, fue que LabVIEW es ideal para la adquisición de datos y monitorización en la industria,
es por ello que creamos y mejoramos una aplicación para la Pesquera el Golfo Corral de
Valdivia.
MARCO TEÓRICO Y REFERENCIAL
_____________________________________________________________________________________
16
4.3 Principales usos
En tareas como:
Adquisición de datos Control de instrumentos
Automatización industrial Diseño de control
Diseño embebido1
Domótica.
4.4 Principales características
Hoy en día, científicos, ingenieros, técnicos y estudiantes utilizan LabVIEW para desarrollar
soluciones que respondan a sus interrogantes más exigentes, es por ello que damos fe que su
principal característica es la facilidad de uso que posee. También resulta válido para personas con
pocos conocimientos en programación, ya que pueden realizar programas relativamente
complejos, imposibles para ellos y a veces hasta para uno mismo con los lenguajes tradicionales.
LabVIEW posee facilidad de manejo para las siguientes interfaces de comunicación:
Puerto serie
Puerto Paralelo
GPIB
USB
PXI
VXI
TCP/IP
UDP, DataSocket
Irda, Bluetooth
OPC.
1
“Embebido” quiere decir que forma parte esencial del mismo sistema.
MARCO TEÓRICO Y REFERENCIAL
_____________________________________________________________________________________
17
LabVIEW posee la capacidad de interactuar con otros lenguajes y aplicaciones:
o DLL (librerías de funciones), .NET, ActiveX, MultiSim, Matlab/Simulink, AutoCAD,
SolidWorks, etc.
o Herramientas gráficas y textuales para el procesado digital de señales.
o Visualización y manejo de gráficas con datos dinámicos.
o Adquisición y tratamiento de imágenes.
o Control de movimiento (combinado incluso con todo lo anterior).
o Tiempo Real estrictamente hablando.
o Programación de FPGAs para control o validación.
o Sincronización entre dispositivos.
4.5 Hardware de Adquisición de Datos (DAQ)
National Instruments sostiene que:
“La adquisición de datos es el proceso de obtener o generar información de manera automatizada
desde recursos de medidas analógicas y digitales como sensores y dispositivos bajo prueba.
Utiliza una combinación de hardware y software basados en PC para brindar un sistema de
medida flexible y definido por el usuario.”
Es por lo anterior que los dispositivos DAQ son instrumentos, ideales para una gran variedad de
aplicaciones, desde registros de datos simples hasta sistemas integrados, ya que han sido
diseñados con el propósito general de medir señales de voltaje.
MARCO TEÓRICO Y REFERENCIAL
_____________________________________________________________________________________
18
La figura 4.1 muestra el diagrama general de la adquisición de datos basada en PC.
Figura 4.1 Diagrama adquisición de datos basada en PC.
4.5.1 National Instruments y Measurement Computing
National Instruments en el año 2006 se expandió al adquirir a Measurement Computing que es
una empresa que desarrolla tarjetas de adquisición de datos de bajo coste para interfaces ISA, PCI
y USB para computadoras personales. De este modo, como NI es una empresa que desarrolla
tecnología en instrumentación virtual, el software NI LabVIEW ya funciona con los productos de
esta compañía con sus respectivos Drivers.
Dispositivos DAQ
Figura 4.2 Modelo: USB - 1208FS Figura 4.3 Modelo: USB – 6008
MARCO TEÓRICO Y REFERENCIAL
_____________________________________________________________________________________
19
Un dispositivo de este tipo, por ejemplo, el USB 1208FS posee 8 canales de entrada análoga.
Tiene una resolución de 12-BIT, 50 kilo muestras/segundo (tasa de muestreo), dos salidas de D/A
y 16 Digital I/O, en una presentación miniatura atractiva. Todas las señales son accesibles con
tornillos en las terminales laterales. Conexión por USB
.
Figura 4.4 DAQ
Debido a lo anterior, e indagando sobre el funcionamiento interno de este modelo, decidimos
utilizarlo en nuestro experimento para la Empresa Pesquera el Golfo. Sus especificaciones
técnicas se presentan en el Anexo Nº 1.
Para dar funcionamiento a nuestro trabajo práctico es necesario instalar además de LabVIEW 8.2
dos utilidades necesarias:
• InstaCal v5.82
• Drivers UL for LabVIEW 7.11a
InstaCal es un pequeño software (15,84 MB) de la empresa Measurement Computing
Corporation (MCC) que maneja completamente el hardware de una DAQ, ¿qué quiere decir
esto? Por ejemplo cuando uno instala un dispositivo USB, PCI o PCMCIA, InstaCal detecta el
hardware y asigna los recursos automáticamente. También existe la opción de que el usuario
pueda ajustar las características del hardware según sea su necesidad.
MARCO TEÓRICO Y REFERENCIAL
_____________________________________________________________________________________
20
Figura 4.5 Software InstaCal
ULforLabVIEW711a es un archivo que contiene distintos drivers para la simulación de algunos
dispositivos de adquisición de datos en LabVIEW. La versión 7.11a indica que podemos
instalarlo en LabVIEW 8.0 o superior.
.
Figura 4.6 Librería Universal LabVIEW 7.11a
V ANÁLISIS DEL SOFTWARE - LABVIEW
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
22
5.1 Resumen del capítulo
El siguiente capítulo da a conocer la herramienta de programación LabVIEW, se aboca
principalmente a conocer, explicar, distinguir, analizar y aplicar de manera sencilla el software y
su lenguaje. De este modo, y con el conocimiento ya adquirido damos solución en el capítulo VI
a la parte práctica de nuestro trabajo
5.2 ¿Qué es un VI?
Los programas creados con LabVIEW son usualmente denominados VI (Virtual Instruments) por
la sencilla razón de que estos parecen y actúan como una copia de los instrumentos físicos, como
por ejemplo, osciloscopios e instrumentos de medición.
5.3 Creando un VI
Al arrancar el software a través del acceso
directo o del menú de Inicio» Programas»
National Instruments LabVIEW 8.2, se nos
presenta la ventana (ver Figura 5.1) en
donde se da inicio a la construcción del VI.
Blank VI = VI en blanco
Figura 5.1 Ventana inicio Nuevo VI
Al hacer clic en “Blank VI”, automáticamente se abren 2 ventanas. Una contiene al Panel Frontal
y la otra al Diagrama de bloque (ver figura 5.2 y 5.3).
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
23
Figura 5.2 Panel Frontal Figura 5.3 Diagrama de Bloque
Como mencionamos anteriormente, el Panel frontal y el Diagrama de bloques son los
componentes más importantes dentro de un VI.
a) Panel Frontal (Front panel): Se utiliza como interfase entre usuario/VI y que es donde los
datos son manipulados, controlados y monitoreados. Se construye a partir de controles
(entradas) e indicadores (salidas).
Los controles simulan instrumentos de entrada y entregan los respectivos datos al diagrama de
bloques del VI. Entre los controles tenemos perillas, pushbuttons y otros dispositivos de entrada.
(a) (b) (c)
Figura 5.4 Controles de entrada
Los indicadores simulan instrumentos de salida y muestran los datos que el diagrama de bloques
genera o adquiere. Dentro de los indicadores podemos encontrar leds, gráficos y otros tipos de
display.
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
24
(a)
(b) (c)
Figura 5.5 Indicadores de salida
b) Diagrama de bloque (Block diagram): contiene el código gráfico G que define la
funcionalidad del VI. Por ende, podemos ver la estructura del programa de una forma
gráfica donde los datos fluyen a través de cables o líneas. Además contiene las librerías de
LabVIEW como son las funciones y estructuras para conseguir nuestro programa.
En resumen, una vez construido el panel frontal, se crea automáticamente el código gráfico en el
diagrama de bloques, representando las funciones de los controles que fueron puestos en el panel
frontal y sólo bastaría unir correctamente los terminales de los controles e indicadores para el
funcionamiento del VI creado.
Con la ayuda de las distintas paletas que aparecen dentro de los menús de LabVIEW, todo lo
anterior es mucho más fácil.
Dentro del panel frontal se desprenden dos tipos de paletas: Controls Palette (paleta de controles)
y Tools Palette (paleta de herramientas).
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
25
Figura 5.6 Menú Paleta de Controles y Herramientas
Figura 5.8 Paleta de herramientas
Figura 5.7 Paleta de Controles
La paleta de controles (ver figura 5.7) esta habilitada solamente en el panel frontal y posee los
controles e indicadores que se necesitan para crear el panel frontal. La paleta también aparece
haciendo clic con el botón derecho del mouse sobre el área de trabajo del panel frontal.
La paleta de herramientas (ver figura 5.8) esta habilitada en el panel frontal y en el diagrama de
bloques y es necesaria para trabajar o modificar los objetos. Una herramienta se refiere al modo
especial del cursor del mouse, esto quiere decir que cuando uno selecciona una herramienta, el
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
26
cursor cambia de icono al icono de la herramienta. Haciendo clic en el led de color verde uno
habilita o deshabilita el cambio automático del cursor dependiendo de la función a realizar.
Nota: manteniendo la tecla “shift” presionada y haciendo clic con el botón derecho del mouse
sobre el área de trabajo, aparece la paleta de herramientas.
Dentro del diagrama de bloque está la Functions Palette (paleta de funciones) y la paleta de
herramientas como mencionamos anteriormente.
Figura 5.9 Menú Paleta de Funciones Figura 5.10 Paleta de funciones
Existen 6 opciones para visualizar las paletas, ya sea de funciones o controles.
Figura 5.11 Visualización de paletas
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
27
5.4 ¿Cómo ejecutar un VI?
Al haber finalizado la programación del VI y viendo que no existe error, se puede ejecutar. Para
ello, debemos situarnos en el panel frontal y pulsar el botón Run ubicado en la barra de
herramientas.
Run: ejecución Stop: finaliza la ejecución.
Continuamente Run: ejecución continua Pausa: detención del programa.
Error Ejecutándose (ambos modos)
Si existe error, se puede pulsar el mismo botón de Run y nos muestra el tipo de error que se está
cometiendo (líneas rotas, conexiones malas, etc.).
Según la necesidad del programador, este puede colocar un botón de stop en el panel frontal de su
VI, cuya pulsación provoque una interrupción en el bucle de ejecución de la aplicación.
Con todo lo anterior se procede a dar un pequeño ejemplo sobre la operabilidad de funciones
lógicas.
Ejemplo
Figura 5.12 Panel control Compuertas Lógicas
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
28
Figura 5.13 Diagrama de bloques Compuertas Lógicas
Observación 1: Los controles e indicadores numéricos y etiqueta del sistema (ver figura 5.13) los
encontramos en la paleta de controles. Las compuertas lógicas (ver figura 5.14) las encontramos
en la paleta de funciones. Para insertar los controles e indicadores en el panel frontal o diagrama
de bloques se selecciona el elemento y se arrastra con el mouse hasta su posición final.
Dependiendo de la aplicación procedemos a unir los elementos con ayuda del mouse.
Observación 2: Al presionar el botón de Run Continuously el programa se ejecuta
continuamente, y así el usuario puede cambiar los valores de los controles para realizar otras
combinaciones lógicas sin parar el programa. Para detenerlo se debe volver a presionar el botón
Run Continuously o presionando el botón de stop.
Observación 3: Para guardar el programa, nos dirigimos a la barra de herramientas File»Save
aparecerá un cuadro de diálogo donde se debe especificar la dirección donde se desea guardar el
programa, el nombre del programa y la extensión (si no se especifica la extensión LabVIEW
automáticamente le agrega la extensión .VI).
5.5 Tipos de datos
Existen 3 tipos o clases de datos en LabVIEW (ver figura 5.14):
Figura 5.14 Esquema Tipos de datos
Datos
Booleanos Numéricos Alfanuméricos
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
29
Dependiendo de nuestra aplicación, utilizamos estos datos en el diagrama de bloques existiendo
un color para cada uno. (Booleanos: verde claro, Numéricos: azules-naranjos y los
Alfanuméricos: rosados). Esto con la finalidad de familiarizarse tempranamente con ellos.
Boolean (Booleano)
Definidos por enteros de 16 bits. El bit más significativo contiene al valor booleano. Si el bit 15
se pone a 1, el valor del control o indicador es true (verdadero) y si se pone a 0, toma el valor
false (falso). Al dar un clic con el botón derecho del mouse sobre el área de trabajo del panel
frontal nos aparecerá la paleta de controles (ver figura 5.7) allí podemos hallar los diferentes
controles e indicadores booleanos que posee LabVIEW.
Figura 5.15 Controles e Indicadores booleanos
Observación: Recordar que al colocar en el panel frontal un control o un indicador
automáticamente se agrega el código de estos objetos en el diagrama de bloques.
Numeric (Numérico)
Los datos numéricos se clasifican en 12 representaciones para los controles e indicadores,
señalados por su respectivo color:
a) Números de tipo entero (I, Integer) de 8, 16 y 32 bits
b) Números de tipo sin signo (U, Unsigned) de 8, 16 y 32 bits.
c) Números de punto flotante 32 (SGL), 64 (DBL) y 80 (EXT) bits
d) Números de tipo complejos simples (CSG), dobles (CDB) y extendidos (CXT).
El tipo de número se aprecia en la terminal de conexión de los controles o indicadores, pues
aparece inscrito, y el color de las conexiones de punto flotante son anaranjadas, mientras que en
los enteros y sin signo son azules. Teniendo puesto un control o indicador de tipo numérico en el
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
30
Diagrama de bloques, hacemos clic sobre él con el botón derecho del mouse y nos dirigimos a
“Representation” donde podemos configurar el tipo de dato.
Figura 5.16 Diferentes representaciones para los datos numéricos
Strings (Alfanuméricos)
LabVIEW almacena los strings como si fuera un array uni-dimensional de bytes enteros
(caracteres de 8 bits). Sus principales aplicaciones van definidas a crear mensajes de texto, pasar
los datos numéricos a caracteres de datos para instrumentos y luego convertirlos nuevamente de
strings a datos numéricos, guardar datos numéricos en el disco, etc.
Como mencionamos anteriormente, los datos alfanuméricos se visualizan en el diagrama de
bloques con el color rosado (ver figura 5.18) mientras que en el panel frontal, estos datos
aparecen como etiquetas, tablas y entradas de texto (ver figura 5.17).
Figura 5.17 Datos alfanuméricos Panel de control Figura 5.18 Datos alfanuméricos Diagrama de bloque
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
31
En el diagrama de bloques existen muchas funciones donde se ven involucrados los datos
alfanuméricos, para verlas hacemos clic con el botón derecho del mouse sobre el área de trabajo
para ver la paleta de funciones, nos dirigimos al icono string y se desplegará una ventana con las
distintas funciones, como por ejemplo la más simple, string lenght que indica la longitud de la
cadena de datos alfanuméricos.
Por ejemplo si en el panel frontal, colocamos un control alfanumérico y escribimos alguna
“palabra”, al arrancar el VI (Run) el indicador numérico nos da la respuesta a la función lenght.
Figura 5.19 Ejemplo Dato alfanumérico Panel de control Figura 5.20 Ejemplo Dato alfanumérico Diagrama de bloque
Es posible realizar atractivos VI donde participen los tres tipos de datos para la utilización de una
aplicación determinada. Por ejemplo, en la figura 5.21 se muestra un sencillo sistema donde se
suman dos números, en donde si se sobrepasa el valor 50 la aplicación nos entrega una señal de
alerta mediante el encendido de un led (boolean) y una palabra de advertencia (string).
Figura 5.21 Ejemplo suma de dos números
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
32
Observación: El selector, el sumador y el comparador que se visualizan en el ejemplo anterior se
encuentran en la paleta de funciones del diagrama de bloques.
Cabe mencionar que se pueden combinar éstos tipos de datos en un mismo indicador (cadena
resultante), por ejemplo con el elemento Concatenate Strings es posible concatenar
datos numéricos y alfanuméricos.
Figura 5.23 Concatenate strings Diagrama de bloques
Figura 5.22 Ejemplo Concatenate strings Panel de control
Línea de selección (Pick line), nos permite visualizar el dato seleccionado en el panel
frontal del instrumento.
Número a String Fraccionario (Number to Fractional String), nos permite convertir el dato
numérico en un datos alfanumérico para poderlo unir a la concatenación.
5.6 Sub rutina o SubVI
Dentro de la programación de LabVIEW existe una utilización de los VI bastante interesante de
conocer, que facilita el desarrollo de aplicaciones. Cuando uno finaliza y guarda un archivo con
extensión .vi, éste puede ser llamado en el diagrama de bloques desde otro VI conociéndose
también como SubVI que corresponde a una subrutina como en los demás lenguajes tradicionales.
Para usar un VI como subVI, se requiere construir un panel de conectores. Este panel, determina
las entradas y salidas de los controles e indicadores.
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
33
Para construir un panel de conectores, nos dirigimos al icono en la parte superior izquierda del
panel frontal y hacemos clic con el botón derecho del mouse, enseguida se muestra un menú y
hacemos clic en Show Connector (ver figura 5.24) y el icono cambiará estéticamente como lo
muestra la figura 5.25.
Figura 5.24 Show Connector
Figura 5.25 Icono Show Connector
Cada pequeño cuadrado o rectángulo representa un terminal (salida o entrada) siendo el número
máximo de 28 terminales posibles de añadir. Para asignar un control a uno de los terminales del
bloque de conectores hacemos clic sobre el terminal que se desea configurar, el puntero cambia a
la forma de un carrete y el terminal tiene el color negro, ahora si nos posicionamos sobre el
control que se desea asignar el terminal, al ser asignado, el color del terminal cambiará de color
dependiendo del tipo de dato asignado (ver figura 5.26).
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
34
Figura 5.26 Terminal asignado Icono Show Connector Figura 5.27 Edit Icono Show Connector
Este mismo icono se puede editar en la parte superior izquierda del diagrama de bloques
(Edit Icon) a gusto del usuario (ver figura 5.27). Una vez configurado nuestro control de
terminales dependiendo de los requerimientos de la aplicación, guardamos el VI en nuestro PC.
Este VI puede ser llamado desde la paleta de funciones del diagrama de bloques pulsando donde
diga “Select VI” y mostrando el icono con sus respectivos terminales (pasando el mouse por
encima del icono) como se muestra en la figura 5.28
Figura 5.28 Icono ejemplo Show Connector
5.7 Estructuras de Control (Structures)
A la hora de programar, muchas veces es necesario ejecutar un mismo conjunto de sentencias con
un número determinado de veces, o que éstas se repitan mientras se cumplan ciertas condiciones.
LabVIEW dispone principalmente de cinco estructuras fácilmente diferenciables por su
apariencia y disponibles en la opción Structures que aparece en la paleta de funciones del
diagrama de bloques. Estas estructuras van ejecutando automáticamente lo que está programado
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
35
en su interior, sin embargo, cada estructura ejecuta su sub diagrama de acuerdo a las
características que gobiernan su funcionamiento.
En resumen, estas estructuras son representaciones gráficas de los lenguajes basados en
programación textual.
Antes de dar a conocer las principales estructuras de control que posee LabVIEW, es necesario
definir que se entiende por sub diagrama.
Sub diagrama
Se entiende como sub diagrama al conjunto de terminales, nodos y líneas de unión que se
localizan en el interior del rectángulo llámese “estructura”.
Estructura (Structure) Nº sub diagramas
While Loop 1
For Loop 1
Case Structure Múltiples
Sequence Structure Múltiples
Event Structure Múltiples
Tablas 5.1 Tabla Estructuras
Figura 5.29 Estructuras
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
36
Teniendo presente lo anterior, damos brevemente una explicación de cada una de estas
estructuras:
For Loop (Ciclo For)
Una operación ejecuta un sub diagrama un número finito de veces. Equivale a decir en un
lenguaje tradicional For i = 0 to N-1 (ejecuta sub diagrama). Contiene dos terminales, uno
contador y el otro de iteración . El terminal contador contiene el número de veces que se
ejecutará el sub diagrama creado en el interior de la estructura y el de iteración igual que el While
Loop. Con esta estructura se pueden emplear los Shift Register para tener disponibles los datos
obtenidos en iteraciones anteriores, es decir, para memorizar valores obtenidos. Los Shift Register
se discuten en el siguiente punto.
While Loop (Ciclo While)
Una operación ejecuta un sub diagrama hasta que la terminal condicional recibe un valor lógico
específico. Equivale a decir en un lenguaje tradicional Do (ejecutar sub diagrama) While
(condición es True). Contiene dos terminales, uno condicional y otro de iteración . El
condicional hace que LabVIEW compruebe el estado de este terminal al final de cada iteración, si
el valor es True continua si es False se detiene. El terminal de iteración indica el número de veces
que se repite el bucle. Con esta estructura también se pueden emplear los Shift Register.
Case Structure (Estructura Caso)
El ejemplo típico que se le da a esta estructura es el de la baraja de naipes, pues si el programa lo
requiere, los sub diagramas o casos pueden irse añadiendo uno tras otro, pudiéndose ver sólo uno
en el diagrama de bloques. Su contenido (en el interior de la estructura) se ejecuta dependiendo
del valor que se le conecta al selector, por ende, posee como mínimo dos sub diagramas, True
y False pudiéndose alambrar valores enteros lógicos, de cadena o enumerados.
Equivale a decir en un lenguaje tradicional If (true) then (ejecutar case true) Else (ejecutar
case false)
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
37
Figura 5.30 Case Structure (Estructura Caso)
Sequence Structure (Estructura Secuencia)
Trabaja similar al Case Structure, es decir, sólo se puede visualizar un sub diagrama o cuadro a la
vez en el diagrama de bloques, (los demás van quedando debajo), posee un identificador de sub
diagrama en la parte superior con botones cuya función es avanzar o retroceder. Sin embargo,
como su nombre lo dice, secuencia su ejecución ¿qué quiere decir esto? Primero ejecuta la hoja
número “0” o frame, luego la número “1” y así sucesivamente. Esta estructura no devuelve
ningún dato hasta que se ejecuta el último cuadro.
Ejemplo
A continuación, procedemos a realizar un ejercicio bastante útil en lo que se refiere a la
comunicación serial y donde participa uno de los tipos de estructuras que usan más de un sub
diagrama.
El programa que se realiza se diseñó con la finalidad de testear y verificar el correcto
funcionamiento del puerto serie. Para ello es necesario un conector serial de 9 pines (ver figura
5.31) y enseguida cortocircuitar los pines 2 y 3.
Figura 5.31 Conector serial de 9 pines
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
38
Figura 5.32 Pines conector serial rs-232
Observación: LabVIEW asigna como Port 0 al COM1 de la PC.
Para comenzar a programar, podemos ir enseguida al diagrama de bloques e inicializar el puerto
serie, LabVIEW posee un bloque en donde vienen los valores predefinidos para una correcta
comunicación (port number, baud rate, data bits, stop bits, parity y buffer size). Programando
nuestro primer sub diagrama con un Sequence Structure tenemos:
Figura 5.33 Ejemplo inicialización puerto serie
Haciendo clic derecho en el borde de la estructura Sequence se nos abre un menú donde nos
posicionamos en Add Frame Alter y hacemos clic para iniciar la parte de escritura en un nuevo
sub diagrama, de este modo podemos escribir nuestros datos hacia el puerto indicado
(Port number o Nº Puerto). El bloque escribe los datos en el parámetro de entrada String
Write del puerto serial indicado en el parámetro de entrada port number (Nº Puerto).
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
39
Figura 5.34 Ejemplo escritura puerto serie
Agregamos un nuevo Frame para hacer un delay de 1 segundo (retraso) con en el fin de que
todos los datos escritos lleguen correctamente. El bloque Wait (ms) lo encontramos en la
paleta de funciones del diagrama de bloques en la sección Timing.
Figura 5.35 Ejemplo delay puerto serie
Finalmente, programamos la parte de lectura donde se lee el número de caracteres especificados
por el parámetro de entrada requested byte count del puerto serial indicado en el number port. El
bloque Bytes At serial Port retorna el número de bytes que hay en la entrada del
buffer del puerto serial indicado en el number port.
Figura 5.36 Ejemplo lectura puerto serie
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
40
El Panel frontal queda a gusto del programador.
Figura 5.37 Ejemplo test puerto serial
Event Structure
Este tipo de estructuras presenta varios sub diagramas, los cuales se ejecutan exactamente cuando
la estructura se ejecuta. La estructura de Evento espera hasta que sucede algún evento. Se pueden
agregar nuevos eventos haciendo clic derecho en el borde de la estructura evento y posicionarse
en Add Event Case. La implementación del sistema monitoreo para la Pesquera el Golfo Corral
esta programada bajo Event Structure.
5.8 Registro de desplazamiento
Se les conoce también como Shift Register y son variables locales (En las hojas posteriores se
explicará lo que es una variable local). Al hacer clic con el botón derecho del mouse en el borde
de la estructura While o For Loop aparece un menú con la opción Add Shift Register.
El propósito del Shift Register es el almacenamiento de datos, por ejemplo, el terminal de la
derecha va almacenando el valor final de la repetición o iteración. Cuando sucede una nueva
repetición, este valor se mueve al terminal izquierdo y el nuevo valor queda en el terminal
derecho.
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
41
Figura 5.38 (a) Add shif register (b) Añadir elementos
Con la opción Add Shift Register se pueden ir añadiendo elementos, que quiere decir esto, que
cuanto más terminales tengamos en el lado izquierdo más valores de iteraciones anteriores
podremos almacenar (ver figura 5.38 b).
Ejemplo
En el siguiente ejemplo, se diseña un programa con la ayuda de un For While que cuenta hasta 10
segundos, al transcurrir los 10 segundos este se detiene y muestra un mensaje que indica que se
han cumplido los 10 segundos.
Panel Frontal
Figura 5.39 (a) For While (b) mensaje
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
42
Diagrama de Bloques
(c)
Figura 5.40 Ejemplo registro desplazamiento
5.9 Nodo Fórmula
Nodo de Fórmula o Formule Node resulta muy útil para resolver ecuaciones con muchas
variables relativamente complejas. Lo primero a realizar es definir las variables de entrada y
salida haciendo clic derecho en el borde del rectángulo y posicionándose ya sea en Add Input o
Add Output aparece un cuadro pequeño de color naranjo donde se escribe la variable. En el
interior del rectángulo se escribe la fórmula.
Figura 5.41 Ejemplo nodo fórmula
Se pueden ocupar funciones trigonométricas entre otras.
Observación: En la misma paleta donde encontramos el Formule Node, se encuentra otro icono
llamado MathScript Node que es similar al anterior, sólo que este trabaja más con la sintaxis de
MATLAB®
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
43
Ejemplo
En el siguiente ejemplo, realizamos un VI donde obtendremos el valor de la caída de voltaje y la
potencia demandada por un resistor. Los valores de entrada son la corriente y el valor de la
resistencia.
En nuestro panel frontal vamos a colocar dos controles numéricos y dos indicadores numéricos.
Dentro del Nodo de Fórmula vamos a escribir la fórmula para calcular la caída de voltaje
conociendo la corriente (I) y el valor de la resistencia (R) y la fórmula de consumo de potencia
(W), separamos las dos fórmulas por medio de un punto y coma tal como se muestra en la figura
5.43.
Figura 5.42 Ejemplo práctico nodo fórmula (panel frontal)
Observación: Después de cada formula debes colocar un punto y coma.
Para colocar las entradas y salidas del nodo de fórmula, uno debe posicionarse sobre el marco de
la estructura y dar un clic derecho con el mouse, se desplegará un sub menú, se elige la opción
Add Input en el recuadro que aparece, posteriormente se coloca el nombre de la variable tal
como hemos querido llamarla en la fórmula. (Se hace lo mismo para las salidas, claro la opción
será Add Output). Dos entradas una para corriente (I) y otra para el valor de la resistencia (R) y
dos salidas una para el valor de caída de voltaje (V) y la otra para el valor de potencia (P), tal
como se aprecia en la figura 5.43.
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
44
Figura 5.43 Ejemplo práctico nodo fórmula (diagrama de bloques)
Observación: No existe límite para el número de variables o de fórmulas y nunca podrá haber 2
entradas o 2 salidas con el mismo nombre, aunque una salida si podrá tener el mismo nombre que
una entrada. Todas las variables de salida deberán estar asignadas a una fórmula por lo menos
una vez.
5.10 Arreglos y Cluster
Arrays
Arreglos o Arrays es un grupo de elementos de datos del mismo tipo, se compone de elementos y
dimensiones. Se entiende como elemento a los datos que conforman un arreglo y dimensión
como la longitud, altura o profundidad del mismo.
Indexado
Para colocar un elemento en particular en un arreglo este requiere un índice por dimensión. En
LabVIEW, el indexado permite navegar a través de un arreglo y además recuperar elementos,
filas, columnas, y páginas de un arreglo en el diagrama de bloques. Un ejemplo de un arreglo es
una señal de onda representada como un arreglo numérico en el cual cada elemento es el valor de
voltaje de sucesivos intervalos de tiempo, pero este ejemplo es de 1D (una dimensión).
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
45
Un arreglo de 2D guarda los elementos en un tipo de rejilla (tabla). Esto requiere un índice de
columna y un índice de fila para localizar cada elemento, ambos índices de localización
comienzan en cero. Por ejemplo, un tablero de ajedrez tiene ocho columnas y ocho filas para
formar un total de 64 posiciones. Cada posición esta vacía o tiene una pieza de ajedrez. Se puede
representar un tablero de ajedrez con un arreglo de texto de 2D.
Restricciones de los arreglos
Se puede crear un arreglo casi de cualquier tipo de datos, con las siguientes excepciones:
• No se pueden crear arreglos de arreglos. Independientemente, se pueden utilizar un
arreglo multidimensional o usar la función Build Cluster Array para crear un arreglo de
cluster donde cada cluster contiene uno o más arreglos.
• No se puede crear un arreglo de gráficos, porque un gráfico es un tipo de datos del arreglo
y un arreglo no puede contener otro arreglo. Sin embargo, se puede tener un arreglo de
gráficos si el gráfico está dentro de un cluster.
• No se puede crear arreglos de charts.
En la paleta de funciones del diagrama de bloques encontramos diferentes tipos de arreglos para
crear y manipular (ver figura 5.44) como por ejemplo, extraer un elemento individual, dividir,
insertar , eliminar o reemplazar un elemento dentro de un arreglo.
Figura 5.44 Arreglos
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
46
Cluster
Los clusters agrupan diferentes tipos de elementos o datos, como un bulto de alambres, es decir,
como en un cable del teléfono dónde cada alambre en el cable representa un elemento diferente
del cluster. Un cluster es similar a un registro o una estructura en los lenguajes de programación
basados en texto. La agrupación de los datos en los clusters elimina el desorden de los alambres
en el diagrama de bloques y reducen el número de conectores o terminales que un subVI necesita.
El panel de conectores tiene la capacidad, a lo sumo, de 28 términos. Si su panel frontal contiene
más de 28 controles e indicadores que se quieren usar en su programa, lo que se hace es agrupar
algunos de ellos en un cluster y asignar el cluster a uno de las terminales del panel de conectores.
Figura 5.45 Iconos cluster
Aunque un cluster y un arreglo de elementos en ambos existe un ordenamiento, se debe
desagrupar todos los elementos del cluster en lugar de escribir un índice de un elemento a la vez.
Se puede también usar la función Unbundle By name y así acceder a los elementos del cluster
específicos.
Los cluster también difieren de los arreglos en que ellos son de un tamaño fijo. Como un arreglo,
un cluster puede ser un control o un indicador. Un cluster no puede contener una mezcla de
controles e indicadores. La mayoría de los cluster en el diagrama de bloques se caracterizan por
que el alambre y el icono de los datos son de color rosado.
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
47
Los cluster de números, se caracterizan por un alambre y un icono de datos de color café. Se
pueden alambrar los cluster numéricos de color café a las funciones numéricas, como a la función
Add, Square Root, para realizar la misma función simultáneamente en todos los elementos del
cluster.
5.11 Indicadores Gráficos: Graph y Charts
Existen variados tipos de indicadores gráficos en LabVIEW, se destacan principalmente:
Waveform Graph, Waveform Chart, Intensity Graph, Intensity Chart, XY Graph, 3D Graphs y
Digital Waveform Graph.
Waveform Graph - Chart
Después de adquirir o generar datos, utilizar un Graph (gráfico) o un Chart es una muy idea para
desplegar datos de una forma gráfica.
Los Graph y los Chart se diferencian entre sí en la manera de mostrar los datos. Un VI con un
Graph recoge generalmente los datos en un Array (arreglo) y después traza los datos al gráfico.
Cuando se trazan los datos, desecha los datos previamente trazados y muestra solamente los
nuevos datos. Se utiliza un Graph en los procesos rápidos que están continuamente recogiendo
datos. En cambio, un Chart añade nuevos puntos de referencias a esos puntos en su pantalla para
crear una especie de historial. Se utiliza un Chart en los procesos lentos en los cuales solamente
algunos puntos de referencias por segundo, se agregan al diagrama.
A pesar que el Waveform Graph y el Waveform Chart presentan diferencias, también poseen
muchas opciones iguales en donde se accede mediante un menú contextual. Por ejemplo, ambos
soportan múltiples escalas en x e y, se puede personalizar su apariencia (ver figura 5.46)
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
48
Figura 5.46 Gráfico Waveform Graph - Chart
El Waveform Graph muestra unos o más diagramas de medición uniformemente muestreados. El
Waveform Graph traza solamente funciones valoradas, como por ejemplo, y = f (x), con los
puntos distribuidos uniformemente a lo largo del eje x, tal como formas de onda de tiempo. La
figura 5.47 muestra un ejemplo de un Waveform Graph simulando ondas seno y coseno
respectivamente.
Figura 5.47 Ejemplo Waveform Graph (panel frontal)
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
49
Figura 5.48 Ejemplo Waveform Graph (diagramade bloques)
Intensity Graph – Chart
Despliega la información en 3D en una gráfica 2D mediante colores para desplegar valores de
tercera dimensión. Son útiles para representar datos de superficie, donde el color puede
representar altitud, humedad, temperatura, entre otras variables.
Figura 5.49 Gráfico Intensity Graph – Chart
Digital Waveform Graph
Despliega datos como pulsos o grupos de líneas digitales, es decir, señales digitales. Son útiles
para diagramas de tiempo.
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
50
Figura 5.50 Gráfico Digital Waveform Graph (panel frontal)
Figura 5.51 Gráfico Digital Waveform Graph (diagrama de bloques)
XY Graphs
Despliega los datos adquiridos en una tasa no constante, es decir, el mismo usuario puede
determinar la separación.
Figura 5.52 Gráfico XY Graph (panel frontal)
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
51
3D Graph
Despliega datos 3D en un gráfico 3D mediante un objeto ActiveX en el panel frontal.
Figura 5.53 Gráfico 3D Graph
5.12 Archivos I/O
Los ficheros de entrada y salida (I/O) transfieren los datos de LabVIEW a archivos y viceversa.
En la paleta de funciones del diagrama de bloques File I/O podemos encontrar bloques que nos
permiten, abrir y cerrar archivos de datos, leer y escribir datos a archivos, leer y escribir archivos
de hojas de cálculo, mover y renombrar archivos y directorios, cambiar las características de los
archivos, crear, modificar y leer una configuración de archivo.
Se pueden leer o escribir datos de tres tipos de archivos diferentes: texto, binarios y datalog. Por
ejemplo, si se quiere guardar un archivo de datos en Microsoft Excel usaremos el formato de
texto debido a que este es el más común en este tipo de trabajo.
Guardando un Archivo
Para entender rápidamente este proceso, crearemos un ejemplo donde analizaremos la amplitud
de una señal senoidal, de tal manera que si la amplitud sobrepasa o esta por debajo de un
porcentaje establecido por el usuario guarde dicho valor en un archivo de texto.
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
52
El programa muestra la amplitud actual de la señal senoidal, y dice cuantos datos se han guardado
en el archivo.
Ejemplo
Nuestro Panel Frontal lo dejamos de la siguiente manera, claro que es opcional, pues dependerá
del usuario establecer una estética que cumpla con sus necesidades.
Figura 5.54 Ejemplo práctico con Waveform Graph
Figura 5.55 Generación de números aleatorios
Para analizar y conocer el nuevo valor de amplitud que se esta generando utilizamos la función
de análisis que se encuentra en la paleta de funciones, Express » Signal Analysis » Tone, al
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
53
colocarla se genera una ventana en la cual configuramos el VI, en nuestro caso elegimos
únicamente la opción Amplitude.
Ahora, como ya conocemos el valor
de la amplitud instantánea, de la señal
senoidal verificamos si se encuentra
dentro del rango establecido (ver
Figura 5.57).
Restamos el valor actual menos el
valor de amplitud fundamental, y el
valor absoluto de esta operación lo
comparamos con el porcentaje
establecido. En el caso en que se
sobrepase o este por debajo del
porcentaje de error establecido vamos
a guardar el valor (ver Figura 5.58).
Figura 5.56 Tone measurement
Figura 5.57 Verificación del rango establecido. Figura 5.58 Etapa guarda valor
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
54
Para guardar el archivo vamos a utilizar el VI, Write to Spreadsheet File.vi, que aparece en la
paleta de funciones File I/O, para nuestro caso únicamente hemos colocado una constante en la
terminal file path, esta constante es una constante de ruta de archivo, aquí colocamos la dirección
del lugar donde queremos que el archivo se guarde (ver Figura 5.58).
Como queremos que cada vez que se genere un dato que este fuera del rango se agregue al
archivo que ya hemos creado el terminal append to file? tiene que tener una constante True para
que vaya agregando los valores, La terminal Transpose se utiliza para generar el arreglo como
fila (default) o columna, colocamos una constante True para que se despliegue en forma de
columna.
Figura 5.59 Ejemplo archivos I/O (diagrama de bloques)
5.13 Variables Locales y Globales
En LabVIEW se pueden leer o escribir datos en el panel frontal utilizando terminales en el
diagrama de bloques. Sin embargo, un objeto en el panel frontal tiene sólo un terminal en el
diagrama de bloques y su aplicación podría necesitar acceder a los datos del terminal en más de
una vez.
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
55
Hablar de variables locales o globales en LabVIEW es algo no tan fácil de entender, pues son
conceptos avanzados y una mala utilización de estas puede provocar un comportamiento
inesperado en los VI.
¿Cuándo utilizar una Variable Local?
Cuando se pretende acceder a objetos del panel frontal en más de un lugar dentro del mismo VI y
pasar la información (datos) entre las estructuras de bloque donde No se puede conectar un cable.
Trabajando con una variable local, se puede leer o escribir desde un indicador o control en el
panel frontal. En efecto, se puede acceder a un objeto del panel frontal como entrada y como
salida.
¿Cuándo utilizar una Variable Global?
Cuando se pretende acceder y pasar datos entre varios VI que se ejecutan al mismo tiempo.
Cuando en LabVIEW se crea una variable global, automáticamente este crea un VI especial, el
cual contiene un panel frontal pero No un diagrama de bloques, es decir, el panel frontal es un
contenedor de varios VI’s que pueden acceder datos.
En resumen, la diferencia entre una variable local y una global, es que con la variable local, solo
puedes intercambiar datos dentro de un mismo VI. En cambio con la variable global puedes
intercambiar datos entre diferentes VI’s.
A continuación daremos solución a un sencillo ejemplo utilizando variables locales y globales,
que consiste en el encendido de un LED por medio de un pulsador y sea apagado por otro
pulsador.
Ejemplo
Como mencionábamos anteriormente, este problema lo vamos a resolver de dos maneras
diferentes, la primera utilizando variables locales, y la otra utilizando variables globales.
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
56
a) Utilizando Variables Locales
Lo primero a realizar es ir a nuestro panel frontal y colocar 2 pulsadores y un led, asegurándonos
que los botones (pulsadores) tengan una acción mecánica al igual que un pulsador real (ver
Figura 5.60)
Panel Frontal
Figura 5.60 Pulsadores
Para seleccionar una acción mecánica del pulsador, hacemos clic derecho sobre el pulsador y nos
dirigimos a Mechanical Action (ver figura 5.61)
Figura 5.61 Menú Mechanical Action
En el diagrama de bloques, vamos a crear una variable local del indicador tipo LED, para crear la
variable local, hacemos clic derecho sobre el LED, se desplegará un menú, elegimos la opción,
Create » Local Variable. Posteriormente, colocamos 2 variables locales del indicador LED, una
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
57
dentro de cada Case, tal como se muestra en la figura 5.62, ahora conectamos un pulsador a cada
Case, en el Case en el que se ha conectado el pulsador de encendido se conecta una constante
verdadera a la variable local en el caso True, en el caso falso no se hace nada. En el otro Case
donde hemos conectado el pulsador de apagado conectamos una constante falsa a la variable
local, en el caso verdadero del case, en el caso falso no hagas nada.
Diagrama de Bloques
Figura 5.62 Variables locales (diagrama de bloques)
De manera que cuando se presiona el pulsador Encendido se ejecutara el caso verdadero en el
cual se le asigna el valor de verdadero al LED, por lo tanto enciende, cuando se deja de presionar
el botón de encendido el caso que se ejecuta el falso pero como no haz programado nada en ese
caso, el valor en la variable local queda guardado. Para apagarlo debe ejecutarse el caso
verdadero del Case al que se ha conectado el pulsador de apagado.
b) Usando Variables Globales
El panel frontal queda igual al ya visto anteriormente. Ahora, en lugar de crear variables locales,
vamos crear una variable global, se encuentran en, Functions » All Functions »
Structures » Global Variable, ahora hacemos doble clic sobre el icono de la variable global
aparecerá una ventana de panel frontal aquí coloca cualquier control o indicador booleano como
se muestra en la figura 5.61, guardamos y cerramos este panel frontal.
ANÁLISIS DEL SOFTWARE - LABVIEW
__________________________________________________________________________________
58
Figura 5.63 Variables Globales (panel frontal)
Ahora en el diagrama de bloques, hacemos clic sobre el icono de la variable
global, aparecerá la opción Boolean, la seleccionamos y automáticamente cambiará, ahora
podemos guardar datos booleanos en dicha variable global, hacemos 3 copias de esta variable, tal
como se muestra en la figura 5.64
Figura 5.64 Variables Globales (diagrama de bloques)
El funcionamiento de este programa es el mismo que en el caso anterior, lo único que ahora
debemos leer de la variable global para encender el LED.
VI ANÁLISIS EXPERIMENTAL
SISTEMA DE MONITOREO
PARA PESQUERA
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
60
6.1 Resumen del Capítulo
En el siguiente capítulo se hace referencia a la forma en que se diseñó el Sistema de Monitoreo
para una pesquera utilizando el software LabVIEW.
Se explica paso a paso las etapas realizadas que nos llevaron a la finalización con éxito de este
ambicioso proyecto.
6.2 Instalación
Instalamos LabVIEW 8.2 desde el CD siguiendo todas las instrucciones necesarias para el
correcto funcionamiento de este.
Cabe mencionar que existe un software gratuito de la MCC que se llama MCCDaq versión 5.71
para Win2000/XP/Vista (144 MB) y contiene todos los drivers de sus productos incluyendo
ULforLV (última versión), Universal Library e InstaCal 5.82. Estos puede ser descargados
individual y libremente desde el sitio ftp1
de la misma empresa.
Pero para nuestras pretensiones no es necesario instalar todo el software, existe un archivo
(driver) que esta en el ftp llamado ULforLV711a (Universal Library for LabVIEW) de 16,12 MB
que instala en LabVIEW una librería llamada MCC Data Acquisition necesaria para nuestro
proyecto práctico.
De acuerdo a las especificaciones de la MCC, Universal Library for LabVIEW - Versión 7.11a
puede ser instalada desde LabVIEW 6.0 hasta la versión 8.21, en el sistema operativo Windows
9.x/2000/XP.
1
ftp://ftp.measurementcomputing.com/downloads/MCCDaqCD
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
61
Luego de instalar LabVIEW 8.2, se procede a instalar InstaCal v.5.82 y el archivo ULforLV711a
respectivamente.
InstaCal v5.82
Hacemos doble clic en el icono icalsetup clic en Aceptar y Setup
(a)
(b)
En seguida clic en Next
(c)
Nuevamente clic en Next
(d)
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
62
Finalmente, clic en Install y Finish.
(e)
(f)
Figura 6.1 Instalación software InstaCal
Reiniciamos la PC y configuramos InstaCal de acuerdo a las especificaciones técnicas de nuestro
dispositivo PMD-1208FS (Personal Measurement Device). Abrimos InstaCal desde la ruta
Inicio»Programas»Measurement Computing»InstaCal y se nos presenta una pantalla como
muestra la figura 6.2a, luego hacemos clic en Add Board del menú Install (ver figura 6.2b).
(a) (b)
Figura 6.2 Configuración InstaCal Paso 1
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
63
Al haber hecho clic en Add Board escogemos del menú ISA el modelo DEMO-BOARD que es
necesario para utilizar la DAQ 1208FS y que por defecto viene configurado con
Board Number = 0 (ver figura 6.3a) y hacemos clic en Add para añadirlo (ver figura 6.3b). Luego
cerramos InstaCal.
(b)
(a)
Figura 6.3 Configuración InstaCal Paso 2
ULforLV711a
Los requerimientos necesarios para la instalación de ULforLV711a son:
• Espacio en el disco
• LabVIEW™
• InstaCal™
Observación: Sabiendo lo anterior, al tratar de instalar los drivers de ULforLV711a no teniendo
instalado el InstaCal el proceso de instalación de los drivers se interrumpe y nos vemos en la
obligación de cancelar la instalación.
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
64
El programa ULforLV711a.exe es un archivo de tipo ZIP self-extracting que contiene la imagen
del CD. Para extraer la imagen simplemente hacemos doble clic en el archivo, escogemos la
carpeta donde se extraerán los archivos (por defecto es la C:windowsTemp) escribimos la
contraseña2
y hacemos clic en OK se instalará automáticamente y reiniciamos.
Figura 6.4 Descompresión ULforLV711a
6.3 Análisis
En base a un análisis teórico del software LabVIEW y evolucionando desde la versión 6.0 hasta
llegar a la versión 8.2, damos solución a uno de nuestros objetivos más grandes que consistió en
la creación de un sistema de monitoreo programado en lenguaje G complementado con la
utilización de un dispositivo de adquisición de datos (DAQ) para la obtención de variables físicas
y su posterior análisis.
A grandes rasgos, la topología del sistema de monitoreo para una pesquera (a modo de ejemplo la
pesquera el Golfo Corral en Valdivia) queda como se muestra en la Figura 6.5
2
La contraseña es: mcclv711a entregada por la MCC en un archivo llamado “readme.txt”.
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
65
Panel Frontal
Figura 6.5
En la paleta de controles del panel frontal en Containers dividimos la pantalla en dos mediante la
función Vert Spliter Bar (ver Figuras 6.6a y 6.6b respectivamente) con la finalidad de dejar en el
lado izquierdo opciones fijas para mayor flexibilidad al sistema, como por ejemplo, la ruta de
acceso al archivo que guardará las muestras, el tiempo de muestreo, el menú de cambio de
páginas y un botón de stop para detener el programa. Y en el lado derecho las funciones más
importantes como es el propio monitoreo con las distintas variables a adquirir.
(a)
(b)
Figura 6.6 Paleta controles Containers
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
66
Con la paleta de herramientas, como mencionamos en el capítulo V, le damos apariencia a
nuestro VI en el panel frontal, principalmente utilizando colores. En el lado derecho de la pantalla
y volviendo al control Containers seleccionamos la opción Tab Control que es de gran utilidad
para el paso automático de una variable a otra (páginas) mediante la configuración del teclado o
mouse (ver figura 6.7).
Figura 6.7 Paleta de herramientas Figura 6.8 Tab control
Haciendo clic derecho en el borde del Tab Control se despliega un menú donde existen variadas
características para modificarlo, una de ellas es la de poder ir añadiendo Pages (páginas) con la
opción Add Pages After/Before y complementarlo con la paleta de herramientas para darle una
atractiva apariencia.
Figura 6.9 Ejemplo Tab control
Sub Sistema de Adquisición de datos
La principal etapa o el corazón de toda la programación G es la simulación de la DAQ. Con la
ayuda de los controles MCC Data Acquisition (ver figura 6.10) programamos virtualmente la
DAQ USB 1208FS. Lo que se hace principalmente es obtener las variables físicas, convertir estas
señales en variables de voltaje y posteriormente visualizarlas.
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
67
Figura 6.10 Controles MCC Data Acquisition
Para simular la DAQ USB 1208FS ocupamos 3 bloques obtenidos de distintos controles de la
librería MCC Data Acquisition.
AIn.vi Analog Input
ToEng.vi Signal Configuration
ErrMsg.vi Calibration & Configuration
Internamente estos bloques los configuramos de la siguiente manera:
AIn lee la entrada de un canal A/D.
Figura 6.11 Bloque AIn
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
68
ToEng Convierte, ya sea un valor simple o un array A/D a un valor equivalente en voltaje o
corriente.
Figura 6.12 Bloque ToEng
ErrMsg Devuelve un mensaje de error asociado a un código de error. Si el código de error no es
igual a 0 indica que ocurrió un error.
Figura 6.13 Bloque ErrMsg
La etapa de simulación de la DAQ 1208FS nos queda de la siguiente forma:
Figura 6.14 Etapa simulación de la DAQ 1208FS
Observación: BoardNum se refiere al número de placa asociada con la placa configurada cuando
se instaló el programa InstaCal (igual número)
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
69
Sub Sistema de Almacenamiento de datos
Cada dato que es capturado por la DAQ es llevado mediante la construcción de un arreglo al
bloque Write to Spreadsheet que tiene la función de insertar ordenadamente la información en el
programa Microsoft Excel para su posterior análisis.
(a)
(b)
Figura 6.15 Subsistema de almacenamiento
Sub Sistema de Alarma
Esta etapa esta dividida principalmente en dos partes:
a) Alarma Visual
Se caracteriza por la presencia de leds verdes (on/off) para cada variable física que sobrepase
su nivel permitido para un funcionamiento estable dentro de la empresa pesquera.
En la Figura 6.16 se encuentra en la pantalla principal del sistema de monitoreo (Panel
Frontal). Cada canal indica una variable distinta adquirida por la DAQ. En caso de peligro, un
led verde se enciende como se muestra en el Canal 0.
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
70
Figura 6.16 Alarma visual (panel frontal)
La programación en el Diagrama de Bloques queda representada por los siguientes símbolos.
Haciendo doble clic dentro del icono de la bocina, entramos a la programación
que pertenece a la parte sonora.
b) Alarma Sonora
Consiste en un archivo con extensión WAV. Al sobrepasar “x” nivel, este se acciona y
comienza a sonar, actuando paralelamente con el encendido de los leds verdes.
Figura 6.17 Alarma sonora (diagrama de bloques)
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
71
Principal (panel frontal)
La pantalla principal del sistema de monitoreo queda representado como se muestra a
continuación en la figura 6.18.
Como se explicó anteriormente, dividimos la pantalla en dos mediante la función Vert Spliter
Bar. La parte izquierda de la pantalla está representada por la ruta de archivo, el tiempo de
muestreo, los distintos menús y el botón de stop para detener el funcionamiento del sistema
de monitoreo. En la parte derecha de la pantalla se identifican los 8 canales de la DAQ
1208FS, la fecha, la hora, el sistema de alarma y la última muestra de cada variable capturada
y visualizada en la tabla llamada base de datos.
Figura 6.18 Pantalla principal Sistema Monitoreo (panel frontal)
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
72
Exploración de los distintos menús
Menú Caldera
Nivel de Presión
Monitorea en tiempo real el
nivel de presión en Kg/cm2
de ambas calderas. Al
mismo tiempo se muestrean
las señales a medida que
trascurre el tiempo.
Figura 6.19 Pantalla nivel de presión
• Nivel de Agua
Monitorea en tiempo real el
nivel de agua de ambas
calderas. Al igual que en el
caso anterior se muestrean
las señales.
Figura 6.20 Pantalla nivel de agua
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
73
• Nivel de Temperatura
Monitorea en tiempo real
el nivel de temperatura del
petróleo de ambas
calderas.
Paralelamente se visualiza
el muestreo de ésta
variable.
Figura 6.21 Pantalla nivel temperatura de petróleo
Menú Planta
• Diagrama General
Este diagrama, detalla las principales etapas que existen para la elaboración de harina de pescado
en una planta.
a) Pozos – Cocedores – Prensas
b) Separadoras – Desborradoras
c) Planta evaporadora
d) Secadores
e) Homogenizadores – Ensaque – Transporte
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
74
Figura 6.22 Diagrama general elaboración harina de pescado
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
75
Tramo 1
Figura 6.23 Diagrama general elaboración harina de pescado
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
76
Tramo 2
Figura 6.24 Separadoras – Desborradoras (Tramo 2)
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
77
Tramo 3
Figura 6.25 Planta Evaporadora (Tramo 3)
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
78
Tramo 4
Figura 6.26 Secadores a Vapor (Tramo 4)
ANÁLISIS EXPERIMENTAL
______________________________________________________________________________________________
79
Tramo 5
Figura 6.27 Homogenizadores – Ensaque (Tramo 5)
VII PROYECTO LABORATORIO
PROYECTO LABORATORIO
______________________________________________________________________________________________
81
7.1 Proyecto de laboratorio
En nuestro proyecto de tesis se tiene considerado la proyección de un laboratorio con la finalidad de
otorgarle un espacio al software que hemos analizado en detalle con anterioridad. Para ello, es que se
procede a analizar la situación en la cual se encuentra el Instituto de Electricidad y Electrónica de la
Facultad de Ciencias de la Ingeniería de la Universidad Austral de Chile, el cual en la docencia de
pregrado posee a la fecha alrededor de 300 alumnos los cuales se verían ampliamente favorecidos con la
iniciativa que se pretende integrar en su rama de asignaturas.
Ahora, para la implementación del proyecto en si queda de manifiesto que las necesidades no son solo
del orden físico si no que además de equipamiento tecnológico, sin embargo, el costo asociado a este
concepto se estima que no es muy alto es por ello que siendo esta la única inversión a realizar se puede
deducir que la ejecución final es altamente viable.
Por otra parte, la implementación del software tiene como necesidad instantánea la adquisición de
computadores como parte integral del proyecto, ya que es aquí donde se instalaran LabVIEW y todos
los componentes que se incorporen con posterioridad.
Para continuar, con lo que se refiere al espacio físico es que se considera como lugar ideal el
laboratorio que en este momento pertenece al laboratorio de digitales siendo este adaptado a las
necesidades del futuro laboratorio de LabVIEW.
Finalmente, podemos observar que el proyecto tiene como uno de sus objetivos principales integrar
nuevas tecnologías y conocimientos a la malla curricular de los alumnos tanto del Instituto de Ingeniería
Electrónica así como de cualquiera que se interese en descubrir las posibilidades que entrega LabVIEW
como herramienta de trabajo en diversas áreas de la ingeniería.
PROYECTO LABORATORIO
______________________________________________________________________________________________
82
7.2 Resumen del proyecto
El proyecto tiene como objetivo principal integrar una nueva herramienta para ampliar las
posibilidades de los alumnos de la Facultad de Ciencias de la Ingeniería de la Universidad Austral de
Chile, para ello es que se pretende incorporar nuevos laboratorios con la tecnología necesaria para que
el trabajo se vea facilitado considerando la adquisición de computadores y diversas tarjetas de interfase
las cuales aumentan aun mas la potencialidad de LabVIEW
En cuanto a la infraestructura necesaria esta se encuentra disponible y solo se precisan pequeñas
modificaciones en lo que se refiere al mobiliario y a la red eléctrica lo que no representa una gran
inversión.
Además la futura implementación de dichas instalaciones pueden verse traducidas en una mayor
satisfacción del alumnado tanto del instituto como de la universidad en si.
7.3 Objetivos
7.3.1 ObjetivosGenerales
• Proyectar la implementación de un laboratorio de experimentación para la utilización
del software de análisis LabVIEW en su versión 8.2
7.3.2 ObjetivosEspecíficos
• Acercar a los alumnos del instituto a LabVIEW con la finalidad de que estos vallan
descubriendo las potencialidades de este nuevo software.
• Analizar los costos asociados a la implementación del proyecto del laboratorio.
• Analizar y proponer el espacio físico necesario para la implementación del laboratorio.
• Analizar las ventajas y desventajas de la implementación de dicho laboratorio.
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico
Análisis de LabVIEW para laboratorio electrónico

Weitere ähnliche Inhalte

Was ist angesagt?

Análisis cinemático de un brazo robótico de 4GDL con lenguaje Python
Análisis cinemático de un brazo robótico de 4GDL con lenguaje PythonAnálisis cinemático de un brazo robótico de 4GDL con lenguaje Python
Análisis cinemático de un brazo robótico de 4GDL con lenguaje PythonRoberto Sanz Benito
 
Simplificación de los diagramas de bloques
Simplificación de los diagramas de bloquesSimplificación de los diagramas de bloques
Simplificación de los diagramas de bloquesantovazp
 
Programacion PLD
Programacion PLDProgramacion PLD
Programacion PLDdavic_exe
 
El transistor como amplificador
El transistor como amplificadorEl transistor como amplificador
El transistor como amplificadorJomicast
 
Fuente regulable de voltaje
Fuente regulable de voltajeFuente regulable de voltaje
Fuente regulable de voltajeWiwi Hdez
 
Capítulo 3-mecanismo-de-cuatro-eslabones
Capítulo 3-mecanismo-de-cuatro-eslabonesCapítulo 3-mecanismo-de-cuatro-eslabones
Capítulo 3-mecanismo-de-cuatro-eslabonesJorge Puga Martinez
 
Modelado en espacio de estados
Modelado en espacio de estadosModelado en espacio de estados
Modelado en espacio de estadosAlejandro Flores
 
Diseño de ejes
Diseño de ejesDiseño de ejes
Diseño de ejesAly Olvera
 
TEORIA PID CONTROL EN TIEMPO DISCRETO
TEORIA PID CONTROL EN TIEMPO DISCRETOTEORIA PID CONTROL EN TIEMPO DISCRETO
TEORIA PID CONTROL EN TIEMPO DISCRETOcesarcesitar
 
Definiciones de control
Definiciones de controlDefiniciones de control
Definiciones de controlPaolo Castillo
 
Controladores (teoria de control)
Controladores (teoria de control)Controladores (teoria de control)
Controladores (teoria de control)martinezeduardo
 
Guia1 electroneumatica
Guia1 electroneumaticaGuia1 electroneumatica
Guia1 electroneumaticaEmiliano Negro
 

Was ist angesagt? (20)

Análisis cinemático de un brazo robótico de 4GDL con lenguaje Python
Análisis cinemático de un brazo robótico de 4GDL con lenguaje PythonAnálisis cinemático de un brazo robótico de 4GDL con lenguaje Python
Análisis cinemático de un brazo robótico de 4GDL con lenguaje Python
 
Simplificación de los diagramas de bloques
Simplificación de los diagramas de bloquesSimplificación de los diagramas de bloques
Simplificación de los diagramas de bloques
 
Algebra Booleana 2
Algebra Booleana 2Algebra Booleana 2
Algebra Booleana 2
 
Programacion PLD
Programacion PLDProgramacion PLD
Programacion PLD
 
Crea robot con matlab
Crea robot con matlabCrea robot con matlab
Crea robot con matlab
 
El transistor como amplificador
El transistor como amplificadorEl transistor como amplificador
El transistor como amplificador
 
Fuente regulable de voltaje
Fuente regulable de voltajeFuente regulable de voltaje
Fuente regulable de voltaje
 
Mecanismos unidad 2
Mecanismos unidad 2Mecanismos unidad 2
Mecanismos unidad 2
 
Capítulo 3-mecanismo-de-cuatro-eslabones
Capítulo 3-mecanismo-de-cuatro-eslabonesCapítulo 3-mecanismo-de-cuatro-eslabones
Capítulo 3-mecanismo-de-cuatro-eslabones
 
Modelado en espacio de estados
Modelado en espacio de estadosModelado en espacio de estados
Modelado en espacio de estados
 
Diseño de ejes
Diseño de ejesDiseño de ejes
Diseño de ejes
 
Senoides y fasores presentacion ppt
Senoides  y fasores presentacion pptSenoides  y fasores presentacion ppt
Senoides y fasores presentacion ppt
 
TEORIA PID CONTROL EN TIEMPO DISCRETO
TEORIA PID CONTROL EN TIEMPO DISCRETOTEORIA PID CONTROL EN TIEMPO DISCRETO
TEORIA PID CONTROL EN TIEMPO DISCRETO
 
Definiciones de control
Definiciones de controlDefiniciones de control
Definiciones de control
 
Controladores (teoria de control)
Controladores (teoria de control)Controladores (teoria de control)
Controladores (teoria de control)
 
Simbologia iec 60617_completa
Simbologia iec 60617_completaSimbologia iec 60617_completa
Simbologia iec 60617_completa
 
Neumatica normas iso
Neumatica normas isoNeumatica normas iso
Neumatica normas iso
 
Control de sistemas no lineales
Control de sistemas no linealesControl de sistemas no lineales
Control de sistemas no lineales
 
MEMORIAS DE LOS PLC
MEMORIAS DE LOS PLCMEMORIAS DE LOS PLC
MEMORIAS DE LOS PLC
 
Guia1 electroneumatica
Guia1 electroneumaticaGuia1 electroneumatica
Guia1 electroneumatica
 

Ähnlich wie Análisis de LabVIEW para laboratorio electrónico

José maría nieves (grupo quark srl) “laboratorios virtuales”; club saber elec...
José maría nieves (grupo quark srl) “laboratorios virtuales”; club saber elec...José maría nieves (grupo quark srl) “laboratorios virtuales”; club saber elec...
José maría nieves (grupo quark srl) “laboratorios virtuales”; club saber elec...Clishman Félix Villavicencio
 
Control de temperatura con el plc s7 200 (4)
Control de temperatura con el plc s7 200 (4)Control de temperatura con el plc s7 200 (4)
Control de temperatura con el plc s7 200 (4)Moi Torres
 
Proyecto final facultad de ingeniería.pdf
Proyecto final facultad de ingeniería.pdfProyecto final facultad de ingeniería.pdf
Proyecto final facultad de ingeniería.pdfceranobrian52
 
Electrónica digital: DIseño e implementacion de la plataforma Boole-Weblab-De...
Electrónica digital: DIseño e implementacion de la plataforma Boole-Weblab-De...Electrónica digital: DIseño e implementacion de la plataforma Boole-Weblab-De...
Electrónica digital: DIseño e implementacion de la plataforma Boole-Weblab-De...SANTIAGO PABLO ALBERTO
 
chVhdl univ valencia
chVhdl univ valenciachVhdl univ valencia
chVhdl univ valenciajjebmiz
 
pfc_jose_ignacio_perez_2007
pfc_jose_ignacio_perez_2007pfc_jose_ignacio_perez_2007
pfc_jose_ignacio_perez_2007Jos P
 
Benchmarking Informatico de sistemas de gestión de video open source
Benchmarking Informatico de sistemas de gestión de video open sourceBenchmarking Informatico de sistemas de gestión de video open source
Benchmarking Informatico de sistemas de gestión de video open sourceVale Perez Cepeda
 
Introduccion a los Sistemas Digitales
Introduccion a los Sistemas DigitalesIntroduccion a los Sistemas Digitales
Introduccion a los Sistemas Digitalesgiov gmb
 
Libro de lenguaje c
Libro de lenguaje cLibro de lenguaje c
Libro de lenguaje cjhon baez
 
Arduino user manual_es
Arduino user manual_esArduino user manual_es
Arduino user manual_esRonny96tr
 
Arduino user manual_es
Arduino user manual_esArduino user manual_es
Arduino user manual_esEPET Nº1
 
Arduino user manual_es
Arduino user manual_esArduino user manual_es
Arduino user manual_esjjjss
 
Arduino user manual_es(1).pdf
Arduino user manual_es(1).pdfArduino user manual_es(1).pdf
Arduino user manual_es(1).pdfREYKAMUS1
 
Arduino user manual_es
Arduino user manual_esArduino user manual_es
Arduino user manual_esJairo Mauricio
 
Pantallas planas ultias geneacion
Pantallas planas ultias geneacionPantallas planas ultias geneacion
Pantallas planas ultias geneacionwilmer67
 

Ähnlich wie Análisis de LabVIEW para laboratorio electrónico (20)

TFM_german_bravo_lopez
TFM_german_bravo_lopezTFM_german_bravo_lopez
TFM_german_bravo_lopez
 
José maría nieves (grupo quark srl) “laboratorios virtuales”; club saber elec...
José maría nieves (grupo quark srl) “laboratorios virtuales”; club saber elec...José maría nieves (grupo quark srl) “laboratorios virtuales”; club saber elec...
José maría nieves (grupo quark srl) “laboratorios virtuales”; club saber elec...
 
Control de temperatura con el plc s7 200 (4)
Control de temperatura con el plc s7 200 (4)Control de temperatura con el plc s7 200 (4)
Control de temperatura con el plc s7 200 (4)
 
Proyecto final facultad de ingeniería.pdf
Proyecto final facultad de ingeniería.pdfProyecto final facultad de ingeniería.pdf
Proyecto final facultad de ingeniería.pdf
 
Electrónica digital: DIseño e implementacion de la plataforma Boole-Weblab-De...
Electrónica digital: DIseño e implementacion de la plataforma Boole-Weblab-De...Electrónica digital: DIseño e implementacion de la plataforma Boole-Weblab-De...
Electrónica digital: DIseño e implementacion de la plataforma Boole-Weblab-De...
 
chVhdl univ valencia
chVhdl univ valenciachVhdl univ valencia
chVhdl univ valencia
 
pfc_jose_ignacio_perez_2007
pfc_jose_ignacio_perez_2007pfc_jose_ignacio_perez_2007
pfc_jose_ignacio_perez_2007
 
Benchmarking Informatico de sistemas de gestión de video open source
Benchmarking Informatico de sistemas de gestión de video open sourceBenchmarking Informatico de sistemas de gestión de video open source
Benchmarking Informatico de sistemas de gestión de video open source
 
Introduccion a los Sistemas Digitales
Introduccion a los Sistemas DigitalesIntroduccion a los Sistemas Digitales
Introduccion a los Sistemas Digitales
 
Libro de lenguaje c
Libro de lenguaje cLibro de lenguaje c
Libro de lenguaje c
 
Arduino user manual_es
Arduino user manual_esArduino user manual_es
Arduino user manual_es
 
Arduino user manual_es
Arduino user manual_esArduino user manual_es
Arduino user manual_es
 
Arduino user manual_es
Arduino user manual_esArduino user manual_es
Arduino user manual_es
 
Arduino
ArduinoArduino
Arduino
 
Arduino user manual_es
Arduino user manual_esArduino user manual_es
Arduino user manual_es
 
Arduino user manual_es(1).pdf
Arduino user manual_es(1).pdfArduino user manual_es(1).pdf
Arduino user manual_es(1).pdf
 
Arduino user manual_es
Arduino user manual_esArduino user manual_es
Arduino user manual_es
 
Arduino user manual_es
Arduino user manual_esArduino user manual_es
Arduino user manual_es
 
Arduino user manual_es
Arduino user manual_esArduino user manual_es
Arduino user manual_es
 
Pantallas planas ultias geneacion
Pantallas planas ultias geneacionPantallas planas ultias geneacion
Pantallas planas ultias geneacion
 

Mehr von Universidad Telesup

Mehr von Universidad Telesup (14)

Tema5
Tema5Tema5
Tema5
 
Amplificadores operacionales AMP
Amplificadores operacionales AMPAmplificadores operacionales AMP
Amplificadores operacionales AMP
 
Capitulo 7 -_transistores_mos
Capitulo 7 -_transistores_mosCapitulo 7 -_transistores_mos
Capitulo 7 -_transistores_mos
 
Dispositivos y componentes electronicos
Dispositivos y componentes electronicosDispositivos y componentes electronicos
Dispositivos y componentes electronicos
 
Arduino GSM/GPRS
Arduino GSM/GPRSArduino GSM/GPRS
Arduino GSM/GPRS
 
Excel financiero sesion 1-presentacion
Excel financiero sesion 1-presentacionExcel financiero sesion 1-presentacion
Excel financiero sesion 1-presentacion
 
Estado perdidas y ganancias flujo de caja
Estado perdidas y ganancias flujo de cajaEstado perdidas y ganancias flujo de caja
Estado perdidas y ganancias flujo de caja
 
Sistema scada
Sistema scadaSistema scada
Sistema scada
 
18188206 sistema-scada
18188206 sistema-scada18188206 sistema-scada
18188206 sistema-scada
 
Electronica 555 timer_its_applications
Electronica 555 timer_its_applicationsElectronica 555 timer_its_applications
Electronica 555 timer_its_applications
 
Transistores
TransistoresTransistores
Transistores
 
Diodo
DiodoDiodo
Diodo
 
Semiconductores intrínsecos y los semiconductores dopados
Semiconductores intrínsecos y los semiconductores dopadosSemiconductores intrínsecos y los semiconductores dopados
Semiconductores intrínsecos y los semiconductores dopados
 
Sólidos cristalinos
Sólidos cristalinosSólidos cristalinos
Sólidos cristalinos
 

Análisis de LabVIEW para laboratorio electrónico

  • 1. “ANÁLISIS DE SOFTWARE PARA DESARROLLO ENTORNO GRÁFICO LABVIEW Y PROPUESTA DE IMPLEMENTACIÓN PARA LABORATORIO EN EL INSTITUTO DE ELECTRICIDAD Y ELECTRÓNICA EN UNIVERSIDAD AUSTRAL DE CHILE” Trabajo de Titulación para optar al Título de Ingeniero Electrónico PROFESOR PATROCINANTE: Sr. Pedro Rey Clericus RODRIGO GONZÁLEZ CAYUFILO RODRIGO PRADINES PINO Valdivia, Diciembre 2007 UNIVERSIDAD AUSTRAL DE CHILE FACULTAD DE CIENCIAS DE LA INGENIERÍA ESCUELA DE ELECTRICIDAD Y ELECTRÓNICA
  • 2. ii PROFESOR PATROCINANTE PEDRO REY CLERICUS …………………………………. PROFESORES INFORMANTES NÉSTOR FIERRO MORINEAUD ………………………………… RICARDO GUTIÉRREZ ZÚÑIGA ………………………………… FECHA ………………………………….
  • 3. iii Agradecimientos Me puse a pensar a quién podría agradecer. Se me hizo un nudo en la garganta. Y me puse a llorar. Entonces, decidí agradecer: A Dios. A mi familia. A mis profesores A mis compañeros/as. A mis amigos/as. Y a toda persona que ha intervenido en mi andar por la vida. A todos ellos, gracias por el constante apoyo en este importante logro. Luego, me puse a pensar todo lo nuevo que podría venir. Desapareció el nudo. Y una sonrisa, quiso ser parte de estas líneas. Rodrigo Pradines Pino Agradezco a todos y cada una de las personas que me acompañaron y apoyaron a cada momento, es gracias a ellos que todo esto se hizo posible. Agradezco a Rosa y Scarlett, mi familia, a Corina por darme las fuerzas y llegar en el momento justo, profesores, amigos y compañeros por la paciencia prestada durante este periodo por los momentos de alegría vividos, pero más aun por estar en los momentos de tristeza, es gracias a ellos que ahora puedo sonreír. Una nueva etapa comienza llego el momento de empezar a vivirla. Rodrigo Edgardo González Cayufilo
  • 4. iv Índice de Materia Págs. Comisión de Titulación……………………………………………………………….… ii Agradecimientos………………………………………………………………………... iii Índice de Materias………………………………………………………………….…... iv - vi Índice de Fotos e Imágenes…………………………………………….......................... vii - ix Índice de Tablas………………………………………………………………………... x Resumen………………………………………………………………………………... xi Abstract…………………………………………………………………………….…... xii I. Introducción…………………….………………………………………………. 1 1.1 Introducción………..……………………………………………….. 2, 3 II. Objetivos…………………………………………………………………..……. 4 2.1 Objetivos Generales…………………………………….………….. 5 2.2 Objetivos Específicos….………………………………….………... 5 - 8 III. El problema y su importancia…………….…………………………………….. 9 3.1 Definición del problema….…………………………………………. 10, 11 3.2 Problema del sistema….…………………………………………….. 11 3.3 Solución propuesta….………………………………………………. 11 - 12 IV. Marco teórico y referencial….…………………………………………………... 13 4.1 Compendio del capítulo……….…………………………………….. 14 4.2 LabVIEW y su importancia…………………………………………. 14 - 15 4.3 Principales usos………..…………………………………………….. 16 4.4 Principales características…..………………………………………... 16 - 17 4.5 Hardware de adquisición de datos (DAQ)……..……………………. 17 - 18 4.5.1 National Instruments y Measurement Computing ………………. 18 - 20 V. Análisis del Software – LabVIEW………..……………………………………… 21 5.1 Resumen del capítulo………………..……………………………….. 22
  • 5. v 5.2 ¿Qué es un VI?...................................................................................... 22 5.3 Creando un VI………………………………………………………… 22 - 26 5.4 ¿Cómo ejecutar un VI?.......................................................................... 26 - 28 5.5 Tipos de datos……………………………………………………….... 28 5.6 Sub rutina o Sub VI………….………………………………………... 32 - 33 5.7 Estructuras de control…………………………….…………………… 34 - 39 5.8 Registro de desplazamiento……………….………………………….. 39 - 41 5.9 Nodo de fórmula…………..…………………………………………… 41 - 43 5.10 Arreglos y cluster…………………………………………………….. 43 - 46 5.11 Indicadores gráficos…..…….………………………………………... 46 - 50 5.12 Archivos I/O………………………………………………………….. 50 - 53 5.13 Variables locales y globales………………………………………….. 54 - 58 VI. Análisis Experimental…………………………………………..……………….. 59 6.1 Resumen del capítulo………….…………………………………….… 60 6.2 Instalación………….……………………………………………….…. 60 - 64 6.3 Análisis…………..………………………………………………….…. 64 - 79 VII. Proyecto laboratorio….…………………………………………………………… 80 7.1 Proyecto laboratorio………………………………………………….… 81 7.2 Resumen del proyecto…………..…………………………………….… 82 7.3 Objetivos………………………………………………………………… 82 7.3.1 Objetivos Generales ………………………….…………………. 82 7.3.2 Objetivos Específicos….……...……………………………….… 82-83 7.4 Actividades concretas para lograr los objetivos……………………..…. 83 7.5 Problema que busca resolver el proyecto...………………………….…. 83 7.6 Resultados esperados…….………………………………………….…... 84 7.7 Situación con y sin proyecto………………..………………………..…. 85 7.8 Equipamiento necesario para implementación del laboratorio.....……… 86 7.9 Espacio físico del laboratorio……………………………………….…... 86 - 89 7.10 Aplicaciones realizadas con LabVIEW……………………………..…. 89 7.11 LabVIEW a cualquier red industrial y PLC……………………………. 89 7.12 E/S digital y análoga básica.………………..……………………….…. 89 - 91
  • 6. vi 7.13 Modbus TCP y Modbus Serial…………………………………………. 91 7.14 Tarjetas de comunicación insertables……..…………….....…………… 92 7.14.1 Interfaces DeviceNet…………………...…………………….….... 92 - 93 7.14.2 Configuración DeviceNet de NI………...………………….…....... 94 7.14.3 Analizador DeviceNet de NI ……………………...………..…...... 95 7.14.4 Interfaces CANopen……………………...………………….….... 94 - 95 7.14.5 Interfase serial (RS232, RS422, y RS485)………......……………. 95 - 96 7.14.6 Productos Seriales de National Instruments.….…...………..…..... 96 7.14.7 Interfaces Profibus.…………………………...…………..…......... 97 7.14.8 OPC……………..……………………...…………………….…... 97 - 98 7.14.9 LabVIEW como un servidor OPC………………...………………. 98 7.14.10 Agregando la funcionalidad de cliente OPC a LabVIEW……….. 98 – 99 7.14.11 Publicando Datos a partir de los Dispositivos de Adquisición de Datos de NI (DAQ) con un Servidor OPC……………........... 99 7.14.12 Publicando Datos de NI Fieldpoint y CompactFieldPoint con un Servidor OPC………………………………………………... .. 99 7.14.13 Convertidores de Terceros……………………………...………… 99 – 103 7.15 Toolkit de LabVIEW para LEGO® MINDSTORMS® NXT………. 104 – 105 7.16 Monitoreo y Control de una Línea Neumática en una Planta de ensamble automotriz ……………………………………….............. 106 7.16.1 Hardware…………………………….….…...…………....…… 106 7.16.2 Software.…………………………...…………..…................... 107-108 VIII. Conclusiones………………………………………………………….. .. 109 Conclusiones..……………………………...…………..….................... 110 – 111 IX. Glosario ………………………………………………………………… 112 9.1 Glosario …………………………………………………………. 113 X. Referencia Bibliográfica …………………………………………………114 10.1 Linkografía …………………………………………………….. 115 XI. Anexo…………………………………………………………………… 116 Anexo 1 Plantas simulación laboratorio...…………..…...................... 117 - 122 Anexo 2 Cotizaciones…………………...…………..…...................... 123 - 127
  • 7. vii Índice de Fotos e Imágenes Págs. Figura 4.1 Diagrama adquisición de datos basada en PC 18 Figura 4.2 Modelo: USB - 1208FS 18 Figura 4.3 Modelo: USB – 6008 18 Figura 4.4 DAQ 19 Figura 4.5 Software InstaCal 20 Figura 4.6 Librería Universal LabVIEW 7.11a 20 Figura 5.1 Ventana inicio nuevo VI 22 Figura 5.2 Panel frontal 23 Figura 5.3 Diagrama de bloque 23 Figura 5.4 Controles de entrada 23 Figura 5.5 Indicadores de salida 24 Figura 5.6 Menú Paletas de Controles y Herramientas 25 Figura 5.7 Paleta de controles 25 Figura 5.8 Paleta de herramientas 25 Figura 5.9 Menú paleta de funciones 26 Figura 5.10 Paleta de funciones 26 Figura 5.11 Visualización de paletas 26 Figura 5.12 Panel control Compuertas Lógicas 27 Figura 5.13 Diagrama de bloques Compuertas Lógicas 28 Figura 5.14 Esquema Tipos de datos 28 Figura 5.15 Controles e Indicadores booleanos 29 Figura 5.16 Diferentes representaciones para los datos numéricos 30 Figura 5.17 Datos alfanuméricos Panel de control 30 Figura 5.18 Datos alfanuméricos Diagrama de bloque 30 Figura 5.19 Ejemplo Dato alfanumérico Panel de control 31 Figura 5.20 Ejemplo Dato alfanumérico Diagrama de bloque 31 Figura 5.21 Ejemplo suma de dos números 31 Figura 5.22 Ejemplo Concatenate strings Panel de control 32 Figura 5.23 Concatenate strings Diagrama de bloques 32 Figura 5.24 Show connector 33 Figura 5.25 Icono show connector 33 Figura 5.26 Terminal asignado Icono show connector 34 Figura 5.27 Edit Icono show connector 34 Figura 5.28 Icono ejemplo Show Connector 34 Figura 5.29 Estructuras 35 Figura 5.30 Case Structure (Estructura Caso) 36 Figura 5.31 Conector serial de 9 pines 37 Figura 5.32 Pines conector serial rs-232 38 Figura 5.33 Ejemplo inicialización puerto serie 38 Figura 5.34 Ejemplo escritura puerto serie 39 Figura 5.35 Ejemplo delay puerto serie 39 Figura 5.36 Ejemplo lectura puerto serie 39
  • 8. viii Figura 5.37 Ejemplo test puerto serial 40 Figura 5.38 Add shif register 41 Figura 5.39 For While 41 Figura 5.40 Ejemplo registro desplazamiento 42 Figura 5.41 Ejemplo nodo fórmula 42 Figura 5.42 Ejemplo práctico nodo fórmula (panel frontal) 43 Figura 5.43 Ejemplo práctico nodo fórmula (diagrama de bloques) 44 Figura 5.44 Arreglos 45 Figura 5.45 Iconos cluster 46 Figura 5.46 Gráfico Waveform Graph - Chart 48 Figura 5.47 Ejemplo Waveform Graph (panel frontal) 48 Figura 5.48 Ejemplo Waveform Graph (diagramade bloques) 49 Figura 5.49 Gráfico Intensity Graph – Chart 49 Figura 5.50 Gráfico Digital Waveform Graph (panel frontal) 50 Figura 5.51 Gráfico Digital Waveform Graph (diagrama de bloques) 50 Figura 5.52 Gráfico XY Graph (panel frontal) 50 Figura 5.53 Gráfico 3D Graph 51 Figura 5.54 Ejemplo práctico con Waveform Graph 52 Figura 5.55 Generación de números aleatorios 52 Figura 5.56 Tone measurement 53 Figura 5.57 Verificación del rango establecido 53 Figura 5.58 Etapa guarda valor 53 Figura 5.59 Ejemplo archivos I/O (diagrama de bloques) 54 Figura 5.60 Pulsadores 56 Figura 5.61 Menú Mechanical Action 56 Figura 5.62 Variables locales (diagrama de bloques) 57 Figura 5.63 Variables Globales (panel frontal) 58 Figura 5.64 Variables Globales (diagrama de bloques) 58 Figura 6.1 Instalación software InstaCal 62 Figura 6.2 Configuración InstaCal Paso 1 62 Figura 6.3 Configuración InstaCal Paso 2 63 Figura 6.4 Descompresión ULforLV711a 64 Figura 6.5 Topología del sistema de monitoreo 65 Figura 6.6 Paleta controles Containers 65 Figura 6.7 Paleta de herramientas 66 Figura 6.8 Tab control 66 Figura 6.9 Ejemplo Tab control 66 Figura 6.10 Controles MCC Data Acquisition 67 Figura 6.11 Bloque AIn 67 Figura 6.12 Bloque ToEng 68 Figura 6.13 Bloque ErrMsg 68 Figura 6.14 Etapa simulación de la DAQ 1208FS 68 Figura 6.15 Subsistema de almacenamiento 69 Figura 6.16 Alarma visual (panel frontal) 70 Figura 6.17 Alarma sonora (diagrama de bloques) 70 Figura 6.18 Pantalla principal Sistema Monitoreo (panel frontal) 71
  • 9. ix Figura 6.19 Pantalla nivel de presión 72 Figura 6.20 Pantalla nivel de agua 72 Figura 6.21 Pantalla nivel temperatura de petróleo 73 Figura 6.22 Diagrama general elaboración harina de pescado 74 Figura 6.23 Pozos – Cocedores – Prensa (Tramo 1) 75 Figura 6.24 Separadoras – Desborradoras (Tramo 2) 76 Figura 6.25 Planta Evaporadora (Tramo 3) 77 Figura 6.26 Secadores a Vapor (Tramo 4) 78 Figura 6.27 Homogenizadores – Ensaque (Tramo 5) 79 Figura 7.1 Entrada laboratorio 85 Figura 7.2 Mobiliario laboratorio 86 Figura 7.3 Equipamiento laboratorio 86 Figura 7.4 CompactRIO de NI y Allen-Bradley Control Logix Integration con E/S Digital 90 Figura 7.5 Interfases DeviceNet de Conexión Directa de National Instruments 92 Figura 7.6 Interfases CANopen de National Instruments 94 Figura 7.7 Interfases Seriales de National Instruments 96 Figura 7.8 OPC está diseñado para mejorar la conectividad del sistema empresarial. 97 Figura 7.9 Convertidores de Terceros Proveedores de HMS, Hilscher, y Woodhead 99 Figura 7.10 LabVIEW y LEGO 103 Figura 7.11 Robótica LEGO y LabVIEW 104 Figura 7.12 Monitoreo y Control de una Línea Neumática en una Planta de Ensamble Automotriz 107 Figura 9.1 Diseño planta 1 113 Figura 9.2 Diseño planta 2 113 Figura 9.3 Diseño planta 3 114 Figura 9.4 Diseño planta 4 114 Figura 9.5 Diseño planta 5 115 Figura 9.6 Diseño planta 6 115 Figura 9.7 Diseño planta 7 116 Figura 9.8 Diseño planta 8 116 Figura 9.9 Diseño todas las plantas 117
  • 10. x Índice de Tablas Tabla 5.1 Tabla Estructuras 35 Tabla 7.1 Situación con y sin proyecto 84 Tabla 7.2 Costos implementación laboratorio 85
  • 11. xi Resumen Una de principales necesidades de la empresa de hoy es el control total o parcial de sus actividades, esto se traduce en un mejor rendimiento tanto del equipamiento de la industria así como de los mismos trabajadores que son parte del proceso. Es por ello que para nuestro trabajo de titulación hemos considerado el diseño de un instrumento virtual que se complemente y ajuste a las necesidades y actividades de la empresa actual teniendo como principales objetivos la necesidad de centralizar determinados procesos y abriendo además la posibilidad de gradualmente abarcar la totalidad de los procesos realizados en una planta pesquera. El diseño de dicho instrumento se traduce en un mayor control de las actividades y por ende un mayor aprovechamiento de los recursos lo cual es uno de los principales objetivos de la empresa moderna. Pero para lograr dicho instrumento se necesito una herramienta que para nuestro caso se titula LabVIEW el cual es proporcionado por la empresa internacional National Instruments. Dicha herramienta es un poderoso software con una plataforma gráfica de diseño de sistemas para el desarrollo de pruebas, control y diseño de sistemas embebidos entre otros. Sin embargo, antes de realizar dicho instrumento virtual y debido a que es un software poco utilizado, nos vemos en la necesidad de realizar una reseña de este con la finalidad de acercar tanto al profesorado así como a los mismos alumnos a los conceptos básicos para la utilización del software lo cual permite un mayor entendimiento del trabajo realizado. Finalmente, se proyecta la implementación de un laboratorio dedicado única y exclusivamente a la utilización del software en automatización con trabajos en tiempo real, analizando las necesidades para conseguir su implementación, así como para aplicaciones y ventajas que este ofrecería en laboratorios e industrias.
  • 12. xii Abstract One of the mains necesities of today's companies, its to have total or parcial control of their activities, this translate into a better performance of the industry equipment as well as their workers wich are part of the process. That's why that we have consider for our intership, the design of a virtual instrument that will complement, and adjust to the necesitiesand activities of today's companies having as a main object the necesity of focusing in certains process, and opening the posibilities of slowly incorporate the totally of the process done in pesquera by using this instrument it translate into a higher contro of the activities, and as a result a better usage of the resources which is one of the goals of the modern companies. We are working with a tool that we have named labview which is giving to us by the international natinal instrument these tool its a powerful software with a graphic platform of design of sistems to develop test, control, and design of embebid sistems just to name a few. However, before making such a virtual instrument and because it is a little-used software, we feel the need to make a review of this, with the aim of bringing both teachers and the students themselves to the basic concepts for its use, which allows for a greater understanding of the work done. Finally, it is planned to implement a laboratory devoted solely to the use of automation software works in real time, analyzing needs to get its implementation, as well as for applications and advantages that this offer in laboratories and industries.
  • 14. INTRODUCCIÓN ______________________________________________________________________________________________ 2 1.1 Introducción. Mas que conocidos son los grandes desarrollos que se han realizado en los últimos tiempos con la ayuda de herramientas informáticas llámese software o hardware. La tecnología se a encargado de solucionar grandes problemas que en su momento se pensó seria imposible resolver. Factores como la reducción de tiempos en tareas determinadas, mejoramiento del trabajo, reducción de costos de los procesos, automatización, etc. han sido el fruto del apoyo brindado por una infinidad de software desde D.O.S hasta complejos software de calculo matemático gestión, contabilidad se han transformado en un aliado poderoso tanto para empresas, profesionales y sin dudarlo para nosotros los estudiantes en una herramienta poderosa para la solución de problemas y el desarrollo de nuevas ideas. Es por eso que como trabajo de titulación nos hemos propuesto analizar LabVIEW este software propiedad de National Instruments fue creado en el año 1987 teniendo como objetivo entregar al operador la posibilidad de realizar diversos análisis en variadas áreas siendo unas de las mas fuertes la automatización, siendo una de sus principales características la facilidad de manejo debido a que incorporaba un nuevo sistema de programación llamado G en alusión a su interfaz grafica. Al cabo de un tiempo muchos fueron los interesados en trabajar con el y por ende muchas las aplicaciones realizadas lo que ah transformado a LabVIEW de una herramienta de análisis a un software capaz de resolver grandes problemas en la industria ya sea en el área de automatización entregando la posibilidad de monitorear diversos procesos o bien realización de SCADA, así como en comunicaciones, etc. Sin embargo, nuestro trabajo no solo se limita a un simple análisis si no que además pretende demostrar de forma practica las ventajas entregadas por LabVIEW mediante una suma de ejemplos realizados y con ello la solución de problemas comunes para algunos de nosotros. Considerando además un problema real de empresa en este caso de una pesquera dando solución al problema de monitoreo de las dos calderas que posee por medio de una interfaz grafica de fácil entendimiento para los operadores, incorporando además diversos parámetros de interés del
  • 15. INTRODUCCIÓN ______________________________________________________________________________________________ 3 operador como son gráficos del comportamiento de las calderas así como almacenamiento de datos estadísticos, alarmas en casos críticos, etc. Por otra parte, dada la gran potencialidad de LabVIEW como herramienta de trabajo y por ende aprendizaje es que se propone la implementación de un laboratorio en las dependencias de nuestra universidad, esto considerando que dentro de nuestra investigación se observo que universidades extranjeras lo consideran como un ramo más dentro de la carrera lo que nos lleva a pensar en la posibilidad de que esta experiencia pueda ser reproducida dentro de nuestra facultad en un mediano plazo. Para ello, es que procedemos a evaluar los costos y las necesidades básicas para la implementación de dicho laboratorio como seria principalmente la licencia del software el espacio físico a utilizar, así como la instrumentación y equipamiento de dicho laboratorio.
  • 17. OBJETIVOS ______________________________________________________________________________________________ 5 2.1 Objetivos Generales 2.1.1 Investigar analíticamente, la herramienta de programación LabVIEW con el propósito de que las futuras generaciones lo utilicen con fines didácticos. 2.1.2 Diseñar un sistema de monitorización del estado de calderas de una pesquera usando LabVIEW. 2.1.3 Proponer la implementación de un laboratorio práctico para el trabajo con LabVIEW en el Instituto de Electrónica de la Universidad Austral de Chile. 2.2 Objetivos Específicos 2.2.1 Creación de programas (VI), para cada tema en particular a medida que se va explicando el funcionamiento del software. 2.2.2 Creación de un VI intuitivo y de fácil manejo en LabVIEW para el usuario final, que sirva como interfaz entre un PC y las calderas de una pesquera. 2.2.3 Conseguir que el proceso de encendido del equipo en la etapa del VI sea lo más automático posible evitando así la intervención de los operadores de la planta y que pueda ser manejado con teclas específicas del teclado, facilitando así la comprensión y utilización del sistema para los operarios. 2.2.4 Creación de un sub-sistema de medición en tiempo real de las variables físicas como presión, nivel de agua y temperatura del petróleo (visibles en el panel frontal del VI).
  • 18. OBJETIVOS ______________________________________________________________________________________________ 6 2.2.5 Creación de un sub-sistema de seguridad que consiste en una alarma de tipo visual como sonora, para la prevención de situaciones riesgosas que puedan ocurrir dentro de la pesquera. 2.2.6 Creación de un sub-sistema de almacenamiento de datos adquiridos mediante una tarjeta DAQ (dispositivo de adquisición de datos). 2.2.7 Guardar los datos en planilla electrónica, dando la posibilidad al usuario cambiar el programa que utiliza como base de datos, como por ejemplo, al programa bloc de notas u otro según desee y sirva para el propósito final que es de analizar los datos y detectar posibles fallas en una etapa posterior. 2.2.8 Tomar muestras cada cierto tiempo (segundos o minutos), dando la posibilidad al usuario de cambiar este valor, según sea su conveniencia para un óptimo registro. 2.2.9 Archivar las muestras con hora y fecha actual, indicando si la muestra fue de tipo normal o peligrosa según el valor límite aceptado, establecido inicialmente por el operador. 2.2.10 Posibilidad de que las muestras sean borradas al instante que deje de funcionar el VI por “x” motivos o que se vayan añadiendo tras la última muestra obtenida. 2.2.11 Visualizar el muestreo de datos mediante gráficos en tiempo real. 2.2.12 Visualizar a medida que van cambiando las muestras, la última de ellas en el panel frontal.
  • 19. OBJETIVOS ______________________________________________________________________________________________ 7 2.2.13 Analizar los aspectos necesarios para la propuesta de implementación del laboratorio, como son las posibles dependencias a utilizar, equipamiento y licencias de software, considerando sus costos y potenciales ventajas con el fin de considerar la viabilidad del proyecto.
  • 20. III EL PROBLEMA Y SU IMPORTANCIA
  • 21. EL PROBLEMA Y SU IMPORTANCIA _____________________________________________________________________________________ 10 3.1 Definición del problema El motivo que nos llevo a realizar la presente tesis es el problema presente dentro de una pesquera, esto motivado por el problema generado en la visualización de importantes parámetros tanto para los operadores así como para los técnicos, instrumentistas y todo personal que tenga relación con el funcionamiento de los equipos de la planta a nivel de operación y mantención. De modo mas especifico el problema general radica en la dificultad para visualizar las variables presentes tanto en las calderas así como en el resto de los procesos de la planta debido a que estos valores son obtenidos a partir de instrumentos análogos que en ocasiones se encuentran alojados en lugares de difícil acceso así como grandes alturas o simplemente a distancias no adecuadas para quien se interese en monitorearlas. Esto sumado a la necesidad de centralizar la información y llevar un registro específico de las actividades de la planta en lo que se refiere a la producción, es el motivo que nos lleva a encontrar una solución ad hoc al problema en la cual se pretende solucionar la totalidad de los problemas presentes además de proponer novedosas alternativas de monitorización y registro las cuales se presume serán y se transformaran en un gran beneficio para la empresa mediante un bajo grado de inversión lo que asegura la recuperación pronta de los montos invertidos. A raíz de todo esto, es que se abrieron múltiples variables de trabajo para nuestra tesis, de las cuales abarcamos dos, las cuales detallamos a continuación: Problema de la implementación y utilización del software Problema de la realización del instrumento virtual para la pesquera. Considerando estos dos factores es que además sumamos un problema a nivel de instituto el cual radica en la falta de conocimiento de LabVIEW como software de programación y análisis, y más
  • 22. EL PROBLEMA Y SU IMPORTANCIA _____________________________________________________________________________________ 11 allá de esto la gran posibilidad de transformarlo en una potente herramienta de trabajo no solo para empresas y/o en el aspecto laboral, si no que también para estudiantes y profesores esperando un feedback (retroalimentación) entre estos lo que se traduce en un rápido aprendizaje mediante desarrollos tanto prácticos como teóricos. 3.2 Problema del sistema Uno de los principales problemas encontrados es el como obtener la información y centralizarla mediante un ordenador considerando para ello el funcionamiento del proceso completo en la pesquera, analizando el proceso desde la entrada de la materia prima, pescado para este caso, hasta la salida de este como producto final que para nuestro caso es la harina de pescado (esto considerando que las pesqueras como empresa tienen una amplia variedad de productos que entregan al mercado tanto nacional como internacional). Para ello, es que nuestra principal consideración es la utilización de una DAQ (Hardware de adquisición de datos) la cual es el corazón de nuestro proyecto tesis y que fue descrito con anterioridad. Una vez conocida la DAQ (ver figura 4.2) podemos observar que este instrumento es nuestra interfaz entre las mediciones lógicas y su transformación en señales digitales lo cual se traduce en la posibilidad de ser visualizadas en el servidor instalado para dicho fin. Esta visualización es realizada a través del instrumento virtual VI creado para el caso. 3.3 Solución Propuesta Como anteriormente se menciono existen dos variables claras en nuestro proyecto de tesis para las cuales se proponen respectivamente las soluciones siendo la primera solución el planteamiento claro de la gran cantidad de posibilidades que entrega el software y como poder explotar las diversas potencialidades que este posee.
  • 23. EL PROBLEMA Y SU IMPORTANCIA _____________________________________________________________________________________ 12 Es por ello, como primera parte de nuestro proyecto entregamos la información básica para poder comenzar a utilizar el software entregando nociones básicas para la utilización y significado de los comandos utilizados, así como sus atajos, herramientas, arreglos, instrumentos virtuales, etc. Una vez conocido a cabalidad la primera parte del proyecto es que podemos proceder con la etapa de creación del instrumento virtual .VI el cual satisfacerá las necesidades planteadas y será desarrollado de acuerdo a los objetivos propuestos para la tesis, esto sin dejar de considerar el hecho de que el diseño de este sistema de monitoreo es una simple propuesta. Sin embargo, esto no es un impedimento para realizar nuestro .VI debido a que se considera la simulación de gran parte de los procesos, para ello, se ha recopilado la mayor información posible dentro de una planta pesquera para definir cuales son los procesos más importantes y por ende cuales son los procesos que deben ser monitoreados. Por último, en lo que se refiere a la tercera etapa de nuestro proyecto en la cual se considera la implementación de un Laboratorio en el cual se abra la posibilidad de enseñar LabVIEW, para ellos se considera una gran cantidad de análisis los cuales contemplan un análisis F.O.D.A así como el estudio de los espacios físicos necesarios para la eventual implementación de este y la obtención de las respectivas licencias así como los equipamientos necesarios, finalmente se contempla un resumen de los costos o mas bien la inversión necesaria así como las posibilidades de financiamiento para la realización de la propuesta entregada.
  • 24. IV MARCO TEÓRICO Y REFERENCIAL
  • 25. MARCO TEÓRICO Y REFERENCIAL _____________________________________________________________________________________ 14 4.1 Compendio del capítulo. A través del marco teórico y referencial se expresa el origen del software LabVIEW y su importancia, algunos conceptos, utilización y características dadas por los propios fabricantes. Posteriormente, se presenta una descripción general sobre la finalidad de un Hardware de Adquisición de Datos (DAQ) con un pequeño diagrama basado en PC de adquisición de datos. Luego se realiza una breve reseña sobre la relación que existe entre National Instruments y la empresa fabricante de la DAQ - elegida por nosotros - , Measurement Computing. Finalmente, se da explica la función de pequeñas utilidades que son necesarias para nuestro trabajo final. 4.2 LabVIEW y su importancia LabVIEW fue creado en 1976 por le empresa National Instruments (NI) con el propósito de funcionar sobre máquinas Apple Macintosh (MAC). Actualmente está disponible en los principales sistemas operativos utilizados en el mundo, como es Windows y Linux, entre otros. El 16 de abril de 2007, National Instruments anunció la disponibilidad de una nueva versión de LabVIEW, como es LabVIEW 8.2.1 éste software puede ser utilizado en la versión más nueva del sistema operativo de Microsoft (Windows Vista). En el capítulo primero denominado “Introducción”, nos preguntábamos ¿Qué es LabVIEW? A partir de esta interrogante, acudimos a la definición de los creadores de este software. National Instruments señala que:
  • 26. MARCO TEÓRICO Y REFERENCIAL _____________________________________________________________________________________ 15 “LabVIEW es un revolucionario entorno de desarrollo gráfico con funciones integradas para realizar adquisición de datos, control de instrumentos, análisis de medida y presentaciones de datos. LabVIEW le da la flexibilidad de un potente ambiente de programación, pero mucho más sencillo que los entornos tradicionales”. Esta definición es bastante clara, el software LabVIEW tiene funciones específicas para acelerar el desarrollo de aplicaciones de medida, control y automatización, nos proporciona herramientas poderosas para que el usuario pueda crear aplicaciones sin líneas de código (lenguaje G) y nos permite colocar objetos ya construidos para lograr crear interfaces de usuario rápidamente. Después es uno mismo el que específica las funciones del sistema construyendo diagramas de bloques. No podemos dejar de mencionar que LabVIEW se puede conectar con todo tipo de hardware incluyendo instrumentos de escritorio, tarjetas insertables, controladores de movimiento y controladores lógicos programables (PLCs). Otra de las razones que explican la importancia y le dan un punto a favor a este software es que como las necesidades de las aplicaciones van cambiando con el tiempo, los sistemas definidos y creados por el usuario de LabVIEW tienen la movilidad y la flexibilidad necesaria para adecuarse sin la necesidad de incorporar equipos nuevos. Por lo descrito anteriormente, un sistema basado en LabVIEW, simplifica el desarrollo de sistemas y tiene la habilidad de reutilizar su código, tiene acceso a sistemas de instrumentación completos con un coste mucho más bajo que un único instrumento comercial. Finalmente, una de las ventajas que posee este software y que nos llamó la atención para nuestro trabajo, fue que LabVIEW es ideal para la adquisición de datos y monitorización en la industria, es por ello que creamos y mejoramos una aplicación para la Pesquera el Golfo Corral de Valdivia.
  • 27. MARCO TEÓRICO Y REFERENCIAL _____________________________________________________________________________________ 16 4.3 Principales usos En tareas como: Adquisición de datos Control de instrumentos Automatización industrial Diseño de control Diseño embebido1 Domótica. 4.4 Principales características Hoy en día, científicos, ingenieros, técnicos y estudiantes utilizan LabVIEW para desarrollar soluciones que respondan a sus interrogantes más exigentes, es por ello que damos fe que su principal característica es la facilidad de uso que posee. También resulta válido para personas con pocos conocimientos en programación, ya que pueden realizar programas relativamente complejos, imposibles para ellos y a veces hasta para uno mismo con los lenguajes tradicionales. LabVIEW posee facilidad de manejo para las siguientes interfaces de comunicación: Puerto serie Puerto Paralelo GPIB USB PXI VXI TCP/IP UDP, DataSocket Irda, Bluetooth OPC. 1 “Embebido” quiere decir que forma parte esencial del mismo sistema.
  • 28. MARCO TEÓRICO Y REFERENCIAL _____________________________________________________________________________________ 17 LabVIEW posee la capacidad de interactuar con otros lenguajes y aplicaciones: o DLL (librerías de funciones), .NET, ActiveX, MultiSim, Matlab/Simulink, AutoCAD, SolidWorks, etc. o Herramientas gráficas y textuales para el procesado digital de señales. o Visualización y manejo de gráficas con datos dinámicos. o Adquisición y tratamiento de imágenes. o Control de movimiento (combinado incluso con todo lo anterior). o Tiempo Real estrictamente hablando. o Programación de FPGAs para control o validación. o Sincronización entre dispositivos. 4.5 Hardware de Adquisición de Datos (DAQ) National Instruments sostiene que: “La adquisición de datos es el proceso de obtener o generar información de manera automatizada desde recursos de medidas analógicas y digitales como sensores y dispositivos bajo prueba. Utiliza una combinación de hardware y software basados en PC para brindar un sistema de medida flexible y definido por el usuario.” Es por lo anterior que los dispositivos DAQ son instrumentos, ideales para una gran variedad de aplicaciones, desde registros de datos simples hasta sistemas integrados, ya que han sido diseñados con el propósito general de medir señales de voltaje.
  • 29. MARCO TEÓRICO Y REFERENCIAL _____________________________________________________________________________________ 18 La figura 4.1 muestra el diagrama general de la adquisición de datos basada en PC. Figura 4.1 Diagrama adquisición de datos basada en PC. 4.5.1 National Instruments y Measurement Computing National Instruments en el año 2006 se expandió al adquirir a Measurement Computing que es una empresa que desarrolla tarjetas de adquisición de datos de bajo coste para interfaces ISA, PCI y USB para computadoras personales. De este modo, como NI es una empresa que desarrolla tecnología en instrumentación virtual, el software NI LabVIEW ya funciona con los productos de esta compañía con sus respectivos Drivers. Dispositivos DAQ Figura 4.2 Modelo: USB - 1208FS Figura 4.3 Modelo: USB – 6008
  • 30. MARCO TEÓRICO Y REFERENCIAL _____________________________________________________________________________________ 19 Un dispositivo de este tipo, por ejemplo, el USB 1208FS posee 8 canales de entrada análoga. Tiene una resolución de 12-BIT, 50 kilo muestras/segundo (tasa de muestreo), dos salidas de D/A y 16 Digital I/O, en una presentación miniatura atractiva. Todas las señales son accesibles con tornillos en las terminales laterales. Conexión por USB . Figura 4.4 DAQ Debido a lo anterior, e indagando sobre el funcionamiento interno de este modelo, decidimos utilizarlo en nuestro experimento para la Empresa Pesquera el Golfo. Sus especificaciones técnicas se presentan en el Anexo Nº 1. Para dar funcionamiento a nuestro trabajo práctico es necesario instalar además de LabVIEW 8.2 dos utilidades necesarias: • InstaCal v5.82 • Drivers UL for LabVIEW 7.11a InstaCal es un pequeño software (15,84 MB) de la empresa Measurement Computing Corporation (MCC) que maneja completamente el hardware de una DAQ, ¿qué quiere decir esto? Por ejemplo cuando uno instala un dispositivo USB, PCI o PCMCIA, InstaCal detecta el hardware y asigna los recursos automáticamente. También existe la opción de que el usuario pueda ajustar las características del hardware según sea su necesidad.
  • 31. MARCO TEÓRICO Y REFERENCIAL _____________________________________________________________________________________ 20 Figura 4.5 Software InstaCal ULforLabVIEW711a es un archivo que contiene distintos drivers para la simulación de algunos dispositivos de adquisición de datos en LabVIEW. La versión 7.11a indica que podemos instalarlo en LabVIEW 8.0 o superior. . Figura 4.6 Librería Universal LabVIEW 7.11a
  • 32. V ANÁLISIS DEL SOFTWARE - LABVIEW
  • 33. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 22 5.1 Resumen del capítulo El siguiente capítulo da a conocer la herramienta de programación LabVIEW, se aboca principalmente a conocer, explicar, distinguir, analizar y aplicar de manera sencilla el software y su lenguaje. De este modo, y con el conocimiento ya adquirido damos solución en el capítulo VI a la parte práctica de nuestro trabajo 5.2 ¿Qué es un VI? Los programas creados con LabVIEW son usualmente denominados VI (Virtual Instruments) por la sencilla razón de que estos parecen y actúan como una copia de los instrumentos físicos, como por ejemplo, osciloscopios e instrumentos de medición. 5.3 Creando un VI Al arrancar el software a través del acceso directo o del menú de Inicio» Programas» National Instruments LabVIEW 8.2, se nos presenta la ventana (ver Figura 5.1) en donde se da inicio a la construcción del VI. Blank VI = VI en blanco Figura 5.1 Ventana inicio Nuevo VI Al hacer clic en “Blank VI”, automáticamente se abren 2 ventanas. Una contiene al Panel Frontal y la otra al Diagrama de bloque (ver figura 5.2 y 5.3).
  • 34. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 23 Figura 5.2 Panel Frontal Figura 5.3 Diagrama de Bloque Como mencionamos anteriormente, el Panel frontal y el Diagrama de bloques son los componentes más importantes dentro de un VI. a) Panel Frontal (Front panel): Se utiliza como interfase entre usuario/VI y que es donde los datos son manipulados, controlados y monitoreados. Se construye a partir de controles (entradas) e indicadores (salidas). Los controles simulan instrumentos de entrada y entregan los respectivos datos al diagrama de bloques del VI. Entre los controles tenemos perillas, pushbuttons y otros dispositivos de entrada. (a) (b) (c) Figura 5.4 Controles de entrada Los indicadores simulan instrumentos de salida y muestran los datos que el diagrama de bloques genera o adquiere. Dentro de los indicadores podemos encontrar leds, gráficos y otros tipos de display.
  • 35. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 24 (a) (b) (c) Figura 5.5 Indicadores de salida b) Diagrama de bloque (Block diagram): contiene el código gráfico G que define la funcionalidad del VI. Por ende, podemos ver la estructura del programa de una forma gráfica donde los datos fluyen a través de cables o líneas. Además contiene las librerías de LabVIEW como son las funciones y estructuras para conseguir nuestro programa. En resumen, una vez construido el panel frontal, se crea automáticamente el código gráfico en el diagrama de bloques, representando las funciones de los controles que fueron puestos en el panel frontal y sólo bastaría unir correctamente los terminales de los controles e indicadores para el funcionamiento del VI creado. Con la ayuda de las distintas paletas que aparecen dentro de los menús de LabVIEW, todo lo anterior es mucho más fácil. Dentro del panel frontal se desprenden dos tipos de paletas: Controls Palette (paleta de controles) y Tools Palette (paleta de herramientas).
  • 36. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 25 Figura 5.6 Menú Paleta de Controles y Herramientas Figura 5.8 Paleta de herramientas Figura 5.7 Paleta de Controles La paleta de controles (ver figura 5.7) esta habilitada solamente en el panel frontal y posee los controles e indicadores que se necesitan para crear el panel frontal. La paleta también aparece haciendo clic con el botón derecho del mouse sobre el área de trabajo del panel frontal. La paleta de herramientas (ver figura 5.8) esta habilitada en el panel frontal y en el diagrama de bloques y es necesaria para trabajar o modificar los objetos. Una herramienta se refiere al modo especial del cursor del mouse, esto quiere decir que cuando uno selecciona una herramienta, el
  • 37. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 26 cursor cambia de icono al icono de la herramienta. Haciendo clic en el led de color verde uno habilita o deshabilita el cambio automático del cursor dependiendo de la función a realizar. Nota: manteniendo la tecla “shift” presionada y haciendo clic con el botón derecho del mouse sobre el área de trabajo, aparece la paleta de herramientas. Dentro del diagrama de bloque está la Functions Palette (paleta de funciones) y la paleta de herramientas como mencionamos anteriormente. Figura 5.9 Menú Paleta de Funciones Figura 5.10 Paleta de funciones Existen 6 opciones para visualizar las paletas, ya sea de funciones o controles. Figura 5.11 Visualización de paletas
  • 38. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 27 5.4 ¿Cómo ejecutar un VI? Al haber finalizado la programación del VI y viendo que no existe error, se puede ejecutar. Para ello, debemos situarnos en el panel frontal y pulsar el botón Run ubicado en la barra de herramientas. Run: ejecución Stop: finaliza la ejecución. Continuamente Run: ejecución continua Pausa: detención del programa. Error Ejecutándose (ambos modos) Si existe error, se puede pulsar el mismo botón de Run y nos muestra el tipo de error que se está cometiendo (líneas rotas, conexiones malas, etc.). Según la necesidad del programador, este puede colocar un botón de stop en el panel frontal de su VI, cuya pulsación provoque una interrupción en el bucle de ejecución de la aplicación. Con todo lo anterior se procede a dar un pequeño ejemplo sobre la operabilidad de funciones lógicas. Ejemplo Figura 5.12 Panel control Compuertas Lógicas
  • 39. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 28 Figura 5.13 Diagrama de bloques Compuertas Lógicas Observación 1: Los controles e indicadores numéricos y etiqueta del sistema (ver figura 5.13) los encontramos en la paleta de controles. Las compuertas lógicas (ver figura 5.14) las encontramos en la paleta de funciones. Para insertar los controles e indicadores en el panel frontal o diagrama de bloques se selecciona el elemento y se arrastra con el mouse hasta su posición final. Dependiendo de la aplicación procedemos a unir los elementos con ayuda del mouse. Observación 2: Al presionar el botón de Run Continuously el programa se ejecuta continuamente, y así el usuario puede cambiar los valores de los controles para realizar otras combinaciones lógicas sin parar el programa. Para detenerlo se debe volver a presionar el botón Run Continuously o presionando el botón de stop. Observación 3: Para guardar el programa, nos dirigimos a la barra de herramientas File»Save aparecerá un cuadro de diálogo donde se debe especificar la dirección donde se desea guardar el programa, el nombre del programa y la extensión (si no se especifica la extensión LabVIEW automáticamente le agrega la extensión .VI). 5.5 Tipos de datos Existen 3 tipos o clases de datos en LabVIEW (ver figura 5.14): Figura 5.14 Esquema Tipos de datos Datos Booleanos Numéricos Alfanuméricos
  • 40. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 29 Dependiendo de nuestra aplicación, utilizamos estos datos en el diagrama de bloques existiendo un color para cada uno. (Booleanos: verde claro, Numéricos: azules-naranjos y los Alfanuméricos: rosados). Esto con la finalidad de familiarizarse tempranamente con ellos. Boolean (Booleano) Definidos por enteros de 16 bits. El bit más significativo contiene al valor booleano. Si el bit 15 se pone a 1, el valor del control o indicador es true (verdadero) y si se pone a 0, toma el valor false (falso). Al dar un clic con el botón derecho del mouse sobre el área de trabajo del panel frontal nos aparecerá la paleta de controles (ver figura 5.7) allí podemos hallar los diferentes controles e indicadores booleanos que posee LabVIEW. Figura 5.15 Controles e Indicadores booleanos Observación: Recordar que al colocar en el panel frontal un control o un indicador automáticamente se agrega el código de estos objetos en el diagrama de bloques. Numeric (Numérico) Los datos numéricos se clasifican en 12 representaciones para los controles e indicadores, señalados por su respectivo color: a) Números de tipo entero (I, Integer) de 8, 16 y 32 bits b) Números de tipo sin signo (U, Unsigned) de 8, 16 y 32 bits. c) Números de punto flotante 32 (SGL), 64 (DBL) y 80 (EXT) bits d) Números de tipo complejos simples (CSG), dobles (CDB) y extendidos (CXT). El tipo de número se aprecia en la terminal de conexión de los controles o indicadores, pues aparece inscrito, y el color de las conexiones de punto flotante son anaranjadas, mientras que en los enteros y sin signo son azules. Teniendo puesto un control o indicador de tipo numérico en el
  • 41. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 30 Diagrama de bloques, hacemos clic sobre él con el botón derecho del mouse y nos dirigimos a “Representation” donde podemos configurar el tipo de dato. Figura 5.16 Diferentes representaciones para los datos numéricos Strings (Alfanuméricos) LabVIEW almacena los strings como si fuera un array uni-dimensional de bytes enteros (caracteres de 8 bits). Sus principales aplicaciones van definidas a crear mensajes de texto, pasar los datos numéricos a caracteres de datos para instrumentos y luego convertirlos nuevamente de strings a datos numéricos, guardar datos numéricos en el disco, etc. Como mencionamos anteriormente, los datos alfanuméricos se visualizan en el diagrama de bloques con el color rosado (ver figura 5.18) mientras que en el panel frontal, estos datos aparecen como etiquetas, tablas y entradas de texto (ver figura 5.17). Figura 5.17 Datos alfanuméricos Panel de control Figura 5.18 Datos alfanuméricos Diagrama de bloque
  • 42. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 31 En el diagrama de bloques existen muchas funciones donde se ven involucrados los datos alfanuméricos, para verlas hacemos clic con el botón derecho del mouse sobre el área de trabajo para ver la paleta de funciones, nos dirigimos al icono string y se desplegará una ventana con las distintas funciones, como por ejemplo la más simple, string lenght que indica la longitud de la cadena de datos alfanuméricos. Por ejemplo si en el panel frontal, colocamos un control alfanumérico y escribimos alguna “palabra”, al arrancar el VI (Run) el indicador numérico nos da la respuesta a la función lenght. Figura 5.19 Ejemplo Dato alfanumérico Panel de control Figura 5.20 Ejemplo Dato alfanumérico Diagrama de bloque Es posible realizar atractivos VI donde participen los tres tipos de datos para la utilización de una aplicación determinada. Por ejemplo, en la figura 5.21 se muestra un sencillo sistema donde se suman dos números, en donde si se sobrepasa el valor 50 la aplicación nos entrega una señal de alerta mediante el encendido de un led (boolean) y una palabra de advertencia (string). Figura 5.21 Ejemplo suma de dos números
  • 43. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 32 Observación: El selector, el sumador y el comparador que se visualizan en el ejemplo anterior se encuentran en la paleta de funciones del diagrama de bloques. Cabe mencionar que se pueden combinar éstos tipos de datos en un mismo indicador (cadena resultante), por ejemplo con el elemento Concatenate Strings es posible concatenar datos numéricos y alfanuméricos. Figura 5.23 Concatenate strings Diagrama de bloques Figura 5.22 Ejemplo Concatenate strings Panel de control Línea de selección (Pick line), nos permite visualizar el dato seleccionado en el panel frontal del instrumento. Número a String Fraccionario (Number to Fractional String), nos permite convertir el dato numérico en un datos alfanumérico para poderlo unir a la concatenación. 5.6 Sub rutina o SubVI Dentro de la programación de LabVIEW existe una utilización de los VI bastante interesante de conocer, que facilita el desarrollo de aplicaciones. Cuando uno finaliza y guarda un archivo con extensión .vi, éste puede ser llamado en el diagrama de bloques desde otro VI conociéndose también como SubVI que corresponde a una subrutina como en los demás lenguajes tradicionales. Para usar un VI como subVI, se requiere construir un panel de conectores. Este panel, determina las entradas y salidas de los controles e indicadores.
  • 44. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 33 Para construir un panel de conectores, nos dirigimos al icono en la parte superior izquierda del panel frontal y hacemos clic con el botón derecho del mouse, enseguida se muestra un menú y hacemos clic en Show Connector (ver figura 5.24) y el icono cambiará estéticamente como lo muestra la figura 5.25. Figura 5.24 Show Connector Figura 5.25 Icono Show Connector Cada pequeño cuadrado o rectángulo representa un terminal (salida o entrada) siendo el número máximo de 28 terminales posibles de añadir. Para asignar un control a uno de los terminales del bloque de conectores hacemos clic sobre el terminal que se desea configurar, el puntero cambia a la forma de un carrete y el terminal tiene el color negro, ahora si nos posicionamos sobre el control que se desea asignar el terminal, al ser asignado, el color del terminal cambiará de color dependiendo del tipo de dato asignado (ver figura 5.26).
  • 45. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 34 Figura 5.26 Terminal asignado Icono Show Connector Figura 5.27 Edit Icono Show Connector Este mismo icono se puede editar en la parte superior izquierda del diagrama de bloques (Edit Icon) a gusto del usuario (ver figura 5.27). Una vez configurado nuestro control de terminales dependiendo de los requerimientos de la aplicación, guardamos el VI en nuestro PC. Este VI puede ser llamado desde la paleta de funciones del diagrama de bloques pulsando donde diga “Select VI” y mostrando el icono con sus respectivos terminales (pasando el mouse por encima del icono) como se muestra en la figura 5.28 Figura 5.28 Icono ejemplo Show Connector 5.7 Estructuras de Control (Structures) A la hora de programar, muchas veces es necesario ejecutar un mismo conjunto de sentencias con un número determinado de veces, o que éstas se repitan mientras se cumplan ciertas condiciones. LabVIEW dispone principalmente de cinco estructuras fácilmente diferenciables por su apariencia y disponibles en la opción Structures que aparece en la paleta de funciones del diagrama de bloques. Estas estructuras van ejecutando automáticamente lo que está programado
  • 46. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 35 en su interior, sin embargo, cada estructura ejecuta su sub diagrama de acuerdo a las características que gobiernan su funcionamiento. En resumen, estas estructuras son representaciones gráficas de los lenguajes basados en programación textual. Antes de dar a conocer las principales estructuras de control que posee LabVIEW, es necesario definir que se entiende por sub diagrama. Sub diagrama Se entiende como sub diagrama al conjunto de terminales, nodos y líneas de unión que se localizan en el interior del rectángulo llámese “estructura”. Estructura (Structure) Nº sub diagramas While Loop 1 For Loop 1 Case Structure Múltiples Sequence Structure Múltiples Event Structure Múltiples Tablas 5.1 Tabla Estructuras Figura 5.29 Estructuras
  • 47. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 36 Teniendo presente lo anterior, damos brevemente una explicación de cada una de estas estructuras: For Loop (Ciclo For) Una operación ejecuta un sub diagrama un número finito de veces. Equivale a decir en un lenguaje tradicional For i = 0 to N-1 (ejecuta sub diagrama). Contiene dos terminales, uno contador y el otro de iteración . El terminal contador contiene el número de veces que se ejecutará el sub diagrama creado en el interior de la estructura y el de iteración igual que el While Loop. Con esta estructura se pueden emplear los Shift Register para tener disponibles los datos obtenidos en iteraciones anteriores, es decir, para memorizar valores obtenidos. Los Shift Register se discuten en el siguiente punto. While Loop (Ciclo While) Una operación ejecuta un sub diagrama hasta que la terminal condicional recibe un valor lógico específico. Equivale a decir en un lenguaje tradicional Do (ejecutar sub diagrama) While (condición es True). Contiene dos terminales, uno condicional y otro de iteración . El condicional hace que LabVIEW compruebe el estado de este terminal al final de cada iteración, si el valor es True continua si es False se detiene. El terminal de iteración indica el número de veces que se repite el bucle. Con esta estructura también se pueden emplear los Shift Register. Case Structure (Estructura Caso) El ejemplo típico que se le da a esta estructura es el de la baraja de naipes, pues si el programa lo requiere, los sub diagramas o casos pueden irse añadiendo uno tras otro, pudiéndose ver sólo uno en el diagrama de bloques. Su contenido (en el interior de la estructura) se ejecuta dependiendo del valor que se le conecta al selector, por ende, posee como mínimo dos sub diagramas, True y False pudiéndose alambrar valores enteros lógicos, de cadena o enumerados. Equivale a decir en un lenguaje tradicional If (true) then (ejecutar case true) Else (ejecutar case false)
  • 48. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 37 Figura 5.30 Case Structure (Estructura Caso) Sequence Structure (Estructura Secuencia) Trabaja similar al Case Structure, es decir, sólo se puede visualizar un sub diagrama o cuadro a la vez en el diagrama de bloques, (los demás van quedando debajo), posee un identificador de sub diagrama en la parte superior con botones cuya función es avanzar o retroceder. Sin embargo, como su nombre lo dice, secuencia su ejecución ¿qué quiere decir esto? Primero ejecuta la hoja número “0” o frame, luego la número “1” y así sucesivamente. Esta estructura no devuelve ningún dato hasta que se ejecuta el último cuadro. Ejemplo A continuación, procedemos a realizar un ejercicio bastante útil en lo que se refiere a la comunicación serial y donde participa uno de los tipos de estructuras que usan más de un sub diagrama. El programa que se realiza se diseñó con la finalidad de testear y verificar el correcto funcionamiento del puerto serie. Para ello es necesario un conector serial de 9 pines (ver figura 5.31) y enseguida cortocircuitar los pines 2 y 3. Figura 5.31 Conector serial de 9 pines
  • 49. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 38 Figura 5.32 Pines conector serial rs-232 Observación: LabVIEW asigna como Port 0 al COM1 de la PC. Para comenzar a programar, podemos ir enseguida al diagrama de bloques e inicializar el puerto serie, LabVIEW posee un bloque en donde vienen los valores predefinidos para una correcta comunicación (port number, baud rate, data bits, stop bits, parity y buffer size). Programando nuestro primer sub diagrama con un Sequence Structure tenemos: Figura 5.33 Ejemplo inicialización puerto serie Haciendo clic derecho en el borde de la estructura Sequence se nos abre un menú donde nos posicionamos en Add Frame Alter y hacemos clic para iniciar la parte de escritura en un nuevo sub diagrama, de este modo podemos escribir nuestros datos hacia el puerto indicado (Port number o Nº Puerto). El bloque escribe los datos en el parámetro de entrada String Write del puerto serial indicado en el parámetro de entrada port number (Nº Puerto).
  • 50. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 39 Figura 5.34 Ejemplo escritura puerto serie Agregamos un nuevo Frame para hacer un delay de 1 segundo (retraso) con en el fin de que todos los datos escritos lleguen correctamente. El bloque Wait (ms) lo encontramos en la paleta de funciones del diagrama de bloques en la sección Timing. Figura 5.35 Ejemplo delay puerto serie Finalmente, programamos la parte de lectura donde se lee el número de caracteres especificados por el parámetro de entrada requested byte count del puerto serial indicado en el number port. El bloque Bytes At serial Port retorna el número de bytes que hay en la entrada del buffer del puerto serial indicado en el number port. Figura 5.36 Ejemplo lectura puerto serie
  • 51. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 40 El Panel frontal queda a gusto del programador. Figura 5.37 Ejemplo test puerto serial Event Structure Este tipo de estructuras presenta varios sub diagramas, los cuales se ejecutan exactamente cuando la estructura se ejecuta. La estructura de Evento espera hasta que sucede algún evento. Se pueden agregar nuevos eventos haciendo clic derecho en el borde de la estructura evento y posicionarse en Add Event Case. La implementación del sistema monitoreo para la Pesquera el Golfo Corral esta programada bajo Event Structure. 5.8 Registro de desplazamiento Se les conoce también como Shift Register y son variables locales (En las hojas posteriores se explicará lo que es una variable local). Al hacer clic con el botón derecho del mouse en el borde de la estructura While o For Loop aparece un menú con la opción Add Shift Register. El propósito del Shift Register es el almacenamiento de datos, por ejemplo, el terminal de la derecha va almacenando el valor final de la repetición o iteración. Cuando sucede una nueva repetición, este valor se mueve al terminal izquierdo y el nuevo valor queda en el terminal derecho.
  • 52. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 41 Figura 5.38 (a) Add shif register (b) Añadir elementos Con la opción Add Shift Register se pueden ir añadiendo elementos, que quiere decir esto, que cuanto más terminales tengamos en el lado izquierdo más valores de iteraciones anteriores podremos almacenar (ver figura 5.38 b). Ejemplo En el siguiente ejemplo, se diseña un programa con la ayuda de un For While que cuenta hasta 10 segundos, al transcurrir los 10 segundos este se detiene y muestra un mensaje que indica que se han cumplido los 10 segundos. Panel Frontal Figura 5.39 (a) For While (b) mensaje
  • 53. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 42 Diagrama de Bloques (c) Figura 5.40 Ejemplo registro desplazamiento 5.9 Nodo Fórmula Nodo de Fórmula o Formule Node resulta muy útil para resolver ecuaciones con muchas variables relativamente complejas. Lo primero a realizar es definir las variables de entrada y salida haciendo clic derecho en el borde del rectángulo y posicionándose ya sea en Add Input o Add Output aparece un cuadro pequeño de color naranjo donde se escribe la variable. En el interior del rectángulo se escribe la fórmula. Figura 5.41 Ejemplo nodo fórmula Se pueden ocupar funciones trigonométricas entre otras. Observación: En la misma paleta donde encontramos el Formule Node, se encuentra otro icono llamado MathScript Node que es similar al anterior, sólo que este trabaja más con la sintaxis de MATLAB®
  • 54. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 43 Ejemplo En el siguiente ejemplo, realizamos un VI donde obtendremos el valor de la caída de voltaje y la potencia demandada por un resistor. Los valores de entrada son la corriente y el valor de la resistencia. En nuestro panel frontal vamos a colocar dos controles numéricos y dos indicadores numéricos. Dentro del Nodo de Fórmula vamos a escribir la fórmula para calcular la caída de voltaje conociendo la corriente (I) y el valor de la resistencia (R) y la fórmula de consumo de potencia (W), separamos las dos fórmulas por medio de un punto y coma tal como se muestra en la figura 5.43. Figura 5.42 Ejemplo práctico nodo fórmula (panel frontal) Observación: Después de cada formula debes colocar un punto y coma. Para colocar las entradas y salidas del nodo de fórmula, uno debe posicionarse sobre el marco de la estructura y dar un clic derecho con el mouse, se desplegará un sub menú, se elige la opción Add Input en el recuadro que aparece, posteriormente se coloca el nombre de la variable tal como hemos querido llamarla en la fórmula. (Se hace lo mismo para las salidas, claro la opción será Add Output). Dos entradas una para corriente (I) y otra para el valor de la resistencia (R) y dos salidas una para el valor de caída de voltaje (V) y la otra para el valor de potencia (P), tal como se aprecia en la figura 5.43.
  • 55. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 44 Figura 5.43 Ejemplo práctico nodo fórmula (diagrama de bloques) Observación: No existe límite para el número de variables o de fórmulas y nunca podrá haber 2 entradas o 2 salidas con el mismo nombre, aunque una salida si podrá tener el mismo nombre que una entrada. Todas las variables de salida deberán estar asignadas a una fórmula por lo menos una vez. 5.10 Arreglos y Cluster Arrays Arreglos o Arrays es un grupo de elementos de datos del mismo tipo, se compone de elementos y dimensiones. Se entiende como elemento a los datos que conforman un arreglo y dimensión como la longitud, altura o profundidad del mismo. Indexado Para colocar un elemento en particular en un arreglo este requiere un índice por dimensión. En LabVIEW, el indexado permite navegar a través de un arreglo y además recuperar elementos, filas, columnas, y páginas de un arreglo en el diagrama de bloques. Un ejemplo de un arreglo es una señal de onda representada como un arreglo numérico en el cual cada elemento es el valor de voltaje de sucesivos intervalos de tiempo, pero este ejemplo es de 1D (una dimensión).
  • 56. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 45 Un arreglo de 2D guarda los elementos en un tipo de rejilla (tabla). Esto requiere un índice de columna y un índice de fila para localizar cada elemento, ambos índices de localización comienzan en cero. Por ejemplo, un tablero de ajedrez tiene ocho columnas y ocho filas para formar un total de 64 posiciones. Cada posición esta vacía o tiene una pieza de ajedrez. Se puede representar un tablero de ajedrez con un arreglo de texto de 2D. Restricciones de los arreglos Se puede crear un arreglo casi de cualquier tipo de datos, con las siguientes excepciones: • No se pueden crear arreglos de arreglos. Independientemente, se pueden utilizar un arreglo multidimensional o usar la función Build Cluster Array para crear un arreglo de cluster donde cada cluster contiene uno o más arreglos. • No se puede crear un arreglo de gráficos, porque un gráfico es un tipo de datos del arreglo y un arreglo no puede contener otro arreglo. Sin embargo, se puede tener un arreglo de gráficos si el gráfico está dentro de un cluster. • No se puede crear arreglos de charts. En la paleta de funciones del diagrama de bloques encontramos diferentes tipos de arreglos para crear y manipular (ver figura 5.44) como por ejemplo, extraer un elemento individual, dividir, insertar , eliminar o reemplazar un elemento dentro de un arreglo. Figura 5.44 Arreglos
  • 57. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 46 Cluster Los clusters agrupan diferentes tipos de elementos o datos, como un bulto de alambres, es decir, como en un cable del teléfono dónde cada alambre en el cable representa un elemento diferente del cluster. Un cluster es similar a un registro o una estructura en los lenguajes de programación basados en texto. La agrupación de los datos en los clusters elimina el desorden de los alambres en el diagrama de bloques y reducen el número de conectores o terminales que un subVI necesita. El panel de conectores tiene la capacidad, a lo sumo, de 28 términos. Si su panel frontal contiene más de 28 controles e indicadores que se quieren usar en su programa, lo que se hace es agrupar algunos de ellos en un cluster y asignar el cluster a uno de las terminales del panel de conectores. Figura 5.45 Iconos cluster Aunque un cluster y un arreglo de elementos en ambos existe un ordenamiento, se debe desagrupar todos los elementos del cluster en lugar de escribir un índice de un elemento a la vez. Se puede también usar la función Unbundle By name y así acceder a los elementos del cluster específicos. Los cluster también difieren de los arreglos en que ellos son de un tamaño fijo. Como un arreglo, un cluster puede ser un control o un indicador. Un cluster no puede contener una mezcla de controles e indicadores. La mayoría de los cluster en el diagrama de bloques se caracterizan por que el alambre y el icono de los datos son de color rosado.
  • 58. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 47 Los cluster de números, se caracterizan por un alambre y un icono de datos de color café. Se pueden alambrar los cluster numéricos de color café a las funciones numéricas, como a la función Add, Square Root, para realizar la misma función simultáneamente en todos los elementos del cluster. 5.11 Indicadores Gráficos: Graph y Charts Existen variados tipos de indicadores gráficos en LabVIEW, se destacan principalmente: Waveform Graph, Waveform Chart, Intensity Graph, Intensity Chart, XY Graph, 3D Graphs y Digital Waveform Graph. Waveform Graph - Chart Después de adquirir o generar datos, utilizar un Graph (gráfico) o un Chart es una muy idea para desplegar datos de una forma gráfica. Los Graph y los Chart se diferencian entre sí en la manera de mostrar los datos. Un VI con un Graph recoge generalmente los datos en un Array (arreglo) y después traza los datos al gráfico. Cuando se trazan los datos, desecha los datos previamente trazados y muestra solamente los nuevos datos. Se utiliza un Graph en los procesos rápidos que están continuamente recogiendo datos. En cambio, un Chart añade nuevos puntos de referencias a esos puntos en su pantalla para crear una especie de historial. Se utiliza un Chart en los procesos lentos en los cuales solamente algunos puntos de referencias por segundo, se agregan al diagrama. A pesar que el Waveform Graph y el Waveform Chart presentan diferencias, también poseen muchas opciones iguales en donde se accede mediante un menú contextual. Por ejemplo, ambos soportan múltiples escalas en x e y, se puede personalizar su apariencia (ver figura 5.46)
  • 59. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 48 Figura 5.46 Gráfico Waveform Graph - Chart El Waveform Graph muestra unos o más diagramas de medición uniformemente muestreados. El Waveform Graph traza solamente funciones valoradas, como por ejemplo, y = f (x), con los puntos distribuidos uniformemente a lo largo del eje x, tal como formas de onda de tiempo. La figura 5.47 muestra un ejemplo de un Waveform Graph simulando ondas seno y coseno respectivamente. Figura 5.47 Ejemplo Waveform Graph (panel frontal)
  • 60. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 49 Figura 5.48 Ejemplo Waveform Graph (diagramade bloques) Intensity Graph – Chart Despliega la información en 3D en una gráfica 2D mediante colores para desplegar valores de tercera dimensión. Son útiles para representar datos de superficie, donde el color puede representar altitud, humedad, temperatura, entre otras variables. Figura 5.49 Gráfico Intensity Graph – Chart Digital Waveform Graph Despliega datos como pulsos o grupos de líneas digitales, es decir, señales digitales. Son útiles para diagramas de tiempo.
  • 61. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 50 Figura 5.50 Gráfico Digital Waveform Graph (panel frontal) Figura 5.51 Gráfico Digital Waveform Graph (diagrama de bloques) XY Graphs Despliega los datos adquiridos en una tasa no constante, es decir, el mismo usuario puede determinar la separación. Figura 5.52 Gráfico XY Graph (panel frontal)
  • 62. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 51 3D Graph Despliega datos 3D en un gráfico 3D mediante un objeto ActiveX en el panel frontal. Figura 5.53 Gráfico 3D Graph 5.12 Archivos I/O Los ficheros de entrada y salida (I/O) transfieren los datos de LabVIEW a archivos y viceversa. En la paleta de funciones del diagrama de bloques File I/O podemos encontrar bloques que nos permiten, abrir y cerrar archivos de datos, leer y escribir datos a archivos, leer y escribir archivos de hojas de cálculo, mover y renombrar archivos y directorios, cambiar las características de los archivos, crear, modificar y leer una configuración de archivo. Se pueden leer o escribir datos de tres tipos de archivos diferentes: texto, binarios y datalog. Por ejemplo, si se quiere guardar un archivo de datos en Microsoft Excel usaremos el formato de texto debido a que este es el más común en este tipo de trabajo. Guardando un Archivo Para entender rápidamente este proceso, crearemos un ejemplo donde analizaremos la amplitud de una señal senoidal, de tal manera que si la amplitud sobrepasa o esta por debajo de un porcentaje establecido por el usuario guarde dicho valor en un archivo de texto.
  • 63. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 52 El programa muestra la amplitud actual de la señal senoidal, y dice cuantos datos se han guardado en el archivo. Ejemplo Nuestro Panel Frontal lo dejamos de la siguiente manera, claro que es opcional, pues dependerá del usuario establecer una estética que cumpla con sus necesidades. Figura 5.54 Ejemplo práctico con Waveform Graph Figura 5.55 Generación de números aleatorios Para analizar y conocer el nuevo valor de amplitud que se esta generando utilizamos la función de análisis que se encuentra en la paleta de funciones, Express » Signal Analysis » Tone, al
  • 64. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 53 colocarla se genera una ventana en la cual configuramos el VI, en nuestro caso elegimos únicamente la opción Amplitude. Ahora, como ya conocemos el valor de la amplitud instantánea, de la señal senoidal verificamos si se encuentra dentro del rango establecido (ver Figura 5.57). Restamos el valor actual menos el valor de amplitud fundamental, y el valor absoluto de esta operación lo comparamos con el porcentaje establecido. En el caso en que se sobrepase o este por debajo del porcentaje de error establecido vamos a guardar el valor (ver Figura 5.58). Figura 5.56 Tone measurement Figura 5.57 Verificación del rango establecido. Figura 5.58 Etapa guarda valor
  • 65. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 54 Para guardar el archivo vamos a utilizar el VI, Write to Spreadsheet File.vi, que aparece en la paleta de funciones File I/O, para nuestro caso únicamente hemos colocado una constante en la terminal file path, esta constante es una constante de ruta de archivo, aquí colocamos la dirección del lugar donde queremos que el archivo se guarde (ver Figura 5.58). Como queremos que cada vez que se genere un dato que este fuera del rango se agregue al archivo que ya hemos creado el terminal append to file? tiene que tener una constante True para que vaya agregando los valores, La terminal Transpose se utiliza para generar el arreglo como fila (default) o columna, colocamos una constante True para que se despliegue en forma de columna. Figura 5.59 Ejemplo archivos I/O (diagrama de bloques) 5.13 Variables Locales y Globales En LabVIEW se pueden leer o escribir datos en el panel frontal utilizando terminales en el diagrama de bloques. Sin embargo, un objeto en el panel frontal tiene sólo un terminal en el diagrama de bloques y su aplicación podría necesitar acceder a los datos del terminal en más de una vez.
  • 66. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 55 Hablar de variables locales o globales en LabVIEW es algo no tan fácil de entender, pues son conceptos avanzados y una mala utilización de estas puede provocar un comportamiento inesperado en los VI. ¿Cuándo utilizar una Variable Local? Cuando se pretende acceder a objetos del panel frontal en más de un lugar dentro del mismo VI y pasar la información (datos) entre las estructuras de bloque donde No se puede conectar un cable. Trabajando con una variable local, se puede leer o escribir desde un indicador o control en el panel frontal. En efecto, se puede acceder a un objeto del panel frontal como entrada y como salida. ¿Cuándo utilizar una Variable Global? Cuando se pretende acceder y pasar datos entre varios VI que se ejecutan al mismo tiempo. Cuando en LabVIEW se crea una variable global, automáticamente este crea un VI especial, el cual contiene un panel frontal pero No un diagrama de bloques, es decir, el panel frontal es un contenedor de varios VI’s que pueden acceder datos. En resumen, la diferencia entre una variable local y una global, es que con la variable local, solo puedes intercambiar datos dentro de un mismo VI. En cambio con la variable global puedes intercambiar datos entre diferentes VI’s. A continuación daremos solución a un sencillo ejemplo utilizando variables locales y globales, que consiste en el encendido de un LED por medio de un pulsador y sea apagado por otro pulsador. Ejemplo Como mencionábamos anteriormente, este problema lo vamos a resolver de dos maneras diferentes, la primera utilizando variables locales, y la otra utilizando variables globales.
  • 67. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 56 a) Utilizando Variables Locales Lo primero a realizar es ir a nuestro panel frontal y colocar 2 pulsadores y un led, asegurándonos que los botones (pulsadores) tengan una acción mecánica al igual que un pulsador real (ver Figura 5.60) Panel Frontal Figura 5.60 Pulsadores Para seleccionar una acción mecánica del pulsador, hacemos clic derecho sobre el pulsador y nos dirigimos a Mechanical Action (ver figura 5.61) Figura 5.61 Menú Mechanical Action En el diagrama de bloques, vamos a crear una variable local del indicador tipo LED, para crear la variable local, hacemos clic derecho sobre el LED, se desplegará un menú, elegimos la opción, Create » Local Variable. Posteriormente, colocamos 2 variables locales del indicador LED, una
  • 68. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 57 dentro de cada Case, tal como se muestra en la figura 5.62, ahora conectamos un pulsador a cada Case, en el Case en el que se ha conectado el pulsador de encendido se conecta una constante verdadera a la variable local en el caso True, en el caso falso no se hace nada. En el otro Case donde hemos conectado el pulsador de apagado conectamos una constante falsa a la variable local, en el caso verdadero del case, en el caso falso no hagas nada. Diagrama de Bloques Figura 5.62 Variables locales (diagrama de bloques) De manera que cuando se presiona el pulsador Encendido se ejecutara el caso verdadero en el cual se le asigna el valor de verdadero al LED, por lo tanto enciende, cuando se deja de presionar el botón de encendido el caso que se ejecuta el falso pero como no haz programado nada en ese caso, el valor en la variable local queda guardado. Para apagarlo debe ejecutarse el caso verdadero del Case al que se ha conectado el pulsador de apagado. b) Usando Variables Globales El panel frontal queda igual al ya visto anteriormente. Ahora, en lugar de crear variables locales, vamos crear una variable global, se encuentran en, Functions » All Functions » Structures » Global Variable, ahora hacemos doble clic sobre el icono de la variable global aparecerá una ventana de panel frontal aquí coloca cualquier control o indicador booleano como se muestra en la figura 5.61, guardamos y cerramos este panel frontal.
  • 69. ANÁLISIS DEL SOFTWARE - LABVIEW __________________________________________________________________________________ 58 Figura 5.63 Variables Globales (panel frontal) Ahora en el diagrama de bloques, hacemos clic sobre el icono de la variable global, aparecerá la opción Boolean, la seleccionamos y automáticamente cambiará, ahora podemos guardar datos booleanos en dicha variable global, hacemos 3 copias de esta variable, tal como se muestra en la figura 5.64 Figura 5.64 Variables Globales (diagrama de bloques) El funcionamiento de este programa es el mismo que en el caso anterior, lo único que ahora debemos leer de la variable global para encender el LED.
  • 70. VI ANÁLISIS EXPERIMENTAL SISTEMA DE MONITOREO PARA PESQUERA
  • 71. ANÁLISIS EXPERIMENTAL ______________________________________________________________________________________________ 60 6.1 Resumen del Capítulo En el siguiente capítulo se hace referencia a la forma en que se diseñó el Sistema de Monitoreo para una pesquera utilizando el software LabVIEW. Se explica paso a paso las etapas realizadas que nos llevaron a la finalización con éxito de este ambicioso proyecto. 6.2 Instalación Instalamos LabVIEW 8.2 desde el CD siguiendo todas las instrucciones necesarias para el correcto funcionamiento de este. Cabe mencionar que existe un software gratuito de la MCC que se llama MCCDaq versión 5.71 para Win2000/XP/Vista (144 MB) y contiene todos los drivers de sus productos incluyendo ULforLV (última versión), Universal Library e InstaCal 5.82. Estos puede ser descargados individual y libremente desde el sitio ftp1 de la misma empresa. Pero para nuestras pretensiones no es necesario instalar todo el software, existe un archivo (driver) que esta en el ftp llamado ULforLV711a (Universal Library for LabVIEW) de 16,12 MB que instala en LabVIEW una librería llamada MCC Data Acquisition necesaria para nuestro proyecto práctico. De acuerdo a las especificaciones de la MCC, Universal Library for LabVIEW - Versión 7.11a puede ser instalada desde LabVIEW 6.0 hasta la versión 8.21, en el sistema operativo Windows 9.x/2000/XP. 1 ftp://ftp.measurementcomputing.com/downloads/MCCDaqCD
  • 72. ANÁLISIS EXPERIMENTAL ______________________________________________________________________________________________ 61 Luego de instalar LabVIEW 8.2, se procede a instalar InstaCal v.5.82 y el archivo ULforLV711a respectivamente. InstaCal v5.82 Hacemos doble clic en el icono icalsetup clic en Aceptar y Setup (a) (b) En seguida clic en Next (c) Nuevamente clic en Next (d)
  • 73. ANÁLISIS EXPERIMENTAL ______________________________________________________________________________________________ 62 Finalmente, clic en Install y Finish. (e) (f) Figura 6.1 Instalación software InstaCal Reiniciamos la PC y configuramos InstaCal de acuerdo a las especificaciones técnicas de nuestro dispositivo PMD-1208FS (Personal Measurement Device). Abrimos InstaCal desde la ruta Inicio»Programas»Measurement Computing»InstaCal y se nos presenta una pantalla como muestra la figura 6.2a, luego hacemos clic en Add Board del menú Install (ver figura 6.2b). (a) (b) Figura 6.2 Configuración InstaCal Paso 1
  • 74. ANÁLISIS EXPERIMENTAL ______________________________________________________________________________________________ 63 Al haber hecho clic en Add Board escogemos del menú ISA el modelo DEMO-BOARD que es necesario para utilizar la DAQ 1208FS y que por defecto viene configurado con Board Number = 0 (ver figura 6.3a) y hacemos clic en Add para añadirlo (ver figura 6.3b). Luego cerramos InstaCal. (b) (a) Figura 6.3 Configuración InstaCal Paso 2 ULforLV711a Los requerimientos necesarios para la instalación de ULforLV711a son: • Espacio en el disco • LabVIEW™ • InstaCal™ Observación: Sabiendo lo anterior, al tratar de instalar los drivers de ULforLV711a no teniendo instalado el InstaCal el proceso de instalación de los drivers se interrumpe y nos vemos en la obligación de cancelar la instalación.
  • 75. ANÁLISIS EXPERIMENTAL ______________________________________________________________________________________________ 64 El programa ULforLV711a.exe es un archivo de tipo ZIP self-extracting que contiene la imagen del CD. Para extraer la imagen simplemente hacemos doble clic en el archivo, escogemos la carpeta donde se extraerán los archivos (por defecto es la C:windowsTemp) escribimos la contraseña2 y hacemos clic en OK se instalará automáticamente y reiniciamos. Figura 6.4 Descompresión ULforLV711a 6.3 Análisis En base a un análisis teórico del software LabVIEW y evolucionando desde la versión 6.0 hasta llegar a la versión 8.2, damos solución a uno de nuestros objetivos más grandes que consistió en la creación de un sistema de monitoreo programado en lenguaje G complementado con la utilización de un dispositivo de adquisición de datos (DAQ) para la obtención de variables físicas y su posterior análisis. A grandes rasgos, la topología del sistema de monitoreo para una pesquera (a modo de ejemplo la pesquera el Golfo Corral en Valdivia) queda como se muestra en la Figura 6.5 2 La contraseña es: mcclv711a entregada por la MCC en un archivo llamado “readme.txt”.
  • 76. ANÁLISIS EXPERIMENTAL ______________________________________________________________________________________________ 65 Panel Frontal Figura 6.5 En la paleta de controles del panel frontal en Containers dividimos la pantalla en dos mediante la función Vert Spliter Bar (ver Figuras 6.6a y 6.6b respectivamente) con la finalidad de dejar en el lado izquierdo opciones fijas para mayor flexibilidad al sistema, como por ejemplo, la ruta de acceso al archivo que guardará las muestras, el tiempo de muestreo, el menú de cambio de páginas y un botón de stop para detener el programa. Y en el lado derecho las funciones más importantes como es el propio monitoreo con las distintas variables a adquirir. (a) (b) Figura 6.6 Paleta controles Containers
  • 77. ANÁLISIS EXPERIMENTAL ______________________________________________________________________________________________ 66 Con la paleta de herramientas, como mencionamos en el capítulo V, le damos apariencia a nuestro VI en el panel frontal, principalmente utilizando colores. En el lado derecho de la pantalla y volviendo al control Containers seleccionamos la opción Tab Control que es de gran utilidad para el paso automático de una variable a otra (páginas) mediante la configuración del teclado o mouse (ver figura 6.7). Figura 6.7 Paleta de herramientas Figura 6.8 Tab control Haciendo clic derecho en el borde del Tab Control se despliega un menú donde existen variadas características para modificarlo, una de ellas es la de poder ir añadiendo Pages (páginas) con la opción Add Pages After/Before y complementarlo con la paleta de herramientas para darle una atractiva apariencia. Figura 6.9 Ejemplo Tab control Sub Sistema de Adquisición de datos La principal etapa o el corazón de toda la programación G es la simulación de la DAQ. Con la ayuda de los controles MCC Data Acquisition (ver figura 6.10) programamos virtualmente la DAQ USB 1208FS. Lo que se hace principalmente es obtener las variables físicas, convertir estas señales en variables de voltaje y posteriormente visualizarlas.
  • 78. ANÁLISIS EXPERIMENTAL ______________________________________________________________________________________________ 67 Figura 6.10 Controles MCC Data Acquisition Para simular la DAQ USB 1208FS ocupamos 3 bloques obtenidos de distintos controles de la librería MCC Data Acquisition. AIn.vi Analog Input ToEng.vi Signal Configuration ErrMsg.vi Calibration & Configuration Internamente estos bloques los configuramos de la siguiente manera: AIn lee la entrada de un canal A/D. Figura 6.11 Bloque AIn
  • 79. ANÁLISIS EXPERIMENTAL ______________________________________________________________________________________________ 68 ToEng Convierte, ya sea un valor simple o un array A/D a un valor equivalente en voltaje o corriente. Figura 6.12 Bloque ToEng ErrMsg Devuelve un mensaje de error asociado a un código de error. Si el código de error no es igual a 0 indica que ocurrió un error. Figura 6.13 Bloque ErrMsg La etapa de simulación de la DAQ 1208FS nos queda de la siguiente forma: Figura 6.14 Etapa simulación de la DAQ 1208FS Observación: BoardNum se refiere al número de placa asociada con la placa configurada cuando se instaló el programa InstaCal (igual número)
  • 80. ANÁLISIS EXPERIMENTAL ______________________________________________________________________________________________ 69 Sub Sistema de Almacenamiento de datos Cada dato que es capturado por la DAQ es llevado mediante la construcción de un arreglo al bloque Write to Spreadsheet que tiene la función de insertar ordenadamente la información en el programa Microsoft Excel para su posterior análisis. (a) (b) Figura 6.15 Subsistema de almacenamiento Sub Sistema de Alarma Esta etapa esta dividida principalmente en dos partes: a) Alarma Visual Se caracteriza por la presencia de leds verdes (on/off) para cada variable física que sobrepase su nivel permitido para un funcionamiento estable dentro de la empresa pesquera. En la Figura 6.16 se encuentra en la pantalla principal del sistema de monitoreo (Panel Frontal). Cada canal indica una variable distinta adquirida por la DAQ. En caso de peligro, un led verde se enciende como se muestra en el Canal 0.
  • 81. ANÁLISIS EXPERIMENTAL ______________________________________________________________________________________________ 70 Figura 6.16 Alarma visual (panel frontal) La programación en el Diagrama de Bloques queda representada por los siguientes símbolos. Haciendo doble clic dentro del icono de la bocina, entramos a la programación que pertenece a la parte sonora. b) Alarma Sonora Consiste en un archivo con extensión WAV. Al sobrepasar “x” nivel, este se acciona y comienza a sonar, actuando paralelamente con el encendido de los leds verdes. Figura 6.17 Alarma sonora (diagrama de bloques)
  • 82. ANÁLISIS EXPERIMENTAL ______________________________________________________________________________________________ 71 Principal (panel frontal) La pantalla principal del sistema de monitoreo queda representado como se muestra a continuación en la figura 6.18. Como se explicó anteriormente, dividimos la pantalla en dos mediante la función Vert Spliter Bar. La parte izquierda de la pantalla está representada por la ruta de archivo, el tiempo de muestreo, los distintos menús y el botón de stop para detener el funcionamiento del sistema de monitoreo. En la parte derecha de la pantalla se identifican los 8 canales de la DAQ 1208FS, la fecha, la hora, el sistema de alarma y la última muestra de cada variable capturada y visualizada en la tabla llamada base de datos. Figura 6.18 Pantalla principal Sistema Monitoreo (panel frontal)
  • 83. ANÁLISIS EXPERIMENTAL ______________________________________________________________________________________________ 72 Exploración de los distintos menús Menú Caldera Nivel de Presión Monitorea en tiempo real el nivel de presión en Kg/cm2 de ambas calderas. Al mismo tiempo se muestrean las señales a medida que trascurre el tiempo. Figura 6.19 Pantalla nivel de presión • Nivel de Agua Monitorea en tiempo real el nivel de agua de ambas calderas. Al igual que en el caso anterior se muestrean las señales. Figura 6.20 Pantalla nivel de agua
  • 84. ANÁLISIS EXPERIMENTAL ______________________________________________________________________________________________ 73 • Nivel de Temperatura Monitorea en tiempo real el nivel de temperatura del petróleo de ambas calderas. Paralelamente se visualiza el muestreo de ésta variable. Figura 6.21 Pantalla nivel temperatura de petróleo Menú Planta • Diagrama General Este diagrama, detalla las principales etapas que existen para la elaboración de harina de pescado en una planta. a) Pozos – Cocedores – Prensas b) Separadoras – Desborradoras c) Planta evaporadora d) Secadores e) Homogenizadores – Ensaque – Transporte
  • 92. PROYECTO LABORATORIO ______________________________________________________________________________________________ 81 7.1 Proyecto de laboratorio En nuestro proyecto de tesis se tiene considerado la proyección de un laboratorio con la finalidad de otorgarle un espacio al software que hemos analizado en detalle con anterioridad. Para ello, es que se procede a analizar la situación en la cual se encuentra el Instituto de Electricidad y Electrónica de la Facultad de Ciencias de la Ingeniería de la Universidad Austral de Chile, el cual en la docencia de pregrado posee a la fecha alrededor de 300 alumnos los cuales se verían ampliamente favorecidos con la iniciativa que se pretende integrar en su rama de asignaturas. Ahora, para la implementación del proyecto en si queda de manifiesto que las necesidades no son solo del orden físico si no que además de equipamiento tecnológico, sin embargo, el costo asociado a este concepto se estima que no es muy alto es por ello que siendo esta la única inversión a realizar se puede deducir que la ejecución final es altamente viable. Por otra parte, la implementación del software tiene como necesidad instantánea la adquisición de computadores como parte integral del proyecto, ya que es aquí donde se instalaran LabVIEW y todos los componentes que se incorporen con posterioridad. Para continuar, con lo que se refiere al espacio físico es que se considera como lugar ideal el laboratorio que en este momento pertenece al laboratorio de digitales siendo este adaptado a las necesidades del futuro laboratorio de LabVIEW. Finalmente, podemos observar que el proyecto tiene como uno de sus objetivos principales integrar nuevas tecnologías y conocimientos a la malla curricular de los alumnos tanto del Instituto de Ingeniería Electrónica así como de cualquiera que se interese en descubrir las posibilidades que entrega LabVIEW como herramienta de trabajo en diversas áreas de la ingeniería.
  • 93. PROYECTO LABORATORIO ______________________________________________________________________________________________ 82 7.2 Resumen del proyecto El proyecto tiene como objetivo principal integrar una nueva herramienta para ampliar las posibilidades de los alumnos de la Facultad de Ciencias de la Ingeniería de la Universidad Austral de Chile, para ello es que se pretende incorporar nuevos laboratorios con la tecnología necesaria para que el trabajo se vea facilitado considerando la adquisición de computadores y diversas tarjetas de interfase las cuales aumentan aun mas la potencialidad de LabVIEW En cuanto a la infraestructura necesaria esta se encuentra disponible y solo se precisan pequeñas modificaciones en lo que se refiere al mobiliario y a la red eléctrica lo que no representa una gran inversión. Además la futura implementación de dichas instalaciones pueden verse traducidas en una mayor satisfacción del alumnado tanto del instituto como de la universidad en si. 7.3 Objetivos 7.3.1 ObjetivosGenerales • Proyectar la implementación de un laboratorio de experimentación para la utilización del software de análisis LabVIEW en su versión 8.2 7.3.2 ObjetivosEspecíficos • Acercar a los alumnos del instituto a LabVIEW con la finalidad de que estos vallan descubriendo las potencialidades de este nuevo software. • Analizar los costos asociados a la implementación del proyecto del laboratorio. • Analizar y proponer el espacio físico necesario para la implementación del laboratorio. • Analizar las ventajas y desventajas de la implementación de dicho laboratorio.