UNIVERSITÀ DEGLI STUDI DI TRIESTE
FACOLTÀ DI INGEGNERIA
Dipartimento di Elettronica, Elettrica ed Informatica
UTILIZZO DEI POLINOMI DI VOLTERRA PER LA
CORREZIONE DELLA NON LINEARITÀ DI UN
ALTOPARLANTE
Laureando:
Giulio Grassi
Relatore:
Prof. Sergio Carrato
Correlatore:
Ing. Ezio Zandegiacomo
SCOPO DELLA TESI
Realizzare un sistema capace di migliorare la riproduzione sonora
affidata ai comuni altoparlanti
MODALITA
Realizzazione di un sistema di correzione mediante DSP della
distorsione introdotta

Utilizzando la teoria dei sistemi polinomiali
basati sugli sviluppi in serie di Volterra
2
Per comprendere l’origine della distorsione che vogliamo
ridurre, è opportuno descrivere la struttura di un
altoparlante.
3
Principali fonti di distorsione
 Non uniformità del campo magnetico
( nel quale è avvolto l’avvolgimento mobile)
Non linearità delle sospensioni.
4
Esistono diversi operatori non lineari

Per il nostro scopo abbiamo utilizzato i Polinomi di
Volterra
GENERICO SVILUPPO IN SERIE DI VOLTERRA
-di ordine e momoria finitaP
y(n)  h0   hp [ x(n)]
p 1
dove
hp [ x(n)] 
L1 1
L2 1
...  h (m ,..., m
m1 0
m p 0
p
1
p
) x(n  m1 )...x(n  m p )
5
TECNICHE DI COMPENSAZIONE DELLE NON LINEARITÀ
Postdistorsione
Predistorsione
Sistema non
lineare
Postdistorsione
Predistorsione
Sistema non
lineare
La cantena di correzione che siamo andati a realizzare è la
seguente:
6
SISTEMA INVERSO
Per realizzare la compensazione abbiamo bisogno del
modello inverso
IDENTIFICAZIONE DEL SISTEMA
 Mediante algoritmo adattativo NLS o RLS
 Mediante algoritmo off-line “a blocchi”
 abbiamo bisogno della sequenza di ingresso e di quella di
uscita del sistema non lineare
Sistema non lineare
Noise Generator
NX
G(Z)
DX
7
PROCEDURA DI IDENTIFICAZIONE
N1
N2
N2
y (n)  h0   h1 (m1 ) x(n  m1 )    h2 (m1 , m2 ) x(n  m1 ) x(n  m2 ) 
m1  0
N3
N3
m1  0 m2  0
(1)
N3
    hp (m1 , m2 , m3 ) x(n  m1 ) x(n  m2 ) x(n  m3 )
m1  0 m2  0m3  0
ricerchiamo i coefficienti del kernel
h p (m1 ,..., m p )
I vettori sono realizzati nel seguente modo:
la (1) diventa
 per l’intera sequenza


y(n)  h  x ~ (n)
~
y  hX
8
QUESTI PASSAGGI PORTANO AL KERNEL
~
hy X
sfruttando la potenzialità di MATLAB
~
1
h  yX
la matrice ottenuta sarà una pseudoinversa di Moore-Penrose
sistema_nl
ALGORITMO OTTENUTO
X
 processamento
 calcolo
sequenza
D
pseudoinversa

coefficienti kernel
H_final
+
Y
-
9
SIMULAZIONI MATLAB
modello non lineare analitico
X
H(Z)
W
Y
Magnitude (dB)
10
5
0
-5
-10
0
0.1
0.2
0.3
0.4
0.5
Normalized Frequency
0.6
0.7
( rad/sample)
0.8
0.9
1
0
0.1
0.2
0.3
0.4
0.5
Normalized Frequency
0.6
0.7
( rad/sample)
0.8
0.9
1
Phase (degrees)
80
60
40
20
0
Tipico di oggetti di
queste dimensioni
10
RICERCA
MODELLO DIRETTO
sistema_nl
sistema_nl
D
X
X
D
H_final
+
Y
H_final
Y
-
11
RICERCA
MODELLO INVERSO
sistema_nl
X
sistema_nl
X
+
Y
-
H_inv
H_final
X'
D
D
12
IDENTIFICAZIONE
X
Modello con sola non
linearità
H(Z)
W
Y
Funzione di trasferimento del sistema non lineare durante l'apprendimento
MSE assoluto:1.8925e-005 ,MSE relativo:5.6149e-005
1
Xtest:ingresso
Dtest:uscita sistema
Ytest:identificazione
0.8
0.5
0
0.6
Y
-0.5
0.4
-1
0.2
-1.5
0
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
X
-0.2
Funzione di trasferimento del sistema identificato
1
-0.4
0.5
-0.6
0
Y
-0.8
-1
-0.5
-1
-1.5
-1.2
85
90
95
Tempo
100
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
X
13
1
IDENTIFICAZIONE
y( x)  0,6  x 2  2  arc tan( x)
X
Modello completo
W
H(Z)
Y
Risposta in frequenza del sistema non lineare e del modello identificato
Coefficienti del kernel ottenuti
15
10
Magnitude (dB)
2
Sistema non lineare
Modello identificato
Parte Cubica
1.5
5
Parte Lineare
0
1
-5
0.5
-10
0
0.1
0.2
0.7
0.6
0.5
0.4
0.3
Normalized Frequency ( rad/sample)
0.8
0.9
1
0
80
-0.5
Phase (degrees)
60
-1
40
Parte Quadratica
20
-1.5
0
-20
-2
0
0.1
0.2
0.7
0.6
0.5
0.4
0.3
Normalized Frequency ( rad/sample)
0.8
0.9
1
0
20
40
80
60
campioni del kernel del modello
100
120
14
140
EQUALIZZAZIONE
X
Modello con sola non linearità
W
H(Z)
Y
MSE assoluto:0.00016772, MSE relativo:0.0021303
0.8
Xtest:ingresso
Dtest:uscita sistema equalizzato
Xptest:sequenza predistorta
0.6
0.4
0.2
0
-0.2
-0.4
-0.6
1515
1520
1525
1530
Tempo
1535
1540
1545
15
EQUALIZZAZIONE
Compensazione modello completo
Riduzione THD%
Spettri delle sequenze di uscita con correzione e senza
80
FFT uscita corretta
FFT uscita senza correzione
60
dB
40
20
0
-20
-40
-1
-0.8
-0.6
-0.4
-0.2
0
Frequency
0.2
0.4
0.6
0.8
THD con predistorsione =6.2486
THD senza predistorsione =62.8119
MSE assoluto:0.00078896 ,MSE relativo:0.0015768
Training and Test time: 0min 12sec
16
1
IMPLEMENTAZIONE SU DSP
Utilizzo dei polinomi di Volterra in real-time
Fc=8kHz

Fc=44.1kHz
125s
Tc
22,7s
Dobbiamo eseguire aggiornamento polinomio di Volterra
prodotto scalare con il kernel

Es: kernel di terzo grado di dimensioni 6•6•6
secondo grado
terzo grado
totale

ricalcolo
21
56*2
133
aggiornamento
6
21
27
risparimo computazionale eseguento un semplice
aggiornamento del polinomio
17
UTILIZZIAMO UN DSP C6711 TEXAS INSTRUMENTS
Sistema di sviluppo TMDS320006711 DSK
Audio Daughter Card TMDX326040A
DSK 6711
DSP
PP
PC
Daughter Card
Sorgente Audio
Amplificatore
A/D
D/A
9V DC
Ricezione campione
Elaborazione
polinomio di Volterra
dell'ingresso
Prodotto
scalare con il
Kernel inserito
Trasmissione
campione
18
REALIZZAZIONE DELLE MISURE
Ricerchiamo il modello dell’altoparlante
è stato realizzato un sistema di misura
PC- TOSHIBA
generazione rumore

misure

sequenze di ingresso e di
uscita del sistema non
lineare altoparlante
D.U.T.
amplificatore
Sound Blaster
44kHz,16bit
Out
partitore resistivo
PC- HP
Sound Blaster
44kHz,16bit
In R
In L
condizionamento microfono
Si sono effettuate più sessioni di misura
campo chiuso, laboratorio del DEEI
campo aperto, piazzale dell’Universtià
19
ELABORAZIONE DELLE MISURE
- contenuto armonico in uscita all’altoparlante in
funzione della potenza
Modulo della FFT eseguita su 5000 campioni sul segnale ad 1W
80
Microfono
Speaker
60
dB
40
20
@ 1 W tono sinusoidale 100Hz
0
-20
-2000
-1500
-1000
-500
0
Frequenza [Hz]
500
1000
1500
2000
Modulo della FFT eseguita su 4800 campioni sul segnale a 10W
80
60
dB
40
@ 10 W tono sinusoidale 100Hz
20
0
-20
-2000
-1500
-1000
-500
0
Frequenza [Hz]
500
1000
1500
2000
20
ELABORAZIONE DELLE MISURE
- tempo di propagazione del fronte sonoro
 abbiamo bisogno di sequenze temporali sincrone!
 per ricorrelare le sequenze usiamo la crosscorrelazione
Segnali originali
1
Segnale Elettrico dall'Amplificatore
Segnale Microfono
Segnale Elettrico
1m
0.5
Fronte Sonoro
0
PC
344 m/s
-0.5
-1
3000
3010
3020
3030
3040
3050
3060
3070
3080
3090
3100
3070
3080
3090
3100
Segnali ricorrelati
1
Segnale Elettrico Micorfonico
0.5
0
Rif a s a me n t o r iu s c it o ,
Tr o v a t o u n e r r o r e d i 13 5 c a mp io n i p a r i a d u n p e r c o r s o d i 1.05 3 1 m -0.5
-1
3000
3010
3020
3030
3040
3050
3060
21
ELABORAZIONE DELLE MISURE
- riverbero ambientale
 per ridurre il problema abbiamo effettuato due misure
campo chiuso
campo aperto
Sequenze ricorrelate in campo aperto
Sequenze ricorrelate
0.5
Segnale Microfono
Segnale Elettrico
0.4
Segnale Microfonico
Segnale Elettrico
0.4
0.3
0.3
0.2
0.2
50ms
100ms
0.1
0.1
0
0
-0.1
-0.1
-0.2
-0.2
-0.3
-0.3
-0.4
-0.4
-0.5
1
1.1
1.2
1.3
1.4
Tempo
1.5
1.6
1.7
1
1.1
1.2
1.3
1.4
1.5
Tempo
1.6
1.7
1.8
1.9
22
ELABORAZIONE DELLE MISURE
- ricerca del modello
 la precisione delle simulazioni non è stata ottenuta
 gli errori ottenuti sono risultati elevati
sistema diretto MSErel  16% ,sistema inverso
Risposta in frequenza della parte lineare del modello
MSE assoluto:0.008776 ,MSE relativo:0.15962
0.4
Magnitude (dB)
5
Xtest:ingresso
Dtest:uscita sistema
Ytest:identificazione
0.6
MSErel  37%
0
-5
-10
0.2
-15
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
Normalized Frequency ( rad/sample)
0.8
0.9
1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
Normalized Frequency ( rad/sample)
0.8
0.9
1
0
0
Phase (degrees)
-0.2
-0.4
-100
-200
-300
-400
1390
1395
1400
1405
1410
Tempo
1415
1420
1425
1430
23
CONSIDERAZIONI FINALI
- sistema di correzione
 il modello ottenuto risulta troppo impreciso per proseguire
nella correzione
 l’imprecisione dipende dalla “bontà” delle misure
 l’utilizzo di un interferometro laser al posto del
micorofono risolverebbe ogni problema
PC- TOSHIBA
D.U.T.
Sound Blaster
44kHz,16bit
amplificatore
PC- TOSHIBA
D.U.T.
Sound Blaster
44kHz,16bit
Out
amplificatore
interferometro laser
Out
partitore resistivo
PC- HP

Sound Blaster
44kHz,16bit
In R
partitore resistivo
PC- HP
Sound Blaster
44kHz,16bit
In L
In R
condizionamento microfono
In L
24
Scarica

elaborazione delle misure