LabVIEW에서의 데이터 통신 방법
- 업데이트 날짜:2025-08-27
- 5분 (읽기 시간)
LabVIEW에는 용도별로 사용하기에 적합한 다양한 데이터 통신 방법이 포함되어 있습니다. 사용자의 어플리케이션에 적합한 데이터 통신 방법을 구현하려면, 다음 토픽에 제시된 개요를 참조하십시오. 특정 데이터 통신 방법에 대한 자세한 정보는 해당 데이터 통신 방법의 제목을 클릭하십시오.
| 데이터 통신 타입: | 데이터 흐름의 원소 | 버퍼 인터페이스 | 변수 인터페이스 |
|---|---|---|---|
| 용도: | 대부분의 블록다이어그램 객체 사이에서 데이터를 전송하기. | 값을 덮어쓰거나 손실을 방지하는 것이 중요한 경우, 각 위치 사이에서 데이터를 전송하기. | 최신 값이 가장 중요한 경우, 메모리에 즉시 접근할 수 있는 값을 저장하기. 경합 조건이 발생하지 않도록 주의해야 합니다. |
| 예: | 한 VI의 출력에서 다른 VI의 입력으로 데이터 전달하기. | 웨이브폼 얻기; 메시지나 명령 전송하기; 이미지 스트리밍하기. | 현재 온도 모니터하기; 시스템 상태 모니터하기. |
| 항목: | — 와이어 — 시프트 레지스터 — 피드백 노드 — 채널 와이어 | — 큐 — RT FIFO — 사용자 이벤트 — AMC(Asynchronous Message Communication) 참조 라이브러리 — 네트워크 스트림 — TCP — STM(Simple TCP Messaging) 참조 라이브러리 — Target-Scoped FIFO — VI-Defined FIFO — DRAM — DMA FIFO — Peer-to-Peer(P2P) FIFO | — 로컬 변수 — 글로벌 변수 — 기능적인 글로벌 변수(FGV) — 단일 프로세스 공유 변수 — 데이터 값 참조 — 현재 값 테이블(CVT) — 네트워크 공유 변수 — 프로그램적 공유 변수 API — 웹 서비스 — UDP — 글로벌 변수 — 메모리 아이템 — 레지스터 아이템 — 읽기/쓰기 컨트롤 — NI 스캔 엔진 및 변수 — 사용자 정의 I/O 변수 |
데이터 흐름의 원소
LabVIEW에서 데이터 흐름 프로그래밍 환경의 장점을 활용하려면 와이어, 시프트 레지스터, 피드백 노드, 채널 와이어를 어플리케이션의 주요 데이터 통신 방법으로 사용해야 합니다.
버퍼 인터페이스
한 위치에서 다른 위치로 데이터를 전송할 때 값을 덮어쓰거나 손실하고 싶지 않은 경우에는 버퍼 인터페이스를 사용합니다. 버퍼 인터페이스는 자주 FIFO(선입 선출) 단일 원소 또는 여러 원소의 버퍼로 표현되며, 하나 이상의 발신자가 버퍼의 한쪽에 데이터를 추가하고 다른 한쪽에서 수신자가 데이터를 받습니다.
내부 타겟 또는 PC
| 방법 | 속성 |
|---|---|
| 큐 |
|
| RT FIFO (Real-Time Module) |
|
| 사용자 이벤트 |
|
| AMC(Asynchronous Message Communication) 라이브러리 (ni.com에서 이용가능) |
|
네트워크
| 방법 | 속성 |
|---|---|
| 네트워크 스트림 |
|
| TCP |
|
| STM (Simple TCP Messaging) 참조 라이브러리 (ni.com에서 이용 가능) |
|
FPGA 내부
| 방법 | 속성 |
|---|---|
| Target-Scoped FIFO (FPGA Module) |
|
| VI-defined FIFO (FPGA Module) |
|
| DRAM (FPGA Module) |
|
FPGA에서 호스트로/호스트에서 FPGA로
| 방법 | 속성 |
|---|---|
| DMA FIFO (FPGA Module) |
|
FPGA에서 FPGA로
| 방법 | 속성 |
|---|---|
| Peer-to-Peer (P2P) FIFO (FPGA Module) |
변수 인터페이스
변수 인터페이스를 사용하면 수신자와 발신자가 최소한의 흐름 제어 또는 흐름 제어 없이 접근이 가능한 메모리에 값을 저장할 수 있습니다. 최신값이 가장 중요하여 이전 값을 덮어써도 되는 경우에는 반드시 변수를 사용해야 합니다. 경합 조건이 발생하지 않도록 주의해야 합니다.
내부 타겟 또는 PC
| 방법 | 속성 |
|---|---|
| 로컬 변수 |
|
| 글로벌 변수 |
|
| 기능적인 글로벌 변수(FGV) |
|
| 단일 프로세스 공유 변수 |
|
| 데이터 값 참조 |
|
| 현재 값 테이블(CVT) (ni.com에서 이용 가능) |
|
네트워크
| 방법 | 속성 |
|---|---|
| 네트워크 공유 변수 |
|
| 프로그램적 공유 변수 API |
|
| 웹 서비스 |
|
| UDP |
|
FPGA 내부
| 방법 | 속성 |
|---|---|
| 글로벌 변수 |
|
| 메모리 아이템 (FPGA Module) |
|
| 레지스터 아이템 (FPGA Module) |
|
FPGA에서 호스트로/호스트에서 FPGA로
| 방법 | 속성 |
|---|---|
| 읽기/쓰기 컨트롤 (FPGA Module) |
|
| NI 스캔 엔진 및 변수 (FPGA Module + 사용자의 타겟에 있는 NI 스캔 엔진 지원) |
|
| 사용자 정의 I/O 변수 (FPGA Module) |
|