Taller de Sistemas de Tiempo Real
Departamento de Computación
Facultad de Cs. Exactas y Naturales - Universidad Nacional de Buenos Aires
Objetivo de la materia:
Introducir a los alumnos los principales conceptos de este área de investigación. Que
comprendan los problemas existentes en el desarrollo de software para tiempo real. Que los alumnos puedan completar un proyecto de investigación/
desarrollo en el área.
Metodología de trabajo y evaluación:
El carácter del curso será primordialmente tutorial. En una primer fase se analizará material de lectura básico cubriendo los conceptos básicos del Programa incluido
a continuación. Se pondrá énfasis en la resolución de ejercicios relacionados con tales temas, algunos de los cuales serán de
entrega obligatoria.
Una vez finalizada esta fase, se encarará el desarrollo de un proyecto de desarrollo/investigación relacionado
con temas del área. La evaluación será por medio de coloquios, un exámen Prefinal y la entrega del Proyecto desarrollado.
Programa
Unidad 1. Introducción. ¿Qué son Sistemas de Tiempo Real?
Características de los Sistemas de Tiempo Real. Definiciones. Clasificaciones. Historia.
Unidad 2. Hardware para Tiempo Real
Control centralizado: características de la cpu, memorias, dispositivos de E/S (tipos de
transferencia), interfaces con dispositivos de planta. Sensores y Actuadores. Interfaces
AD/DA. Control Distribuído: sistemas Jerárquicos, sistemas distribuídos puros.
Unidad 3. Sistemas de Control y Supervisión
Sistemas de Control: Control de Secuencia, Control clásico realimentado, Control Digital
Directo. Algoritmos de control: on-off, P, I, PID. Otros tipos de control. Sistemas de
Supervisión de Procesos. Funciones de Supervisión.
Unidad 4. Software para Tiempo Real
Sistemas Operativos. Características. Tipos. Algoritmos de Planificación para Tiempo
Real: TM, MAP, MFP, otros. Administración de memoria. Comunicación y cooperación
entre tareas. Primitivas de Tiempo Real. Sistemas Distribuídos. Redes en Tiempo Real.
Lenguajes de Programación. Requerimientos de lenguajes para Tiempo Real.
Características generales de lenguajes para Tiempo Real. Algunos lenguajes de ejemplo.
Técnicas de especificación y diseño: métodos formales (Redes de Petri, Notación Z,
otros); métodos semiformales (MASCOT, DARTS, Deutsch, otros).
Proyectos:
A continuación se incluye una lista (no exhaustiva) de los posibles proyectos a desarrollar
durante el curso.
Migración de una herramienta de análisis de algoritmos de planificación del
procesador en tiempo real: En este proyecto se harán modificaciones a AgaPé-TR ,
una herramienta construida para analizar algoritmos de planificación de procesos. La
idea es portarla a entornos Unix, y proveer replicaciones independientes de las simulaciones
para mejorar el desempeño de las mismas
Inclusión de algoritmos de planificación en tiempo real a una herramienta de
supervisión de procesos industriales: En este proyecto se tomará como base el trabajo
con IGNATIUS , una herramienta para construir
sistemas de supervisión de procesos industriales. Se modificarán las rutinas de planificación
de alto nivel incluidas en dicha herramienta con el fin de incluir algoritmos de planificación
en tiempo real. Se hará análisis experimental de las soluciones propuestas.
Implementación de comunicación configurable entre una herramienta de
supervisión de procesos industriales y controladores programables: En este proyecto se tomará como base el trabajo
con IGNATIUS , una herramienta para construir
sistemas de supervisión de procesos industriales. Se modificarán las rutinas de comunicación con
controladores y PLC's, con el fin de hacerlas configurables (desde el punto de vista de
los comandos emitidos y de los protocolos empleados).
Volver