MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO...

28
MAESTRÍA EN SISTEMAS EMBEBIDOS - TRABAJO FINAL - Autor: Esp. Lic. Juan Agustin Bassi - Director: Dr. Ing. Pablo Martín Gomez (FIUBA)

Transcript of MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO...

Page 1: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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)

Page 2: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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

Page 3: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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

Page 4: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

CASO DE USO - CAMINO TRADICIONAL0 4

Page 5: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

CASO DE USO - UTILIZANDO VIHARD0 5

Page 6: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

FUNCIONAMIENTO DETALLADO0 6

Page 7: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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

Page 8: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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

Page 9: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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

Page 10: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

VISUALIZACIÓN DE VENTANA PRINCIPAL1 0

Page 11: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

PESTAÑA FIRMWARE EMBEBIDO1 1

Page 12: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

PESTAÑA INFORMACIÓN1 2

Page 13: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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

Page 14: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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

Page 15: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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

Page 16: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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

Page 17: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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

Page 18: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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

Page 19: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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

Page 20: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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

Page 21: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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

Page 22: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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

Page 23: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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

Page 24: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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

Page 25: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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

Page 26: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

PREGUNTAS

Page 27: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

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)

Page 28: MAESTRÍA?EN SISTEMAS EMBEBIDOS -UTRABAJO ...laboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo-Final...La biblioteca embebida contiene: - Mapa de periféricos virtuales - Funciones

DATOS DE

CONTACTO

A U T O R

- Esp. Lic. Juan Agustin Bassi

E M A I L

- [email protected]

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