|
Demodulat0r O F D M, Demodulat0r O F D M |
|
|
|
Aug 22 2007, 17:14
|
Участник

Группа: Участник
Сообщений: 30
Регистрация: 22-08-07
Пользователь №: 29 989

|
Нашёл в сети исходник на MatLab'e по генерации, передачи и получению OFDM сигнала, но у меня задача другая. Имеется сигнал OFDM, записанный с эфира. Надо его прослушать, т.е. демодулировать. Коверкался с исходником, так ничего и не получилось. Уважаемые эксперты! Помогите, может у кого завалялся демодулятор OFDM сигналов!? Заранее большое спасибо.
|
|
|
|
|
 |
Ответов
|
Aug 28 2007, 20:28
|

фанат Linux'а
    
Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008

|
Извините за оффтоп, тоже вопросик есть... Есть запись сигнала, параметры которого полностью известны, но вот демодулировать его у меня не получается... В каждом символе есть небольшая копия конца символа (guard интервал) и сам символ. При движении "окна" DFT по всему этому символу амплитуды ессно остаются почти одинаковыми, но вот фазы крутятся... Если удачно подогнать смещение от начала, то этот поворот будет таким что его можно скорректировать по pilot-поднесущим (фаза откладывается по вертикали от -180 до + 180):
А если не повезет, то так:
Во втором случае, наверное, ничто не поможет... Подскажите, пожалуйста, что может быть не так, как быть... Может частота дискретизации немного не верно выбрана что приводит к такому поведению фаз?..
--------------------
|
|
|
|
|
Aug 30 2007, 05:10
|
Знающий
   
Группа: Свой
Сообщений: 521
Регистрация: 12-05-06
Пользователь №: 17 030

|
Цитата(AVR @ Aug 29 2007, 00:28)  В каждом символе есть небольшая копия конца символа (guard интервал) и сам символ. При движении "окна" DFT по всему этому символу амплитуды ессно остаются почти одинаковыми, но вот фазы крутятся... Не понял, окно DFT вдоль одного символа смещается у Вас? Вы один канал пытаетесь обработать таким образом? Цитата(AVR @ Aug 29 2007, 00:28)  Может частота дискретизации немного не верно выбрана что приводит к такому поведению фаз?.. если частота дискретизации неправильная то все ломается  . Многие звуковухи вместо оцифровки на 8000 кГц цифруют на частоте Гц на 50 меньшей. Вообщем осторожно нужно с этим...
--------------------
ну не художники мы...
|
|
|
|
|
Aug 30 2007, 19:40
|

фанат Linux'а
    
Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008

|
Цитата(alex_os @ Aug 30 2007, 09:10)  Не понял, окно DFT вдоль одного символа смещается у Вас? Вы один канал пытаетесь обработать таким образом? Запись сигнала в IQ форме, т.е. комплексной, два канала получается. Под окном я подразумеваю то что есть OFDM символ, который состоит из собственно самого информационного символа и из его небольшой части, которая подставлена вперед. Комплексное DFT я беру ессно с точностью на время информационного символа. Начальный отсчет может быть сдвинут "влево" по времени на время длительности этой копии, т.е. это окно у меня движется в пределах одного OFDM символа... Цитата(alex_os @ Aug 30 2007, 09:10)  если частота дискретизации неправильная то все ломается  . Многие звуковухи вместо оцифровки на 8000 кГц цифруют на частоте Гц на 50 меньшей. Вообщем осторожно нужно с этим... т.е. как понять "ломается"? Это значит что у меня как раз тот самый случай?
--------------------
|
|
|
|
|
Aug 31 2007, 05:42
|
Знающий
   
Группа: Свой
Сообщений: 521
Регистрация: 12-05-06
Пользователь №: 17 030

|
Цитата(AVR @ Aug 30 2007, 23:40)  Запись сигнала в IQ форме, т.е. комплексной, два канала получается. Под окном я подразумеваю то что есть OFDM символ, который состоит из собственно самого информационного символа и из его небольшой части, которая подставлена вперед. Комплексное DFT я беру ессно с точностью на время информационного символа. Начальный отсчет может быть сдвинут "влево" по времени на время длительности этой копии, т.е. это окно у меня движется в пределах одного OFDM символа... т.е. как понять "ломается"? Это значит что у меня как раз тот самый случай? А на картинке фаза крутится для одной несущей? Вообщем, лучше бросить смотреть на непонятную фазу и делать так: 1) Правильно спозиционировать "окно DFT". Для этого считаете корреляцию защитного интервала и последнего куска символа длинной в защитный интервал. Т.е. Ls - длина символа Lg - длина защитного интервала Lu - длина окна s - Ваш сигнал (вектор-строка) Ns - длина сигнала в символах в Матлабовской нотации: Код for offset = 1:Ls r(offset) = 0; index1 = offset; index2 = offset+Lu; for i = 1: Ns r(offset) = r(offset) + r(index1: index1+Lg-1) * r(index2: index2+Lg-1)'; index1 = index1+Ls; index2=index2+Ls; end end Идея такая когда защитный интервал и его копия совпадут корреляция будет максимальна. Это широкоизвестный способ символьной синхронизации для ОFDM. Длинна выборки должны быть довольна значительна (порядка сотни символов). График abs( r ) имеет характерную треугольную форму ширина основания треугольника примерно 2*Lg. При отклонении частоты дикретизации от истинной треугольник скругляется, если сильное отклонение вообще исчезает. 2) Если треугольник получился, тогда пол-дела сделано, позиционируется начало вашего окна на offset соответсвующий максимуму(max_offset) r + Lg/2. Считаете ДПФ и пытаетесь увидеть пилоты. Кстати arg(r(max_offset)) величина пропорциональная сдвигу несущей. Еще по гуглите "OFDM timing recovery" найдете массу ссылок. ps: а что за сигнал у Вас, если не секрет?
--------------------
ну не художники мы...
|
|
|
|
Сообщений в этой теме
Dub01 Demodulat0r O F D M Aug 22 2007, 17:14 WEST128 Насколько мне известно, ортогональное частотное му... Aug 25 2007, 11:17 Dub01 Цитата(WEST128 @ Aug 25 2007, 15:17) Наск... Aug 25 2007, 19:45 Dub01 Спецам, касательно ОФДМ:
1)На счёт циклического ... Nov 11 2007, 09:46 zhorro Цитата(Dub01 @ Nov 11 2007, 13:46) 1)На с... Nov 16 2007, 15:09 Alex65111 ЦитатаДобавление нулей имеет положительный момент,... Nov 16 2007, 18:08 zhorro Цитата(Alex65111 @ Nov 16 2007, 21:08) - ... Nov 19 2007, 05:38  Dub01 Цитата(zhorro @ Nov 19 2007, 09:38) Добав... Dec 5 2007, 20:22   zhorro Цитата(Dub01 @ Dec 5 2007, 23:22) А что н... Dec 7 2007, 05:27    Dub01 Цитата(zhorro @ Dec 7 2007, 09:27) Циклич... Apr 30 2008, 14:51     alex_os Цитата(Dub01 @ Apr 30 2008, 17:51) Так, с... May 3 2008, 15:15 Dub01 zhorro
Спасибо за помощь.
Цитатачастотный разнос к... Nov 18 2007, 12:57 Dub01 При Fs=7200кГц и Fft=128 точек получим частотный р... May 4 2008, 17:25 DMax Цитата(Dub01 @ May 4 2008, 20:25) При Fs=... Dec 8 2008, 09:35 Dub01 Итак, после длительного отсутствия, появились неко... Jul 9 2008, 17:30 AVR Цитата(Dub01 @ Jul 9 2008, 21:30) ВОПРОС:... Jul 22 2008, 13:17 Alex65111 Пока OFDMом сильно не занимаюсь, но все равно инте... Jul 22 2008, 17:24 AVR Цитата(Alex65111 @ Jul 22 2008, 21:24) 1.... Jul 22 2008, 21:51 Alex65111 1. Цитатато хитрыми методами корреляции - это хитр... Jul 23 2008, 06:45 AVR Цитата(Alex65111 @ Jul 23 2008, 10:45) 1.... Jul 23 2008, 06:56 Alex65111 ЦитатаИтак, после длительного отсутствия, появилис... Jul 23 2008, 07:04 AVR Цитата(Alex65111 @ Jul 23 2008, 11:04) - ... Jul 23 2008, 07:28 Alex65111 Стр.62 стандарта
MIL-STD-188-110B
APPENDIX B... Jul 23 2008, 07:38 Dub01 Кто-нибудь может объяснить принцип работы данных с... Nov 4 2008, 19:48 Dub01 К вопросу о синхронизации, наткнулся на статью A r... Dec 7 2008, 11:23 petrov Цитата(Dub01 @ Dec 7 2008, 14:23) К вопро... Dec 8 2008, 13:35 Dub01 Цитата(petrov @ Dec 8 2008, 16:35) Вот ва... Dec 10 2008, 18:12 petrov Цитата(Dub01 @ Dec 10 2008, 21:12) Спасиб... Dec 11 2008, 10:48 DMax Цитата(Dub01 @ Dec 10 2008, 21:12) Я как ... Dec 11 2008, 14:00  alex_os Цитата(DMax @ Dec 11 2008, 17:00) В реали... Dec 11 2008, 20:47 Leshii ЦитатаNCO просто базовый элемент в алгоритмах синх... Dec 11 2008, 11:41 petrov Цитата(Leshii @ Dec 11 2008, 14:41) Если ... Dec 11 2008, 11:50 Leshii Не могли бы Вы все таки немного подробнее разъясни... Dec 11 2008, 13:06 petrov Цитата(Leshii @ Dec 11 2008, 16:06) Не мо... Dec 11 2008, 15:11 Alex65111 ЦитатаВсе дело в том, что схема описаная в статье ... Dec 11 2008, 14:44 Leshii petrov
Предположим имеются биты b1,b2…b16. Необх... Dec 12 2008, 09:12 petrov Цитата(Leshii @ Dec 12 2008, 12:12) ...
... Dec 12 2008, 12:58 petrov КодПусть w=e^(j*2*pi/N)
Например возьмём ... Dec 16 2008, 14:23
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|