Está en la página 1de 47

Sistemas de Tiempo Real

Universidad Nacional de La Rioja


Ing. Ricardo F. Maldonado (prof. Asociado - transitorio)

2023

“1983-2023 40 años de democracia”


Sistemas de Tiempo Real

Ingeniería Mecatrónica
Martes 20:00 a 22:00
https://meet.google.com/qbd-rvjd-wqx

https://t.me/Tiempo_Real_UNLaR

22/04/23 Ing. Ricardo F. Maldonado 2


Unidad N.º 1

Introducción a los Sistemas de Tiempo Real


Sistema Reactivo. Sistema Dedicado. Definición de Sistemas de Tiempo
Real. Tiempo límite deadline. Tareas aperódicas-asíncronas. tareas
periódicas síncronas. La concepción de puntualidad. Tiempo de
respuesta. Concepto de estricticidad en STRs. Concepto de profundidad
en STRs. Concepción de Concurrencia. Característica especiales de las
Unidades de Procesamiento. Tipos de datos. Interacción con el medio.
Modalidad de ejecución. Relación de dimensión y complejidad.
Características en los requerimientos.

22/04/23 Ing. Ricardo F. Maldonado 3


Definiciones

22/04/23 Ing. Ricardo F. Maldonado 4


Definiciones:


Definición: Un sistema es un mapeo de un conjunto de entradas en un
conjunto de salidas.

Definición: El tiempo de respuesta es el tiempo que transcurre entre el
instante que las entradas a un sistema (estímulo) está estable y hasta la
realización completa de la tarea requerida (respuesta) de todas las salidas
asociadas.

Definición: Un sistema en tiempo real es un sistema que debe satisfacer
restricciones de tiempo de respuesta explícitas (limitadas).

Definición: Un sistema fallido es un sistema que no puede satisfacer uno o
más de los requisitos estipulados en la especificación formal del sistema..

22/04/23 Ing. Ricardo F. Maldonado 5


Definiciones:


Definición: Un sistema en tiempo real es aquel cuya corrección lógica se
basa tanto en la corrección de las salidas como en su puntualidad.

Definición: Un STR suave es aquel en el que el rendimiento se degrada pero
no se destruye por no cumplir con las restricciones de tiempo de respuesta.

Definición: Un STR duro es aquel en el que el incumplimiento de un único
plazo puede provocar un fallo total y catastrófico del sistema.

Definición: Un STR firme es aquel en el que algunos plazos incumplidos no
conducirán a una falla total, pero la inobservancia de más de unos pocos
puede conducir a una falla total y catastrófica del sistema.

22/04/23 Ing. Ricardo F. Maldonado 6


Definiciones:


Definición: evento, es todo aquello que saque al contador del programa de su
secuencia natural y cambie el flujo de control.

Definición: El tiempo de liberación es el tiempo entre que una tarea detiene
su ejecución y el sistema se encuentra listo para sustituirla por otra.

Definición: Un sistema es determinista si, para cada estado posible y cada
conjunto de entradas, se puede predecir un conjunto único de salidas.

Definición: la utilización (CPU) o factor de carga es el tiempo en que un
dispositivo se encuentra realizando cálculo útil. Suele estar dada en
porcentaje de un tiempo referido.

22/04/23 Ing. Ricardo F. Maldonado 7


Consideraciones Generales (Mg. G. Friedrich)


Los STR deben responder a eventos externos, asegurando un tiempo
máximo de respuesta determinado.

La secuencia de ejecución no sólo está determinada por decisiones del
sistema, sino también por eventos que ocurren en el mundo real.

Habitualmente requieren interfaces con una gran cantidad de sensores
y actuadores.

Generalmente son complejos.

Deben ser muy confiables. Su respuesta debe ser controlada, incluso
en condiciones de sobrecarga.

No pueden “volver atrás” y reiniciar desde un contexto preexistente.

22/04/23 Ing. Ricardo F. Maldonado 8


Consideraciones Generales (Mg. G. Friedrich)

Los requerimientos del medio ambiente por lo general son en paralelo,
provocando problemas de planificación y prioridades.

Las restricciones de tiempo hacen que la demostración de correctitud funcional
no alcance para garantizar su desempeño en condiciones reales.

Debe poder recuperarse ante condiciones de excepción.

- Un Sistema de Tiempo Real debe:
– → ejecutar las tareas que tiene asignadas
– → respetando las metas temporales de c/u de ellas.

Es decir: en un STR no solamente es importante que las tareas se realicen, sino
que también deben cumplirse en los plazos de tiempo previstos.

22/04/23 Ing. Ricardo F. Maldonado 9


Consideraciones Generales (Mg. G. Friedrich)


Un STR interactúa con su entorno
– → recibe información (eventos) del medio ambiente
– → realiza acciones para producir cambios en dicho entorno.
– → En estos casos se los denomina sistemas REACTIVOS, ya que
reaccionan ante estímulos del medio ambiente.

Un STR maneja
– → varias estrategias para cumplir con las metas temporales (predecir).
– ⇒ planificación (scheduling)

Un STR debe ser PREDECIBLE en el tiempo

22/04/23 Ing. Ricardo F. Maldonado 10


Clasificación de STRs (Mg. G. Friedrich)
Según las restricciones temporales

Sistemas de tiempo real duro (hard real-time)
– Los límites de tiempo son estrictos
– El no cumplimiento puede tener consecuencias graves
– Puede ser preferible un resultado incorrecto pero terminado a tiempo

Sistemas de tiempo real blando (soft real-time)
– Los límites de tiempo son flexibles.

Sistemas de tiempo real firme (firm real-time)
– pueden tolerar pérdidas, si la probabilidad de ocurrencia de las
mismas es baja.
22/04/23 Ing. Ricardo F. Maldonado 11
Planificación de Tareas
en Sistemas de Tiempo Real

22/04/23 Ing. Ricardo F. Maldonado 12


Clasificación de STRs (Mg. G. Friedrich)

Según la estrategia de planificación de las tareas


• Sistemas estáticos: Todas las tareas, su naturaleza y características
son conocidas de antemano y la ejecución de las mismas se planifica en
en tiempo de diseño. - aparición de una nueva tarea y bajo costo de
ejecución.-
• Sistemas dinámicos (o adaptivos) : las tareas se conocen de
antemano y ante la aparición de una nueva, el sistema garantiza sin
afectar a las anteriores su ejecución. Debe existir una lista de tareas.-
mayor costo de ejecución (análisis adicional)-

22/04/23 Ing. Ricardo F. Maldonado 13


Observaciones

Los recursos (tiempo) son limitados

El sistema digital debe “reaccionar a tiempo” ante los cambios en el
sistema que actúa

Una acción retrasada puede ser inútil o peligrosa

Los dispositivos de entrada y salida son particulares para cada
sistema y deben ser adaptados con precisión

ElEldesarrollo
desarrollodedesoftware
softwarepara
parasistemas
sistemasembebidos
embebidos
tiene requisitos propios que deberán extenderse
tiene requisitos propios que deberán extenderse
sisison
sonrequisitos
requisitosde
detiempo
tiemporeal
real

22/04/23 Ing. Ricardo F. Maldonado 14


Lenguaje de programación

Para programa un STR el lenguaje debe facilitar el trabajo con
– tareas concurrentes
– manejo de excepciones – fiable
– binarios analizables desde lo temporal

Lenguajes de interés para STR:
– Secuenciales (Fortran, Pascal, C, C++).

necesitan un SO para concurrencia y tiempo real.
– Concurrentes (Modula-2, Ada, Java,...)

Concurrencia y tiempo real incluidos en el lenguaje
lenguaje
22/04/23 Ing. Ricardo F. Maldonado 15
Lenguaje de programación C

Es un lenguaje muy utilizado
– Fiable → depende del programador
– Eficiente → cercano al bajo nivel
– Estructurado → seguimiento del flijo
– Poco legible → comentarios

No tiene integrada la concurrencia ni el tiempo real
– Se consigue invocando servicios del sistema operativo
– No tiene programación orientada a objetos como C++

22/04/23 Ing. Ricardo F. Maldonado 16


Lenguaje de programación ada

Es un lenguaje lenguaje diseñado específicamente para STR
empotrados.
– soporta concurrencia y tiempo real.
– acceso al hardware e interrupciones.
– estructurado y fuertemente tipado.

Diseñado para sistemas grandes y cambiantes.
– Paquetes (modulos) y esquemas genéricos
– Extensión de tipos con herencia
– Biblioteca jerárquica
22/04/23 Ing. Ricardo F. Maldonado 17
Sistemas Operativos

Convencionales no son adecuados para STRs
– No tienen un comportamiento determinista.
– No garantizan los tiempos de respuesta.

De Tiempo Real (RTOS) soportan
– Concurrencia de procesos o procesos ligeros (threads)
– Temporización: medida de tiempos y ejecución periódica.
– Planificación determinista
– Dispositivos de E/S (acceso a recursos)
– Gestión de Interrupciones
22/04/23 Ing. Ricardo F. Maldonado 18
Tiempos a tener en cuenta (Mg. G. Friedrich)


Tiempo Límite (deadline): instante tope para finalizar la ejecución
del último requerimiento de una tarea. Si la tarea es periódica, es el
instante en el cual llegará el próximo requerimiento.

1 1 1 Tarea aperiódica

1 2 3 4 Tarea periódica

tiempo

22/04/23 Ing. Ricardo F. Maldonado 19


Tiempos a tener en cuenta (Mg. G. Friedrich)


Tiempo de respuesta: es el tiempo entre el instante en que una
tarea es requerida y el la tarea puede ser completada.

16 seg

2,36 seg

tiempo

22/04/23 Ing. Ricardo F. Maldonado 20


Tiempos a tener en cuenta(Mg. G. Friedrich)


Instante crítico: es aquel en el cual la tarea es requerida y a partir
del cual la tarea tendrá su mayor tiempo de respuesta.

El teorema de Liu y Layland, se da un instante crítico para una
tarea cuando la misma es requerida simultáneamente con todas
las de mayor prioridad.
Mayor ’t respuesta

tiempo
22/04/23 Ing. Ricardo F. Maldonado 21
Tiempos a tener en cuenta.

Zona crítica: tiempo entre un instante crítico y el tiempo
disponible para la finalización de la tarea.

20 seg

5,4 seg

tiempo

22/04/23 Ing. Ricardo F. Maldonado 22


Planificación de tareas

Es necesario determinar con precisión (posible):
– las tareas a realizar → independientes
– el tiempo de ejecución
– el tiempo disponible para realizarla

El sistema debe:
– garantizar los plazos determinados
– usar un algoritmo para el uso de los recursos
– predecir con certeza ambas

22/04/23 Ing. Ricardo F. Maldonado 23


Planificación de tareas

N : Número de tareas.

Ci : Tiempo máximo de ejecución de la tarea i → t’ de ejecución

Di : Plazo de finalización (“deadline”) de la tarea i →’t límite

Ri : Tiempo de respuesta (máximo) de la tarea i. →zona crítica

Di
Ri
t
Di = t

22/04/23 Ing. Ricardo F. Maldonado 24


Sistema planificable

Si STR tiene N tareas a realizar; se analiza teniendo un
requerimiento simultaneo de todas ellas - el caso mas
desfavorable -

Se dice que el sistema tiene una planificación factible y ante
cualquier otra condición de requerimientos, la planificación
también será factible.
N
D i ≥∑ C i
1

22/04/23 Ing. Ricardo F. Maldonado 25


Sistemas de Tiempo Real

Transferencia
Entrada Salida
Black
Blackbox
box

Alguna
magnitud
tiempo

22/04/23 Ing. Ricardo F. Maldonado 26


Homework

En una pava eléctrica, coloque 1 litro de agua. Tome su temperatura


(con el multitester) a la que debe considerar como temperatura inicial.
Luego encienda la resistencia para que el agua comience a calentarse.
Considere al instante de encendido como tiempo inicial.
Registre los valores de temperatura cada un tiempo fijo (< 10 seg.)
Reitere esta experiencia al menos 4 veces mas con t° iniciales diferentes
y grafique cada uno de esos valores en un mismo sistema de eje.

22/04/23 Ing. Ricardo F. Maldonado 27


Taxonomía de sistemas
Lineales sistemas No Lineales

Dinámicos Estáticos

Causales No causales

Variantes en Invariantes
el dominio en el dominio

Deterministas Estocásticos

22/04/23 Ing. Ricardo F. Maldonado 28


Sistemas Lineales

Sistema lineales.
– Se expresan mediante ecuaciones lineales f ( α x+ β y )= α f ( x )+ β f ( y )
– Cumplen con el principio de superposición

y=H (u) y 1=H (u1 ) y 2=H (u2 )


u2
S H y1 + y2 b H b y1
u1 u1
y 1 + y 2 =H (u1 +u2 ) β y 1 =H (β u 1 )

22/04/23 Ing. Ricardo F. Maldonado 29


Operaciones Lineales

Las operaciones que cumplen la homogeneidad y superposición

d α x (t) dx (t ) d [ x (t)+ y (t )] dx (t) dy (t)


=α = +
dt dt dt dt dt
b b b b b

∫ α x (t )dt =α ∫ x (t) dt ∫ [ x (t )+ y (t)] dt=∫ x (t ) dt +∫ y (t ) dt


a a a a a

∞ ∞ ∞ ∞ ∞

∫ α x (t )e
st
dt =α ∫ x (t) dt ∫ [ x (t )+ y (t)] dt=∫ x (t ) dt +∫ y (t ) dt
0 0 0 0 0

22/04/23 Ing. Ricardo F. Maldonado 30


Sistemas Dinámicos


Sistema estático. Cuando su salida
depende de la entrada. Su salida
permanecerá constante si la entrada no
cambia y cambiará solo cuando su entrada
cambia.

Sistema dinámico Cuando su salida
depende de una entrada actual y el estado.
La salida cambia con el tiempo cuando no
está en su estado de equilibrio.

22/04/23 Ing. Ricardo F. Maldonado 31


Causales – Invariantes - Deterministas


Sistema Causales: cuando la salida depende de entradas actuales y anteriores.

Sistemas no Causales: cuando la respuesta del sistema depende de entradas
posteriores

Sistemas variantes en el dominio: si el dominio es el tiempo, son queuellos
cuyos parámetros que conforman el sistema cambian en el tiempo.

Sistemas invariantes en el dominio: si el dominio es el tiempo, son aquellos
cuyos parámetros que conforman el sistema no cambian en el tiempo.

Sistemas deterministas: Cuyos resultados pueden ser predichos con antelación
a partir de una entrada dada.

Sistemas estocásticos: son aquellos cuyos resultados no pueden ser predichos
para una entrada determinada

22/04/23 Ing. Ricardo F. Maldonado 32


Modelado – función de transferencia

t

RC
Q(t )=C V b (1−e )

Q(t )
f TRANSF =
Vb

t

RC
f TRANS =C (1−e )

22/04/23 Ing. Ricardo F. Maldonado 33


Esquemáticamente

r(t) u(t) c(t)


Planta Salida
Entrada
Entrada(T°)
(T°) Controlador
Controlador
Control
Control Planta Salida(T°)
(T°)
(acción en relay) (tiempo real)
(tiempo (acción en relay) (tiempo real)
(tiemporeal)
real)

22/04/23 Ing. Ricardo F. Maldonado 34


Diagramas de bloques

Un sistema lineal puede ser esquematizado a partir de cajas que


mostrar y representan un función según cada componente que
constituye un sistema; flechas que indican una señal o variable
física. Esta puede ser combinada mediante una suma o distribuida
a partir de un punto de derivación.

Bloque:
Representar un sistema o relación
entre variables. Se lo identifica con una
letra da el valor al bloque

22/04/23 Ing. Ricardo F. Maldonado 35


Diagramas de bloques

x Señal
Representa una variables física o una
y señal. El sentido de la flecha indica la
dirección del flujo de información. Se
caracteriza con una letra minúscula.
Sumador -a
Indica el proceso de combinar
mediante una suma, a dos o mas b u
señales o variables físicas de idénticas
unidades y magnitudes similares
c

22/04/23 Ing. Ricardo F. Maldonado 36


Ejemplo - Diagramas de bloques

Realice el diagrama en bloque de un tanque con agitador continuo al
que ingresa un liquido con un F1 y sale otro F2. Mediante vapor W que
condensa en un serpentín se transfiere calor tal que el liquido que
ingresa a la t° T1 salga a T2.
T1 y W cambian y debido a esto T2
cambiará también.
La acción se debe a dos causas (entrada) y
el efecto es sobre T2 (salida) a través de un
sistema que es el tanque.

22/04/23 Ing. Ricardo F. Maldonado 37


Ejemplo - Diagramas de bloques

Salida = (Bloque1) entrada1 + (Bloque2) entrada2

t 2 =t 1 G 1 + w G 2

22/04/23 Ing. Ricardo F. Maldonado 38


Ejemplo - Diagramas de bloques

T2 es el resultado de la influencia de T1 a través


del bloque G1 combinado con la salida que se
obtiene producto de que W pase a través del
bloque G2.
G1 y G2 (en este caso el tanque con calefacción)
representan la influencia del sistema sobre la
t 2 =t 1 G 1 + w G 2 variable de salida a partir de considerar cada una
de las variables de entrada.

22/04/23 Ing. Ricardo F. Maldonado 39


Álgebra de bloques

A partir de los diagramas se puede analizar las influencias de cada una


de las funciones del sistema en el resultado y asignar un tiempo de
“cálcuo” de la salida.
Se pueden simplificar estos diagramas según tres reglas elementales:

c=G 2 b y b=G 1 a
c=G 1 G 2 a

22/04/23 Ing. Ricardo F. Maldonado 40


Álgebra de bloques

Se pueden simplificar estos diagramas según tres reglas elementales:

Obtener F

22/04/23 Ing. Ricardo F. Maldonado 41


Efectos de la realimentación

Puede incrementar o reducir la ganancia

Puede convertir un sistema en inestable y luego estabilizarlo

En la sensibilidad - M sensibilidad del sistema total

M ∂ M /M Δ M M 1
S| =
G = S| = G
∂G /G Δ G 1+GH

Reduce el efecto del ruido aditivo n
G2
y= n
1+G 1 G 2 H
22/04/23 Ing. Ricardo F. Maldonado 42
Representación de EDOL

Los mecanismos internos de sistemas (comportamiento) se describe por


ecuaciones diferenciales ordinarias lineales y se pueden representar en
Diagramas en Boques.
Se colocan a la izquierda todas las variables de entradas y a la derecha
la(s) salida(s).
dy
B = x1 + A x w + y
dx

1
y= ∫ (x 1 + A x2 − y)dt
B
22/04/23 Ing. Ricardo F. Maldonado 43
Trabajar con señales digitales

Es posible expresar un sistema o


una señal a partir de una secuencia
de valores (números).
Lo que se obtiene es una
aproximación suficiente (error
mínimo) útil para el trabajo
Un método matemático útil para
este análisis son las ecuaciones en
diferencias.

22/04/23 Ing. Ricardo F. Maldonado 44


Homework

Observar en la vida cotidiana, 3 Sistemas y su controlador



Esquematice mediante diagrama de “black box”

Identifique en cada caso, las variables físicas de la entrada y la
la salida.

Seleccione un caso e intente expresar en forma “cuantificable”
o matemáticamente; la relación entre la salida y la entrada en
cada caja o subsistemas (no hace falta que sea exacto).

22/04/23 Ing. Ricardo F. Maldonado 45


Homeworks

Programar un clock, tal que muestre por pantalla y en una misma


posición (al menos por 10 segundos); un reloj iterativo con el
siguiente formato hora:minutos:segundos

22/04/23 Ing. Ricardo F. Maldonado 46



Consultas

Comentarios

Preguntas

22/04/23 Ing. Ricardo F. Maldonado 47

También podría gustarte