• Non ci sono risultati.

Figura 6.31: Schema di collegamento dei lettori NFC al Raspberry Pi. Realizzato con Fritzing.

6.7 – Suono

La modulazione a codice di impulsi, PCM, è la forma più diffusa di codifica digitale.

Essa si articola in due fasi principali: nella prima fase il segnale viene campionato a intervalli regolari mentre nella seconda fase i valori letti vengono quantizzati, e avviene quindi una rappresentazione discreta del segnale di ingresso rendendone possibile la codifica in digitale.

L’interfaccia audio PCM del Raspberry Pi Zero W, presente sul chip BCM2835, dispone di quattro linee di comunicazione:

1. PCM_CLK o Bit Clock;

2. PCM_FS o Frame Sync Signal;

3. PCM_DIN o Serial Data Input;

4. PCM_DOUT o Serial Data Output.

Le due linee di comunicazione PCM_DIN e PCM_DOUT hanno il compito di trasmettere i flussi audio da e verso l’interfaccia del computer e i dati che vi transi-tano sono sempre trasmessi a partire dal bit più significativo del frame. Il segnale in transito sulla linea PCM_CLK è invece un segnale di sincronizzazione che rende possibile gestire lo scambio dei bit, mentre il segnale sulla linea PCM_FS è un segnale di sincronizzazione dei frame e viene utilizzato per delimitare i dati seriali in blocchi, di lunghezza variabile e impostabile dall’utente. I frame possono conte-nere 1 o 2 canali audio sia in uscita che in ingresso al computer. Ogni canale può avere una larghezza compresa tra gli 8 e i 32 bit e può essere posizionato ovunque all’interno del frame, purché i due canali non si sovrappongano.

L’interfaccia audio PCM del chip BCM2835 implementa una struttura dati di tipo FIFO (First In First Out) sia per i canali in ingresso sia per quelli in uscita. Se il frame contiene due canali, questi devono condividere la stesso FIFO e quindi i dati del canale vengono interlacciati.

Nel sottoparagrafo successivo verrà brevemente descritto il protocollo I2S utilizzato dal Raspberry Pi per interfacciarsi con l’amplificatore MAX98357A descritto in seguito.

6.7.1 I

2

S

Il protocollo I2S, introdotto nel 1986 da Philips Semiconductors, le cui specifiche sono definite in [29], da cui è stata reperita la maggior parte delle informazioni indicate nel presente sottoparagrafo, è un’interfaccia bus seriale che permette di collegare diversi dispositivi e trasferire flussi audio in formato digitale.

Il protocollo prevede almeno tre linee di comunicazione, oltre le quali sono previste delle linee di controllo del trasferimento dati:

1. SD (Serial Data): il trasferimento dei dati, sia in ingresso che in uscita, viene effettuato tramite questa linea.

2. SCK (Continuous Serial Clock): su questa linea transita invece il segnale di sincronizzazione.

3. WS (Word Select) o LRCLK (Left Right Clock): il segnale in transito su questa linea permette di distinguere nel caso di due canali a quale di questi appartiene il frame di dati. Il segnale è a livello logico basso se il frame di dati è relativo al primo canale (Left) oppure è a livello logico alto se è relativo al secondo canale (Right).

I segnali WS e SCK vengono forniti dal master oppure da un dispositivo terzo.

Comunemente è il trasmettitore che agisce come master, ma vi è anche la possibilità che il ricevitore si comporti come master oppure tale funzione può essere svolta da un ulteriore dispositivo.

I dati seriali vengono trasmessi utilizzando una rappresentazione in complemento a due, a partire dal MSB. Viene trasmesso per primo il bit più significativo in quanto il trasmettitore e il ricevitore possono avere lunghezze di parola diverse ed ai fini della comunicazione non è necessario né per il trasmettitore conoscere il numero di bit massimo che il ricevitore può gestire, né per il ricevitore conoscere quanti bit sono trasmessi.

Questo protocollo trova uso in buona parte dei microcontrollori, essendo implemen-tato per la trasmissione dei dati audio tra i circuiti integrati.

6.7.2 Amplificatore Adafruit MAX98357A

L’audio generato dal Raspberry Pi è in formato digitale e l’interfaccia PCM del BCM2835 è incaricata della sua trasmissione all’elemento successivo della catena, l’amplificatore, che svolge sia la conversione digitale-analogico sia l’amplificazio-ne del segnale. Il dispositivo utilizzato all’interno di questo progetto è il chip MAX98357A di Maxim Integrated, predisposto su una breakout board realizzata da Adafruit e di dimensioni pari a 19,4×17,8×3,0 mm. Si tratta di un amplificatore mono di classe D con un’efficienza del 92% (RL = 8Ω, POU T = 1W ) e in grado di generare una potenza di 3.2 W per uno speaker con impedenza pari a 4 Ω.

Le specifiche principali del dispositivo sono le seguenti:

• Potenza in uscita: 3.2 W (RL= 4Ω, 10% THD, VIN = 5V ).

• PSRR (Rapporto di reiezione dell’alimentazione): 77 dB typ (a 1 kHz).

• Frequenza di campionamento: 8/ 16/ 48/ 96 kHz.

6.7 – Suono

• 5 livelli di guadagno: 3 dB, 6 dB, 9 dB, 12 dB, 15 dB.

• Distorsione armonica totale + rumore (THD + N) pari allo 0,013% (a 1 kHz).

Sulla breakout board, oltre ai pin di alimentazione Vin e GND, sono presenti i seguenti pin:

1. LRC (Left/Right Clock) 2. BCLK (Bit Clock) 3. DIN (Data In)

4. GAIN: attraverso questo pin è possibile regolare il guadagno che l’amplificatore deve effettuare. Le combinazioni possibili sono le seguenti:

• 15 dB se vi si connette una resistenza da 100 kΩ tra il pin GAIN e GND;

• 12 dB se il pin GAIN è connesso direttamente a GND;

• 9 dB se il pin GAIN non è connesso ad alcun altro pin;

• 6 dB se il pin GAIN è connesso a Vin;

• 3 dB se vi si connette una resistenza da 100 kΩ tra il pin GAIN e Vin Lo schema di collegamento dell’amplificatore, e dello speaker introdotto nel sotto-paragrafo successivo, al Raspberry Pi è riportato nella figura 6.32.

Figura 6.32: Schema di collegamento dei componenti audio al Raspberry Pi. Realizzato con Fritzing.

6.7.3 Speaker CUI CDS-20144-L100

Uno speaker, o altoparlante, è un dispositivo elettroacustico che converte le flut-tuazioni di un segnale elettrico in onde acustiche, rendendo possibile la percezione sonora. Dal punto di vista costruttivo, all’interno di un magnete, solitamente al neodimio, viene posto un conduttore in forma di avvolgimento e su questo viene posizionata una membrana mobile detta diaframma. Le fluttuazioni della corren-te che attraversano la bobina incorren-teragiscono con il magnecorren-te, permetcorren-tendo quindi il movimento del diaframma dell’altoparlante. Tale movimento comporta delle com-pressioni e dilatazioni dell’aria e attraverso queste oscillazioni viene generato il suono. La membrana è fissata sulla parte superiore dello speaker attraverso un sistema di sospensione elastico che è responsabile del corretto smorzamento delle oscillazioni.

Figura 6.33: Speaker CUI CDS-20144-L100.

Lo speaker connesso all’amplificatore precedente-mente descritto è il modello CDS-20144-L100FF rea-lizzato da CUI e mostrato nella figura6.33. Si tratta di uno speaker di dimensioni 20 × 14 × 3,5 mm con un’impedenza di 4 Ω e che raggiunge un livello di pressione sonora massimo di 95 dB(SPL), valore mi-surato per un segnale a 1 kHz, con 1 W di potenza assorbita e a 0,1 m di distanza dallo speaker. L’al-toparlante tollera una potenza in ingresso fino a 1,2 W.

Per quanto riguarda la risposta in frequenza, questa è piuttosto ridotta alle basse-medie frequenze, come previsto dalla tipologia di speaker. L’andamento della rispo-sta in frequenza presenta anche variazioni brusche nella banda alta delle frequenze.

A differenza delle frequenze alte in cui vi si ritrova in genere poco contenuto infor-mativo, una criticità è data dalle frequenze medio-basse in quanto tra i 100 Hz ed i 300 Hz si trovano le frequenze fondamentali della voce umana e visto l’andamento della risposta in frequenza fino ai 600 Hz ciò potrebbe creare degli inconvenien-ti dal punto di vista dell’intelligibilità di eventuali istruzioni vocali riprodotte dai dispositivi.

Infine per quanto riguarda la distorsione armonica totale (THD) il valore massimo dichiarato dal produttore, a 1 kHz, è inferiore al 10%. Le criticità maggiori, al pari della risposta in frequenza dello speaker, si verificano per le basse e medie frequenze toccando picchi del 35%.

Il collegamento al Raspberry Pi è mostrato nella figura 6.32 del sottoparagrafo precedente.