CogToolBlock 工具超详细解释
CogToolBlock1 是康耐视 VisionPro 视觉软件中的工具容器与流程编排工具—— 它本身不直接执行图像处理 / 分析任务,而是作为 “工具整合容器”,用于编排多个功能工具(如 CogAcquireImage、CogBlobTool、CogIDTool 等)的执行顺序、管理工具间的数据流转,最终实现复杂的工业视觉检测流程。
一、基本定位
CogToolBlock1 是 VisionPro 中 “流程级工具”,核心属性是 “容器” 而非 “处理工具”:
- 它是多个功能工具(如采集、预处理、检测、判定工具)的 “集合载体”;
- 它的核心价值是将分散的工具串联为端到端的视觉检测流程(如 “图像采集→预处理→缺陷检测→结果判定”);
- 它是 VisionPro 实现 “复杂检测任务、模块化复用、团队协作开发” 的核心组件。
二、核心作用
CogToolBlock1 的核心作用是 “整合、编排、管理”:
- 整合多工具形成流程:将 “图像采集、预处理、检测、识别、判定” 等分散的功能工具,整合为一个统一的检测流程;
- 管理工具间数据流转:自动实现工具间的数据传递(如将 “采集工具的输出图像” 传递给 “预处理工具的输入”);
- 统一配置与参数共享:支持将一个参数绑定到多个子工具(如将 “ROI 坐标” 共享给 BlobTool 和 PatInspectTool);
- 流程控制:支持条件分支(如 “缺陷面积> 50 则判定 NG”)、循环(如 “重复采集 3 次图像”)等逻辑;
- 模块化复用:将配置好的 ToolBlock 保存为文件,可在不同项目中直接复用,提升开发效率。
三、结构与工作原理
1. 结构组成
CogToolBlock1 的结构由 3 部分组成:
- 子工具列表:包含所有被整合的功能工具(如 CogAcquireImage、CogBlobTool);
- 工具连接图:通过连线定义子工具间的数据流转方向(如 “CogAcquireImage 的 OutputImage → CogIPOneImageTool 的 InputImage”);
- 输入 / 输出端口:工具块与外部的交互接口(如 “外部相机输入→ToolBlock 的 ImageInput 端口”“ToolBlock 的 DefectResult 端口→外部 PLC 输出”)。
2. 工作原理
CogToolBlock1 的运行遵循 “工具执行顺序 + 数据自动传递” 的逻辑:
- 运行前:用户在 ToolBlock 中定义子工具的执行顺序(如先运行采集工具,再运行预处理工具),并通过连线定义数据传递关系;
- 运行时:ToolBlock 按设定的顺序依次执行子工具,自动将前一个工具的输出数据传递给后一个工具的输入;
- 运行后:ToolBlock 汇总子工具的结果,通过 “输出端口” 向外传递最终结果(如缺陷数量、判定结果)。
四、界面核心功能
CogToolBlock1 的编辑界面分为 3 个核心区域:
-
子工具管理区(左侧):
- 显示已添加的所有子工具,支持 “添加 / 删除工具”“复制 / 粘贴工具”;
- 可展开单个工具,配置其参数(与单独运行该工具的参数界面一致)。
-
工具连接区(中间):
- 以 “节点 + 连线” 的形式展示工具间的关系,节点代表子工具,连线代表数据流转;
- 支持拖拽工具节点调整布局,拖拽端口创建 / 删除连线。
-
输入输出配置区(右侧):
- 输入端口:定义外部数据进入 ToolBlock 的接口(如 “ImageInput” 接收外部相机图像);
- 输出端口:定义 ToolBlock 向外传递结果的接口(如 “DefectCount” 输出缺陷数量);
- 支持将子工具的参数 / 结果映射到输入输出端口(如将 CogBlobTool 的 “Results.Count” 映射为 ToolBlock 的 “DefectCount” 输出)。
五、核心功能详解
1. 工具的添加与连接
- 添加工具:在 ToolBlock 编辑界面中,右键→“添加工具”,选择需要的功能工具(如 CogBlobTool);
- 连接工具:拖拽前一个工具的 “输出端口”(如 CogAcquireImage 的 “OutputImage”)到后一个工具的 “输入端口”(如 CogIPOneImageTool 的 “InputImage”),自动建立数据传递关系。
2. 执行顺序控制
ToolBlock 默认按 “工具添加顺序” 执行子工具,可手动调整:
- 在子工具列表中,选中工具后点击 “上移 / 下移” 按钮,调整工具的执行优先级;
- 支持 “条件执行”:右键工具→“执行条件”,设置如 “当 CogBlobTool 的 Results.Count>0 时,才运行 CogDecisionTool”。
3. 输入输出端口映射
- 外部输入映射:将外部数据(如相机触发信号、PLC 参数)映射到 ToolBlock 的输入端口,再传递给子工具(如将 “外部 ROI 坐标” 传递给 CogBlobTool 的 Region 参数);
- 内部结果映射:将子工具的结果(如 CogBlobTool 的缺陷面积)映射到 ToolBlock 的输出端口,向外传递最终结果。
4. 流程控制(高级功能)
CogToolBlock1 支持简单的流程逻辑:
- 条件分支:通过 “CogDecisionTool” 判断结果,分支执行不同的子工具(如 “缺陷面积 > 50→运行 NG 标记工具;否则→运行 OK 标记工具”);
- 循环执行:右键工具→“循环设置”,设置循环次数(如 “重复采集 3 次图像,直到采集到清晰图像”)。
六、实战案例:零件缺陷检测流程
以 “汽车零件表面缺陷检测” 为例,用 CogToolBlock1 搭建流程:
- 添加子工具:依次添加 CogAcquireImage(采集图像)、CogIPOneImageTool(预处理降噪)、CogBlobTool(缺陷检测)、CogDecisionTool(结果判定);
- 连接工具:
- CogAcquireImage.OutputImage → CogIPOneImageTool.InputImage;
- CogIPOneImageTool.OutputImage → CogBlobTool.InputImage;
- CogBlobTool.Results → CogDecisionTool.InputData;
- 配置参数:
- 在 CogBlobTool 中设置缺陷的面积阈值(50~500 像素);
- 在 CogDecisionTool 中设置判定规则(缺陷数量 > 0 则判定为 NG);
- 配置输出端口:将 CogDecisionTool 的 “DecisionResult” 映射为 ToolBlock 的 “FinalResult” 输出;
- 运行 ToolBlock:工具块按顺序执行子工具,最终输出 “OK/NG” 结果。
七、核心优势
- 模块化开发:将复杂流程拆分为多个子工具,便于分工开发(如一人负责采集,一人负责检测);
- 高复用性:配置好的 ToolBlock 可保存为 “.tb” 文件,在不同项目中直接导入复用;
- 简化调试:在 ToolBlock 中可单独运行某个子工具,查看中间结果,快速定位问题;
- 降低维护成本:流程变更时,只需调整 ToolBlock 内的工具连接或参数,无需重构整个项目。
总结
CogToolBlock1 是 VisionPro 中实现 “复杂视觉流程编排” 的核心工具—— 它不是单一的处理工具,而是 “工具的管理者与流程的组织者”,通过整合多工具、管理数据流转、控制执行逻辑,让分散的功能工具形成一个自动化的检测系统,是工业视觉项目从 “单一工具测试” 到 “完整流程落地” 的关键载体。
959

被折叠的 条评论
为什么被折叠?



