- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
LabVIEW的循环结构数据通道与自动索引
以图1中左侧的数据通道的添加为例,在程序框图界面中,单击工具选板上的“进行连线”工具后,连接显示控件和乘法(“x”)函数控件的输入端口后,系统自动生成数据通道。
图1 For循环结构数据通道
图2 While循环结构数据通道
在执行循环程序过程中,循环结构内的数据是独立的,即输入循环结构中的数据是在进入循环结构之前完成的,进入循环结构以后不再输入数据;而循环结构输出数据是在循环执行完毕以后进行的,循环执行过程中不输出数据。
例如执行图1所示程序,输入控件“数值”在循环结构中保持不变,输出数据为循环结构结束时的i(值为9)乘以输入控件“数值”。当“数值”输入为1时,输出结果“数值2”为9;当“数值”输入为2时,输出结果“数值2”为18,如图3所示。
图3 前面板结果
当循环结构外部和数组相连接时,在数据通道可以选择自动索引的功能。自动索引自动计算数组的长度,并根据数组最外围的长度确定循环次数。在数据通道上单击鼠标右键,选择快捷菜单中的“启用萦引”,即可启用自动索引功能,如图4所示。
图1的程序中,循环结构中每次循环都产生一个相乘的结果,如果保留每次循环相乘的结果,并将所有结果组成数组输出,则需要启动自动索引功能。
启动自动索引后,For循环结构的输出数据通道发生变化,如图5所示,变为两侧分别连接不同维数的数据。此时,前面板的界面形式结果如图6所示。
图4 启动自动索引功能
图5 自动索引结果
利用循环结构的自动索引功能可以间接设置循环次数。
例如图7所示程序中,不设置循环次数N,启动自动索引功能后程序会根据输入数组的长度来确定循环次数。输入长度为5的数组[12345],循环执行的总次数为数组长度5,结果如图8所示;输入长度为7的数组[1234567],则循环执行的总次数为数组长度7,结果如图9所示。 [p]
图6 前面板结果
图7 间接设置循环次数程序框图
图8 长度为5的数组结果
图9 长度为7的数组结果