In s Virtual

19
Grupo: 3MM4 Instituto Politécnico Nacional Unidad Profesional Interdisciplinaria en Ingeniería y Tecnologías Avanzadas Instrumentación Virtual Profesor: Erick Huitron Ramírez PRÁCTICA 1. ESTRUCTURAS DE CONTROL Rúbrica de evaluación Práctica 1 Funcionamiento % Procedimiento % Orden de diagrama de bloques % Observaciones y resultados % Alumno: Galindo Fuentes David Alejandro

Transcript of In s Virtual

Grupo: 3MM4

Instituto Politécnico Nacional

Unidad Profesional Interdisciplinaria en Ingeniería y Tecnologías Avanzadas

Instrumentación Virtual

Profesor: Erick Huitron Ramírez

PRÁCTICA 1. ESTRUCTURAS DE CONTROL

Rúbrica de evaluación Práctica 1Funcionamiento %Procedimiento %Orden de diagrama de bloques %Observaciones y resultados %

Alumno: Galindo Fuentes David Alejandro Carrera: Ing. Mecatrónica

Situación Estudiantil: Regular

México, D.F. a 27 de Septiembre de 2013

EJERCICIO 1. GENERADOR DE FUNCIONES

En este panel frontal se observa en la esquina superior izquierda un elemento de paro el cual permitirá detener el instrumento virtual, porterirmente hacia la derecha se encuentra un elemento de selección tipo “text ring” que permitirá seleccionar entre cada función del generador. Contiguo a los elementos previos se ubican cuatro perillas de control que permitirán varia cada uno de los elementos correspondientes a sus nombres que son la amplitud de las señales, la frecuenca, su valor de offset y el control de tipo directo. Finalmente en la parte inferior se muestra un visualizador de onda donde se despliegan cada una de las funciones dependiendo la selección y la ubicación de los controles.

En el diagrama a bloques del instrumento virtual se observa una estructura de tipo while donde se albergan los controles de cada señal en frecuencia amplitud y offset, también se ubica una estructura case que permitirá al control de selección de señal cambiar entre cada una de las señales y el indicador grafico donde se despliega la señal seleccionada en la estructura case. También se tiene un sumador que permitirá tener control en frecuencia mediante el comparador y selector posteriores que mandan el inicio de un nuevo ciclo cada vez que se llega al valor de 2π .

En el caso por default se mandara una señal de 0 que nos indicara que no hay registro de ningún tipo de señal.

Para el caso de señal Sinusoidal se empleó una función previamente definida a la cual en la salida se le multiplico el control de amplitud, posteriormente se le sumo el control de offset y finalmente se comparo y se mando a selectores para delimitar los rango de visión que se podrían obtener de esta señal entre -10 y 10 unidades.

En el caso de señal de control directo solo se implementó el control de Directo y se le agregaron las modificaciones que a la señal Sinusoidal en el mismo orden.

En este caso de señal triangular se realizó una selección para formar la primer pendiente comparando el valor de frecuencia medio que es π y al sobrepasarlo se le restaría al valor de 2 los elementos posteriores de la siguiente pendiente y así formar la señal centrada en el eje horizontal. Posteriormente se realizó la modificación de amplitud, offset y frecuencia de la misma forma que en señales previas.

Para el caso de señal cuadrada se hizo una comparación del periodo para asignar un valor negativo para la primer mitad y uno positivo para la segunda mitad. Se procuró al igual que en las señales anteriores que su amplitud inicial fuese uno y estuviera centrada en el eje horizontal. Posterior a ello como en las señales anteriores se modificó para obtener las características de variación en las características de las señales previamente mencionadas.

En el caso diente de sierra se observa un divisor que permite obtener una amplitud de una unidad, posterior a ello se resta media unidad para ser centrada en la horizontal y como en las señales anteriores de modifican sus características mediante un multiplicador sumador y comparación con posterior selector para mandar la salida final.

Finalmente para el caso de GND que sabemos es una referencia a la tierra o referencia en un circuito y que por lo regular es igual a cero se mandó directamente al indicador grafico este valor de cero que similar al caso por default nos muestra solo una línea horizontal que pasa sobre el origen.

Observaciones y Resultados

En este primer VI aunque se tenía gran parte del desarrollo previamente realizado en clase la considero la más elaborada pero a su vez la las repetitiva en cada caso ya que el empleo de los controles en cada uno es idéntico y se usa la misma secuencia de elementos y funciones para poder mandar una salida al indicador gráfico.

EJERCICIO 2. SISTEMA DE CONTROL DE TEMPERATURA

En el panel frontal de este ejercicio observamos un elemento de paro de instrumento, tres indicadores visuales y un elemento de control. El elemento de control permitirá ingresar un dato numérico para el control de temperatura el cual despegara sobre el termómetro un indicador en color rojo haciendo referencia al valor de temperatura deseado mientras que en color azul se desplegara el valor de la variable controlada. También se tienen dos elementos de tipo led que se encenderán según el tipo de cambio que se desee en la temperatura y se apagaran cuando se haya logrado llegar al valor deseado.

En el diagrama de bloques se puede observar una estructura while que permitirá que el programa se ejecute continuamente. A esta estructura se le ingresa una constante igual a quince, la cual será de donde comience el termómetro su variación. Esta entrada se emplea como un registro de cambio para monitorear el valor de temperatura controlado y ser comparado posteriormente. Se tienen elementos de comparación el primero nos permitirá definir si el la variable controlada debe aumentar para llegar al valor de control objetivo, de ser así mediante el selector se le incrementara el valor de una unidad cada 50 ms y también se mandara a un indicador visual de tipo led , este tiempo es definido por el elemento de tiempo de espera; de no ser asi el valor se comparara nuevamente esta vez para el caso en que la temperatura deba disminuir y se mandara al indicador led así como al selector para disminuir en una unidad el valor de temperatura cada 50 ms.

OBSERVACIONES Y RESULTADOS

En este VI solo se complicó el empleo de indicador de temperatura que requería un arreglo que indicara la temperatura deseada y la temperatura controlada. Como resultado se pudo ver que el incremento y decremento eran indicados por los leds y los tiempos son demasiado cortos y se empaquetan en un clúster para poder ser visualizados en el indicador.

EJERCICIO 3. CONTROL DE ACCESOS

En el control de accesos se presenta un panel que muerta dos controles de tipo string que permitirán ingresar el usuario y contraseña a validar y debajo un botón de ingreso. Posteriormente se tiene un control numérico que permitirá dar el número de elementos de la serie que se mostrara, también se observan dos indicadores numéricos, un arreglo y un elemento de tipo grafico; los indicadores numéricos permitirán visualizar los coeficientes de la Divina Proporción y Serie de Fibonacci para el número de elementos dado, el indicador de tipo arreglo mostrara todos los elementos previos al último coeficiente de Fibonacci mientras que la gráfica permitirá ver la tendencia de los valores de la Divina Proporción.

En este diagrama a bloques se observan los elementos de control tipo “string” así como constante del mismo tipo que se comparan para definir los casos de una estructura “case”. Si el la cadena de caracteres de usuario y contraseña concuerdan con las constantes respectivas se mandaran atributos de tipo booleano a la primer compuerta “and” y si el botón de confirmación es presionado se accederá al caso verdadero de la estructura case que anida otra estructura “while” donde se ubica un subVI que permite obtener los elemento de la serie de Fibonacci y los elemento de la Divina proporción para un valor especifico dado. Aquí mismo se encuentran los indicadores y control explicados en el panel frontal.

Finalmente se tiene otra estructura case dentro del primer ciclo while que permitirá incrementar un contador para detener el programa en caso de que el usuario o contraseña sean ingresados incorrectamente en tres ocasiones. En el caso “False” solo se hace una conexión directa para no realizar incrementos y si es cierta la condición sumara una unidad al contador. Que se comparara y definirá si el programa finaliza o se mantiene en ejecución.

OBSERVACIONES Y RESULTADOS

Este VI aunque no fue muy elaborado permitió observar el comportamiento de comparación entre el usuario y contraseña así como el requerimiento simultáneo del botón de ingreso. Se puede decir también que la implementación de pequeños sistemas de seguridad en un VI da soporte a usuarios ante alguna eventualidad.

EJERCICIO 4. FUNCIÓN FIBONACCI

En este panel se observa un solo control que nos permitirá definir el valor del coeficiente deseado, también se tienen 6 indicadores de los cuales los tres numéricos permitirán visualizar los coeficientes de Fibonacci, Proporción Divina y el penúltimo valor de esta. Los indicadores de tipo arreglos mostraran los valores previos de la serie de Fibonacci y los coeficientes de la Divina Proporción. Finalmente el indicador de tipo grafico nos permitirá observar la tendencia de los valores de Divina proporción respecto a su posición de elemento.

En el diagrama a bloque de este SubVI se tiene el control numérico como el numero de iteración de un ciclo for que presenta dos registros iniciados en 1 y 0, en primera instancia se tiene un sumador que permitirá calcular los valores de la serie de Fibonacci, sus salida se manda a tres puntos, el primero al registro en segunda instancia a un caso de estructura “case” y ultimo a un divisor. Del registro se toma el valor para ser visualizado en el indicador del coeficiente de Fibonacci. En el divisor se ingresa el valor de la serie y se divide entre el elemento anterior para hallar la divina proporción en ese elemento el cual se manda al indicador de Divina Proporción, a un caso de otra estructura case y al indicador grafico de tendencias.

Las estructuras case son conmutadas por la comparación del valor de iteración del ciclo for mas una unidad y el valor máximo del control numérico, esto permite desplegar en los arreglos solo hasta el penúltimo valor de los coeficientes ya que mientras la iteración sea menor al control mandara los valores pero si cambia mandara un valor de -1 que desactivara las condiciones de escritura de los arreglos Divina Proporción y Fibonacci al ser comparados con el cero.

OBSERVACIONES Y RESULTADOS

Durante este ejercicio se observó cómo mientras los valores de la serie Fibonacci iban aumentando, los coeficientes de la Divina Proporción experimentaban un decremento y esto debido a la división del resultado previo entre el nuevo resultado. Finamente en este ejercicio se constató gráficamente como los valores disminuyen tendiendo a ser cero.

EJERCICIO 5. MÁQUINA DE ESTADOS DE UN ROBOT RESUELVE LABERINTO

Este panel muestra la representación mediante led´s de dos motores de un robot resuelve laberinto. Se tiene un botón de paro para detener al robot en el momento que se desee y un botón más que simulara ser un obstáculo detectado por el robot.

Para este diagrama a bloques se observa una estructura while que contiene una estructura case y que conmuta mediante la simulación del obstáculo y se detiene con el botón de paro. La estructura case se inicializa siempre en el estado 0 o por default de la estructura case la cual controla los estados de los motores.

En el caso por default se observan dos selectores que prácticamente tienen todos los casos y donde únicamente varíen en sus acciones. El primer selector decide si pasar al siguiente caso o mantenerse y esta decisión la tomara dependiendo el estado de botón de obstáculo. Si no hay obstaculo se mantendrá y avanzara sin mandar un paro y si hay obstaculo pasara al siguiente caso. Posteriormente se tiene otro selector en cascada el cual elegirá dependiendo el estado del botón de paro. Si no se activa dejara pasar la elección del selector anterior y si es activado pasara al estado 4 de la estructura case.

En este caso si el obstáculo se mantiene el selector mantendrá el estado y si desaparece el obstáculo cambiara al siguiente estado. El segundo selector influirá de forma idéntica al del caso anterior ya que solo depende del botón de paro. En este caso uno de los motores se apagara (motor izquierdo) y la señal de paro se mantiene en estado falso.

En el caso dos si no hay obstáculo los motores se mantendrán avanzando pero si hay obstáculo pasara al siguiente estado. Como se mencionó antes el segundo selector estará presente en todos los casos y desempeña la misma función respecto al botón de paro.

En este caso si se mantiene el obstáculo el selector mantiene el caso seleccionado y si desaparece el obstáculo el selector manda al caso inicial. En este caso se invierte el apagado del motor respecto al caso dos haciendo que el robot gire en sentido opuesto.

Finalmente en el último caso se manda apagar los motores y se manda la activación al paro del ciclo mientras se mantiene el valor del shift register en este último caso.

OBSERVACIONES Y RESULTADOS

En este ejercicio se puedo observar la secuencia que sigue la máquina de estados y que tras las condiciones dadas a cada estado se permitía saltar de uno a otro así como cerrar un ciclo. Como resultado se tuvo una conmutación en los giros del robot representando los motores y el obstáculo así como un total control en su paro al detener los motores antes de finalizar el proceso.