Исследование эхокомпенсатора и улучшение его характеристик в режиме одновременного разговора абонентов

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



а на два симплексных, и содержит в себе пару трансформаторов. [8]

В связи с просачиванием тока в диффсистеме, часть принимаемого сигнала отражается обратно к своему источнику. Это отражение вкупе с задержками, происходящими при передаче сигналов, вызывает следующее явление: говорящий слышит эхо собственного голоса, что (субъективно) очень неприятно.

Данный эхокомпенсатор выполнен на базе алгоритма с использованием поблочно адаптируемого линейного фильтра. Имеются нелинейный процессор (NLP) для подавления остаточной ошибки эхокомпенсации, детектор двойного разговора, механизм изменения скорости адаптации в случае наличия гармонических сигналов и пр.

Рис. 1. Простейший эхокомпенсатор

Сигнал y(i) является сигналом дальнего абонента (Far), сигнал x(i) является сигналом ближнего абонента (Near), сигнал u(i) является выходным сигналом эхокомпенсатора (Out). Эхокомпенсатор имеет два входа, на один из которых подаётся сигнал ближнего абонента, на другой - сигнал дальнего абонента. Если мы подробней рассмотрим сам ЭК (рис. 2), то видим что основой является адаптивный фильтр и так как он работает в реальном времени, то ему соответственно нужен наиболее быстрый алгоритм, к примеру можно использовать быстрое преобразование фурье(БПФ). Чтобы этот фильтр отличал встречный сигнал от эха, стоит детектор встречного разговора(DBP), также в данной модели стоят шумоподавитель(SH) для подавления постороних шумов и нелинейный процессор(NP) для управления процессом. Проследим собственно за ходом сигнала V(n), этот сигнал поступает на шумоподавитель и впоследущем на детектор встречного разговора(для временной записи для анализа) и на сумматор в виде сигнала y(n), где после идёт через процессор к абоненту, впоследующем от абонента идёт сигнал x(n) обратно и попадает на адаптивный фильтр и детектор. С детектора идёт на адаптивный алгоритм перестановки коэфициентов КИХ-фильтра, на котом одновременно есть пришедший обратный сигнал, прошедший обработку БПФ. В результате из фильтра выходит сигнал, который обрабатывается обратным преобразованием Фурье(ОБПФ) и этот сигнал y*(n) поступает на сумматор и вычинается из сигнала y(n), в результате мы получаем ошибку e(n)=y(n)-y*(n), которая поступает на анализ адаптивного алгоритма перестановки коэфициентов КИХ-фильтра , который подстраивает коэфициенты КИХ-фильтра таким образом чтобы ошибка была минимальной, в результате мы и получим эхоподавление [9].

Рис. 2. Более подробная схема эхокомпенсатора

Эхокомпенсатор является встроенным устройством и для его реализации используется сигнальный процессор (СП), который в последующем программируется под заданный алгоритм.

1.1 Быстрое преобразование Фурье (БПФ) 1. 2. 1 Физический смысл БПФ

Для чего нужно быстрое преобразование Фурье или вообще дискретное преобразование Фурье (ДПФ)? Давайте попробуем разобраться. Пусть у нас есть функция синуса x = sin(t) на рис. 3.

Рис. 3. функция синуса x = sin(t)

Максимальная амплитуда этого колебания равна 1. Если умножить его на некоторый коэффициент A, то получим тот же график, растянутый по вертикали в A раз: x = Asin(t).

Период колебания равен 2?. Если мы хотим увеличить период до T, то надо умножить переменную t на коэффициент. Это вызовет растяжение графика по горизонтали: x = A sin(2?t/T).

Частота колебания обратно периоду: ? = 1/T. Также говорят о круговой частоте, которая вычисляется по формуле: ?= 2?? = 2?T. Откуда: x = A sin(?t).

И, наконец, есть фаза, обозначаемая как ?. Она определяет сдвиг графика колебания влево. В результате сочетания всех этих параметров получается гармоническое колебание или просто гармоника на рис. 4.

Рис. 4. Гармонические колебания

Очень похоже выглядит и выражение гармоники через косинус на рис. 5.

Рис. 5 гармоника через косинус

Большой разницы нет. Достаточно изменить фазу на ?/2, чтобы перейти от синуса к косинусу и обратно. Далее будем подразумевать под гармоникой функцию косинуса:

x = A cos(2?t/T + ?) = A cos(2??t + ?) = A cos(?t + ?) (1)

В природе и технике колебания, описываемые подобной функцией чрезвычайно распространены. Например, маятник, струна, водные и звуковые волны и прочее, и прочее.

Преобразуем (1) по формуле косинуса суммы:

x = A cos ? cos(2?t/T) - A sin ? sin(2?t/T) (2)

Выделим в (2) элементы, независимые от t, и обозначим их как Re и Im (3-4):

x = Re cos(2?t/T) - Im sin(2?t / T) (3) = A cos ?, Im = A sin ? (4)

По величинам Re и Im можно однозначно восстановить амплитуду и фазу исходной гармоники:

и (5)

(6)

Выполним над этой формулой следующие действия: разложим каждое комплексное Xk на мнимую и действительную составляющие Xk = Rek + j Imk; разложим экспоненту по формуле Эйлера на синус и косинус действительного аргумента; перемножим; внесем 1/N под знак суммы и перегруппируем элементы в две суммы:

Оставим эту формулу пока в стороне и рассмотрим очень распространенную ситуацию. Пусть у нас есть звуковое или какое-то иное колебание в виде функции x = f(t). Пусть это колебание было записано в виде графика для отрезка времени [0, T]. Для обработки компьютером нужно выполнить дискретизацию. Отрезок делится на N-1 частей и сохраняются значения функции x0, x1, x2, . . . , xN для N точек на границах отрезков t0 = 0, t1 = T/N, t2 = 2T/N, . . . , tn =nT/N, . . . , tN = T.

В результате прямого дискретного преобразования Фурье [2] были получены N значений для Xk:

(8)

Теперь, если применить обратное дискретное преобразовани