uModelFactory

Concepto y Objetivo

uModel Factory es un software didáctico-profesional realizado con el framework Qt de modelado y simulación de aplicaciones para sistemas embebidos, desarrollado por profesores y alumnos del Departamento de Electrónica de la Facultad Regional Buenos Aires de la Universidad Tecnológica Nacional, en el marco de un proyecto de Investigación y Desarrollo.

Permite la creación de modelos por medio de Diagramas de Estados a través de su interfaz gráfica, su simulación, como así también la generación automática de código C portable y toda la documentación asociada; manteniendo sincronizado, en tiempo de desarrollo, el modelo, código generado y documentación.

Recientemente se ha incorporado la funcionalidad de depuración del modelo implementado en un microcontrolador ARM Cortex M3 LPC1769, usado en la cátedra de Informática II.

La nueva versión de uModel Factory (v2018) permite la creación del modelo, la generación del código que lo representa, su simulación y posterior depuración. A continuación, se observa en detalle la representación de un sistema compuesto por una tecla y un dispositivo lumínico, el cual cambia de estado al presionar la tecla.

					La estructura general de la codificación en C.
						
					int main ( ) 
					{
						inicializar ( );     //inicialización de periféricos
						while (1) 
						maquina_estado ( );
               
						return 0;
					}
					

La función 'maquina_estado', se ha generado a partir de la representación del diagrama de estados, habiendo optado previamente (en tiempo de desarrollo aún) por su implementación a través de la estructura switch-case. Otras opciones disponibles son la estructura de if-else o la implementación por medio de punteros a función.

Al iniciar el proceso de depuración se observa en la interfaz gráfica que se ha disparado el evento de RESET, el cual configura a la máquina en su estado inicial.

Al producirse el evento 'eTecla' correspondiente a la presión de la tecla, se recibe en la PC a través de la comunicación serie mencionada una trama que brinda información sobre el evento ocurrido. La trama se analiza, se valida y se extraen los datos que transporta, de modo tal de actuar sobre la interfaz gráfica para que visualice las consecuencias del evento sucedido en el modelo planteado.

Al producirse una nueva presió sobre la tecla, se observa una nueva transición desde el estado ENCENDIDO hacia el estado APAGADO (figura 9) repitiendo el procedimiento anteriormente descripto.

A continuación, se visualiza un modelo mucho mas complejo: