Восстановление данных сигнала QFSK в GNURadio

Я новичок в использовании GNURadio, и у меня возникли проблемы с восстановлением данных из сигнала, который я сохранил в файл. Сигнал представляет собой несущую частоту 56 кГц с ключом сдвига частоты +/- 200 Гц при скорости 600 бод.

До сих пор мне удавалось демодулировать сигнал, похожий на сигнал, который я получаю от источника:

Демодулированный сигнал

Я пытаюсь превратить это в повторяющуюся строку из 1 и 0 (вся телеграмма имеет длину 38 байт и постоянно повторяется). Я пытался использовать блок восстановления часов, чтобы иметь только один байт на выборку, но мне не очень повезло. При использовании блока восстановления часов M&M вся телеграмма иногда выходит правильной, но она непоследовательна. Я пытался настроить значения омега и мю, но, похоже, это не очень помогает. Я также пытался использовать синхронизацию многофазных часов, но я продолжаю получать ошибку времени выполнения «пожалуйста, укажите фильтр». Это просит меня добавить кран? какой кран я бы использовал?

Итак, я думаю, что мой общий вопрос будет таким: как лучше всего получить телеграмму из демодулированного сигнала fsk?

Опять же, довольно новичок в этом, поэтому, пожалуйста, дайте мне знать, если я пропустил что-то важное. График потока GNU ниже:

Блок-схема


person D Kains    schedule 18.10.2016    source источник


Ответы (1)


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

person Marcus Müller    schedule 18.10.2016
comment
Спасибо за ответ Маркус. У меня есть идея, какой будет преамбула (не 100%, но с чего я могу начать), есть ли блок, который я мог бы использовать для восстановления структуры преамбулы и телеграммы, или это просто вопрос последующего разбора двоичного файла ? - person D Kains; 19.10.2016