Bluetooth och Zigbee är två av de mest använda trådlösa teknologierna i dagens IoT (Internet of Things) ekosystem. De tillåter olika typer av enheter att ansluta och kommunicera med varandra utan att behöva kablar, vilket gör det möjligt för ett stort antal apparater att samverka och utföra automatiserade uppgifter. Även om de båda är utformade för att stödja trådlösa anslutningar, skiljer de sig åt på flera viktiga sätt, både i fråga om prestanda och användningsområden.

Bluetooth-teknologin definierar ett stort antal "profiler" som beskriver parametrar och annan information om specifika typer av enheter som kan ansluta till varandra, exempelvis datorer, hörlurar, högtalare eller spelkonsoler. Det finns hundratals standardprofiler, och den första anslutningen mellan två enheter inbegriper utbyte av profil-ID:n. Detta gör att enheterna snabbt kan identifiera vilken typ av enhet de ansluter till utan att behöva utbyta detaljerad profilinformation eller stora mängder data. Denna mekanism blir särskilt viktig när IoT fortsätter att växa, där enheter förväntas kunna ansluta och kommunicera med varandra dynamiskt.

En enhet kan använda fler än en profil. Ett exempel på detta kan vara en handsfree-enhet som både använder en handsfree-profil och en kontrollprofil. Detta gör att enheter som högtalare endast ansluter till audio-streaming-enheter och vägrar anslutningar till andra enheter, som till exempel en datormus. För att säkerställa säker kommunikation, särskilt i en IoT-värld, är det avgörande att Bluetooth-enheter kan detektera varandra automatiskt, vilket kan ske antingen autonomt eller efter att användaren ger sitt godkännande. Den automatiska detektionen kan innebära en säkerhetsrisk, då enheter kan ansluta till okända enheter utan att någon mänsklig interaktion krävs. En mer säker metod involverar användarbehörighet, men är inte alltid praktisk i alla situationer.

Bluetooth-enheter kan vara antingen upptäckbara eller icke-upptäckbara. I upptäckbart läge sänder enheten ut information om sig själv, såsom enhetstyp, namn och tjänster. I det här läget kan andra enheter upptäcka den och påbörja anslutningen. Det är viktigt att notera att även om en enhet inte är i upptäckbart läge kan den ibland fortfarande bli hittad om någon annan enhet redan känner till enhetens MAC-adress. Detta kan ske genom en illvillig attack, där en annan enhet försöker ansluta till en enhet utan dess tillstånd.

För att upprätta en anslutning krävs att enheterna utbyter passnycklar. Passnycklar kan vara inbyggda i enheten eller erhållas genom användarinteraktion. Enheterna genomgår en dubbel autentisering där varje enhet sänder passnycklar till den andra. Om passnycklarna matchar etableras anslutningen. Hur passnycklar genereras och nivån av användarinteraktion vid denna process är viktiga faktorer när det gäller att balansera säkerhet och användarvänlighet.

En annan viktig aspekt för inbyggda system är hur dessa passnycklar hanteras och säkerställs. Till exempel, om en enhet som en robot i en fabrik är avsedd att endast ansluta till andra kända enheter inom fabriken, kan passnycklar vara förinställda och inbyggda i både roboten och de andra enheterna. Detta minskar behovet av användarinteraktion, men det innebär också att säkerheten i en sådan miljö är begränsad till de förinställda nycklarna och det lokala nätverket.

Bluetooth har länge varit förknippat med säkerhetsproblem. Tidiga versioner av Bluetooth saknade effektiv säkerhet, vilket gjorde det möjligt för obehöriga att avlyssna eller till och med manipulera meddelanden. Sedan 2008, när National Institute of Standards publicerade riktlinjer för Bluetooth-säkerhet, har senare versioner av Bluetooth implementerat kryptering där krypteringsnyckeln baseras på passnyckeln. Trots dessa framsteg finns det fortfarande säkerhetsrisker, såsom avlyssning eller modifiering av meddelanden. Därför är det viktigt att inbyggda systemdesigners noggrant bedömer vilken säkerhetsnivå som behövs och eventuellt inför extra säkerhetslager på applikationsnivå för att skydda kommunikationen.

Zigbee, å andra sidan, är en annan trådlös protokollfamilj som är särskilt lämpad för lågströms- och lågbandbreddsapplikationer, där små datamängder sänds och strömförbrukningen är avgörande. Typiska applikationer för Zigbee är hemautomatisering och övervakning. Zigbee är baserat på IEEE 802.15.4-standarden och är designat för att stödja personliga nätverk (PANs). Det är ett låg-effektprotokoll, där varje nod kan kommunicera med sin närmaste enhet, medan det inte går att vidarebefordra meddelanden till andra enheter. Zigbee har förmågan att skapa ett nätverk med olika topologier, såsom stjärn-, träd- eller mesh-nätverk, vilket ger hög flexibilitet och räckvidd i olika typer av miljöer.

Zigbee-enheter kan fungera inom ett område på mellan 10 till 100 meter beroende på olika faktorer, såsom hinder i omgivningen eller användning av extra sändareffekt. För inomhusbruk varierar räckvidden typiskt mellan 10 och 20 meter, medan utomhusnätverk kan nå upp till 150 meter om tillräcklig sändareffekt används. Med en överföringshastighet på mellan 20 och 250 Kbps är Zigbee särskilt bra för tillämpningar där liten datamängd behöver överföras, såsom att mäta temperaturer eller att slå på och av apparater.

Det är också viktigt att förstå att Zigbee inte bara är en trådlös standard utan också en protokollfamilj som erbjuder skalbarhet och säkerhet. För att ett Zigbee-nätverk ska fungera effektivt måste alla noder i nätverket vara korrekt konfigurerade, och enheter som tillhör olika Zigbee-nivåer – som kontrollenheter, routrar och slutnoder – måste kommunicera på rätt sätt.

I framtiden kommer både Bluetooth och Zigbee att spela en central roll i utvecklingen av Internet of Things. De möjliggör smidiga anslutningar och låg effektförbrukning, vilket är avgörande för att bygga smarta system som kräver pålitlig kommunikation och lång batteritid.

Hur konstruerar man ett inbyggt system som är både säkert och robust?

Ett inbyggt system kan inte fungera utan strömförsörjning. Det är därför avgörande att tidigt i designprocessen beakta möjligheten till reservkraft. En design som tillåter en kontrollerad nedtrappning vid strömavbrott kan minimera potentiella faror. I exemplet med en bro som öppnas för båttrafik innebär detta att brospannet måste förbli uppe, inte falla okontrollerat ned. Att brospannet faller ner vid fel tillfälle kan få katastrofala följder. Detta ställer specifika krav på den mekaniska konstruktionen – både på motorernas hållfasthet och på växlingarnas tillförlitlighet. Ett mer avancerat system kan dessutom innefatta en kraftigare reservkraftkälla som inte bara förhindrar katastrof utan även aktivt kan slutföra en säkerhetssekvens: sänka brospannet, höja bommarna och återställa normal status efter att faran är undanröjd.

Design för robusthet innebär inte att man försöker förutsäga alla möjliga katastrofer – meteoritnedslag eller dammbrott uppströms går knappast att bygga bort. Det handlar snarare om att väga sannolikheten för olika fel mot kostnaden för att förhindra dem. Exempelvis finns motorer som tål temperaturer över 120°C, men dessa är dyra och sannolikheten att de behövs kan vara försumbar. Att ange parametrar för systemets funktion – såsom driftstemperatur eller förväntad livslängd – måste därför ske i relation till sannolikhet och ekonomi.

För vissa komponenter, särskilt inom elektronik, finns omfattande databaser över felstatistik. Integrerade kretsar visar ofta det som kallas “badkarskurvan”: hög felfrekvens i början (s.k. "burn-in"-period), följt av en lång stabil period med låg felfrekvens, och därefter en stigande kurva i takt med åldrande och slitage. Genom att testa komponenter under deras burn-in-period kan tillverkare sortera bort tidiga fel. Till exempel kan man testa 2000 icke-flyktiga minneskretsar för 100 000 skrivcykler – en process som är möjlig att genomföra inom ett par timmar. Mekaniska komponenter, såsom mikrobrytare, kan testas genom att simulera hundratusentals cykler. Detta tar längre tid, men är ofta genomförbart.

Faktorer som miljöförhållanden påverkar kraftigt en komponents livslängd: hög värme försämrar integrerade kretsar, medan fukt påverkar mekaniska kontakter och borstade DC-motorer negativt. Därför måste komponenter anpassas till den miljö där de ska verka. Ett relä som förväntas öppna/stänga varje sekund vid varje båtpassage under många minuter riskerar att slitas ut inom ett år – och bör då ersättas med ett mer hållbart, om än dyrare, alternativ. Samma relätyp kan däremot vara fullt tillräcklig för en signal som endast aktiveras en gång per passage. Om systemet dessutom loggar antalet operationer, kan underhållspersonal schemalägga byten innan fel inträffar.

Postinstallationstester kan utföras för att säkerställa att inga komponenter fallerar under burn-in-perioden. Bron i exemplet kan köras i testläge nattetid när trafiken är låg. Tillverkare kan även välja att köpa förtestade komponenter eller testa systemdelar, såsom spänningsmotorer, i laboratoriemiljö innan installation.

Det finns flera principer som styr konstruktionen av robusta och säkra system. Redundans är en av dem – men det innebär nästan alltid en ökad enhetskostnad. Att utforma ett system som är modulärt och där fel i en delkomponent inte sprider sig till andra är ett exempel på ett designval som kräver mer tankearbete men inte nödvändigtvis påverkar kostnaden per produkt. Man måste väga risk mot konsekvens. Om en viss delmodul kan fallera utan större konsekvenser – till exempel kommunikationsmodulen som skickar trafikdata till en myndighet – kanske det inte är värt att investera i extra säkerhet där. Men brospannets drivsystem är en kritisk komponent där ett fel kan innebära allvarliga problem.

Man måste också bedöma sannolikheten för att ett fel verkligen inträffar. Kommunikationsmodulen kan drabbas av problem i sin trådlösa anslutning – en relativt vanlig händelse med begränsade följder. Drivsystemet för bron däremot, kan göras mycket tillförlitligt genom att använda kraftfulla motorer och robusta växlar. Det är denna typ av bedömningar som gör att ingenjörer kan prioritera rätt under designprocessen.

Det är också viktigt att förstå att alla dessa åtgärder – testning, miljöanpassning, redundans, modularitet – i slutändan utgör verktyg för att bygga ett system som inte bara fungerar, utan fungerar pålitligt under lång tid i en oförutsägbar verklighet.

Hur kan energi skördas för inbäddade system i områden utan pålitlig strömförsörjning?

Ett inbäddat system som inte kan förlita sig på en konstant strömkälla måste ofta använda alternativa metoder för att få energi. I dessa system kan energiskörd vara ett effektivt sätt att säkerställa att systemet fortsätter att fungera även i avlägsna eller svårtillgängliga miljöer. Emellertid innebär användningen av skördad energi flera utmaningar som designteamet måste hantera för att uppnå en tillförlitlig och långsiktig drift.

Vanligtvis utnyttjas fyra huvudsakliga energikällor: solenergi, vindkraft, vattenkraft och rörelseenergi. Dessa kan kompletteras med teknologier som skördar termisk energi, eller till och med mer innovativa alternativ som mikrobiella bränsleceller och fotosyntes från alger.

Solenergi är en av de mest använda källorna för energi i inbäddade system, särskilt i områden med mycket sol. Små solpaneler, som de som genererar upp till 15 watt vid optimala förhållanden, är ofta tillräckliga för små enheter som kräver minimal energi. Ett typiskt problem här är dock att solenergin inte är konstant. Under morgon- och kvällstimmarna minskar solens intensitet, och det finns ingen energi på natten. Därför kan solpaneler behöva kompletteras med andra energikällor för att upprätthålla en jämn energiförsörjning.

Vindkraft kan också vara en användbar källa till energi för inbäddade system. Små vindkraftverk, som är designade för att generera upp till 400 watt, kan erbjuda en stabil energikälla i områden med konsekvent vind. Men precis som med solenergi är vindkraft beroende av miljöförhållandena. För att optimera energiskörden måste vindkraftverken vara riktade mot vinden, och när vinden minskar eller ändrar riktning, minskar även effektiviteten hos turbinerna.

Vattenkraft, när den är tillgänglig, erbjuder en stabil och relativt pålitlig energikälla. Floder och kustlinjer kan ofta ha en jämn ström eller vågrörelse, vilket gör det möjligt att samla in energi genom olika typer av system som omvandlar rörelseenergi från vattnet till elektrisk energi. Trots denna stabilitet är vattenkraft inte alltid tillämplig på inbäddade system, särskilt när systemet inte är nära en vattendrag.

Rörelseenergi är en annan källa till skördad energi. Här kan rörelse som uppstår från exempelvis mänsklig aktivitet (gång eller armrörelser) eller till och med seismisk aktivitet användas för att generera energi. I vissa kreativa tillämpningar kan till och med vindens rörelse genom trädgrenar och löv samlas in för att generera energi i skogsområden. Dock är rörelseenergi ofta mindre pålitlig och mer sporadisk, vilket gör den bäst lämpad för system som endast är i drift när rörelse är närvarande.

Det är också möjligt att skörda energi från termiska skillnader, även om mängden energi som kan samlas in ofta är liten. En temperaturdifferens på fem grader kan till exempel generera cirka 40 microwatt vid 3 volt. Detta är tillräckligt för att driva små enheter eller för att långsamt ladda ett batteri.

När det gäller designstrategier för inbäddade system som ska användas i miljöer där energi inte alltid finns tillgänglig, måste ingenjörerna överväga flera faktorer. Först och främst måste energiförbrukningen i systemet vara noggrant mätt, vilket gör det möjligt att förstå systemets behov och planera lämpliga energikällor. En noggrant vald processor kan optimera energiutnyttjandet, där effektivare processorer kan minska driftstiden, vilket på lång sikt sparar energi. Det är också viktigt att använda vilolägen för att minska energiförbrukningen när systemet inte är i aktiv drift.

En annan kritisk aspekt är att planera för perioder då energi är otillräcklig för att driva systemet. I sådana fall måste systemet kunna stängas av på ett kontrollerat sätt – en så kallad "graceful shutdown". För vissa system, som sensornoder, kan det vara tillräckligt att helt enkelt stoppa driften, medan mer komplexa applikationer, som patientövervakning, kan behöva registrera aktuella mätvärden eller spara beräkningsdata innan systemet stänger av sig.

För att optimera användningen av skördad energi är det också viktigt att förstå de miljömässiga förhållandena i det område där systemet ska användas. Genom att noggrant övervaka dessa förhållanden kan designteamet välja den mest effektiva och pålitliga energikällan för den specifika platsen.

Det är också viktigt att förstå att energiskörd och användning inte är en engångsplanering. Det är ett kontinuerligt forskningsområde där nya teknologier och innovativa lösningar ständigt utvecklas. Några av de mer lovande forskningsområdena inkluderar användningen av fotosyntes och mikrobiella bränsleceller, som har potential att revolutionera hur vi samlar in och använder energi i små system.