anÁlisis e implementacion de caracteristicas de rtos · ifac workshop on real-time programming and...

67
ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS Diego Martínez Castro GITCoD Departamento de Automática y Electrónica Universidad Autónoma de Occidente Santiago de Cali, Colombia Simposio Argentino de Sistemas Embebidos 2012 FI-UBA, Buenos Aires, Argentina Agosto 16 de 2012

Upload: others

Post on 25-Mar-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS

Diego Martínez CastroGITCoD

Departamento de Automática y ElectrónicaUniversidad Autónoma de Occidente

Santiago de Cali, Colombia

Simposio Argentino de Sistemas Embebidos 2012FI-UBA, Buenos Aires, Argentina

Agosto 16 de 2012

Page 2: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Contenido

• Motivación

• Arquitectura de los nodos• Sistemas distribuidos de tiempo real

2/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 3: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Contenido

• Motivación

• Arquitectura de los nodos• Sistemas distribuidos de tiempo real

3/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 4: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Definición de un sistema de tiempo real

“Cualquier sistema que tiene que responder a estímulos generados externamente dentro de un plazo especificado y finito”

El correcto funcionamiento de un sistema de tiempo real

depende de:• El resultado lógico de la computación.• El tiempo que se tarda en generar el resultado.

4/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 5: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Sistemas críticos

Definición de un sistema de tiempo real

Sistemas no críticos

5/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 6: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Video Frame con soporte de QoS

Video Frame sin soporte de QoS

Ejemplos de sistemas de tiempo real

6/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 7: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

La cardioversión eléctrica es un tipo de terapias que mediante la aplicación de un choque eléctrico de corriente continua consigue revertir distintos trastornos del ritmo cardíaco.

Si el pulso es aplicado durante la onda T entre 50 ms y 150 ms después del complejo QRS, se podría introducir una fibrilación en el corazón.

Ejemplos de sistemas de tiempo real

Gráfica tomada de: Roberto Méndez. El “chispazo” o cardioversión: Cuando una descarga eléctrica puede salvarnos la vida.

7/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 8: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Los retrasos y el jitter que introduce la red de comunicaciones en las aplicaciones de control, han dado lugar a que en algunos casos no se obtenga una buena correspondencia entre los resultados experimentales y los objetivos de control propuestos.

Ejemplos de sistemas de tiempo real

8/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 9: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Resultados experimentales de una WSAN

08.21128.5

5.142)( ++

=ss

G sp

)(221

20

)( zz zz

qzqzqU ε

−++=

s

dp T

KKq +=0 si

s

dp TK

T

KKq +−−= 2

1s

d

T

Kq =2

2=pK 4=iK 1=dK

,

Resultados experimentales, periodo 90ms y retraso 30ms Resultados experimentales, periodo 90 ms y retraso 80 ms

Ejemplos de sistemas de tiempo real

9/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 10: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Planificadores y Análisis de planificabilidad

En que orden ejecutar las tareas para cumplir con los plazos?

Planificadores• Planificadores cíclicos.• Planificadores por prioridades fijas.• Planificadores por prioridades dinámicas.

Análisis de planificabilidad• Test de Utilización• Test de Utilización

10/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 11: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Contenido

• Motivación

• Arquitectura de los nodos• Sistemas distribuidos de tiempo real

11/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 12: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Arquitectura lógica de un nodo

• Tareas.• Procesadores.• Planificadores de tareas.

Los componentes del sistema deben tener un comportamiento predecible para poder garantizar el cumplimiento de plazos.

12/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 13: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Arquitectura lógica de un nodo

• Tareas.• Procesadores.• Planificadores de tareas.

13/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 14: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

TareasUna tarea es un programa en ejecución: código, variables y

contexto (valor del contador de programa (PC), apuntador de pila (SP) y demás registros utilizados por el programa).

Un programa es pasivo (es sólo el código almacenado en la memoria de programa) y una tarea es activa y dinámica (cambia en el tiempo).

14/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 15: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Ejecución de una tareaTareas

15/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 16: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Ejecución de varias tareas

Tareas

16/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 17: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Estados de las tareas

Tareas

17/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 18: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Cambios de contexto

Tareas

18/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 19: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Arquitectura lógica de un nodo

• Tareas.• Procesadores.• Planificadores de tareas.

19/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 20: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Arquitecturas de nodos de WSN

20/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 21: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Arquitectura de nodos de WSN

21/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 22: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

CC2430

22/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 23: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

AT89C51CC03

23/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 24: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Arquitectura lógica de un nodo

• Componentes para el diseño.• Procesadores.• Planificadores de tareas.

24/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 25: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Planificación de tareasEl planificador es el componente del sistema operativo que decide cual de las

tareas listas para ser ejecutadas es la que debe ejecutarse, de manera que permite la ejecución “concurrente” (alternada) de las tareas.

25/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 26: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Análisis de planificabilidad extremo-extremo para WSAN

Control del orden de ejecución de las tareas:• Controlador de interrupciones:

• Duración de la atención a la interrupción.• Flexibilidad.

• Planificadores:• Planificadores por prioridades fijas.• Planificadores por prioridades dinámicas.

26/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 27: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Diseño de un Planificador de Tareas por Prioridades Fijas para el Microcontrolador

AT89C51CC03.

27/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 28: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Filtro Hanning. Filtros FIR utilizados para reducir el ruido de alta frecuencia. Un método simple para reducir el ruido de alta frecuencia es simplemente promediar varios datos de medidas adyacentes.

Implementación de un Filtro Hanning

( )4

2 2)(

1)()(

)(

−− ++=

zxzxxY zzz

z

( )4

2 )2()1()()(

−− ++= kkk

k

xxxY

Respuesta al impulso

28/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 29: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Ubicación de polos y ceros

Implementación de un Filtro Hanning

29/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 30: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Respuesta en frecuencia

Implementación de un Filtro Hanning

30/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 31: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

El Microcontrolador 8051

Diagrama de bloques

Atmel 8051 Microcontrollers Hardware Manual

31/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 32: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Proyecto: Ejecución de dos filtros FIR pasa bajo.

32/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 33: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Estructuras de una Tareatypedef struct _tarea{

char estado; // Activa(1) o inactiva(0)

void (*PunteroTarea)();

char prioridad;

char tipoTarea; //1 Periodica 2 No Periodica

char tipoEvento;

char tEstatico;

char buzon;

char tPSW; // Registro de banderas de la tarea

char tACC; // Acumulador de la tarea

}Tarea;

33/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 34: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Configuración del temporizadorvoid configureTimer0(int Ciclos_Maq){

TMOD &= 0xF0;

TMOD = TMOD + (C_T_T0 * 4) + MODO_T0;

variable = 65536 - Ciclos_Maq;

TL0 = variable;

TH0 = variable >> 8;

#pragma asm

SETB IEN0.1

SETB IEN0.7

SETB TR0

#pragma endasm

}

34/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 35: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

void it_timer0 (void) interrupt 1{

int i, aux;

TL0 = variable;

TH0 = variable >> 8;

aux= punteroPlan;

aux=aux/256;

for(i=0;i<ctdadTareas;i++){

(&tareas[i])->tipoEvento--;

if((&tareas[i])->tipoEvento==0){

(&tareas[i])->tipoEvento=(&tareas[i])->tEstatico;

(&tareas[i])->estado=1;

}

}

DPL=(punteroPlan);

DPH= aux;

#pragma asm

PUSH DPL

PUSH DPH

SETB EA

RETI

#pragma endasm

}

Subrutina de atención a la interrupción del

temporizador

35/66

Page 36: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Instalación de tareas en el núcleo

void instalarTarea(Tarea *tarea){

//Agregando tareas al vector de tareas

tareas[ctdadTareas].estado = tarea->estado;

tareas[ctdadTareas].prioridad=tarea->prioridad;

tareas[ctdadTareas].tipoTarea=tarea->tipoTarea;

tareas[ctdadTareas].tipoEvento=tarea->tipoEvento;

tareas[ctdadTareas].tEstatico=tarea->tEstatico;

tareas[ctdadTareas].PunteroTarea=tarea->PunteroTarea;

tareas[ctdadTareas].buzon=tarea->buzon;

tareas[ctdadTareas].tPSW=0;

tareas[ctdadTareas].tACC=0;

ctdadTareas++;

}36/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 37: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Ordenamiento de tareas por prioridad

void organizarPorPrioridad(void){

Tarea *taux;

int i, j;

for(i =0;i<ctdadTareas;i++){

taux=&tareas[i];

for (j =i+1;j<ctdadTareas;j++){

if(tareas[i].prioridad > tareas[j].prioridad){

tareas[i]=tareas[j];

tareas[j]=*taux;

}

}

}

}

37/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 38: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Planificador y despachador de tareasfor ( i = 0; i < ctdadTareas; i++){

if(tareas[i].estado){

tActiva=i;

aux= tareas[i].PunteroTarea;aux=aux/256;

PSW = tareas[i].tPSW;

ACC = tareas[i].tACC;

DPL=(tareas[i].PunteroTarea);

DPH= aux;

#pragma asm

PUSH DPL

PUSH DPH

#pragma endasm

}

}

}

38/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 39: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Tarea

void TAR0 (){

if(cerrojo.valor) block(&(tareas[0]),&cerrojo); // Bloquea a otras tareas usuarias del recurso

else{

lock(); //Toma los recursos: ADC

getADCdata();

value_converted = (value_converted + (2*value_converted1) + value_converted2)/4;

value_converted2 = value_converted1;

value_converted1 = value_converted;

caracter = value_converted*255/1023;

UARTTransmit(caracter);

unlock(); //Libera los recursos

unblock(); //Desbloquea a las tareas que están a la espera del recurso

aux= punteroPlan;

aux=aux/256;

DPL=(punteroPlan);

DPH= aux;

#pragma asm

PUSH DPL

PUSH DPH

RET

#pragma endasm

}

}39/66

Page 40: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Contenido

• Motivación

• Arquitectura de los nodos• Sistemas distribuidos de tiempo real

40/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 41: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Redes inalámbricas de sensores

Redes de sensores:• La naturaleza y complejidad de las nuevas aplicaciones.• Aumento de la potencialidad del sistema a menor coste.

• Aumento de la flexibilidad de las aplicaciones.

Redes inalámbricas de sensores (finales década de los 90):• Red de gran escala, ad hoc, multisalto.• Nodos sensores con arquitectura homogénea, pequeños, principalmente estáticos,

que pueden ser dispersados de manera aleatoria sobre el área de interés.• Parámetro principal en el diseño es la disminución en el consumo de energía.• Inicialmente aplicaciones militares.

41/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 42: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

• Nodos con interfaces de actuación.• Nodos heterogéneos y móviles.• Distintas topologías de red.• Nuevos requisitos de calidad de servicio

(Plazos extremo-extremo).

Redes inalámbricas de sensores y actuadores

42/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 43: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Aplicaciones de WSAN

43/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

WirelessHART

Page 44: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

R.A. Leon, V. Vittal and G. Manimaran. Application of sensor network for secure electric energy infrastructure. IEEE Transactions on Power Delivery, vol. 22, no. 2, pp. 1021 - 1028, 2007.

Aplicaciones de WSAN

44/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 45: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Wireless sensor networks for healthcare: A survey. Hande Alemdar , Cem Ersoy . Computer Networks 54 (2010) 2688–2710. ELSEVIER.

Aplicaciones de WSAN

45/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 46: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Wireless sensor networks for healthcare: A survey. Hande Alemdar , Cem Ersoy . Computer Networks 54 (2010) 2688–2710. ELSEVIER.

Aplicaciones de WSAN

46/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 47: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Análisis de planificabilidad extremo-extremo para WSAN

47/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 48: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Análisis de planificabilidad extremo-extremo para WSAN

Análisis locales

Análisis extremo - extremo

48/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 49: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Modelo del sistema y notación

SCGRACS TDDDD ≤≤++

Martínez D., Balbastre P., Blanes F., Simo J. and Crespo A.: “Schedulability Analysis and Performance Evaluation of WSAN”. Preprints of the 30th IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094. Mrągowo - Poland, October 12-14, 2009b

• , es el periodo con el que se repite el itinerario de ranuras en la red TDMA.

• , es el plazo extremo-extremo, entre el inicio de la medición y la finalización de la

actuación.

• , es el periodo de muestreo empleado en la medición.

Análisis de planificabilidad extremo-extremo para WSAN

49/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 50: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Modelo lineal del sistema de control),(

')(

),('

)(),( 1 mZZ

mZZmZ GpGc

GpGcH

+=

Análisis de planificabilidad extremo-extremo para WSAN

• Periodos de muestreo: Ancho de banda del sistema (menor periodo puede generar mayores retrasos).• Plazos: Efectos en los transitorios y estabilidad.

50/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 51: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

• Análisis de planificabilidad extremo-extremo:

– Las aplicaciones en sistemas distribuidos están caracterizadas por poseer relaciones de precedencia entre sus tareas.

– Un enfoque común es asignar las tareas estáticamente a los nodos que conforman el sistema y localmente utilizar un algoritmo de planificación como RM (Rate Monotonic) o EDF (Earliest Deadline First), (Spuri, 1996).

– Si las tareas son estáticamente asignadas a procesadores independientes, las restricciones de tiempo extremo-extremo pueden ser analizadas por una teoría que considere la relación entre los jitter (Audsley, 1993).

51/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Análisis de planificabilidad extremo-extremo para WSAN

Page 52: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

• Redes de datos:

– Transferencia de ficheros, conexiones remotas, correo electrónico, .... Mensajes de tamaño considerable y por ráfagas.

• Redes de control:

– Transferencia de información de estado de un proceso, lectura de un sensor, señales de alarma,... Mensajes de tamaño reducido y periódicos.

– Importancia no sólo de la información sino del instante de tiempo en el que se produce. Concepto dato-tiempo como algo atómico.

– Existen diferente formas para la sincronización:• Información global del tiempo. Todas las estaciones disponen de un reloj local

que periódicamente se va sincronizando con el resto de relojes.

• Eventos.

– Para implementar mecanismos de tolerancia a fallos y redundancia, las funciones han de estar distribuidas. Todos los nodos deben ser capaces de trabajar de forma autónoma. Esta idea contradice a otra muy usada en sistemas distribuidos como es la maestro-esclavo.

Redes para control

52/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 53: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

DESARROLLO DE CONTROL DISTRIBUIDO PARA UN BANCO DE MOTORES DE MEDIANA POTENCIA

– Sistema de control en red para regular la velocidad de un motor DC.– Codiseño HW-SW en el diseño de los nodos, Microcontrolador 89C52 – FLEX10K.

– Red de comunicaciones CAN

– Planificador de tareas RM.

Sistemas de control de nivel y velocidad empleando protocolo CAN

53/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 54: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Diagrama de bloques de una red CAN convencional

54/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 55: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Arbitraje para la detección y resolución de colisiones en CAN

55/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 56: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Cálculo del tiempo máximo de envío de un mensaje a través de una red CAN

∑<∀

+

++=

ijj

j

ni

iini C

T

RBCR 1

jij

i CB>

= max ∑ <+=

ijii CjBR )0(

Donde:• Ci es el tiempo de transmisión del mensaje.• Bi es el máximo tiempo de bloqueo que puede sufrir el mensaje como consecuencia de estar ocupado el bus por mensajes de menor prioridad, lo anterior dado que el bus no se puede expropiar.• Ti es el periodo de envío del mensaje i.

56/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 57: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

• El periodo de envío del mensaje 0 y mensaje 1 es 50ms.

• Cada trama envía 2 bytes de datos en un formato de trama extendida, por consiguiente el número de bits es 82.

• La velocidad de transmisión es 50 kbps; por lo tanto, el tiempo de envío de una trama es 1.64ms.

Los tiempos máximos de transmisión de las tramas son:

msBR 64.100)0(

0 =+= msmsmsR 28.3064.164.1)1(0 =++=

msCR 64.10 1)0(

1 =+= msmsms

msmsR 28.364.1

50

64.164.1)1(

1 =

+=

msmsms

msmsR 28.364.1

50

28.364.1)2(

1 =

+=

57/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Cálculo del tiempo máximo de envío de un mensaje a través de una red CAN

Page 58: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

58/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Resultados experimentales

Page 59: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Implementación de una WSAN sobre IEEE 802.15.4

Arquitectura del sistema

59/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 60: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Topologías de red

Estrella

Peer to Peer

IEEE 802.15.4

60/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 61: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Estándar de comunicación IEEE 802.15.4• Empleando el modo de acceso con sincronización de IEEE

802.15.4 es posible garantizar tiempos máximos de envío de información, asignando a los nodos un GTS dentro de una supertrama. Solamente es posible asignar un máximo de 7 ranuras, con un periodo mínimo de trama de 15,36 ms.

IEEE 802.15.4

61/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 62: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

IEEE 802.15.4

62/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 63: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

IEEE 802.15.4

63/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 64: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

2. Análisis de planificaficabilidad extremo-extremo

• DS, DC, DA => [Dmín j, Dmáx

j] • Dmín j y Dmáx

j son los valores mínimo y máximo de D j para garantizar la planificabilidad local y extremo-extremo. Dmín j se obtiene a partir del algoritmo Deadlinemin, (Balbastre, 2008)

Propuesta 1: método de análisis de planificabilidad para WSAN con distancia entre nodos acotada a un salto.

1. Análisis de planificabilidad local

∑=

−+=n

i i

iii T

DTtCtH

1

)(τ [ )R,0 ttH <)(τ ∀ Rt ≤

EDF test (Ripoll, 1996)

Martínez D., Balbastre P., Blanes F., Simo J. and Crespo A.: “Schedulability Analysis and Performance Evaluation of WSAN”. Preprints of the 30th IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094. Mrągowo - Poland, October 12-14, 2009b

Análisis de planificabilidad extremo-extremo para WSAN

64/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 65: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

Sistema

Parámetros del sistema:

RiseTime: 0.3847

SettlingTime: 1.2750

SettlingMin: 0.6250

SettlingMax: 0.7711

Overshoot: 12.0602

Undershoot: 0

Peak: 0.7711

PeakTime: 0.8265

Resultados experimentales

65/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 66: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

PID, Muestreo 90 ms, Retraso máximo 30 ms

Resultados experimentales

PID, Muestreo 90 ms, Retraso máximo 80 ms

66/66Motivación Arquitectura de los nodos Sistemas distribuidos de tiempo real

Page 67: ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS · IFAC Workshop on Real-Time Programming and 4th International Workshop on Real-Time Software, pp. 109 – 116. ISSN 1896-7094

ANÁLISIS E IMPLEMENTACION DE CARACTERISTICAS DE RTOS

Diego Martínez CastroGITCoD

Departamento de Automática y ElectrónicaUniversidad Autónoma de Occidente

Santiago de Cali, Colombia

Simposio Argentino de Sistemas Embebidos 2012FI-UBA, Buenos Aires, Argentina

Agosto 16 de 2012