|
Как сделать digital down conversion I/Q сигнала ? |
|
|
|
Aug 4 2013, 20:57
|
Группа: Новичок
Сообщений: 1
Регистрация: 4-08-13
Пользователь №: 77 795

|
Имеется I/Q сигнал полученный с SDR приёмника. Нужно получить сдвинутый по частоте I/Q сигнал. Вопрос как это сделать ?
|
|
|
|
|
 |
Ответов
|
Sep 30 2013, 08:25
|
Местный
  
Группа: Участник
Сообщений: 236
Регистрация: 7-02-11
Пользователь №: 62 755

|
Цитата(Corner @ Sep 28 2013, 13:34)  Если переда АЦП стоит фильтр, ограничивающий полосу до одной зоны Найквиста (не важно какой, лишь бы АЦП адекватно воспринимал такие частоты), то никакой "фигни" не будет. Просто надо перед вычитанием сделать коррекцию sin(x)/x. А то на краях зоны после вычитания сигнал уйдет в 0. Еще надо учесть что в зонах 2, 4... происходит инверсия боковой полосы, а в 1, 3... не происходит. У меня первый смеситель Flo-Frf поэтому я использую 3*Fs/4 середину ПЧ. Два раза инвертируя боковые полосы. У вас после скользящего среднего на 4 отсчета составляющие спектра давятся не более чем на 10 дБ, а наложение после прореживания происходит вообще на уровне -4 дБ. Ваша схема нормально работает только с очень узкополосными сигналами (полоса порядка пары процентов частоты дискретизации и наложения после прореживания не более -25 дБ).
|
|
|
|
|
Sep 30 2013, 14:56
|

Профессионал
    
Группа: Участник
Сообщений: 1 072
Регистрация: 11-12-12
Пользователь №: 74 815

|
Цитата(KalashKS @ Sep 30 2013, 12:25)  У вас после скользящего среднего на 4 отсчета составляющие спектра давятся не более чем на 10 дБ, а наложение после прореживания происходит вообще на уровне -4 дБ. Ваша схема нормально работает только с очень узкополосными сигналами (полоса порядка пары процентов частоты дискретизации и наложения после прореживания не более -25 дБ). Нет у меня скользящего среднего. Только прореживание на 4. При Fs=125 МГц ПЧ=93,75 МГц и цифровой полосе 31,25 МГц (аналоговый фильтр режет ~20 МГЦ полосу). Я получаю 4 фазы относительно частоты оцифровки 31,25: 0, 90, 180 и 270. Делаю коррекцию sin(x)/x и вычитаю 0-180 и 90-270. Получаю I и Q каждое с полосой 0... 15,625 МГц, но использую только 0... 7,8125 МГц. Остальное дорезаю с помощью БИХ. Общая полоса таким образом 15,625 МГц. Изоляция двух несущих OFDM (любых двух в ортогональной сетке) около 70 дБ. Полоса 12,5 % - далеко не единицы...
|
|
|
|
|
Sep 30 2013, 16:47
|
Местный
  
Группа: Участник
Сообщений: 236
Регистрация: 7-02-11
Пользователь №: 62 755

|
Цитата(Corner @ Sep 30 2013, 18:56)  Нет у меня скользящего среднего. Только прореживание на 4. При Fs=125 МГц ПЧ=93,75 МГц и цифровой полосе 31,25 МГц (аналоговый фильтр режет ~20 МГЦ полосу). Я получаю 4 фазы относительно частоты оцифровки 31,25: 0, 90, 180 и 270. Делаю коррекцию sin(x)/x и вычитаю 0-180 и 90-270. Получаю I и Q каждое с полосой 0... 15,625 МГц, но использую только 0... 7,8125 МГц. Остальное дорезаю с помощью БИХ. Общая полоса таким образом 15,625 МГц. Изоляция двух несущих OFDM (любых двух в ортогональной сетке) около 70 дБ. Полоса 12,5 % - далеко не единицы... Ваши 0-180 и 90-270 математически эквивалентны домножению на комплексную экспоненту и последующему скользящему среднему на 4 отсчета. Набросал тут код в матлабе: CODE x=exp(1i*pi*(random('unid',2,53,100)-1)); data=cat(1,x(27:end,  ,zeros(256-53,100),x(1:26,  ); %распределение амплитуд по несущим data=ifft(data); data=cat(1,data(end-15:end,  ,data); %защитный интервал data=reshape(data,1,numel(data)); %реорганизация массива в последовательность отсчетов data=real(data.*exp(1i*pi/2*(0:length(data)-1))); %перенос на ПЧ y=data(1:4:end)-data(3:4:end)-1i*(data(2:4:end)-data(4:4:end)); %сброс на нулевую частоту y=(buffer(y,68)); %разделение на символы y=fft(y(5:end,  ); y=fftshift(y,1); y=y(7:59,  ; %выделение принятых амплитуд plot(-26:26,angle(y(:,1)./x(:,1))) %построение ФЧХ Код генерит OFDM сигнал на несущей 1/4 частоты дискретизации с соотношением параметров, близким к вашему, после чего сбрасывает его в ноль вашим методом. Наложения проявляются в виде рваной ФЧХ полученной системы. Про -4 дБ я, возможно погорячился, а вот указанные -11 дБ вполне себя проявляют. Ну и, как ожидалось, чем ближе к нулевой частоте, тем наложения меньше. Код простой, буду благодарен, если укажете мне мою ошибку.
|
|
|
|
Сообщений в этой теме
iradio Как сделать digital down conversion I/Q сигнала ? Aug 4 2013, 20:57 Dr.Alex Очевидно, умножить на комплексную экспоненту.... :... Aug 4 2013, 21:19 BooZe Если конкретнее, то умножить на сигнал вида cos(2*... Aug 14 2013, 08:12 Corner Я так понимаю, под I/Q имеются в виду отсчеты АЦП ... Aug 17 2013, 17:39 Михаил_K Цитата(Corner @ Aug 17 2013, 21:39) Я так... Sep 16 2013, 13:25  Corner Цитата(Михаил_K @ Sep 16 2013, 17:25) Неп... Sep 18 2013, 17:03 Михаил_K Гхм.... Ну в принципе, если использовать такие отс... Sep 20 2013, 12:29 Corner Цитата(Михаил_K @ Sep 20 2013, 16:29) Гхм... Sep 20 2013, 18:13  Михаил_K Цитата(Corner @ Sep 20 2013, 22:13) Если ... Sep 23 2013, 08:33 thermit Если f0=fd/4 вполне можно и 1 ацп обойтись. Для сн... Sep 23 2013, 10:53 Corner Цитата(thermit @ Sep 23 2013, 14:53) Если... Sep 23 2013, 14:58 Михаил_K Цитата(thermit @ Sep 23 2013, 14:53) Если... Sep 24 2013, 09:37  KalashKS Цитата(Михаил_K @ Sep 24 2013, 13:37) Сам... Sep 24 2013, 10:37   Михаил_K Цитата(KalashKS @ Sep 24 2013, 14:37) Это... Sep 25 2013, 10:59    KalashKS Цитата(Михаил_K @ Sep 25 2013, 14:59) Заб... Sep 25 2013, 11:19 Corner KalashKS, thermit Sep 24 2013, 16:21 KalashKS Цитата(Corner @ Sep 24 2013, 20:21) Kalas... Sep 25 2013, 07:47 thermit ЦитатаМихаил_K:
Забыли, что помимо этого, и того ч... Sep 25 2013, 11:37    Corner Цитата(KalashKS @ Sep 30 2013, 20:47) Ваш... Oct 8 2013, 16:20     KalashKS Цитата(Corner @ Oct 8 2013, 20:20) Я не с... Oct 9 2013, 07:52
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|