通用工业机器视觉软件设计(WPF版)
通用工业机器视觉软件设计(WPF版)
通用工业视觉软件设计
一 主框架设计
1.1框架设计
- 通用工业视觉软件设计之解决方案
1.2启动程序
- 通用工业视觉软件设计之启动程序设计
1.3主界面
- 通用工业视觉软件设计之创建主窗口
- iconfont.tff的制作
- 通用工业视觉软件设计之主界面设计与iconfont.tff的使用
- 通用工业视觉软件设计之主窗口UI设计-标题栏
- WPF之RelayCommand命令设计
- 通用工业视觉软件设计之主窗口UI设计-标题栏的最大化、最小化、关闭功能
- 通用工业视觉软件设计之主窗口UI设计-导航栏
- WPF使用AvalonDock
- 通用工业视觉软件设计之主窗口UI设计-设计主控件
- 通用工业视觉软件设计之主窗口UI设计-页脚
- 通用工业视觉软件设计之新建、保存、另存为和读取解决方案(UI和ViewModel结构)
- WPF之实现NotifyBox(弹窗信息框)
- WPF之创建自定义标题栏
1.4解决方案
- 通用工业视觉软件设计之实现新建解决方案UI
- WPF之创建自定义按钮CustButton
- 通用工业视觉软件设计之实现新建解决方案UI-2
- 通用工业视觉软件设计之实现新建解决方案-ViewModel
- 通用工业视觉软件设计之系统处理解决方案类SysProcessSln-1
- 通用工业视觉软件设计之实现新建解决方案-ViewModel-2
- 通用工业视觉软件设计之系统帮助模块-跨项目传参更新UI
- WPF实现加载等待窗口
- 通用工业视觉软件设计之实现保存解决方案-1
- 通用工业视觉软件设计之实现保存解决方案-2
- 通用工业视觉软件设计之实现读取解决方案
- 通用工业视觉软件设计之实现另存解决方案
1.5 项目栏
- 通用工业视觉软件设计之项目栏UI设计-1
- 通用工业视觉软件设计之项目栏UI设计-2
- 通用工业视觉软件设计之项目栏-ProjectbarViewModel
- 通用工业视觉软件设计之项目栏-添加新项目流程-1
- 通用工业视觉软件设计之项目栏-添加新项目流程-2
- 通用工业视觉软件设计之项目栏-添加新项目流程-3
- 通用工业视觉软件设计之项目栏-添加新项目流程-4
- 通用工业视觉软件设计之项目栏-添加新项目流程-5
- 通用工业视觉软件设计之项目栏ViewModel之删除项目流程
1.6 功能栏设计
- 通用工业视觉软件设计之功能栏UI设计
1.7 模块插件
- 通用工业视觉软件设计之模块插件UI基类-PluginFrmBase
- 通用工业视觉软件设计之模块插件UI-ModuleButton
- 通用工业视觉软件设计之模块插件UI-ModuleFrmBase
- 通用工业视觉软件设计之模块单元抽象基类ModuleObjBase
1.8 变量模块
- 通用工业视觉软件设计之模块变量ModuleDataVar
- 通用工业视觉软件设计之Project完善
- 通用工业视觉软件设计之常变量ConstantVar
1.9 图像模块
- 通用工业视觉软件设计之图像处理插件模块-获取图像插件
- 通用工业视觉软件设计之Halcon显示控件
- 通用工业视觉软件设计之图像处理插件模块-UI设计
1.10 模块插件的加载
- 通用工业视觉软件设计之插件模块加载PluginService
1.11 功能栏
- 通用工业视觉软件设计之功能栏UI设计-2
- 通用工业视觉软件设计之功能栏UI设计-3
1.12 流程栏
- 通用工业视觉软件设计之流程栏UI设计-1
- 通用工业视觉软件设计之流程栏UI设计-2
1.13 功能栏
- 通用工业视觉软件设计之功能栏-拖动模块插件
1.14 项目栏
- 通用工业视觉软件设计之项目栏-赋值当前项目
1.15 流程栏
- 通用工业视觉软件设计之流程栏显示项目名称
- 通用工业视觉软件设计之功能栏拖拽插件到流程栏-流程栏接收模块
- 通用工业视觉软件设计之流程栏-TreeView样式
- 通用工业视觉软件设计之流程栏-TreeView-完善添加模块
- 通用工业视觉软件设计之流程栏-TreeView-左键选中模块
- 通用工业视觉软件设计之流程栏-TreeView-右键模块菜单栏
- 通用工业视觉软件设计之流程栏-TreeView-移动模块
- 通用工业视觉软件设计之流程栏-双击弹出插件模块
1.16 采集图像插件模块
- 通用工业视觉软件设计之插件模块-运行插件模块
- 通用工业视觉软件设计之插件模块-运行插件模块-显示耗时与第二次打开模块判定
1.17 显示图像模块
- 通用工业视觉软件设计之插件模块设计(显示图像模块)
- 通用工业视觉软件设计之插件模块设计(显示图像模块)-UI设计-1
- 通用工业视觉软件设计之插件模块设计(显示图像模块)-UI设计-UcLinkDataVar-2
- 通用工业视觉软件设计之插件模块设计(显示图像模块)-UI设计-ShowDataVarFrm
- 通用工业视觉软件设计之moduleObj产生流程的补充解说
- 通用工业视觉软件设计之-UcLinkDataVar和ShowDataVarFrm:获取图像变量
- 通用工业视觉软件设计之ShowDataVarFrm获取变量列表数据
- 通用工业视觉软件设计之插件模块设计(显示图像模块)-UI设计-2-显示窗体列表
- 通用工业视觉软件设计之插件模块设计(显示图像模块)-主界面构建图像显示栏
- 通用工业视觉软件设计之插件模块设计(显示图像模块)-UI-3
- 通用工业视觉软件设计之插件模块设计(显示图像模块)-LinkVarFrm
- 通用工业视觉软件设计之插件模块设计(显示图像模块)-功能实现
- 通用工业视觉软件设计之插件模块设计(显示图像模块)-功能实现-2
1.18 流程控制
- 通用工业视觉软件设计之流程运行一次
- 通用工业视觉软件设计之流程运行一次-2
- 通用工业视觉软件设计之流程运行一次-UI更新-3
- 通用工业视觉软件设计之流程运行一次-UI更新-4
- 通用工业视觉软件设计之流程循环运行
- 通用工业视觉软件设计之流程停止运行
1.19 流程栏
- 通用工业视觉软件设计之流程栏-删除模块插件
- 通用工业视觉软件设计之流程栏-禁用模块插件
- 通用工业视觉软件设计之流程栏-移动模块插件更改排序
1.20 窗口显示栏
- 通用工业视觉软件设计之窗口显示栏-窗口布局选择
- 通用工业视觉软件设计之窗口显示栏-更新显示
1.21 日志模块
- 通用工业视觉软件设计之日志模块-log4net的安装
- 通用工业视觉软件设计之日志模块-日志类
- 通用工业视觉软件设计之日志模块-日志栏
1.22 通讯配置
- 通用工业视觉软件设计之通讯设备配置UI
- 通用工业视觉软件设计之通讯设备配置-FrmCommunication
- 通用工业视觉软件设计之通讯设备配置-FrmCommunication-2
- 通用工业视觉软件设计之通讯模块-后端FrmCommunicationViewModel和类库-ModuleCommunication
- 通用工业视觉软件设计之通讯模块之TcpServer服务端
- 通用工业视觉软件设计之通讯模块-ECommunication
- 通用工业视觉软件设计之通讯模块-EComManager
- 通用工业视觉软件设计之通讯模块-添加TCP服务端
- 通用工业视觉软件设计之通讯模块-添加TCP服务端-2
- 通用工业视觉软件设计之通讯模块-添加TCP服务端-3-参数配置
- 通用工业视觉软件设计之通讯模块-启动TCP服务端和发送数据
- 通用工业视觉软件设计之通讯设备状态栏
- 通用工业视觉软件设计之委托触发UI更新
- 通用工业视觉软件设计之通讯模块-其他按钮:删除、关闭等功能完善
1.23 通讯工具-02_ECommunication-TCP接收插件模块
- 通用工业视觉软件设计之通讯插件模块-TCP接收
1.24 通讯工具-02_ECommunication-TCP发送插件模块
- 通讯工具-02_ECommunication-TCP发送插件模块
1.25 相机模块
- 通用工业视觉软件设计之相机模块-打开窗口命令
- 通用工业视觉软件设计之相机模块-UI设计
- 通用工业视觉软件设计之相机模块类库-ModuleCamera
- 通用工业视觉软件设计之相机配置后台设置
1.26 获取图像模块插件
- 通用工业视觉软件设计之插件模块(获取图像模块)的相机取图功能完善
1.27 全局变量
- 通用工业视觉软件设计之全局变量-UI
- 通用工业视觉软件设计之全局变量-后端
1.28 链接变量模块
- 通用工业视觉软件设计之链接变量模块-UcLinkDataVar-增加全局变量
1.29 导航栏运行
- 通用工业视觉软件设计之创建项目流程完善与切换项目
- 通用工业视觉软件设计之所有流程执行一次
- 通用工业视觉软件设计之所有流程循环执行
- 通用工业视觉软件设计之所有流程停止执行
1.30 解决方案
- 通用工业视觉软件设计之保存解决方案
- 通用工业视觉软件设计之加载解决方案
1.31 通信模块
- 通用工业视觉软件设计之通信模块之TCP客户端实现
- 通用工业视觉软件设计之通信模块之TCP客户端实现-2
二 插件模块系列设计
图像处理-01_ImageProcess
通用工业视觉软件设计之图像处理模块-采集图像-(高级模块有相机-否则是中级模块)
通用工业视觉软件设计之图像处理模块-显示图像(中级模块)
通用工业视觉软件设计之图像处理模块-预处理(中级模块,升级后是高级模块)
通用工业视觉软件设计之图像处理模块-保存图像(中级模块)
通用工业视觉软件设计之图像处理模块-畸变矫正(中级模块)
通用工业视觉软件设计之图像处理模块-图像拼接(中级模块)
保存图像
- 通用工业视觉软件设计之图像处理模块-保存图像-UI
- 通用工业视觉软件设计之图像处理模块-保存图像-实现
通讯工具-02_ECommunaCation
通用工业视觉软件设计之通讯插件模块-TCP接收(中级模块)
通用工业视觉软件设计之通讯插件模块-TCP发送(中级模块)
检测识别-03_ImageDetection
通用工业视觉软件设计之检测识别插件模块-Blob分析(超级级模块)
通用工业视觉软件设计之检测识别插件模块-模板匹配(超级级模块)
通用工业视觉软件设计之检测识别插件模块-二维码识别(高级模块)
通用工业视觉软件设计之检测识别插件模块-仿射变换(中级模块)
模板匹配
- 通用工业视觉软件设计之图像处理模块-模板匹配-UI
- 通用工业视觉软件设计之图像处理模块-模板匹配-基本参数
- 通用工业视觉软件设计之图像处理模块-模板匹配-参数设置
- 通用工业视觉软件设计之图像处理模块-模板匹配-执行
Halcon脚本
- 通用工业视觉软件设计之图像处理模块-Halcon脚本-UI
- 通用工业视觉软件设计之图像处理模块-Halcon脚本-后端-1-scintilla样式设置
- 通用工业视觉软件设计之图像处理模块-Halcon脚本-后端-2-导入脚本
- 通用工业视觉软件设计之Halcon脚本-后端-3-更新代码、更新输入输出
- 通用工业视觉软件设计之Halcon脚本-后端-4-编译、执行、保存、注释
- 通用工业视觉软件设计之Halcon脚本-后端-4-二次打开
- 通用工业视觉软件设计之Halcon脚本-基本使用
- 通用工业视觉软件设计之Halcon脚本-获取全局变量
几何工具-04_Measure
通用工业视觉软件设计之几何工具插件模块-直线查找(中级模块)
通用工业视觉软件设计之几何工具插件模块-圆查找
通用工业视觉软件设计之几何工具插件模块-拟合矩形
通用工业视觉软件设计之几何工具插件模块-线线距离(初级模块)
通用工业视觉软件设计之几何工具插件模块-点线距离(初级模块)
通用工业视觉软件设计之几何工具插件模块-点点距离(初级模块)
通用工业视觉软件设计之几何工具插件模块-线线交点(初级模块)
通用工业视觉软件设计之几何工具插件模块-生成点(初级模块)
通用工业视觉软件设计之几何工具插件模块-圆查找
- 通用工业视觉软件设计之几何工具插件模块-圆查找-UI
- 通用工业视觉软件设计之几何工具插件模块-圆查找-后端实现
通用工业视觉软件设计之几何工具插件模块-直线查找
- 通用工业视觉软件设计之几何工具插件模块-直线查找-UI
- 通用工业视觉软件设计之几何工具插件模块-直线查找-后端实现
通用工业视觉软件设计之几何工具插件模块-线线相交
- 通用工业视觉软件设计之几何工具插件模块-线线交点-UI
- 通用工业视觉软件设计之几何工具插件模块-线线交点-后端实现
通用工业视觉软件设计之几何工具插件模块-点线距离
- 通用工业视觉软件设计之几何工具插件模块-点线距离-UI
- 通用工业视觉软件设计之几何工具插件模块-点线距离-后端实现
通用工业视觉软件设计之几何工具插件模块-点点距离
- 通用工业视觉软件设计之几何工具插件模块-点点距离-UI
- 通用工业视觉软件设计之几何工具插件模块-点点距离-后端实现
通用工业视觉软件设计之几何工具插件模块-生成点(初级模块)
- 通用工业视觉软件设计之几何工具插件模块-生成点-UI
- 通用工业视觉软件设计之几何工具插件模块-生成点-后端实现
逻辑工具-05_Logic
通用工业视觉软件设计之逻辑工具插件模块-执行流程(高级模块)
通用工业视觉软件设计之逻辑工具插件模块-延时(初级模块)
通用工业视觉软件设计之逻辑工具插件模块-If判断(高级模块)
通用工业视觉软件设计之逻辑工具插件模块-For循环(高级模块)
通用工业视觉软件设计之逻辑工具插件模块-Switch判断(高级模块)
通用工业视觉软件设计之逻辑工具插件模块-If判断
- 通用工业视觉软件设计之逻辑工具插件模块-If判断-UI
- 通用工业视觉软件设计之逻辑工具插件模块-If判断-后端
- 通用工业视觉软件设计之逻辑工具插件模块-If判断-结束模块
- 通用工业视觉软件设计之逻辑工具插件模块-If判断-完善-TreeView-树形节点
- 通用工业视觉软件设计之逻辑工具插件模块-If判断-完善-TreeView-移动和删除如果模块
- 通用工业视觉软件设计之逻辑工具插件模块-If判断-后端-模块执行
通用工业视觉软件设计之逻辑工具插件模块-延时
- 通用工业视觉软件设计之逻辑工具插件模块-延时-UI
- 通用工业视觉软件设计之逻辑工具插件模块-延时-后端实现
变量工具-06_DataTool
通用工业视觉软件设计之变量工具插件模块-变量定义(中级模块)
通用工业视觉软件设计之变量工具插件模块-变量设置(中级模块)
通用工业视觉软件设计之变量工具插件模块-数组定义(中级模块)
通用工业视觉软件设计之变量工具插件模块-数组设置(中级模块)
通用工业视觉软件设计之变量工具插件模块-清除队列(中级模块)
通用工业视觉软件设计之变量工具插件模块-进队列(中级模块)
通用工业视觉软件设计之变量工具插件模块-出队列(中级模块)
脚本工具-07_Script
通用工业视觉软件设计之脚本工具插件模块-C#脚本(高级模块)
通用工业视觉软件设计之脚本工具插件模块-VB脚本(高级模块)
通用工业视觉软件设计之脚本工具插件模块-Python脚本(高级模块)
- 通用工业视觉软件设计之脚本工具插件模块-C#脚本-UI
- 通用工业视觉软件设计之C#脚本-后端-初始化更新UI(代码颜色-代码自动补全-函数参数提示)
- 通用工业视觉软件设计之C#脚本-后端-编译
- 通用工业视觉软件设计之C#脚本-后端-执行、保存、关闭
- 通用工业视觉软件设计之C#脚本-Halcon脚本执行后,添加引用找不到路径问题
- 通用工业视觉软件设计之C#脚本-编译与执行隐患问题(代码没有更新问题)
文本工具-08_TxtTool
通用工业视觉软件设计之文本工具插件模块-保存Csv
- 通用工业视觉软件设计之文本工具插件模块-保存Csv-UI
- 通用工业视觉软件设计之文本工具插件模块-保存Csv-后端
定位工具-09_LocationTool
插件模块-位置修正
- 通用工业视觉软件设计之插件模块-位置修正-UI
- 通用工业视觉软件设计之插件模块-位置修正-后端实现
标定工具-10_CalibrationTool
插件模块-平移九点标定
- 通用工业视觉软件设计之插件模块-平移九点标定-UI
- 通用工业视觉软件设计之插件模块-平移九点标定-后端实现
- 通用工业视觉软件设计之插件模块-平移九点标定-使用
插件模块-标定转换
- 通用工业视觉软件设计之插件模块-标定转换-UI
- 通用工业视觉软件设计之插件模块-标定转换-后端实现
插件模块-旋转中心标定
- 通用工业视觉软件设计之插件模块-旋转中心标定-UI
- 通用工业视觉软件设计之插件模块-旋转中心标定-后端实现
- 通用工业视觉软件设计之插件模块-旋转中心标定-使用
插件模块-相机标定
- 通用工业视觉软件设计之插件模块-相机标定-UI
- 通用工业视觉软件设计之插件模块-相机标定-后端实现
插件模块-畸变矫正
- 通用工业视觉软件设计之插件模块-畸变矫正-UI
- 通用工业视觉软件设计之插件模块-畸变矫正-后端实现
插件模块-世界坐标
- 通用工业视觉软件设计之插件模块-世界坐标-UI
- 通用工业视觉软件设计之插件模块-世界坐标-后端实现
三 流程案例
1. 定位引导
- 机械手对位贴合-Halcon原理版
- 旋转中心标定之旋转中心的使用原理公式
- 实战项目1:机械手对位贴合
- 实战项目2:AOI外观缺陷检测
- 实战项目3:尺寸测量
- 实战项目4:XYR对位平台引导对位
- 实战项目5:上下相机对位贴合
2. 测量
3. AOI缺陷检测
- 通用工业视觉软件设计之AOI缺陷检测Demo项目
四 界面化搭建
五 打包成安装包
- 通用工业视觉软件设计之打包成安装包
六 细节完善
- 通用工业视觉软件设计之解决方案保存相机问题
- 通用工业视觉软件设计之解决方案保存九点标定和旋转标定问题
- 通用工业视觉软件设计之九点标定和旋转标定模块的反序列化问题
- 通用工业视觉软件设计之拟合圆的反序列化问题
- 通用工业视觉软件设计之关闭软件保存解决方案
- 通用工业视觉软件设计之全局变量-保存与反序列化
- 通用工业视觉软件设计之直线查找的反序列化
- 通用视觉软件之显示插件-显示文本
- 通用工业视觉软件设计之Halcon脚本插件的反序列化优化
- 通用工业视觉软件设计之Halcon脚本插件的运行失败造成的显示问题
扩展
- 通用工业视觉软件设计之扩展:AutoEvent的使用
up
