주요 콘텐츠

이 페이지는 기계 번역을 사용하여 번역되었습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

UDP Receive

지정된 원격 컴퓨터에서 UDP 네트워크를 통해 데이터를 수신합니다.

  • UDP Receive block

라이브러리:
Instrument Control Toolbox

설명

UDP Receive 블록은 UDP 프로토콜을 사용하여 지정된 원격 주소에 대한 인터페이스를 구성하고 엽니다. 구성 및 초기화는 모델 실행이 시작될 때 한 번 발생합니다. 블록은 모델의 실행 시간 동안 차단 모드 또는 비차단 모드로 데이터를 수집합니다.

이 블록에는 입력 포트가 없습니다. 차단 또는 비차단 모드를 선택하는지에 따라 1개 또는 2개의 출력 포트가 있습니다. 차단 모드를 선택하면 블록은 수신하는 데이터에 해당하는 하나의 출력 포트 Data를 갖습니다. 차단 모드를 선택하지 않으면 블록에는 두 개의 출력 포트 DataStatus가 있습니다.

UDP Receive block nonblocking mode and blocking mode

이 블록은 FIFO(선입선출) 버퍼를 사용하여 데이터를 수신합니다. 각 시간 스텝에서 Data 포트는 버퍼에서 요청된 값을 반환합니다. 비차단 모드에서 Status 포트는 블록이 새로운 데이터를 수신했는지 여부를 나타냅니다. Status 포트에 1가 표시되면 새 데이터를 사용할 수 있고, 상태 포트에 0이 표시되면 새 데이터를 사용할 수 없습니다.

참고

이 블록을 사용하려면 Instrument Control Toolbox™와 Simulink® 모두에 대한 라이센스가 있어야 합니다.

기타 지원 기능

  • UDP Receive 블록은 Simulink 가속 및 빠른 가속 모드 사용을 지원합니다. 이러한 모드를 사용하면 Simulink 모델의 실행 속도를 높일 수 있습니다. 이러한 시뮬레이션 모드에 대한 자세한 내용은 가속화 (Simulink) 항목을 참조하십시오.

  • UDP Receive 블록은 모델 참조 사용을 지원합니다. 이 기능을 사용하면 사용자의 모델에 다른 Simulink 모델을 모듈식 구성요소로 포함할 수 있습니다.

이러한 기능에 대한 자세한 내용은 Simulink 설명서를 참조하십시오.

포트

출력

모두 확장

원격 주소에서 블록이 수신한 데이터로, 벡터, 행렬 또는 배열로 반환됩니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

새로운 데이터가 사용 가능한 상태인지 여부로, 논리적 1 (true) 또는 0 (false)로 반환됩니다. 이 포트가 1를 반환하면 새로운 데이터를 읽을 수 있습니다.

종속 관계

이 포트를 활성화하려면 Enable blocking mode 파라미터의 선택을 취소하십시오.

데이터형: Boolean

파라미터

모두 확장

호스트 이름, 점으로 구분된 십진수 IP 주소 또는 로컬 호스트의 웹 서버입니다. 이 블록은 IPV4와 IPV6 주소 형식을 모두 지원합니다.

프로그래밍 방식 사용

블록 파라미터: LocalAddress
유형: 문자형 벡터, string형

UDP에 대한 바인딩을 위한 로컬 호스트의 포트이며 1~65,535 사이의 숫자로 지정됩니다. 값을 지정하지 않으면 자동으로 값이 할당됩니다.

이 파라미터의 값을 기존 작업 공간 변수로 지정할 수도 있습니다.

프로그래밍 방식 사용

블록 파라미터: LocalPort
유형: 문자형 벡터, string형

로컬 포트 공유를 활성화하는 파라미터입니다. 다른 UDP 소켓이 동일한 로컬 포트에 바인딩할 수 있도록 하려면 이 파라미터를 선택하십시오.

UDP 포트는 다른 애플리케이션에서 공유될 수 있으므로 여러 애플리케이션이 해당 포트에서 UDP 데이터그램을 수신 대기할 수 있습니다. 이 블록을 특정 로컬 포트에 바인딩하고, 다른 애플리케이션에서는 UDP 소켓을 같은 로컬 포트 번호에 바인딩하여 둘 다 UDP 브로드캐스트 데이터를 수신할 수 있습니다.

프로그래밍 방식 사용

블록 파라미터: EnablePortSharing
유형: 문자형 벡터, string형
값: 'on' | 'off'
기본값: 'off'

데이터를 수신하려는 원격 컴퓨터 또는 서버의 IP 주소 또는 이름입니다.

프로그래밍 방식 사용

블록 파라미터: Host
유형: 문자형 벡터, string형

연결하려는 컴퓨터의 원격 포트입니다. 1~65,535 사이의 숫자로 지정됩니다.

이 파라미터의 값을 기존 작업 공간 변수로 지정할 수도 있습니다.

프로그래밍 방식 사용

블록 파라미터: Port
유형: 문자형 벡터, string형
값: 1~65,535
기본값: '9090'

이 버튼을 클릭하면 지정된 원격 주소와 포트에 대한 연결이 유효한지 확인할 수 있습니다.

이 파라미터를 사용하면 최신 데이터를 받을 수 있습니다. 최신 데이터를 받으려면 이 파라미터를 선택하십시오.

데이터는 일반적으로 FIFO 방식으로 수신됩니다. 이 기능을 활성화하면 FIFO 방식을 사용하여 패킷을 차단하는 대신, 가장 최근에 사용 가능한 패킷이 수신됩니다.

프로그래밍 방식 사용

블록 파라미터: GetLatestData
유형: 문자형 벡터, string형
값: 'on' | 'off'
기본값: 'off'

종속 관계

소스 데이터형ASCII로 설정한 경우 이 파라미터를 사용할 수 없습니다.

출력 데이터 크기 또는 각 시뮬레이션 시간 스텝에서 읽을 값의 개수입니다. 이 파라미터는 스칼라 또는 벡터로 지정됩니다. 데이터에는 종결자 값이 포함되지 않습니다.

이 파라미터의 값을 기존 작업 공간 변수로 지정할 수도 있습니다.

프로그래밍 방식 사용

블록 파라미터: DataSize
유형: 문자형 벡터, string형
값: 벡터
기본값: '[ 1, 1 ]'

블록이 원격 주소로부터 수신하는 데이터형으로, MATLAB® 데이터형으로 지정됩니다.

이 데이터형은 원격 주소의 데이터의 데이터형과 일치해야 합니다. 이 파라미터를 사용하여 원격 주소의 데이터의 데이터형을 변경할 수 없습니다.

프로그래밍 방식 사용

블록 파라미터: DataType
유형: 문자형 벡터, string형
값: 'single' | 'double' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | 'ASCII'
기본값: 'uint8'

수신된 문자열 데이터의 형식입니다. 다음 변환 지정자를 사용하거나 이를 조합하여 사용할 수 있습니다.

숫자 필드 유형변환 지정자세부

정수, 부호 있음

%d

10진법

%i

데이터의 값은 기준을 결정합니다:

  • 기본값은 10진법입니다.

  • 첫 번째 숫자가 0x 또는 0X인 경우 값은 16진수입니다.

  • 초기 숫자가 0이면 값은 8진수(기수 8)입니다.

%ld 또는 %li

64비트 값, 10, 8 또는 16진수

정수, 부호 없음

%u

10진법

%o

8진법(8진법)

%x

16진법(16진법)

%lu, %lo, %lx

64비트 값, 10, 8 또는 16진수

부동 소수점 숫자

%f

부동 소수점 필드에는 다음 중 하나가 포함될 수 있습니다(대소문자 구분 없음): Inf, -Inf, NaN 또는 -NaN.

%e

%g

프로그래밍 방식 사용

블록 파라미터: ASCIIFormatting
유형: 문자형 벡터, string형
값: '%d' | '%i' | '%ld' | '%li' | '%u' | %o' | '%x' | '%lu' | '%lo' | '%lx' | '%f' | '%e' | '%g'
기본값: '%f'

종속 관계

이 파라미터를 활성화하려면 Source Data typeASCII로 설정하십시오.

데이터 블록의 끝을 나타내는 종결자입니다. 시뮬레이션은 종결자 이전에 발생하는 모든 데이터를 새로운 데이터 블록으로 간주합니다. 종결자 데이터는 출력 포트로 전송되지 않습니다. 이 종결자는 원격 컴퓨터에서 읽고 있는 데이터의 종결자와 일치해야 합니다.

Custom Terminator를 선택하면 종결자 값을 직접 지정할 수 있습니다.

프로그래밍 방식 사용

블록 파라미터: Terminator
유형: 문자형 벡터, string형
값: 'CR' | 'LF' | 'CR/LF' | 'LF/CR' | 'Custom terminator'
기본값: 'LF'

종속 관계

이 파라미터를 활성화하려면 Source Data typeASCII로 설정하십시오.

데이터 블록의 끝을 나타내는 사용자 정의 종결자입니다. 시뮬레이션은 종결자 이전에 발생하는 모든 데이터를 새로운 데이터 블록으로 간주합니다. 종결자 데이터는 출력 포트로 전송되지 않습니다.

이 파라미터에 지정된 숫자형 배열은 해당 ASCII 문자의 uint8 정수 표현입니다. 이 파라미터의 정확한 형식은 ASCII 문자의 유형에 따라 달라집니다.

ASCII 문자의 종류ASCII 문자 예MATLAB 명령파라미터 값
제어 문자(이스케이프 시퀀스)"LF" ("\n")uint8(sprintf('\n'))[10]
특수 문자"#"uint8('#')[35]
숫자형"81"uint8('81')[56 49]
알파벳"End"uint8('End')[69 110 100]

ASCII 문자의 16진수 표현을 사용하여 이 파라미터를 지정할 수도 있습니다.

프로그래밍 방식 사용

블록 파라미터: CustomTerminator
유형: 문자형 벡터, string형
값: 정수형 배열
기본값: '10'

종속 관계

이 파라미터를 활성화하려면 TerminatorCustom terminator로 설정하십시오.

바이트가 더 큰 숫자 값으로 배열되는 순차적 순서입니다. 바이트 순서가 little-endian인 경우, 첫 번째 바이트는 수신된 UDP 패킷의 첫 번째 메모리 주소에 구성됩니다. 바이트 순서가 big-endian인 경우, 마지막 바이트는 수신된 UDP 패킷의 첫 번째 메모리 주소에 구성됩니다.

데이터를 수신하기 전에 원격 컴퓨터에 적합한 값과 일치하도록 바이트 순서를 구성하십시오. 바이트를 저장하는 순서에 대한 자세한 내용은 계측기 설명서를 참조하십시오.

프로그래밍 방식 사용

블록 파라미터: ByteOrder
유형: 문자형 벡터, string형
값: 'little-endian' | 'big-endian'
기본값: 'big-endian'

이 파라미터는 블록이 데이터를 수신하는 동안 시뮬레이션을 기다리게 합니다. 새로운 데이터가 생기면 다음 시간 스텝부터 시뮬레이션이 계속됩니다. 읽기 작업으로 인해 시뮬레이션이 대기하지 않도록 하려면 이 파라미터의 선택을 취소하십시오.

차단 모드를 활성화하면, 시뮬레이션은 요청된 데이터가 사용 가능할 때까지 기다립니다. 각 시간 스텝에서 모델은 Timeout 파라미터로 지정된 시간까지 기다립니다. 이 시간 내에 데이터가 수신되지 않으면 블록은 0 값을 출력합니다.

차단 모드를 활성화하지 않으면 시뮬레이션이 지속적으로 실행되며 블록은 두 개의 출력 포트(StatusData)를 갖습니다. Data 포트에는 각 시간 스텝에서 요청된 데이터 세트가 포함되어 있습니다. Status 포트에는 주어진 시간 스텝에서 새 데이터를 수신했는지 여부에 따라 0 또는 1이 포함됩니다.

자세한 내용은 Enable Blocking Mode in Receive and Send Blocks 항목을 참조하십시오.

프로그래밍 방식 사용

블록 파라미터: EnableBlockingMode
유형: 문자형 벡터, string형
값: 'on' | 'off'
기본값: 'on'

각 시뮬레이션 시간 스텝 동안 모델이 데이터를 기다리는 시간(초)입니다. 이 값은 실세계 시간 또는 "wall clock" 시간을 기준으로 합니다.

이 파라미터의 값을 기존 작업 공간 변수로 지정할 수도 있습니다.

프로그래밍 방식 사용

블록 파라미터: Timeout
유형: 문자형 벡터, string형
값: 양의 스칼라
기본값: '10'

종속 관계

이 파라미터를 활성화하려면 Enable blocking modeon으로 설정하십시오.

시뮬레이션 중 블록의 샘플링 시간. 이는 시뮬레이션 중에 블록이 실행되는 속도입니다. 자세한 내용은 하드웨어 인터페이스 모델의 타이밍 항목을 참조하십시오.

이 파라미터의 값을 기존 작업 공간 변수로 지정할 수도 있습니다.

프로그래밍 방식 사용

블록 파라미터: SampleTime
유형: 문자형 벡터, string형
값: 양수 숫자
기본값: '0.01'

버전 내역

R2007b에 개발됨