Desarrollo de una herramienta en Matlab sobre un kernel multitareas para simulación de un sistema de control
Marco General (1/5) Un sistema de tiempo real es un sistema de
procesamiento de información el cual tiene que responder a
estímulos de entrada generados externamente en un
período de tiempo finito y específico Estricto
cumplimiento de tiempos, o plazos de respuesta Las tareas son la
unidad de cómputo a ser planificada y ejecutada Plazo de
respuesta definido por su aplicación Un STR maneja
variables de procesos externos (E/S) Concurrencia. El sistema
debe resolver distintos problemas a la vez (||) Un STR responde
de manera predecible a estímulos externos
impredecibles
Marco General (2/5) SISTEMAS DE CONTROL Combinación sus
componentes actúan conjuntamente para alcanzar un objetivo
particular. Objetivo es el control manual o automático de
cierta cantidad o variable física. Entrada:
Estímulo, excitación o mandato aplicado para
producir una respuesta específica del sistema. Salida:
Respuesta real del sistema. Puede coincidir o no con la respuesta
del sistema, implícita en la entrada correspondiente Tipo
de control: Lazo abierto: Control independiente de la salida y de
las variables del sistema (por ejemplo una tostadora). Lazo
cerrado: Control dependiente de la salida y/o de las variables
del sistema (por ejemplo un sistema de aire acondicionado).
Marco General (3/5) Los recientes sistemas de control son
subsistemas de un sistema complejo, donde el componente
básico de control es un microprocesador que usa un kernel
de tiempo real o un sistema operativo en timepo real.
Marco General (4/5) Las técnicas de tiempo real aún
no estan bien definidas en los sistemas de control, ya que los
microprocesadores tienen que compartir recursos y no se puede
garantizar el tiempo de ejecución de cada tarea.
Marco General (5/5) El diseño de un sistema de control en
tiempo real es esencialmente un problema de co-diseño,
debido a que las decisiones hechas en tiempo real afectan al
diseño de control y viceversa. Esta combinación de
co-diseño crea la posibilidad de desarrollar sistemas
más integrados, flexibles y dinámicos. La
integración de estos dos enfoques requiere de nuevas
herramientas para su análisis, diseño e
implementación
Antecedentes (1/2) Los sistemas de control en tiempo real son
tradicionalmente diseñados en base a dos enfoques de la
ingeniería. La teoría de control desarrolla modelos
para plantas que va a ser controladas por medio del diseño
de una ley de control y su prueba en una simulación. La
teoría de sistemas en tiempo real desarrolla un algoritmo
de control para implementar, y configurar el sistema en tiempo
real, por medio de la asignación de prioridades, fin de
plazo (deadlines), periodos, etc.
Antecedentes (2/2) SCTR de autos SCTR de plantas
eléctricas SCTR aéreos SCTR para plantas
nucleares
Definición del problema (1/2) En la mayor parte de los
casos el control es ejecutado periódicamente,
enfocándose solamente en el dominio del problema sin
preocuparse de cómo la planificación afecta al lazo
de control. la latencia de entrada y salida el periodo retardo
del tiempo de computo
Se requiere de nuevas herramientas para su análisis,
diseño, simulación e implementación. Poco
soporte para el manejo de interrupciones. Ambiente grafico del
modelo de control y limitado para el manejo de tiempos de
ejecución Manejo de sobrecarga de las tareas, donde se
cuestiona ¿Qué pasa si el control de tareas no
termina a su fin de plazo? Peor caso del tiempo de
ejecución. Definición del problema (2/2)
Trabajo Relacionado (1/2) [Liu and Layland, 1973], suponen que la
E/S es representada periódicamente por las funciones del
hardware, introduciendo retrasos en todos los lazos cerrados del
control sobre la computadora. STRESS [Audsley et al., 1994] y
DRTSS [Storch and Liu, 1996], herramientas para la
simulación de la planificación en tiempo real [Seto
et al., 1996], donde la tasa de muestreo de un conjunto de
controladores que comparten el mismo CPU, es calculada usando las
métricas de control estándar.
[Eker, 1999], prototipo de una herramienta desarrollada en
Matlab, la cual tenia poco soporte para el manejo de
interrupciones. [Palopoli et al., 2000], RTSIM simulador de
planificación en tiempo real, desarrollado en C++.
[Roberto Saco, Eduardo Pires, Carlos Godfrid, 2002], laboratorio
de control en tiempo real. [A. Cervin, 2003], donde la
teoría de control y la teoría de sistemas en tiempo
real se conjuntan para crear las herramientas TrueTime y
Jitterbug. [Raimund Kirner, Roland Lang, 2004], WCET
simulación del peorcaso, Matlab/Simulink. Trabajo
Relacionado (2/2)
Propuesta (1/2) La propuesta de esta tesis es el desarrollo de
una herramienta visual en Matlab sobre un kernel multitareas para
simular sistemas de control en tiempo real. Esta herramienta
tiene como objetivo auxiliar el desarrollo de co-diseños
de sistemas de control y planificación en tiempo
real.
Propuesta (2/2) La parte fundamental del desarrollo de la tesis
se enfoca en aprovechar las ventajas de Matlab/Simulink para
simular sistemas de control fuera del ambiente de Matlab, que
permitan un análisis más flexible del
comportamiento del algoritmo de control y su interacción
entre la planificación y el control de tareas. Funciones
de C/C++ Funciones de Matlab Diagramas de bloques de
Simulink
Objetivo General Generar una herramienta de software para simular
un sistema de control en tiempo real desarrollada en
Matlab/Simulink sobre un kernel multitareas.
Objetivos Específicos Desarrollar una conexión
entre el código de Matlab/Simulink y el kernel de tiempo
real. Simular un sistema de control en tiempo real aplicando
técnicas de planificación de tareas sobre un kernel
de tiempo real Ejecutar pruebas de desempeño en varios
procesos sobre el kernel de tiempo real, simulando problemas
relacionados con la integracion de tiempos en un sistema de
control.
Metodología (1/3) La metodología a seguir para el
desarrollo de este trabajo de tesis: Recopilación
bibliografíca de los artículos relacionados y
revisión del estado del arte. Realizar un estudio de las
características de simulación de procesos de
control y tiempo real en Simulink. Identificar herramientas para
convertir programas de MATLAB en componentes que puedan ser
usados fuera del ambiente de MATLAB. Desarrollar un prototipo
experimental con un sistema de control de lazo cerrado sobre el
kernel de tiempo real sin algoritmos de planificación y
recopilación de datos
Metodología (2/3) Realizar pruebas del prototipo con un
sistema de control en tiempo real, utilizando los algoritmos de
planificación conocidos y recopilación de datos.
Generación de la versión de prueba sobre Simulink
de la herramienta de simulación y generación de
reportes. Pruebas de la herramienta de simulación.
Metodología (3/3) Simular y analizar el peor caso del
tiempo de ejecución para el sistema de control en tiempo
real y pruebas finales. Escritura de la tesis. Generar reportes
de los resultados obtenidos para publicaciones.
Calendario Calendario (2004-2005) Periodo (Sep –Feb)
Calendario Calendario (2005) Periodo (Mar – Sep)
Resultados Esperados Del presente trabajo de tesis lo que se
pretende obtener: Generar una herramienta para simular un sistema
de control de lazo cerrado sobre un kernel de tiempo real. Esta
herramienta se podrá ejecutar sobre una máquina
virtual de Tiempo Real (kernel para DOS) con un enfoque de
programación de concurrencia, tratando el problema de
exclusión mutua, con solución mediante
semáforos. También generar reportes para publicar
en por lo menos en un foro nacional y la revista: Journal of Real
Time Systems.
Referencias [1] Johan Eker: “A Matllab Toolbox for
Real-Time and Control Systems Co-Desing”. 6ht International
Conference on Real-Time Computing Systems and Applications, Hong
Kong, P.R. China, December 1999 [2] Karl-Erik Årzen, A.
Cervin: “An Introduction to Control and Scheduling
Co-Desing” 39th IEEE Conference on Descision and Control,
Sydney, Australia, December 2000 [3] R. Kirner, R. Lang, P.
Puschner, C. Temple.: “Integrating WCET Analysis into a
Matlab/Simulink Simulation Model”. 16th IFAC Workshop on
Distributed Computer Systems, Sydney, Australia, November 2000.
[4] Anton Cervin, Dan Henriksson, Bo Lincoln.: “Jitterbug
and True Time: Analysis Tools for Real-Time Control Systems
”.2nd Workshop on Real-Time Tools, Copenhagen, Denmark,
August, 2002
Referencias [5] Roberto Saco, Eduardo Pires, Carlos
Godfrid.:”Real Time Controlled Laboratory Plant for Control
”. 32nd ASEE/IEEE Frontiers in Educantion Conference,
Boston, MA, November 2002. [6] Dan Henriksson, Karl-Erik
Årzen. : “On Dynamic Real-Time Scheduling of Model
Predictive Controllers”. 41st IEEE Conference on Decision
and Control, Las Vegas, Nevada, December 2002. [7] Anton Cervin,
Dan Henriksson, Bo Lincoln.: “Analysis and Simulation of
Controller Timing ”. IEEE Control Systems Magazine 2003.
[8] Tesis: Antón Cervin, “Integrated Control and
Real-Time Scheduling”. Department of Automatic Contorl Lund
Institute of Technology, Lund, April 2003
Referencias [9] Raimund Kirner, Roland Lang: “WCET Analysis
for system Modeled in Matlab/Simulink”. Vienna University
of Technology, Austria 2004 [10] Tesis: Oscar Miranda
Gómez: “Kernel de tiempo real para el control de
procesos”. Maestría en Ciencias – CINVESTAV
– Departamento de Ingeniería Eléctrica
– Sección de Computación. Marzo 2004.