
이것은 매우 낮은 SNR에서도 올바르게 작동하는 데 필요한 모든 수신기 구성 요소가있는 LORA 트랜시버의 완전 기능 GNU 라디오 소프트웨어 정의 라디오 (SDR) 구현입니다. 트랜시버는 GNU Radio 3.10 모듈로 사용할 수 있습니다. 이 작업은 EPFL의 통신 회로 실험실에서 수행되었습니다.
LORA TX 및 RX 체인의 GNU 라디오 구현에서 사용자는 스프레딩 팩터, 코딩 속도, 대역폭, 동기화 워드, 명시 적 헤더 및 CRC와 같은 전송의 모든 매개 변수를 선택할 수 있습니다.




USRP-USRP와 USRP- 상업 LORA 트랜시버 사이에 LORA 패킷을 보내고 수신합니다 (RFM95, SX1276, SX1262로 테스트).
사용 가능한 매개 변수 :
* 확산 계수 5와 6은 SX126X와 호환되지 않습니다.
J. Tapparel, O. Afisiadis, P. Mayoraz, A. Balatsoukas-Stimming 및 A. Burg, "GNU 라디오의 오픈 소스 LORA 물리적 계층 프로토 타입,"2020 IEEE 21st International Workshop in Wireless Communications (SPAWC), Atlanta, GA, GA, 2020, 1-5. IEEE XPLORE LINK, ARXIV 링크
J, Tapparel 및 A. Burg, "GNU 라디오에서 LORA 물리 계층의 설계 및 구현". 2024 년 미국 테네시 주 녹스빌에있는 GNU 라디오 컨퍼런스 절차. GNU 라디오 절차
이 구현이 프로젝트에 유용한 경우 위에서 언급 한 논문을 인용하는 것을 고려하십시오.
외부 트리 모듈 gr-lora_sdr는 소스에서 또는 콘다 패키지로 직접 설치할 수 있습니다.
git clone https://github.com/tapparelj/gr-lora_sdr.git cd gr-lora_sdr/ wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh bash Miniconda3-latest-Linux-x86_64.sh source ~ /.bashrc conda env create -f environment.yml conda activate gr310 mkdir build
cd build cmake .. -DCMAKE_INSTALL_PREFIX= < your prefix > # default to usr/local, CONDA_PREFIX or PYBOMB_PREFIX if no install prefix selected here (sudo) make install -j $( nproc ) sudo ldconfig gnuradio-companion & python3 examples/tx_rx_functionality_check.py python3 ./{file_name}.py 로 실행할 수 있습니다.Ryan Volz 덕분 에이 OOT 모듈은 Conda 패키지로 직접 설치할 수도 있습니다. Gnuradio는 Conda 환경에도 설치됩니다.
conda install -c tapparelj -c conda-forge gnuradio-lora_sdr conda install -c conda-forge gnuradiognuradio-grcgnuradio-iiognuradio-qtguignuradio-soapygnuradio-uhdgnuradio-video-sdlgnuradio-zeromq conda install -c conda-forge gnuradio-uhd$CONDA_PREFIX/share/gr-lora_sdr/examples%CONDA_PREFIX%Librarysharegr-lora_sdrexamples make 못함 (sudo) make uninstall
make clean
make -j4
(sudo) make install
[grc]
local_blocks_path=path_to_the_downloaded_folder/gr-lora_sdr/grc
단어 확인을 무시하고 수신 된 값을 인쇄하려면 옵션 추가
수신 된 페이로드의 선택적 인쇄를 16 진수 값으로 추가하십시오
태그 스트림 입력 지원 추가 (프레임 길이의 프레임 정의)
fft_demod 와 deinterleaver 사이에 LLR 스트림 형식을 수정했습니다
CRC 검증 출력 스트림 표시 프레임 시작, 길이 및 CRC 결과에 태그가 추가되었습니다.
파일 입력에 대한 분리기 옵션이 추가되었습니다
서문 길이 옵션이 추가되었습니다
프레임 제로 패딩에 대한 매개 변수가 추가되었습니다
낮은 데이터율 최적화 지원을 추가하십시오
7보다 작은 확산 계수의 지원을 추가하십시오
...
이 작품은 Pieter Robyns, Peter Quax, Wim Lamotte 및 William Thenaers의 https://github.com/rpp0/gr-lora에서 영감을 받았습니다. LORA의 물리적 층을 더 잘 모방하기 위해 어떤 아키텍처와 기능이 향상되었는지.
GPL-3.0 라이센스 라이센스에 따라 배포됩니다. 자세한 내용은 라이센스를 참조하십시오.