Obiettivi
Il laboratorio si propone di fornire agli studenti le competenze di programmazione e calcolo numerico necessarie per affrontare problemi di analisi ed elaborazione dei segnali mediante MATLAB. Gli studenti acquisiscono inizialmente familiarità con l’ambiente di programmazione, imparando a utilizzare variabili, vettori e matrici, numeri complessi, strutture di controllo, script e funzioni, nonché gli strumenti per la rappresentazione grafica e l’analisi numerica dei dati. Particolare attenzione è dedicata all’approccio vettoriale al calcolo, elemento centrale nell’utilizzo efficiente di MATLAB. Il laboratorio si concentra quindi sull’applicazione di questi strumenti a problemi di elaborazione numerica dei segnali, attraverso la generazione e manipolazione di segnali a tempo discreto, la loro rappresentazione vettoriale e l’analisi nel dominio della frequenza mediante la trasformata discreta di Fourier. Gli studenti imparano a interpretare numericamente concetti quali energia e potenza, ortogonalità, risoluzione in frequenza e contenuto spettrale, applicandoli anche all’analisi di segnali reali. La parte conclusiva è dedicata all’implementazione e all’analisi di sistemi lineari e filtri digitali, alla progettazione di filtri FIR e IIR e allo studio numerico degli effetti del campionamento e dell’aliasing. Le attività di laboratorio prevedono l’applicazione degli strumenti sviluppati a segnali audio e ad altri dati reali, con l’obiettivo di consolidare la capacità di tradurre i concetti teorici dell’elaborazione dei segnali in algoritmi e procedure di analisi implementabili al calcolatore.
Prerequisiti: Conoscenza di base di analisi matematica, algebra lineare e programmazione.
Esame: Progetto finale da svolgere in classe e discussione orale dell'elaborato.
Codice Classroom (2026-2027): ipfhwmbk
Lezioni: Le lezioni si terranno dal 23 Settembre al 22 Dicembre seguendo questo programma
Mercoledì 11 -14 , presso l' Aula 2 in Via del Castro Laurenziano
La prima lezione si terrà il giorno 30 Settembre !
Programma
Introduzione a MATLAB: ambiente di calcolo e programmazione, variabili, vettori e matrici, indicizzazione, operazioni matriciali ed elemento per elemento, numeri complessi. Rappresentazione grafica dei dati, strutture condizionali e iterative, vettorizzazione del codice, script e funzioni.
Rappresentazione ed elaborazione di segnali discreti: generazione e rappresentazione di segnali elementari, impulso e gradino discreto, segnali rettangolari, esponenziali e sinusoidali. Operazioni sui segnali: traslazione e inversione temporale, somma e prodotto. Energia, potenza e classificazione dei segnali: calcolo numerico di energia, potenza e norma. Segnali a supporto finito e periodici. Utilizzo degli strumenti MATLAB per l’analisi delle proprietà dei segnali.
Rappresentazione vettoriale dei segnali: segnali come vettori, prodotto interno e norma, ortogonalità e normalizzazione, rappresentazione rispetto a basi ortogonali e proiezione di segnali. Applicazioni a segnali sinusoidali.
Analisi spettrale mediante DFT: rappresentazione dei segnali sulla base di Fourier, matrice DFT, calcolo della trasformata mediante FFT e della trasformata inversa, spettro di ampiezza e fase, costruzione e interpretazione dell’asse delle frequenze, risoluzione in frequenza e spectral leakage. Analisi tempo-frequenza mediante spettrogramma e applicazioni a segnali audio.
Sistemi LTI e filtraggio numerico: convoluzione lineare e circolare e relazione mediante zero-padding, implementazione di sistemi FIR e IIR, filtraggio nel dominio del tempo, filtri a media mobile e leaky integrator, filtraggio passa-basso e passa-banda. Applicazioni al filtraggio di segnali audio.
Progetto di filtri digitali: definizione delle specifiche di progetto, progetto e implementazione di filtri FIR e IIR, ordine del filtro e banda di transizione, filtri IIR Butterworth, rappresentazione mediante poli e zeri, verifica della risposta in frequenza e confronto tra filtri FIR e IIR. Applicazioni a segnali reali.
Campionamento e aliasing: interpretazione numerica del campionamento nel dominio della frequenza, periodizzazione dello spettro, condizione di Nyquist, sottocampionamento e aliasing, utilizzo di filtri anti-aliasing. Verifica sperimentale degli effetti del sottocampionamento su segnali audio.
Textbooks and resources:
[2] M. Scarpiniti, Laboratorio di programmazione. MATLAB® per l'ingegnere dell'informazione, 2020.