TESI DI LAUREA PRESSO ELCON ELETTRONICA UNIVERSITÁ DEGLI STUDI DI TRIESTE DIPARTIMENTO DI INGEGNERIA E ARCHITETTURA CORSO DI LAUREA TRIENNALE IN ELETTRONICA CURRICULUM TELECOMUNICAZIONE PROTOCOLLO DI COMUNICAZIONE E ALGORITMO DI ROUTING PER UNA RETE DI SENSORI WIRELESS CON APPLICAZIONI MEDICHE TESI DI LAUREA PRESSO ELCON ELETTRONICA Relatore: Prof. Sergio Carrato Correlatore: Sr.Luaciano Generali Laureando: Benedito osvaldo Xona Anno Academico 2011-2012
Obiettivi ed applicazioni Obiettivo Realizzazione di un protocollo di comunicazione di un algoritmo di routing per WSN Non standard e proprietario Applicazione Mediche
Requisiti necessari Ridotte dimensioni Basso consumo energetico Basso costo Utilizzo di bande non Lincenziate Scalabilità, Flessibilità Certeza dato ricevuto
WSN e le tecnologie di comunicazione 802.11/Wi-fi 802.15.1/Bluetooth 802.15.4/Zigbee Copertura(single-hop) 100m 10m 10-100m Troughput(Mbps) 2-30 1-2 0.25 Consumo energetico Medio Basso Molto basso Autonomia Minuti/ore Diverse ore/giorni Giorni /anni Bit Rate 2.1Mbit/s 11/54Mbit/s 250Kbit/s Sicurezza Bassa Media Alta Costo Alto Dimensione Medie Piccole Molto piccole
Topologie di Rete Rete a Stella Rete Mesh Rete ad Albero
La nostra applicazione Useremo la topologia di tipo Mesh/Albero I nodi sono suddivisi in Capo Maglia (Nodo Base) Nodi Interni Nodi di Frontiera Nodi Mobili
Formato dei pacchetti Ogni tecnologia di rete ha un proprio formato per i messaggi In ogni caso, un messaggio contiene: Dati utili Informazione di controllo SRC [2] DST TYPE [5] RSSI [1] SYNCH HOP LP IndNd [4] PAYLOAD [127] CRC
Struttura dei Frame Il protocollo definisce 4 tipi di frame: Frame di Faro Generato dal coordinatore della rete per trasmettere il segnale di faro ai nodi L’indirizzo DST è in Broadcast SRC DST FR RSSI LP CRC
Struttura dei Frame Frame di Acknowledgment generato dal capo maglia e dai nodi una volta ricevuto un paccheto. I nodi memorizzano una coppia dei vari pacchetti ricevuti e la rimuovono soltanto dopo aver ricevuto l’ACK. ACK può assumere il valore 1 o 0 SRC DST ACK RSSI HOP LP IndNd CRC
Struttura dei Frame Frame dei Dati Genetaro dai nodi ogni volta che devono trasmettere i dati rilevati. SRC DST DATA RSSI SYNCH HOP LP IndNd PAYLOAD CRC
Struttura dei Frame Frame di controllo generato dai nodi al primo inserimento in rete, ogni volta che vuole comunicare con altri nodi Nel campo DST l’indirizzo è in Broadcast SRC DST BROAD RSSI LP PAYLOAD CRC
Nodo Sensore Sensore MCU Ricetrasmettitore Memoria Alimentazione
Schema Elettrico
R8C/27 e CC2520 R8C/27 Elevata velocità di elaborazione(20MHz di clock interno) Consumo energetico Typ. 10 mA (VCC = 5.0 V, f(XIN) = 20 MHz) Typ. 6 mA (VCC = 3.0 V, f(XIN) = 10 MHz) Typ. 2.0 µA (VCC = 3.0 V, wait mode (f(XCIN) = 32 kHz) Typ. 0.7 µA (VCC = 3.0 V, stop mode) Tensione variabile 3.0-5.5 V
R8C/27 e CC2520 CC2520 Permette comunicazione in banda ISM che va da 2400 a 2483,3 MHz Bassa tensione che varia da 1,8 a 3,8 V Bit rate 250 Kbit/s Modilazione DSSS Ridotto consumo energetico RX: 18 Ma, TX: 33 mA e sleep mode 1uA Potenza di trasmissione programmabile in 32 livelli Elevata sensibilità in ricezione(-98dBm)
R8C/27 e CC2520 Ha dei tempi di accensione molto veloci Insieme di Hardware per Gestione e trattamento dei frame dati Crittografia dei dati e autenticazione(AES) Disponibilità del canale(CCA) Indicazione qualità collegamento(RSSI/LQI) Gestire frame ACK e tempo d’attesa
Algoritmo di Routing
Inizializzazione di un Nodo Sensore
Nodo in trasmissione Prenota il canale Controlla se è un nodo interno Se NdX=NdInt; Regola PALL, e comunica con il CM Attende l’ack Qualora non è un nodo interno Trasmette il frame di controllo ed attende l’Ack di conferma Se il N°risp<1 riprova incrementando PALL=PALL+3 Se il N°risp>=1, legge l’RSSI dei vari nodi
Nodo in trasmissione Se RSSI<50% ritrasmette incrementando PALL Se RSSI>=50% seleziona i nodi Controlla il campo SYNCH Se SYNCH=1 , comunica con il NdF Attende l’Ack Se SYNCH=0, comunica con i nodi selezionati cioè NdE Se entro Dmax l’Ack non arriva ritrasmette il pacchetto
Nodi in ricezione Quando un nodo riceve un frame controlla il campo type. Se Type=Data, ritrasmette il messaggio Se Type=FR; trasmette l’Ack al CM Se Type=ACK, controlla il campo IndNd Se IndNdDST=DST&&HOP=0; controlla Ack Se Ack=1 ok; Se Ack=0 non ok; ritrasmette il pacchetto. Se non verificata IndNdDST=DST&&HOP=0 Controlla in memoria l’indirizzo del NextNd Ritrasmette a quest’ultimo e cancella frame Se Type=BROAD Legge RSSI Regola PALL e invia l’Ack
Timer Dopo le operazioni elencate il nodo controlla: se ci sono portanti in zona oppure altre operazioni da eseguire Se si esegue le oprazioni necessarie Se non ci sono attiva il timer Entra in standy-by e attende TO=3TFR Dopo TO si sveglia e trasmette un frame Broad
Durata Nodo Senza il Timer Con il Timer, MCU+ RADIO ON in TX (-18dBm) ; consumo corrente = 22,2 mA. Batteria di 3000mAh; Durata del nodo= 135 ore Con il Timer, Durata del nodo≈3778 ore
Capo Maglia in Tramissione
Capo Maglia in Ricezione
Grazie per l’attenzione