Logo UAB
2022/2023

Sistemas Embebidos

Código: 104378 Créditos ECTS: 6
Titulación Tipo Curso Semestre
2503758 Ingeniería de Datos OT 4 2

Contacto

Nombre:
Lluís Ribas Xirgo
Correo electrónico:
lluis.ribas@uab.cat

Uso de idiomas

Lengua vehicular mayoritaria:
catalán (cat)
Algún grupo íntegramente en inglés:
No
Algún grupo íntegramente en catalán:
No
Algún grupo íntegramente en español:
No

Otras observaciones sobre los idiomas

El material está mayoritariamente en inglés.

Equipo docente

Ismael Fabricio Chaile Alfaro

Prerequisitos

Para la plena comprensión de los contenidos de la asignatura conviene tener una habilidad básica en la programación y un buen conocimiento de cómo se ejecutan los programas en los computadores. Para ello, debe haberse hacer superado Programación avanzada, así como Fundamentos físicos para la adquisición de datos para entender los principios de digitización de la información. Es conveniente haber hecho Estructuras de datos y Programación paralela.

Objetivos y contextualización

Los sistemas embebidos se encargan de conjuntos muy específicos de funciones que, habitualmente, hacen de interfaz de alto nivel entre las aplicaciones y el mundo físico. En este sentido, se ocupan del tratamiento de datos captados por sensores de todo tipo, de parte de su procesamiento (computación periférica), de su transmisión a las aplicaciones y también del control de motores y actuadores de cualquier tipo. Actualmente, existen sistemas embebidos en casi cualquier "cosa" y, si las cosas son complejas, pueden traer muchos como, por ejemplo, los que puede haber en un coche.

Como los sistemas embebidos están estrechamente relacionados con el entorno físico que los rodea, los algoritmos que implementan deben cumplir con muchos requerimientos, a menudo muy estrictos y contradictorios entre sí. Por ejemplo, tener un alto rendimiento y consumir poca energía.

Así pues, para el desarrollo de los sistemas embebidos es necesario concebir algoritmos robustos que puedan verificarse para operar en entornos críticos y tener un coste de desarrollo y de ejecución dentro de los márgenes delimitados por los requerimientos de la aplicación.

Con esta asignatura se pretende que las y los estudiantes alcancen los objetivos siguientes:

  • Conocer la relación entre los sistemas embebidos, la Internet de las cosas y la computación periférica.
  • Tener nociones de los requerimientos habituales de los sistemas embebidos, incluidos los de tiempo real.
  • Comprender los aspectos de seguridad, fiabilidad y robustez de los sistemas.
  • Entender los diversos modelos de cálculo de los sistemas.
  • Tener capacidad de diseñar y manipular los modelos de cálculo orientados a estados.
  • Conocer los elementos básicos de las arquitecturas de los sistemas embebidos.
  • Tener los rudimentos de programación para la implementación de los sistemas.
  • Adquirir una habilidad práctica en el desarrollo de sistemas embebidos.
  • Saber integrar los sistemas embebidos en entornos de recogida y procesamiento de datos.

Competencias

  • Concebir, diseñar e implementar el sistema de adquisición de datos más adecuado para el problema concreto a resolver.
  • Demostrar sensibilidad hacia los temas éticos, sociales y medioambientales.
  • Prevenir y solucionar problemas, adaptarse a situaciones imprevistas y tomar decisiones.
  • Que los estudiantes hayan desarrollado aquellas habilidades de aprendizaje necesarias para emprender estudios posteriores con un alto grado de autonomía.
  • Que los estudiantes tengan la capacidad de reunir e interpretar datos relevantes (normalmente dentro de su área de estudio) para emitir juicios que incluyan una reflexión sobre temas relevantes de índole social, científica o ética.

Resultados de aprendizaje

  1. Demostrar sensibilidad hacia los temas éticos, sociales y medioambientales.
  2. Diseñar el sistema de adquisición de datos más eficiente para un sistema de soporte a la conducción autónoma.
  3. Prevenir y solucionar problemas, adaptarse a situaciones imprevistas y tomar decisiones.
  4. Que los estudiantes hayan desarrollado aquellas habilidades de aprendizaje necesarias para emprender estudios posteriores con un alto grado de autonomía.
  5. Que los estudiantes tengan la capacidad de reunir e interpretar datos relevantes (normalmente dentro de su área de estudio) para emitir juicios que incluyan una reflexión sobre temas relevantes de índole social, científica o ética.

Contenido

  1. Introducción a la Internet de las cosas y la computación periférica.
  2. Metodología de diseño de sistemas embebidos: Modelos de cálculo, arquitecturas y proceso de diseño.
  3. Síntesis de software embebido, simulación e implementación.
  4. Desarrollo de sistemas de registro de datos, monitorización e identificación de parámetros.

Metodología

La docencia se estructura a partir de las actividades presenciales siguientes:

  • Clases de teoría: Son sesiones de exposición de contenidos, con una primera parte que se dedica a la divulgación de los conocimientos necesarios para el análisis y el diseño de los sistemas embebidos y a explicar casos que sitúen en contexto el conocimiento y las habilidades que se adquieren en la asignatura. La segunda parte se dedicará a plantear los problemas que se tratarán en los seminarios correspondientes.
  • Seminarios de problemas: Discusión de pequeños casos de estudio que sirvan para consolidar los conocimientos teóricos en cuanto al análisis y el diseño de los sistemas embebidos.
  • Prácticas en laboratorio: Sesiones de trabajo en grupo, siguiendo un guion y supervisadas por un profesor o una profesora. En cada sesión se tratará un aspecto concreto en cuanto a la implementación de los sistemas embebidos.

Como en todos los ámbitos de la ingeniería, el desarrollo de sistemas embebidos implica tomar decisiones basadas en criterios a menudo contradictorios. En los casos de estudio que se trabajen se procurará que se incluyan criterios éticos, sociales y medioambientales. Del mismo modo, se fomentará la capacidad de ajustarlos para adaptarse a incidencias en el proceso de desarrollo y cambios de especificaciones.

Nota: se reservarán 15 minutos de una clase dentro del calendario establecido por el centro o por la titulación para que el alumnado rellene las encuestas de evaluación de la actuación del profesorado y de evaluación de la asignatura o módulo.

Actividades

Título Horas ECTS Resultados de aprendizaje
Tipo: Dirigidas      
Problemas: Propuestas y discusiones de soluciones de problemas 12 0,48 2, 3, 4, 5
Prácticas: Desarrollo de un proyecto de asignatura 12 0,48 2, 3, 4, 5
Teoría: Asistencia y participación en clases de teoría 22 0,88 1, 2, 4, 5
Tipo: Supervisadas      
Prácticas: Seguimiento del trabajo del proyecto de asignatura 6 0,24 2, 3, 4, 5
Tutorización: Resolución de problemas adicionales 6 0,24 1, 2, 3, 5
Tipo: Autónomas      
Problemas: Resolución de problemas y elaboración de informes 24 0,96 1, 2, 3, 4, 5
Prácticas: Desarrollo del proyecto y elaboración de informes 12 0,48 1, 2, 3, 4, 5
Teoría: Estudio 26 1,04 2, 5

Evaluación

a) Proceso y actividades de evaluación programadas

La evaluación es continua con actividades específicas (exámenes y trabajos) a lo largo del curso. Estas actividades de evaluación generan una serie de notas que determinan la nota final.

El cálculo de la nota final, n, sigue la siguiente expresión:

n = máx( x·50% + c·25% + p·25%, x·75% + p·25%)

donde x es la nota del examen, c, la de la evaluación continuada, y p, la del proyecto.

La nota final será, como máximo, un 4,5 si x o p <5. En otras palabras, debe aprobarse el examen y el proyecto por separado.

Hay que tener en cuenta que, si la nota de la evaluación continuada no mejora la nota final, no se tiene en cuenta para su cálculo. Por eso, la nota final es la máxima entre las notas con y sin evaluación continuada.

La nota del examen (x) es la nota del examen final, que se podrá recuperar en un segundo examen.

La nota de la evaluación continuada (c) se obtiene de una media ponderada de las pruebas de evaluación continuada que se hagan a lo largo del curso. Se prevé que se hagan tres.

La nota del proyecto (p) será el resultado de una media ponderada de todas las entregas de seguimiento y de la entrega y defensa final.

b) Programación de las actividades de evaluación

Las fechas de las pruebas de evaluación continua, de la defensa del proyectoy de los plazos de las entregas se publicarán en el campus virtual (CV) y pueden estar sujetos a posibles cambios de programación por motivos de adaptación aposibles incidencias: siempre se informará previamente a través del CV ya que se entiende que es el mecanismo habitual de intercambio de información entre profesorado y estudiantes fuera del aula.

c) Proceso de recuperación

Las entregas fuera de plazo, siempre que haya previo aviso, serán aceptados y penalizados con una nota más baja. En ningún caso se admitirán entregas fuera de plazo sin previo aviso o justificación de fuerza mayor. Se podrá abrir un segundo plazo de entrega por los informes que reciban una evaluación negativa. Los trabajos no entregados recibirán una nota de 0 y no tendrán opción a una segunda evaluación.

De acuerdo con la coordinación del Grado y la dirección de la Escuela de Ingeniería las siguientes actividades no se podrán recuperar en el examen final:

- Proyecto, 25% de la calificación final

La evaluación continuada se puede recuperar con el examen final.

El examen final se puede recuperar con un segundo examen.

d) Procedimiento de revisión de las calificaciones

Las revisiones se podrán hacer en cualquier momento después de la publicación de las notas y antes del final del plazo de revisión del examen final.

Si, como resultado de una revisión, se acuerda el cambio de una nota, la nueva nota no se podrá modificar en una revisión posterior.

Una vez pasado el plazo de revisión del examen final, solo se harán revisiones del examen de recuperación.

e) Calificaciones

La calificación de “no evaluable” solo se otorgará a las personas que no realicen ninguna actividad evaluable. La participación en cualquier actividad evaluable implica que el resto de actividades que no se realicen se computen como 0 en el cálculo de la nota final.

Las matrículas de honor se concederán a quienes obtengan una nota superior o igual a 9,0 en cada parte, hasta el 5% de los matriculados según orden descendente de nota final. A criterio del profesorado, también se podrán conceder en otros casos, siempre que no se exceda del 5% y la nota final sea igual o superior a 9,0.

f) Irregularidades, copia y plagio

Las copias se refieren a las evidencias de que el trabajo o el examen se ha hecho en parte o totalmente sin contribución intelectual del autor. En esta definición se incluyen también las tentativas probadas de copia en exámenes y entregas de trabajos y las violaciones de las normas que aseguran la autoría intelectual. Los plagios hacen referencia a los trabajos y textos de otros autores que se hacen pasar como propios. Son un delito contra la propiedad intelectual. Para evitar incurrir en plagio, hay que citar las fuentes que utiliza a la hora de escribir el informe de un trabajo.

De acuerdo con la normativa de la UAB, tanto copias como plagios o cualquier intento de alterar el resultado de la evaluación, propia o ajena -dejando copiar, por ejemplo, implican una nota final de la parte correspondiente (examen, evaluación continuada o proyecto) de 0, a efectos de calcular un valor cuantitativo de la nota, y suspender la asignatura, sin que ello limite el derecho a emprender acciones en contra de quienes hayan participado en estos actos, tanto en el ámbito académico como en el penal.

g)Evaluación de estudiantes que repiten

No hay ningún tratamiento diferenciado para alumnos que repitan la asignatura, pero pueden aprovechar material propio del curso anterior siempre que lo indiquen así en los informes correspondientes.

Actividades de evaluación

Título Peso Horas ECTS Resultados de aprendizaje
Defensa del proyecto 12,5% 10 0,4 2, 3, 4
Examen de recuperación 50% 2 0,08 1, 2, 5
Examen final 50% 2 0,08 1, 2, 5
Informes de trabajos de prácticas (5) 12,5% 10 0,4 2, 3, 4
Pruebas de evaluación continuada (3) 25% 6 0,24 1, 2, 5

Bibliografía

Ll. Ribas Xirgo. (2014). How to code finite state machines (FSMs) in C. A systematic approach. TR01.102791 Embedded Systems. Universitat Autònoma de Barcelona. [https://www.researchgate.net/publication/273636602_How_to_code_finite_state_machines_FSMs_in_C_A_systematic_approach]
Explica un método de programación de máquinas de estado en C que es muy similar al que se ve en la asignatura.

Ll. Ribas Xirgo. (2011). “Estructura bàsica d’un computador”, Capítulo 5 de Montse Peiron Guàrdia, Lluís Ribas i Xirgo, Fermín Sánchez Carracedo y A. Josep Velasco González: Fonaments de computadors. Material docent de la UOC. OpenCourseWare de la UOC. [http://openaccess.uoc.edu/webapps/o2/handle/10609/12901]
Trata del modelo de máquinas de estado, de las máquinas algorítmicas y de las arquitecturas básicas de los sistemas digitales, que coinciden con los temas correspondientes en la asignatura.

Edward A. Lee and Sanjit A. Seshia. (2017) Introduction to Embedded Systems, A Cyber-Physical Systems Approach, Second Edition, MIT Press.
Un curso con contenidos similares, desde una perspectiva más formal. Ver también: https://ptolemy.berkeley.edu/

M. J. Pont. (2005). Embedded C. Pearson Education Ltd.: Essex, England.
Trata de cómo programar sistemas embebidos, tema que coincide con lo que se trata en la parte de problemas y prácticas de la asignatura. Por lo tanto, es un material complementario muy interesante.    

Brian Bailey, Grant Martin and Andrew Piziali. (2007). ESL Design and Verification. A Prescription for Electronic System-Level Methodology. Elsevier.
Hace un repaso de todo el proceso de síntesis de sistemas embebidos y pone en contexto el material de la asignatura. Por lo tanto, es un buen material complementario.

Tim Wilmshurst. (2010). Designing Embedded Systems with PIC Microcontrollers. Principles and Applications (Second Edition). Elsevier.
Información complementaria a la de la asignatura, que presenta un posible sistema embebido para el control de un robot.

Oliver H. Bailey. (2005). Embedded Systems Desktop Integration. Wordware Publishing.
Información complementaria a la de la asignatura que incide, sobre todo, en el aspecto de la comunicación entre el hardware y el software.

Software

CoppeliaSim, EDU Version, Coppelia Robotics [https://www.coppeliarobotics.com/]

ZeroBrane Studio, ZeroBrane [https://studio.zerobrane.com/]

Draw.io, diagrams.net [https://app.diagrams.net/]