You are here

LabVIEW 라이브러리

UDP 멀티캐스트

 

예제 설명

 

UDP Multicast Sender, UDP Multicast Receiver예제는 UDP 통신을 사용해 LabVIEW의 데이터를 멀티캐스트 그룹으로 전송하고 받는 방법을 설명합니다. 일반 UDP와 UDP 멀티캐스트는 거의 비슷하나 UDP 멀티캐스트의 경우 TTL(Time-To-Live)과 멀티캐스트 주소를 설정하는 부분이 추가적으로 있습니다. UDP 멀티캐스트 그룹으로 데이터를 전송할 때에 기본 TTL 설정은 1이며 이 경우 데이터는 로컬 서브넷 안에서만 처리됩니다. 멀티캐스트 그룹은 224.0.0.0에서 239.255.255.255까지의 주소 범위 내에서 정의됩니다. 

다운로드 안내

LabVIEW > 예제 찾기 > 네트워킹 > TCP & UDP > UDP Multicast Sender.vi , UDP Multicast Receiver.vi

파일 다운로드 하기

직접 다운로드 예제는 LabVIEW 8.5(한글판) 이상의 버전에서 열립니다. 이전 버전의 사용자 분들은 상단에 표기된 예제 찾기를 이용하시면 LabVIEW에서 실행하실 수 있습니다. (단, LabVIEW 8.5 이상에서 추가된 새로운 기능은 LabVIEW 평가판 다운로드를 통해 확인)

     


    프런트 패널

     


                       그림 1. UDP Multicast Sender 프런트 패널


    1. Multicast Address에 데이터를 전송할 주소를 입력합니다.
    2. Local Port와 데이터를 보낼 Send to Port를 설정합니다.
    3. TTL값을 입력합니다.
    4. Data String에 전송할 데이터를 기입합니다.
    5. Run버튼을 눌러 LabVIEW를 실행합니다. UDP Multicast Sender.vi는 1초에 한 번 씩 Data String내의 값을 전송합니다.

     


                        그림 2. UDP Multicast Receiver 프런트 패널

     

    1. UDP Multicast Sender에서 지정한 Port와 Multicase Address를 입력합니다.
    2. Run버튼을 눌러 LabVIEW를 실행해 UDP Multicast Sender로부터 데이터가 전송되는지 Data Received창을 확인합니다.

     

     

    블록다이어그램

     


                             그림 3. UDP Multicast Sender 블록다이어그램


    1. UDP Multicast Open함수에서 프런트패널에서 설정한 Local Port와 TTL값을 읽습니다.
    2. 1초에 한 번 씩 루프를 수행하면서 지정한 Multicast address와 Send to port로 Data String에 있는 값을 전송합니다.
    3. 정지버튼이 눌려지거나 에러가 발생하는 경우 루프를 빠져나와 UDP 포트를 닫습니다.

     


                             그림 4. UDP Multicast Receiver 블록다이어그램

     

    1. UDP Multicase Open함수에서 프런트패널에서 설정한 Multicast Address와 Port값을 읽습니다.
    2. Text.ScrollPosition 프로퍼티를 이용해 마지막으로 업데이트 된 데이터가 스크롤 하단에 위치하도록 합니다.
    3. 에러가 발생하지 않으면 기존의 데이터에 새로 입력된 데이터를 추가합니다.
    4. 별도의 SubVI를 통해 Timeout이 발생해도 에러가 나면서 루프가 멈추지 않게 합니다.
    5. 정지버튼을 누르거나 다른 에러가 발생해서 루프를 빠져나오면 UDP Port를 닫습니다.