UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
Año “ Año
de la Promoción de la Industria Responsable y del Compromiso Climático” UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRÓNICA
TEMA: “LABORATORIO N°2-
Software LABVIEW- Estructuras”.
RESPONSABLE:
TOMAPASCA TOMAPASCA JARAMILLO, María Rosa Elizabeth
PROFESOR:
ING. CALDERÓN VALDEZ, Shlomi Nereida
PIURA - PERÚ JULIO - 2014
CONTROL DE CALIDAD
PÁG. 1
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
ÍNDICE
………………………………………………………………
Pág. 03
II.- Objetivos
………………………………………………………………
Pág. 04
III.- Marco teórico
………………………………………………………………
Pág. 05
IV.- Procedimientos
………………………………………………………………
Pág. 13
………………………………………………………………
Pág. 19
VI.- Conclusiones Conclusiones
………………………………………………………………
Pág. 26
VII.- Referencias Referencias Bibliográficas
………………………………………………………………
Pág. 27
I.-
V.-
Introducción
Tarea propuesta
CONTROL DE CALIDAD
PÁG. 2
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
I.
Introducción En el desarrollo del curso control de calidad estamos desarrollando diferentes temas con respecto a software LabVIEW, uno de los temas desarrollados en el presente laboratorio son las estructuras de ejecución. Las estructuras de ejecución 1 contienen secciones de código gráfico y controlan cómo y dónde el código dentro se ejecuta. Las estructuras de ejecución más comunes son Ciclos While, Ciclos For y Estructuras de Casos los cuales puede usar para ejecutar la misma sección del código varias veces o para ejecutar una sección diferente del código basada en alguna condición.
CONTROL DE CALIDAD
PÁG. 3
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
II.
Objetivos
A través del siguiente informe de laboratorio se espera alcanzar los siguientes objetivos:
Simular en el software LABVIEW los diferentes ejercicios propuestos sobre el tema estructuras.
Comprobar con valores reales el funcionamiento de las simulaciones.
Reforzar el uso de las funciones estudiadas en el software LABVIEW.
CONTROL DE CALIDAD
PÁG. 4
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
III.
Marco Teórico
Lo que debemos sabes antes de empezar a desarrollar nuestro laboratorio. 3.1 Labview2 LabVIEW es un entorno de programación destinado al desarrollo de aplicaciones, similar a los sistemas de desarrollo comerciales que utilizan el lenguaje C o BASIC . Sin embargo, LabVIEW se diferencia de dichos programas en un importante aspecto: los citados lenguajes de programación se basan en líneas de texto para crear el código fuente del programa, mientras que LabVIEW emplea la programación gráfica o lenguaje G para crear programas basados en diagramas de bloques. 3.2 Estructuras en LabVIEW En la paleta de funciones la primera opción es la de las estructuras. Éstas controlan el flujo del programa, bien sea mediante la secuenciación de acciones, ejecución de bucles, etc.
Las estructuras se comportan como cualquier otro nodo en el diagrama de bloques, ejecutando automáticamente lo que está programado en su interior una vez tiene disponibles los datos de entrada, y una vez ejecutadas las instrucciones requeridas, suministran los correspondientes valores a los cables unidos a sus salidas. Sin embargo, cada estructura ejecuta su subdiagrama de acuerdo con las reglas específicas que rigen su comportamiento. Un sub-diagrama es una colección de nodos, cables y terminales situados en el interior del rectángulo que constituye la estructura. El For Loop y el While CONTROL DE CALIDAD
PÁG. 5
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
Loop únicamente tienen un sub-diagrama. El Case Structure y el Stacked Sequence Structure, sin embargo, pueden tener múltiples sub-diagramas, superpuestos como si se tratara de cartas en una baraja, por lo que en el diagrama de bloques únicamente será posible visualizar al tiempo uno de ellos. El Flat Sequence Structure posee varios sub-diagramas colocados unos al lado de otros. Pueden agregarse más sub-diagramas para las estructuras que lo permitan pulsando el botón derecho sobre el borde de la estructura y seleccionando la opción Add Frame After o Add Frame Before según donde se desee el nuevo sub-diagrama. Los sub-diagramas se construyen del mismo modo que el resto del programa. Las siguientes estructuras se hallan disponibles en el lenguaje G: 3.2.1.
FOR LOOP Es el equivalente al bucle for en los lenguajes de programación convencionales. Ejecuta el código dispuesto en su interior un número determinado de veces.
For Loop
Ejecutar el bucle for es equivalente al siguiente fragmento de código:
Código de For Loop
Para pasar valores de una iteración a otra se emplean los llamador shift registers. Para crear uno, se pulsará el botón derecho del ratón mientras éste se halla situado sobre el borde del bucle, CONTROL DE CALIDAD
PÁG. 6
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
seleccionando la opción Add Shift Register. El shift register consta de dos terminales, situados en los bordes laterales del bloque. El terminal izquierdo almacena el valor obtenido en la iteración anterior. El terminal derecho guardará el dato correspondiente a la iteración en ejecución. Dicho dato aparecerá, por tanto, en el terminal izquierdo durante la iteración posterior.
Datos de iteración a iteración en For Loop
Se puede configurar un shift register para memorizar valores de varias iteraciones previas. Para ello, con el ratón situado sobre el terminal izquierdo del shift register se pulsará el botón derecho, seleccionando a continuación la opción Add Element.
Valores previos de variables en For Loop CONTROL DE CALIDAD
PÁG. 7
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
3.2.2.
WHILE LOOP Es el equivalente al bucle while empleado en los lenguajes convencionales de programación. Su funcionamiento es similar al del bucle for.
Bucle While (While Loop)
El bucle while es equivalente al código siguiente:
Código de While Loop
El programa comprueba el valor de lo que se halle conectado al terminal condicional al finalizar el bucle. Por lo tanto, el bucle siempre se ejecuta al menos una vez. Con esta estructura también se pueden emplear los shift registers para tener disponibles los datos obtenidos en iteraciones anteriores (es decir, para memorizar valores obtenidos). Su empleo es análogo al de los bucles for, por lo que se omite su explicación. 3.2.3.
CASE STRUCTURE Al igual que otras estructuras posee varios sub-diagramas, que se superponen como si de una baraja de cartas se tratara. En la parte superior del sub-diagrama aparece el identificador del que se está representando en pantalla. A ambos lados de este identificador aparecen unas flechas que permiten pasar de un sub-diagrama a otro. En este caso el identificador es un valor que selecciona el subdiagrama que se debe ejecutar en cada momento. CONTROL DE CALIDAD
PÁG. 8
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
Case Structure
La estructura Case tiene al menos dos sub-diagramas (True y False). Únicamente se ejecutará el contenido de uno de ellos, dependiendo del valor de lo que se conecte al selector. 3.2.4.
STACKED SEQUENCE STRUCTURE De nuevo, este tipo de estructuras presenta varios sub-diagramas, superpuestos como en una baraja de cartas, de modo que únicamente se puede visualizar una en pantalla. También poseen un identificador del sub-diagrama mostrado en su parte superior, con posibilidad de avanzar o retroceder a otro sub-diagrama gracias a las flechas situadas a ambos lados del mismo.
Stacked Sequence Structure CONTROL DE CALIDAD
PÁG. 9
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
Esta estructura secuencia la ejecución del programa. Primero ejecutará el sub-diagrama de la hoja (frame) Nº 0, después el de la Nº 1, y así sucesivamente. Para pasar datos de una hoja a otra se pulsará el botón derecho del ratón sobre el borde de la estructura, seleccionando la opción Add sequence local.
Datos de sub-diagrama a sub-diagrama en Stacked Sequence Structure
3.2.5.
FLAT SEQUENCE STRUCTURE Su funcionamiento es similar al de la Stacked Sequence Structure, esta estructura tiene varios sub-diagramas colocados uno al lado de otro, su orden de ejecución es de izquierda a derecha.
Flat Sequence Structure
3.2.6.
FORMULA NODE La estructura denominada Formula Node se emplea para introducir en el diagrama de bloques fórmulas de un modo directo. Resulta de gran utilidad cuando la ecuación tiene muchas variables o es relativamente compleja. Por ejemplo, se desea implementar la ecuación: y = x^2 + x + 1 CONTROL DE CALIDAD
PÁG. 10
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
Empleando bloques pertenecientes al lenguaje G quedaría:
Ecuación con lenguaje G
Si se utiliza formula node, se obtiene:
Ecuación con Formula Node
Para definir una fórmula mediante esta estructura, se actuará del siguiente modo:
En primer lugar, se deben definir las variables de entrada y las de salida. Para ello, se pulsa con el botón derecho del ratón sobre el borde de la formula node. A continuación se seleccionará Add Input o Add Output, según se trate de una entrada o una salida, respectivamente. Aparecerá un rectángulo, en el que se debe escribir el nombre de la variable (se distingue entre mayúsculas y minúsculas). Todas las variables que se empleen deben estar declaradas como entradas o salidas. Las que se empleen como variables intermedias se declararán como salidas, aunque posteriormente no se unan a ningún bloque posterior. Una vez definidas las variables a emplear, se escribirán la o las fórmulas en el interior del recuadro. Cada fórmula debe finalizar con un “;”.
CONTROL DE CALIDAD
PÁG. 11
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
Los operadores y funciones que se pueden emplear se explican en la ayuda de LabVIEW, y son los que se muestran a continuación:
Operadores aplicables en Formula Node
CONTROL DE CALIDAD
PÁG. 12
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
IV.
Procedimientos En el desarrollo del presente laboratorio se propuso ejercicios para reforzar los conceptos entorno al software LabVIEW, dichos ejercicios serán simulados y luego con valores reales se comprobará su correcto funcionamiento.
4.1
Ejercicio FOR LOOP 4.1.1 Enunciado: Graficar 100 números aleatorios entre 10 y 50 utilizando la estructura For Loop. 4.1.2 Simulación Para mayor comprensión de los resultados obtenidos es recomendable representarlos gráficamente. Para este ejercicio nos ayudaremos del indicador Waveform Chart.
En el diagrama de bloques con anti-click buscamos entre la funciones la opción programming- structures- foor loop, escogemos foor loop y formamos un cuadrado en la ventana de diagrama de bloques.
CONTROL DE CALIDAD
PÁG. 13
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
El número de veces que se ejecuta el bucle es 100. En el símbolo de iteraciones conectamos un indicador y le sumamos 1 para que cuando se ejecute nos muestre de 1 a 100 y no de 0 a 99 como lo haría normalmente, ya que las iteraciones inician en 0. También nos ayudaremos de la función random number como en el laboratorio anterior.
Para generar números entre 10 y 50 utilizamos la siguiente lógica: Si la función random number nos da números entre 0 y 1, entonces, multiplicamos la función por 40, entonces la salida de dicha multiplicación será número entre 0 y 40, si a esta salida le sumamos 10, entonces nos arrojará números entre 10 y 50. La salida de la operación suma irá hacia el indicador gráfico waveform chart. Para que la simulación no sea demasiado rápida, colocaremos la función wait y le agregamos como constante 100 ms.
CONTROL DE CALIDAD
PÁG. 14
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
CONTROL DE CALIDAD
PÁG. 15
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
4.1.3 Demostración Cuando corremos el programa el resultado nos muestra gráficamente 100 números aleatorios.
CONTROL DE CALIDAD
PÁG. 16
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
4.2
Ejercicio WHILE LOOP 4.2.1 Enunciado Generar una onda senoidal haciendo uso de la estructura while loop. 4.2.2 Simulación Para la simulación haremos uso del indicador waveform chart como en el ejercicio anterior como salida que mostrará nuestros datos. Determinamos nuestras entradas en el panel de control. Las entradas de la simulación serán los controladores amplitud y velocidad.
En el panel de diagrama de bloques hacemos anti-click y buscamos entre la funciones programming- structureswhile loop y hacemos un cuadrado. Dentro de dicho cuadrado colocamos la función seno.
Usamos la función multiply cuyas entradas serán las iteraciones de nuestro bucle y la constante . La salida de la multiplicación será dividida entre 180 y luego se conectará a la función sine. La salida de la función sine será multiplicada CONTROL DE CALIDAD
PÁG. 17
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
con la entrada amplitud e irá conectada directamente a la salida gráfica waveform chart. Mientras tanto en la estructura while loop modificaremos el terminal condicional con anticlick en el y lo cambiamos a stop if true
El interfaz quedaría como sigue:
CONTROL DE CALIDAD
PÁG. 18
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
4.2.3 Demostración Corremos la simulación con una amplitud de 4 y una velocidad aproximadamente de 1.
CONTROL DE CALIDAD
PÁG. 19
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
V.
Tarea propuesta Dentro del desarrollo del laboratorio se dejó una tarea propuesta. 5.1. Tarea 1 5.1.1. Enunciado: Hallar las soluciones de una ecuación cuadrática utilizando la estructura formule node. 5.1.2. Simulación: Determinamos las entradas y las salidas. Para las entradas haremos uso de 3 controladores que representarán las constantes numéricas de la ecuación cuadrática (A, B y C). Para las salidas utilizaremos dos indicadores numéricos (X1 y X2).
El principio matemático de nuestra simulación es:
Cuyas raíces se determinan con la siguiente fórmula:
CONTROL DE CALIDAD
PÁG. 20
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
Para este ejercicio hacemos uso de formule node, estando en el panel de diagrama de bloques con anticlick la buscamos en programmingstructures- formule node. Agregamos input y output haciendo anticlick en el borde de la estructura y conectamos a nuestras entradas y salidas.
5.1.3. Demostración: Para valores: A=2 B=8 C=4 Las salidas serán: X1=-3.41 X2=-0.59
CONTROL DE CALIDAD
PÁG. 21
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
5.2. Tarea 2 5.2.1. Enunciado: Implementar un sistema que muestre la polarización de un BJT. 5.2.2. Principio: Las fórmulas para esta polarización son:
( )
( )
5.2.3. Simulación: Para esta tarea propuesta utilizaremos una estructura while loop con un stop para detenerlo cuando nosotros lo consideremos. Dentro del CONTROL DE CALIDAD
PÁG. 22
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
while loop, utilizaremos una estructura formule node, para introducir las ecuaciones necesarias. Determinamos nuestras entradas y nuestras salidas. Las entradas serán las resistencias del circuito y el voltaje de entrada. Y las salidas serán:
Entonces en el panel de control tenemos:
CONTROL DE CALIDAD
PÁG. 23
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
Y en el panel de diagrama de bloques:
CONTROL DE CALIDAD
PÁG. 24
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
5.2.4 Demostración:
CONTROL DE CALIDAD
PÁG. 25
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
VI.
Conclusiones
A través del siguiente informe de laboratorio alcanzamos los siguientes objetivos:
Simulamos en el software LABVIEW los diferentes ejercicios propuestos.
Comprobamos con valores reales el funcionamiento de las simulaciones.
Reforzamos el uso de las funciones estudiadas en el software LABVIEW.
CONTROL DE CALIDAD
PÁG. 26
UNIVERSIDAD NACIONAL DE PIURA FACULTAD DE INGENIERIA INDUSTRIAL ESCUELA PROFESIONAL DE INGENIERIA MECATRONICA CONTROL DE CALIDAD
VII.
Referencias bibliográficas
1. Estructuras de ejecución. En: http://www.ni.com/gettingstarted/labviewbasics/esa/exestructures.htm 2. Estructuras en LabVIEW En: http://cnx.org/content/m41078/latest/?collection=col11361/latest
CONTROL DE CALIDAD
PÁG. 27