Міністерство освіти і науки України
Національний університет «Львівська політехніка»
Інститут комп’ютерних наук та інформаційних технологій
Кафедра автоматизованих систем управління
Звіт
до лабораторної роботи №2
з дисципліни “Основи цифрової обробки сигналів”
на тему
СПЕКТРАЛЬНИЙ АНАЛІЗ МЕТОДОМ ПЕРІОДОГРАМ
Мета роботи: навчитися проводити спектральний аналіз методом періодограм.
1. Непараметричні оцінки спектру
Періодограмою (periodogram) називається оцінка спектральної густини потужності:
Якщо при обчисленнях спектру використовується вагова функція (вікно) , одержана оцінка спектру називається модифікованою періодограмою (modified periodogram):
,
Можна показати, що періодограма не є слушною оцінкою спектру, оскільки дисперсія такої оцінки співставима їз квадратом її математичного чекання при довільному N:
Бартлетт (Bartlett) запропонував разділяти сигнал на сегменти, що не перекрываються, обчислювати для кожного сегменту періодограму і потім ці періодограми усереднювати (рис.10).
амплітуда
частота
час оцінка Бартлета
Рис.10
Уэлч (Welch) вніс в метод Бартлета два удосконалення: використання вагової функції й розбиття сигналу на сегменти, що перекриваються. Застосування вагової функції дозволяє ослабити розтікання спектру й зменшити зміщення оценки спектру ціною незначного погіршення разрішаючої здатності. Перекриття сегментів дозволяє зменшити дисперсію оцінки.
2. Обчислення непараметричних оцінок спектру в Matlab’і
В пакеті Signal Processing програми Matlab реалізовані три методи непараметричного оцінювання спектру — періодограма, метод Уелча й метод Томсона (MTM).
Обчислення періодограмми (в тому числі модифікованої) здійснюється за допомогою функції periodogram, синтаксис котрої має вигляд:
[Pxx,f] = periodogram(x,window,nfft,fs)
де вхідні дані - масив x відліків СВП, масив відліків вікна window, число точок БПФ nfft, частота дискретизації fs; вихідні дані – масиви значень перідограми Pxx та її аргумента f.
Метод Уелча є найбільш популярним періодограмним методом спектрального аналізу. В пакете Signal Processing він реалізується за допомогою функції pwelch:
[Pxx,f] = pwelch(x,window,noverlap,nfft,fs),
де noverlap – число відліків, що перекрываються.
3. Параметричні методи
Використання параметричних методів означає наявність математичної моделі випадкового процесу, що аналізується, а саме: СВП представляють як результат проходження білого шуму через фільтр (рис.11).
Білый шум Забарвлений шум
Рис.11
Оскільки спектри СВП вхідного й вихідного процесів лінійної системи пов’язані співвідношенням:
,
для випадку білого шуму на вході, тобто , маемо
.
Таким чином, задачу вимірювання спектру потужності процесу можна підмінити задачею вимірювання АЧХ деякого фільтру й потужності білого шуму на його вході.
Оскільки цифрові фільтри прийнято ділити на три типи, - нерекурсивні, рекурсивні й авторегресивні, - одержуєм три моделі процесу :
ковзаючого середнього (КС);
авторегресії ковзаючого середнього (АРКС);
авторегресії (АР).
Спектральний аналіз зводиться в даному випадку до рішення оптимізаційної задачі, тобто до пошуку таких параметрів моделі, при яких вона найбільш близька до реального сигналу. В Matlab, в пакеті Signal Processing, реалізовані декілька авторегресійних оцінок спектру, а також оцінки, що базуються ще на двух методах, - на аналізі власних чисел й векторів кореляційної матриці сигналу: MUSIC (MUltiple SIgnal Classification) і EV (EigenVectors).
4. Реалізація обчислень в пакеті Matlab
Кожному методу авторегресійного аналізу в пакеті Signal Processing відповідають дві функції — функція обчислення коефіцієнтів моделі й функція власне спектрального аналізу. Функція спектрального аналізу викликає функцію обчислення коефіцієнтів моделі, а потім виконує обчислення спектру. Імена функцій зведено в наступну таблицю.
Метод
Функція розрахунку коефіцієнтів моделі
Функція спектрального аналізу
Коваріаційний
arcov
pcov
Модифікований коваріаційний
armcov
pmcov
Берга
arburg
pburg
Авторегресійний Юла-Уолкера
aryule
pyulear
Синтаксис функцій спектрального аналізу дуже схожий. Для авторегресійної оцінки Юла-Уолкера:
[Pxx,f] = pyulear(x,p,nfft,fs)
де p – порядок моделі. Інші позначення співпадають з такими для непараметричних оцінок спектру.
Оскільки складові частини процесу статистично незалежні, враховуючи співвідношення Вінера-Хінчіна
,
одержуємо
, (2)
де
, (3)
- верхня гранична частота шуму .
Графік спектру суміші (2) побудувати неможливо, оскільки спектр необмеженого в часі гармонічного сигналу складається з двох дельта-функцій, що приймають безкінечно великі значення при (рис.1).
На практиці завжди маємо відрізок, довжиною , реалізації випадкового процесу. Тому замість спектру потужності на практиці оперуємо із оцінкою спектру:
,
.
Можна показати, що математичне чекання відповідної оценки відрізку гармонічного процесу має вигляд:
(4)
Тепер маємо ситуацію, максимально наближену до реальності, що дозволяє обчислити відношення сигнал-шум на виході спектроаналізатору. Якщо за сигнал на виході спектроаналізатору прийняти висоту піку математичного чекання (4), а за шум - математичне чекання рівня спектру шуму (насправді за рівень шуму приймають не рівень спектру шуму, а середньоквадритчну похибку оцінки спектра шуму – але можна показати, що для оцінки у вигляді періодограми ці два різні визначення відношення сигнал-шум співпадають), маємо:
, (5)
тобто виграш у відношенні сигнал-шум за рахунок спектрального аналізу сягає величини
. (6)
Звідси
,
.
Обрахувавши та враховучи, що за теоремою Котельнікова неперервний процес можна дискретизувати з кроком , одержуємо корисну для планування експерименту формулу, що дозволяє обрахувати потрібну кількість відліків процесу:
Результати виконаної роботи
Періодограми білого гауссового шуму при різній довжині використовуваного запису даних: (А) N = 8; (Б) N = 32; (В) N = 128; (Г) N = 512. Із зростанням довжини запису даних періодограма не сплющується, а починає все сильніше флуктуювати. (СПМ – спектральна густина потужності).
X0 = randn(1, 1000);
a = 0.9;
X = filter(1, [1 -a], X0);
periodogram(X, [], [], 1)
Висновок
Під час лабораторної роботи я навчилась проводити спектральний аналіз методом періодограм.