1 / 41

Tesi di laurea di: Daniele Alessandrelli

Implementazione di meccanismi real-time su sistemi distribuiti data-centrici realizzati con tecnologie di reti di sensori wireless. Tesi di laurea di: Daniele Alessandrelli. Tesi svolta presso il ReTiS lab della Scuola Superiore Sant’Anna Motivazione:

nedra
Download Presentation

Tesi di laurea di: Daniele Alessandrelli

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Implementazione di meccanismi real-timesu sistemi distribuiti data-centrici realizzaticon tecnologie di reti di sensori wireless Tesi di laurea di: Daniele Alessandrelli

  2. Tesi svolta presso il ReTiSlabdella Scuola Superiore Sant’Anna • Motivazione: • permettere lo sviluppo di applicazioni perWSN dotate di supporto real-time: • permetterà l’uso delle WSN in applicazioni industriali, per la sicurezza, ecc. • finora l’accento è stato posto su altri aspetti come il risparmio energetico e l’auto-configurabilità della rete. • Obiettivo: • Progettare ed implementare un middleware data-centrico per WSN dotato di caratteristiche real-time

  3. Introduzione

  4. Wireless Sensor Network • Insieme di nodi • autonomi (generalmente alimentati a batteria) • che effettuano misurazioni di grandezze fisiche sull’ambiente • che collaborano tra loro comunicando in maniera wireless • I nodi sono sistemi embedded dotati di • funzionalità di rete • strumenti di misurazione • un certa capacità computazionale

  5. Caratteristiche di un nodo • Un nodo è equipaggiato con: • un micro-controllore (MCU); • uno o più sensori; • una radio; • una sorgente di energia (generalmente batterie). • Componenti opzionali: • moduli per la raccolta di energia • ASIC supplementari; • dispositivi supplementari di comunicazione (RS-232, USB, ecc.). • I principali vincoli sono: • ridotta capacità computazionale; • scarsità di memoria; • network bandwidth; • consumo energetico Sensor 1 Sensor 2 Radio MCU Power supply

  6. Wireless Sensor Network • Peculiarità delle WSN • flessibilità • pervasività • costo ridotto • Applicazioni: • militari • ambientali • medico-sanitarie • domestiche • industriali e commerciali

  7. LO STANDARD IEEE 802.15.4 • Velocità massima 250 kb/s = 62.5 ksym/s@ 2.4GHz (codifica 16-aria , 1sym = 4 bits); • Struttura a superframe (beacon-enabled, 16 slot): • Periodo inattivo • Periodo attivo • CAP (Contention Access Period) slotted CSMA-CA • CFP (Contention Free Period) GTS (max 7) Traffico real-time

  8. Open research topics • Sfide: • efficienza energetica (massimizzare l’autonomia del nodo) • gestione della topologia • data management (estrazione dell’informazione necessaria) • code management (riprogrammazione dei nodi) • auto-configurazione della rete • architettura software del nodo (definizione dei servizi di sistema)

  9. Middleware per WSN • Motivazione: • ridurre la difficoltà di progettazione ed implementazione di un’applicazione per WSN • Un middleware astrae la WSN nascondendo la complessità dei singoli nodi e fornendone una visione olistica. • Classificazione middleware per WSN • classici (gestione della comunicazione) • data-centrici (astrazione come DB) • virtual-machine (esecuzione di script sui nodi) • adaptivemiddleware (adattamento alla specifica applicazione)

  10. Sistema real-time • la correttezza di funzionamento dipende • dalla validità dei risultati (come nei sistemi normali) • dal tempo in cui sonoprodotti • le attività (task) di un sistema real-time hanno una deadline che va rispettata • Caratteristica fondamentale: predicibilità • capacità di determinare in anticipo se uno o più task termineranno entro la proprie deadline

  11. Progettazione

  12. Descrizione generale • Permettere all’utente di interfacciarsi alla WSN secondo l’approccio per le Basi di Dati per estrarre informazioni sulla misura di variabili distribuite • Sensoristica eterogenea

  13. Requisiti Funzionali • Query snapshot e periodiche • di tipo semplice • con funzioni aggregative di tipo statistico • eventualmente con restrizioni (confronti con valori di soglia parametrici)

  14. Requisiti non funzionali • Real-time • Trasparenza e data-centrismo • In-network processing • Adattabilità alla specifica applicazione • Efficienza energetica • Robustezza • Estendibilità • Supporto multipiattaforma • Scalabilità • Eterogeneità hardware • Concorrenza con altri applicativi distribuiti • Attinenza al protocollo di comunicazione IEEE 802.15.4

  15. Requisiti real-time nel dettaglio • Relativi alle query periodiche • la periodicità deve essere rispettata • l’esecuzione deve terminare entro l’inizio del prossimo periodo (D = T) • se non è possibile soddisfare tali requisiti la query va rifiutata (test di accettazione) • Relativi alle query snaphost (o aperiodiche) • devono essere schedulati, ma senza interferire con le periodiche • no starvation • ma non è prevista una deadline

  16. Ambiente di sviluppo

  17. Software ERIKA Enterprise • OSEK-like RTOS per sistemi embedded minimali • 1-4 Kb ROM footprint • avanzatialgoritmidi scheduling (EDF con SRP) • GNU/GPL withLinkingException μWireless • implementazionedello standard IEEE 802.15.4 • GNU/GPL withLinkingException RT-Druid • Configurazionedi ERIKA tramite OSEK OIL • integrated in eclipse.org

  18. Erika Enterprise Piattaforme supportate Attualmente disponibile come prodotto per: • Microchip dsPIC • AVR • Altera NIOS II • con supporto multi-core! Disponibile anche per: • ARM7TDMI (Samsung KS32C50100, Triscend A7, ST Janus, ST STA2051) • Tricore 1 • PPC 5xx (PPC 566EVB) • Hitachi H8 (RCX/Lego Mindstorms) • C167/ST10 (Ertec EVA 167, tiny/large mem. model)

  19. Erika Enterprise - Funzionalità • Preemptive fixed priority (OSEK) multithreading • Scheduler EDF con SRP • Implementazione multi-core dello scheduling a prioritàfissa e con EDF (MSRP) • Immediate Priority Ceiling to avoid priority inversion • Risorsecondivise • Algoritmidiottimizzazionedello stack • Condivisionedello stack con sogliedi preemption (SRP) per ridurrel’usodi RAM • Allarmiperidici • Footprint ridotto (ROM) • Ridottirequisitidimemoria (RAM) • Ridotto tempo diesecuzionedelle primitive (gestione IRQ, scheduling, context switching, ecc.)

  20. Eclipse + RT-Druid Editor Projects Output

  21. Hardware • Flex base board • Flex demo board • Microchip ICD2 programmer/debugger • CC2420EM Packet Sniffer

  22. Progettazione

  23. Progettazione del funzionamento real-time • Problema: • serve un meccanismo di diffusione della query che sia predicibile • Soluzione: • topologia stella • Il coordinator • tiene informazioni sui device • invia la query ai device (nel beacon payload) • disciplina la comunicazione assegnando GTS • riceve le risposte dai device (che rispondono utilizzando i GTS assegnati)

  24. Esempio di comunicazione In questo modo la query ha un tempo di esecuzione: noto a priori multiplo del tempo di beacon

  25. Schedulazione real-time • La banda è paragonabile ad una CPU • il tempo di clock è il tempo di beacon  una query è paragonabile ad un task • Si utilizzano le tecniche di schedulazione utilizzate per i task • Periodici schedulati con EDF • Aperiodici serviti da un TBS • Test di accettazione su periodici (test di schedulabilità di EDF+TBS)

  26. Earliest Deadline First • Prevede che ogni task abbia una deadline • Garantisce che in ogni istante il task in esecuzione sia il task con deadline più imminente • preemptive

  27. Schedulazione aperiodici • Si utilizza un Total Bandwidth Server (TBS) • Assegna agli aperiodi una deadline nel seguente modo • È ora possibile schedulare gli aperiodici con EDF

  28. Architettura Architettura Logica Mapping su componenti HW

  29. Strutture dati

  30. Componenti Coordinator • Approccio modulare • estendibilità (posso aggiungere nuovi moduli) • flessibilità (posso sostituire singoli moduli)

  31. Implementazione

  32. Implementazione client PC (jMirtes) • Scritto in Java • supporto multipiattaforma • Uso di librerie open source • RXTX (GNU/LGPL) per comunicazione seriale • JSqlParser (GNU/LGPL) per parser SQL • E’ fondamentalmente una libreria • possibilità di integrazione in altre applicazioni • L’interfaccia testuale utilizza le API della libreria • ~2000 righe di codice

  33. Implementazione software coordinator e device Utilizzo del linguaggio C Uso della tecnica delle pseudo classi Problematica legata alla programmazione di swembedded (scarsa memoria, ridotta velocità di calcolo, assenza di filesystem, ecc.) ~4000 righe di codice

  34. Validazione sperimentale

  35. Test effettuati • Visualizzazione on-line di una query semplice su grandezza vettoriale (accelerazione) • Analisi del costo elettromagnetico delle query in funzione di condizioni di soglia • Analisi delle garanzia real-time

  36. Visualizzazione on-line di una query SELECT NODE_ID, ACC_X, ACC_Y, ACC_ZFROM ACCELERATIONEVERY 150 MS

  37. Scenario sperimentale usato per la misura degli aggregati

  38. Funzioni di aggregazioni e condizioni Costo elettromagnetico (numero di messaggi inviati) Valor medio dei valori rilevati SELECT COUNT(LUX), MIN(LUX), MAX(LUX), MEAN(LUX) FROM LUMINOSITY WHERE LUX > THR EVERY 100ms

  39. Test con solo carico periodico (senza controllo di garanzia)

  40. Test con carico aperiodico Andamento della latenza di transazione in funzione del tempo. Sovrapposta alla figura il numero di query aperiodiche accodate e completate nell’unità di tempo

  41. Conclusioni • MIRTES • middleware data-centrico sviluppato secondo le tecniche della software engineering; • completamente Open-Source; • basatosu un RTOS come ERIKA; • per astrarre una WSN come una base di dati con funzionalita in tempo reale; • in completa compliance con lo standard IEEE 802.15.4; • inter-operabile con un framework Open-Source (SCILAB/SCICOS) per la visualizzazione in linea dei dati recuperati dai sensori. ; • validato sperimentalmente facendo uso del package ROOT su dati serializzati sul disco di un PC. • Il ReTiS prevede di estendere le funzionalità di MIRTES al management del codice ed alla proattività rispetto alla notifica di eventi di rete. • Il progetto verrà inoltre pubblicizzato ed il codice distribuito su licenza LGPL attraverso il sito web di Evidence srl (www.evidence.eu.com)

More Related