Usare piattaforme abilitate per Bluetooth 5.1 per una tracciabilità delle risorse e un localizzazione indoor precisi - Parte 2

Contributo di Editori nordamericani di DigiKey

Nota del redattore: La Parte 1 di questo articolo in due parti descrive le capacità di Bluetooth 5.1 Direction Finding, un'aggiunta al firmware di Bluetooth Low Energy che consente ai progettisti di sviluppare applicazioni di localizzazione basate sull'Angolo di arrivo (AoA) e sull'angolo di partenza (AoD), ad esempio i sistemi di localizzazione indoor (IPS) e la tracciabilità delle risorse. Questa seconda e ultima parte esplora le piattaforme di sviluppo e i SoC idonei sui quali è possibile costruire e configurare applicazioni di radiogoniometria Bluetooth 5.1.

L'ultima versione della Bluetooth Core Specification, la 5.1, ha reso più facile per gli sviluppatori implementare sistemi di monitoraggio delle risorse e di localizzazione indoor (IPS). In particolare, la specifica aggiunge un'estensione di tono continuo (CTE) a un pacchetto Bluetooth per consentire a un ricevitore di estrarre i dati "IQ" (le informazioni in fase e in quadratura necessarie per calcolare la posizione di un transceiver) dal segnale RF senza gli effetti disruttivi della modulazione. Inoltre, ora è molto più semplice configurare il protocollo per eseguire il campionamento IQ utilizzando l'interfaccia controllata dall'host (HCI) per configurare il controller per questo campionamento.

Tuttavia, estrarre i dati IQ non è ancora un'operazione semplice, poiché richiede l'uso di un array di antenne ben progettato e di un microprocessore wireless. Anche quando i dati IQ sono stati resi disponibili, per poter calcolare la posizione del trasmettitore occorre comunque elaborarli per tenere conto della ricezione multipercorso, dei ritardi di polarizzazione e propagazione del segnale, del rumore e del jitter.

Questo articolo descrive ciò che serve per realizzare una soluzione pratica e presenta le piattaforme e i moduli di sviluppo adeguati di Dialog Semiconductor, Silicon Labs e Nordic Semiconductor che possono essere utilizzati per costruire applicazioni di radiogoniometria Bluetooth 5.1. Da ultimo, mostra come iniziare a prototipare, testare e verificare i progetti su queste piattaforme.

Architettura di pacchetti Bluetooth 5.1

I pacchetti Bluetooth 5.1 includono una CTE composta da "1s" digitali per garantire che per questa parte del segnale l'antenna riceva una frequenza costante (invece della frequenza modulata normalmente utilizzata per trasmettere dati Bluetooth). Inoltre, questa stringa di dati non è "whitened" (ovvero decorrelata). Una radio Bluetooth Low Energy (BLE) adeguatamente configurata che riceve un pacchetto che incorpora un segnale CTE preleva campioni di IQ durante il periodo CTE. Un singolo campione di IQ è costituito dall'ampiezza del segnale e dall'angolo di fase, rappresentati come coordinate cartesiane (Figura 1).

Grafico del dispositivo BLE che prende campioni di IQ di angolo di fase e ampiezzaFigura 1: Nelle applicazioni di radiogoniometria, il dispositivo BLE ricevente prende campioni di IQ di angolo di fase e ampiezza durante la parte CTE di un pacchetto Bluetooth per ogni antenna di un array. Questi campioni sono rappresentati come coordinate cartesiane (I,Q). (Immagine per gentile concessione di Bluetooth SIG)

La Bluetooth Core Specification v5.1 riporta dettagliatamente le modifiche al controller BLE che consentono alle tecniche AoA e AoD di utilizzare la comunicazione connessa ("accoppiata") o senza connessione. In genere, però, la tecnica AoA viene utilizzata per applicazioni connesse come la tracciabilità delle risorse, mentre quella AoD è utilizzata con applicazioni senza connessione come IPS.

La radiogoniometria connessa utilizza pacchetti Bluetooth 5.1 standard con la CTE aggiunta alla fine. La radiogoniometria senza connessione, invece, utilizza una CTE aggiunta ai pacchetti periodici di advertising Bluetooth (Figura 2).

Immagine della struttura di pacchetti Bluetooth 5.1Figura 2: Struttura di un pacchetto Bluetooth 5.1 con indicate la posizione e la durata della CTE. Le applicazioni connesse aggiungono la CTE ai pacchetti standard, mentre quelle senza connessione utilizzano un pacchetto di advertising. (Immagine per gentile concessione di Bluetooth SIG)

In entrambi gli scenari con e senza connessione, lo sviluppatore deve eseguire alcune fasi di impostazione e configurazione per avviare le CTE sul trasmettitore e il campionamento IQ sul ricevitore. Il processo esatto dipende dalla scelta fra applicazioni basate su AoA o su AoD.

Realizzare una soluzione di radiogoniometria

AoA è adatta per applicazioni come la tracciabilità delle risorse, dove il trasmettitore è un elemento mobile come un semplice tag a basso costo, mentre i ricevitori (o localizzatori) sono punti di riferimento fissi. Il vantaggio di questa implementazione è che il tag deve trasmettere i pacchetti del protocollo Bluetooth 5.1 utilizzando una sola antenna (invece che un array). Inoltre non è necessario eseguire algoritmi ad alta intensità di calcoli per determinare la posizione del trasmettitore (vedere la Parte 1).

Mentre la progettazione di un tag in un sistema di tracciabilità delle risorse segue principi di progettazione relativamente semplici di radiofrequenza (RF), perché i pacchetti possano essere configurati per includere le CTE, il tag richiede un transceiver Bluetooth 5.1. Quando si seleziona un transceiver, è importante tenere presente che la CTE non può essere vista su un PHY codificato BLE (la radio usata per implementare la funzione di lungo raggio della tecnologia Bluetooth 5); il PHY deve essere di tipo non codificato.

In commercio sono disponibili alcuni prodotti Bluetooth 5.1, compreso ad esempio il SoC Bluetooth 5 LE DA14691 di Dialog Semiconductor, per applicazioni di servizi di localizzazione. Il chip è basato su un microprocessore Arm® Cortex®-M33 e include 512 kB di RAM. Dialog ha messo a disposizione lo stack Bluetooth 5.1 per DA14691. Anche Silicon Labs ha rilasciato uno stack Bluetooth 5.1 per il suo SoC BLE EFR32BG13; il chip usa un microprocessore Arm Cortex-M4 con 64 kB di RAM e 512 kB di Flash. Nordic Semiconductor ha compiuto un ulteriore passo avanti lanciando una nuova soluzione hardware e software di "radiogoniometria": nRF52811. Questo SoC BLE è compatibile con Bluetooth 5.1 e integra un microprocessore Arm Cortex M4 abbinato alla radio multiprotocollo del dispositivo nRF52840 di fascia alta di Nordic. Il chip include 192 kB di Flash e 24 kB di RAM.

Questi dispositivi sono idonei per trasmettitori e ricevitori in un'applicazione di radiogoniometria Bluetooth. Ognuno di essi supporta la trasmissione CTE e può acquisire campioni di IQ con l'aiuto di informazioni sul livello del profilo che specificano il layout dell'antenna del trasmettitore. In teoria, questi dispositivi possono anche eseguire i complessi calcoli richiesti per determinare l'angolo di incidenza del segnale radio in ingresso e, da questo, la posizione del transceiver. Tuttavia, mentre i processori Arm Cortex-M33 e M4 usati da questi SoC sono relativamente potenti, se sono impegnati nella supervisione del protocollo wireless mentre stanno eseguendo complessi algoritmi di radiogoniometria, le prestazioni dell'applicazione potrebbero subire dei rallentamenti.

A seconda delle prestazioni e della latenza richieste nell'applicazione, uno sviluppatore potrebbe prendere in considerazione un processore abbinato - con accesso a RAM e Flash aggiuntive - specifico per il software dell'applicazione. nRF52811 di Nordic, ad esempio, è progettato per interfacciarsi con un processore abbinato tramite interfacce a circuito inter-integrato (I2C) e interfaccia periferica seriale (SPI).

Un'ulteriore sfida progettuale è rappresentata dal fatto che, per contenere i costi, i SoC BLE in genere non hanno né le porte per più antenne né la capacità di commutazione necessaria per elaborare sistematicamente ogni antenna dell'array. Di conseguenza, serve un interruttore RF per collegare la singola porta delle antenne del SoC BLE alle diverse antenne dell'array e per passare da un'antenna all'altra per raccogliere i dati IQ da ognuna di esse (Figura 3).

Schema del sistema di tracciabilità delle risorse tramite radiogoniometria AoAFigura 3: In un sistema di tracciabilità delle risorse tramite radiogoniometria AoA, il tag usa una sola antenna e un SoC BLE tradizionale per inviare pacchetti Bluetooth 5.1 con la CTE. I calcoli principali avvengono sul lato del localizzatore delle diverse antenne del sistema, dove i dati del segnale raccolti dal localizzatore vengono inviati a un motore di localizzazione che esegue gli algoritmi di radiogoniometria. (Immagine per gentile concessione di Bluetooth SIG)

Il ricevitore (o localizzatore) richiede un array di antenne per rilevare - attraverso i dati IQ - la differenza di fase del segnale dovuta alla differenza della distanza tra ogni antenna dell'array e la singola antenna trasmittente. È la differenza tra l'angolo di fase di ogni antenna che determina l'AoA o l'AoD.

Le antenne sono in genere di tre tipi: array lineare uniforme (ULA), array rettangolare uniforme (URA) e array circolare uniforme (UCA). La progettazione dell'array di antenne richiede molta esperienza e spesso è preferibile che lo sviluppatore lasci a un esperto il compito di configurare l'array ottimale e stilare una distinta base per una produzione in grandi volumi, come discusso nella Parte 1.

Il requisito di array di antenne, processori abbinati, memoria aggiuntiva e gestione delle antenne aumenta la complessità del lato localizzatore della soluzione di tracciabilità delle risorse, così come il suo costo e il consumo energetico. L'aspetto positivo è che i localizzatori in genere rimangono in posizioni fisse, per cui potrebbero essere alimentati dalla rete elettrica. Per la maggior parte delle soluzioni, servirà un numero relativamente piccolo di dispositivi rispetto al numero di tag.

Le implementazioni AoD sono un po' più complesse. In questo scenario, l'array di antenne è incorporato nel trasmettitore. Il ricevitore esegue il campionamento IQ, prendendo le misurazioni dalla sua singola antenna e utilizzando i dettagli del disegno dell'array di antenne del trasmettitore remoto per attribuire le varie misurazioni a ciascuna specifica antenna.

Nell'implementazione AoD, i beacon del localizzatore fisso richiedono un transceiver Bluetooth 5.1, un interruttore RF e più antenne per trasmettere il segnale del beacon, ma non il processore e la memoria in più che servono nelle implementazioni AoA perché su questo lato del collegamento non viene eseguita nessuna analisi dei segnali. Tuttavia, il ricevitore mobile, pur richiedendo una sola antenna, non ha bisogno dell'hardware e del software per eseguire i calcoli di radiogoniometria (Figura 4). Nelle applicazioni IPS, ad esempio, è probabile che il ricevitore sia uno smartphone compatibile con Bluetooth 5.1, che dispone di ampie risorse di processore e di memoria per portare a termine il compito.

Schema del sistema IPS di radiogoniometria AoDFigura 4: In un sistema IPS di radiogoniometria AoD, i beacon fissi utilizzano gli array di antenne per inviare pacchetti Bluetooth 5.1 con CTE. I calcoli principali hanno luogo nel dispositivo mobile, ad esempio nello smartphone di un consumatore. (Immagine per gentile concessione di Bluetooth SIG)

Prototipazione con Bluetooth 5.1

Dialog Semiconductor, Silicon Labs e Nordic Semiconductor stanno concentrando le loro soluzioni su applicazioni AoA e AoD che trasmettono la CTE, ricevono questi pacchetti ed eseguono il campionamento IQ. Spetta poi allo sviluppatore decidere quali risorse (cioè hardware e firmware del motore di localizzazione) serviranno per eseguire i calcoli veri e propri di radiogoniometria. È però probabile che nel prossimo futuro le cose cambieranno, via via che i fornitori rilasceranno soluzioni avanzate di radiogoniometria

Ad esempio, ogni azienda offre strumenti di sviluppo che supportano la prototipazione di un tag in un'applicazione di tracciabilità delle risorse AoA. Il processo di sviluppo in genere segue quello di un dispositivo wireless convenzionale a bassa potenza. Ad esempio, un kit di sviluppo che comprende un transceiver di serie completamente funzionale, basato sul dispositivo target Bluetooth 5.1 e sulle periferiche, è collegato a un PC o a un Mac che ospita un ambiente di sviluppo integrato (IDE) idoneo e gli strumenti software del fornitore di chip per consentire lo sviluppo di applicazioni.

Nel caso di Dialog, la società consiglia di basare lo sviluppo di Bluetooth 5.1 sul kit di sviluppo DA14695-00HQDEVKT-P-ND. Il kit include una scheda madre, una scheda figlia basata sul SoC Bluetooth 5.1. DA14695 e cavi per la connessione con un PC. Il kit di sviluppo supporta anche gli shield mikroBUS di Arduino e MikroElektronika e misurazioni di corrente.

Silicon Labs offre lo starter kit Wireless Gecko SLWSTK6006A. Questo kit di sviluppo comprende ben sei schede figlie basate su SoC Bluetooth 5.1 EFR32BG21 che permettono la prototipazione di un sistema di tracciabilità delle risorse con più tag. È progettato per l'uso con Simplicity Studio dell'azienda, che supporta l'applicazione Flex SDK e strumenti di sviluppo software di configurazione.

Nordic offre la scheda di valutazione nRF52840-DK basata sul suo SoC nRF52840, che è pienamente compatibile con il SoC Bluetooth 5.1 nRF52811. Lo sviluppo dell'applicazione e la configurazione del sistema vengono eseguite con il suo SDK nRF5, uno strumento di sviluppo software supportato da diverse IDE di uso comune. (Per ulteriori informazioni sullo sviluppo di applicazioni Bluetooth Low Energy, vedere l'articolo di DigiKey "SoC e strumenti Bluetooth Low Energy compatibili con Bluetooth 4.1, 4.2 e 5 pronti ad affrontare le sfide IoT").

Bluetooth 5.1 non trasmette pacchetti con CTE, né esegue il campionamento IQ per impostazione predefinita. Spetta allo sviluppatore configurare il sistema per aggiungere queste funzioni utilizzando gli strumenti di sviluppo del fornitore. Gli strumenti consentono l'accesso all'interfaccia controllata dall'host (HCI), che viene poi utilizzata dall'host per configurare il controller per generare la CTE e per il campionamento IQ.

Per gli scenari senza connessione (il tipo utilizzato in genere da AoD), l'host esegue le seguenti fasi di inizializzazione del controller (Figura 5):

  1. Configurazione dell'advertising esteso
  2. Configurazione dell'advertising periodico
  3. Configurazione della trasmissione CTE
  4. Abilitazione dell'advertising CTE
  5. Abilitazione dell'advertising periodico
  6. Abilitazione dell'advertising esteso
  7. Impostazione dei dati dell'advertising

Schema delle fasi di inizializzazione del controller eseguite dall'hostFigura 5: Fasi di inizializzazione del controller eseguite dall'host per scenari senza connessione (utilizzati in genere da AoD). (Immagine per gentile concessione di Bluetooth SIG)

I dispositivi di scansione progettati per ricevere i dati CTE e prelevare campioni di IQ trasmessi dall'advertiser devono essere configurati come segue:

  1. Configurare la scansione estesa
  2. Avviare la scansione estesa
  3. Effettuare la sincronizzazione con i pacchetti di sincronizzazione dell'advertising periodico ricevuti
  4. Abilitare il campionamento IQ senza connessione

In caso di scenari collegati, come quelli tipicamente utilizzati da AoA, sia il dispositivo master che quello slave richiedono all'altro dispositivo di inviare pacchetti con CTE. Le richieste vengono effettuate inviando un pacchetto di richiesta CTE Link Layer (LL) che contiene una serie di parametri che configurano la creazione della CTE. Se il dispositivo remoto non supporta la CTE, ne informerà il dispositivo locale e quest'ultimo non invierà ulteriori richieste CTE utilizzando la connessione corrente.

Quelli che seguono sono i dettagli del processo. Il dispositivo che fa la richiesta procede:

  1. Configurando i parametri di ricezione della CTE nel controller
  2. Abilitando le richieste della CTE nel controller
  3. Ricevendo ed elaborando i report IQ
  4. Disabilitando la trasmissione della richiesta della CTE quando non serve più

Il dispositivo che risponde procede:

  1. Configurando i parametri di trasmissione della CTE nel controller
  2. Abilitando le risposte della CTE nel controller
  3. Ricevendo e rispondendo alle richieste della CTE LL dall'altro dispositivo

Nella specifica Bluetooth 5.1 l'HCI comprende un nuovo comando - "LE Read Antenna Information" - che consente all'host di ottenere informazioni sulle antenne supportate dal suo controller. La procedura per ottenere informazioni sull'array di antenne in un dispositivo remoto deve ancora essere definita.

Quando si esegue il campionamento IQ con un array di antenne, ogni campione catturato deve essere attribuito a una specifica antenna e il campionamento deve essere completato in modo sistematico. L'utilizzo di un modello specificato nei comandi di configurazione HCI e il rispetto di rigide regole di temporizzazione agevolano questo approccio sistematico. Il modo in cui queste regole vengono applicate e le regole per ogni dispositivo dipendono dall'utilizzo di AoA o di AoD da parte dell'applicazione e se il dispositivo sta trasmettendo o ricevendo. Ad esempio, un dispositivo trasmittente con una sola antenna invia pacchetti continui con CTE. Il campionamento IQ, però, viene sempre eseguito dal dispositivo ricevente, a prescindere dal numero di antenne di cui si serve.

Il tempo allocato per l'elaborazione CTE viene diviso in un periodo di guardia iniziale di 4 microsecondi (μs), un periodo di riferimento di 8 μs e poi in una sequenza di slot di commutazione, slot campione o coppie di slot di commutazione e campione (Figura 6).

Immagine di commutazione e campionamento per temporizzazione di 1 µs e 2 µs per un'applicazione AoAFigura 6: Questo esempio illustra la commutazione e il campionamento per temporizzazione di 1 µs e 2 µs per un'applicazione AoA. Il dispositivo trasmittente con una singola antenna trasmette in modo continuo pacchetti con CTE mentre il campionamento IQ viene eseguito dal dispositivo ricevente secondo una sequenza di commutazione e campionamento. (Immagine per gentile concessione di Bluetooth SIG)

Durante il periodo di riferimento non si verifica alcuna commutazione di antenna e vengono acquisiti otto campioni di IQ. L'host potrebbe riuscire a utilizzare i campioni di riferimento per stimare la frequenza del segnale e dedurre la lunghezza d'onda, migliorando la precisione dei calcoli dell'angolo.[1]

Conclusione

I miglioramenti apportati alla versione 5.1 della Bluetooth Core Specification generano i dati grezzi richiesti per la radiogoniometria utilizzando la CTE e il campionamento IQ. La specifica si serve di tecniche ingegneristiche collaudate per determinare la direzione del segnale e standardizza le interfacce, le configurazioni e le interazioni. C'è poi un ulteriore vantaggio: ora la radiogoniometria accurata è interoperabile con tutti i fornitori di chip che offrono soluzioni Bluetooth.

I produttori di chip sono stati rapidi nell'offrire soluzioni hardware, software, kit di sviluppo e SDK che permettono agli sviluppatori di acquisire rapidamente familiarità con la configurazione di sistemi che sfruttano la radiogoniometria Bluetooth. Le applicazioni IPS e di radiogoniometria in commercio richiedono ancora un elevato livello di competenza in materia di sviluppo, in particolare nella progettazione di array di antenne e del firmware per motori di localizzazione, ma i futuri profili di radiogoniometria Bluetooth promettono di semplificare ulteriormente questa sfida.

Bibliografia

1: Bluetooth Direction Finding: Presentazione tecnica, Martin Wooley, Bluetooth SIG, marzo 2019.

DigiKey logo

Esonero della responsabilità: le opinioni, le convinzioni e i punti di vista espressi dai vari autori e/o dai partecipanti al forum su questo sito Web non riflettono necessariamente le opinioni, le convinzioni e i punti di vista di DigiKey o le sue politiche.

Informazioni su questo editore

Editori nordamericani di DigiKey