1. 透明物体感知的技术突破与DKT模型解析
透明物体在机器人抓取任务中一直是业界公认的"硬骨头"。传统视觉系统依赖物体表面的漫反射特性进行三维重建,而透明材质会让90%以上的入射光发生折射或透射,直接导致深度相机和结构光设备采集的点云数据出现大面积空洞。更棘手的是,透明物体的光学特性会随环境光源角度产生剧烈变化——一个玻璃杯在强光照射下可能完全"消失"在背景中。
智源研究院与清华大学联合研发的DKT(Depth-aware Keypoint Transformer)模型,采用多模态特征融合架构解决了这一难题。其核心创新点在于:
- 引入物理渲染引擎预生成的合成数据集,覆盖各类透明材质在不同光照条件下的折射/反射特性
- 构建双分支特征提取网络,同时处理RGB图像的边缘特征与红外相机的偏振信息
- 使用基于注意力机制的关键点预测头,精准定位透明物体的几何特征点
实测数据显示,在包含玻璃器皿、亚克力零件等复杂场景中,DKT的抓取成功率从传统方法的23%提升至89%,且单帧处理时间控制在50ms以内。这意味着工业机器人现在可以像处理金属零件一样可靠地分拣透明物品。
2. 机器人抓取系统的实现架构
2.1 硬件配置方案
典型透明物体分拣系统包含以下核心组件:
code复制视觉子系统:
- Basler ace 2工业相机(200万像素,全局快门)
- LUCID Phoenix偏振相机(输出4向偏振数据)
- 华睿2000系列红外相机(850nm波段)
执行机构:
- 爱普生C8系列SCARA机器人(重复定位精度±0.01mm)
- SCHUNK EGP电爪(集成力控模块)
- 亚德客气动元件(包含文中提到的挡停/推料/入库气缸)
控制单元:
- 西门子S7-1200 PLC(配置PROFINET通信模块)
- 昆仑通态TPC7062Ti触摸屏(7寸HMI)
2.2 软件控制逻辑设计
系统采用分层控制架构:
- 感知层:DKT模型运行在边缘计算盒(NVIDIA Jetson AGX Orin)上,输出物体6D位姿
- 决策层:ROS MoveIt规划抓取路径,通过Modbus TCP发送目标坐标
- 执行层:PLC接收指令后协调机器人、传送带和气动元件
关键通信参数配置示例:
python复制# ROS与PLC通信配置
plc_ip = "192.168.1.100"
modbus_port = 502
holding_register = {
'target_x': 4000, # 单位0.1mm
'target_y': 5000,
'gripper_status': 4100
}
3. PLC程序开发与功能块封装
3.1 FB功能块设计
创建"ConveyorControl"功能块封装传送带逻辑:
ST复制FUNCTION_BLOCK ConveyorControl
VAR_INPUT
ChannelSelect : INT; // 1-3分拣通道选择
StartTrigger : BOOL; // 启动信号
END_VAR
VAR_OUTPUT
BeltRunning : BOOL;
CylinderState : WORD; // 气缸状态字
END_VAR
VAR
Timer1 : TON;
END_VAR
// 主逻辑
IF StartTrigger THEN
CASE ChannelSelect OF
1: // 通道1控制
BeltRunning := TRUE;
Timer1(IN:=TRUE, PT:=T#5S);
IF Timer1.Q THEN
CylinderState.0 := TRUE; // 挡停气缸
CylinderState.1 := TRUE; // 推料气缸
END_IF;
// 其他通道逻辑类似...
END_CASE;
END_IF;
END_FUNCTION_BLOCK
3.2 主程序调用示例
在OB1中调用功能块并添加注释:
ST复制// 实例化功能块
Conveyor_DB : ConveyorControl;
// HMI输入处理
"Conveyor_DB".ChannelSelect := "HMI".SelectedChannel;
"Conveyor_DB".StartTrigger := "HMI".StartButton;
// 状态反馈
"HMI".BeltStatus := "Conveyor_DB".BeltRunning;
"HMI".CylinderPositions := "Conveyor_DB".CylinderState;
4. 系统调试与性能优化
4.1 视觉-执行协同校准
透明物体定位需要特殊标定流程:
- 使用特制标定板(表面镀有半反半透膜)
- 在Eye-to-Hand模式下采集20组不同角度的样本
- 通过最小二乘法拟合出折射补偿矩阵
校准后的位姿误差可控制在±0.3mm以内,满足精密装配需求。
4.2 气动元件时序优化
针对文中描述的轮毂分拣场景,建议时序参数:
code复制挡停气缸动作延迟:200ms(相对皮带启动)
推料气缸行程时间:1.2s(Φ50mm缸径,0.5MPa压力)
入库气缸复位超时:3s(包含缓冲阻尼时间)
这些参数需要通过示教器在线调整,并写入PLC的DB块中:
ST复制DATA_BLOCK "TimingParameters"
STRUCT
StopDelay : TIME := T#200MS;
PushTime : TIME := T#1200MS;
ResetTimeout : TIME := T#3S;
END_STRUCT;
5. 典型问题排查指南
5.1 透明物体误识别
现象:系统将背景反射误判为物体边缘
解决方案:
- 调整偏振相机角度至布儒斯特角(约56°对于玻璃)
- 在DKT模型前处理中添加背景掩模
- 增加红外补光灯减少环境光干扰
5.2 抓取过程中物体滑移
现象:真空吸盘或夹爪打滑
改进措施:
- 对于玻璃材质,改用带硅胶涂层的自适应夹爪
- 设置力控参数:夹持力15N±3N,接触速度50mm/s
- 在MoveIt中启用滑动检测算法
实际项目中我们发现,在夹爪表面加工微米级纹理能显著提升摩擦系数。经过测试,采用激光蚀刻的菱形纹路可使抓取稳定性提升40%。
