VisionPro C#调用QuickBuild操作


在VisionPro中,常见的操作是:

将产品多种型号分别定义成多个QuickBuild。(PS: 产品A调用QuickBuild1,产品B调用QuickBuild2)

一个QuickBuild(JobManager)文件下可以包括若干个作业(Job),如果一个项目连接多个工业相机,那么可以将相机单独绑定到Job上。

Job中可以包含采像工具、ToolBlock、ToolGroup和各种算法工具。

结果输出,可以通过添加已发送项的方式,将单个Job执行结果输出。

这里主要实现模拟四个相机从分别读取OCR字符,然后将字符的个数打印到CogRecordDisplay的左上角。效果如下:

接下来,上代码:

实例化CogManager(作业管理器)、CogJob(作业)、CogJobIndependent(类似于TaskHelper的存在,欢迎纠错)对象。

1 private CogJobManager myJobManager; 2 private List<CogJob> myJobs = new List<CogJob>(); 3 private List<CogJobIndependent> myIndependentJobs = new List<CogJobIndependent>();

初始化对象,并订阅结果可用事件(UserResultAvailable)

1 myJobManager = CogSerializer.LoadObjectFrFile(Application.StartupPath + @"\QuickBuild\QuickBuild1.vpp") as CogJobManager; 2 //将作业管理器中的作业遍历到作业集合中 3 for (int i = 0; i < myJobManager.JobCount; i++) 4 8 myJobManager.UserQueueFlush(); //用户队列刷新 9 myJobManager.FailureQueueFlush(); //故障队列刷新 10 for (int i = 0; i < myJobManager.JobCount; i++) 11 15 this.Invoke(new Action(() => 16 )); 19 20 //订阅完成事件 21 myJobManager.Stopped += new CogJobManagerogJobManagerStoppedEventHandler((sender, e) => ); 22 //订阅结果可用事件 23 myJobManager.UserResultAvailable += new CogJobManagerogUserResultAvailableEventHandler(OnUserResultAvailable);

在OnUserResultAvailable事件的回调函数中,添加显示、获取结果代码

1 private void OnUserResultAvailable(object sender, CogJobManagerActionEventArgs e) 2 55 })); 56 }

执行CogManager作业管理器

1 private void btn_QuickBuildRun_Click(object sender, EventArgs e) 2

如何使用ToolGroup?

以上面的例子为例,可以在每个Job中都通过引入CogOCRMaxTool工具LineResultount引脚的方式获取字符总数。也可以通过在ToolGroup中添加脚本的方式获取。

在初始化函数 Initialize()中,添加输入输出引脚

1 public override void Initialize(CogToolGroup host) 2

定义输入输出变量,在GroupRun()方法中获取输入值,并判断字符个数后输出

1 public string input = ""; 2 public int output; 3 public override bool GroupRun(ref string message, ref CogToolResultConstants result) 4

连接输入、输出 (可以传递给其他工具,也可以直接添加到已发送项) 引脚

关于ToolGroup和ToolBlock的使用和区别,后面会更新详细的文档。



上一篇:Cognex InSight 西门子PLC关于Profinet通讯说明

下一篇:VisionPro IDTool


C# VisionPro
Copyright © 2002-2019 k262电脑网 www.k262.cn 皖ICP备2020016292号
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!QQ:251442993 热门搜索 网站地图