Измерители и анализаторы
Взвешенный спектр
Вы познакомились с тремя подходами к вычислению спектра и даже вынуждены были вникать в непростые математические соотношения. Но это еще не финал. Продолжим погружение в суть спектральных преобразований. И вновь речь пойдет о влиянии времени на результаты спектрального анализа.
Как вычисляется одна-единственная точка графика спектра? Исчерпывающий ответ на этот вопрос дают формулы. Хочется, однако, чтобы их вид не приводил вас в состояние трепета. Главное, чтобы вы понимали их смысл, поэтому попытаемся разъяснить обычными словами то, что записано математическими символами.
Итак, сначала выбирается частота f0. Реальный или виртуальный генератор формирует синусоиду этой частоты и условно единичной амплитуды. Исследуемый сигнал нормируется по амплитуде. Начиная с какого-то определенного момента f0, с шагом t (чем меньше t, тем лучше) в моменты времени t0, t1, t2, t3,…ti,…,tN-1 с этой синусоидой и исследуемым сигналом проделываются следующие операции:
- берется отсчет синусоиды;
- берется отсчет исследуемого сигнала;
- эти отсчеты перемножаются;
- результаты перемножения суммируются с накоплением.
В некоторый момент процесс измерения спектра на частоте f0 завершается. Накопленная сумма делится на общее число отсчетов. Вычисленное значение G(f0) запоминается и, возможно, отображается как одна точка графика. Затем накопленная сумма обнуляется, значение частоты изменяется на величину f (выбирается новое значение частоты f1). И вся последовательность операций повторяется до тех пор, пока "пробежкой" по ряду частот f0,f1,f2,…,fN-1 не будет перекрыт весь заданный диапазон.
Описанная процедура вычисления спектрального коэффициента одновременно есть не что иное, как вычисление взаимокорреляционной функции исследуемого сигнала и синусоиды заданной частоты. Иными словами, в процессе вычисления спектральной составляющей выясняется степень сходства исследуемого сигнала со стандартным (базисным) сигналом, в данном случае с синусоидой. Или можно сказать еще и так: выясняется, в какой пропорции синусоида "содержится" в исследуемом сигнале.
Если исследуемый сигнал уже записан и в нашем распоряжении есть цифровой анализатор спектра, способный сколь угодно долго хранить результаты промежуточных вычислений, то измерение текущего спектра и мгновенного спектра вполне осуществимо по описанной выше процедуре.
Все значительно сложнее, когда анализ ведется в реальном времени. В самом деле, допустим, что одна спектральная составляющая вычислена. Изменяем частоту синусоиды и хотим приступить к вычислению следующей спектральной составляющей. Но анализируемый фрагмент сигнала остался в прошлом. Его не повторить. Поэтому вторая спектральная составляющая будет вычислена для второго фрагмента сигнала, третья – для третьего и т. д. Это уже не текущий спектр, а просто разрозненный набор отдельных спектральных коэффициентов, каждый из которых в ничтожно малой степени характеризует совершенно разные и, возможно, не связанные между собой фрагменты сигнала.
Конечно, спектральный анализ можно проводить по параллельной схеме, одновременно вычисляя множество значений спектральной функции для различных частот. Однако это в значительной степени усложнит аппаратуру.
Уместен и такой вопрос: насколько адекватен описанный математический алгоритм тому спектральному анализу, который проводится реальными анализаторами спектра, и тому, который выполняется органами слуха и мозгом человека? Ответ: не вполне.
Основная проблема состоит в том, что прибор, анализирующий спектр, и человек обладают конечной памятью. Былые события, подробности хода любого процесса постепенно стираются из нее. Это означает, что чем более удалены в прошлое отсчеты анализируемого сигнала, тем меньший вклад они вносят в накопление той самой суммы произведений отсчетов, которая, в конце концов, определяет значение спектрального коэффициента.
Учет реальных свойств памяти анализаторов спектра осуществляется с помощью весовых функций. Весовая функция описывает зависимость вклада предшествующих отсчетов исследуемого сигнала в вычисляемый спектр. Наглядное представление о весовой функции дает форма так называемого спектрального окна.
Тот спектральный анализ, о котором мы вели речь до сих пор, соответствует спектральному окну прямоугольной формы: весовая функция равна единице в пределах спектрального окна и равна нулю вне его. При анализе текущего спектра начало спектрального окна совпадает с началом отсчета времени, а конец приходится на текущий момент. Текущее время идет вперед, правая граница спектрального окна смещается, поэтому каждому конкретному моменту завершения анализа соответствует своя ширина спектрального окна. Если вычисляется мгновенный спектр, то спектральное окно скользит вдоль оси времени, не изменяя своей ширины.
Однако в большей степени суть реального спектрального анализа отражает экспоненциальная весовая функция. Кстати говоря, экспонента и синусоида – прямо-таки магические функции. Многие существующие в природе колебательные процессы описываются экспонентой при их возникновении и затухании, а синусоидой – на этапе продолжительного существования. В частности, по экспоненциальному закону затухают колебания в колебательном контуре, который служит основой реальных анализаторов спектра, т. е. как раз по экспоненте колебательный контур "забывает" величину спектральной составляющей, некогда возбудившей его. И именно по экспоненциальному закону стирается в памяти человека информация о прошедших событиях. Прямоугольное и экспоненциальное спектральные окна используется при вычислении спектра наиболее часто. Первое соответствует идеальному анализатору с бесконечно большой памятью, второе удачно отражает свойства человеческого мозга и реальных анализаторов спектра на основе резонансных фильтров. Вместе с тем, хотя не столь широко, применяются и другие весовые функции. Трудно дать конкретные рекомендации по поводу предпочтительности использования той или иной весовой функции для спектрального анализа звуковых сигналов (за исключением экспоненциальной функции, о пользе которой сказано уже достаточно). Пожалуй, единственный совет может состоять в том, что следует остановиться на какой-то одной весовой функции. Только тогда у вас будет уверенность в том, что различия результатов анализа обусловлены различием свойств сигналов, а не методов расчета. Целесообразно также выбирать одну и ту же весовую функцию, когда при работе с одним и тем же сигналом вы решаете несколько задач, в которых применяются спектральные преобразования.