Använda Bluetooth 5.1-kompatibla plattformar för precis tillgångsspårning och inomhuspositionering – del 2
Bidraget med av DigiKeys nordamerikanska redaktörer
2019-08-14
Redaktörens anmärkning: Del 1 i den här serien om två delar beskriver funktionerna i Bluetooth 5.1 Direction Finding, ett tillägg till den fasta Bluetooth Low Energy-programvaran som gör det möjligt att utveckla AoA- (Angle of Arrival) och AoD-baserade (Angle of Departure) positioneringstillämpningar, exempelvis tillgångsspårnings- och inomhuspositionssystem (IPS). Den här andra (och sista) artikeln i serien handlar om lämpliga utvecklingsplattformar och SoC-enheter som kan användas för att bygga och konfigurera Bluetooth 5.1 Direction Finding-tillämpningar.
Version 5.1 (dvs. den senaste versionen) av kärnspecifikationen för Bluetooth (Bluetooth Core Specification) har gjort det lättare för utvecklarna att implementera tillgångsspårning och inomhuspositionering. Uppdateringen innebär att Bluetooth-paketet har utökats med ”continuous tone extension” (CTE), vilket gör det lättare för mottagaren att, utan störningseffekter, extrahera IQ-signaldata (den fas- och kvadraturfasinformation som behövs för att beräkna en sändtagares position) från RF-signalen. Dessutom är det nu mycket enklare att konfigurera protokollet för IQ-sampling, genom att använda HCI-gränssnittet (Host Controller Interface).
Att extrahera IQ-data är dock inte särskilt enkelt ändå, utan kräver att man använder en väl utformad antennmatris i kombination med en trådlös mikroprocessor. Även om IQ-informationen är tillgänglig, måste den bearbetas för att ta hänsyn till flervägsmottagning, signalpolarisering och utbredningsfördröjningar, brus och jitter, innan sändarens plats kan beräknas.
I den här artikeln beskrivs vad som behövs för att skapa en fungerande lösning. Vi presenterar lämpliga utvecklingsplattformar och moduler från Dialog Semiconductor, Silicon Labs och Nordic Semiconductor, som kan användas för att bygga Bluetooth 5.1-baserade tillämpningar för riktningsidentifiering. Slutligen visar vi också hur man kommer igång med att bygga prototyper och att testa och verifiera konstruktioner som baseras på de nämnda plattformarna.
Bluetooth 5.1-paketets arkitektur
Bluetooth 5.1-paketet har en CTE-komponent innehållande en digital ”etta” som säkerställer att antennen, för just den delen av signalen, tar emot konstant frekvens (i stället för den modulerade frekvens som normalt används för att överföra Bluetooth-data). Denna datasträng är inte avkorrelerad. En konfigurerad Bluetooth Low Energy-mottagare som tar emot ett paket innehållande en CTE-signal börjar IQ-sampla signalen under CTE-perioden. En IQ-sampling består av signalens amplitud och fasvinkel, vilka motsvarar koordinater i ett kartesiskt koordinatsystem (figur 1).
Figur 1: Riktningsidentifiering inleds med att den mottagande Bluetooth LE-enheten samplar IQ-signalens fasvinkel och amplitud under CTE-delen av Bluetooth-paketet, för varje antenn i matrisen. Samplingarna representeras av kartesiska koordinater (I, Q). (Bildkälla: Bluetooth SIG)
I version 5.1 av Bluetooth Core Specification har vissa ändringar införts, vilket gör det möjligt att använda AoA (angle of arrival) och AoD (angle of departure) för ansluten (”parkopplad”) eller anslutningsfri kommunikation. Vanligen används AoA för anslutna tillämpningar såsom tillgångsspårning, medan AoD används för anslutningsfria tillämpningar, som IPS.
För ansluten riktningsidentifiering används vanliga Bluetooth 5.1-paket med CTE-delen tillagd i slutet. För anslutningsfri riktningsidentifiering är CTE-delen inlagd i periodiska Bluetooth-annonseringspaket (figur 2).
Figur 2: Bluetooth 5.1-paketstruktur, med plats och varaktighet för CTE-delen. I anslutna tillämpningar läggs CTE-delen till i standardpaketet, medan annonseringspaket används i anslutningsfria tillämpningar. (Bildkälla: Bluetooth SIG)
I både anslutna och anslutningsfria system måste utvecklaren utföra viss konfigurering för att initiera CTE-komponenterna vid sändaren och åstadkomma IQ-sampling hos mottagaren. Den exakta processen beror på om AoA eller AoD används.
Att bygga en lösning för riktningsidentifiering
AoA är lämpligt för tillämpningar såsom tillgångsspårning, där sändaren är en mobil komponent, exempelvis en enkel lågkostnadstagg, medan mottagarna (lokaliserarna) är fasta referenspunkter. Fördelen med ett sådant system är att taggen bara behöver skicka Bluetooth 5.1-protokollpaket med hjälp av en enda antenn (i stället för en matris av antenner), och slipper köra de beräkningsintensiva algoritmerna för att bestämma sändarens plats (se del 1).
För att utforma en tagg i ett tillgångsspårningssystem följer man ett antal relativt enkla RF-designprinciper, men taggen behöver en Bluetooth 5.1-sändtagare, så att paketen kan konfigureras för att innefatta CTE-delarna. Vid val av en sändtagare är det viktigt att ta hänsyn till att CTE-delen inte går att skicka över ett Bluetooth LE-kodat PHY (den komponent som används för att implementera Bluetooth 5-teknikens longrange-egenskap) – PHY-skiktet måste i vara okodat.
Det finns ett antal kommersiella Bluetooth 5.1-produkter. Dialog Semiconductor erbjuder exempelvis SoC-enheten DA14691 Bluetooth 5 LE för platstjänsttillämpningar. Kretsen drivs av en Arm® Cortex®-M33-mikroprocessor och har 512 kbyte RAM-minne. Dialog har gjort en Bluetooth 5.1-stack tillgänglig för DA14691. Även Silicon Labs har en Bluetooth 5.1-stack för sin EFR32BG13 Bluetooth LE-SoC. Kretsen använder en Arm Cortex-M4-mikroprocessor med 64 kbyte RAM-minne och 512 kbyte flashminne. Sedan har vi Nordic Semiconductor, som har gått steget längre genom att lansera en ny riktningsidentifierande maskin- och programvarulösning i form av nRF52811. Denna Bluetooth LE-SoC är Bluetooth 5.1-kompatibel och integrerar en Arm Cortex M4-mikroprocessor kombinerat med flerprotokollradion från Nordics högkvalitativa nRF52840-enhet. Kretsen har 192 kbyte flashminne och 24 kbyte RAM.
Enheterna är lämpliga för sändare och mottagare i Bluetooth Direction Finding-tillämpningar. Samtliga har stöd för CTE-överföring och kan IQ-sampla med hjälp av profilnivåinformation om sändarens antennlayout. Teoretiskt kan enheterna också utföra de avancerade beräkningar som behövs för att fastställa den inkommande radiosignalens infallsvinkel och därefter sändtagarens position. Arm Cortex-M33- och M4-processorerna i de nämnda SoC-enheterna är visserligen relativt kraftfulla, men om de används för samtidig övervakning av det trådlösa protokollet och avancerade algoritmer för riktningsidentifiering, kan tillämpningen bli ganska seg.
Beroende på prestanda- och latenskraven kan utvecklaren överväga att använda en kompletterande processor för att få tillgång till mer RAM-minne och flashminne, specifikt för tillämpningens programvara. Nordics nRF52811, till exempel, är utformad för att kopplas till en kompletterande processor via gränssnitten Inter-Integrated Circuit (I2C) och Serial Peripheral Interface (SPI).
En annan designutmaning är att hålla ner kostnaderna: SoC-enheter för Bluetooth LE saknar vanligen flera antennportar och har inte den omkopplingskapacitet som krävs för systematisk genomgång av de olika antennerna i matrisen. Det behövs därför en RF-omkopplare för att ansluta SoC-enhetens enda antennport till de olika antennerna i matrisen, och för att samla in IQ-data från var och en av dem (figur 3).
Figur 3: I ett AoA-baserat tillgångsspårningssystem använder taggen en enda antenn och en konventionell SoC-enhet för Bluetooth LE, för att skicka Bluetooth 5.1-paket med CTE-signaler. Huvudberäkningen utförs på flerantennsystemets lokaliserarsida, där de signaldata som samlas in av lokaliseraren matas till en platsmotor som kör algoritmer för att identifiera riktningen. (Bildkälla: Bluetooth SIG)
Mottagaren (eller lokaliseraren) måste använda en antennmatris för att, med hjälp av IQ-informationen, detektera signalens fasskillnad beroende på skillnaden i avstånd från varje matrisantenn till den sändande antennen. Det är skillnaden i fasvinkeln vid varje antenn som bestämmer AoA eller AoD.
Antenner för riktningsidentifiering är normalt indelade i tre matristyper: ULA (uniform linear array), URA (uniform rectangular array) och UCA (uniform circular array). För utformning av antennmatriser krävs erfarenhet, och för utvecklaren är det ofta mer effektivt att låta en tredjepartsspecialist konfigurera en optimal matris och presentera en strukturlista för konstruktionen, så som beskrevs i del 1.
Kraven för antennmatrisen, kompletterande processorer, extra minne och antennhantering gör systemet mer komplext på lösningens lokaliserarsida, där också kostnaden och effektförbrukningen blir högre. Ett plus är dock att lokaliseraren vanligen har en fast plats, vilket innebär att den kan drivas från elnätet. I de flesta lösningar behövs det relativt få enheter, jämfört med antalet taggar.
AoD-system är lite mer avancerade. I ett AoD-scenario är det sändaren som innefattar antennmatrisen. Mottagaren utför IQ-samplingen, gör mätningar från sin enda antenn och använder vissa aspekter av fjärrsändarens antennmatris för att koppla mätningarna till specifika antenner.
I AoD-systemet måste fasta lokaliserarsändare ha en Bluetooth 5.1-sändtagare, en RF-omkopplare och flera antenner för att skicka platssignalen, men det behövs ingen ytterligare processor eller extra minne eftersom signalen inte analyseras på den här sidan. Men för den mobila mottagaren, som bara behöver en enda antenn, behövs det maskinvara och programvara för att utföra riktningsberäkningarna (figur 4). I exempelvis IPS-tillämpningar, är mottagaren sannolikt en Bluetooth 5.1-kompatibel smart telefon, som har tillräckligt bra processor- och minnesresurser för att utföra uppgiften.
Figur 4: I ett AoD-riktningssökande IPS-system använder de fasta sändarna antennmatriser för att skicka Bluetooth 5.1-paket med CTE-signaler. Huvudberäkningen utförs i den mobila enheten, till exempel en konsuments smarta telefon. (Bildkälla: Bluetooth SIG)
Bygga prototyper med Bluetooth 5.1
Dialog Semiconductor, Silicon Labs och Nordic Semiconductor har hittills inriktat sina lösningar på den del av AoA- och AoD-tillämpningarna som skickar CTE-signalen, tar emot paketen och utför IQ-samplingen. Sedan är det upp till utvecklaren att bestämma vilka resurser (dvs. maskinvara och fast programvara för lokaliseringsmotorn) som behövs för att utföra riktningsidentifieringsberäkningarna. Men det här kommer sannolikt att förändras inom den närmaste framtiden, när förbättrade lösningar för riktningsidentifiering kommer ut på marknaden.
Till exempel erbjuder alla tre företagen utvecklingsverktyg som stöder prototyputveckling av en tagg i ett AoA-baserat tillgångsspårningssystem. Utvecklingsprocessen är generellt samma som för utveckling av en konventionell trådlös lågeffektsenhet. Ett exempel är en utvecklingssats med en fabriksklar, fullt fungerande sändtagare som baseras på Bluetooth 5.1-målenheten och kringutrustningen. Det hela ansluts till en PC eller Mac som är försedd med en lämplig integrerad utvecklingsmiljö (IDE) och kretstillverkarens utvecklingsprogramvara.
Dialogs råd är att basera Bluetooth 5.1-utvecklingen på utvecklingssatsen DA14695-00HQDEVKT-P-ND. Satsen innehåller ett moderkort, ett dotterkort baserat på SoC-enheten DA14695 Bluetooth 5.1 samt kablar för att ansluta till en PC-dator. Utvecklingssatsen har också stöd för Arduinos och MikroElektronikas mikroBUS-skärmar och effektmätning.
Silicon Labs erbjuder startsatsen SLWSTK6006A Wireless Gecko Starter Kit. Denna utvecklingssats innehåller inte mindre än sex EFR32BG21 Bluetooth 5.1 SoC-baserade dotterkort, vilket ger möjlighet att bygga prototyper med flera taggar. Utvecklingssatsen är avsedd att användas med företagets Simplicity Studio, som stöder Flex SDK-paketet av verktyg för applikationsutveckling.
Nordic erbjuder utvärderingskortet nRF52840-DK, baserat på företagets nRF52840 SoC-enhet, som är fullt kompatibel med nRF52811 Bluetooth 5.1 SoC-enheten. Applikationsutveckling och systemkonfigurering utförs via Nordics nRF5 SDK, ett programutvecklingsverktyg som stöds av många vanliga IDE:er. (För mer information om utveckling av Bluetooth Low Energy-tillämpningar, se DigiKey-artikeln ”Bluetooth 4.1, 4.2 och 5-kompatibla Bluetooth Low Energy SoC:er och verktyg som möter IoT-utmaningarna ”.)
Bluetooth 5.1 skickar inte paket med CTE eller utför IQ-sampling som standard. Utvecklaren måste lägga till den kapaciteten genom att konfigurera systemet med hjälp av tillverkarens utvecklingsverktyg. Verktygen ger tillgång till HCI-gränssnittet (Host Controller Interface), som värden sedan använder för att konfigurera styrenheten för CTE-generering och IQ-sampling.
För anslutningsfria scenarier (den typ som främst används med AoD) initieras styrenheten genom att värden utför följande åtgärder (figur 5):
- Konfigurerar utökad annonsering
- Konfigurerar periodisk annonsering
- Konfigurerar CTE-överföring
- Aktiverar CTE-annonsering
- Aktiverar periodisk annonsering
- Aktiverar utökad annonsering
- Ställer in annonseringsdata
Figur 5: Värdens åtgärder för styrenhetsinitiering i anslutningsfria scenarier (som främst används med AoD). (Bildkälla: Bluetooth SIG)
Avsökande enheter som är utformade för att ta emot CTE-data och ta IQ-samplingar från den annonserande enheten måste konfigureras enligt följande:
- Konfigurera utökad avsökning
- Starta utökad avsökning
- Synkronisera med mottagna periodiska annonseringssynkroniseringspaket
- Aktivera anslutningsfri IQ-sampling
I anslutna scenarier, som främst används för AoA, efterfrågar master- eller slavenheten paket med CTE-signaler från den andra enheten. Master- eller slavenheten gör detta genom att skicka ett LL-paket innehållande ett antal parametrar för konfigurering av CTE-delen. Om CTE inte stöds på fjärrenheten, skickar den information om det till den lokala enheten, så att den lokala enheten inte skickar ytterligare CTE-förfrågningar via den aktuella anslutningen.
Här följer en utförligare beskrivning av processen. Den enhet som begär CTE-paket fortsätter genom att:
- Konfigurera parametrar för CTE-mottagning i styrenheten
- Aktivera CTE-förfrågningar i styrenheten
- Ta emot och bearbeta IQ-rapporter
- Inaktivera förfrågningar om CTE-överföring när det inte längre behövs
Svarsenheten fortsätter genom att:
- Konfigurera parametrar för CTE-överföring i styrenheten
- Aktivera CTE-svar i styrenheten
- Ta emot och svara på LL-CTE-förfrågningar från den andra enheten
I Bluetooth 5.1-specifikationen har HCI-gränssnittet ett nytt kommando – ”LE Read Antenna Information” – som gör att värden kan hämta information om vilka antenner som stöds av styrenheten. Proceduren för att hämta information om antennmatrisen i en fjärrenhet måste dock definieras.
Vid IQ-sampling med en antennmatris måste varje sampling hänföras till en specifik antenn, och samplingen måste utföras på ett systematiskt sätt. Det kan ske med hjälp av ett mönster som preciseras i HCI-konfigurationskommandon och följer strikta regler för timing. Hur dessa regler tillämpas och vilka regler som gäller för olika enheter, beror på om AoA eller AoD används, och om enheten överför eller tar emot. Exempel: En sändande enhet med en enda antenn skickar flera CTE-paket kontinuerligt. Men IQ-samplingen utförs alltid av den mottagande enheten, oberoende av antalet antenner.
Den avsatta tiden för bearbetning av CTE-delen delas upp i en inledande 4 μs vaktperiod, en 8 μs referensperiod och sedan en sekvens av antingen omkopplingar eller samplingar, eller par av omkopplingar och samplingar (figur 6).
Figur 6: Det här exemplet illustrerar omkopplings- och samplingsluckor på 1 µs respektive 2 µs i en AoA-tillämpning. Den sändande enheten med en enda antenn skickar paket med CTE kontinuerligt. IQ-sampling utförs av den mottagande enheten, i en omkopplings- och samplingssekvens. (Bildkälla: Bluetooth SIG)
Under referensperioden sker ingen antennomkoppling, och åtta IQ-samplingar utförs. Värden kan använda referenssamplingarna för att fastställa signalens frekvens och därmed även våglängden, vilket förbättrar vinkelberäkningarnas precision.[1]
Slutsats
Förbättringar i version 5.1 av Bluetooth Core Specification genererar de rådata som behövs för riktningsidentifiering med hjälp av CTE och IQ-sampling. Specifikationen utgår från beprövad teknik för bestämning av signalriktning, och ger en standard för gränssnitt, konfigurationer och kommunikation. Ytterligare en fördel är att noggrann riktningsidentifiering nu är kompatibel mellan alla kretsleverantörer som erbjuder Bluetooth-lösningar.
Kretstillverkarna har varit snabba med att erbjuda maskinvarulösningar, programvara, utvecklingssatser och SDK:er som gör det möjligt att snabbt börja konfigurera system där riktningsidentifiering med Bluetooth används. För kommersiella tillgångsspårnings- och IPS-tillämpningar krävs det fortfarande gedigen utvecklingsexpertis, i synnerhet när det gäller utformning av antennmatriser och fast platsmotorprogramvara, men riktningsidentifiering med Bluetooth kommer att förenkla uppgiften i framtiden.
Referens
1: Bluetooth Direction Finding: A Technical Overview, Martin Wooley, Bluetooth SIG, mars 2019.
Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of DigiKey or official policies of DigiKey.




