Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Методы обработки данных в научных исследованиях. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
☆
6.2. Амплитудный демодулятор
R

R
R
Демодуляция — процедура, обратная модуляции. Задача ампли­тудной демодуляции — получить исходный модулирующий сигнал из амплитудно-модулированного несущего сигнала.
Для демодуляции применяют синхронный детектор, обеспечиваю­щий смещение частоты анализируемого сигнала на частоту несущей гармоники, что позволяет получить исходный сигнал модуляции.
Синхронное детектирование основано на операции умножения сигналов. Схема синхронного детектора приведена на рис. 22.
Рис. 22. Синхронный детектор
Пусть на входы умножителя подаются два гармонических сигна­ла: так называемый опорный сигнал с постоянными частотой и ам­плитудой
() sin( )
rt R w t
и сигнал
() sin( ).st S wt

Тогда выходной сигнал умножителя будет иметь вид
twwtwwRStstrtx
RR
2/))cos(())(cos(()()()(
В результате умножения появляются гармонические составляю­щие на суммарной ( )
ww и разностной ( )
ww частотах. Ре-
зультат работы умножителя для амплитудно-модулированного сиг­нала из предыдущего параграфа показан на рис. 23.
51
R
Рис. 23. Результат работы умножителя
В синхронном детекторе используется составляющая на раз­ностной частоте. Ее выделяет фильтр низких частот, включенный на выходе умножителя.
Фильтр нижних частот — это специализированный модуль (в данном случае программный алгоритм), который преобразует входной сигнал по следующему принципу. Фильтр нижних частот эффективно пропускает частотный спектр сигнала ниже некоторой частоты (частоты среза) и подавляет частоты выше этой частоты. Основные параметры фильтров нижних частот: частота среза и ча­стотная характеристика, определяющая, насколько эффективно фильтр сохраняет амплитуду нижних частот и подавляет амплитуду высоких частот.
В нашем случае фильтр пропускает сигналы с частотами ниже частоты среза фильтра
w и подавляет более высокочастотные сиг-
c
налы. Частота среза устанавливается намного меньшей, чем опор­ная частота .
w Поэтому ненулевой отклик на выходе фильтра да-
дут лишь те сигналы, частоты которых близки к опорной частоте (отличаются от опорной частоты на величину, не превышающую частоту среза фильтра низких частот).
Результат работы фильтра нижних частот для амплитудно­модулированного сигнала после умножителя представлен на рис. 24. Видно, что он отличается от исходного модулирующего сигнала только постоянной величиной.
52
s
Рис. 24. Результат работы фильтра нижних частот
для амплитудно-модулированного сигнала
В случае, когда частота сигнала точно равна опорной частоте (сигналы на входах умножителя синхронны — отсюда название де­тектора), в результате умножения появится составляющая с нулевой разностной частотой, т. е. постоянная составляющая. На выход фильтра пройдет только эта постоянная составляющая. Для фильтра с коэффициентом передачи в полосе пропускания, равным единице, выходной сигнал будет равен
yt RS
( ) const cos( ) / 2.

Таким образом, выход синхронного детектора пропорционален амплитуде входного сигнала и зависит от фазового сдвига относи­тельно опорного сигнала.
Функция, реализующая умножитель с опорным гармоническим сигналом заданной частоты, представлена ниже.
voidMutiplex(float*input,intLen,float*output, floatbase_freq) {
for(inti=0;i<Len;i++)  { floatbase_val=sin(base_freq*i); output[i]=base_val*input[i];  }  return;}
53
Реализация фильтра нижних частот, как правило, зависит от тре­буемых параметров фильтра. В основном при проектировании и реализации фильтра рассматривают его частотную характеристи­ку. Существуют различные реализации фильтров, обладающие ря­дом достоинств и недостатков и различной сложностью. В качестве примера ниже приведена реализация оконного сглаживающего фильтра нижних частот, период сглаживания которого примерно равен периоду опорного сигнала.
voidSmooth(float*input,intLen, float*output,inthalf_wnd) {
intind0=0;  intind1=0;  intind=0;  for(inti=0;i<Len;i++)  { ind0=i‐half_wnd; ind1=i+half_wnd; if(ind0<0) if(ind1>Len)ind1=Len; floatsum=0.0f; ind=ind0; while(ind<ind1) { sum+=input[ind]; ind++; } output[i]=sum/(ind1‐ind0);  }  return;}
ind0=0;
Такой фильтр, с одной стороны, имеет довольно «плохую» ча­стотную характеристику, но с другой — его реализация довольно проста и в ряде случаев этого фильтра бывает достаточно. Частота среза выбрана равной частоте опорного сигнала не случайно. По­скольку сигнал после умножителя будет состоять из суммы сигнала
54
с суммарной частотой исходных сигналов и разностной частотой, то
R
s
наличие фильтра с частотой среза, равной частоте опорного сигна­ла, обеспечит эффективную фильтрацию суммарной частоты и практически не исказит разностную частоту.
В данном примере, для удобства реализации, частота среза филь­тра определяется в виде половины периода (параметр half_wnd). В итоге функция амплитудного демодулятора будет выглядеть сле­дующим образом:
voidDemodulate(float*input,intLen,float*out‐ put,floatbase_freq) {
constfloatPI=3.14159265;floathalf_base_T=PI/base_freq;float*multiplexed=(float*)malloc(Len*sizeof(float));  Mutiplex(input,Len,multiplexed,base_freq);Smooth(multiplexed,Len,output,half_base_T);free(multiplexed);return;}
6.3. Квадратурный демодулятор
Если изменить фазу опорного сигнала на /2, т. е. взять его в виде
() sin( ),
rt R w t
то в синхронном режиме выходной сигнал будет равен
( ) const = sin( ) / 2.
y
Сигналы
и
щим cos( )S  и sin( )S
yt RS
c
y
пропорциональны квадратурным составляю-
c
измеряемого гармонического сигнала s(t)
и позволяют определить его фазу и амплитуду раздельно:
222
Syy
() / .
tg y y
,
cs
cs
55
Схема работы квадратурного демодулятора представлена на рис. 25.
Рис. 25. Квадратурный демодулятор
На основе предыдущего рассмотрения можно качественно пояс­нить работу синхронного детектора при воздействии негармониче­ского сигнала s(t), имеющего в общем случае непрерывный спектр
s(). В результате умножения на гармонический опорный сигнал r(t) происходит сдвиг спектра по оси частот на величину, равную
частоте опорного сигнала спектра область низких частот || <
, а фильтр «вырезает» из сдвинутого
R
. Таким образом, синхронный
C
детектор действует как полосовой фильтр, настроенный на частоту опорного сигнала и имеющий полосу пропускания, равную частоте среза фильтра низких частот (рис. 26).
Рис. 26. Преобразование спектров в синхронном детекторе
56
Для наглядности на рис. 27 представлено частотное распределе­ние сигнала из предыдущего раздела, полученного с помощью ам­плитудной модуляции.
Рис. 27. Частотное распределение сигнала,
полученного с помощью амплитудной модуляции
На рис. 28 представлен спектр сигнала после квадратурного де­модулятора.
Рис. 28. Спектр сигнала после квадратурного демодулятора
57
Частотная избирательность синхронного детектора определяется полосой пропускания фильтра низких частот и может быть очень высокой и трудно достижимой с помощью прямой фильтрации сиг­нала. Например, при частоте опорного сигнала 1 Мгц и частоте сре­за фильтра 1 Гц добротность колебательного контура, который бы обеспечивал избирательность, равную избирательности синхронно­го детектора, должна составлять порядка 10
6
.
Таким образом, синхронный детектор обладает свойствами, важ­ными для обработки сигналов: чувствителен к фазе и амплитуде из­меряемого сигнала, имеет высокую частотную избирательность.
Пример функции, выполняющей квадратурную демодуляцию представлен ниже. Здесь используется функция Multiplex2, выпол­няющая 2 перемножения входного сигнала: с опорным сигналом и со смещенной фазой на 90°.
voidMutiplex2(float*input,intLen,float*output_s, float*output_c,floatbase_freq) {
floatbase_val=0.0f  for(inti=0;i<Len;i++)  { base_val=sin(base_freq*i); output_s[i]=base_val*input[i]; base_val=cos(base_freq*i); output_c[i]=base_val*input[i];  }
return;
}
voidDemodulate(float*input,intLen,float*output_s, float*output_c,floatbase_freq) {
constfloatPI=3.14159265;floathalf_base_T=PI/base_freq;float*multiplexed_s=(float*)malloc(Len*sizeof(float));  float*multiplexed_c=(float*)malloc(Len*sizeof(float));
58
Mutiplex2(input,Len,multiplexed_s,multiplexed_c, base_freq);
Smooth(multiplexed_s,Len,output_s,half_base_T);Smooth(multiplexed_c,Len,output_c,half_base_T);free(multiplexed_s);free(multiplexed_c);return;
}
59
7. ЧАСТОТНО-ВРЕМЕННОЙ АНАЛИЗ СИГНАЛОВ
Практически все реальные физические сигналы, полученные с датчиков, изменяются во времени. В общем случае воспринимае­мое датчиком воздействие является суперпозицией полезного сигна­ла и шума, изменяющихся в широком частотном диапазоне. Прове­дение частотно-временного анализа сигнала может предоставить специалисту много полезной информации о параметрах воспринима­емого сигнала. Более того, частотно-временной анализ нестационар­ных сигналов, в том числе анализ со сверхразрешением, позволяет изучить входной сигнал более детально и судить о законах измене­ния тех или иных параметров с совершенно иной точки зрения (ста­новится заметным дрейф, на первый взгляд, постоянных воздей­ствий) или определить закон распределения случайных сигналов.
Для проведения частотно-временного анализа разработаны раз­личные методы, в том числе основанные на разных модификациях преобразования Фурье.
Наиболее популярным методом анализа частотных составляю­щих входного сигнала является преобразование Фурье, математиче­ское описание которого выражается формулой
j
() () .
Sxed



Преобразование Фурье — довольно мощный математический аппарат анализа частотных составляющих сигнала, однако заметим, что коэффициенты получены путем бесконечного зацикливания определенных кадров входного сигнала. Таким образом, спектраль­ный анализ позволяет судить о наличии сигнала той или иной ам­плитуды на разных частотах, но не о времени их вступления.
В качестве примера обработки нестационарных сигналов рас­смотрим радиоимпульс на фоне белого шума, длительностью 5 c, записанный с частотой дискретизации 1 кГц. Осциллограмма вход­ного сигнала представлена на рис. 29.
7.1. Кратковременное преобразование Фурье
Для того чтобы ввести временную зависимость в частотный ана­лиз на основе преобразования Фурье, используется метод, основан-
60
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]