labview 如何实现两个循环同时运行?

2024-11-17 23:35:38
推荐回答(5个)
回答(1):

结合“事件结构”和“属性节点”就可以完成,如下:

前面板

注意,这里数组2属性节点的创建方法如下:

必须要是“值(信号)”,单单创建“值”属性是不行的。因为labview不会捕捉由程序产生的“值改变”事件。“值(信号)”属性节点是只读的,对它的写操作和在前面板手动修改的结果是一样的。值得注意的是,只要是对其进行了写操作,那么就会触发值改变事件。

    上面这个例子中,左边的循环中不断的给“数值2”赋值,会触发右边的事件结构。每当数值2的值改变时,就会将新值赋给数值3.注意,就算每次给数值2赋一个相同的常量,也会触发事件结构。

    labview中除非使用了顺序结构,否则程序本来默认就是并行运行的。

回答(2):

1、打开labview软件。

2、点击菜单栏上的窗口,下拉中选择显示程序面板,或者直接按ctrl+e键,直接打开程序面板。

3、在函数编程中选择for循环,拖动到程序中如下图。

4、前面板中,新式数值中选中数值输入控件和数值输出控件,拖动到面板中。

5、在编程中选择比较中选中=号,拖动到面板中,在编程数值中选中+1和乘号。

6、选中for,右击,在下拉中选择添加移位寄存器。

7、在前面板中就可以运行了。

注意事项:

 LabVIEW开发环境集成了工程师和科学家快速构建各种应用所需的所有工具,旨在帮助工程师和科学家解决问题、提高生产力和不断创新。

回答(3):

1.若两个循环在一个数据流上,在循环2中使用移位寄存器即可。a作为移位寄存器的初始值。然后用分支结构判断就行了。
2.若两个循环嵌套使用,则需双重移位寄存器。
3.最后,labview是数据流驱动的,不同数据流是并行计算的。

回答(4):

用队列或者消息就可以,详见NI范例。用移位寄存器来比较前后的数据变化。

回答(5):

labview高级社区,的那个公众号讲