数据采集过程中要可以随时停止功能的实现

2019-07-17 15:06发布

在写程序时由于采集过程时间可能会很长,可能会有10分钟甚至更长时间。老板就要求可以随时终止数据采集。我是通过在采集子vi里面通过读取停止按钮的属性节点来判断停止按钮按下。总感觉这种方式不太好,不知道大家有没有更好的方法,下面是用daq写的一个小的采集数据例子。主界面
QQ截图20171029015024.png
初始化时把停止按钮的引用保存到数据里面
QQ截图20171029015207.png
采集数据分支写成子vi形式这里依据停止按钮是否按下决定下一个状态
QQ截图20171029015515.png
采集子vi,图中画红框的是等待任务完成和通过属性节点检测用户是否按下停止。我总感觉这种读属性节点方法不太好,如果使用停止事件的话,问题是现在正在采集无法执行事件。
QQ截图20171029015817.png



希望可以有好的方案最好能上传例子!

结尾附上程序
数据采集.rar (80.73 KB, 下载次数: 27)


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
wyq95361977
1楼-- · 2019-07-17 16:02
http://bbs.elecfans.com/forum.ph ... =1403377&extra=
这里面有所有使用到的软件架构简介你看看需要哪一种 最佳答案
宁静致远。。
2楼-- · 2019-07-17 18:42
如果想用停止事件也可以,采集数据那个程序做成异步调用的方式,就相当于在另一个线程中执行采集数据部分的程序,主程序就可以随时停止,不过在采集数据的程序中加上一个局部变量来响应停止按钮是否按下,停止按钮按下了就用这个全局变量来停掉采集数据那个线程。提供一下思路,也不知道你看这个方式麻不麻烦
城北徐公子
3楼-- · 2019-07-17 23:45
我觉得用停止while循环的方法更方便
鹰的向往只许
4楼-- · 2019-07-17 23:48
我觉得用队列状态机更合理,你可以试试

一周热门 更多>