首页 理论教育LabVIEW2015中同步开始与中止定时结构的执行

LabVIEW2015中同步开始与中止定时结构的执行

【摘要】:同步组将在程序执行完毕前始终保持活动状态。如果需要向一个同步组添加一个已属于另一同步组的定时结构,LabVIEW将把该定时结构从前一个组中移除,添加到新组。中止定时结构的执行,使用定时结构停止 VI 可通过程序中止定时结构的执行。将字符串常量或控件中的结构名称连接至定时结构停止 VI 的名称输入端,指定需要中止的定时结构的名称。例如,以下程序框图中,低定时循环含有定时结构停止 VI。

同步定时结构用于将程序框图中各定时结构的起始时间同步。例如,使两个定时结构根据相对于彼此的同一时间表来执行。例如,令定时结构甲首先执行并生成数据,定时结构乙在定时结构甲完成循环后处理生成的数据。令上述定时结构的开始时间同步,以确保二者具有相同的起始时间。

可创建同步组以指定程序框图中需要同步的结构。创建同步组的步骤如下:将名称连接至同步组名称输入端,再将定时结构名称数组连接至同步定时结构开始程序的定时结构名称输入端。同步组将在程序执行完毕前始终保持活动状态。

定时结构无法同时属于两个同步组。如果需要向一个同步组添加一个已属于另一同步组的定时结构,LabVIEW将把该定时结构从前一个组中移除,添加到新组。可将同步定时结构开始程序的替换输入端设为假,防止已属于某个同步组的定时结构被移动。如移动该定时结构,LabVIEW将报错。

中止定时结构的执行,使用定时结构停止 VI 可通过程序中止定时结构的执行。将字符串常量或控件中的结构名称连接至定时结构停止 VI 的名称输入端,指定需要中止的定时结构的名称。例如,以下程序框图中,低定时循环含有定时结构停止 VI。运行高定时循环并显示已完成循环的次数,如图5-81所示。若单击位于前面板的中止实时循环按钮,左侧数据节点的“唤醒原因”输出端将返回“循环已中止”,同时弹出对话框。单击对话框的确定后,VI将停止运行,如图5-82所示。

如图5-83所示,给出了定时循环数据端子应用的一个小例子。

由接入循环条件端子的判断逻辑可以知道,循环体执行4次。程序开始运行时定时源启动,经过1000 ms的偏移之后,第一次循环开始执行,执行完第4次后,周期变为4000 ms,但在循环结束前,周期为 3000 ms,所以循环体本身执行时间为(0 ms+1000 ms+ 2000 ms+3000 ms),即6 s,又因为偏移等待时间为1 s,所以整个代码执行时间为7 s。

978-7-111-53194-4-Chapter05-98.jpg(www.chuimin.cn)

图5-81 中止定时循环的程序框图

978-7-111-53194-4-Chapter05-99.jpg

图5-82 中止定时循环的前面板显示

978-7-111-53194-4-Chapter05-100.jpg

图5-83 定时循环数据端子的应用