4. SICK视觉软件平台入门

SICK 机器人视觉引导系统的落地,第一步不是写算法,而是把软件平台、设备连接和参数基线搭对。SICK 的软件生态里,最常接触的三类工具是 SOPAS ET、Vision Suite 和 AppSpace。它们不是互相替代的关系,而是分别覆盖“设备级调试”“视觉任务开发”“应用级集成”三个层次。理解它们的定位,才能知道在项目里什么时候用哪个工具、参数应该配在哪一层。

三个平台的定位与分工

SOPAS ET(SOPAS Engineering Tool)是 SICK 设备的通用工程工具,主要面向传感器、激光雷达、视觉相机等单台设备的连接、参数读写、固件升级和诊断。它通过 Ethernet、USB 或串口与设备通信,能直接看到设备的参数树、I/O 状态和事件日志。对于视觉引导项目,SOPAS 通常用于相机上电后的初始配置:设置 IP、触发模式、曝光时间、ROI、标定参数等底层项。

Vision Suite是面向 2D/3D 视觉任务的开发环境,典型代表是 Inspector 系列和 Visionary-T 等 3D 相机的配置软件。它提供图形化的作业(Job)编辑、工具链(Tool Chain)搭建、结果输出配置,适合做定位、测量、OCR、缺陷检测等视觉任务。在机器人引导场景中,Vision Suite 负责把“看到什么、算出什么位姿”这件事定义清楚。

AppSpace是 SICK 面向应用集成的软件框架,支持在设备端或边缘端运行自定义应用逻辑,提供 REST API、MQTT、TCP/IP 等接口,便于与机器人控制器、PLC 或上位系统对接。它更接近“把视觉结果变成机器人能用的指令”这一层。

SICK 视觉引导软件平台分层与数据流 设备层 视觉任务层 应用集成层 执行层 SOPAS ET 设备连接 · IP/触发/曝光 · 固件升级 参数树读写 · I/O 诊断 · 事件日志 Vision Suite Job 编辑 · 工具链搭建 · 标定 2D/3D 定位 · 测量 · 结果输出 AppSpace REST API · MQTT · TCP/IP 应用逻辑 · 结果转发 · 状态管理 机器人控制器 / PLC 位姿接收 · 坐标变换 · 运动执行 抓取/放置 · 节拍控制 SICK 3D/2D 相机 Visionary-T / Inspector / PLOC2D Ethernet / USB / 串口 参数配置 Job 下发 图像/点云 结果数据 位姿/指令 状态反馈 关键参数基线 IP: 192.168.1.100 / 24 触发: 外部上升沿 / 曝光: 8ms 标定: 手眼标定 / 单位: mm

项目创建:从空工程到可运行配置

在 SOPAS ET 中新建项目时,首先选择“新建项目”,然后通过“添加设备”搜索网络中的 SICK 设备。如果设备与 PC 不在同一网段,需要先用 SOPAS 的“设备搜索”功能或临时修改 PC 的 IP 来建立连接。连接成功后,SOPAS 会读取设备的完整参数树,此时不要急于修改,先执行一次“上传参数”备份原始配置,这是后续排障的基准。

Vision Suite 的项目创建则围绕“作业”展开。以 Inspector 系列为例,新建作业后需要依次配置:图像采集(触发源、曝光、增益)、工具链(定位工具、测量工具、逻辑工具)、结果输出(数字 I/O、TCP/IP、PROFINET)。每个工具都有独立的参数面板,例如定位工具需要设置模板区域、搜索区域、匹配阈值和角度范围。建议先离线用示例图像调通工具链,再下载到设备在线验证。

AppSpace 的项目创建更接近软件工程:新建应用、选择运行时环境、定义输入输出接口。AppSpace 支持在设备端直接运行 JavaScript 或通过容器化方式部署,项目里需要明确数据来源(来自 Vision Suite 的结果)、处理逻辑(坐标变换、单位换算、异常过滤)和输出目标(机器人控制器的寄存器或 Socket 地址)。

设备连接:网络、触发与通信链路

设备连接是三个平台共同的底层依赖。以一台 Visionary-T 3D 相机与机器人控制器组网为例,典型连接步骤如下:

  1. 物理连接:相机通过 M12 以太网线接入工业交换机,机器人控制器和上位 PC 接入同一交换机,确保三层网络互通。
  2. IP 规划:相机默认 IP 常为 192.168.1.100,PC 设为 192.168.1.10,机器人控制器设为 192.168.1.20,子网掩码统一 255.255.255.0。若现场已有网段,需按现场规划调整,避免冲突。
  3. SOPAS 连接验证:在 SOPAS 中搜索到设备后,查看“设备信息”确认固件版本和序列号,再进入“网络设置”确认 IP 与规划一致。
  4. 触发配置:机器人到达拍照位后输出一个上升沿信号给相机触发输入。在 SOPAS 的 I/O 配置中,将触发输入映射为“开始采集”,并设置触发延时和超时时间。示例:触发延时 0ms,超时 500ms。
  5. Vision Suite 在线验证:在 Vision Suite 中连接相机,切换到“在线”模式,手动触发一次采集,观察图像质量和工具链输出。若图像过暗,回到 SOPAS 调整曝光时间;若定位不稳定,回到 Vision Suite 调整匹配阈值。
提示:设备连接阶段最常见的故障是“能 ping 通但 SOPAS 搜不到”。这通常是因为防火墙拦截了 SICK 的发现协议(UDP 广播),或 PC 存在多网卡导致路由选择错误。可临时关闭防火墙或禁用无关网卡后重试。

参数配置:分层配置与一致性检查

参数配置要遵循“底层稳定、上层灵活”的原则。底层参数(IP、触发、曝光、标定)一旦确定,应尽量固化,避免频繁改动;上层参数(匹配阈值、搜索范围、输出格式)可以根据产品换型灵活调整。

一个容易被忽视的问题是坐标系一致性。SOPAS 中设置的相机安装角度、Vision Suite 中手眼标定得到的变换矩阵、AppSpace 中输出的位姿单位,三者必须统一。建议在项目初期就明确:所有长度单位用毫米,角度单位用度,旋转顺序用 ZYX(先绕 Z 轴,再绕 Y 轴,最后绕 X 轴),坐标系原点定义在机器人法兰中心或工件坐标系原点。这个约定要写进项目配置文档,并在三个平台中逐一核对。

参数配置完成后,建议做一次“端到端验证”:用标准球或标定板放在已知位置,触发一次完整流程,检查 AppSpace 输出的位姿与理论值的偏差。示例判断依据:若 X/Y 偏差小于 0.5mm、Z 偏差小于 1.0mm、角度偏差小于 0.5°,可认为配置基线可用;若偏差超限,按“标定→触发→曝光→工具链”的顺序逐层排查。

配置检查清单(示例)

检查项 所在平台 示例值/状态 判断依据
相机 IP 与网段 SOPAS ET 192.168.1.100 / 24 与 PC、机器人同网段且无冲突
触发模式 SOPAS ET 外部上升沿,延时 0ms 手动触发能正常采集
曝光时间 SOPAS ET 8ms(示例) 图像亮度适中,无过曝/欠曝
手眼标定矩阵 Vision Suite 已加载,残差 < 0.3mm 标定板验证偏差在允许范围
工具链匹配阈值 Vision Suite 0.75(示例) 连续 10 次触发定位稳定
输出接口 AppSpace TCP/IP,端口 3000 机器人能收到完整位姿数据
单位与旋转顺序 三平台一致 mm / 度 / ZYX 端到端验证偏差达标

完成以上配置后,SICK 视觉引导系统的软件基线就建立起来了。后续的标定优化、节拍调优和异常处理,都基于这个基线展开。建议把 SOPAS 的参数备份文件、Vision Suite 的作业文件、AppSpace 的应用包统一归档,并记录版本号和修改日期,便于回溯和复现。