2. 相机选型与硬件搭建
说到无序抓取的硬件选型,我见过太多人一上来就纠结“哪个相机最好”。其实没有最好的相机,只有最合适的方案。今天咱们就把三种主流3D传感器的底牌翻一翻,看看它们到底适合什么场景。
2.1 三大主流3D传感器对比
先给个总览表格,方便你快速建立认知框架。
| 传感器类型 | 工作原理 | 典型精度 | 适用场景 | 典型价格区间 |
|---|---|---|---|---|
| 激光轮廓仪 | 激光线三角测量,逐线扫描 | ±0.01~0.05 mm | 高精度测量、焊缝跟踪、平面度检测 | ¥3万~10万 |
| 双目相机 | 双视角立体匹配,视差计算 | ±0.1~1 mm | 大范围抓取、料框拾取、AGV避障 | ¥1万~5万 |
| 结构光相机 | 投影编码图案,单帧解码 | ±0.02~0.2 mm | 精密装配、小零件检测、3C电子 | ¥2万~8万 |
2.2 激光轮廓仪:精度之王,但慢
激光轮廓仪说白了就是一把“光学卡尺”。它用激光线扫过物体表面,通过三角法算出每个点的深度。我最早接触Halcon 3D就是从激光轮廓仪开始的,当时做的是手机中框的平面度检测。
核心优势:Z轴精度极高,不受环境光干扰,适合反光表面。
致命短板:需要运动机构配合扫描,单帧只能获取一条线,采集速度慢。
为什么会慢?你想想看,一个200mm宽的料框,如果每0.1mm扫一条线,那就是2000条线。就算相机每秒能扫100条线,也得20秒才能完成一帧。这在节拍要求高的产线上基本不可接受。
我的经验:激光轮廓仪最适合做“在线检测”而非“无序抓取”。除非你的抓取节拍超过30秒/件,或者对精度要求达到微米级,否则我不建议用它做抓取的主传感器。
2.3 双目相机:性价比之选,但怕纹理
双目相机模仿人眼,通过左右两张图的视差来算深度。它的核心假设是:物体表面有足够多的纹理特征。如果遇到纯色、高反光、透明物体,匹配就会出问题。
我记得有一次在汽车零部件项目里,客户想用双目相机抓取黑色橡胶件。结果一到现场就傻眼了——橡胶件表面光滑得像镜子,双目匹配出来的点云全是洞。后来换了结构光才搞定。
避坑指南:我曾经在选型时只看分辨率没看基线长度,结果视野大了但深度精度不够。记住:双目相机的深度精度与基线长度成正比,与工作距离成反比。基线越长,精度越高,但视野重叠区越小。
双目相机的优势在于视野大、成本低、帧率高。如果你抓取的工件表面有自然纹理(比如铸件、木制品、布料),双目相机是性价比最高的选择。
2.4 结构光相机:平衡之选,但怕环境光
结构光相机向物体表面投射编码图案,通过图案的变形来解算深度。它结合了激光的高精度和面阵相机的高效率,是目前无序抓取领域的主流方案。
我现在的项目里,80%以上用的都是结构光相机。特别是Halcon自带的structured_light算子,配合DLP投影仪,能实现0.05mm级别的精度,而且单帧采集时间可以做到0.5秒以内。
关键参数:结构光相机的精度取决于投影图案的编码密度和相机的分辨率。一般来说,投影分辨率越高,解码精度越高,但计算量也越大。
但结构光有个硬伤——怕环境光。在强光直射或者有弧光干扰的车间里,投影图案会被淹没,导致解码失败。如果你要在户外或者焊接车间用,记得加遮光罩或者选主动红外结构光。
2.5 分辨率与视野计算
选型时最常被问到的问题就是:“我该选多少分辨率的相机?”我的回答永远是:先算视野,再算分辨率。
公式很简单:
单像素精度 = 视野宽度(FOV) / 相机水平分辨率
举个例子:你要抓取的料框是600mm×400mm,工件最小特征尺寸是5mm。为了保证识别稳定,我建议单像素精度至少是特征尺寸的1/10,也就是0.5mm/pixel。
那么需要的水平分辨率就是:
600mm / 0.5mm/pixel = 1200 pixel
考虑到边缘畸变和余量,我一般会乘以1.5倍系数,也就是1800 pixel以上。对应到常见相机,200万像素(1920×1080)就够用了。
| 料框尺寸 | 最小特征 | 推荐分辨率 | 推荐相机 |
|---|---|---|---|
| 300×200 mm | 2 mm | 0.2 mm/pixel | 500万像素 |
| 600×400 mm | 5 mm | 0.5 mm/pixel | 200万像素 |
| 1000×800 mm | 10 mm | 1.0 mm/pixel | 100万像素 |
个人习惯:我选型时会把分辨率往上提一档。比如计算出来200万够用,我会选500万。因为高分辨率意味着更多的点云数据,后续在Halcon里做点云配准、平面拟合时精度会更好。多花几千块,省掉后面调试的几周时间,这笔账很划算。
2.6 触发同步方案
硬件选好了,怎么让相机和机器人“步调一致”?这里我踩过不少坑。
常见的触发同步方案有三种:
- 软件触发:上位机通过TCP/IP或USB发指令给相机。优点是灵活,缺点是延迟不稳定,适合节拍宽松的场景。
- 硬件硬触发:PLC或机器人控制器通过IO信号直接触发相机。延迟在微秒级,适合高速产线。
- 编码器触发:配合运动轴编码器,等间距触发采集。适合激光轮廓仪这种需要连续扫描的场景。
我建议:对于无序抓取,优先用硬件硬触发。为什么呢?因为抓取场景中,机器人到位信号是确定的,用IO触发可以保证每次采集时工件位置的一致性,减少后续标定的误差。
我曾经踩过的坑:在一个项目中用了软件触发,结果相机采集延迟从50ms到200ms随机波动。机器人到位后拍照,工件已经移动了位置,导致抓取点偏差超过10mm。后来改成硬件触发,问题立刻解决。
下面这张图展示了典型的触发同步流程:
2.7 硬件搭建的几点忠告
- 光源要独立:别指望车间顶灯能当光源。我习惯在相机旁边加环形LED补光,色温选5000K左右,均匀性比亮度更重要。
- 支架要稳:3D测量对振动极其敏感。我曾经用铝型材搭了个架子,结果车间叉车一过,点云就飘了。后来换成铸铁底座,问题解决。
- 预留标定空间:安装时在相机视野内留一个标定板放置区,方便后期做手眼标定。别等设备装好了才发现没地方放标定板。
总结一下选型思路:
- 要微米级精度 + 不赶节拍 → 激光轮廓仪
- 要低成本 + 大视野 + 纹理丰富 → 双目相机
- 要平衡精度和速度 + 室内环境 → 结构光相机
我个人最常用的组合是:结构光相机 + 硬件硬触发 + 500万像素。这个配置能覆盖80%以上的无序抓取场景。