2019-07-17 12:23发布
查看全部评分
老蜗牛 发表于 2018-4-26 15:43 大概这么个意思,参考
王子豪123 发表于 2018-5-7 10:10 谢谢各位的帮助,已经找到了解决的办法,使用定时循环结构执行多个帧,在输入节点设置总周期,在右数据节点设置不同周期及开始时间,至于两个定时循环同步开始,可使用同步定时结构开始VI,即可解决上述问题,且不存在误差。 ...
最多设置5个标签!
评分
查看全部评分
谢谢你,你的程序框图是完全符合我描述的功能的,但是即使做到了第一个循环同步,下一次循环时并没有完全按照我在循环里设置的等待时间执行(我只在循环里设置了写入串口函数),根据实验现象表明,存在不确定性延迟(延迟在毫秒级,1-5毫秒,影响实验结果,我希望延迟能控制在微秒级),我猜想可能因为等待时间设置不同导致系统自动设置多循环的优先级而造成延时,于是我设置相同等待时间,结果还是一样,存在毫秒级的时延。查过相关资料,说labview是数据流类型,系统将CPU时间片分给每一个线程,但是在相同时间片里只能执行一个线程。使用集合点同步多循环,在相同周期的情况下可以做到完全的同步,但是在不同周期时会等待最长周期才开始。所以想请问有什么其它方法可以使两个循环同步执行(不同周期),或者误差在微秒级,即CPU可以同时处理两个循环的任务。再次感谢能够耐心解答我的问题。
补充:大家可能会考虑CPU只能利用时间片处理单线程问题,在定时循环的输入节点里有可选择的处理器,一般电脑CPU都是4核的,所以可以指定不同的核进行处理,实现完全的同步。
一周热门 更多>