LabVIEW 2017의 RTI DDS 툴킷으로 산업용 IoT 시스템 설계하기
2년 전 저는 매우 흥미로운 이니셔티브인 LabVIEW용 RTI DDS 툴킷 작업을 시작했습니다. LabVIEW가 제 네이티브 플랫폼이었기 때문에 설렜고, 그 기능을 확장하고 싶었습니다. 팀에 합류하기 직전 툴킷의 주 개발자가 다른 부서로 이동한다는 것을 알았습니다. RTI가 최근 NI 툴 네트워크 '올해의 제품' 상을 수상한 것과 맞물려 판돈은 높게 느껴졌지만, 동시에 엄청나게 동기부여가 되었습니다.
저는 LabVIEW 측의 주 개발자가 되었고, 전임자로부터 기존 프로젝트의 모든 뉘앙스를 흡수하는 데 몇 달을 보냈습니다. 인수인계가 완료되자 새 기능을 출시하고 완전한 소유권을 가지며 LabVIEW 2017과의 통합을 향해 툴킷을 이끌었습니다.
내쇼날 인스트루먼트와 긴밀히 협력하여 툴킷을 NI 요구사항에 맞추고 팀을 확장하여 노력을 지원했습니다. 결과: RTI DDS 툴킷이 LabVIEW 2017의 일부로 출하되었으며, NI Week 2017 기조연설에서 공식 발표되었습니다.

발표 후 DDS에 대한 여러 일반적인 질문을 받았습니다. 아래는 그 문의들을 다루는 통합 FAQ입니다.
자주 묻는 질문
"DDS란 무엇인가?"
DDS(데이터 분배 서비스)는 객체 관리 그룹(OMG)의 개방형 표준입니다. 단순한 메시징 프로토콜 이상으로, 산업용 사물 인터넷(IIoT)을 위해 설계된 상호운용 가능하고 데이터 중심적인 통신 프레임워크입니다. OMG DDS에서 자세히 알아보세요.
"LabVIEW 애플리케이션 연결에 DDS를 사용할 수 있나요?"
물론입니다. DDS는 LabVIEW 프로그램 간뿐만 아니라 운영 체제나 프로그래밍 언어에 관계없이 LabVIEW와 다른 시스템 간의 통신을 가능하게 합니다. NI Linux 기반 보드(cRIO 903x, cRIO 906x 시리즈)와도 호환됩니다.
"RTI DDS 툴킷의 주요 기능은 무엇인가요?"
툴킷은 이전에는 LabVIEW에서 사용할 수 없었던 고도로 구성 가능한 데이터 통신 패러다임을 도입합니다. 보안, 저지연, 신뢰성, 높은 처리량으로 N:M 통신을 지원합니다. LabVIEW의 다른 통신 방법과 결합하여 모든 네트워킹 과제를 해결합니다.

기본적으로 툴킷은 발행-구독 패턴을 따릅니다: 발행자는 토픽에 데이터를 쓰고, 구독자는 관심 있는 데이터를 소비합니다. 리더와 작성자는 자동으로 서로를 발견하고 공유 메모리, UDP 멀티캐스트, UDP 유니캐스트 중 가장 효율적인 경로로 P2P 데이터를 교환합니다. 네트워크 서비스나 메시지 브로커가 필요 없어 높은 확장성과 쉬운 배포를 제공합니다.
"LabVIEW에서 RTI DDS 툴킷을 설치하고 사용하는 방법은?"
LabVIEW 2017에서 툴킷은 블록 다이어그램 메뉴에 나타납니다: 데이터 통신 > RTI DDS 툴킷 > 설치.

이전 LabVIEW 버전의 경우 VI 패키지 관리자(VI Package Manager)를 통해 LabVIEW 툴 네트워크에서 툴킷을 찾으세요('rti dds' 검색 후 '패키지 설치' 클릭).
.png)
설치 마법사가 프로세스를 안내합니다. 설치 후 툴킷은 LabVIEW의 친숙한 시작 – 액션 – 종료 패턴을 따라 기존 LabVIEW 개발자에게 직관적입니다.

"버전 2.0.0.104에 포함된 추가 도구는 무엇인가요?"
핵심 기능 외에도 툴킷은 다음을 제공합니다:
- VI 오류 식별 및 해결을 위한 디버깅 유틸리티.
- 인증, 암호화, 서명 쉬운 구성을 위한 보안 패널.
- LabVIEW 타입 정의(*.ctl 파일)에 맞춤형 서브 VI를 생성하는 복잡 타입 생성기.
"DDS 지원 LabVIEW 애플리케이션을 디버깅하는 방법은?"
RTI DDS 툴킷 관리 패널은 실시간 디버그 메시지를 표시하고 시스템의 전체 뷰(엔티티 수, LabVIEW 노드 등)를 제공합니다. 패널에서 직접 로깅 설정도 조정할 수 있습니다.

"DDS 통신을 보호하는 방법은?"
보안 패널을 사용하여 인증, 암호화, 서명 매개변수를 정의하는 '보안 프로필'을 생성하세요. 이 프로필은 리더나 작성자 생성 시 적용됩니다.

"복잡한 LabVIEW 타입을 DDS와 함께 사용할 수 있나요?"
네. 복잡 타입 생성기는 맞춤형 LabVIEW 타입에 맞춘 서브 VI 모음을 생성합니다. 여기에는 리더/작성자 VI와 선택적 예제 VI가 포함됩니다.

타입 정의가 변경되면 예제 VI를 제외하고 서브 VI를 재생성하고 기존 것을 교체하세요.
관리 패널과 보안 패널은 LabVIEW 런타임 종속성으로 인해 Windows 전용입니다. 그러나 실시간 타겟용 동등한 서브 VI는 도구 > DDS 디버깅 및 도구 > DDS 보안 팔레트에서 사용할 수 있습니다.
추가 학습 리소스:
- RTI DDS 툴킷 시작 가이드
- RTI DDS 툴킷 웹페이지
- RTI 커뮤니티 포럼
- NI RTI DDS 툴킷 사용자 가이드
공동 주최 웨비나 'LabVIEW 2017의 상호운용 가능 데이터 통신 지원으로 산업용 IoT 시스템 설계하기'에 등록해 보세요. NI 전문가들이 LabVIEW의 데이터 통신 기능을 다루고, OPC UA와 DDS 표준을 비교하며, IIoT 아키텍처에 적합한 솔루션 선택 가이드를 제공합니다.