控制和监测应用的基准测试详解

控制和监测应用的基准测试详解,第1张

最新NI CompactRIO软件设计控制器cRIO-9068配有Xilinx Zynq片上系统(SOC),它在同一机箱内集成了时钟频率为667 MHz的双核ARM Cortex-A9处理器以及具有85K逻辑单元和220个数字信号处理片的ArTIx-7 FPGA。两个处理器单元以ARM AXI-4技术为支撑,共享一千多个互联点。 NI LabVIEW Real-TIme使用的 *** 作系统是ARM Cortex-A9上的NI Linux Real-TIme OS。ARM Cortex-A9包含一个优化的网络协议栈、一个优化的进程调度器以及一个可自动压缩数据的高级文件系统。 这些技术与LabVIEW系统设计软件和NI-RIO驱动相结合,大大提高了系统的吞吐量,加快了数据记录应用程序的数据读写速率,并降低了闭环控制的延迟,从而使得cRIO-9068成为CompactRIO高性价比产品家族中性能最高的成员。 NI研发部编写了一系列控制和监测应用的基准测试代码,用于证明该产品在性能和吞吐量上的大幅提升。

1. 基准测试设置和测量

NI研发部选择了具有代表性的通用控制和监测应用以及这些应用中常见的主要任务进行基准测试。下表简要介绍了本次研究所进行的测试。

控制和监测应用的基准测试详解,表1. 在CompactRIO控制器上进行测试,测量应用程序的性能和吞吐量,第2张

表1. 在CompactRIO控制器上进行测试,测量应用程序的性能和吞吐量

2. 控制应用性能基准测试

cRIO-9068将多种技术相结合,极大提高了真实复杂应用的性能。如果要测试一个复杂的控制场景,可选择 CompactRIO的LabVIEW FPGA控制项目范例来开发三次样条生成算法。然后将应用程序扩展到8个执行低于两毫秒控制循环的并行通道进行算法计算。

控制和监测应用的基准测试详解,图1. CompactRIO的LabVIEW FPGA控制项目范例的架构框图,包含三次样条生成算法,第3张

图1. CompactRIO的LabVIEW FPGA控制项目范例的架构框图,包含三次样条生成算法

将该基准测试部署到CompactRIO高性价比产品家族的成员NI cRIO-9074和新的cRIO-9068上。cRIO-9074占用72%的可用处理器时间,而cRIO-9068仅占用了11%。

控制和监测应用的基准测试详解,图 2. 比较运行一个控制应用程序所需的处理器时间,该应用程序在2 ms内运行八个通道的样条插值,第4张

图 2. 比较运行一个控制应用程序所需的处理器时间,该应用程序在2 ms内运行八个通道的样条插值

3. 监测应用吞吐量基准测试

我们设计了一个基准测试来测量cRIO-9068系统从I/O通道至实时应用的数据传输能力,数据传输是监控应用中的常见任务。每个I/O通道的数据流由以100 kHz速率传输的16位采样数据组成。

现有的高性价比CompactRIO产品cRIO-9074占用了 46%的可用处理器时间来读写10个通道的I/ O数据流,而cRIO-9068只需7%。cRIO-9074以这个速率最多可读写25个I/O通道,而cRIO-9068则最多可达100个通道。

控制和监测应用的基准测试详解,图 3. 以100kHz每通道的速率读写10个通道的16位采样数据所需的时间对比,第5张

图 3. 以100kHz每通道的速率读写10个通道的16位采样数据所需的时间对比

cRIO-9068控制器令人赞叹的数据读写性能大部分归功于在FPGA和ARM处理器之间进行I/ O数据传输的高级AXI-4总线技术。如果单独进行基准测试,该总线的数据传输速率可达300 MB/s,比PCI总线技术要快得多。PCI总线技术的最大理论带宽大约为133.33 MB/s,应用于之前版本的CompactRIO控制器。

cRIO-9068提高的带宽使得开发人员能够同时运行多达16个的独立DMA通道。与之前的CompactRIO控制器相比增加了超过3倍。

4. 控制和监测应用性能的基准测试

cRIO-9068的最佳性能基准测试也许应该是在结合了所有常见监测和控制任务的复杂真实应用上进行测试,包括多速率控制的多个处理循环、数据处理、从I/O通道读取数据并记录到磁盘、通过网络与HMI通信以及执行非时间关键型健康和状态监测任务。

该复杂应用通过常见的LabVIEW架构组件(如实时FIFO、定时循环和网络流等)在各种应用程序组件之间进行协调和沟通。

控制和监测应用的基准测试详解,图 4. 该架构框图显示的是一个复杂的控制和监测应用,第6张

图 4. 该架构框图显示的是一个复杂的控制和监测应用

如果在该应用上进行测试,cRIO-9074在占用97%处理器的情况下可达到最大控制回路频率500 Hz,而cRIO-9068只需占用18%的可用处理器时间即可达到500 Hz循环频率。这样可以为复杂的控制和监测应用留出大量的处理器时间来处理其他应用任务或将循环率提高到超过2 kHz。

控制和监测应用的基准测试详解,图 5. 比较以不同控制循环率运行包含多个常见监控任务的复杂应用所需的处理器时间。,第7张

图 5. 比较以不同控制循环率运行包含多个常见监控任务的复杂应用所需的处理器时间。

5. 提升cRIO-9068性能

显然,如果将cRIO-9068用于真实应用和任务,在许多对于监控应用来说十分重要的指标上,cRIO-9068均证明比其他高性价比CompactRIO控制器具有更高的性能。这些改进归功于其独特的硬件架构以NI Linux Real-TIme OS的使用。

由于cRIO-9068在设计上与cRIO-9074等其他高性价比CompactRIO系统大相径庭,因此性能的提升很大程度上取决于应用的设计方法和控制器正在使用的特性,认识这一点是非常重要的。

但是通过这些基准测试可以证明,cRIO-9068的性能比同一系列的控制器(如cRIO-9074)大约提高了4倍。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2645404.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-12
下一篇 2022-08-12

发表评论

登录后才能评论

评论列表(0条)

保存