|
4FSK, C4FM в частности |
|
|
|
Nov 23 2014, 09:27
|

Местный
  
Группа: Свой
Сообщений: 257
Регистрация: 2-12-06
Из: Default City
Пользователь №: 23 021

|
Приветствую. Интересует алгоритм приема C4FM и вообще 4FSK модуляции. Конкретно интересует APCO P25. Собственно схема, по ТЗ должна быть такой:  В сети есть варианты демодуляции, один вариант в GNU Radio, он работает, но дает некоторый BER, даже в ближней зоне. Обязательным условием в ТЗ является частота дискретизации АЦП после FM демодулятора – 8 КГц. Демодулятор из GNU Radio, мне так кажется, именно из-за этого (частоты дискретизации) имеет проблемы с символьной синхронизацией, давая иногда не нулевой BER даже в ближней зоне. Этот демодулятор состоит из полифазного ресемплера, и делает ресемпл из входной частоты дискретизации до частоты дискретизации 4800, и по идее, в каждом отчете уже должен быть символ, ждущий принятия решения, что это за символ (-3, -1, +1, +3). Но видимо из-за того, что входная частота 8КГц некратна 4800 Гц, в ходе передискретизации не всегда символы оказываются ровно внутри семпла. (Хотя может быть я чего-то здесь недопонимаю) Реализация 4FSK из GNU Radio тут Попробовал написать свой, схема ниже:  Синхронизация производится по поиску максимальной корреляции в FIFO, по преамбуле APCO-P25. В FIFO кладу семплы повышая частоту семплирования с 8КГц до 24КГц, интерполируя Raised Cosine фильтром, представленном в стандарте, для модулятора. Засинхронизироваться вроде удается, так как значение корреляции получается 216, это значит совпали все символы, но остальная часть сообщения принимается с диким, BER порядка 20%. Вопрос, на сколько вообще реализуем мой метод демодуляция, с настройкой тайминга в начала пакета или обязательно надо подстраивать положение символов в ходе приема остального пакета? (Как это например сделано в GNU Radio)
|
|
|
|
|
 |
Ответов
|
Nov 24 2014, 09:46
|

Местный
  
Группа: Свой
Сообщений: 257
Регистрация: 2-12-06
Из: Default City
Пользователь №: 23 021

|
Цитата(D.I.M.A @ Nov 24 2014, 11:41)  1. По стандарту в передатчике C4FM два фильтра: Raised Cosine и isinc. Соответственно, приемную сторону нужно проектировать с учетом данного факта. 2. Вроде бы apco25 C4FM передается в полосе 12.5 кГц, не мало ли будет полосы в 8 кГц на входе? В стандарте схема демодулятора приведена такая:  То есть используется Integrate and Dump фильтр, но честно говоря, я не совсем понимаю, как принимать с его помощью. По поводу полосы, да, полоса в эфире 12.5 КГц. По стандарту, при формировании модулирующего сигнала, его пропускают через Raised Cosine и isinc фильтры, ограничивая полосу частотой 2880. Цитата The response of the filter above 2880 Hz is not specified because the filter H(f) should cut off above 2880 Hz. Цитата(petrov @ Nov 23 2014, 22:40)  да и вообще стыдно уже через аналоговый частотный дискримнатор делать с потерями, CPFSK когерентно демодулируются как фазовые модуляции. Это все конечно прекрасно, я же не спорю. Задача на уже существующем железе это сделать.
|
|
|
|
|
Nov 24 2014, 09:51
|

Участник

Группа: Участник
Сообщений: 48
Регистрация: 26-08-08
Из: Москва
Пользователь №: 39 824

|
Цитата(Quasar @ Nov 24 2014, 12:39)  То есть используется Integrate and Dump фильтр, но честно говоря, я не совсем понимаю, как принимать с его помощью. Integrate and Dump фильтр можно реализовать в виде КИХ-фильтра (обычный sinc фильтр), это будет фильтр со всеми коэффициентами, равными 1 и длинной, равной длительности одного символа. Например, если у вас 4 отсчета на символ, то I&D фильтр будет КИХ фильтр с коэф. {1,1,1,1}. Не помню, нужно ли нормировать выход фильтра. Структурно, в приемнике, I&D нужно ставить после Raised Cosine.
Сообщение отредактировал D.I.M.A - Nov 24 2014, 10:13
|
|
|
|
Сообщений в этой теме
Quasar 4FSK Nov 23 2014, 09:27 petrov simulink в руки и отлаживать тщательно алгоритмы, ... Nov 23 2014, 19:40     D.I.M.A Цитата(petrov @ Nov 24 2014, 13:06) Первы... Nov 28 2014, 09:55      petrov Цитата(D.I.M.A @ Nov 28 2014, 12:55) А за... Nov 28 2014, 11:00       D.I.M.A Цитата(petrov @ Nov 28 2014, 14:00) Я так... Nov 28 2014, 13:16        Fat Robot Странно, мне всегда в подобных схемах isinc на при... Nov 28 2014, 14:00         D.I.M.A Цитата(Fat Robot @ Nov 28 2014, 17:00) Ст... Nov 28 2014, 14:07          Fat Robot Я подозреваю, что эта возможность - побочный проду... Nov 28 2014, 14:21   petrov Цитата(D.I.M.A @ Nov 24 2014, 12:51) Стру... Nov 28 2014, 14:57    D.I.M.A Цитата(petrov @ Nov 28 2014, 17:57) Вот к... Nov 28 2014, 15:03    Quasar Цитата(petrov @ Nov 28 2014, 17:57) Вот к... Nov 28 2014, 15:19     petrov Цитата(Quasar @ Nov 28 2014, 18:19) Я его... Nov 28 2014, 15:35      Quasar Цитата(petrov @ Nov 28 2014, 18:35) Да. С... Jul 27 2015, 15:03       petrov Цитата(Quasar @ Jul 27 2015, 18:03) Почем... Jul 27 2015, 18:23
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|