仪表数据分布服务(iDDS)是一种为数据采集和控制仪器设计的数据抽象协议。iDDS将测试设备、测试控制系统和测量系统的所有元素连接在一起。
系统工程师使用iDDS来创建独立于供应商的模块化测试系统。iDDS可通过“源时间戳”提供高总吞吐量,允许在网络系统中进行数据对齐,而无需考虑传输延迟。因此,它非常适合用于高性能测试系统,如航空发动机测试单元中使用的系统。
iDDS由劳斯莱斯(Rolls Royce)推出,并与MDS Aero合作开发,得到了iDDS工作组的支持,该工作组囊括了十多家航空航天和测量公司。
数据分发服务(DDS)是iDDS模型的主干。DDS是一种对象管理组(OMG)标准,它定义了用于网络通信的系统、应用程序编程接口和有线协议。DDS专为满足实时和嵌入式系统的性能和服务质量要求而设计。它已应用到多个行业的物联网(IoT)、时间要求严格的应用程序和任务关键型架构中。iDDS源时间戳可降低因非理想网络设计而导致延迟的负面影响,这是因为数据可以在处理时进行时间对齐。
图1:iDDS架构
DDS网络由中间件服务进行管理。RTI、Twin Oaks或OpenDDS可提供中间件软件。中间件会在DDS网络上预先分配资源,从而充分减少动态资源分配,同时减少生成多个数据副本的需要。
iDDS针对特定仪表将数据定义添加到DDS中,数据定义包含以下内容:
iDDS网络由节点组成。发布者是网络上为网络生成数据的节点。订阅者使用这些数据。节点可以通过网络连接到网络上的其他任意节点,并且任意节点可以订阅任意参数。
DDS域映射到多播地址。网络隔离可以通过标准的网络基础结构进行管理。这使得该系统可从简单的实验室实验扩展到大型测试单元等各类设施。测试表明,同一个网络上可以发布超过1万个参数。
图2:多域架构
在本例中,实时网络没有物理分区,因此任意节点都可以连接到任意路由器。系统网络上的任何网络问题都将与实时网络隔离开。域可以通过数据类型进行关联,例如,低速、高速和控制。
配置服务器负责管理整个网络。它发布节点所需的主干专用配置数据。配置服务器向节点发送配置文件,节点保存配置文件,以便维护配置。
iDDS专为21世纪初的单片单个供应商系统而开发。这些系统虽然更大限度地降低了供应商之间的互操作性风险,但客户却意识到,随着时间的推移,这些系统变得难以修改或维护,尤其是在硬件过时的情况下。
iDDS采用以数据为中心的模型,将数据放在首位。它将数据从各类特定仪器功能中提取出来,从而能够实现多供应商互操作。这简化了硬件设备的交换,可确保系统不依赖于单个供应商或设备。
iDDS架构为测量系统提供了以下优势:
总之,这些优势使测试系统设计师能够灵活地管理系统,充分提高每次测量的性能,增加系统的使用寿命,降低系统的总体成本,并更大限度地降低系统过时的长期风险。
现在大多数iDDS工具都基于Linux平台运行。NI已经成功地在基于NI Linux Real-Time操作系统的CompactRIO和PXI设备上测试了这些功能。
在NI的测试中,我们通过调用NI-DAQmx来采集数据。然后根据iDDS标准将数据打包并发布到iDDS网络。
图3:iDDS实现
基于这一架构,NI工程师演示了与运行来自不同供应商的数千个数据参数的iDDS系统的兼容性。
如需了解在NI硬件上实现iDDS的更多信息,请联系NI支持。
参考文献
外部资源:“Test Execution and Data System”– Standardisation, Flexibility & Scalability of a Real Time Data Acquisition System, Neill Forrest (Rolls Royce)