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 hX 8 QUESTI PASSAGGI PORTANO AL KERNEL ~ hy X sfruttando la potenzialità di MATLAB ~ 1 h yX 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 125s Tc 22,7s 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