Bluetooth Low Energy on avainasemassa esineiden internetin menestyksessä ja siitä on tullut IoT-sovellusten de facto -standardi. Sitä käytetään puettavissa laitteissa, mutta yhä enemmän myös kotiautomaation sovelluksissa.
Artikkelin kirjoittaja Pushek Madaan toimii Cypress Semiconductor Indian vanhempana sovellusinsinöörinä. Hänen osaamisensa liittyy sulautettujen soveluksen kehittämiseen C- ja assemblerilla. Pushek on kehittänyt niin analogia- kuin digitaalipiirejä, sekä käyttöliittymiä C#-kielellä. |
BLE-tekniikka (bluetooth low energy) on mullistanut esineiden internetin käsitteen ja auttanut viemään IoT:tä konseptista kaupallisiin ratkaisuihin. Suurin syy BLE:n menestykseen on se, että tekniikka löytyy älypuhelimista, tableteista sekä uusimmista kannettavista tietokoneista. Tässä BLE:llä on iso etu aiempiin yrityskohtaisiin protokolliin verrattuna, jotka vaativat asiakaskohtaista laitteistoa, yleensä USB-moduulia tai integroitua radiota kilpaillakseen muiden tietoliikennetekniikoiden kanssa. Tämä yhdessä alhaisen tehonkulutuksen ja standardoidun ohjelmiston kanssa on tehnyt BLE:stä IoT-sovellusten de facto -valinnan.
Suosituimpia IoT-sovelluksia ovat tähän saakka olleet puettavat laitteet kuten erilaiset aktiivisuusrannekkeet, joissa laite kerää anturidataa, ajaa monimutkaisia algoritmeja jalostaakseen käytettävää informaatiota, ja lähettää tämän informaation mobiililaitteeseen. Samanlaisia konsepteja otetaan nyt käyttöön kodinkoneissa ja anturimoduuleissa, jotka ovat muuttamassa tavallisia koteja älykodeiksi. Esimerkkejä tällaisista laitteista ovat älykkäät kahvinkeittimet, jotka hauduttavat kahvin valmiiksi haluamallasi tavalla sekä valaistuksen ohjausjärjestelmät, jotka havaitsevat läsnäolosi ja sammuttavat valot automaattisesti.
Yksi haaste BLE-standardin tämänhetkisessä toteutuksessa on sen rajoitettu verkkotopologia. Älykodin järjestelmässä voi olla useita solmuja (antureita ja valokatkaisimia eri paikoissa) ja jokaista solmua pitää ohjata yksilöllisesti yhteisestä keskuslaitteesta, yleensä älypuhelimella. Tässä artikkelissa katsomme yhtä uutta tapaa ratkaista tämä BLE:n rajoitus.
Ajatellaanpa usean solmun älykotijärjestelmää. Jokaisessa solmussa on anturiliitäntä, valon ohjausyksikkö ja BLE-radioyksikkö. Anturiliitäntä aistii ihmisen läsnäolon ja ympäröivän valon määrää. Valon ohjausyksikkö voi sytyttää ja sammuttaa valot, sekä ohjata valon värilämpötilaa ja voimakkuutta. Tietoliikenneyksikössä on toteutettu BLE-protokolla keskustelemaan kodin älyjärjestelmän muiden solmujen kanssa.
Kuva 1 esittää korkean tason lohkokaaviota älykotijärjestelmästä.
Kuva 1. Älykotijärjestelmä - lohkokaavio.
Tässä järjestelmässä kaikki solmut keskustelevat mesh-verkossa – jokainen toimii joko isäntänä tai orjana aikajakoiseen tapaan. Jokainen solmu toteuttaa seuraavan toiminnallisuuden:
Anturiiitäntä: Jokaisessa solmussa on liitäntä läheisyysanturilla (proximity sensor) ja ympäröivän valon anturille. Näistä antureista tulevat signaalit käsitellään vahvistimessa ja sen jälkeen digitoidaan AD-muuntimella. Digitoitua signaalia käytetään tämän jälkeen ledin ohjaamiseen ja tietoliikenteen järjestelmän muiden solmujen kanssa.
Valon ohjausyksikkö: Mitatut signaalit prosessoidaan mikro-ohjaimessa ja muunnetaan valon värilämpötilan ja voimakkuuden ohjausinformaatioksi. Ohjausyksikkö voi säätää valon värilämpötilaa ja voimakkuutta ympäröivän valon tasojen ja kellonajan perusteella (RTC-kellon signaalin pohjalta) tai käyttäjän älypuhelimen BLE-linkillä antamien antaminen komentojen pohjalta.
BLE-tietoliikenne: Tässä järjestelmässä BLE palvelee kahta tarkoitusta. Ensinnäkin se antaa mahdollisuuden ohjata valoja solmussa älypuhelimella. Tässä tapauksessa solmu toimii GAP-oheislaitteena (bluetooth-profiili General Access Profile) ja saa ohjausinformaation älypuhelimesta eli GAP-keskuksesta. Toiseksi BLE toimii mekanismina, jolla solmu ohjaa muita solmuja älykotijärjestelmässä. Tässä tapauksessa solmu muuttuu GAP-keskukseksi voidakseen lähettää informaatiota muihin solmuihin.
Kuva 2 näyttää korkea tason BLE-mesh-verkkototeutuksen älykotijärjestelmässä.
Kuva 2. BLE-liitäntä.
Dynaamisesti muuttuvat BLE-profiilit: Tässä sovelluksessa kaikki solmut toimivat oheislaitteina (slave) ja yrittävät muodostaa BLE-yhteyttä isäntänä toimivaan keskukseen (master). Kun solmu vastaanottaa ohjausinformaation keskukselta tai se havaitsee liikettä infrapuna-anturilla, sen profiili muuttuu keskukseksi ja se muodostaa yhteyden muihin solmuihin välittääkseen informaation eteenpäin. Tämän ansiosta muut solmut eivät tarvitse ohjausinformaatiota älypuhelimelta vaan saavat saman tiedon läheiseltä solmulta.
Tällainen laaja toiminnallisuus vaatisi tyypillisesti monisiruratkaisun. Useiden piirien käyttäminen nostaisi materiaalikustannuksia, mutta kasvattaisi myös PCB-kortin kokoa, mikä ei sovi tällaisiin pientä kokoa vaativiin sovelluksiin.
Cypressin PSoC 4 -BLE-piiri on tällaiseen sovellukseen täydellinen ratkaisu. Piiri tuo BLE-linkin, joka voi toimia sekä oheislaitteena että keskuksena, ja dynaamisesti vaihtaa näiden kahden profiilin välillä. Lisäksi PSoC 4 BLE -piirillä on ohjelmoitava analoginen lohko, jonka avulla voidaan luoda räätälöityjä anturiliitäntöjä ja ohjelmoitavat digitaaliset lohkot, joilla voidaan toteuttaa ohjausyksikköjä. Näiden avulla voidaan suunnitella aito yhden sirun ratkaisu solmua varten. Tämä lähestymistapa tuo taloudellinen ratkaisun, joka alentaa materiaalikustannuksia ja pienentää piirikortin kokoa, sekä tuo modulaarisuuden jossa samaa sirua voidaan käyttää erilaisten toimintojen toteuttamiseen eri solmuissa.
Kuva 3 esittää älykkään valo-ohjaimen toteutusta PSoC 4 -BLE-piirillä.
Kuva 3. Älykäs valon ohjaussovellus - PSoC 4 BLE -ratkaisu.
Tämä piiri toteuttaa kaikki kolme yllä mainittua järjestelmätoimintoa (anturiliitäntä, valon ohjaus ja BLE-yhteys), mytta myös tekee toteutuksen helpoksi tarjoamalla BLE-komponentin, jolla voidaan luoda sekä keskus- että oheislaitetuote minuuteissa. Cypressin sovellusohje (AN91162) tarjoaa lisätietoa BLE-profiilien toteuttamisesta räätölöiydissä sovelluksissa, joita Bluetooth SIG:N määrittelemät standardiprofiilit eivät tue.
Lue lisää: AN91162-sovellusohje