José Ulloa Suárez
Cesar León Soledispa
Ingeniería WiseConn S.A.
IntroducciónIntroducción
¿En qué consisten?ElementosMétricas
AplicacionesProblemas
Estrategias ahorro de energía
Wireless Sensor Wireless Sensor NetworkNetwork
La 1ra de las 10 tecnologías emergentes en el 2003 según el MIT.
El número de empresas que fabrican sensores en un país, está considerado como un indicador tecnológico.
Integración con otras tecnologíasAgricultura, Biología, Medicina.
Posibilita aplicaciones antes impensables.Interacción de los seres humanos con el medio.
¿En qué consisten?¿En qué consisten?
Dispositivos pequeños, autónomos, distribuidos geográficamente, llamados nodos sensores instalados alrededor de un fenómeno objeto para monitorizarlo, con capacidad de cómputo (realizar mediciones), almacenamiento y comunicación en una red conectada sin cable.
SENSAR + CPU + RADIO = MILES DE APLICACIONES
Redes desatendidas (sin intervención humana), con alta probabilidad de fallo (en los nodos, en la topología), habitualmente construidas ad-hoc para resolver un problema muy concreto (es decir, para ejecutar una única aplicación).
Elementos de Elementos de una WSNuna WSN
SensoresSensoresDe distinta naturaleza y tecnología toman del medio la información y la convierten en señales eléctricas.
Nodo SensorNodo SensorO procesadores de radio, toman los datos del sensor a través de sus puertas de datos, y envían la información a la estación base.
GatewayGatewayElementos para la interconexión entre la red de sensores y una red TCP/IP por ejemplo.
Estación BaseEstación BaseRecolector de datos basado en un ordenador común o sistema embebido.
Red InalámbricaRed InalámbricaTípicamente basada en el estándar 802.15.4 ZigBee.
Métricas de una WSNMétricas de una WSN
EVALUACIÓN WSNTiempo de vida.Cobertura.Coste y facilidad de instalación.Tiempo de respuesta.Precisión y frecuencia de las mediciones.Seguridad.
EVALAUCIÓN NODO SENSOR
EnergíaFlexibilidadRobustezSeguridadComunicaciónComputaciónSincronizaciónTamaño y costo
Aplicaciones con Aplicaciones con WSNWSN
Monitorización de EntornoAplicación donde un científico quiere recoger lecturas de un entorno inaccesible y hostil en un período de tiempo para detectar cambios, tendencias, etc.
Monitorización de SeguridadAplicación para detección de anomalías u ataques en entornos monitorizado continuamente por sensores.
TrackingAplicación para controlar objetos que están etiquetados con nodos sensores en una región determinada.
Redes HíbridasEn general, los escenarios de aplicación contienen aspectos de las tres categorías anteriores.
Automatización Industrial
Potenciales industriasPotenciales industrias
AcuiculturaTelemetría
ForestalMinería
Domótica
Problemas WSNProblemas WSN
Optimización en el consumo de energía:La comunicación es el principal consumidor.CPU debe estar en estado “sleep”.Economizar las distancias de las comunicaciones.Técnicas de software: Programación eficiente.
Ancho de banda y cobertura de red limitados.Recursos de hardware limitados:
MemoriaCPU
Topología dinámica de la redElementos móvilesNodos con alta probabilidad de falloNodos que entran en el sistema
Estrategias ahorro Estrategias ahorro energíaenergía
SleepLa mayor parte del tiempo.
WakeupMinimizar este tiempo para pasar rápidamente al estado de trabajo.
ActiveMínimo período de tiempo de trabajo y retorno inmediato al estado sleep.
Estados generales de un nodo sensor
ArquitecturaArquitectura
Arquitecturas propuestasElementos lógicos y físicos
Comunicación
Red de tránsito INTERNET
Gateway1
Gateway2
Estación Base
Servidor Central
WSN1 instalada en fenómeno 1
WSN2 instalada en fenómeno 2
Arquitectura Arquitectura CentralizadaCentralizada
Arquitectura Arquitectura DistribuidaDistribuida
Red de tránsito INTERNET
Gateway1
Estación Base
Servidor Central
WSN1 instalada en fenómeno 1
Cluster Head 1
Cluster Head 2
Humedad Relativa y Temperatura
Radiación Total y PAR
Antena Integrada
Puerto Expansión(ADC, I/O)
•IEEE 802.15.4 compatible (2.4 GHz, 250 kbps)•Bajo consumo (2 pilas AA)•Tamaño (6.3 cm x 3.2 cm)•Hasta 150 metros de alcance y 400 metros con antena externa
Puerto JTagMódulo de
comunicación inalámbrica
Microcontrolador(Contiene Sistema
Operativo Embebido)
Nodo SensorNodo Sensor
Diseñado para sensores y aplicaciones industriales.Se basa en estándar IEEE 802.15.4. (2003)Especificaciones públicas el 2005.Hasta 200 m de alcance.
Hasta 65.000 nodos.2,4 GHz, 915 y 868 MHzHasta 250 kbps y 16 canales.Topologías Mesh, Cluster tree, Structural.
WiMax
802.11b
802.11a / 802.11g
Bluetooth 1
Bluetooth 2
ZigBee
50 Km
200 m
50 m
250 Kbps 2 Mbps 70 Mbps
ComunicaciónComunicación
Sistema Operativo para WSN
(TinyOS, SOS, Contiki)
CC2420 (ChipCon)
ProgramaciónProgramación
TinyOSTinyOS
CaracterísticasModelo de ejecución y programación
NesCIntegración
TinyOSTinyOS
Creado por la universidad Berkeley.Para ejecutar sobre motes: mica, mica2, micadot, micaz, telos.
Diseñado específicamente para sensores en red
Capaz de manejar capacidades limitadas de HW.
Diseñado para escalar con tendencias tecnológicas de la actualidad.
Operaciones intensivas de concurrencia y garantiza atomicidad.
Modelo de ejecuciónModelo de ejecución
Basado en eventos.
Soporta altos niveles de concurrencia en poca cantidad de espacio.
ConcurrenciaTareas que se ejecutan hasta completarse en background sin interferir con otros eventos del sistema. Pueden ser interrumpidas por eventos del sistema de bajo nivel.
Proporciona mecanismos para crear exclusión mutua en secciones de código (concepto de atomicidad).
Modelo de Modelo de ProgramaciónProgramación
Basado en componentes (módulos).
Cada módulo es diseñado para operar continuamente respondiendo a eventos de entrada (alarmas, timers, radio, etc.).
Cuando llega un evento, trae con él el contexto de ejecución requerido.
Tareas, Eventos y Tareas, Eventos y ComandosComandos
Conjunto de TareasRealizan trabajo principal.Ejecutan atómicamente respecto a otras tareas.Ejecutan concurrentemente con otros comandos o eventos.
Conjunto de Eventos/Comandos:
Pequeña cantidad de trabajo, motivada por interrupciones de HW o señales.Constituyen la interfaz del componente.
Grafo de Grafo de ComponentesComponentes
Programación permite:Modularidad eficienteFácil composición.
Tipos de componentes:Abstracciones de HW
• Mapean HW físico en el modelo de componentes de TinyOS. Ej: RFM
Hardware sintético• Simulan el comportamiento de
HW avanzado. Ej: RadioByte
Comp. De SW de alto nivel• Control, enrutamiento,
transferencia de datos, cálculos, agregación de datos.
Grafo de componentes para una aplicación de enrutamiento
Lenguaje de Lenguaje de ProgramaciónProgramación
NESCNESC
NesCNesC
Lenguaje de programación diseñado para programar componentes.
Sintaxis parecida a C (dirigido por eventos).
Semántica:Implementación de interfaces.Programación orientada a eventos.
Programación de componentes:Implementación -> qué componentes se proporcionaConfiguración -> qué componentes se usan para proporcionar la interfaz a un componente.
APLICACIÓN = COMPONENTE 1 + COMPONENTE 2 + COMPONENTE 3 + …
Estructura de un Estructura de un componentecomponente
LógicamenteConfiguration
• En general vacía. Sólo contendrá algo si se pretende crear un componente no mediante su implementación directa (en Module) sino ensamblando otros componentes ya creados.
Implementation• Define las conexiones que hay entre los diferentes componentes
que usa la aplicación.
Module• Contiene la implementación del comportamiento del componente.
Físicamente (2 Ficheros)Configuración e Implementación (miaplicacion.nc).Módulos (miaplicacionM.nc).Se pueden incluir librerías (.h)
Ejemplo de un Ejemplo de un componentecomponente