当前位置:代码狗 > 开发教程 > 工业视觉教程 > 正文

VisionPro通过已发送项获取运行结果

经过前面的教程我们已经可以正常获取我们项目中的visionPro运行结果,之所以没告诉大家这种简单方法,是为了让大家了解每个工具对象的属性和它的结构,因为在以后的实践中大家就会发现很多操作都需要知道工具的结构,灵活运用工具的各种属性可以帮助我们完成更加复杂的视觉项目。

我们先构建一个vpp项目,这里就不重复说明了,前面教程很清楚,不会的照着前面的教程自己做一个。

然后选择你需要通过已发送项获取的数据,比如我需要斑点工具找到了多少个斑点,那么我就右键斑点工具下面的斑点数量值,选择添加到已发送项。

VisionPro通过已发送项获取运行结果

VisionPro通过已发送项获取运行结果

然后我们可以在已发送项列表里看到刚刚添加的这个值路径,name可以自己编辑,如下图

VisionPro通过已发送项获取运行结果

VisionPro通过已发送项获取运行结果

VisionPro通过已发送项获取运行结果

VisionPro通过已发送项获取运行结果

然后我们在C#代码中这样获取结果

首先老规矩声明全局变量加载vpp文件:

要查看更多文章内容,请您先登录/注册

最终结果如下图,效果和我们以前的一样,只是这种方法更适合job多,并且都要执行的场景。

VisionPro通过已发送项获取运行结果

VisionPro通过已发送项获取运行结果

 

感觉很棒!可以赞赏支持我哟~

赞(9) 打赏

评论 11

  1. #6

    意思是那个工具可以把数据合并吗?可以把两个JOB里的结果合并到一块吗? 🙏🏻

    郑帅超1个月前 (06-04)回复
    • 只能合并一个job内的。为什么要合并两个job,你自己取出来不就好了。

      代码狗1个月前 (06-04)回复
  2. #5

    有个问题, 我现在的VPP方案是两个JOB, 每个JOB下各有两个已发送项, 按上文中的代码执行后, 每次只能读取其中一个JOB的一个发送项的值。 怎么把两个JOB的 四个发送项的值合并到一起???

    郑帅超1个月前 (06-04)回复
    • 取四次不就行了,非要一起可以在visionPro中使用CogResultsAnalysisTool工具,它可以对一些数据做简单运算,将数据给它,把它通过已发送项取出来即可。

      代码狗1个月前 (06-04)回复
  3. #4

    版主,你好VPP文件在哪?

    Rudy4个月前 (03-14)回复
    • …文件丢失了,自己做一个吧,前面有教程。

      代码狗4个月前 (03-14)回复
  4. #3

    狗哥,可以解释下ICogRecord首字母为I的接口?它的含义和用法

    TT6个月前 (01-15)回复
    • 以后再讲

      daimadog6个月前 (01-16)回复
  5. #2

    版主,请问下,为什么每次运行时Cognex.VisionPro.ICogRecord toprecord = myjobmanger.UserResult();//取得结果对象并赋值 这里时,toprecord都为null。还请您帮忙解答下。我现在需要运行一个编辑脚本的JOB,想从job当中获得image scoure; (因为是线扫相机需要很大的视野,因此这个job脚本里面有触发多次拍照拼接成一张图,而不用加载acqfifotool触发) 请您百忙之中解答下,有偿解答,万分感谢。

    6个月前 (01-10)回复
    • myjobmanger.UserResult();不是Cognex.VisionPro.ICogRecord类型。脚本中的PostAcquisitionRefInfo就是采集到图像将会调用的方法,通过CogCopyRegionTool工具复制多张图像区域进行拼接然后传入即可。

      daimadog6个月前 (01-10)回复
  6. #1

    版主这些代码的 声明引用 搞不懂怎么用

    8个月前 (11-24)回复
×

请作者吃根烤肠!

支付宝