MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO...
Transcript of MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO...
M A E S T R Í A E N S I S T E M A S E M B E B I D O S - T R A B A J O F I N A L
PLATAFORMA DE EMULACIÓN DE
HARDWARE PARA SISTEMAS
EMBEBIDOS
- Autor: Esp. Lic. Juan Agustin Bassi
- Director: Dr. Ing. Pablo Martín Gomez (FIUBA)
V I H A R D
Se compone de:
Un programa de PC que contiene
periféricos virtuales de hardware
Una biblioteca embebida que
controla el hardware virtual
P L A T A F O R M A D E A P R E N D I Z A J E D E P R O G R A M A C I Ó N
0 2
CASO DE USO
D E S A R R O L L A R U N A L G O R I T M O Q U E A L P R E S I O N A R U N B O T Ó N E N C I E N D A U N L E D
I N F O R M A R S I E L L E D E S T Á E N C E N D I D O O A P A G A D O
E N U N D I S P L A Y L C D
0 3
CASO DE USO - CAMINO TRADICIONAL0 4
CASO DE USO - UTILIZANDO VIHARD0 5
FUNCIONAMIENTO DETALLADO0 6
GESTIÓN Y
PLANIFICACIÓNDEL PROYECTO
H E R R A M I E N T A S U T I L I Z A D A S
Desglose del trabajo en tareas
Listado de requerimientos
Diagrama Activity On-Node
Diagrama de Gantt
0 7
ARQUITECTURA
DE LA
PLATAFORMA
D E T A L L E S G E N E R A L E S
La biblioteca embebida contiene:
- Mapa de periféricos virtuales
- Funciones de acceso al hardware virtual
La comunicación entre el sistema embebido
y el programa ViHard se realiza por USB
mediante un protocolo serial.
0 8
PROGRAMA DE
HARDWARE
VIRTUALD E S A R R O L L A D O C O N E L E C T R O N J S
Framework para crear programas de
escritorio utilizando tencologías web:
0 9
VISUALIZACIÓN DE VENTANA PRINCIPAL1 0
PESTAÑA FIRMWARE EMBEBIDO1 1
PESTAÑA INFORMACIÓN1 2
PROGRAMA DE
HARDWARE VIRTUALD I A G R A M A D E F L U J O R E S U M I D O
El programa de PC espera que se
conecte el sistema embebido.
Cuando están conectados ejecuta
los comandos recibidos, por
ejemplo, encender un LED virtual.
1 3
BIBLIOTECA
EMBEBIDA DE CÓDIGOD E T A L L E S P R I N C I P A L E S
Controla el hardware virtual mediante un protocolo serial
Altamente portable a otras arquitecturas
Documentada en formato Doxygen
Escrita en lenguaje C
1 4
PRUEBAS
UNITARIAS
DE FIRMWAREU T I L I Z A N D O T D D
Metodología de desarrollo guíado por pruebas.
1 5
MINUNITH E R R A M I E N T A S D E T E S T I N G P A R A S I S T E M A S E M B E B I D O S
Funcionalidad minimalista
Testea condiciones booleanas
Utiliza MACROS de lenguaje C
Su código es muy reducido
Ocupa muy poca memoria
D I C I E M B R E | 2 0 1 8
1 6
P Á G I N A W E B D E L A P L A T A F O R M A
DOCUMENTACIÓN
GENERADA DEL
PROYECTO D O C U M E N T A C I Ó N D E F I R M W A R E E N F O R M A T O D O X Y G E N
M A T R I Z D E T R A Z A B I L I D A D D E R E Q U I S I T O S I S O 2 1 5 0 0
1 7
EJECUCIÓN DE
PRUEBAS UNITARIASU T I L I Z A N D O M I N U N I T
1. Convertir pruebas a funciones
2. Programar las funciones
3. Ejecutar las pruebas
4. Visualizar en terminal serie
1 8
PORTING DE FIRMWAREU T I L I Z A N D O C O M P I L A C I Ó N C O N D I C I O N A L
Se redujo a la mínima expresión el
código dependiente de la plataforma.
Únicamente se necesitan 6 líneas
de código asociadas al
microcontrolador.
1 9
ANÁLISIS ESTÁTICO
DE FIRMWAREU T I L I Z A N D O S O N A R C L O U D
Herramienta de sistemas
críticos para analizar la
calidad del código fuente.
2 0
INSPECCIÓN DEL
CÓDIGO FUENTEV I S U A L I Z A C I Ó N C O N S O N A R C L O U D
Análisis del código para
encontrar posibles
puntos de falla.
2 1
DEMOSTRACIÓN EN VIVO
L I N K A V I D E O D E D E M O S T R A C I Ó N
2 2
CONCLUSIONES
DEL PROYECTO
L I S T A D O R E S U M I D O
Se ejecuta en cualquier microcontrolador
2 3
Especialmente útil para principiantes
Permite crear rápidas pruebas de concepto
Facilita el aprendizaje de programación
No se conocen otras herramientas similares
CONOCIMIENTOS
APLICADOSA S I G N A T U R A S P R I N C I P A L E S
2 4
Gestión de la Tecnología e Innovación
Certificación de Sistemas Electrónicos
Diseño de Sistemas Críticos
Testing para Sistemas Embebidos
PRÓXIMOS
PASOSG U I A D O S P O R U S U A R I O S
2 5
Reducir consumo de CPU del programa de PC
Mejorar comunicación sistema embebido - PC
Programa de PC para Windows, Linux y OS-X
Crear nuevos periféricos virtuales
Crear más cantidad de ejemplos de uso
Portar biblioteca embebida a nuevas plataformas
PREGUNTAS
AGRADECIMIENTOSA L D I R E C T O R D E E S T E T R A B A J O
- Dr. Ing. Pablo M. Gomez (FIUBA)
A L O S J U R A D O S D E E S T E T R A B A J O
- Mg. Ing. Diego J. Brengi (UNLaM, INTI)
- Mg. Ing. Facundo S. Larosa (UTN-FRH, FIUBA)
- Ing. Juan M. Cruz (UTN-FRB, FIUBA)
A L D I R E C T O R D E L A C A R R E R A
- Dr. Ing. Ariel Lutenberg (FIUBA)
DATOS DE
CONTACTO
A U T O R
- Esp. Lic. Juan Agustin Bassi
E M A I L
I N F O R M A C I Ó N D E V I H A R D
- Pagina web oficial
- Repositorio oficial
- Foro oficial