LORA 송신기 및 수신기의 Gnuradio 구현
이 모듈에는 LORA의 모듈 식 구현이 포함되어 있습니다. 송신기 (TX) 및 수신기 (RX) 체인은 가능한 한 최상의 원자 빌딩 블록으로 분류됩니다. gnuradio가 FlowGraph에서 효율적인 루프를 허용하지 않기 때문에 타이밍 및 캐리어 주파수 오프셋 추적 -CHIRP 스프레드 스펙트럼 (CSS) 탈조기 만 모 놀리 식 방식으로 구현됩니다.
이 모듈성은 다음과 같습니다.
- LORA 물리적 계층 변형 (다른 오류 수정 코드, 프리임 바 패턴 등)을 쉽게 실험 해보세요.
- 이 구현을 교육학 자료로 사용하십시오 : TX/RX 체인의 일부는 운동으로 재 구체화 될 수 있으며 실제 물리적 계층 구현의 하위 기능은 명확하게 볼 수 있습니다 (예 : 헤더 또는 페이로드에 따라 다른 TX/RX 체인, 패딩 비트).
설치
리눅스 아래
gr-lora2 디렉토리 내에서 그리고 일반 사용자 :
$ mkdir build
$ cd build
$ cmake ..
$ make -j4
뿌리 :
# make install
# ldconfig
예
몇 가지 예 gnuradio-companion flowgraph examples/GRC 에 존재합니다.
-
lora_test.grc : SANITY 검사를 위해 채널이없는 간단한 흐름 그래프의 LORA TX/RX -
lora_tx.grc : LORA 송신기 -
lora_rx.grc : lora 수신기 -
lora_soft_test.grc : SOFT DECODING LORA TX/RX는 채널이없는 간단한 흐름에서, 정신 검사를 위해 -
lora_soft_rx.grc : 소프트 디코딩을 사용한 LORA 수신기
로라 패킷을 보내는 방법
lora_test.grc 또는 lora_tx.grc 포트 52002의 UDP 데이터 그램에서 나오는 데이터를 기대합니다. 수신 된 UDP 데이터 그램의 페이로드는 LORA 패킷의 페이로드로 전송되어 전송됩니다. 즉, 입력 UDP 데이터 그램의 페이로드 길이가 하나의 LORA 패킷에 적합 할 수 있는지 확인하기 위해서는 일부주의가 필요하다는 것을 의미합니다 (이것은 스프레딩 계수 및 코딩 속도에 따라 다름).
두 FlowGraph는 다음과 같은 매개 변수를 지정해야합니다.
-
SF : 로라 확산 계수. -
CR : LORA 코딩 속도. -
has_crc : 패킷 끝에서 LORA CRC를 추가할지 여부.
lora_tx.grc Osmocom 싱크에서 지원하는 SDR과 다음의 추가 매개 변수를 기대합니다.
-
RF_samp_rate : SDR의 샘플 속도 (HZ). -
chan_freq : 사용하려는 채널의 중심 주파수 (HZ). -
chan_bw : 사용하려는 채널의 대역폭 (HZ).
로라 패킷을받는 방법
lora_test.grc , lora_rx.grc , lora_soft_test.grc , lora_soft_rx.grc 는 수신 된 LORA 패킷의 페이로드를 포트 52001에서 전송 된 UDP 데이터 그램의 페이로드로 전송합니다.
모든 flowgraphs는 지정할 다음 매개 변수가 필요합니다.
lora_rx.grc 및 lora_soft_rx.grc OSMOCOM 소스에서 지원하는 SDR과 다음의 추가 매개 변수를 기대합니다.
-
RF_samp_rate : SDR의 샘플 속도 (HZ). -
chan_freq : 사용하려는 채널의 중심 주파수 (HZ). -
chan_bw : 사용하려는 채널의 대역폭 (HZ).
관련 자료
(이전)이 모듈의 개발은 다음과 같은 연구 기사의 발표로 이어집니다.
- A. Marquet, N. Montavont, G. Papadopoulos, LORA의 이론적 성능 및 복조 기술 조사 . 2019 년 IEEE 20th International Symposium "무선, 모바일 및 멀티미디어 네트워크의 세계"(WOWMOM) , 2019 년 6 월, 미국 워싱턴. pp.1-6, ⟨10.1109/wowmom.2019.8793014⟩. ⟨hal-02284110⟩.
- A. Marquet, N. Montavont, G. Papadopoulos, LORA의 SDR 구현을 향한 : 리버스 엔지니어링, 복조 전략 및 Rayleigh 채널에 대한 평가 . Computer Communications , Elsevier, 2020, 153, pp.595-605. ⟨10.1016/j.comcom.2020.02.034⟩. ⟨hal-02485052⟩.
- A. Marquet, N. Montavont, LORA 수신기의 캐리어 및 기호 동기화 . 임베디드 무선 시스템 및 네트워크에 관한 국제 회의 , 2020 년 2 월, 프랑스 리옹. pp.277-282. ⟨hal-02860476⟩.
이 모든 작업은 비슷한 노력으로 기반을 두거나 영감을 받았습니다. 이 작업에 큰 영향을 미치는 아래 참조 및 구현을 찾을 수 있습니다.
조항:
- M. Knight, B. Seeber, Decoding Lora : SDR과 함께 현대 LPWAN 실현 . GNU 라디오 컨퍼런스의 절차 , v. 1, n. 1, 9 월. 2016. avaial : <https://pubs.gnuradio.org/index.php/grcon/article/view/8>.
- P. Robyns, P. Quax, W. Lamotte 및 W. Theraers, 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, pp. 1498-1502, doi : 10.1109/ICASSP.2019.8683504.
- J. Tapparel, O. Afisiadis, P. Mayoraz, A. Balatsoukas-Stimming 및 A. Burg, GNU 라디오의 오픈 소스 LORA 물리적 계층 프로토 타입 . 2020 IEEE 21st International Workshop in Wireless Communications (SPAWC), 2020, pp. 1-5, doi : 10.1109/spawc48557.2020.9154273의 발전 .
- M. Xhonneux, O. Afisiadis, D. Bol 및 J. Louveaux, 샘플링 시간 오프셋에 견고한 저용량 LORA 동기화 알고리즘 . IEEE 사물 인터넷 저널 , Vol. 9, 아니오. 5, pp. 3756-3769, 2022 년 3 월 1 일, doi : 10.1109/jiot.2021.3101002.
- C. Bernier, F. Dehmas 및 N. Deparis, 초강력 전력 소프트웨어 정의 라디오를위한 낮은 복잡성 LORA 프레임 동기화 . 커뮤니케이션에 대한 IEEE 거래 , vol. 68, 아니요. 5, pp. 3140-3152, 2020 년 5 월, doi : 10.1109/tcomm.2020.2974464.
기타 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 참조)