Vous êtes sur la page 1sur 38

Fany Velazquez Martnez Arely Crdenas Hernndez Daro Ixba Belli Dolores del C.

Ixba Solana
604 B Montserrat Masdefiol Suarez.

1.- Sistema de tiempo real


Un sistema de tiempo real es un sistema software cuyo correcto funcionamiento depende de los resultados producidos por el mismo y del instante de tiempo en el que se producen estos resultados. Un sistema de tiempo real blando (soft) es un sistema cuyo funcionamiento se degrada si los resultados no se producen de acuerdo con los requerimientos temporales especificados. Un sistema de tiempo real duro (hard) es un sistema cuyo funcionamiento es incorrecto si los resultados no se producen de acuerdo con la especificacin temporal.

Una respuesta a tiempo es un factor importante

en todos los sistemas embebidos, pero en algunos casos, no es necesaria una respuesta muy rpida.

Una forma de ver un sistema de tiempo real es como un sistema de estmulo / respuesta. Dado un determinado estimulo de entrada, el sistema debe producir la correspondiente salida.

Los estmulos pueden pertenecer a dos clases:


ESTIMULOS PERIODICOS ESTIMULOS APERIODICOS

Un sistema de tiempo real tiene que responder a estmulos

que ocurren en diferentes instantes de tiempo. Por lo tanto, se tiene que organizar su arquitectura para que, tan pronto como se reciba un estmulo, el control sea transferido al manejador adecuado.

Esto no es practico en programas secuenciales.


Por consiguiente, los sistemas de tiempo real se

disean como un conjunto de procesos concurrentes que cooperan entre s, con el objetivo de soportar la gestin de estos procesos, la plataforma de ejecucin para la mayora de los sistemas de tiempo real incluye un sistema operativo de tiempo real.

Las arquitecturas de aplicaciones de tiempo real son instancias

de la arquitectura conducida por eventos en la cual el estmulo, directa o indirectamente, provoca la generacin de eventos.

Este modelo sensor-sistema-actuador de un sistema de tiempo

real embebido se ilustra en la figura 15.1.

Los lenguajes de programacin desarrollados para

sistemas de tiempo real tienen que incluir facilidades para acceder al hardware del sistema, y debera ser posible predecir la duracin de operaciones particulares realizadas en estos lenguajes.

Los principales problemas de tiempo real:

No es posible especificar el instante de tiempo en el que los hilos se deberan ejecutar. La recoleccin de basura es incontrolable; pueden empezar en cualquier momento. Por lo tanto, el comportamiento temporal de los hilos es impredecible No es posible descubrir los tamaos de las colas asociadas con recursos compartidos. La implementacin de la mquina virtual de java vara de una computadora a otra, de forma que el mismo programa puede tener diferentes comportamientos temporales. El lenguaje no permite un anlisis detallado de la memoria o del procesador en tiempo de ejecucin. No hay una forma estndar de acceder al hardware del sistema.

1.1- Diseo del sistema


Parte del proceso de diseo implica decidir que capacidades del sistema tienen que implementarse en software y cuales en hardware.

Hay varias etapas intercaladas en este proceso de diseo:


Identificar los estmulos que el sistema debe procesar y las respuestas asociadas. Para cada estmulo y respuesta asociada, identificar las restricciones temporales que se aplican tanto al procesamiento del estmulo como al de la respuesta. Elegir una plataforma de ejecucin para el sistema: el hardware y el sistema operativo de tiempo real que se va a utilizar. Incorpora el procesamiento de estmulos y respuestas a varios procesos concurrentes. Para cada estmulo y respuesta, disear algoritmo clculos requeridos. para llevar a cabo los

Disear un sistema de planificacin de los procesos que asegure que dichos procesos comienzan a tiempo para cumplir sus plazos de ejecucin.

El orden de estas actividades en el proceso depende del tipo de sistema que se

est desarrollando y de los requerimientos de su proceso y plataforma.

En otros casos, la eleccin del hardware y el sistema

operativo se realiza antes de que comience el diseo del software, y se tiene que orientar el diseo segn las capacidades del hardware.
Una vez que se ha elegido: la plataforma de ejecucin para el sistema se ha diseado una arquitectura para el proceso

se ha dedicado una poltica de planificacin,


puede necesitarse comprobar que el sistema satisface sus

requerimientos temporales.
Este anlisis puede revelar que el sistema no funcionar de

forma adecuada.

1.1.1MODELADO DE SISTEMAS DE TIEMPO REAL


Los sistemas de tiempo real deben responder a eventos que tienen lugar a intervalos irregulares. Estos eventos (o estmulos) a menudo hacen que el sistema cambie a un estado diferente. Por esta razn, el modelado de mquina de estados, se utiliza a menudo para modelar sistemas de tiempo real.

Los modelos de mquina de estado son una buena aproximacin independiente del lenguaje de representar el diseo de un sistemas de tiempo real y, por lo tanto, son una parte integral de los mtodos de diseo de sistemas de tiempo real (Gomaa, 1993).

Un modelo de estados de un sistema supone que, en cualquier momento, el sistema est en uno o varios estados posibles. Cuando se recibe un estmulo, este puede producir una transicin a un estado diferente. Por ejemplo, un sistema que controla una vlvula puede pasar desde un estado <<Vlvula abierta>> a un estado <<Vlvula cerrada>> cuando se recibe una orden (el estmulo) del operador.

1.2.- SISTEMAS OPERATIVOS DE TIEMPO REAL


Todos los sistemas de tiempo real, incluso hasta los

sistemas embebidos ms sencillos, trabajan hoy en da conjuntamente con un sistema operativo de tiempo real (RTOS).
Un sistema operativo de tiempo real gestiona los

procesos y asignacin de recursos en un sistema de tiempo real.

Los componentes de un RTOS (fig. 15.4) dependen del tamao y

complejidad del sistema de tiempo real que se est desarrollando. Normalmente, exceptuando los sistemas ms sencillos, todos incluyen:

Los RTOS real para sistemas grandes, tales

como control de procesos o sistemas de telecomunicaciones, pueden tener facilidades adicionales, tales como gestin de almacenamiento en disco y gestin de fallos, que detectan e informan de fallos al sistema y un gestor de configuraciones que soporta la reconfiguracin dinmica de aplicaciones de tiempo real.

1.2.1.- Gestin de procesos


El gestor de procesos en un RTOS es responsable de elegir los procesos

para su ejecucin, asignar el procesador y recursos de memoria, e iniciar y detener la ejecucin de un proceso sobre un procesador.
El gestor de procesos tiene que gestionar procesos con diferentes

prioridades. Como consecuencia, los RTOS tienen que ser capaces de gestionar al menos dos niveles de prioridad para el proceso del sistema:
1. nivel de interrupcin. Es el nivel de prioridad ms alto. Se asigna a

procesos que necesitan una respuesta muy rpida. Uno de estos procesos ser el proceso del reloj de tiempo real. 2. nivel de reloj. Este nivel de prioridad se asigna a los procesos peridicos.

Las acciones llevadas a cabo por el sistema operativo para la gestin de procesos peridicos se muestran en la figura 15.5.

En cualquier momento, pueden existir varios procesos, con diferentes prioridades, que podran ejecutarse. Hay dos estrategias fundamentales: 1: planificador sin remplazo. 2: planificacin con remplazo.

Dentro de las estrategias, se han desarrollado diferentes

algoritmos de planificacin.

Estos comprenden la planificacin denominada round-

robn, en donde cada proceso se ejecuta por turnos.


La

planificacin de frecuencia montona(rate monotonic), en donde se le da prioridad al procesos con el periodo ms corto, y la estrategia de planificacin consiste en ejecutar primero el proceso con plazo de tiempo ms corto (Burns y Welligs,2001).

Los sistemas de monitorizacin realizan una accin cuando se detecta algn valor excepcional del sensor.

Los sistemas de control continuamente los actuadores hardware dependiendo del valor de los sensores asociados.

Los sistemas de monitorizacin y control son una clase importante de sistemas de tiempo real. Estos comprueban los sensores que proporcionan informacin sobre el entorno del sistema y llevan a cabo acciones dependiendo de la lectura del sensor.

1.3.- SISTEMAS DE MONITORIZACIN Y CONTROL

Las caractersticas de los sistemas de monitorizacin y control se muestran en la figura 15.6.

Aqu tambin se ha mostrado otros dos procesos que puede incluirse en

sistemas de monitorizacin y control. Estos son: un proceso de pruebas que puede ejecutar programas de test del hardware y un proceso de panel de control que gestiona los paneles de control del sistema o la consola de operador.

Para ilustrar el diseo de los sistemas de monitorizacin y control, se utiliza un

ejemplo de un sistema de alarma antirrobo que podra instalarse en un edificio de oficinas:

Se tiene que implementar un sistema software para controlar un sistema de alarma antirrobo para su instalacin en edificios comerciales. Este utiliza varios tipos de sensores, que comprenden detectores de movimiento en estancias individuales, sensores en las ventanas de la planta baja que detectan la apertura de estas. El sistema se compone de 50 sensores en las ventanas, 30 sensores en las puertas y 200 detectores de movimiento. Cuando un sensor detecta la presencia de un intruso, el sistema automticamente realiza una llamada a la polica local y, utilizando un sintetizador de voz, informa de la localizacin de la alarma. Enciende las luces en las estancias alrededor del sensor activo y activa una alarma sonora. El sistema de sensores normalmente utiliza el suministro elctrico general, pero adems esta equipado con una batera de apoyo. La perdida de energa independientemente que monitoriza los principales voltajes. Este interrumpe el sistema de alarma cuando se detecta una cada de voltaje.

Este sistema es un sistema de tiempo real <<blando>> que

no tiene requerimientos temporales estrictos. Los sensores no necesitan detectar eventos a altas velocidades; solamente necesitan ser consultados dos veces por segundo. Para hacer que el ejemplo sea ms fcil de entender, se ha simplificado el diseo dejando de lado los procesos de prueba y visualizacin. El proceso de diseo sigue los pasos indicados en la seccin 15.1 por lo que se comienza identificando los estmulos aperidicos que recibe el sistema y sus respuestas asociadas.

Debido a las simplificaciones en el diseo propuesto, pueden ser por alto los estmulos generados por los procedimientos de prueba del sistema y las seales externas para desactivarlo en el caso de un evento de falsa alarma. Esto significa que solamente hay que procesar dos tipo de estmulos: Fallo en el suministro elctrico: este se genera por el monitor del circuito. La respuesta requerida es activar el circuito de la batera de apoyo enviando seales a un interruptor electrnico de la batera.

Alarma contra intrusos. Este es un estmulo generado por uno de los sensores del sistema. La respuesta a este estmulo es calcular el nmero de la estancia del sensor activo, realizar una llamada a la polica, iniciar el sintetizador de voz para efectuar la llamada, y activar la alarma sonora para intrusos y las luces del edificio en el rea.

En la figura 15.8, las flechas etiquetadas unen procesos, indicando los

flujos de datos entre ellos, mientras que la etiqueta indica el tipo de flujo de datos. No todos los procesos reciben datos de otros procesos. Por ejemplo, el proceso responsable de gestionar un fallo en el suministro elctrico no necesita de ningn proceso del sistema.

El paso final en el proceso de diseo es el diseo de un sistema de planificacin que asegure que un proceso siempre ser planificado para cumplir con sus plazos de tiempo.
En este ejemplo, los plazos de tiempo no son ajustados.
El sistema de alarma antirrobo es un sistema de monitorizacin en vez de un

sistema de control, puesto que no incluye actuadores que se van directamente afectados para los valores del sensor.

Un ejemplo de un sistema de control podra ser un sistema de control de la

calefaccin de un edificio. Este sistema monitoriza los sensores de temperatura en diferentes estancias del edificio y apaga y enciende una unidad de calefaccin dependiendo de la temperatura actual y de la temperatura fijada en el termostato de dicha estancia.

1.4 SISTEMAS DE ADQUISICIN DE DATOS


Los sistemas de adquisicin de datos recogen datos

de sensores para su posterior procesamiento y anlisis.


Estos sistemas se utilizan en circunstancias en las

que los sensores han recogido grandes cantidades de datos del entorno del sistema y no es necesario procesar los datos recopilados en tiempo real.

Los

sistemas de adquisicin de datos se usan normalmente en experimentos cientficos y sistemas de control de procesos en los que los procesos fsicos, tales como una reaccin qumica, ocurren muy rpidamente.

En los sistemas de adquisicin de datos, los sensores

pueden estar generando datos muy rpidamente, y el problema principal es asegurar que una lectura del sensor es recogida antes de que cambie el sensor.
Esto da lugar a una arquitectura genrica tal y como se

muestra en la figura 15.11. La caracterstica fundamental de la arquitectura de los sistemas de adquisicin de datos es que cada grupo de sensores tiene tres procesos asociados:

El proceso del sensor que interacta con el sensor y

convierte datos analgicos a valores digitales si es necesario. Un proceso bfer. Un proceso que consume los datos y realiza un procesamiento adicional.

Como ejemplo de un sistema de adquisicin de datos, considere el

modelo de sistema mostrado en la figura 15.12.

Este representa un sistema que recoge datos desde sensores que

monitorizan el flujo de neutrones en un reactor nuclear. Los datos del sensor se colocan en un bfer a partir del cual se extraen y procesan, y el nivel promedio del flujo se visualiza en una pantalla del operador.

Cada sensor tiene un proceso asociado que convierte la entrada

analgica del nivel de flujo en una seal digital. Dicho proceso enva este nivel de flujo, con el identificador del sensor, al bfer de datos del sensor. El proceso responsable del procesamiento de los datos toma los datos del bfer, los procesos y los enva a un proceso de visualizacin para mostrarlos en una consola del operador.

En sistemas de tiempo real que implica la adquisicin y

procesamiento de datos, las velocidades y periodos del proceso de adquisicin (el productor) y el proceso de procesamiento (el consumidor) puede no estar sincronizado.
Cuando se requiere un procesamiento significativo, la

adquisicin de datos puede ser ms rpida que el procesamiento de los datos.


Si solamente es necesario realizar clculos sencillos, el

procesamiento puede ser ms rpido que la adquisicin de los datos.

Para

suavizar estas diferencias de velocidad, los sistemas de adquisicin de datos que almacenan los datos de entrada utilizando un bfer circular.

El proceso que produce los datos (el productor) aade informacin a

este bfer, y el proceso que usa los datos (el consumidor) coge la informacin del bfer (Figura 15.13).

Obviamente, se debe implementar la exclusin mutua para impedir que

los procesos productor y consumidor accedan al mismo elemento del bfer al mismo tiempo.

Caractersticas

RESPONSIVIDAD EN LOS STR:


USUARIOS CONTROLADORES CONFIABILIDAD

TOLERANCIA A FALLOS

Los Un sistema sistema de operativo tiempo real es un tiempo sistema de software sistemas de adquisicin de datos se Un de real es Un Los modelo sistemas general de monitorizacin para la arquitectura y control de El diseo arquitectnico de un sistema de que debe responder a eventos en tiempo real. Su organizan normalmente segn un modelo responsable del proceso y la gestin de los sistemas consultan de peridicamente tiempo real implica un conjunto el asociar de correccin no solo depende de los resultados que tiempo real implica normalmente la productor-consumidor. El proceso productor recursos. Siempre incluye unde planificador, produce sino tambin del momento en el que se un sensores proceso que con cada captan clase informacin dispositivo del coloca los datos en un bfer circular, desde organizacin del sistema como un conjunto produce dichos resultados. que es el componente responsable de sensor entorno y del actuador. sistema. Tambin Estos llevan se requieren a cabo donde son consumidos por el proceso de procesos concurrentes que interactan. decidir qu proceso debera seleccionarse procesos acciones, adicionales dependiendo de coordinacin de las lecturas de consumidor. El bfer tambin se implementa para su proceso ejecucin. Las decisiones como un eliminar los conflictos los sensores, ypara envan rdenes a de los planificacin se yrealizan utilizando las entre el productor el consumidor. actuadores. prioridades de los procesos.

Vous aimerez peut-être aussi