Home
Support
'Wait (ms)' 和 'Wait Until Next ms Multiple' 的区别
"Wait (ms)" 和 "Wait Until Next ms Multiple" 的区别
主要软件: LabVIEW Development Systems>>Base Package
主要软件版本: 7.1
主要软件修正版本: N/A
次要软件: N/A
问题: 在LabVIEW中,"Wait (ms)" 和 "Wait Until Next ms Multiple" 两个vi有什么区别?
解答:
Wait (ms) 函数等待的是您指定的时间量。而对
Wait Until Next ms Multiple 函数而言,LabVIEW通过一个毫秒计数器来监测等待的时间量,等待会一直持续,直到您所指定的整数倍毫秒时间量。
可以考虑这样一种情况,以方便您来理解这两个函数的区别。假设您需要某个特殊任务每小时执行一次,您有两种方法供选择:
1.获取当前时间,并决定在60分钟后执行任务。
2.您可以决定在每小时的开始执行任务(12:00, 1:00, 等等)。
例如,如果完成该任务需要5分钟,而您使用第一种方法,在12:00开始这个任务,并在12:05结束。那么您接下来需要等待60分钟直到1:05,才开始再次执行并于1:10完成。然后您又需要再等60分钟,以此类推。随着时间的推移,您每次开始任务的时间也将随之变化,从小时的开始,慢慢变化到结束,并再次循环。这就是在LabVIEW中关于"wait" 函数的类推。
另一方面,如果您使用第二种方法,它不会关心任务是花5分钟还是15分钟来完成,任务开始的时间总是在每个小时的开始。需要注意的是,取决于您开始的时间,第一次的等待时间也许会相当短,这是因为系统时钟在您开始等待前已经开始计时了。所以,如果您于12:50开始您的第一个任务,那么很快,您将在1:00开始您的下一个任务。这就是在LabVIEW中关于"wait until next ms multiple"函数的类推。
注意: 作为LabVIEW 7的新特性,
Time Delay 这个快速VI提供了一种定时执行的方式。该VI的功能和
Wait (ms)类似,唯一的例外是它的输入是以秒为单位,而不是毫秒。
相关链接: LabVIEW SupportDeveloper Zone Tutorial: Software Timed Loops using Wait (ms) and Wait Until Next ms MultipleKnowledgeBase 2G27ANEW - "Wait Until Next ms Multiple" Function Does Not Wait Properly on First Loop Iteration
附件:
报告日期: 11/15/2006
最近更新: 02/02/2008
文档编号: 0EF854SG
Other Support Options
Ask the NI Community
Collaborate with other users in our discussion forums
Request Support from an Engineer
A valid service agreement may be required, and support options vary by country.