Синхронизация и декодирование бинарных сигналов при fsk

Виктор Васильевич
Сообщения: 11
Зарегистрирован: 23 окт 2012, 11:16

Синхронизация и декодирование бинарных сигналов при fsk

Сообщение Виктор Васильевич » 06 ноя 2012, 09:33

у меня есть задание, реализовать частотную телеграфию. проблемы возникли при реализации приемника. в наличие у меня есть демодулированный бинарный сигнал. каким образом этот сигнал лучше всего будет декодировать? сложность в том, что нужно учитывать возможность некого небольшого разноса частоты в передатчики и приемнике, а значит с стопроцентной точностью мне не известно, сколько дискретов будет соответствовать одному информационному символу. еще мне не понятно, каким образом на приемнике определять наличие входного полезного сигнала и его начало?! как я понимаю, нужна преамбула, в противном случае я буду терять полезную информацию. даже если я знаю о наличие полезного сигнала, мне нужно его каким-то образом синхронизировать, для декодирования. может кто-нибудь реализовывал подобные проекты и может что-нибудь посоветовать?!

mr.bit
Сообщения: 50
Зарегистрирован: 19 окт 2010, 13:08

Re: Синхронизация и декодирование бинарных сигналов при fsk

Сообщение mr.bit » 06 ноя 2012, 18:37

схема демодулятора (декодера) ничем не будет отличаться от типовой для того же FSK, т.е. схема обычного ЧД (некогерентный прием). необходимо будет добавить интерполятор, чтобы выровнять символьную скорость (количество отсчетов на символ), ФАПЧ по тактам к нему. если передача пакетная, то начало можно "ловить" по преамбуле, в принципе по ней же можно подстраивать и основные узлы демодулятора. если преамбулы нет, то тогда остается определять начало передачи по энергетике, но этот алгоритм "инерционен" и есть вероятность потери начала пакета данных.

Аватара пользователя
Бахурин Сергей
Администратор
Сообщения: 880
Зарегистрирован: 05 окт 2010, 19:55
Контактная информация:

Re: Синхронизация и декодирование бинарных сигналов при fsk

Сообщение Бахурин Сергей » 06 ноя 2012, 19:31

Виктор Васильевич писал(а):у меня есть задание, реализовать частотную телеграфию. проблемы возникли при реализации приемника. в наличие у меня есть демодулированный бинарный сигнал. каким образом этот сигнал лучше всего будет декодировать?
ну это зависит от того как информация была закодирована бинарным сигналом. Есть ли шифрование, помехоустойчивое кодирование и т.д.
Виктор Васильевич писал(а): сложность в том, что нужно учитывать возможность некого небольшого разноса частоты в передатчики и приемнике, а значит с стопроцентной точностью мне не известно, сколько дискретов будет соответствовать одному информационному символу.
А как вы в этих условиях получили бинарный сигнал? И вообще о какой частоте идет речь?
Виктор Васильевич писал(а): еще мне не понятно, каким образом на приемнике определять наличие входного полезного сигнала и его начало?! как я понимаю, нужна преамбула, в противном случае я буду терять полезную информацию. даже если я знаю о наличие полезного сигнала, мне нужно его каким-то образом синхронизировать, для декодирования. может кто-нибудь реализовывал подобные проекты и может что-нибудь посоветовать?!
Да все реализовывали кто писали синхронизацию. Обычно рассчитывают корреляцию и ждут пика когда приходит преамбула и по ней ловят начало пакета потом разбирают пакет, контрольные суммы проверяют и т.д. и т.д.

mr.bit
Сообщения: 50
Зарегистрирован: 19 окт 2010, 13:08

Re: Синхронизация и декодирование бинарных сигналов при fsk

Сообщение mr.bit » 06 ноя 2012, 21:24

Бахурин Сергей писал(а):ну это зависит от того как информация была закодирована бинарным сигналом.
под бинарным сигналом, по-видимому, надо понимать сигнал с выхода ЧД, у которого частота дискр. не кратна символьной частоте передачи, т.е. из этого сигнала надо еще получить битовый поток, а уже потом обрабатывать помехоустойчивое кодирование, протокол, шифрование и т.д., т.п.
mr.bit писал(а):Да все реализовывали кто писали синхронизацию. Обычно рассчитывают корреляцию и ждут пика когда приходит преамбула и по ней ловят начало пакета потом разбирают пакет, контрольные суммы проверяют и т.д. и т.д.
Не все так просто при пакетной обработке. Определить начало пакета по коррелятору - это самое малое из всех бед, гораздо больше проблем возникнет при расчете параметров ФАПЧей, отстройки по частоте, параметров корректора (если он предусмотрен) и др., особенно если преамбула коротка.

Аватара пользователя
Бахурин Сергей
Администратор
Сообщения: 880
Зарегистрирован: 05 окт 2010, 19:55
Контактная информация:

Re: Синхронизация и декодирование бинарных сигналов при fsk

Сообщение Бахурин Сергей » 07 ноя 2012, 18:48

mr.bit писал(а): под бинарным сигналом, по-видимому, надо понимать сигнал с выхода ЧД, у которого частота дискр. не кратна символьной частоте передачи, т.е. из этого сигнала надо еще получить битовый поток, а уже потом обрабатывать помехоустойчивое кодирование, протокол, шифрование и т.д., т.п.
Скорее всего да, но надо чтобы ТС подтвердил
mr.bit писал(а): Не все так просто при пакетной обработке. Определить начало пакета по коррелятору - это самое малое из всех бед, гораздо больше проблем возникнет при расчете параметров ФАПЧей, отстройки по частоте, параметров корректора (если он предусмотрен) и др., особенно если преамбула коротка.
Речь идет об FSK там вроде попроще с частотной расстройкой, к тому же речь идет о том, что битовый поток уже есть и просто надо отловить в нем начало пакета. Хотя также надо ждать ответа ТС что за входные данные у него.

mr.bit
Сообщения: 50
Зарегистрирован: 19 окт 2010, 13:08

Re: Синхронизация и декодирование бинарных сигналов при fsk

Сообщение mr.bit » 07 ноя 2012, 21:45

mr.bit писал(а):Речь идет об FSK там вроде попроще с частотной расстройкой, к тому же речь идет о том, что битовый поток уже есть и просто надо отловить в нем начало пакета. Хотя также надо ждать ответа ТС что за входные данные у него.
это я в общем описал процедуру демодуляции в пакетном режиме, хотя для FSK это, наверное, будет по-проще сделать.

Виктор Васильевич
Сообщения: 11
Зарегистрирован: 23 окт 2012, 11:16

Re: Синхронизация и декодирование бинарных сигналов при fsk

Сообщение Виктор Васильевич » 08 ноя 2012, 09:24

ну это зависит от того как информация была закодирована бинарным сигналом. Есть ли шифрование, помехоустойчивое кодирование
нет никакого шифрования и помехоустойчивого кодирования.
под бинарным сигналом, по-видимому, надо понимать сигнал с выхода ЧД, у которого частота дискр. не кратна символьной частоте передачи, т.е. из этого сигнала надо еще получить битовый поток
да, именно это я и имел ввиду. по сути мне нужно не декодировать (простите, не совсем правильно выразился) сигнал, а получить битовую последовательность.
И вообще о какой частоте идет речь?
я имел ввиду, что тактовая частота приемника может отличаться от передатчика. т.е. ацп будет на один полезный символ, например, выдавать не 200 отсчетов, как на модуляторе, а 201. как быть с этим?! нужен ФАПЧ?
Обычно рассчитывают корреляцию и ждут пика когда приходит преамбула и по ней ловят начало пакета потом разбирают пакет, контрольные суммы проверяют и т.д
именно это мне и нужно реализовать. мне не понятно, какой формы и длинны лучше всего использовать преамбулу, чтобы затем рассчитать корреляцию, чтобы это не было слишком трудоемко, но в то же самое время, чтобы она несла достаточно информации. каким образом отследить пик? ведь при корреляции будет много различных пиков, а мне нужен именно максимальный. т.е. скорее всего нужно отслеживать все пики, и после каждого из них начинать формировании битовой последовательности, а при появлении более высокого пика сбрасывать данные сформированной битовой последовательности, и начинать заново формировать?! какой длинны пакеты лучше всего передавать?!
спасибо всем.

mr.bit
Сообщения: 50
Зарегистрирован: 19 окт 2010, 13:08

Re: Синхронизация и декодирование бинарных сигналов при fsk

Сообщение mr.bit » 08 ноя 2012, 14:24

Виктор Васильевич писал(а):я имел ввиду, что тактовая частота приемника может отличаться от передатчика. т.е. ацп будет на один полезный символ, например, выдавать не 200 отсчетов, как на модуляторе, а 201. как быть с этим?! нужен ФАПЧ?
А причем здесь тактовая удаленного передатчика, для приема нужен интерполятор для конвертации семплрейта 200 sps в более удобоваримый, например, 4sps и ФАПЧ для подстройки фазы тактов этого интерполятора, может еще понадобится и ФАПЧ по несущей для корректировки начальной отстройки по частоте.
Виктор Васильевич писал(а):именно это мне и нужно реализовать. мне не понятно, какой формы и длинны лучше всего использовать преамбулу, чтобы затем рассчитать корреляцию, чтобы это не было слишком трудоемко, но в то же самое время, чтобы она несла достаточно информации. каким образом отследить пик? ведь при корреляции будет много различных пиков, а мне нужен именно максимальный. т.е. скорее всего нужно отслеживать все пики, и после каждого из них начинать формировании битовой последовательности, а при появлении более высокого пика сбрасывать данные сформированной битовой последовательности, и начинать заново формировать?! какой длинны пакеты лучше всего передавать?!
спасибо всем.
преамбула должна быть известна заранее и определена конкретной передачей. выбирается преамбула не с потолка, она должна обладать хорошими корреляционными свойствами, чтобы Ваш коррелятор не "хватался" за все, что попало. вычисление корреляции задача не такая уж и затратная, если будете искать по битовому потоку, то вообще все просто, для этого всего то надо сдвиговый регистр и сумматоры, с плавающей точкой по-затратнее, но тоже не смертельно. но как я уже и говорил, что просто коррелятором не обойтись, нужен будет еще дополнительный критерий правильности обнаружения преамбулы, т.к. вероятность ложного срабатывания коррелятора при низком С/Ш все-таки остается. Длина пакета, да и все остальное, должно определяться каналом передачи. А Вы что, сами разрабатываете протокол или все-таки надо обрабатывать что-то известное?

Виктор Васильевич
Сообщения: 11
Зарегистрирован: 23 окт 2012, 11:16

Re: Синхронизация и декодирование бинарных сигналов при fsk

Сообщение Виктор Васильевич » 11 ноя 2012, 14:54

выбирается преамбула не с потолка, она должна обладать хорошими корреляционными свойствами, чтобы Ваш коррелятор не "хватался" за все, что попало.
где можно почитать, как выбрать преамбулу, чтобы она обладала хорошими корреляционными свойствами.
А Вы что, сами разрабатываете протокол или все-таки надо обрабатывать что-то известное
протокол разрабатываю сам, поэтому и задаю подобные вопросы, так как не знаю, что и как должно по нему передаваться. может кто-нибудь может предложить готовый протокол.?!

Аватара пользователя
Бахурин Сергей
Администратор
Сообщения: 880
Зарегистрирован: 05 окт 2010, 19:55
Контактная информация:

Re: Синхронизация и декодирование бинарных сигналов при fsk

Сообщение Бахурин Сергей » 11 ноя 2012, 15:29

Хорошими корреляционными свойствами обладают шумоподобные последовательности: коды Баркера, m-последвательнсти, последовательности Голда. Погуглите думаю найдете массу информации.

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

Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость