iDDS – 배경 및 개요

개요

iDDS(Instrumentation Data Distribution Service)는 데이터 수집 및 제어 계측기용으로 설계된 데이터 추상화 프로토콜입니다. iDDS는 테스트 시설, 테스트 제어 시스템 및 측정 시스템의 모든 요소를 함께 연결합니다. 

 

시스템 엔지니어는 iDDS를 사용하여 모듈형의 공급업체 독립적인 테스트 시스템을 만듭니다. iDDS는 네트워크 시스템에서 전송 지연에 관계없는 데이터 정렬을 가능하게 하는 "소스에서의 타임 스탬핑"으로 높은 총 처리량을 제공합니다. 따라서 항공기 엔진 테스트 셀에 사용되는 것과 같은 고성능 테스트 시스템에 매우 적합합니다. 

 

iDDS는 Rolls Royce가 도입하고 10여 개 이상의 항공우주 및 측정 회사를 포함하는 iDDS Working Group의 지원을 받아 MDS Aero와 협력을 통해 개발했습니다.

내용

iDDS 아키텍처

데이터 분산 서비스(DDS)는 iDDS 모델의 뼈대를 제공합니다. DDS는 네트워크 통신을 위한 시스템, 어플리케이션 프로그래밍 인터페이스, 와이어 프로토콜을 정의하는 OMG(Object Management Group) 표준입니다. DDS는 리얼타임 및 임베디드 시스템의 성능 및 서비스 품질 요구 사항을 충족하기 위해 특별히 설계되었습니다. 이는 여러 산업에서 사물 인터넷(IoT), 시간 결정적 어플리케이션 및 임무 결정적 아키텍처에 적용되었습니다. iDDS 소스 타임스탬프는 데이터를 처리할 때 시간으로 정렬할 수 있기 때문에 최적화되지 않은 네트워크 설계 때문에 생기는 지연의 부정적인 영향을 줄입니다.

그림 1: iDDS 아키텍처

DDS 네트워크는 미들웨어 서비스에 의해 관리됩니다. 미들웨어 소프트웨어에는 RTI, Twin Oaks 또는 OpenDDS가 있습니다. 미들웨어는 DDS 네트워크에서 리소스를 미리 할당하여 동적 리소스 할당을 최소화하고 여러 개의 데이터 복사본을 만들 필요성을 줄입니다.

iDDS는 다음 아이템을 포함하여 계측에 필요한 데이터 정의를 DDS에 추가합니다.

  • 채널 메타데이터―이 정보를 통해 계측기가 데이터 유형, 공학 단위 및 기타 정보를 알릴 수 있어 구독하는 서비스가 게시 디바이스에 대한 특정 지식 없이 데이터를 처리할 수 있습니다.
  • IEEE 1588 정밀 타이밍 프로토콜 타임 스탬핑—IEEE 1588은 이더넷 네트워크로 물리적 연결을 통해 디바이스 클럭에 시간 동기화를 제공합니다. iDDS 호환 계측기에는 "소스에서의 타임 스탬핑"을 위해 데이터와 함께 타임스탬프가 포함됩니다. 시스템의 그랜드마스터 클럭으로 작동할 수 있는 타이밍 생성기가 필요합니다.
  • 설정 시스템—측정 엔지니어는 설정 시스템을 사용하여 수행할 측정을 계획하고 측정 범위, 속도, 교정 및 기타 중요한 테스트 정보를 정의합니다. 
  • 시스템 상태 모니터링—이 모니터링은 엔지니어가 시스템 사용 데이터, 파라미터 또는 하드웨어 장애를 추적하는 데 도움이 됩니다. 또한 파라미터가 누락되더라도 계속 실행할 수 있는 방법을 제공합니다.

iDDS 네트워크는 여러 노드로 구성됩니다. 게시자는 네트워크에 데이터를 생성하는 네트워크의 노드입니다. 구독자는 해당 데이터를 사용합니다. 노드는 네트워크를 통해 네트워크의 다른 모든 노드에 연결할 수 있으며, 모든 노드는 어떤 파라미터라도 구독할 수 있습니다. 

DDS 도메인은 멀티캐스트 주소에 맵핑됩니다. 네트워크 분리는 표준 네트워크 인프라로 관리될 수 있습니다. 이로 인해 시스템은 간단한 실험실 내 실험부터 대규모 테스트 셀까지 다양한 유형의 시설로 확장 가능합니다. 테스트 결과, 동일한 네트워크에 10,000개 이상의 파라미터를 게시할 수 있는 것으로 나타났습니다.

그림 2: 다중 도메인 아키텍처

이 예에서 리얼타임 네트워크에는 물리적 분할이 없으므로 모든 노드가 모든 라우터에 연결할 수 있습니다. 시스템 네트워크의 모든 네트워크 문제는 리얼타임 네트워크를 방해하지 않도록 격리될 것입니다. 도메인은 데이터 유형에 연결될 수 있습니다(예: 저속, 고속, 제어).

설정 서버는 전체 네트워크를 관리합니다. 서버는 노드에 필요한 백본별 설정 데이터를 게시합니다. 서버가 설정 파일을 노드로 보내면, 설정을 유지하기 위해 노드가 이 파일을 저장합니다.

iDDS 장점

iDDS는 2000년대 초에 개발된 단일 공급업체가 제공하는 일체식 시스템에 대응하여 개발되었습니다. 이러한 시스템은 공급업체 간의 상호 운용성 문제의 위험을 최소화했지만, 고객들은 특히 하드웨어가 노후화됨에 따라 이러한 시스템을 수정하거나 유지 관리하기가 어렵다는 것을 깨달았습니다. 

iDDS는 데이터 중심 모델을 사용하여 데이터를 최우선으로 합니다. 이렇게 하면 특정 계측기 기능에서 데이터를 추상화하여 여러 공급업체 간 상호 운용성의 이점을 얻을 수 있습니다. 이는 하드웨어 디바이스 교환을 단순화하여 시스템이 단일 공급업체 또는 디바이스에 의존하지 않도록 합니다. 

iDDS 아키텍처는 측정 시스템에 다음과 같은 이점을 제공합니다.

  • 상호 운용성—엔지니어는 게시자 노드와 구독자 노드가 서로 다른 공급업체를 사용하는 시스템을 구축하여 시스템의 각 모듈에 대한 성능을 개별적으로 최대화할 수 있습니다.
  • 호환성—엔지니어는 최소한의 노력으로 한 모듈을 동일한 인터페이스를 사용하는 다른 모듈로 교체할 수 있습니다. 이를 통해 엔지니어는 시스템의 나머지 부분에 영향을 미치지 않고 시스템 구성요소를 업그레이드할 수 있으므로 구성요소를 사용할 수 없게 된 경우에도 시스템 수명을 연장할 수 있습니다.
  • 유연한 아키텍처—엔지니어는 다른 모듈이나 아키텍처를 크게 변경하지 않고도 각 테스트의 정확한 요구 사항을 충족하도록 모듈을 구성할 수 있습니다.
  • 확장성. 이 아키텍처는 동일한 기본 요소를 사용하여 수십 개에서 10,000개 이상의 파라미터까지 포함하는 아키텍처를 수용할 수 있습니다.
  • 느슨한 커플링—시스템 모듈은 다른 시스템에 대한 특별한 지식 없이도 데이터를 공유하고 통신할 수 있습니다. 이렇게 하면 전체 시스템에서 재작업과 설정 작업이 최소화됩니다. 
  • 모든 성능 시스템 지원(즉, 고성능 및 저성능 CPU)—엔지니어는 테스트 요구 사항에 따라 신호 컨디셔닝용의 저성능 CPU부터 서버용의 고성능 CPU까지 선택할 수 있습니다.
  • 단일 측정 파라미터 단위까지의 세분성—엔지니어는 스트리밍 데이터를 단일 데이터 파라미터 단위까지 전송 및 수신하도록 시스템을 설정할 수 있습니다. 이를 통해 노드 어플리케이션은 데이터 중심적인 방식으로 필요한 파라미터만 처리할 수 있습니다.
  • 타임 스탬프 데이터를 소스에 최대한 가깝게—측정 데이터에 단일 소스에서 시간 태그가 지정되므로 여러 시스템의 데이터를 가장 빠른 데이터 샘플링 속도로 상관 관계를 분석할 수 있습니다.
  • 서브시스템별 작업 추상화—엔지니어는 특정 디바이스의 특정 채널을 지정하지 않고 측정 파라미터를 기반으로 작업(예: "제로", "교정") 명령을 내릴 수 있습니다.

이러한 이점들을 통해, 테스트 시스템 설계자는 측정당 성능을 최대화하고, 시스템의 사용 수명을 늘리고, 시스템의 전체 비용을 절감하고, 시스템 노후화의 장기적 위험을 최소화하는 시스템을 관리할 수 있는 유연성을 얻을 수 있습니다. 

NI 플랫폼을 사용한 iDDS

오늘날 대부분의 iDDS 도구는 Linux 플랫폼에서 실행됩니다. NI는 NI Linux Real-Time에서 CompactRIO 및 PXI 디바이스와 함께 이를 성공적으로 테스트했습니다. 

NI의 테스트에서는 데이터 수집을 위해 NI-DAQmx 호출을 사용했습니다. 그 후 데이터는 iDDS 표준에 따라 묶여 iDDS 네트워크로 게시되었습니다.

그림 3: iDDS 구현

NI 엔지니어들은 이 아키텍처를 사용하여 다양한 공급업체의 수천 개 데이터 파라미터를 실행하는 iDDS 시스템과의 호환성을 입증했습니다.

NI 하드웨어에서의 iDDS 구현에 대한 더 자세한 정보는 NI 지원에 문의하십시오.

다음 단계

 

참조 문헌