[myLV.net 집필진 강좌 – Goodmaner]
이번 강좌에서는 RTI(Real-Time Innovations)에서 제공하는 DDS(Data Distribution Service)를 위한 LabVIEW add-on Toolkit인 RTI DDS Toolkit에 대해서 소개해 드리겠습니다.
우선 DDS에 대해서 알아보겠습니다.
DDS는 OMG(Object Managemet Group)의 데이터 중심 연결을 위한 미들웨어 프로토콜 및 API 표준입니다. 이 시스템은 시스템의 구성 요소를 하나로 통합하여 대기 시간이 적은 데이터 연결, 극한의 안정성 및 비즈니스 및 미션 critical IoT application에 필요한 확장 가능한 아키텍쳐를 제공합니다. 분산 시스템에서 미들웨어는 운영 체제와 응용 프로그램 사이에 있는 소프트웨어 계층입니다. 이를 통해 시스템의 다양한 구성 요소가 보다 쉽게 통신하고 데이터를 공유할 수 있습니다. 소프트웨어 개발자가 application 프로그램과 시스템 간에 정보를 전달하는 메커니즘보다는 application 프로그램의 특정 목적에 집중하게 함으로써 분산 시스템의 개발을 단순화합니다.
이기종의 분산 시스템을 개발하는 것은 힘든데, RTI DDS Toolkit은 RTI Connext 솔루션의 이점을 LabVIEW에서 사용할 수 있도록 해줍니다. RTI Connext 솔루션은 모든 유형의 데이터 소스를 통합하기 위한 유연한 데이터 배포 인프라를 제공하는데, 그 핵심은 세계 최고의 초 고성능, 분산 네트워킹 데이터 버스입니다. 이는 application, device, system 및 network 전반에 걸쳐 데이터를 연결해줍니다. RTI Connxt는 표준 기반이며 개방형 아키텍쳐로 임베디드 리얼 타입 플랫폼에서 다양한 네트워크에서 앤터프라이즈 서버를 관리할 수 있습니다. RTI DDS Toolkit은 분산 실시간 application 프로그램 통합을 위한 데이터 중심의 게시/구독 메세지 표준인 DDS 표준을 기반으로 합니다. 이 Toolkit의 VI를 사용하면 여러 LabVIEW application간에 또는 LabVIEW와 비 LabVIEW application간에 데이터를 쉽게 게시하고 공유할 수 있습니다.
RTI DDS Toolkit에서 제공하는 기능을 요약하면 아래와 같습니다.
- LabVIEW와 C, C++, Java, C#/.Net 및 Ada로 구현된 다른 application간의 완벽한 통합
- Peer to Peer 데이터 통신
- Dynamic Peer 검색
- Application 프로그램 노력을 대폭 감소시킴
- 코딩없이 application 프로그램 동작을 미세 조정할 수 있는 많은 사용자 지정 가능한 Quality of Service 매개변수
(QoS는 다른 application 프로그램, 사용자, 데이터 흐름 등에 우선 순위를 정하여 데이터 전송에 특정 수준의 성능을 보장하기 위한 능력을 말함)
RTI DDS Toolkit의 현재 버전은 윈도우용 LabVIEW 32bit 버전과 NI Linux Real-Time을 실행하는 RT 대상과 호환됩니다.
지금부터는 RTI DDS Toolkit을 다운받고, 관련 Toolkit에서 제공하는 API 및 예제 코드들에 대해서 살펴보겠습니다.
LabVIEW add-on Toolkit을 설치하는 방법은 VIPM(VI Package Manager) 또는 LabVIEW Tools Network를 이용할 수 있습니다.
여기에서는 VIPM을 이용하여 다운 받아보겠습니다.
우선은 아래와 같이 VIPM을 선택하여 실행합니다.
VIPM이 실행된 상태에서 아래와 같이 설치하려는 LabVIEW 버전을 선택하고 설치하려는 Toolkit을 찾기 위하여 검색어 입력 창에 "RTI DDS"를 입력합니다. 이후에는 설치 가능한 Toolkit이 아래와 같이 표시됩니다.
설치 가능한 Toolkit을 더블클릭하면 아래와 같이 다이얼로그 창이 활성화되며, 이때 "Install" 버튼을 클릭합니다.
이후에는 아래와 같이 다이얼로그 창이 활성화되며, 빨강색으로 표시한 버튼을 클릭해줍니다.
설치가 완료되면 아래와 같은 다이얼로그 창이 뜹니다.
설치가 완료된 이후에 블록 다이어그램의 함수 팔레트에 가보면 아래와 같이 Toolkit이 설치된 것을 확인할 수 있습니다.
Toolkit에서 제공하는 예제 코드는 아래와 같습니다.
각각의 예제 코드들이 다루는 내용들은 아래와 같습니다.
위에서 언급한 예제 코드들에 대해서는 LabVIEW 프로젝트 파일 형태로 LabVIEW2017 버전으로 압축해서 첨부하였습니다. 관련 Toolkit에 대한 상세 설명 내용은 첨부된 "RTI_DDS_Toolkit_GettingStarted.pdf"를 참조하시길 바랍니다.
지금까지 RTI DDS Toolkit에 대해서 살펴보았습니다.
이기종의 분산 시스템을 개발하는 업무를 수행하시는 분들께 도움이 될 수 있길 바랍니다.