Реализация Gnuradio передатчика и приемника LORA
Этот модуль содержит модульную реализацию LORA. Цепочки передатчика (TX) и приемника (RX), в наилучшей возможной степени, разбиты на атомные строительные блоки. Только демодулятор сборочного спектра (CSS) с частотой носителей и частоты носителей реализуется монолитным способом, поскольку Gnuradio не позволяет эффективным петлям в проточной графике.
Эта модульность предназначена для:
- Легко экспериментировать с изменениями физического уровня LORA (различный код исправления ошибок, шаблон преамбулы и т. Д.),
- Используйте эту реализацию в качестве педагогического материала: часть цепей TX/RX может быть повторно внедрена в качестве упражнения, подразделения реального реализации физического уровня, например: различная цепочка TX/RX в зависимости от заголовка или полезной нагрузки, битов на прокладки).
Установка
Под Linux
В рамках каталога gr-lora2 и как обычный пользователь:
$ mkdir build
$ cd build
$ cmake ..
$ make -j4
Корень:
# make install
# ldconfig
Примеры
Несколько примеров проточного потока Gnuradio-Companion присутствуют в examples/GRC :
-
lora_test.grc : lora tx/rx в простом проточном граге без канала, для проверки здравомыслия -
lora_tx.grc : передатчик Lora -
lora_rx.grc : приемник Lora -
lora_soft_test.grc : мягкая декодирование Lora tx/rx в простом потоке без канала, для проверки здравомыслия -
lora_soft_rx.grc : приемник Lora с использованием мягкого декодирования
Как отправить пакеты Lora
lora_test.grc или lora_tx.grc Ожидайте, что данные поступают от DADPAGRAMS UDP на порте 52002: полезная нагрузка полученной DATAGRAM UDP передается в полезную нагрузку пакетов LORA и отправлена. Это означает, что необходима некоторая помощь, чтобы убедиться, что длина полезной нагрузки входной датаграммы UDP может вписаться в один пакет LORA (это зависит от коэффициента распространения и скорости кодирования).
Оба проточного графа нуждаются в следующих параметрах, которые должны быть указаны:
-
SF : Лора распространение. -
CR : LORA CODING SCET. -
has_crc : Добавить ли LORA CRC в конце пакета.
lora_tx.grc ожидает SDR, поддерживаемый Osmocom Sink, и следующие дополнительные параметры:
-
RF_samp_rate : скорость дискретизации вашего SDR (в Гц). -
chan_freq : центральная частота канала, которую вы хотите использовать (в Гц). -
chan_bw : полоса пропускания канала, который вы хотите использовать (в Гц).
Как получить пакеты Lora
lora_test.grc , lora_rx.grc , lora_soft_test.grc , lora_soft_rx.grc передаст полезную нагрузку полученных пакетов LORA на полезную нагрузку данных UDP, отправленных на порт 52001.
Все проточные графы нуждаются в следующих параметрах, которые должны быть указаны:
-
SF : Лора распространение.
lora_rx.grc и lora_soft_rx.grc Ожидайте, что SDR поддерживается источником OSMOCOM, и следующие дополнительные параметры:
-
RF_samp_rate : скорость дискретизации вашего SDR (в Гц). -
chan_freq : центральная частота канала, которую вы хотите использовать (в Гц). -
chan_bw : полоса пропускания канала, который вы хотите использовать (в Гц).
Связанный материал
(Ранее) Разработка этого модуля приведет к публикации следующих исследовательских статей:
- A. Marquet, N. Montavont, G. Papadopoulos, Исследование теоретических эффективности и методов демодуляции для Лоры . 20 -й международный симпозиум IEEE 2019 года «Мир беспроводных, мобильных и мультимедийных сетей» (Wowmom) , Jun 2019, Вашингтон, США. Стр.1-6, ⟨10.1109/wowmom.2019.8793014⟩. ⟨Hal-02284110⟩.
- A. Marquet, N. Montavont, G. Papadopoulos, к реализации SDR LORA: обратное инженерное управление, стратегии демодуляции и оценка над каналом Rayleigh . Компьютерная связь , Elsevier, 2020, 153, стр. 595-605. ⟨10.1016/j.comcom.2020.02.034⟩. ⟨Hal-02485052⟩.
- A. Marquet, N. Montavont, Синхронизация носителей и символов для приемников LORA . Международная конференция по встроенным беспроводным системам и сетям , февраль 2020 года, Лион, Франция. с.277-282. ⟨Hal-02860476⟩.
Вся эта работа была построена или вдохновлена подобными усилиями. Вы найдете ниже ссылки и реализации, которые оказали значительное влияние на эту работу.
Статьи:
- М. Найт, Б. Сибер, Декодирование Лора: осознание современного LPWAN с SDR . Труды конференции по радио GNU , v. 1, n. 1, сентябрь. 2016. Доступен по адресу: <https://pubs.gnuradio.org/index.php/grcon/article/view/8>.
- P. Robyns, P. Quax, W. Lamotte и W. Thenaers, многоканальный программный декодер для схемы модуляции LORA . Материалы 3-й Международной конференции по Интернету вещей, больших данных и безопасности-IOTBDS, ISBN 978-989-758-296-7; ISSN 2184-4976, страницы 41-51. Doi: 10.5220/0006668400410051.
- R. Ghanaatian, O. afisiadis, M. Cotting и A. Burg, Цифровой анализ и реализацию LORA . ICASSP 2019 - 2019 IEEE Международная конференция по акустике, обработке речи и сигнала (ICASSP) , 2019, с. 1498-1502, doi: 10.1109/icassp.2019.8683504.
- J. Tapparel, O. afisiadis, P. Mayoraz, A. Balatsoukas-Striging и A. Burg, прототип физического слоя с открытым исходным кодом на радио . 2020 IEEE 21-й Международный семинар по достижениям обработки сигналов в беспроводной связи (SPAWC) , 2020, с. 1-5, DOI: 10.1109/SPAWC48557.2020.9154273.
- M. Xhonneux, O. afisiadis, D. Bol и J. Louveaux, алгоритм синхронизации Lora с низкой комплексностью, устойчивый к смещениям отбора проб . IEEE Internet of Things Journal , Vol. 9, нет. 5, pp. 3756-3769, 1 марта1, 2022, doi: 10.1109/jiot.2021.3101002.
- C. Bernier, F. Dehmas и N. Deparis, Синхронизация Lora Frame с низкой сложности для ультра-низких программных радиоприемников . IEEE транзакции на коммуникациях , вып. 68, нет. 5, с. 3140-3152, май 2020 г., doi: 10.1109/tcomm.2020.29744464.
Другие реализации LORA:
- https://github.com/bastilleresearch/gr-lora
- https://github.com/rpp0/gr-lora
- https://github.com/tapparelj/gr-lora_sdr
- https://github.com/f4exb/sdrangel (см. Chirpchat)