2016-07-22 3 views
0

표준 블록 세트를 사용하여 GNUradio를 실행하는 두 컴퓨터간에 통신을 구현하는 간단한 방법이 있습니까? 리눅스 컴퓨터에서두 컴퓨터간에 Gnuradio 스트리밍?

, GNUradio 실행하고 무선 주변 장치로부터 입력을 수신 : 지금이 누구인지

이입니다. 해당 컴퓨터에서 WX 범위에서 수신 된 파형을 볼 수 있습니다. 슬라이더와 입력 상자를 사용하여 수신기 주파수와 같은 것을 변경할 수도 있습니다.

는 내가 뭘하고 싶은 것은 이것이다 : Windows 컴퓨터에서

, 나는 WX의 범위와 슬라이더를 가지고있다. 슬라이더를 움직이거나 입력 상자를 변경하면 해당 데이터가 Gnuradio의 라디오 수신기를 실행중인 Linux로 전송됩니다. 수신 된 신호는 스트림을 통해 창으로 돌아가 Windows의 WX 범위에 표시됩니다.

다른 사람이 ZMQ 블록을 사용하여 제안했지만, Linux에서 Windows로 사인파를 전송하기 위해 PUSH/PULL을 설정하려고했지만 아무 일도 일어나지 않았습니다. 그 접근법을 추천 한 사람도 똑같이 시도해 보았고 작동하지 못해 블록이 깨질 수 있다고 생각합니까?

그래서 내가하려는 일을 할 수있는 대안 블록이 있습니까? 가급적 잘 문서화되어 있으며 GNUradio-companion에서 사용할 수있는 것이 좋습니다.

답변

0

Linux와 Windows 모두 방화벽을 통해 연결을 차단할 수 있습니다.

gnuradio-companion에 표시된 오류 메시지를 게시해야합니다.

0

수신기의 데이터 속도에 따라 예를 들어를 사용하여 원시 파형 데이터를 보내려고하면 성능 문제가 발생할 수 있습니다. 범위 위젯

gr::log :WARN: udp_source0 - Too much data; dropping packet.

때문에 보통 입력 데이터의 일부분, 원격 수도 파형을 시각화 더 이상적인 방법을 표시 : 송신기는 다음과 같은 에러를 출력 할 수있다 UDP 블록 (예 : VNC 또는 X2Go와 같은 원격 데스크톱을 사용하여) 렌더링 된 범위 위젯 만 보냅니다. 이 솔루션은 원래의 문제를 뛰어 넘지 만, 양방향 GUI 상호 작용이 필요한 경우 장기적으로 사용하는 것이 더 쉽습니다.

0

범위 위젯 데이터의 경우 UDP sinksource 블록이 GNU Radio의 기본 것으로 보이며이 문제에 대해 충분히 문서화 된 솔루션이거나 충분히 간단합니다. 다시 @Zephyr이 언급 한대로 방화벽 구성을 고려해야합니다.

  1. 디스플레이 컴퓨터의 호스트 이름 또는 IP 주소,

  2. 용도에없는 포트 번호를 선택 (과 같다 : GRC에서

    의 UDP 블록에 지정 Linux, OS X 또는 1024 이하의 포트가 아닌 UNIX와 비슷한 것을 사용하는 경우). another answer에 설명 된대로

네트워크를 통해 변수를 설정하려면, 당신은 XMLRPC 블록을 시도 할 수 있습니다. 그러나 이들은 recently deprecated이었습니다.

성능 문제가 발생하는 경우 대안에 대한 다른 답변을 참조하십시오.