在 Labview 中并行连续重采样

Continuous resampling in parallel in Labview

我需要对任意数量的复杂信号进行重新采样,对它们执行一些杂项操作,最后对它们求和并将它们保存到一个文件中。信号的长度迫使我将信号缓冲成块并对其进行操作。

大多数(我能找到的)重采样 VI 可以对块进行操作,使用重置标志来区分新数据和附加数据。我的问题是我想并行(或至少交织地)对我的信号执行重采样,这不起作用,因为重采样 VI 保持其先前的状态。解决此问题的方法是按顺序对每个信号重新采样,将其保存到临时文件中,然后使用新文件进行操作。这是一个糟糕的解决方案。

实际上,我需要的(我认为)是让重采样 VI 可以克隆,然后我可以为每个信号创建一个实例。我目前使用的VI是"Rational Resample" VI.

有什么想法吗?

Rational Resampling VI 是多态的,因此您可以 select "Multi-Channel instance" 直接处理多个通道。

此外,即使是单个Rational Resampling VI也被定义为"Preallocated clones reentrant execution"(LV2014,32位,windows)。因此,如果您将多个 Rational Resampling VI 放入多个不同的循环中,它们中的每一个都将保持自己的状态(独立于其他实例)。它们将在 LabVIEW 执行系统允许的情况下并行执行。资料来源:http://zone.ni.com/reference/en-XX/help/371361J-01/lvconcepts/reentrancy/