CARÁCTER: Obligatoria
MODALIDAD: A distancia
ENFOQUE: Teórico/Práctico a nivel de análisis y diseño básico
DESCRIPCIÓN
Los subsistemas electrónicos de un entorno inteligente requieren, entre otras funcionalidades, ciertas capacidades de comunicación para interaccionar con otros elementos del sistema. Incorporar un sistema operativo con una cierta capacidad de gestión de la multitarea ofrece un soporte importante para la implementación de los componentes del firmware que dan esta funcionalidad, ya que el diseño de la aplicación alrededor de un sistema multitarea proporciona mayor independencia o desacoplo entre sus componentes y mejora la escalabilidad de la misma. Los sistemas operativos de tiempo real (RTOS) han sido tradicionalmente empleados para proporcionar un entorno multitarea en plataformas de computación con recursos limitados, y su integración en el firmware de los dispositivos IoT basados en microcontroladores es cada vez más habitual. Las espectativas creadas por la IoT han espoleado la competencia entre los diferentes desarrolladores, dando lugar a un nutrido ecosistema de alternativas disponibles (como por ejemplo FreeRTOS, NuttX, ucOS-II, ContikiOS, mbedOS, KeilRTX, Zephyr o RiotOS, por citar algunos).
Esta asignatura sirve de continuación a la asignatura "Sistemas empotrados basados en microcontroladores", abordando el estudio de los sistermas operativos de tiempo real y su utilización para implementar aplicaciones complejas en dichas plataformas. En ella se muestra una visión global del funcionamiento de los RTOS y de los conceptos relacionados con la gestión de tareas, así como de los mecanismos de los que disponen para permitir la interacción eficiente de unas tareas con otras y con las interrupciones que tratan eventos asociados a los periféricos del microcontrolador. Dentro de las diversas alternativas que existen, la asignatura se centra en FreeRTOS, un sistema operativo de tiempo real de código abierto, multiplataforma y disponible para numerosas arquitecturas, que ha sido clasificado como uno de los RTOS más utilizados en estudios de mercado realizado por la revista especializada EETimes en los últimos años.
Como plataforma de desarrollo se continuará utilizando el microcontrolador CC3200, con arquitectura ARM Cortex M4 y conectividad WiFi, que se introdujo en la asignatura precedente.
En la asignatura se realizarán diversos ejercicios prácticos y al finalizar la misma se deberá completar un pequeño proyecto que permita al usuario interaccionar con el microcontrolador a través de la conexión inalámbrica y controlar desde un PC de escritorio sus salidas GPIO y PWM, así como muestrear señales de entrada analógicas y visualizar sus valores en el interfaz gráfico. Para posibilitar el desarrollo del interfaz gráfico de usuario se realizará una introducción rápida al entorno y bibliotecas Qt, una herramienta de desarrollo de código abierto y uso libre que permite la creación de aplicaciones portables a diferentes entornos de escritorio como Windows, Linux y MacOs utilizando C++.
Ver ficha oficial de la asignatura y programación docente
PROFESORES