Usuario:984 M18278
De Wikifab
Trabajo Final
Se pide generar una interfaz gráfica en la que se visualice un tanque de almacenamiento de liquido, el cual será llenado con flujos de entrada y salida distintos.
Se pide las siguientes características en la interfaz:
Plantead una función de control que simule la carga y descarga del depósito con caudales de entrada y salida diferentes. Representad al menos el valor entero del contenido del depósito, con valores máximo y mínimo variables. Representad consola típica de mando, con pulsadores de marcha y paro, emergencia, rearme. Funcionamiento automático de bomba y manual de descarga de la válvula, operada desde el HMI.
La interfaz gráfica quedará de la siguiente manera:
El código en el programa CVI quedara de la siguiente manera:
La opción de emergencia y rearme tendran la función de detener toda la simulación y de restablecer todos los parámetros a sus valores originales.
En la función timer se establecera todas las condiciones del programa, se obtendran los valores de la interfaz y se llenará el tanque dependiendo de la función que se de.
La simulación del tanque será la siguiente:
Después del paro de emergencia queda en su ultimo estado:
Después de rearme queda en condiciones iniciales de esta manera:
Trabajo 2
Generar una interfaz gráfica donde se obtenga una serie de datos dinámicos representando temperaturas, dichas temperaturas varían entre 20 y 80ºC, el usuario podrá definir la velocidad con la que se obtienen los datos, así como también definirá el limite valor de temperatura máxima, con la cual se encenderá un indicador LED en caso de sobrepasar, así también se podrá guardar una serie de datos y mostrar los mismos.
La interfaz gráfica queda definida de la siguiente manera:
El código establecido como código C y las variables declaradas serán las siguientes:
- valor[]: variable donde se graba el valor randómico
- maximo: valor en el que marca temperatura alta
- velocidad. indica la velocidad de obtención de datos
- arranca: permisivo para producir los datos
- filetype: tipo txt
- file[]: vector para mostrar datos
- array[]: vector donde se graban datos
- file_name: nombre del archivo
- Para la obtención de los datos y representación gráfica de las mismas es necesario declarar 2 variables a manera de vector con el fin de acumular datos que se obtienen de forma randómica.
- La función timer es la mas importante de todo el programa, en esta función se producen los datos de temperatura y se establecen las condiciones de sensor LED y se gurdan datos en una función array.
- Para la función de grabar datos es necesario la función array to file que permitirá convertir los datos del vector en un archivo txt.
- La función de mostrar datos es inversa a la anterior y se proporciona adicionalmente una función que permite borrar la gráfica mostrada.
- Interfaz gráfica en funcionamiento produciendo datos de temperatura
- Grabar datos en archivo txt
- Obtención de datos grabados en una gráfica
-
Se adjunta el trabajo 2 Media:M18278 trabajo2.rar
Trabajo 1
Generar una interfaz donde se represente ondas senoidales en donde el usuario pueda modificar la amplitud, el numero de ciclos de la función y el color de la misma. La onda debe estar conformada por la función seno y Whitenoise.
Para la obtención de la interfaz gráfica vamos a usar 4 comandos numeric para introducir lo siguiente: Amplitud seno, amplitud ruido, numero de ciclos, fase de seno. Se usará 3 command button para graficar, borrar y salir de la interfaz. Un Color numeric modificara el color de la función seno ruidoso en la gráfica.
La interfaz gráfica quedará de la siguiente manera:
Para que pueda realizar la función vamos a usar programación C.
Donde se debe poner las librerias correspondientes y las variables que se van a usar en todo el código -seno, ruido y seno ruidoso se debe declarar como double -las variables ciclos, amplitudruido, amplitud, fase, color seran necearias para que la funcion seno sea variable al usuario. De la siguiente manera:
Para poder eliminar las gráficas se debe colocar la función DeleteGraphPlot, se debe colocar el command buton salir en la función que se crea por defecto.
Para poder graficar se debe usar las funciones GetCtrlVal para obtener los valores numericos que se ingresan en la interfaz gráfica, la funcion SinePattern graficará la funcion seno y whitenoise graficará ruido, para poder graficas senoruidoso sera necesario la suma de ambas en una sola función y graficar con la función PlotY, de la siguiente manera:
Una vez hecha la interfaz gráfica y el código de programación, el resultado de las gráficas es el siguiente:
Adjunto en formato ZIP el trabajo 1
Media:Trabajo 1 M18278.rar