3. XG-X软件平台与工程环境
XG-X 系列控制器的检测逻辑并不是在相机里“跑”的,而是在 PC 端的 XG-X Vision Editor 中搭建、下载到控制器后运行的。理解这套软件平台的组织方式,是后续所有工程操作的前提:项目怎么存、相机怎么接、仿真和在线调试从哪里进,决定了你能否把一条检测逻辑从想法变成产线上稳定运行的程序。
一、Vision Editor 的定位与界面分区
XG-X Vision Editor 是 XG-X 控制器的工程组态与调试软件,运行在 Windows 环境下,通过以太网与控制器通信。它承担四件事:搭建检测流程(Flow)、配置相机与 I/O、仿真验证、在线监控与调参。界面大致分为四个功能区:
- 项目树(Project Tree):左侧,管理当前工程下的相机、流程、单元、图像与参数,是“工程结构”的可视化入口。
- 流程编辑区(Flow Editor):中部,以单元(Unit)为节点、以连线表示图像与数据流向,是检测逻辑的主战场。
- 属性/参数面板:右侧,显示当前选中单元或相机的详细参数,如阈值、区域、判定上下限。
- 图像显示与结果区:显示实时或仿真图像、测量值、OK/NG 判定与处理耗时。
需要强调的是:Vision Editor 里编辑的是“工程”,控制器里运行的是“下载后的工程”。两者不是同一份数据,编辑区的改动必须通过下载才生效,这一点在调试阶段最容易出错。
二、项目结构:从工程到单元的四层关系
XG-X 的工程结构可以概括为四层:工程(Project)→ 相机(Camera)→ 流程(Flow)→ 单元(Unit)。一个工程可挂多台相机,每台相机拥有独立的流程,流程由若干单元按顺序或分支连接而成。单元是功能的最小执行体,例如“位置修正”“边缘检测”“面积测量”“字符识别”“判定输出”。
这种层级关系带来两个实际约束:其一,相机参数(曝光、增益、触发方式)属于相机层,切换相机时流程不会自动跟随;其二,单元之间的数据靠“连接线”传递,上游单元输出的坐标、测量值可作为下游单元的输入区域或判定依据。若连线断开,下游单元会因缺少输入而报错或使用默认值,这是流程无法运行的常见原因。
三、相机连接:从物理链路到软件识别
XG-X 控制器与相机的连接方式取决于机型:一体式机型相机内置,分体式机型通过专用相机接口连接。PC 与控制器之间则通过以太网连接,Vision Editor 需要知道控制器的 IP 才能建立通信。典型配置如下:
PC 端 IP: 192.168.0.100 / 255.255.255.0
XG-X 控制器 IP:192.168.0.10 / 255.255.255.0
通信端口: 由软件自动协商(以太网)
连接方式: 直连或经交换机
连接顺序建议为:先给控制器上电,确认相机指示灯正常;再设置 PC 与控制器同网段 IP;然后在 Vision Editor 中执行“控制器搜索/连接”,软件会列出网段内可识别的控制器。若搜索不到,优先排查三点:PC 与控制器是否同网段、防火墙是否拦截、网线是否插在控制器的通信口而非相机口。
连接成功后,项目树中会出现该控制器下的相机节点。此时相机的曝光、增益、触发模式等参数才可读写。需要注意的是,相机连接成功不等于流程可运行——流程还需要正确的触发设置和单元连线。
四、仿真与在线调试入口
Vision Editor 提供两种运行模式,入口通常在工具栏或运行菜单中:
- 仿真模式(Simulation):不依赖实际产线触发,使用已保存的图像或连续采集的图像在 PC 端执行流程,用于验证逻辑、调阈值、看判定结果。适合流程搭建初期和参数摸索阶段。
- 在线模式(Online / Run):工程下载到控制器后,由控制器按实际触发信号执行,PC 端仅作监控与调参。此时看到的图像、测量值和耗时才是产线真实表现。
调试的常规路径是:先在仿真模式下把流程跑通、把阈值调到合理区间,再下载到控制器切换到在线模式,用实际工件验证判定稳定性。若在线模式下结果与仿真差异明显,通常要检查触发时序、光照变化或相机参数是否被在线覆盖。
五、一个可复用的工程环境检查清单
在开始任何检测逻辑搭建前,建议按下面这份清单确认工程环境,能显著减少后续“流程没错但跑不起来”的问题:
| 检查项 | 确认内容 | 判断依据 |
|---|---|---|
| 通信 | PC 与控制器同网段、可搜索到控制器 | 项目树出现控制器与相机节点 |
| 相机 | 相机已识别、曝光/增益可读写 | 图像显示区有实时画面 |
| 工程结构 | 相机下已建立流程,单元连线完整 | 无断线、无缺失输入报错 |
| 触发 | 触发源与产线信号一致(内部/外部) | 仿真可手动触发,在线随产线触发 |
| 运行模式 | 确认当前处于仿真还是在线 | 界面模式标识与预期一致 |
| 下载状态 | 编辑区改动已下载到控制器 | 在线结果与编辑区逻辑一致 |
把这份清单固化为开机后的例行检查,可以让“软件平台与工程环境”这一层不再成为调试时的干扰项,把精力集中在检测逻辑本身。