Créditos
6
Tipos
Obligatoria
Requisitos
Esta asignatura no tiene requisitos
, pero tiene capacidades previas
Departamento
ESAII
El objetivo de esta asignatura es la de mostrar que es un sistema embebido, cómo especificar los requisitos funcionales de un sistema embebido y cómo evaluarlo. Se hará una introducción al diseño y desarrollo de sistemas, aplicaciones y servicios informáticos en sistemas embebidos y ubicuos. Se pretende dotar de suficientes elementos de juicio para poder seleccionar las plataformas hardware y software más adecuadas que cumplan los requerimientos especificados con un coste ajustado.
Profesorado
Responsable
- Daniel Garcia Solà ( daniel.garcia.sola@upc.edu )
Otros
- Manel Frigola Bourlon ( manel.frigola@upc.edu )
Horas semanales
Teoría
2
Problemas
0
Laboratorio
2
Aprendizaje dirigido
0
Aprendizaje autónomo
7.54
Competencias
Específicas
Genéricas
Sostenibilidad y compromiso social
Actitud frente al trabajo
Básicas
Objetivos
-
El objetivo de esta asignatura es mostrar qué es un sistema embebido, cómo especificar los requisitos funcionales de un sistema embebido y cómo evaluarlo.
Se pretende dotar de suficientes elementos de juicio para poder seleccionar las plataformas hardware y software más adecuadas que cumplan los requerimientos especificados con un coste ajustado.
Competencias relacionadas: CB6, CTR2, CTR5, CTE1, CTE8, CG1, CG2, CG6, CG7, CG8,
Contenidos
-
Introducción
Definiciones y conceptos básicos sobre sistemas embebidos.
Conceptos de fiabilidad y seguridad: sistemas críticos.
Aplicaciones: sistemas de control, sistemas Real-Time. -
Plataformas hardware para sistemas embebidos.
Descripción de diversas alternativas de hardware. Arquitecturas, ejemplos de aplicación.
Buses e interfaces de comunicación industriales.
Dispositivos de E/S. Sensores y actuadores.
Adquisición y tratamiento de datos. -
Diseño y desarrollo de sistemas embebidos
Requerimientos funcionales de un sistema.
Diseño de la arquitectura del software según el hardware.
Metodologías y modelos de diseño y desarrollo.
Herramientas de soporte al diseño y desarrollo. -
Sistemas operativos para sistemas embebidos
Arquitecturas de software.
Sistemas operativos en tiempo real (RTOS) y gestión de recursos de hardware.
Conceptos de multitasking: threads, mutex, colas de mensajes, mecanismos sincronización, deadlocks, etc.
Algoritmos de planificación de tareas (Scheduling) -
Sistemas móbiles y ubicuos
Conceptos básicos de sistemas ubicuos.
Interconexión de dispositivos. Redes para sistemas embebidos. Topologías. Acceso al medio.
Tecnologías y estándares de comunicaciones inalámbricas (wireless).
Ejemplos de aplicación: automoción, domótica, seguridad, robótica, agricultura, inteligencia ambiental, IoT... -
Evaluación de sistemas embebidos
Fiabilidad y tolerancia a fallos.
Seguridad: estándares de seguridad (SIL).
Eficiencia.
Test.
Actividades
Actividad Acto evaluativo
Teoría
3h
Problemas
0h
Laboratorio
3h
Aprendizaje dirigido
0h
Aprendizaje autónomo
4h
Teoría
7h
Problemas
0h
Laboratorio
7h
Aprendizaje dirigido
0h
Aprendizaje autónomo
10h
Teoría
4h
Problemas
0h
Laboratorio
2h
Aprendizaje dirigido
0h
Aprendizaje autónomo
6h
Teoría
5h
Problemas
0h
Laboratorio
5h
Aprendizaje dirigido
0h
Aprendizaje autónomo
8h
Teoría
5h
Problemas
0h
Laboratorio
5h
Aprendizaje dirigido
0h
Aprendizaje autónomo
8h
Teoría
2h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0h
Aprendizaje autónomo
6h
Teoría
0h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0h
Aprendizaje autónomo
0h
Segundo parcial
Semana: 18 (Fuera de horario lectivo)
Teoría
0h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0h
Aprendizaje autónomo
0h
Propuesta de Trabajo Dirigido (P1)
Teoría
0h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0.3h
Aprendizaje autónomo
8h
Desarrollo del Trabajo Dirigido (P2)
Teoría
0h
Problemas
0h
Laboratorio
4h
Aprendizaje dirigido
1.7h
Aprendizaje autónomo
12h
Defensa del Trabajo Dirigido (P3)
Teoría
0h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
2h
Aprendizaje autónomo
12h
Metodología docente
No se distinguirá entre clases de teoría y problemas, las clases teóricas se reforzarán con ejemplos mostrando las posibles alternativas y soluciones a los problemas planteados.En los diferentes temas se propondrán ejercicios de autoevaluación para que el estudiante pueda ser consciente de su progreso, y pueda solicitar ayuda al profesor en caso de que detecte alguna carencia.
Las sesiones de prácticas se realizarán en el laboratorio docente del departamento. Es requisito ineludible haber realizado un trabajo previo que será especificado por cada una de las prácticas.
Método de evaluación
Durante el curso se realizarán 2 pruebas de teoría y problemas evaluables, correspondientes a diferentes partes del curso. Se realizarán de forma individual. Se obtendrá una nota de teoría (NT) a partir de la media ponderada de las evaluaciones.* Sólo excepcionalmente se hará un examen final de donde se obtendrá la nota NT. El estudiante que desee ser evaluado mediante un examen final, deberá solicitar por escrito al coordinador de la asignatura antes de la primera prueba evaluatoria.
* La nota de laboratorio NL se obtiene a partir de la media de las evaluaciones individuales de las prácticas. Se realizarán 5 prácticas evaluables durante el curso. Los alumnos repetidores que tengan las prácticas aprobadas pueden convalidar las prácticas con NL = 5.
* A lo largo del desarrollo de la asignatura, los alumnos deberán presentar una propuesta de trabajo, un pre-proyecto y un diseño de un sistema empotrado a elección de los componentes del grupo. Este diseño será defendido por el grupo en un acto abierto a toda la clase. La nota de estos tres actos será NPF.
* La nota final (NF) de la asignatura se obtiene de la nota de teoría NT, la de laboratorio NL y la nota de la presentación final NPF.
NF = 0,4 NT + 0,4 NL + 0.2 NPF.
* Es condición necesaria para superar la asignatura realizar y presentar en la forma y plazo previsto las prácticas de laboratorio.
Bibliografía
Básico
-
Better embedded system software
- Koopman, P,
Drumnadrochit Press,
2010.
ISBN: 978-0-9844490-0-2
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991003826209706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Embedded networking with CAN and CANopen
- Pfeiffer, O.; Ayre, A.; Keydel, C,
Coperhill Media Corporation,
2008.
ISBN: 9780976511625
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991003948179706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Embedded systems handbook
- Zurawski, R,
CRC Press,
2009.
ISBN: 9781315222301
-
Embedded system design: embedded systems, foundations of cyber-physical systems, and the internet of things
- Marwedel, P,
Springer,
2021.
ISBN: 9783030609108
-
Embedded systems: real-time operating systems for ARM CortexTM-M microcontrollers
- Valvano, J,
Jonathan W. Valvano,
2019.
ISBN: 9781466468863
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991004164329706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Real-time systems: design principles for distributed embedded applications
- Kopetz, H,
Springer,
2011.
ISBN: 978-1-4419-8236-0
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991004000269706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
Capacidades previas
Coneixements bàsics de les inetrfícies d'un microcomputador.Programació en llenguatge d'alt nivell (preferiblement C).
Programació en algun llenguatge ensamblador.
Coneixement del funcionament dels diferents components electrònics: R, L, C, diodes, transistors MOS.
Anàlisi de circuits electrònics en DC. Càlcul de tensions, corrents i consums.
Saber representar números en base binària i hexadecimal, i realitzar-ne operacions aritmètico-lògiques.
Conèixer el funcionament de les diferents portes lògiques i blocs combinacionals o sequencials.
Saber analitzar i sintetitzar circuits lògics.
Conèixer el funcionament i estructura del processador.
Conèixer l'arquitectura i funcionament d'un computador senzill.
Conèixer el funcionament i jerarquia de la memòria d'un computador.
Entendre correctament documentació escrita en anglès.