1
TEMA 1
Introducción y conceptos básicos
2
Introducción
Definiciones de STR
Estructura de los STR
Aplicaciones de los STR
Características de los STR
Micros y herramientas de desarrollo
Clasificación de los STR
Propiedades deseables de los STR
Resumen
3
Introducción
4
Sistemas Informáticos en Tiempo Real
Corrección del comportamiento del sistema
Naturaleza de los resultados de los cálculos
Instantes físicos de producción de resultados
Respeto a la causalidad
Parte de un sistema más amplio: el Sistema de Tiempo Real
Cambios de estado en función del tiempo físico
Software y hardware
Operador (Equipo operador)
Operador (Equipo operador)
Sistema informático en
tiempo real (Equipo de tratamiento) Sistema informático en
tiempo real (Equipo de tratamiento)
Objeto controlado
(Planta) Objeto controlado
(Planta) Interfaz
Hombre - Máquina
Interfaz Instrumentación
5 6
Definiciones de STR
7
¿Sistema de tiempo real?
Definición 1
Un STR es cualquier sistema en el cual el instante en que se produce la salida es significativo. Esto es porque la salida está relacionada con la variación de la entrada, ésta última se corresponde con una variable del mundo físico.
Definición 2
Cualquier actividad de procesamiento de información o sistema que responda a un estímulo externamente generado en un periodo finito de tiempo y determinado a priori.
8
Definición 3
Un STR es correcto si los resultados de los cálculos son correctos y el instante en que se dan estos resultados es el establecido a priori.
¿Sistema de tiempo real?
Definición 4
Un STR estricto es un sistema en el cual la salida se debe producir en el tiempo especificado.
9
Definición 5
Un STR no estricto es un sistema en el cual los tiempos de respuesta deben estar predeterminados, pero el sistema funciona correctamente si algún tiempo varía un poco ocasionalmente.
Definición 6
Los STR son sistemas donde el computador está dedicado a la monitorización y/o control de algún equipo físico.
¿Sistema de tiempo real?
10
Un STR es un sistema donde:
Existe una interacción continua con el medio ambiente (entorno) (sistema reactivo).
El entorno cambia en tiempo real y esto impone restricciones temporales a los sistemas que lo controlan
El sistema simultáneamente controla y/o reacciona a diferentes aspectos del entorno (sistema concurrente).
¿Sistema de tiempo real?
11
Sistema de Tiempo Real:Es un sistema informático en el que es significativo el tiempo en el que se producen sus acciones.
No basta que las acciones de un sistema sean correctas, sino que, además, deben ocurrir dentro de un intervalo de tiempo determinado.
Los sistemas tiempo real suelen estar integrados en un sistema de ingeniería más general, en el que realizan funciones de control y/o monitorización:
SISTEMAS EMPOTRADOS
(embedded systems)
Ejemplos: Vídeo, lavadora, ABS, …, computadora de vuelo
¿Sistema de tiempo real?
12
Otras definiciones…
Cualquier sistema en el que el instante en que se produce la salida es significativo. Esto se debe habitualmente a que la entrada corresponde a algún cambio en el mundo físico, y la salida está relacionada con este cambio. El intervalo entre el instante de la entrada y el de salida debe ser suficientemente pequeño para que sea la respuesta temporal del sistema sea aceptable. (Diccionario Oxford de Computación)
Un procesamiento activo de información o sistema que tiene que responder a una entrada externa en un período de tiempo finito especificado. (Young)
Los sistemas de control de tiempo real son aquellos que deben responder correctamente dentro de un límite de tiempo definido. Si la respuesta excede estos límites, entonces esto repercute sobre el funcionamiento (degradación y/o resultados indeseables en el sistema).
(Cooling)
La correcciónde un sistema de tiempo real depende tanto de la validez lógica de la respuesta, como del instante de tiempo en que se produce.
13
Estructura de los STR
14
Sistema de control
Sistema controlado
ConsignasEntrada
Actuadores
Indicadores
Sensores
Salida
15
Computador
Servoválvula (Actuador)
Depósito
Medidor de Nivel (Sensor)
Depósito Acumulador Bomba
16
Controlador Actuador Proceso
Sensor A/D
Yr* e* u* D/A u ua
Ys* Ys
T Y
T
COMPUTADOR
17
Interfaz de usuario
Algoritmo de control
Reloj Actuador Planta
Sensor COMPUTADOR
18
Típico Sistema Empotrado (Embedded)
Algoritmos de control digital
Recopilación de Información
Información a recuperar o visualizar
Interfaz Operador
Interfaz Sistema a controlar
Sistema de monitorización remota Reloj
Tiempo Real
Base de datos
Consola de Operador
Pantallas
Computador de Tiempo Real
19
Elementos de un Sistema de Tiempo Real
tarea tarea
tarea SO Comunicaciones
Software de Tiempo Real
E/S Digital
&
Analógica Otras
E/S
Reloj
Computador T
S P CAD
ADC
DAC Screen Switch Termo - sensor
Calentador
Transductor de presion
Válvulas
Entorno
Entender la Aplicacion
Caracterizar y Diseñar el Sistema
Controlar el Sistema
Monitorizar el Sistema
20
Proyecto de Sistema Empotrado
2 Procesador y Arquitectura 1 Requisitos de Aplicación
SO-TR y Arq. de Soft.
3
pSOS+ VxWorks Neutrino lynxOS nucleus
4 Herramientas de Desarrollo - (compilador, depurador, simulador) MetroWerks
21
Aplicaciones de los STR
22
Sistema de control de fluido
Tubería
Fluxómetro
Válvula Interfaz
Computador Tiempo
Lectura del sensor de flujo
Procesamiento
Activar salida ángulo válvula
23
Planta de tostado de grano
Tanque Fuel
Horno
Depósito
Tubería
fuel
grano
24
Estación de empaquetado
Controlador de Línea
Computador Interruptor
Línea de ensamblado
Caja
0 = stop 1 = run
Campana Interrupción
25
Sistema de Control de Procesos
Computador de Control de Procesos
Sustancias químicas y Materiales
Válvula Transductor de
Temperatura Agitador Productos Terminados
PLANTA
26
Sistema de Control de Producción
Sistema de Control de Producción
Piezas y componentes
Máquinas-Herramienta Manipuladores Cinta tramsportadora Productos Terminados
27
Sistemas de Mando y Control (C2) y Sistemas C
3I
Temperatura, Presión, Potencia, ...
Terminales
Computador de Mando y Control Comando
Sensores/Actuadores
28
EJEMPLOS
Ejemplos de sistemas empotrados
Electrónica de consumo
Videos, HIFI, televisión, ...
Lavadoras, frigorificos, lavaplatos, ...
Automóviles
Control velocidad, climatización, visualización
ABS, ASR
Inyección Telecomunicaciones
Radio trunking, teléfonos móviles GSM, GPS
Aviónica, espacial
Computadores de vuelo, de misión
Pathfinder Defensa
Bombas y misiles inteligentes
Vehículos, dirección de tiro, ...
Instrumentación
Sistemas de adquisición de datos
Sensores, actuadores
Acondicionamiento de señal
Industrial
Química-farmacéutica
Biomédica
…
29
EJEMPLO
Computador de un coche
Km/h Km
Cont. Velocidad Tª Hora
Computador Control
Empotrado Calefacción
Aire Acondicionado
Sistema Inyección Pedales
Ruedas
30
EJEMPLO
Varias tareas:
Control automático de velocidad
Control climatización
ABS
airbag
ESP, ASR,...
Visualización:
velocidad rpm consumo niveles alarmas ...
Ordenes del conductor:
comienzo control velocidad establecimiento temperatura
interior puesta en hora ...
31
Cuatro tareas:
1. Control de temperatura
2. Control de nivel 3. Alarma desnivel 4. Interfase con el operador:
lectura y ejecución de órdenes, visualización del estado (texto, graficas, etc.).
1 2
3 4 EJEMPLO
32
Características de los STR
33
Características de los STR
Muchos STR son periódicosen naturaleza, esto es, ejecutan esencialmente el mismo conjunto de tareas una y otra vez en un periodo de tiempo.
34
Características de los STR
Concurrencia
Los componentes del sistema controlado o monitorizado funcionan simultáneamente
El sistema de control debe atenderlo y generar las acciones de control o visualización de forma simultánea
Un computador ejecuta sus acciones de forma secuencial → RAPIDEZ → se puede hacer que el computador ejecute sus acciones de forma aparentemente simultánea
Computadores multiprocesador o sistemas con varios computadores
La concurrencia requiere de herramientas especiales : Lenguajes concurrentes de alto nivel (lenguaje secuencial + Sistema Operativo).
35
Características de los STR
Tamaño y complejidad
Afecta sobre todo al software.
La complejidad no depende únicamente del tamaño Un factor importante es la necesidad de realizar
cambios en el sistema.
La solución esta en aplicar el principio de divide y vencerás.
Existen herramientas y metodologías que facilitan la labor de diseño.
36
Características de los STR
Cálculos con números reales
Los sistemas de control realizan cálculos con variables que representan magnitudes físicas, es decir valores reales.
Los números reales se representan en la computadora de manera aproximada. Hay dos clases de representaciones:
Punto fijo
Punto flotante
Los valores marcados con * son discretos
37
Características de los STR
Seguridad
Muchos STR son también de seguridad crítica. Esto es, un fallo en el sistema de control puede hacer que el sistema provoque una catástrofe (perdida de vidas) o antieconómica.
Es importante asegurar que si el sistema falla lo haga de forma que el sistema controlado quede en un estado seguro. Esto implica que hay que tener en cuenta los posibles fallos o excepciones.
38
Características de los STR
Interacción con dispositivos físicos
Los sistemas empotrados interaccionan con su entorno mediante diversos tipos de dispositivos (sensores y actuadores) que normalmente no son convencionales (teclados, impresoras, ...): convertidores A/D y D/A, pwm, entradas y salidas digitales paralelo y serie, ...
(interfases con sensores, actuadores, periféricos especiales, cámaras de video, láser, ...) Los componentes del software que controlan el
funcionamiento de estos dispositivos (manejadores,
"drivers") son, en general, dependientes del sistema operativo concreto
39
Características de los STR
Implantación Eficiente
Es importante que el lenguaje ofrezca facilidades
Control del tiempo
Manejo claro de las excepciones
Comunicación entre procesos de control
Gran parte de los sistemas de control deben responder con gran rapidez a los cambios en el sistema controlado
40
Fiabilidad y seguridad
Un fallo en un sistema de control puede hacer que el sistema controlado se comporte de forma peligrosa o antieconómica
Es importante asegurar que si el sistema de control falla lo haga de forma que el sistema controlado quede en un estado seguro => hay que tener en cuenta los posibles fallos o excepciones en el diseño
Características de los STR
41
Robustez
Embarcados en sistemas con movimiento o que pueden ser transportados, sujetos a vibraciones e incluso impactos (coches, robots, instrumentación portátil, ...)
No siempre trabajan en condiciones óptimas de temperatura, humedad, limpieza.
Factor de protección IP: IP65
Primer dígito: protección ante entrada de sólidos (polvo)
Segundo dígito: protección ante la entrada de líquidos
Características de los STR
42
Bajo consumo
Muchos de estos sistemas están alimentados con baterías o pilas. Menor consumo => mayor autonomía
En muchos casos necesidades de bajo voltaje (3V)
Bajo peso
Característica de agradecer en sistemas portátiles No depende únicamente del computador embarcado y su
periferia sino también de la alimentación (baterías) o de los sensores y actuadores
Características de los STR
43
Bajo precio
Aplicable a electrónica de consumo y otros dispositivos con mercados muy competitivos (p.e. telefonía móvil)
Pequeñas dimensiones
Las dimensiones de un sistema empotrado no dependen sólo de sí mismo sino también del espacio disponible en el sistema que controla y/o monitoriza.
Característica a tener muy en cuenta por los problemas que acarrea
Características de los STR
44
Micros y herramientas de desarrollo
45
CLASIFICACIÓN COMPUTADORES
Supercomputadores Servidores Estaciones de trabajo PC's
Calculadoras
Computadores específicos Computadores/PC's + tarjetas E/S Autómatas Programables Reguladores digitales
Tarjetas microprocesadores + tarjetas E/S + bus VME PC's + tarjetas E/S + bus ISA/PCI/CAN
Microcontroladores, DSPs Cálculo científico
Gestión (bancos, empresas) Bases de datos
Control industrial Simuladores de vuelo Robótica
Electrodomésticos Aeronáutica Teléfonos móviles
CONTROL / TIEMPO REAL
EMPOTRADOSNO EMPOTRADOS
NO CONTROL
46
LOS MICROS
Microprocesadores(Propósito general, Caches y manejo eficiente de memoria) + Periféricos (E/S paralelo, serie, A/D, PWM, ...)
+ RAM/ROM integradas - caches
- manejo memoria
Microcontroladores(Propósito específico: control, RAM + ROM) 4-bit → 8-bit → 16-bit → 32-bit
↑ periféricos: CAN, Ethernet, LCD, motores PP, ...
↑ aplicaciones: capacidades DSP
47
LOS MICROS
Fabricantes de microcontroladores
INTEL 8048-8051-80C196-80386
MOTOROLA 6805-68HC11-68HC12
HITACHI HD64180
PHILIPS 8051
SGS-THOMSON ST-62XX
NATIONAL SMC. COP400-COP800
ZILOG Z8, Z86XX
TEXAS INST. TMS370
TOSHIBA 68HC11
MICROCHIP PIC
48
LOS MICROS
Microprocesadores: Circuito de computación integrado en un chip.
Microcontroladores Dispositivo integrado que incluye un microprocesador, memoria y dispositivos periféricos (dispositivos de entrada/salida, convertidores A/D, puertos de comunicación, etc.).
4-bit → 8-bit → 16-bit → 32-bit
49
Prestaciones: ¿Cumple especificaciones? Análisis del rendimiento medio o del peor caso (en esto influye tanto el hardware como el software).
Ej: Control de inyección de un vehículo versus servidor web.
Tecnología: alimentación, consumo.
Coste: (desde 1€ a 300 € o más)
Fiabilidad: Fundamental en aplicaciones de soporte vital
Ejs: El primer Airbus llevaba Z80 (8 bits, ~1970). El primer Pentium III era defectuoso.
Experiencia y soporte: (Referencias en páginas Web: Pentium : >37.500.000, Sparc : 8.730.000, 8051 : 333.000, 68HC11 -> 110.000, Z80 -> 131.000)
Compatibilidad: 8086 → 80186 → 80386 → 80486 → Pentium 6802 → 6809 → 6811 → 6812
Disponibilidad y segundas fuentes: La evolución tecnológica y el mercado hacen obsoletos los productos de forma muy rápida. Siempre conviene tener una segunda fuente que garantice el suministro.
Criterios de selección μP/μC
Requisitos y coste:Herramientas de desarrollo (precio, complejidad, prestaciones) Otros factores:
50
Tiempo de desarrollo (es un factor fundamental en la actualidad)
Repercusión del tiempo de desarrollo sobre los beneficios: Pequeños retrasos en el tiempo de puesta en el mercado pueden producir grandes pérdidas.
• Vida media de un producto: La vida media de los productos tecnológicos es cada vez más corta (hoy en día, en torno a 2 años).
• Obsolescencia de la tecnología: La rápida evolución de la tecnología hace que los tiempos de desarrollo deban ser cortos para mantener competitividad.
Ej: Hacemos un diseño de un smartphone, que hoy es competitivo (a 540MHz, y un consumo de 0.45 mW/MHz), pero tardamos dos años. Cuando salga al mercado puede no ser competitivo (podría haber otros a 900 MHz y 0.3 mW/MHz).
T0 T0+4 Ventas (unidades) Producto A
Producto B
Tiempo (meses)
T0+12 T0+24
Beneficio:~área bajo cada curva
Criterios de selección μP/μC
51
Herramientas de desarrollo
52
Simuladores
Un simulador ejecuta un programa destinado a un μP/μC en un computador de propósito general (p.e. un PC)
Los contenidos de la memoria y registros pueden ser observados y alterados
No soporta interrupciones reales ni (generalmente) hardware adicional
La velocidad de ejecución es menor que en el μP/μC
53
Debuggers residentes
Residente en el μP/μC, el programa se ejecuta en el μP/μC.
Permite visualizar la ejecución desde una terminal o computador Utiliza recursos del μP/μC (un puerto de comunicación, una
interrupción y memoria) y ralentiza la ejecución (acceso a memoria y registros y comunicación)
Visualización y actualización de memoria, breakpoints, ...
54
Emuladores
Hardware que “emula” al μP/μC (lo sustituye en la plataforma) y además permite obtener información y actuar sobre la aplicación sin gastar recursos del μP/μC ni alterar la evolución temporal Se comunica por una parte con un computador o terminal (vía
RS232 o similar) y por otra con el sistema receptor del μP/μC (mediante el POD (placa emuladora del micro seleccionado))
55
Clasificación de los STR
56
Clasificación de los Sistemas de Tiempo Real
Críticos No críticos
Centralizados Distribuidos
Basados en reloj Basados en eventos Interactivos Estrictos No estrictos Firmes
57
donde:
tc(i) intervalo entre los ciclos i-1 e i.
te(i) tiempo de respuesta de la i-ésima ocurrencia del evento e.
ts intervalo periódico o cíclico . Te máximo tiempo permitido para el evento e.
ta tiempo de respuesta medio permitido para el evento e medido en el intervalo de T.
n número de ocurrencias del evento e dentro del intervalo T, o el número de veces que se repite el ciclo durante el intervalo T.
a tolerancia temporal.
( )
i t atc =s± te
( )
i≤Tet t t
s s n
i c
n T a n i
=
±
=
∑= () 1
1
t t t
s a n
i e
n T n i
=
≤
∑= () 1
1
ESTRICTAS NO ESTRICTAS
Periódicas Aperiódicas Periódicas Aperiódicas o cíclicas o acíclicas o cíclicas o acíclicas
Restricciones temporales
58
Propiedades deseables de los STR
59
Oportunidad:El tiempo en que los valores de salida son obtenidos es importante
Robustez:
El sistema no debe fallar cuando este sometido a condiciones extremas.
Predecible.
Tolerancia a fallos:
Los fallos de software o hardware no deben afectar el funcionamiento del sistema.
Mantenimiento:
El sistema debe ser modular para facilitar las modificaciones necesarias a lo largo de su vida útil.
Probable:
Fácil de probar que las restricciones temporales (plazos,
deadlines) se satisfagan.Propiedades deseables de los STR
60
La especificación de un STR frecuentemente relaciona un evento en el entorno con acciones que deben realizarse.
Por ejemplo, si el sistema de control de un automóvil identifica una situación de choque, entonces el airbag del conductor debe de inflarse dentro de cierto límite de tiempo.
Este límite es normalmente referido como deadline. Algunos deadlineson hard y otros soft.
Plazo, Deadline
61
Tiempo real no quiere decir realizar todo rápido, ya que aunque esto ocurra, es posible, debido a la interacción entre tareas y recursos, que el resultado no sea oportuno.
- Tiempo real no significa rápido
- Tiempo Real significa justamente a tiempo (predecible)
Tiempo real
vsRápido
62
Temas relacionados con Tiempo Real
Especificación y verificación Teoría de planificación Sistemas operativos Lenguajes de programación Metodologías de diseño Bases de datos distribuidas Inteligencia artificial Tolerancia a fallos
Arquitecturas de computadores Comunicación
63
Introducción
Definiciones de STR
Estructura de los STR
Aplicaciones de los STR
Características de los STR
Micros y herramientas de desarrollo
Clasificación de los STR
Propiedades deseables de los STR
Resumen
64