Aplicacin Surge - PowerPoint PPT Presentation

1 / 12
About This Presentation
Title:

Aplicacin Surge

Description:

Aplicaci n de ejemplo, que usa enrutamiento MultiHop Ad-hoc ... Necesario para la compilaci n de la aplicaci n, que es ocupado en el momento de ejecutar make. ... – PowerPoint PPT presentation

Number of Views:72
Avg rating:3.0/5.0
Slides: 13
Provided by: josullo
Category:

less

Transcript and Presenter's Notes

Title: Aplicacin Surge


1
Aplicación Surge
  • José Ulloa Suárez

2
Introducción
  • Surge
  • Aplicación de ejemplo, que usa enrutamiento
    MultiHop Ad-hoc para enviar valor de temperatura
    adquirido con un sensor.
  • Versión ocupada
  • /opt/tinyos-1.x/contrib/ucb/apps/SurgeTelos

3
Archivos contenidos en el directorio de la
aplicación.
4
Ficheros Cabecera.
Surge.h
SurgeCmd.h
typedef struct SurgeCmdMsg uint16_t type
union // FOR SURGE_TYPE_SETRATE
uint32_t newrate // FOR SURGE_TYPE_FOCUS
uint16_t focusaddr args
SurgeCmdMsg enum AM_SURGECMDMSG 18
int INITIAL_TIMER_RATE 2048 int
FOCUS_TIMER_RATE 1000 int FOCUS_NOTME_TIMER_RAT
E 1000 enum SURGE_TYPE_SENSORREADING
0, SURGE_TYPE_ROOTBEACON 1,
SURGE_TYPE_SETRATE 2, SURGE_TYPE_SLEEP 3,
SURGE_TYPE_WAKEUP 4, SURGE_TYPE_FOCUS 5,
SURGE_TYPE_UNFOCUS 6 typedef struct
SurgeMsg uint16_t type uint16_t reading
uint16_t parentaddr uint32_t seq_no
SurgeMsg enum AM_SURGEMSG 17
5
Análisis de aplicación Surge.nc Relaciones
Componente - Interfaz
includes Surge includes SurgeCmd includes
MultiHop configuration Surge implementation
components Main , SurgeM
, TimerC , LedsC ,
DelugeC , DemoSensorC as Sensor
, RandomLFSR , GenericComm as
Comm , CC2420RadioC ,
LQIMultiHopRouter as multihopM
Main.StdControl -gt DelugeC Main.StdControl -gt
TimerC Main.StdControl -gt Comm
Main.StdControl -gt Sensor Main.StdControl -gt
multihopM.StdControl Main.StdControl -gt
SurgeM.StdControl SurgeM.ADC -gt Sensor
SurgeM.Timer -gt TimerC.Timerunique("Timer")
SurgeM.Leds -gt LedsC SurgeM.Random -gt
RandomLFSR SurgeM.CC2420Control -gt
CC2420RadioC.CC2420Control SurgeM.MacControl
-gt CC2420RadioC.MacControl SurgeM.RouteControl
-gt multihopM SurgeM.Send -gt multihopM.SendAM_S
URGEMSG multihopM.ReceiveMsgAM_SURGEMSG -gt
Comm.ReceiveMsgAM_SURGEMSG
6
SurgeM.nc
  • Código se divide en dos partes Modules y
    Implementation.
  • Modules
  • Interfaces que provee
  • Interfaces que usa.

provides interface StdControl
uses interface ADC interface Timer
interface Leds interface CC2420Control
interface MacControl interface Send
interface RouteControl interface Random
7
SurgeM.nc
  • Implementation
  • Código que implementa la aplicación.
  • Se puede dividir en
  • Declaración de variables a ocupar.
  • Inicialización
  • De variables.
  • Tareas.
  • De sección StdControl.
  • Implementación de Eventos por el uso de
    interfaces.

8
SurgeM.nc Inicialización
  • Funciones
  • Static void initialize()
  • Se asigna valores a las variables declaradas.
  • Task void SendData()
  • Se crea un puntero al tipo SurgMsg.
  • Este apunta a un buffer Tos_MSG, y se modifican
    valores de tipo,parentaddr,reading,y seq_no.
  • Finalmente se envía.

9
Continuación
  • Comandos StdControl
  • Init()
  • Llama a función initialize()
  • Start()
  • Configura la potencia de transmisión.
  • Habilita Ack.
  • Inicia un randomtimer
  • Retorna llamando al comando start de la interfaz
    Timer, pasando el parámetro randomtimer.
  • Stop()
  • Retorna con un llamado a comando stop de la
    interfaz Timer.

10
SurgeM.nc Eventos
  • Dado que nuestra aplicación usa las interfaces
    ADC, Timer y Send, es que debemos implementar los
    eventos que éstas generan.
  • Las otras interfaces no generan eventos.

11
SurgeM.ncEventos
  • Timer.fired()
  • Llama a comando getData de la interfaz ADC.
  • ADC.dataReady(uint16_t data)
  • Recibe en parámetro data el valor obtenido por el
    sensor y lo almacena en la variable global
    gSensorData.
  • En una sección atómica postea la tarea
    SendData()
  • Send.sendDone(Tos_MsgPtr pMsg, result_t success)
  • Apaga el Led Rojo que se encendio en la ejecución
    de SendData.

12
Conclusiones.
  • Gran parte de nuestras necesidades se cubren con
    esta aplicación.
  • Se ha logrado profundizar en el diseño y
    programación con nesc.
  • Se ha logrado un conocimiento de las distintas
    componentes para la arquitectura MSP430,
    específicamente la plataforma Telos.
  • Análisis completo se realiza en informe.
Write a Comment
User Comments (0)
About PowerShow.com