• Non ci sono risultati.

L'architettura di un lettore standard RFID UHF Gen2 In questo capitolo si vuole analizzare l'architettura di un lettore RFID UHF Gen2 standard e

confrontarla con quella del lettore progettato84, nel tentativo di spiegare sulla base delle differenze architetturali le problematiche incontrate. Lo schema a blocchi seguente mostra la tipica architettura di un lettore RFID UHF Gen2 commerciale.

Come mostra lo schema, i blocchi essenziali che compongono un lettore commerciale sono: • Digital core

• Trasmettitore

• Ricevitore (comprensivo anche del blocco di cancellazione del self-jammer)

Digital core

Il digital core si occupa dell'elaborazione dei dati ed è l'unico blocco dell'elenco operante nel dominio digitale. Esso fornisce in uscita i dati da trasmettere codificati PIE che poi vengono convertiti in analogico da un DAC. È tipicamente costituito da un microcontrollore aventi prestazioni computazionali e memoria variabili e dipendenti dalle funzionalità e prestazioni richieste dal lettore.

Trasmettitore

Il trasmettitore si occupa di modulare il segnale codificato PIE ricevuto dal DAC, amplificarlo tramite amplificatore di potenza e trasmetterlo. Prima della modulazione viene eseguito un filtraggio di tipo passa basso per eliminare eventuali componenti frequenziali spurie presenti nel segnale in uscita dal DAC. È possibile configurare il trasmettitore perché esegua una modulazione di tipo I/Q oppure di tipo polare. Nel primo caso esso esegue trasmissioni SSB-ASK oppure PR- ASK, mentre nel secondo DSB-ASK. Per quanto riguarda la trasmissione non sono presenti differenze significative tra i due lettori ma entrambi supportano la modulazione I/Q. Quest'ultima rispetto ad una modulazione di tipo polare appare più complessa e meno intuitiva ma in realtà presenza vantaggi che rendono più semplice e flessibile rispetto ad altre soluzioni la progettazione di un modulatore e demodulatore I/Q. Entrambi i tipi lettori visti dispongono di modulatore e demodulatore di questo tipo. La lettera I è l'iniziale di in-phase e si riferisce alla portante in fase, mentre la lettera Q è l'iniziale di quadrature e si riferisce alla portante in quadratura.

Si consideri un segnale S(t) in banda base e lo si moduli moltiplicandolo per un segnale cos(2πfpt+φ). Si ottiene un segnale modulato G(t) avente espressione:

G(t)=S(t)cos(2πfpt+φ)

Il segnale G(t) così ottenuto è modulato polarmente. Per eseguire tale modulazione è necessario poter manipolare modulo e fase della portante sinusoidale. Alle alte frequenze è però difficile variare la fase in modo preciso e un circuito capace di fare ciò sarebbe complesso e costoso da realizzare. Utilizzando l'identità trigonometrica

cos(α+β)=cos(α)cos(β)-sin(α)sin(β) È possibile riscrivere il segnale modulato G(t) come:

G(t)=S(t)cos(2πfpt+φ)= S(t)cos(2πfpt)cos(φ)-S(t)sen(2πfpt)sen(φ)=I(t)cos(2πfpt)-Q(t)sen(2πfpt) Dove I(t)=S(t)cos(φ) e Q(t)=S(t)sen(φ) sono le ampiezze delle portanti rispettivamente in fase ed in quadratura. A partire da tali definizioni è possibile interpretare I(t) e Q(t) come le coordinate di S(t) nel piano cartesiano come mostra la seguente immagine:

L'immagine precedente permette di comprendere come ricavare modulo e fase di S(t) da I(t) e Q(t). Si ha infatti che:

S (t)∣=

I2(t)+Q2(t) ∠S (t)=

{

atan(Q / I )+π se I <0atan(Q/ I )se I ≥ 0

Da ciò si deduce che tramite un coppia di portanti in quadratura l'una rispetto all'altra è possibile variare ampiezza e fase del segnale modulato tramite il valore delle ampiezze delle due portanti. Quest'ultimo è uno dei vantaggi di questo tipo di modulazione in quanto è possibile variare modulo e fase del segnale modulato variando unicamente delle ampiezze. Vediamo lo schema di un modulatore I/Q:

Lo schema evidenzia come in un modulatore I/Q sono presenti due rami paralleli dove uno è adibito alla generazione della portante in fase, contrassegnato con la lettera I, e l'altro a quella della portante in quadratura, contrassegnato con la lettera Q.

Illustrazione 30: S(t) nel piano cartesiano

Ricevitore

Il ricevitore merita una trattazione più approfondita essendo più numerose e rilevanti le differenze architetturali. Nel capitolo 4, infatti, si è evidenziato come in ricezione le prestazioni del lettore progettato non fossero particolarmente soddisfacenti. Quest'ultimo ha infatti mostrato in ricezione una forte sensibilità rispetto alla posizione ed all'orientamento del tag. È ipotizzabile che il lettore, ricevendo non solo la risposta del tag ma anche l'onda continua trasmessa dal lettore, riceva un segnale con una profondità di modulazione molto bassa e che inoltre a causa della potenza dell'onda continua uno o più stadi del ricevitore vadano in saturazione. Il lettore progettato dispone di uno stadio di DC-blocking che però agisce nel dominio digitale e quindi l'onda continua passando attraverso l'LNA, i mixer e tutti gli altri stadi operanti nel domino analogico può mandarne uno o più in saturazione. In un lettore commerciale invece è presente un blocco di cancellazione del self- jammer85 che agisce direttamente sul segnale in uscita dall'antenna di ricezione e quindi a monte di tutti gli stadi costituenti il ricevitore. Scopo del blocco di cancellazione del self-jammer è quello di generare un segnale avente fase opposta e stessa ampiezza del segnale di self-jammer. Nel caso reale il segnale generato non è in esatta opposizione di fase al segnale di self-jammer né ne ha la stessa ampiezza, ma si ottiene comunque una notevole riduzione di ampiezza del segnale RF ricevuto. Quest'ultimo è composto dalla somma della risposta del tag, che contiene l'informazione utile da ricevere, con il segnale di self-jammer, che è la parte del segnale che il blocco vuole cancellare. Per realizzare ciò il blocco esegue le seguenti operazioni:

• Genera 2 o più varianti di fase del segnale di riferimento spillato dal percorso di trasmissione.

• Seleziona opportunamente 2 delle fasi generate in base alla fase del segnale di self-jammer da cancellare.

• Per ciascuna delle due due fasi selezionate imposta un'opportuna ampiezza in modo da ottenere il segnale di cancellazione.

• Somma il segnale di cancellazione con il segnale ricevuto in modo da ridurne il più possibile la componente di tipo self-jammer.

85 Con il termine jammer si indica un disturbo costituito da un'onda continua avente stessa frequenza della portante del segnale che si vuole ricevere e che si somma a quest'ultima. Nel caso di un lettore RFID l'onda continua che disturba la ricezione proviene dal trasmettitore del lettore stesso e per questo motivo si parla di self-jammer. Illustrazione 32: Schema a blocchi del blocco di cancellazione del self-jammer

RX_IN è il segnale in uscita dall'antenna del ricevitore, TX_SIG è il segnale spillato dal flusso ti trasmissione e FB_IN è un segnale di feedback che permette al blocco di selezionare 2 tra le diverse varianti di fase generate a partire da TX_SIG. In particolare viene selezionato quello avente fase immediatamente inferiore e immediatamente superiore rispetto alla fase del segnale di cancellazione che si vuole generare. Molto spesso FB_IN è prelevato all'uscita del mixer e quindi è il segnale in banda base dove la portante è stata riportata sulla continua. Scegliendo tale segnale per FB_IN, si ha che l'entità della componente continua di quest'ultimo, che vogliamo sia la più piccola possibile, indica quanta componente di tipo self-jammer del segnale ricevuto il blocco stia cancellando con le attuali impostazioni e permette di modificare queste ultime se non sono quelle ottimali. Il blocco di selezione delle varianti di fase oltre a selezionare 2 tra le varie fasi, denominate nello schema PHASE_A e PHASE_B genera un segnale denominato AMP_ADJ il quale permette al successivo blocco di regolare opportunamente l'ampiezza delle due fasi selezionate in modo da generare un segnale il più possibile in opposizione di fase e pari ampiezza alla componente di tipo self-jammer del segnale ricevuto. SJC_OUT è il segnale RX_IN con componente di tipo self-jammer attenuata.

L'architettura del ricevitore di entrambi i tipi di lettori analizzati è di tipo omodina. Quest'ultimo demodula il segnale ricevuto moltiplicandolo per il segnale prodotto da un oscillatore locale sincronizzato con la frequenza della portante del segnale ricevuto. Rispetto ad un ricevitore di tipo supereterodina ha migliori prestazioni ed è caratterizzato da un'alta selettività e quindi permette una demodulazione più precisa. Inoltre un ricevitore di questo tipo richiede una circuiteria più semplice, non essendo presenti stadi operanti a frequenza intermedia (IF). A livello tecnico però un ricevitore omodina è più complesso da realizzare in quanto richiede per la demodulazione un oscillatore locale accordabile alla esatta frequenza della portante del segnale ricevuto ed è molto sensibile sotto questo aspetto. Anche una piccola differenza tra queste due frequenze impatta molto negativamente sulle prestazioni del ricevitore. Per questo motivo un ricevitore di questo tipo necessita di un oscillatore stabile e accordabile finemente. Nel caso di un lettore RFID UHF commerciale tale problema però non si pone in quanto per demodulare il segnale ricevuto viene utilizzata la portante opportunamente spillata dal percorso di trasmissione. Questa particolare condizione rende inoltre tale ricevitore omodina immune alle derive dell'oscillatore locale, in quanto quest'ultimo origina sia la portante usata per la modulazione che quella usata per la demodulazione. Nel lettore progettato invece si ha che ricevitore e trasmettitore si trovano su due differenti microcontrollori e quindi hanno oscillatori locali distinti. Ciò comporta inevitabilmente una discrepanza tra la frequenza utilizzata per la modulazione e quella utilizzata per la demodulazione impattando negativamente sulle prestazioni del ricevitore. L'immagine seguente mostra lo schema a blocchi di un ricevitore omodina:

Come si vede dallo schema tale tipo di ricevitore è concettualmente molto semplice. Il segnale in uscita dallo LNA viene moltiplicato per la portante di demodulazione generata dall'oscillatore locale Utilizzando le formule di Werner si ha che:

x(t)cos(ωpt)2cos(ωpt)=x(t)[1+cos(2ωpt)]

ωp è la pulsazione sincronizzata con quella della portante del segnale ricevuto. Tramite filtro passa basso è possibile filtrare la componente a frequenza doppia rispetto alla portante ed ottenere così x(t). Come già accennato precedentemente i pregi principali di tale architettura sono la semplicità, non essendo ad esempio presenti gli stadi a frequenza intermedia (IF) del ricevitore supereterodina, ed un'alta selettività permette una demodulazione più precisa. Di contro esso richiede per funzionare in modo corretto che la frequenza dell'oscillatore locale utilizzato per la demodulazione sia esattamente quella della portante del segnale ricevuto. Vediamo cosa accade se la pulsazione utilizzata per la demodulazione presenta uno scostamento di frequenza pari a Δω rispetto a quella della portante. In tal caso all'uscita del mixer si ha il segnale:

x(t)cos(ωpt)2cos[(ωp+Δω) t]=x(t){cos(Δωt)+cos[(2ωp+Δω)t]}

Ipotizzando ragionevolmente che Δω sia molto più piccolo di ωp, si ha che la componente del segnale a frequenza 2ωp+Δω viene eliminata del filtro passa-basso ed all'uscita di quest'ultimo è presente il segnale:

x(t)cos(Δωt)

Lo scostamento di frequenza Δω introduce quindi un errore sull'ampiezza rilevata dell'inviluppo e l'utilizzo dello stesso oscillatore locale per trasmettitore e ricevitore come accade in lettore standard permette di avere uno scostamento Δω nullo. Altra criticità del ricevitore omodina è il leakage dell'oscillatore locale. Quest'ultima infatti genera un'oscillazione avente stessa frequenza della portante del segnale ricevuto. Per questo motivo tale tipo di ricevitore necessità di mixer aventi un elevato isolamento tra le varie porte, per evitare che parte del segnale generato dall'oscillatore locale venga a trovarsi sulla porta di ingresso del mixer del segnale a RF originando un offset sulla

componente continua del segnale demodulato. Tale offset è nullo nel caso ideale di isolamento infinito tra le porte del mixer, mentre in quello reale tale isolamento deve essere sufficientemente elevato affinché l'offset originato sia sufficientemente piccolo. Più è grande la componente continua del segnale demodulato più si riduce il range dinamico degli stadi successivi più questi vanno in saturazione per ampiezze più piccole dei segnali in ingresso.

Qualora la portante del segnale ricevuto e quella utilizzata per la demodulazione siano alla stessa frequenza, ma la seconda presenti una sfasamento di φ' rispetto alla prima, facendo riferimento allo schema del ricevitore omodina visto precedentemente in uscita dal mixer si ha che:

x(t)cos(ωpt)2cos(ωpt+φ')=x(t)[cos(φ')+cos(2ωpt)] In uscita dal filtro passa-basso si ha il segnale:

x(t)cos(φ')

Lo sfasamento dunque attenua il segnale ricevuto fino ad annullarlo per φ'=± 90°. è però possibile contrastare gli effetti di tale sfasamento utilizzando un segnale modulato I/Q e un demodulatore I/Q. Entrambi i lettori supportano la demodulazione I/Q. Vediamo lo schema di un demodulatore I/Q:

G(t) è il segnale in banda base S(t) modulato I/Q visto precedentemente trattando la modulazione I/Q. Esso ha espressione:

G(t)= S(t)cos(2πfpt)cos(φ)-S(t)sen(2πfpt)sen(φ)=I(t)cos(2πfpt)-Q(t)sen(2πfpt) Illustrazione 34: Schema a blocchi di un demodulatore I/Q

Come lo schema a blocchi di un modulatore I/Q anche quello di un demodulatore I/Q presenta due rami paralleli. In entrambi il segnale G(t) viene moltiplicato per la portante, sfasata di 90° tra un ramo e l'altro, e poi filtrato tramite filtro passa-basso in modo da eliminare la componente a frequenza doppia della portante e si ottengono i segnali in banda base I''(t) nel ramo in alto e Q''(t) in quello in basso. I''(t) e Q''(t) vengono convertiti in digitale ed in tale dominio vengono eseguite le operazioni necessarie per ricostruire S(t) a partire da tali segnali. Vediamo più in dettaglio le operazioni eseguite dal demodulatore. Nel ramo in alto si ha che:

I'(t)=G(t)2cos(2πfpt+φ')=[I(t)cos(2πfpt)-Q(t)sen(2πfpt)]2cos(2πfpt+φ') I'(t)=I(t)2cos(2πfpt+φ')cos(2πfpt)-Q(t)2cos(2πfpt+φ')sen(2πfpt) Applicando le formule di Werner

2cos(α)cos(β)=cos(α+β)+cos(α-β) 2cos(α)sen(β)=sen(α+β)-sen(α-β) Si ottiene:

I'(t)=I(t)[cos(2π2fpt+φ')+cos(φ')]-Q(t)[sen(2π2fpt+φ')-sen(φ')] Filtrando la componente a frequenza 2fp tramite filtro passa-basso si ottiene

I''(t)=I(t)cos(φ')+Q(t)sen(φ')

Analizziamo il risultato ottenuto. φ' rappresenta lo sfasamento tra la portante utilizzata per la modulazione e quella utilizzata per la demodulazione. Tale valore dovrebbe essere nullo affinché la demodulazione avvenga in modo corretto ed infatti si ha che se φ'=0 allora I''(t)=I(t).

Svolgendo calcoli analoghi per il ramo in basso si ha che:

Q'(t)=G(t)2sen(2πfpt+φ')=[I(t)cos(2πfpt)-Q(t)sen(2πfpt)]2sen(2πfpt+φ') Q'(t)=I(t)2sen(2πfpt+φ')cos(2πfpt)-Q(t)2sen(2πfpt+φ')sen(2πfpt) Applicando le formule di Werner

2sen(α)cos(β)=sen(α+β)+sen(α-β) 2sen(α)sen(β)=cos(α-β)-cos(α+β) Si ottiene:

Q'(t)=I(t)[sen(2π2fpt+φ')+sen(φ')]-Q(t)[-cos(2π2fpt+φ')+cos(φ')] Filtrando la componente a frequenza 2fp tramite filtro passa-basso si ottiene:

Q''(t)=I(t)sen(φ')-Q(t)cos(φ') Trattando la modulazione I/Q avevamo definito:

Si era visto che è possibile interpretare I(t) e Q(t) come le coordinate di S(t) nel piano cartesiano e che era possibile ricavare da essi modulo e fase di S(t) rispettivamente tramite le formule:

S (t)∣=

I2(t)+Q2(t)

∠S (t)=

{

atan(Q / I )+π se I <0atan(Q/ I )se I ≥ 0

Riprendiamo adesso le espressioni trovate per I''(t) e Q''(t) e vediamo se è analogamente possibile ricavare S(t) a partire da essi. Si era trovato che:

I''(t)=I(t)cos(φ')+Q(t)sen(φ') Q''(t)=I(t)sen(φ')-Q(t)cos(φ')

Si nota che I''(t) e Q''(t) sono le coordinate di S(t) riferite ad un sistema ruotato di φ' rispetto a quello visto precedentemente in cui I(t) e Q(t) rappresentavano le coordinate di S(t). Una rotazione del sistema di riferimento non influenza il modulo di S(t) mentre ne modifica la fase. La variazione di fase introdotta dallo sfasamento dei mixer utilizzati per la demodulazione è però costante per tutti i segnali ricevuti e quindi non influisce sulla differenza di fase tra di essi. Inoltre se il trasmettitore trasmette un segnale avente fase nota al ricevitore in base alla fase calcolata del segnale ricevuto, il ricevitore può calcolare l'offset sulla fase che esso stesso introduce. Per questo motivo è possibile ricavare modulo e fase di S(t) a partire da I''(t) e Q''(t) invece che da I(t) e Q(t) tenendo conto delle considerazioni fatte sulla fase. Si è quindi dimostrato come la modulazione I/Q sia immune all'eventuale rumore di fase che può affliggere l'oscillatore locale utilizzato per la demodulazione. Quindi i pregi principali che si hanno utilizzando la modulazione/demodulazione I/Q sono:

• Possibilità di regolare la fase del segnale modulato trasmesso agendo sulle ampiezze di I e Q.

• Immunità all'eventuale rumore di fase che può affliggere l'oscillatore locale del demodulatore.

Altra differenza tra i due tipi di lettori è che quello di tipo commerciale supporta nativamente la codifica PIE in trasmissione e la codifica FM0 e Miller in ricezione. Perciò la codifica del segnale da trasmettere e la decodifica del segnale ricevuto vengono eseguite da un hardware dedicato. Il lettore progettato invece non supporta nativamente tali codifiche e quindi, come visto nel quarto capitolo, è stato necessario implementare codifica e decodifica in software. Le stesse operazioni eseguite in software impiegano tipicamente molto più tempo rispetto al caso in cui vengano eseguite da un hardware dedicato e ciò contribuisce all'incremento del tempo che intercorre tra la trasmissione della risposta da parte del tag e l'invio del successivo comando da parte del lettore e, come già visto, lo standard prevede dei valori massimi per questi tempi.

In un lettore commerciale al segnale in uscita dall'antenna viene sottratto quello in uscita dal blocco di cancellazione del self-jammer. Successivamente passa attraverso l'LNA e poi viene moltiplicato per una frequenza pari alla portante portando così il segnale in banda base. La componente continua di quest'ultimo, che è dovuta alla portante della risposta del tag, viene eliminata tramite un blocco che esegue il DC blocking. Quest'ultimo, a differenza di ciò che accade nel lettore progettato, agisce nel dominio analogico. Viene poi eseguita una prima approssimativa selezione di canale tramite filtro passa banda. Successivamente il segnale viene convertito in digitale tramite un ADC. Sia prima che dopo lo stadio di filtraggio passa banda analogico è presente uno stadio di guadagno regolabile. Tali amplificatori permettono di ridurre il range dinamico richiesto all'ADC.

Nel lettore che è stato progettato invece il segnale ricevuto dall'antenna entra nell'LNA. Il segnale in uscita da quest'ultimo entra in un demodulatore I/Q. Successivamente le componenti I e Q in uscita dal demodulatore passano attraverso un filtro passa banda regolabile in base alla banda di canale e al canale selezionato e poi vengono convertite in digitale tramite un ADC. Nel dominio digitale a partire da I e Q digitalizzati il blocco demodulator calcola modulo e fase del segnale trasmesso tramite modulazione I/Q. Successivamente vi è poi un sistema di gestione pacchetti, una RXFIFO a 64 byte in cui vengono salvati i dati ricevuti e l'interfaccia con il microcontrollore. I dati giungono al microcontrollore in forma codificata e la decodifica dei dati ricevuti è realizzata via software dal microcontrollore. Rispetto al lettore commerciale qua si ha che l'operazione di DC blocking, che nell'altro caso avveniva nel dominio analogico utilizzando condensatori di blocco, avviene nel dominio digitale dopo i blocchi ADC e prima del blocco demodulator86.

Per riassumere vediamo una tabella che mostra le principali differenze tra i due tipi di lettori per quanto riguarda la ricezione:

Lettore commerciale Lettore progettato

Presenza del blocco di eliminazione del self-

jamming Assenza del blocco di eliminazione del self-jammer Modulatore e demodulatore avente oscillatore

locale in comune Modulatore e demodulatore aventi distintesorgenti di clock La codifica PIE del segnale trasmesso e la

decodifica FM0 o Miller del segnale ricevuto sono supportate nativamente e vengono realizzate tramite hardware dedicato

La codifica PIE del segnale trasmesso e la decodifica FM0 o Miller del segnale ricevuto non sono supportate nativamente e sono realizzate in software

Il blocco della continua è eseguito sul segnale in banda base nel dominio analogico

Il blocco della continua è eseguito sul segnale in banda base digitalizzato

86 Come specificato a pagina 717 della user's guide trattando il campo DEM_DCFILT_OFF del registro di configurazione MDMFG2 si dice che il filtro che esegue il DC blocking è digitale ed agisce prima del demodulatore e quindi nel flusso di ricezione si trova tra l'ADC ed il demodulatore.

Documenti correlati