Labview:将控件保存在一定大小

问题描述 投票:2回答:1

我想记录VI上所有控件和指示器的值。我可以通过使用调用节点ctrl val.get all来执行此操作,然后使用datalog vis将名称/变体数据集群保存到磁盘。

但是,我现在想强加一个大小限制:我只想在大小低于阈值(例如100 kb)时保存数据,以避免生成大文件(例如,如果前面板包含图像)。我希望这个函数是通用的,所以我不能创建一个控件名列表来排除或按控件数据类型排序。

似乎有一种方法是将变量数据展平为字符串然后测量字符串的大小,但如果控件包含非常大量的数据(例如最终可能创建1 GB字符串),这似乎可能存在问题。 。

有没有更精致的方法来处理这个问题?

labview
1个回答
0
投票

您可能希望检查每种控件类型,然后有一种更有效的方法来检查该类型的大小。对于您检测到的任何已知控件类型,可以避免扁平化大字符串的问题。一旦你知道了类型,就可以检查数组,图像,波形等,特别是它们的大小,而不必平整数据。这将允许您保存小东西,忽略已知的大东西,并仍然将任何未知或未处理的类型展平为字符串以确定大小,然后它保持通用,可用于任何VI。 openG变体工具(以及其他工具)有许多类型检查件可用于控件,因此不应太难实现。

© www.soinside.com 2019 - 2024. All rights reserved.