bladeRF-fsk - 참조 설명서, 옵션, 명령 예제


이름

bladeRF-fsk - 명령줄 fsk 애플리케이션

설명

bladeRF-fsk 프로젝트는 호스트 PC 측에서 C 코드로 완전히 구현된 단순한 FSK(Frequency Shift Keying) 기반 소프트웨어 모뎀입니다. 이 프로젝트는 libbladeRF를 사용하여 bladeRF 장치로 샘플을 전송/수신합니다. 이 모뎀을 사용할 때 USB 3.0 포트가 필요하지 않습니다. 이 프로젝트에는 모뎀의 물리 계층(PHY) 부분의 MATLAB/Octave 시뮬레이션/구현도 포함되어 있습니다.

최상위 bladeRF-fsk C 프로그램은 간단한 bladeRF-to-bladeRF 데이터 전송 프로그램에서 모뎀의 기능을 보여줍니다. 이 프로그램은 250kbps의 원시 링크 속도로 텍스트(채팅 프로그램과 같은)와 바이너리 파일(파일 전송 프로그램과 같은)을 모두 송수신할 수 있습니다. 프로그램을 적절하게 시연하려면 프로그램의 두 인스턴스가 두 개의 별도 bladeRF 장치로 실행되어야 합니다(루프백은 지원되지 않음).

모뎀은 CPFSK(Continuous-Phase Frequency Shift Keying)로 변조합니다. 기저대역 I/Q CPFSK 샘플은 bladeRF 장치로 전송되며 내부에서 디지털에서 아날로그로 변환되고 구적 RF 캐리어와 혼합되어 공기를 통해 전송됩니다. 수신된 신호는 직교 RF 반송파와 혼합되어 기저대역 I/Q로 하향 변환되고 ADC로 샘플링되며 USB 연결을 통해 호스트 PC 프로그램으로 전송됩니다.

물리 계층 코드는 FIR 저역 통과 필터, 전력 정규화, 신호 감지를 위한 프리앰블 상관 관계, CPFSK 변조/복조 및 스크램블링을 특징으로 합니다. 링크 계층 코드는 프레이밍, CRC32 체크섬을 통한 오류 감지, 승인 및 재전송을 통한 프레임 전달 보장 기능을 제공합니다.

이 프로젝트는 실험적인 예를 의미하며 엄밀한 모뎀으로 취급되어서는 안됩니다.

예

기본값으로 최상위 bladeRF-fsk 프로그램을 실행하려면 터미널에 다음을 입력하십시오.

bladeRF-fsk

구성 옵션 목록과 설정 방법을 보려면 다음을 입력하십시오.

bladeRF-fsk -h

_참고_: Windows 10에서 동일한 PC에서 프로그램의 두 인스턴스를 실행하는 경우 [Issue #484](https://github.com)로 인해 '-d' 옵션으로 bladeRF 일련 번호를 지정해야 합니다. /Nuand/bladeRF/issues/484). 예:

bladeRF-fsk -d *:serial=4e

기본적으로 프로그램은 사용 가능한 첫 번째 bladeRF 장치를 사용하고, stdin에서 TX 입력을 받고, RX 출력을 stdout에 쓰고, 기본 송수신 주파수 및 이득 세트를 사용합니다. bladeRF-fsk를 실행하는 다른 bladeRF와 양호한 연결을 위해 게인을 조정해야 할 수도 있습니다. 파일을 전송하려면 '-i' 및 '-o' 옵션을 사용하십시오. tx 데이터에 stdin을 사용하는 경우 프로그램은 데이터를 한 줄씩 전송합니다.

프로그램은 TX 입력에서 EOF를 얻을 때까지 실행됩니다.

### 예: 파일 전송 ### 1) TX 및 RX 안테나가 연결된 두 개의 bladeRF 장치가 PC(또는 두 개의 개별 PC)에 연결되어 있는지 확인하십시오.

2) 지정된 출력 RX 파일을 사용하여 장치(수신기) 중 하나에서 bladeRF-fsk를 실행합니다.

bladeRF-fsk -r 904M -t 924M -o rx.jpg

3) 반대 주파수와 지정된 입력 TX 파일을 사용하여 다른 장치(송신자)에서 bladeRF-fsk를 실행합니다.

bladeRF-fsk -r 924M -t 904M -i puppy.jpg

4) 파일 전송이 시작되고 진행 상황이 전송 장치의 단말기에 인쇄됩니다.

5) 전송이 완료되면 Linux/OSX에서는 [CTRL-D], Windows에서는 [CTRL-Z then ENTER]를 눌러 수신측에서 프로그램을 중지합니다.

보내는 장치가 받는 장치로부터 응답을 받지 못하면 프로그램을 종료합니다. 게인을 높이고 다시 실행하십시오.

알려진 제한 사항

1) 이 프로그램은 현재 XB-200 트랜스버터 확장 보드를 사용하여 300MHz 미만의 주파수에서 송수신하는 것을 지원하지 않습니다. XB-200 지원을 추가하려면 새로운 구성 옵션과 libbladeRF API의 "확장 보드" 섹션의 기능을 소스 코드에 추가해야 합니다.

2) 프로그램은 현재 양방향으로 동시에 두 개의 파일 전송을 수행할 수 없습니다. 이유 #1: 프로그램은 TX 입력에서 EOF를 얻을 때까지 실행됩니다. 즉, 파일 전송을 먼저 완료한 쪽이 종료되고 수신이 중지됩니다. 이 동작을 중지하려면 링크 계층 패킷 형식에 EOF 비트를 추가해야 합니다. 이유 #2: 이러한 동시 파일 전송 중에 프로그램이 잘 수행되지 않는 것 같고 일반적으로 연결이 끊어집니다. 이를 디버깅하려면 추가 조사가 필요합니다.

또한보십시오

블레이드RF-cli(1)