Карма: 25
Рейтинг сообщений: 99
Зарегистрирован: Вс янв 24, 2010 19:19:52 Сообщений: 4468 Откуда: Главный Улей России (Moscow)
Рейтинг сообщения:0
Собственно, тема по вопросам работы с софтом GNU Radio.
Столкнулся с необходимостью приема и декодирования GFSK сигнала на SDR приемник в целях отладки. В качестве железа используется самый дешманский RTL-SDR приемник, который смог найти у китайцев. Ясно, что у него частота плавать может, SNR и чувствительность не очень хорошие и вот это вот все, но мне для этой задачи его более чем достаточно.
Задача: Принять и декодировать любой GFSK сигнал, проскочивший в исследуемой полосе приема. Прослушиваемый диапазон: от 433,018 МГц до 434,822 МГц. Центральная частота: 433,92 МГц. Ширина диапазона: 1,804 МГц. Частота выборок: 2,4 Мвыб/сек.
На данный момент я собрал приемник и декодер на одну частоту, но нужно на весь диапазон. Что есть сейчас в программе: Приемник настроен на центральную частоту (433,92). Ввиду того, что приемник шлет синфазно-квадратурные выборки, он охватывает полосу аж в 2,4 МГц (а не 1,2 МГц, если бы это были обычные выборки [теорема Котельникова как ни как]), соответственно, интересующий диапазон он охватывает с запасом. И спектр несимметричный, что тоже упрощает задачу (по крайней мере, не придется отсекать от него половину).
Выборки приемника поступают на первый вход умножителя, а на второй вход подается синусоидальный сигнал с отступом от отдельно задаваемой принимаемой частоты (в пределах диапазона) в 8 кГц. Формула частоты, заданная в блоке выглядит так: rcvBandCenter - (rcvChannelFreq + 8e3) То есть, реализована перестройка в диапазоне методом гетеродинирования.
Далее, выборки с выхода умножителя поступают на вход ФНЧ с полосой пропускания 32кГц и полосой перехода 8кГц. Как я понимаю, этот фильтр ограничивает полосу приема до 64 кГц (32 кГц вверх и столько же вниз по спектру от центра) Выборки с выхода фильтра поступают поступают на "пороговое устройство" (Power Squelch), блок, который пропускает сигнал на выход только если его уровень выше заданного порога.
С выхода этого блока выборки поступают в блок "GFSK demod", который выдает на выход поток битов передаваемых данных.
Дальше уже происходит упаковка битов в байты с помощью блока "Sync and create PDU" и принятый пакет выводится в консоль в шестнадцатеричном виде.
В принципе, если пакет пришел по известной и заданной частоте, то он прекрасно принимается и выводится. Но если пакет пришел на другой частоте, на которую на данный момент SDR приемник не настроен, то он не будет принят.
Соответственно вопрос: Как можно сделать так, чтобы принимался любой пакет, пришедший на любой частоте в пределах диапазона 1,804 МГц? На ум приходит какой-нибудь блок анализатора спектра (поставленный до смесителя), который выдавал бы на выходе частоту самого большого пика на спектре и по нему вычислить величину перестройки гетеродина. Но блоков таких я не нашел. Есть ли какие-то другие методы?
_________________ I am DX168B and this is my favourite forum on internet!
..Как можно сделать так, чтобы принимался любой пакет, пришедший на любой частоте в пределах диапазона 1,804 МГц? На ум приходит какой-нибудь блок анализатора спектра (поставленный до смесителя), который выдавал бы на выходе частоту самого большого пика на спектре и по нему вычислить величину перестройки гетеродина...
Предполагается, что пакет будет на единственной, но неизвестной частоте? А если случится несколько пакетов на разных частотах? Мне кажется, что нужно анализировать весь диапазон.
_________________ Processor not found. Loaded software emulation ......
Если обмен предполагает единственную частоту, это значит что эта частота вам подконтрольна. Тогда оставьте 433.92 МГц и не парьтесь. Если вы не знаете, какая это будет частота, значит логично предположить, что их может быть несколько. Из этого и нужно исходить. Несколько частот предполагают анализ всего диапазона "одновременно", что при полосе 1.8МГц потребует значительной вычислительной мощности. Значит надо смотреть в сторону FPGA.
_________________ Processor not found. Loaded software emulation ......
Компания MEAN WELL пополнила ассортимент своей широкой линейки светодиодных драйверов новым семейством XLC для внутреннего освещения. Главное отличие – поддержка широкого спектра проводных и беспроводных технологий диммирования. Новинки представлены в MEANWELL.market моделями с мощностями 25 Вт, 40 Вт и 60 Вт. В линейке есть модели, работающие как в режиме стабилизации тока (СС), так и в режиме стабилизации напряжения (CV) значением 12, 24 и 48 В.
Карма: 25
Рейтинг сообщений: 99
Зарегистрирован: Вс янв 24, 2010 19:19:52 Сообщений: 4468 Откуда: Главный Улей России (Moscow)
Рейтинг сообщения:0
Я неправильно выразился. Предполагается единственная посылка в конкретный момент времени. Но она может проскочить на любой частоте в диапазоне. Одновременных передач на нескольких частотах не будет.
_________________ I am DX168B and this is my favourite forum on internet!
Навскидку нужно либо знать как именно прыгает частота либо бить диапазон на каналы и каждый анализировать.
_________________ "Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл / "Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
Зарегистрирован: Пн мар 02, 2015 17:48:40 Сообщений: 8
Рейтинг сообщения:0
Всем здравствуйте.
Апну тему. Начал изучать GNU Radio, сейчас имею HackRF и жду BladeRF. Есть желание реализовать спектроанализатор с режимом свипирования (с полосой до ГГц), нет понимания, как сделать это на практике. Самое подробное, что нашел - эта статья: https://www.researchgate.net/publication/354945556 "SDR-Based Spectrum Analyzer Based in Open-Source GNU Radio", но хотелось бы увидеть пример кода. В частности, совершенно не понимаю, как настроить модуль FTT Sink. Буду признателен, если кто-то поделится своими знаниями или опытом. Заранее спасибо
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 23
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения