ZigBee ja Bluetooth 1.2 ja niiden soveltuminen automaation käyttöön



Samankaltaiset tiedostot
Sisäilmaston mittaus hyödyntää langatonta anturiteknologiaa:

Kuva maailmasta Pakettiverkot (Luento 1)

Tietoliikenteen perusteet. Langaton linkki

Tietoliikenteen perusteet. Langaton linkki

OSI ja Protokollapino

» multiaccess channel» random access channel LAN (Ethernet) langaton. ongelma: käyttövuoron jakelu Yhteiskäyttöisen kanavan käyttö

4. MAC-alikerros. yleislähetys (broadcast) ongelma: käyttövuoron jakelu. » multiaccess channel» random access channel LAN (Ethernet) langaton

Tehtävä 2: Tietoliikenneprotokolla

Lyhyen kantaman radiotekniikat ja niiden soveltaminen teollisuusympäristössä. Langaton tiedonsiirto teollisuudessa, miksi?

ZIGBEE-STANDARDIN PROTOKOLLAPINO

LYHYEN KANTAMAN LANGATTOMAT SIIRTOTAVAT

5. Siirtoyhteyskerros linkkikerros (Data Link Layer)

Langattomat kenttäväylät rakennusautomaatiossa

5. Siirtoyhteyskerros linkkikerros (Data Link Layer) 5.1. Kaksipisteyhteydet. Kehysten kuljetus. Missä virhe hoidetaan? Virheet.

5. Siirtoyhteyskerros linkkikerros (Data Link Layer)

Tietoliikenteen perusteet. Langaton linkki. Kurose, Ross: Ch 6.1, 6.2, 6.3. (ei: 6.2.1, ja 6.3.5)

Protokollien yleiset toiminnot

Älypuhelinverkkojen 5G. Otto Reinikainen & Hermanni Rautiainen

Langaton linkki. Langaton verkko. Tietoliikenteen perusteet. Sisältö. Linkkikerros. Langattoman verkon komponentit. Langattoman linkin ominaisuuksia

VERKONMUODOSTUS JA -HALLINTA IEEE STANDARDIIN PERUSTUVASSA SENSORIVERKOSSA

OSI malli. S Tietoliikenneverkot S Luento 2: L1, L2 ja L3 toiminteet

Internet Protocol version 6. IPv6

S Tietoliikennetekniikan perusteet. Piirikytkentäinen evoluutio. Annukka Kiiski

Siltojen haitat. Yleisesti edut selvästi suuremmat kuin haitat 2/19/ Kytkin (switch) Erittäin suorituskykyisiä, moniporttisia siltoja

Tietoliikenteen perusteet. Langaton linkki. Kurose, Ross: Ch 6.1, 6.2, 6.3. (ei: 6.2.1, ja 6.3.5) Tietoliikenteen perusteet /2011 1

S Teletekniikan perusteet

DownLink Shared Channel in the 3 rd Generation Base Station

Tietoliikenne II (2 ov)

ZIGBEE STANDARDIN TOIMINTA JA PERIAATTEET

Tietoliikenne II (2 ov)

Tietoliikenteen perusteet. Langaton linkki. Kurose, Ross: Ch 6.1, 6.2, 6.3. (ei: 6.2.1, ja 6.3.5)

Langattoman verkon spektrianalyysi

Tietoliikenteen perusteet. Langaton linkki. Kurose, Ross: Ch 6.1, 6.2, 6.3. (ei: 6.2.1, ja 6.3.5) Tietoliikenteen perusteet /2010 1

Siltojen haitat Yleisesti edut selvästi suuremmat kuin haitat

Vaatimusmäärittely Ohjelma-ajanvälitys komponentti

S Tietoliikennetekniikan perusteet. Pakettikytkentäiset verkot. Helsinki University of Technology Networking Laboratory

6. Erilaisia verkkoja. LAN, MAN ja WAN

TURVAVÄYLÄSEMINAARI. Erilaiset kenttäväylät ja niiden kehitys Jukka Hiltunen

6. Erilaisia verkkoja

BACnet protokolla kiinteistöautomaatiossa

ELEC-C7241 Tietokoneverkot Kuljetuskerros

Kangasvieri J. (2005) Virransäästömenetelmät langattomassa sensoriverkossa. Oulun yliopisto, sähkö- ja tietotekniikan osasto. Diplomityö, 68 s.

mikä sen merkitys on liikkuvalle ammattilaiselle?

Tutkintotyö. Joni Jokipii. ZigBee-lähetin. TAMPEREEN AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma Tietoliikennetekniikka

Tietokone. Tietokone ja ylläpito. Tietokone. Tietokone. Tietokone. Tietokone

FiSMA 1.1 Toiminnallisen laajuuden mittausmenetelmä Ohje monikerrosarkkitehtuurin mittaamiseen

TAMPEREEN AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma Tietoliikennetekniikan suuntautumisvaihtoehto. Opinnäytetyö.

Opus SMS tekstiviestipalvelu

Tekninen Tuki. Access Point asennusohje

3. Kuljetuskerros 3.1. Kuljetuspalvelu

TEKNILLINEN KORKEAKOULU Elektroniikan, tietoliikenteen ja automaation tiedekunta ZIGBEE-TEKNOLOGIA JA SEN OPPILAITOSKÄYTTÖÖN TÄHTÄÄVÄT SOVELLUKSET

Tietoliikenteen perusteet

Carlink langaton autojen välinen tietoverkko

TIES530 TIES530. Moniprosessorijärjestelmät. Moniprosessorijärjestelmät. Miksi moniprosessorijärjestelmä?

Internet ja tietoverkot 2015 Harjoitus 7: Kertaus

AirPrint-opas. Tämä käyttöopas koskee seuraavia malleja:

TW- EAV510 ketjutustoiminto (WDS): Kaksi TW- EAV510 laitetta

Liikkuvuudenhallinta Mobile IP versio 6 - protokollalla

Tikon ostolaskujen käsittely

LYHYEN KANTAMAN LANGATTOMAT SIIRTOTAVAT

Tikon ostolaskujen käsittely

Matkapuhelinverkot, 3g lisämateriaali

Monimutkaisempi stop and wait -protokolla

Luennon sisältö. Protokolla eli yhteyskäytäntö (1) Verkon topologia

1 Määrittele seuraavat langattoman tiedonsiirron käsitteet.

S Tietoliikennetekniikan perusteet. Piirikytkentäinen evoluutio

Laundry Center. Radiotaajuuslinkki pesukoneen ja kuivausrummun välillä

Internet ja tietoverkot 2015 Harjoitus 5: (ISO/OSI-malli: Verkkokerros, TCP/IP-malli: internet-kerros)

Connection Manager -käyttöohje

Kanavan kuuntelu. Yleislähetysprotokollia ALOHA. CSMA (Carrier Sense Multiple Access) Viipaloitu ALOHA. Lähetyskanavan kuuntelu (carrier sense)

Langattoman kotiverkon mahdollisuudet

TW- EAV510 v2: WDS- TOIMINTO TW- EAV510 V2 LAITTEEN ja TW- LTE REITITTIMEN VÄLILLÄ. Oletus konfiguroinnissa on, että laitteet ovat tehdasasetuksilla

Vuonohjaus: ikkunamekanismi

Turvaa langattomat laitteesi ja verkkosi. Harri Koskinen Rossum Oy

Onko tekniikasta apua?

HOW-TO: Kuinka saan yhdistettyä kaksi tulospalvelukonetta keskenään verkkoon? [Windows XP]

Pertti Pennanen DOKUMENTTI 1 (5) EDUPOLI ICTPro

3. Kuljetuskerros 3.1. Kuljetuspalvelu

Bluetooth-kirjautumismenetelmiä InSitu-järjestelmässä

Chapter 5 Link Layer and LANs

Lasse Mäkelä HALLAVAROITTIMEN ANTUROINTI

Liittymät Euroclear Finlandin järjestelmiin, tietoliikenne ja osapuolen järjestelmät Toimitusjohtajan päätös

Digitaalitekniikan matematiikka Luku 13 Sivu 1 (10) Virheen havaitseminen ja korjaus

Langaton Tampere yrityskäyttäjän asetukset

Lisää reititystä. Tietokoneverkot 2009 (4 op) Syksy Futurice Oy. Lisää reititystä. Jaakko Kangasharju

Lisää reititystä. Tietokoneverkot 2008 (4 op) Syksy Teknillinen korkeakoulu. Lisää reititystä. Jaakko Kangasharju

TVP 2003 kevätkurssi. Kertaus Otto Alhava

KEMI-TORNIONLAAKSON KOULUTUSKUNTAYHTYMÄ LAPPIA LANGATON VIERAILIJAVERKKO 2(7) VERKKOYHTEYDEN MÄÄRITTELY WINDOWS XP:LLE (WINDOWS XP SP3)

CD-ROM-levy (sisältää ajurit, käsikirjan ja takuutodistuksen) Jos pakkauksesta puuttuu jokin yllämainituista, ota yhteys jälleenmyyjääsi.

Langaton tiedonsiirto sähkökoneen roottorilta sijaitsevalta anturoinnilta

TIETOKONE JA TIETOVERKOT TYÖVÄLINEENÄ

Palomuurit. Palomuuri. Teoriaa. Pakettitason palomuuri. Sovellustason palomuuri

S Havaitseminen ja toiminta

1.4. Tietoliikenneohjelmistot eli protokollat

1.4. Tietoliikenneohjelmistot eli protokollat

1.4. Tietoliikenneohjelmistot eli protokollat. Protokollien kerrosrakenne. Mitä monimutkaisuutta?

IPTV:n asettamat vaatimukset verkolle ja palvelun toteutus. Lauri Suleva TI07 Opinnäytetyö 2011

Kuljetuskerros. Tietokoneverkot. Matti Siekkinen Pasi Sarolahti

Transkriptio:

Hajautettujen automaatiojärjestelmien sovellukset HAS projekti ZigBee ja Bluetooth 1.2 ja niiden soveltuminen automaation käyttöön Risto Silvola

2/56 SISÄLLYSLUETTELO Lyhenteet...3 1 Johdanto...5 2 Automaation vaatimukset langattomalta tiedonsiirtotekniikalta...6 3 ZigBee...8 3.1 ZigBee Allianssi...9 3.2 IEEE 802.15.4...9 3.2.1 Low Rate Wireless Personal Area Network...9 3.2.2 WPAN verkon komponentit...10 3.2.3 Verkkotopologiat...11 3.2.4 Arkkitehtuuri...12 3.2.5 Fyysinen kerros...13 3.2.6 MAC - kerros...16 3.2.7 Superframe-rakenne...17 3.2.8 Datan lähetys...18 3.2.9 Käytetyt kehysrakenteet...21 3.3 Ylemmät kerrokset...23 3.3.1 Verkkokerros...23 3.3.2 Sovelluskerros...25 3.3.3 Verkkoliikenne...26 3.4 ZigBee ja automaatio...27 3.4.1 Luotettavuus...27 3.4.2 Yksinkertaisuus ja sen tuomat edut...30 3.4.3 Energiankulutus...32 3.4.4 Unesta herääminen ja verkkoon liittyminen...33 3.4.5 Reaaliaikaominaisuudet...35 3.4.6 Langattomuus...37 3.4.7 Tietoturvallisuus...38 3.4.8 Sovelluksista...42 3.5 Yhteenveto...43 4 Bluetooth 1.2...44 4.1 Uudet ominaisuudet...45 4.1.1 Spesifikaation yleisilme...45 4.1.2 Adaptive Frequency Hopping...45 4.1.3 Extended SCO...49 4.1.4 Nopeutunut yhteydenmuodostus...51 4.1.5 Muita uusia ominaisuuksia...52 4.2 Yhteenveto...53 Lähdeluettelo...54

3/56 Lyhenteet ACK Acknowledgement ACL Access Control List ACL Asynchronous Connectionless ACL Asynchronous Connection Oriented (Bluetooth spec 1.2) AES Advanced Encryption Standard AFH Adaptive Frequency Hopping AP Access Point APS Application Support ARQ Automatic Repeat Request BPSK Binary Phase Shift Keying BT Bluetooth CAP Contention Access Period CCA Clear Channel Assessment CFP Contention Free Period CRC Cyclic Redundancy Check CSMA/CA Carrier Sense Multiple Access / Collision Avoidance CSMA/CD Carrier Sense Multiple Access / Collision Detection DSSS Direct Sequence Spread Spectrum ED Energy Detection esco extended Synchronous Connection Oriented FCS Frame Check Sequence FEC Forward Error Correction FFD Full Function Device FHSS Frequency Hopping Spread Spectrum GSM Global System for Mobile Communications GTS Guaranteed Time Slot IEEE Institute of Electrical and Electronics Engineers ISM Industrial Scientific Medical ISO International Standardization Organisation ITU-T International Telecommunications Union - Telecommunication Standardization L2CAP Logical Link Control and Adaptation Protocol LLC Logical Link Control LQI Link Quality Indication LR-WPAN Low Rate Wireless Personal Area Network M2M Machine to machine MAC Media Access Control MAC PIB MAC PAN Information Base

4/56 MCPS MIC MLME MPDU NAK O-QPSK OSI PAN PDU PER PHY PHY PIB PLME POS PPDU QOS RFD RFID RSSI SAP SCO SDU SIG SIR SNR SSCS USD UWB WLAN ZDO MAC Common Part Sublayer Message Integrity Code MAC Layer Management Entity MAC Protocol Data Unit Negative Acknowledgement Offset Quadrature Phase-Shift Keying Open Systems Interconnection Personal Area Network Protocol Data Unit Packet Error Rate Physical Layer Physical PAN Information Base Physical Layer Management Entity Personal Operating Space Physical Protocol Data Unit Quality of Service Reduced Function Device Radio Frequency Identification Received Signal Strength Indication Service Access Point Synchronous Connection Oriented Service Data Unit Special Interest Group Signal-to-Interference Ratio Signal-to-Noise Ratio Service Specific Convergence Sublayer US Dollar Ultrawideband Wireless Local Area Network ZigBee Device Object

5/56 1 Johdanto Tämän tutkielman tarkoituksena on perehtyä kahteen lyhyen kantaman langattomien verkkojen (Wireless Personal Area Network) tekniikkaan ZigBee ja Bluetooth 1.2 ja pyrkiä selvittämään niiden soveltuvuus automaation käyttöön. Ennen kaikkea halutaan tutkia, mitä ominaisuuksia kyseisillä tekniikoilla on, jotka edesauttaisivat tai toisaalta haittaisivat niiden käyttöä erilaisissa langattomissa automaatiosovelluksissa. Lisäksi pohditaan mitä ja millaisia tällaiset sovellukset voisivat olla. Automaation asettamia yleisiä vaatimuksia langattomalle tiedonsiirrolle on käsitelty luvussa 2. Luvussa 3 tarkastellaan ZigBeetä. Aluksi käydään läpi ZigBeen fyysisen ja siirtoyhteyskerroksen pohjana oleva standardi IEEE 802.15.4. Tämän jälkeen katsotaan viela keskeneräisen ZigBeen protokollapinon toimintaa ja rakennetta. Lopuksi luvussa 4 tehdään lyhyt katsaus Bluetoothin uuteen spesifikaatioon 1.2. Bluetoothin osalta tässä tutkielmassa keskitytään ainoastaan spesifikaation uusimman ja vanhempien versioiden erojen selvittämiseen.

6/56 2 Automaation vaatimukset langattomalta tiedonsiirtotekniikalta Minkälaisia vaatimuksia automaatio asettaa tiedonsiirtotekniikalle riippuu hyvin pitkälle siitä, minkälaisesta sovelluksesta kulloinkin on kysymys. Joissakin sovelluksissa ehdottoman luotettava tiedonsiirto on välttämätöntä, kun taas jotkin sovellukset eivät välitä edes yksittäisten pakettien hukkumisesta, mutta puolestaan haluavat pakettien läpimenolle mahdollisimman pienen viiveen ja viiveenvaihtelun. Sovelluskohtaisesta riippuvuudesta huolimatta voidaan automaation vaatimuksia yrittää tarkastella yleisellä tasolla, näin on myös tässä kappaleessa ja jäljempänä muualla tässä raportissa pyritty tekemään. William Stallings esittää Data and Computer Communications [15] -kirjassaan listan niistä vaatimuksista, jotka kaikille lähiverkoille asetettujen vaatimusten lisäksi erityisesti langattomille lähiverkoille asetetaan. Stallingsin lista on jo sinällään hyvä, olipa kyse minkälaisesta langattomasta tiedonsiirrosta tahansa. Erityisesti automaation kannalta ajatellen täytyy tuota ominaisuuksien joukkoa kuitenkin täydentää, jotta mitä erilaisimpien automaatiosovellusten tarpeet tulisivat huomioiduksi. Seuraavassa onkin Stallingsin listaa osittain pohjana käyttäen, ja sitä täydentäen, koottu yhteen näitä automaation kannalta tärkeitä ominaisuuksia. Huomattava on, että kyseinen lista on siis yleistys ja vain yksi mielipide asiasta, eli se ei tarkoita sitä, että kaikki automaatiosovellukset tarvitsisivat toimiakseen kaikkia listan ominaisuuksia jne. lähetysten ja verkon tietoturvallisuus vähintään pakettien hyötykuorma tulisi tarpeen tullen voida salata ja estää näin verkkoliikenteen salakuuntelu ja muuntaminen tuki pääsynvalvontalistoille lähetysten luotettavuus lähetysten tulisi olla luotettavia meluisassakin ympäristössä ja muiden langattomien verkkojen häirinnästä/läsnäolosta huolimatta reaaliaikaominaisuudet pientä latenssia vaativille sovelluksille pitäisi pystyä takaamaan varmaa lähetysaikaa yhteisestä mediasta

7/56 toimintasäde kuinka kaukana lähettävästä laitteesta voi signaalin vielä havaita ja vastaanottaa oikein solmujen lukumäärä osoiteavaruuden tarvitsee olla riittävän laaja, jotta samaan verkkoon voi liittyä vähintään satoja jopa tuhansia laitteita energiankulutus langattomat päätelaitteet toimivat tavallisimmin pattereilla tai akulla, joten pieni energiankulutus on tarpeen dynaaminen konfigurointi päätelaitteiden liittyminen ja poistaminen verkosta tulisi tapahtua automaattisesti ja dynaamisesti kytkentäaika verkkoon liittyminen ja mahdollisesta virransäästötilasta aktiiviseksi palaaminen tulee olla nopeaa lisenssivapaa taajuuskaista automaatiosovellusten ja yleensäkin langattomien tekniikoiden käyttäjien kannalta on huomattavasti helpompaa, jos laitteet toimivat lisenssivapaalla taajuudella ja taajuuden käyttöä varten ei tarvitse erikseen hakea lupaa

8/56 3 ZigBee On olemassa useita langattomia verkkotekniikoita määritteleviä standardeja, kuten Bluetooth ja WLAN/IEEE 802.11, jotka ovat suunnattu esim. äänen, videon, PClähiverkkojen jne. tiedonsiirtoon. Tästä huolimatta on tähän mennessä puuttunut langattoman verkon standardi, joka olisi kohdistettu laitteille, jotka eivät tarvitse niinkään suurta kaistanleveyttä vaan ennen kaikkea pientä reaktioaikaa ja erittäin pientä virrankulutusta. Tällaisia laitteita ovat esim. anturit ja säätimet. Lisäksi on jo olemassa joukko eri yritysten suunnittelemia sovelluskohtaisia langattomia järjestelmiä, jotka ratkaisevat kyllä yksittäisiä ongelmia, mutta eivät yhteisen standardin puuttuessa ole keskenään yhteensopivia. Näissäkään sovelluksissa ei usein tarvita suurta tiedonsiirtonopeutta vaan vaatimuksena on enemmänkin halpa hinta ja pieni virrankulutus. Ratkaisuksi tähän ongelmaan on kehitetty ZigBee. Se on IEEE:n (Institute of Electrical and Electronics Engineers) 802.15.4-standardiin pohjautuva lyhyen kantaman langattomien verkkojen tekniikka, jonka ominaisuuksia ovat mm. pieni datansiirtonopeus, pieni energiankulutus, turvallisuus ja luotettavuus. ZigBeen määrittely ei ole vielä täysin valmis, mutta jo nyt ZigBee-siruille ennustetaan huimia myyntilukuja lähitulevaisuudessa.

9/56 3.1 ZigBee Allianssi ZigBeen protokollapino voidaan kuvata kerroksittaisena OSI-referenssimallin mukaisesti (Kuva 1). Sen kaksi alinta kerrosta, eli fyysinen (PHY) ja MediaAccessControl (MAC), pohjautuvat IEEE:n 802.15.4-standardiin. Niiden yläpuolella olevat kerrokset määrittelee ZigBee Alliance, joka on teollisuuden yrityksistä, käyttäjistä jne. koottu, voittoa tavoittelematon organisaatio. ZigBee Alliance vastaa ZigBeen kehittämisestä ja testaamisesta, ja Alliance onkin työskennellyt koko kehitystyön ajan tiiviissä yhteistyössä IEEE:n kanssa taatakseen alempien ja ylempien kerrosten täydellisen yhteensopivuuden. [9][19][20] Kuva 1. ZigBeen protokollapino sekä IEEE:n ja ZigBee Allianssin roolit ZigBeen kehitystyössä [6] 3.2 IEEE 802.15.4 3.2.1 Low Rate Wireless Personal Area Network Kuten edellä tuli jo ilmi, ZigBeen perustana on IEEE:n standardi 802.15.4. Standardi julkaistiin toukokuussa 2003, ja se määrittelee protokollan ja radiotietä datan siirtotienä käyttävien laitteiden välisen kommunikoinnin, joka tapahtuu suhteellisen pienillä välimatkoilla. Toisella tapaa ilmaistuna 802.15.4 on vain osa suurempaa IEEE:n standardikokonaisuutta, ja juuri tämä kyseinen osa standardia sisältää spesifikaation fyysiselle ja MAC-kerrokselle pieninopeuksisissa langattomissa PAN-verkoissa (Low Rate Wireless Personal Area Network).

10/56 LR-WPAN on yksinkertainen kommunikointiverkko, joka mahdollistaa langattoman liittymisen sellaisillekin sovelluksille, jotka toimivat pienellä energian lähteellä esim. pattereilla, ja tästä huolimatta laitteiden oletetaan olevan toimintavalmiita kerrallaan vähintään useita kuukausia. Muista WPAN-standardiperheen verkoista LR-WPAN eroaa siten, että sen peittoalue saattaa ulottua myös POS:n (Personal Operating Space) ulkopuolelle. Muita LR-WPAN verkkojen ominaisuuksia ovat mm. luotettava tiedonsiirto, joka taataan jatkuvilla kuittauksilla, sekä kohtuullisessa määrin toteutettu tietoturvallisuus. [16] 3.2.2 WPAN verkon komponentit IEEE 802.15.4-standardin mukaisessa järjestelmässä on useita erilaisia komponentteja, joista yleisimpiä ovat luonnollisesti päätelaitteet. Fyysisesti laitteita on järjestelmän kokonaishinnan minimoimiseksi määritelty kahta eri tyyppiä, Full Function Device (FFD) ja Reduced Function Device (RFD). Ensimmäinen laite hyödyntää kaikki standardin mahdollistamat toiminnallisuudet ja tehtävät, jälkimmäinen vain osan niistä ja on siten edullisempi valmistaa. Jokaisessa IEEE 802.15.4-standardin mukaisessa verkossa tulee olla vähintään yksi FFD, joka toimii verkon koordinaattorina eli verkon toiminnan ohjaajana ja keskuksena. Muut laitteet voivat olla RFD:itä, jolloin kokonaisjärjestelmästä saadaan edullisempi. Seuraavassa on kuvailtu molempia laitetyyppejä. [16] Full Function Device (FFD) voi toimia kaikissa verkkotopologioissa kykenee toimimaan verkon (PAN) koordinaattorina voi keskustella kaikkien muiden laitteiden kanssa Reduced Function Device (RFD) rajoitettu tähtitopologiaan ei voi olla verkon koordinaattori voi keskustella ainoastaan verkon koordinaattorin kanssa tarkoitettu erittäin yksinkertaisiin sovelluksiin (esim. valokatkaisija), jotka voidaan ottaa käyttöön minimaalisilla resursseilla ja muistikapasiteetilla

11/56 3.2.3 Verkkotopologiat LR-WPAN verkoissa on sovelluksen vaatimuksista riippuen mahdollista käyttää kahta erilaista rakennetta: tähtitopologia ja peer-to-peer -topologia. Kuvassa 2 on periaatekuvat molemmista topologioista. Tähtitopologiassa kommunikointi käydään verkon keskellä sijaitsevan PAN koordinaattorin välityksellä. Tällöin päätelaitteet ovat joko kommunikoinnin alku- tai päätepisteitä, mutta PAN koordinaattori voi puolestaan aloittaa, päättää tai reitittää kommunikointia. [16] Peer-to-peer topologian verkossa on myös PAN-koordinaattori, mutta olennainen ero tähtitopologiaan verrattuna on se, että mikä tahansa päätelaite voi keskustella suoraan minkä tahansa toisen päätelaitteen kanssa, kunhan ne vain ovat riittävän lähellä (signaalin kantomatkan etäisyydellä) toisistaan. Näin peer-to-peer topologian avulla saadaan toteutettua monimutkaisempia verkkomuotoja. Peer-to-peer -verkko voi olla ad hoc 1 tyyppinen, sen solmut pystyvät tunnistamaan muut laitteet kuuluvuusalueellaan ja itsenäisesti muodostaa niistä toimivan verkon (self-organizing). Verkko osaa itsenäisesti myös tunnistaa virhetilanteita ja toipua niistä (self-healing) sekä se sallii datalle useamman hypyn reitityksen matkalla kohteeseen. [16] Kuva 2. LR-WPAN -verkkojen topologiat [16] 1 Ad hoc -verkko on verkko, josta ei ole yhteyttä ulkomaailmaan, ja jonka toistensa läheisyydessä olevat mobiilit päätelaitteet muodostavat, kun niillä on tilapäinen tarve keskustella keskenään. Esimerkki ad hoc - verkosta voisi olla esim. työntekijöiden neuvotteluhuoneessa tapaavat kannettavat tietokoneet, jotka haluavat lähettää toisilleen dataa huolimatta siitä, että neuvotteluhuoneessa ei ole langatonta tukiasemaa (AP, access point). [12]

12/56 Jokaista itsenäistä PAN-verkkoa muodostettaessa valitsee verkon ensimmäinen laite verkolle tunnisteen, jolla verkko erotetaan muista samalla signaalin kuuluvuusalueella olevista verkoista. Huolimatta käytetystä verkkotopologiasta, on verkon kaikilla laitteilla oltava yksiselitteinen pidennetty 64 bittinen (IEEE-) osoite, jota voidaan käyttää suoraan kommunikointiin PAN-verkon sisällä. Pakettikokojen pienentämiseksi on kuitenkin mahdollista vaihtaa nämä pitkät osoitteet PAN-koordinaattorin allokoimiin lyhyempiin 16- bittisiin osoitteisiin, joita käytettäessä tarvitaan apuna juurikin verkon tunnistetta. [16] 3.2.4 Arkkitehtuuri LR-WPAN/ZigBee protokollapino on kansainvälisen standardointiorganisaatio ISO:n Open Systems Interconnection (OSI) -mallin mukainen. Käytännössä tämä tarkoittaa, että jokaisesta standardin osasta on vastuussa aina yksi kerros (layer), joka puolestaan tarjoaa palveluja ylemmille kerroksille. Näistä protokollakerroksista päällekkäin asetettuina muodostuu pino (stack), jonka rakennemalli on yhteneväinen juuri tuon OSI:n 7- kerroksisen mallin kanssa. IEEE 802.15.4-standardi määrittelee vain pinon kaksi alinta kerrosta. Nämä ovat fyysinen kerros ja Medium Access Control eli MAC-kerros. MAC-kerros on oikeastaan vain osakerros ja vasta yhdessä LLC (Logical Link Control) -osakerroksen kanssa ne muodostavat OSI-mallin toiseksi alimman siirtoyhteys-kerroksen. ZigBeen protokollapinoon kuuluva LLC on määritelty IEEE:n standardissa 802.2. Service Specific Convergence Sublayer, SSCS, on myös alikerros, joka tässä tapauksessa tarjoaa rajapinnan IEEE 802.15.4 MAC-kerroksen ja IEEE 802.2 LLC:n välille. SSCS:ää ei useinkaan piirretä protokollapinojen kuviin mukaan, mutta ZigBeen arkkitehtuuria havainnollistavassa kuvassa 3A näin on tehty. Kuvassa 3B esitetään IEEE 802 -standardien alimpien kerrosten sijoittuminen suhteessa ISO:n OSI-malliin.

13/56 Kuva 3A. LR-WPAN/ZigBee arkkitehtuuri [16] Kuva 3B. IEEE 802:n kerrosten sijoittuminen OSI-mallissa 3.2.5 Fyysinen kerros Fyysinen kerros on protokollapinon alin kerros, joka tarjoaa rajapinnan MAC-kerroksen ja fyysisen median, tässä tapauksessa radiolinkin, välille. IEEE 802.15.4 mukainen fyysinen kerros tarjoaa ylemmille kerroksille pääsyn kahdenlaisiin palveluihin kahden eri SAP 1 :n (Service Access Point) kautta. Physical Data SAP:n (PD-SAP) välityksellä ylempi kerros pääsee käsiksi fyysisen kerroksen datapalveluun, joka mahdollistaa PPDU:iden (Physical Protocol Data Unit) lähettämisen ja vastaanottamisen fyysisen radiokanavan ylitse. Fyysisen kerroksen hallintaolio, Physical Layer Management Entity (PLME), puolestaan tarjoaa rajapinnat, joiden kautta kerroksen hallintapalveluita voidaan kutsua. Lisäksi PLME ylläpitää tietokantaa, Physical PAN Information Base (PHY PIB), joka sisältää tarvittavat attribuutit laitteen fyysisen kerroksen hallitsemiseksi. Kuvassa 4 on havainnollistettu fyysisen kerroksen loogista rakennetta. [16] 1 SAP (Service Access Point) on piste, jonka kautta protokollakerrokset tarjoavat/pyytävät palveluja viereisiltä kerroksilta. Kerrosten välinen keskustelu tapahtuu primitiiveillä. [17]

14/56 Kuva 4. Fyysisen kerroksen rakenne [16] ZigBeessä on fyysisellä kerroksella käytössä kolme vaihtoehtoista taajuutta, 2.4 Ghz, 868MHz ja 915 MHz. Kyseiset taajuudet ovat niin kutsuttuja ISM 1 -taajuuksia (Industrial Scientific Medical), joista 2.4 GHz on hyväksytty ja tarkoitettu toimimaan globaalisti, 868 MHz on suunniteltu käytettäväksi Euroopassa ja 915 MHz Pohjois-Amerikassa, Australiassa jne. Kunkin taajuuden maksimaaliset datanopeudet ja niissä käytettävät modulaatiot on esitetty taulukossa 1. Taulukko 1. Käytetyt taajuudet, modulaatiot ja nopeudet [16] Näillä kolmella eri taajuudella on käytössä yhteensä 27 eri kanavaa, jotka on numeroitu 0-26. Ensimmäinen kanava numero 0 on käytössä 868 MHz:n taajuudella, seuraavat 10 kanavaa (nrot 1-10) 915 MHz:n ja loput 16 (nrot 11-26) 2.4 GHz:n taajuudella (kuva 5). [16] 1 ISM (Industrial Scientific Medical band) on kansainvälisesti teollisuuden, lääketieteen ja tieteen eikaupalliseen käyttöön varattu radiotaajuuksien joukko, joita nykyään mm. monet langattomien verkkojen tekniikat käyttävät

15/56 Kuva 5. IEEE 802.15.4/ZigBee kanavat ja taajuudet [21] IEEE 802.15.4-standardin määrittelemät datanopeudet ovat 2.4 GHz:n taajuudella 250kb/s, 915 MHz:n taajuudella 40kb/s ja 868 MHz:n taajuudella 20kb/s. Ilmarajapintana on kaikilla taajuuksilla DSSS (Direct Sequence Spread Spectrum) eli suorasekvenssi hajaspektritekniikka, mutta modulaationa käytetään 868/915 MHz:n taajuudella BPSK:ta (Binary Phase Shift Keying), kun taas 2.4GHz:n taajuudella O-QPSK:ta (Offset Quadrature Phase-Shift Keying). [16] LR-WPAN:ien fyysisten kerrosten tehtäviin kuuluu datan lähettämisen ja vastaanottamisen lisäksi seuraavaa: [16] radiolähettimen aktivointi ja deaktivointi energy detection (ED) measurement eli arvioida saapuvan signaalin voimakkuutta IEEE 802.15.4-kanavalla. Verkkokerros tulee käyttämään ED:tä osana kanavanvalinta-algoritmia. LQI (link quality indication), joka on kuvaus vastaanotettavien pakettien voimakkuudesta ja laadusta. LQI:tä tultaneen käyttämään myöhemmin verkkokerroksen toimesta, mutta vielä ei ole määritelty miten. CCA (clear channel assessment) on kyky tunnistaa tietyn kanavan olevan jo jonkun toisen laitteen käytössä. Toimintatapoja on kolme erilaista ja parhaassa tapauksessa tunnistetaan kanava varatuksi riippumatta sitä käyttävästä protokollasta. CCA:ta käytetään CSMA/CA -mekanismin kanssa.

16/56 3.2.6 MAC - kerros MAC eli Medium Access Control -kerros sijaitsee protokollahierarkiassa heti fyysisen kerroksen yläpuolella ja toimii täten rajapintana fyysisen kerroksen ja SSCS:n välillä. Fyysisen kerroksen tavoin MAC-kerros tarjoaa kahdenlaisia palveluita, jotka ovat käytettävissä jälleen eri SAP:ien välityksellä. Ylempien kerrosten on mahdollista käyttää MAC-kerroksen datapalvelua, eli lähettää ja vastaanottaa MPDU:ita (MAC Protocol Data Unit) fyysisen kerroksen datapalvelua hyväksikäyttäen, MAC common part sublayer (MCPS) SAP:in kautta. Vastaavasti MAC-kerroksen hallintapalvelut ovat ylempien kerrosten käytettävissä MAC Layer Management Entityn eli MLME-SAP:n kautta. MAC PIB -tietokanta sisältää nyt attribuutit puolestaan laitteen MAC-kerroksen hallitsemiseksi. [16] Kuva 6. MAC-kerroksen rakenne [16] IEEE 802.15.4:n mukainen MAC-kerros tarjoaa luotettavan linkin kahden MAC vertaisolion välille. Lisäksi se on vastuussa seuraavanlaisten tehtävien suorittamisesta: [16] käyttää CSMA/CA -mekanismia pääsyyn siirtotielle luoda verkon beaconit 1 eli majakkasignaalit (ks. 3.3.7), jos kyseinen laite toimii koordinaattorina saavuttaa synkroni beaconeihin (ks. 3.3.8) mahdollistaa laitteille verkkoon liittyminen ja siitä poistuminen tukea laitteen turvallisuutta käsitellä ja ylläpitää Guaranteed Time Slot (GTS) -mekanismia 1 Beacon-kehykselle/-signaalille on olemassa suomalainen nimi majakkasignaali. Tässä työssä käytetään kuitenkin englanninkielistä termiä.

17/56 Kuva 7. Sekvenssikaavio MAC-kerroksen datapalvelusta [16] Kuvassa 7 on sekvenssikaavion avulla esitetty onnistunut tiedonsiirto kahden laitteen välillä. Kuvaa on yksinkertaistettu jättämällä MAC-olioiden välistä pois fyysinen kerros ja sen tarvitsemat askeleet, mutta MAC-kerroksen tärkeimmät primitiivit tulevat esille. 3.2.7 Superframe-rakenne LR-WPAN standardin mukaisissa verkoissa voidaan valinnaisesti käyttää superframerakennetta. Tämän superkehyksen muodon määrittelee verkon koordinaattori ja koordinaattori on myös se, joka näitä kehyksiä lähettää ja päättää käytetäänkö niitä ylipäänsä vai ei. Superframe-kehys on jaettu kuuteentoista (numeroitu 0-15) samankokoiseen aikaväliin eli slotiin ja kehysten alut ja loput erotetaan toisistaan nk. verkon beaconeilla. Beacon-kehys lähetetään superframen ensimmäisessä aikavälissä kuvan 8 mukaisesti, ja sitä käytetään superframen rajaamisen lisäksi verkkoon liittyneiden koneiden synkronointiin, verkon (PAN) identifioimiseen ja superkehyksen sisällön kuvaamiseen. [16] Kuva 8. Superframe-kehyksen rakenne. Kuvan tilanteessa varattuja aikavälejä on käytössä kahdella eri sovelluksella. [14]

18/56 Superframe-kehyksen pituus, joka on sama kuin beacon-kehysten lähetysten välinen aika, on pienimmillään 15,38 ms, josta sitä voidaan kasvattaa tämän luvun monikertoina yli neljään minuuttiin. Ideana koko superframe-rakenteella on se, että superframe-kehyksessä voi olla aktiivinen ja inaktiivinen osio. Aktiivisen osion aikana toteutetaan kaikki laitteiden välinen kommunikointi, ja siitä voidaan myös varata aikavälejä kiireisille sovelluksille, jolloin jäljitellään piirikytkentäistä tekniikkaa ja parannetaan verkon reaaliaikaominaisuuksia. Inaktiivisen osion idea on säästää energiaa. Inaktiivisen osion aikana koordinaattori ei ole vuorovaikutuksessa PAN-verkkonsa kanssa ja saattaa itsekin mennä vähän virtaa kuluttavaan tilaan (a low-power mode). Aktiivinen osio voidaan jakaa kahteen jaksoon, kilpavaraus-pohjaiseen jaksoon (Contention Access Period, CAP) ja kilpailusta vapaaseen jaksoon (Contention Free Period, CFP). CAP:n aikana kaikki laitteet joutuvat tasapuolisesti kilpailemaan pääsystä yhteiselle siirtotielle käyttäen slotted CSMA/CA-mekanismia. Matalan latenssin sovelluksille tai sovelluksille, jotka muutoin tarvitsevat määriteltyä kaistaa PAN koordinaattori voi omistaa osuuksia superframen aktiivisesta osiosta. Näitä osuuksia kutsutaan guaranteed time sloteiksi (GTS), niitä voi olla maksimissaan seitsemän ja niistä muodostuu superframe-kehyksen CFP-osio (kuva 8). [16][1][9] Superframe-kehyksessä ei ole pakko olla ollenkaan kilpailuvapaata osiota CFP:tä, jos sitä ei tarvita, mutta riittävä CAP-osuus on pakko olla, jotta sitä käyttävät laitteet tai verkkoon vasta liittyneet laitteet saavat mahdollisuutensa lähetykseen. Lisäksi kaikkien laitteiden, lähettivätpä ne sitten CAP:n tai CFP:n aikana, on varmistuttava, että niiden lähetykset on suoritettu loppuun ennen seuraavan osion alkamista tai superframen loppumista. Lisää superframe-rakenteesta ja sen käytöstä on myöhemmin luvussa 3.5.5 Reaaliaikaominaisuudet. [16] 3.2.8 Datan lähetys WPAN verkon komponentteja käsittelevässä luvussa tuli ilmi, että IEEE 802.15.4- standardin mukaisessa verkossa voi olla kahdenlaisia fyysisiä laitteita, Reduced Function Device eli RFD:itä ja Full Function Device eli FFD:itä. Näistä kahdesta laitteesta yksinkertaisempi eli RFD voi keskustella vain ja ainoastaan koordinaattorin kanssa. Tähtitopologiassa FFD:kin voi keskustella ainoastaan koordinaattorin kanssa ja/tai sen on

19/56 käytettävä sitä viestiensä välittäjänä. Peer-to-peer topologiassa mitkä tahansa kaksi verkon laitetta voivat vaihtaa dataa keskenään, ja siksi siinä on kaikkien laitteiden oltava FFD:itä. LR-WPAN verkoissa on olemassa kolme erilaista tyyppiä transaktioita datansiirtoon. Tähtitopologiassa käytetään kahta ensimmäistä ja peer-to-peer -topologiassa kaikkia kolmea. Mekanismi, jolla transaktiot toteutetaan, vaihtelee sen mukaan onko verkossa käytössä beacon-kehykset vai ei. Eli käytännössä jokaista transaktiota kohden on kaksi erilaista tapaa toteuttaa se. Seuraavassa käydään läpi nämä tavat yksityiskohtaisemmin. [16] 1. transaktio, jossa päätelaite lähettää datan ja koordinaattori toimii vastaanottajana A. Jos verkossa on käytössä beacon-kehykset ja laite haluaa lähettää dataa koordinaattorille, se kuuntelee ensin ja yrittää löytää beacon-kehyksen. Kun sellainen löytyy se synkronoi itsensä superframe -kehyksen rakenteen tahtiin. Tämän tehtyään laite lähettää sopivalla hetkellä datakehyksensä koordinaattorille käyttäen slotted CSMA/CA:ta. Jos kuittausten käyttö on valittu, koordinaattori kuittaa perille saapuneen datan. Transaktio on päättynyt. Katso kuva 9A. [16] B. Verkossa, jossa ei ole käytössä beacon-kehyksiä päätelaite yksinkertaisesti lähettää datansa koordinaattorille käyttäen unslotted CSMA/CA:ta. Optionaalisesti koordinaattori kuittaa saamansa datan acknowledgementkehyksellä ja transaktio on päättynyt. Katso kuva 9B. [16] Kuva 9. Datan lähetys päätelaitteelta koordinaattorille [16]

20/56 2. transaktio, jossa koordinaattori lähettää datan ja päätelaite toimii vastaanottajana A. Koordinaattorin halutessa lähettää dataa päätelaitteelle verkossa, jossa on käytössä beacon-kehykset, se indikoi kyseiselle laitteelle beaconkehyksessä, että sillä olisi dataa lähetettävänään. Päätelaite kuuntelee beaconeita säännöllisesti ja huomatessaan, että koordinaattori haluaisi lähettää sille dataa, se lähettää MAC-käskyllä slotted CSMA/CA:ta käyttäen koordinaattorille pyynnön lähettää tämä data. Koordinaattori voi jälleen optionaalisesti kuitata datan lähetyspyynnön saapuneeksi, ja vasta tämän jälkeen se lähettää itse datan laitteelle käyttäen slotted CSMA/CA:ta. Varsinaisen datan saatuaan päätelaite kuittaa sen perille tulleeksi ja transaktio on päättynyt. Ks. kuva 10A. [16] B. Verkko, jossa ei ole käytössä beacon-kehykset: Koordinaattorin halutessa lähettää dataa päätelaitteelle, se varastoi datan odottamaan, kunnes kyseinen päätelaite ottaa koordinaattoriin yhteyttä ja pyytää tätä lähettämään sille kuuluvan datan. Tämän yhteydenoton ja lähetyspyynnön päätelaite toteuttaa MAC-käskyllä ja sovelluksen määrittelemin väliajoin. Koordinaattorin saatua datan lähetyspyynnön se kuittaa sen saapuneeksi ACK-kehyksellä, ja jos tälle laitteelle on ollut dataa varastoituna, se lähettää ne perille käyttäen unslotted CSMA/CA:ta. Lopuksi vielä päätelaite kuittaa datan koordinaattorille ja transaktio on päättynyt. Ks. kuva 10B. [16] Kuva 10. Datan lähetys koordinaattorilta päätelaitteelle [16]

21/56 3. transaktio, jossa dataa siirretään kahden vertaislaitteen välillä - Datansiirto kahden vertaislaitteen välillä on mahdollista peer-to-peer topologisissa PAN-verkoissa. Jotta kahden tällaisen laitteen välinen datansiirto olisi tehokasta, täytyisi laitteiden joko ottaa dataa jatkuvasti vastaan tai saavuttaa keskinäinen synkroni. Laitteiden ottaessa dataa jatkuvasti vastaan on synkroni jo saavutettu ja data yksinkertaisesti lähetetään matkaan käyttämällä unslotted CSMA/CA:ta. Jos laitteiden tulee saavuttaa keskinäinen synkroni muulla tavoin, käytetään ratkaisuna pollausta, joka toteutetaan ylemmillä kerroksilla. [16] 3.2.9 Käytetyt kehysrakenteet Aiemmissa luvuissa on jo usempaan otteeseen viitattu erilaisiin kehyksiin, joita LR-WPAN verkoissa käytetään. Koko IEEE 802.15.4/ZigBee-tekniikka on suunniteltu mahdollisimman yksinkertaiseksi, ja tältä tieltä ei poiketa kehysrakenteissakaan. Kehykset sisältävät vain tarvittavat kentät, ja ovat näin yksinkertaisia, mutta kuitenkin robusteja häiriöille. Kuvassa 11 on esitetty kaikki neljä LR-WPAN:issa käytettävää MAC-tason kehystä sekä kuinka niistä muodostetaan fyysisen kerroksen datayksikkö PPDU siirrettäväksi radiotiellä. Kuva 11. MAC-kerroksen kehykset ja kuinka niistä muodostetaan fyysisen kerroksen PDU

22/56 a. datakehystä käytetään kaikkeen verkossa tapahtuvaan datansiirtoon b. MAC Command kehysten avulla hallitaan kaikkia MAC-olioita c. Acknowledgement kehyksillä kuitataan datakehykset perille tulleiksi d. Beacon kehyksiä käyttää koordinaattori beaconien lähettämiseen Jokainen protokollakerros lisää kehyksen alkuun aina omia otsikkotietoja, joita kutsutaan headereiksi. Lisäksi kerros saattaa lisätä joitakin tietoja myös kehyksen loppuun, näitä kenttiä kutsutaan yhteisellä nimellä footer. Headerin ja footerin väliin jää kunkin kerroksen kuljettama hyötykuorma, joka on käytännössä palveltavaksi saapuva ylemmän kerroksen Protocol Data Unit eli PDU. LR-WPAN-verkkojen acknowledgement-kehykset eivät kuitenkaan sisällä ollenkaan hyötykuormaa. IEEE 802.15.4 standardin mukaisen MAC kerroksen headeriin kuuluu kolme kenttää: Frame Control: kenttä on 16 bittiä eli 2 tavua pitkä ja sisältää informaatiota käytetystä kehystyypistä, osoitekentistä ja muista lipuista Sequence Number: 8 bittiä pitkä kenttä, joka antaa kehykselle ainutlaatuisen tunnisteen Addressing Fields: sisältää neljä pienempää kenttää, jotka ovat kohteen PAN tunniste, kohdeosoite, lähteen PAN tunniste ja lähdeosoite. PAN tunnistekentän pituus voi olla 0 tai 2 tavua, osoitekentän pituus taas voi olla 0/2/8 tavua MAC Footeriin kuuluu Frame Check Sequence eli FCS-kenttä, joka on 2 tavua pitkä ja sisältää 16-bittisen ITU-T CRC:n (International Telecommunications Union Cyclic Redundancy Check), joka lasketaan MAC headerin ja hyötykuorman yli. Fyysisen kerroksen header-kenttiä on myös kolme: Preamble Sequence: 4 tavua pitkä kenttä, jota käytetään viestiä vastaanotettaessa synkronin löytymiseksi, muodostuu 32:sta binäärisestä nollasta Start of Frame Delimiter: yhden tavun mittainen kenttä, joka indikoi preamble:n loppumista ja varsinaisen datan alkua Frame Length: tämä kenttä ilmoittaa 7 bittiä käyttäen fyysisen kerroksen hyötykuorman pituuden okteteissa

23/56 3.3 Ylemmät kerrokset IEEE 802.15.4 -standardi määritteli fyysisen ja MAC kerroksen, joita ZigBee käyttää toimintansa pohjana. Protokollapinon ylimmät kerrokset ovat ZigBee Allianssin vastuulla. Koska Allianssi ei ole saanut standardointityötään vielä täysin valmiiksi, on ylemmistä kerroksista saatavilla tietoa vielä varsin rajoitetusti ja eri lähteissä on havaittavissa jopa ristiriitaisuutta. Tehdään kuitenkin saatavien tietojen pohjalta lyhyt katsaus kerrosten toimintaan ja tärkeimpiin tehtäviin. Kuvassa 12 on Patrick Kinneyn näkemys ZigBeen koko protokollapinosta. Kuva 12. ZigBeen protokollapino [11] 3.3.1 Verkkokerros Verkkokerros (NWK) on vastuussa monista verkon toimimisen kannalta elintärkeistä tehtävistä. Tärkeimmät verkkokerroksen tehtävät lienevät pakettien reitittäminen niiden oikeisiin kohteisiinsa verkon sisällä sekä uusien verkkojen muodostaminen. Uusien verkkojen muodostamisesta vastaa tarkemmin ottaen verkon koordinaattorin verkkokerros. Verkon koordinaattori myös myöntää verkkoon liittyville laitteille osoitteet. Ylipäätään laitteiden kyky liittyä ja erota verkoista toteutetaan verkkokerroksen toimesta. [11][9]

24/56 Verkkokerros tukee monenlaisia topologioita kuten tähti, cluster tree ja mesh. Tähti- ja peer-to-peer -topologioita käsiteltiin jo aimmin IEEE 802.15.4 -standardin yhteydessä. Todellisuudessa tulevat ZigBee-verkot suurimmalta osin olemaan kuitenkin näiden kahden topologian erilaisia yhdistelmiä, mitä cluster tree ja mesh juuri ovat. Itse asiassa tuki meshtopologialle on ZigBee Allianssin mielestä niin lähellä koko tekniikan ydinolemusta, että myös sen nimi ZigBee juontaa juurensa siitä. Mehiläisten siksakmainen lento signaloi muille mehiläisyhdyskunnan jäsenille uuden ruoanlähteen löytyneen. Kaikkien jäsenien on osallistuttava jatkuvasti tällaiseen kommunikointiin, sillä se on koko yhteiskunnan elinehto. Halutessaan ZigBeen nimelle jonkinlaisen perustelun pitäisi edellisestä siis löytää analogia ZigBee-verkkojen mesh-topologiaan ja sen toimintaan [20]. Kuvassa 13 on ZigBee-verkko, jossa on yhdistettynä eri topologioita. [11][9] Kuva 13. Yhdistettyjen topologioiden ZigBee verkko [9] Fyysisellä tasolla IEEE 802.15.4-standardi määritteli kaksi erilaista laitetta RFD ja FFD. Loogisella tasolla on ZigBeessä kuitenkin nähtävissä kolmea erityyppistä laitetta, jotka ovat verkon koordinaattori, reititin ja päätelaite. Koordinaattorin ja reitittimen on aina oltava FFD:itä, päätelaite voi olla RFD tai FFD. Seuraavassa on kerätty listaksi koordinaattorin ja verkon solmun ominaisuuksia ja tehtäviä. Solmulla tarkoitetaan tässä tapauksessa mitä tahansa verkon laitetta, joka ei toimi koordinaattorina, esim. päätelaite. Reititin taas puolestaan sisältyy koordinaattorin listaan, koska se on myös tavallinen FFD, joka vain sivutöikseen reitittää liikennettä. [11][9][6][8] ZigBee -verkon koordinaattori perustaa verkon lähettää verkon beaconit

25/56 hallitsee verkon solmuja ylläpitää tietoa verkosta (mm. informaation sen solmuista) ja tarvitsee näin enemmän muisti- ja laskentakapasiteettia reitittää viestejä yhdistettävien solmujen välillä toimii tyypillisesti vastaanottotilassa ja verkkovirralla ZigBee -verkon solmu toimii energiaa säästävästi (pattereilla jne.) etsii kuuluvissa olevia verkkoja lähettää sovelluksen dataa (vain) tarvittaessa pystyy määrittelemään onko sille itselle dataa odottamassa, ja osaa sen jälkeen pyytää itselleen kuuluvan datan verkon koordinaattorilta (ks. Datanlähetys 3.3.8) voi olla pitkiä aikoja virransäästötilassa 3.3.2 Sovelluskerros ZigBeen sovelluskerros koostuu kolmesta osasta, Application Support (APS)- alikerroksesta, ZigBee Device Objectista (ZDO) ja Application Objecteista. APSkerroksen kaksi tärkeintä tehtävää ovat discovery ja binding. Discovery tarkoittaa ominaisuutta pystyä määrittämään muut laitteet, jotka ovat laitteen omalla toimintasäteellä. Termi binding puolestaan viittaa kykyyn liittää kaksi laitetta toisiinsa ja forwardoida sitten liikennettä näiden kahden välillä. Jotta tällainen välikätenä toimiminen olisi mahdollista, on liittävän laitteen ylläpidettävä taulukoita, joissa sillä on tieto yhteyksistä. [11] ZDO määrittelee verkossa olevien laitteiden roolit, eli onko laite esim. koordinaattori vai päätelaite sekä tekee aloitteen tai vastaa kahden laitteen välisiin liittämispyyntöihin. ZDO myös vastaa turvallisen yhteyden (relationship) perustamisesta verkkolaitteiden välille, valiten tähän tarkoitukseen jonkin ZigBeen mahdollistaman turvallisuusmetodin. Valmistajakohtaiset sovellusobjektit (Application Objects) käyttävät IEEE:n määrittelemiä sovellusprofiileja (Actual Application Profiles). Tällaisia sovellusprofiileja on määritelty tähän mennessä ainoastaan yksi, valaistukselle, mutta yksi ZigBee-laite kykenee tukemaan kerrallaan kolmeakymmentä erilaista profiilia [9]. [11]

26/56 3.3.3 Verkkoliikenne ZigBee-verkot muodostuvat useista erilaisista liikennetyypeistä, joista on erotettavissa toisistaan poikkeavat tunnusomaiset piirteet. Tällaisia liikennetyyppejä ovat jaksoittain, ajoittain sekä jatkuvasti tapahtuva datan lähettäminen. Viimeisessä tapauksessa vaatimuksena on yleensä myös pieni latenssi. Ymmärrettävästi eri liikennetyyppejä käyttävät sovellukset ovat luonteeltaan erityyppisiä ja toimivat usein eri verkoissa, mutta tulevat ne mm. ZigBeen superframen ansiosta hyvin toimeen samassakin verkossa. [6][8] Liikennetyypit ovat: Jaksoittainen data Jaksoittaisessa liikenteessä lähetetään toistuvasti tietyin aikavälein ja tavallisesti vain hyvin pieniä datamääriä. Lähetysten välisen ajan määrittelee yleensä sovellus, ja verkossa on käytössä beacon-kehykset, joihin laite synkronoituu, lähettää nopeasti datan ja jatkaa uniaan. Esimerkkitapaus voisi olla sovellus, jossa anturi lähettää mittauksen (lämpötila, pinnankorkeus jne.) tietokoneelle viiden minuutin välein. Ajoittainen data Ajoittainen liikenne tapahtuu epäsäännöllisesti. Lähettäminen tapahtuu ilman beaconeita ja aloite siihen tulee joko sovellukselta itseltään tai ulkoiselta ärsykkeeltä. Hyvä esimerkki ajoittaisen liikenteen tuottajasta on langaton valokatkaisija, jolloin ulkoinen ärsyke olisi kaukosäätimellä annettu ohjaus. Ajoittaisen liikenteen tapauksessa laite voi energiaa säästääkseen olla lähetysten väliset ajat kuulumatta koko verkkoon, ja liittyä siihen vain tarvittaessa. Jatkuva pienilatenssinen data Tässä tapauksessa PAN koordinaattori takaa sovelluksille palvelunlaatua Quality of Service, allokoimalla niille Superframestä varattuja aikavälejä GTS. GTS:ien avulla ja aikana sovellukset voivat lähettää varmasti, ilman kilpailua siirtotiestä ja pystyvät näin reaaliaikaisuuteen. Esimerkkinä tällaisista voitaisiin mainita lääketieteelliset valvontalaitteet.

27/56 3.4 ZigBee ja automaatio Kappaleessa kaksi esiteltiin yleismuotoinen lista niistä langattomien verkkojen ominaisuuksista, joita tarvittaneen erilaisten automaatiosovellusten toteuttamiseksi langattoman tekniikan avulla. Tässä kappaleessa käytetään hyväksi koottua listaa ja syvennytään ZigBeen mahdollisuuksiin automaatiossa juuri kyseisten ominaisuuksien kautta. Vaikka nimi ZigBee sinällään onkin oikeastaan vain nimitys verkko- ja sovelluskerroksille, jotka toimivat IEEE:n 802.15.4 -standardiin perustuvien fyysisen ja MAC-kerroksen tarjoamien palvelujen päällä, tarkoitetaan ZigBeellä seuraavissa kappaleissa koko protokollapinoa kaikkine kerroksineen ja niiden ominaisuuksineen. 3.4.1 Luotettavuus Se, että tiedonsiirto kommunikoivien osapuolien välillä on mahdollisimman luotettavaa, on ehkä tärkein automaatiossa käytetylle verkkotekniikalle asetettava ehto. Esimerkkinä mainittakoon kaksi, tulevaisuudessa todennäköisesti hyvin yleistä kotiautomaation ZigBeesovellusta: kauko-ohjattu valokatkaisija/himmennin ja oveen/ikkunaan asennettava murtohälyttimen langaton tunnistin. Jos olohuoneen sohvalla istuvan henkilön kaukosäätimellä valon himmenemiselle antama ohjaus ei joka kerta perille tulisikaan, ei se luultavasti olisi kovin vakavaa vaikka turhauttavaa saattaisikin olla. Mutta jos taas murtohälyttimen tunnistimen hälytysviestin perille tulosta ei voida olla varmoja, vie se pohjan koko murtohälytinjärjestelmän toiminnalta. 3.4.1.1 CSMA/CA CSMA/CA-mekanismin käyttö väylänjakoperiaatteena tuo sinällään jo luotettavuutta ZigBeen toimintaan. CSMA/CA:ssa laitteet kuuntelevat väylää ja pystyvät tunnistamaan siellä käynnissä olevan lähetyksen ja näin perääntymään backoff-algoritmilla odottamaan uutta yritystä. 3.4.1.2 Kuittaukset ja uudelleenlähetykset ZigBeessä on mahdollista käyttää kuittauksia osoittamaan lähettävälle osapuolelle, että lähetetty datakehys (tai MAC Command-kehys) on saapunut virheettömänä perille.

28/56 Kuittauksien käyttö on kuitenkin optionaalista ja sen määrää lähettävä osapuoli asettamalla acknowledgement request -kentän bitin ykköseksi, jos odottaa vastapuolen lähettävän kuittauksen, tai vastaavasti nollaksi, jos ei aio jäädä odottamaan kuittausta. Jos kuittaus on merkattu ykkösbitillä käytettäväksi, käynnistää datakehyksen lähettäjä itselleen ajastimen, jonka aikana se odottaa kuittauksen saapuvaksi. Datakehyksen tai sen kuittauksen hukkuessa verkossa matkalle ehtii ajastin laueta ja datakehys lähetetään uudelleen. Uudelleenlähetys tehdään tarvittaessa kolme kertaa, mutta jos lähetys ei onnistu kaikesta huolimatta, tyytyy MAC-kerros antamaan seuraavalle ylemmälle kerrokselle virhetiedotteen tapahtuneesta. [16] 3.4.1.3 Sekventointi ja Frame Check Sequence Kaikille ZigBee-verkoissa lähetetyille kehyksille annetaan niiden generoinnin yhteydessä yksikäsitteinen sekvenssinumero. Kun päätelaite/koordinaattori generoi data- tai MAC Command-kehyksen (koordinaattori myös Beacon kehyksen) lähetystä varten, kopioi se erityisellä satunnaisluku-algoritmilla macdsn attribuuttiin muodostetun luvun kehyksen sekvenssinumero kenttään. Tämän jälkeen jokaisen kehyksen kohdalla macdsn:n arvoa kasvatetaan aina yhdellä. Myös kuittauksissa on sekvenssinumero. Kuittauksien tapauksessa kentän arvoksi kopioidaan vastaanottajan toimesta sen datakehyksen sekvenssinumero, jonka se kuittaa perilletulleeksi. Vastaavasti uudelleenlähetyksissä käytetään samaa alkuperäisen kehyksen sekvenssinumeroa. [16] Sekvenssinumeroinnin avulla ZigBee-verkossa tullaan toimeen myös väärässä järjestyksessä saapuvien kehysten kanssa sekä saadaan yksikäsitteisyys siihen, mikä kehys tulee kuitatuksi. Tällä on huomattavasti arvoa myös automaatiosovellusten kannalta, sillä esim. etäsäädössä voitaisiin vanhentuneet myöhässä saapuneet ohjaukset jättää huomiotta. Kaikissa MAC-kerroksen kehyksissä on kahden tavun mittainen Frame Check Sequence kenttä. Se on tarkoitettu siirtotiellä syntyvien virheiden havaitsemiseen. FCS-kentän sisälle lasketaan MAC otsaketietojen ja hyötykuorman yli tarkistussumma käyttäen generoivana polynomina yleisesti käytössä olevaa ITU-T:n polynomia x 16 +x 12 +x 5 +1. Kyseisen generaattoripolynomin avulla saadaan havaittua kaikki kehyksiin summautuneet virhepolynomit, joissa on pariton määrä nollasta poikkeavia kertoimia. Tällaiset sykliseen varmenteeseen perustuvat virheenhavaitsemismenetelmät eivät siis pysty poistamaan

29/56 kaikkia mahdollisia virheitä, mutta kuitenkin suurimman osan niistä. Näin myös siis ZigBeessä. [16][10] 3.4.1.4 Omatoiminen ja vikasietoinen verkko Nykyinen Internet sai alkunsa Yhdysvaltain puolustusministeriön aloitteesta rakentaa verkko, joka toipuisi ja toimisi verkon joidenkin osien tuhoutumisesta huolimatta. Tämäntyyppiselle verkolle oli tarvetta, koska kylmä sota oli kesken ja haluttiin varmistaa kommunikointi maan eri osien välillä mahdollisen Yhdysvaltoihin kohdistuvan ydinaseiskun jälkeenkin. ZigBee verkoilla on samanlaisia piirteitä Internetin kanssa sen suhteen, että myös ne osaavat huomata vikatilanteet ja toipua niistä. Peer-to-peer topologian esittelyn yhteydessä mainittiin kaksi ZigBee verkkojen luotettavuuden kannalta tärkeää ominaisuutta - self-organizing ja self-healing. Näillä termeillä tarkoitetaan juuri, että ZigBee verkon laitteilla on kyky tunnistaa muiden laitteiden läsnäolo ja organisoida verkko rakenteelliseksi ja toimivaksi sekä toisaalta tunnistaa vikatilanteet verkon solmuissa tai kommunikaatiolinkeissä ja toipua niistä. Olennaisinta on kuitenkin se, että verkko/laitteet osaavat tehdä tämän kaiken täysin omaaloitteisesti ja itsenäisesti ihmisen puuttumatta asiaan. [16] ZigBeen vikatilanteista toipuminen mahdollistaa sellaisetkin sovellukset, joissa se on ehdottoman välttämätöntä. Mesh verkkotopologiassa, jossa data voidaan välittää kohteeseensa useamman hypyn kautta, osaavat laitteet valita toisen reitin, jos lyhimmässä oletusreitissä on vikaa tai laite ei vastaa. ZigBeetä tullaan käyttämään tulevaisuudessa kodeissa ja sen ympäristössä monenlaiseen valvontaan. Toteutettaessa ZigBeellä yksinasuvien vanhusten tai liikuntarajoitteisten ihmisten nk. turvanappi langattomasti tai ZigBee-laitteen tarkkaillessa henkilön elintoimintoja ovat vain muutama esimerkki, joissa verkon vikojen havainnointi ja niistä toipuminen ovat elintärkeitä sanan varsinaisessa merkityksessä. [8][20] 3.4.1.5 Rinnakkainelo muiden tekniikoiden ja järjestelmien kanssa ZigBee käyttää nk. ISM-taajuuksia. Nämä taajuudet ovat yleisessä ja runsaassa käytössä erilaisten koneiden, automaatiojärjestelmien kuin tekniikoidenkin toimesta. Tästä syystä on tärkeää, että ZigBee tulee hyvin toimeen muiden laitteiden läsnäolon ja häirinnän kanssa, ja aiheuttaa itse mahdollisimman vähän häiriötä muille tekniikoille. ZigBeellä onkin monia

30/56 ominaisuuksia, jotka parantavat sen selviytymistä tässä rinnakkaiselossa. Seuraavassa on lista muutamista kyseisistä ominaisuuksista. [16][5] Clear Channel Assesment: ZigBee vastaanottimilla on kyky mitata vastaanotettavalla kanavalla liikkuvaa energiaa ja perääntyä datanlähetyksestä, jos huomaavat kanavan olevan jo käytössä Low Duty Cycle: ZigBee-laitteet lähettävät yleensä harvoin ja toimivat silloinkin nopeasti, joten ne aiheuttavat itse vähän häiriötä muille laitteille Modulaatio: Modulaatio, jota ZigBee käyttää on tehokas ja sillä saavutetaan hyvä signaali-kohina-suhde (signal-to-noise ratio, SNR) ja signaali-häiriö-suhde (signal-to-interference, SIR) Low Transmit Power: ZigBee-laitteet lähettävät huomattavasti pienemmällä teholla, kuin mitä säännökset sallisivat. 3.4.1.6 Yhteenveto luotettavuudesta Oikeastaan kaikissa ZigBeetä käsittelevissä lähteissä sen mainitaan mahdollistavan luotettava tiedonsiirto. ZigBeen luotettavuus on mahdollistettu monien edellä käsiteltyjen ominaisuuksien ja toimintojen kokonaisuudella, ja se on riittävä, muidenkin langattomien tekniikoiden läsnä ollessa, myös vaativien automaatiosovellusten käyttöön. 3.4.2 Yksinkertaisuus ja sen tuomat edut ZigBee on alusta asti suunniteltu yksinkertaiseksi. ZigBeen yksinkertaisuus onkin sen suurimpia etuja muihin langattomiin tekniikoihin/standardeihin verrattuna, ajateltiinpa asiaa sitten automaation tai muunlaisten toteutusten kannalta. ZigBeen koko protokollapino vaatii täysillä toiminnoilla (Full Function Device) vain alle 32 Kb muistia ja vain osan toiminnoista hyödyntävässä päätelaitteessa (Reduced Function Device) muistia tarvitaan niinkin vähän kuin 4-6 Kb. Verkon koordinaattori saattaa tosin tarvita hieman 32Kb:ä enemmän muistia, koska sen tulee huolehtia myös joidenkin

31/56 tietokantojen ja taulukoiden ylläpidosta. Lisäksi ZigBeen pohjana oleva IEEE 802.15.4- standardi määrittelee fyysiselle ja MAC-kerrokselle ainoastaan 26 erilaista primitiiviä. Vaikka verkkokerroksen spesifikaation valmistuessa primitiivejä määritellään vielä varmasti lisää, tulee niiden määrä lopulta joka tapauksessa olemaan huomattavasti esim. Bluetoothin vastaavaa lukua 131 pienempi. [9][1] Vähäinen muistin ja laskentatehon tarve mahdollistaa sen, että ZigBee-laitteet, olivatpa ne sitten FFD:itä tai RFD:itä, voivat olla rakenteeltaan niinkin yksinkertaisia kuin lähetin/vastaanotin, yksinkertainen 8-bittinen prosessori ja tarvittavat patterit (kuva 14). Kuva 14. Yksinkertaisen ZigBee-sovelluksen lohkokaavio [2] Koska ZigBee laite voi olla yksinkertainen, voi se olla myös hyvin pienikokoinen. Ja koska laite on yksinkertainen ja pienikokoinen, on se myös halpa. Yritys nimeltä Chipcon on jo nyt alkanut myymään IEEE 802.15.4 (ja ZigBee?) yhteensopivaa lähetin-vastaanotintaan suurissa erin hintaan 2 USD (14.5.2004). Halvan hinnan ansiosta laitteita voidaan asentaa enemmän. Pieni koko, ja toisaalta myös langattomuus, puolestaan edesauttavat laitteiden asentamista mitä erilaisimpiin ja vaikeampiin paikkoihin, minne ennen ei ehkä edes kuviteltu pääsevän. Kaikki edellä mainitut seikat parantavat ZigBeen käyttömahdollisuuksia automaatiossa. ZigBee -kykyisiä antureita voisikin tulevaisuudessa hyvin kuvitella suurin joukoin tarkkailemaan esim. tehtaiden prosesseja ja niiden kriittisimpiä koneita ja vaiheita, parantaen entisestään niiden hallittavuutta, tehokkuutta ja luotettavuutta. Yhtenä mahdollisena valvontapaikkana mainittakoon vaikkapa paperikoneiden telat.

32/56 3.4.3 Energiankulutus ZigBee-laitteet kuluttavat vähän energiaa. Tällä on haluttu mahdollistaa se, että laitteet voisivat toimia pienillä ulkoisilla energianlähteillä kuten pattereilla, mutta olisivat silti toimintavalmiita kerrallaan kuukausia, vuosia tai jopa vuosikymmeniä. Aika, jonka ZigBee-laitteet ovat aktiivisia (lähettävät/vastaanottavat/kuuntelevat, engl. duty cycle) suhteessa niiden elinikään on hyvin lyhyt (< 1%) [10], koska lähetettävät paketit ovat tavallisesti erittäin pieniä verrattuna lähetysnopeuteen. Jotta laitteiden energiankulutus saataisiin tällöin optimoitua, voivat ne toimettomana ollessaan mennä virtaa säästävään sleep-tilaan. Sleep-tilassa ollessaan ZigBee-laitteet heräävät joko satunnaisin väliajoin ilmoittamaan läsnäolostaan tai koordinaattorin tarkalleen määräämänä aikana kuuntelemaan verkon beaconeita, mutta palaavat tämän jälkeen sitten taas nopeasti jatkamaan uniaan. Vaikka verkon koordinaattorin tehtäviin kuuluu beaconeiden lähettäminen, voi sekin nukkua superframen inaktiivisen osion ajan. Tästä syystä beaconeita käytetään etenkin silloin, kun myös koordinaattori toimii pattereilla. [8] Ymmärrettävästi automaatiosovellukset kokonaisvaltaisesti hyötyvät ZigBeen säästeliäisyydestä ja sen mahdollistamista laitteiden pitkistä valmiusajoista. Suurimman hyödyn siitä kuitenkin saa rakennus- ja kotiautomaatio, missä laitteet lähettävät harvoin ja silloinkin vähän, eikä kukaan missään tapauksessa halua vaihtaa niiden pattereita usein, johtuen niiden suuresta määrästä ja/tai vaikeasta paikasta. Esimerkkinä voisi käyttää jo aiemminkin mainittua murtohälytinjärjestelmää, jossa esim. ikkunaa vartioivan tunnistimen ei suurella todennäköisyydellä tarvitse lähettää mitään koko patterin eliniän aikana. Tällöin tietenkin oletetaan, että rakennukseen ei yritettäisi tänä aikana murtautua ainakaan tämän ikkunan kautta, eikä tunnistimen toimintaa tarvitsisi määräajoin tarkastaa. Murtohälytinjärjestelmän tapauksessa verkossa ei käytettäisi beaconeita, koordinaattori toimisi sähköllä, jotta se voisi aina vastaanottaa hälytyksen, ja mitä kauemmin päätelaitteiden patterit kestäisivät sen parempi. Ajatellaan vastakohtaisesti reaaliaikaista automaatiosovellusta, joka tarvitsee itselleen taattua kaistaa ja on lisäksi erittäin aikakriittinen. Nyt verkon koordinaattorin on käytettävä superframejä ja sen lisäksi, että se varaa sovellukselle taattuja aikavälejä CFP:stä, on sen lähetettävä beaconeita hyvin pienellä aikavälillä. Tämä beaconeiden pienentynyt aikaväli vaikuttaa energiankulutukseen radikaalisti, joten pidempikestoisillakin pattereilla puhutaan

33/56 enää päivän tai muutamien päivien toiminta-ajoista. Jos laitteita on suuri määrä, on selvää, ettei tällaisia automaatiosovelluksia ole järkeä toteuttaa ZigBeellä, sillä jo patterien vaihdot aiheuttaisivat suuret kustannukset. Sen sijaan vaativa reaaliaikaisuus ja lyhyempikin toiminta-aika voisivat olla hyödyllinen yhdistelmä erilaisissa testauksissa tuotekehityksen eri vaiheissa. Myös vikadiagnooseissa teollisuuden suurkoneiden sisällä ja ylipäätään paikoissa, joissa langaton tekniikka on ainoa vaihtoehto, hyödytään varmasti lyhyemmästäkin valmiusajasta. Lisäksi lääketieteellisiin ja fysiologisiin laitteisiin (potilaiden valvontalaitteet, pulssimittarit jne.) luulisi kyseisen valmiusajan riittävän. Kuva 15. ZigBee on suunniteltu toimimaan pitkään pienillä ulkoisilla energianlähteillä kuten pattereilla [8] 3.4.4 Unesta herääminen ja verkkoon liittyminen Vaikka ZigBee-laitteet ovatkin välillä syvässä unessa, on niiden uni verrattavissa vahtikoiran uneen. Tilanteen vaatiessa ZigBeet ovat noin 15 millisekunnissa jälleen valveilla. Siirtotielle pääsyyn kuluu laitteelta tyypillisesti samainen 15ms, joten alun perin rauhallisesti nukkuva laite voi olla jo noin 30 ms kuluttua lähettämässä dataa. Näin nopea herääminen on monille automaatiosovelluksille vain pelkkä etu, mutta poikkeuksiakin on. Otetaan jälleen esille ZigBee-pohjainen murtohälytinjärjestelmä ja siinä oleva langaton ikkunaa vartioiva tunnistin. Kyseinen järjestelmä voisi olla toteutettu niin, että tunnistimen havaitessa ikkunan rikkoutuneen, se lähettäisi siitä salamannopeasti tiedon järjestelmää ohjaavalle laitteelle. Tämä puolestaan kääntäisi tehokkaan valon ja turvakameran kohti kyseistä ikkunaa, laukaisisi hälytyssireenin soimaan ja lähettäisi hälytyksen poliisille ja vartiointiliikkeelle. ZigBeetä käytettäessä tämä kaikki voisi siis tapahtua