搜索
bottom↓
回复: 7

CDPnP 开源视觉散料贴片机使用说明

[复制链接]

出615入1076汤圆

发表于 2023-2-18 22:03:36 | 显示全部楼层 |阅读模式
本帖最后由 dukelec 于 2023-3-14 11:25 编辑

(文章格式可能比较乱,markdown 格式文档地址(以及原代码地址): https://github.com/dukelec/cd_pnp/discussions/3
(网络不好可使用镜像(域名前多了一个字母 k): https://kgithub.com/dukelec/cd_pnp/discussions/3

## 安装

### 拆包装



取出的顶部珍珠棉,如果要重新装回去,四个腿要插到底部珍珠棉的内圈,不要顶到底部珍珠棉的外圈台阶上,另外要注意插入时把主机的线理顺一些。





建议用手拿机器 X 轴丝杆中心位置,取出机器(日常搬运也可用此方式):



如果机器在归零位置,也可以让底板垂直于地面搬运:



日常最好还是用两个手抬着机器左右两侧搬运。


### 包装清单

除了主机,包装还包含:
- 一个 12V 2A 电源适配器
- 一个 DC 电源转接小板及电源转接线
- 一个亚克力版本的 CDBUS-Bridge(USB 转 RS485)
- 一根 RS485 灰色数据线
- 主机已经安装一个 502 陶瓷小吸嘴,另附一个 506 橡胶大吸嘴




### 更换吸嘴

502 吸嘴默认是吸 0402 的料,但是更小和更大的料也都可以吸,譬如可以吸 0201 的料,也可以吸 LQFP48 芯片,甚至更大的料。

502 吸嘴吸很大的芯片,旋转过程中容易打滑,导致角度不准,我们可以手动操作加以修正。

如果要更换吸嘴,建议操作过程用手扶住 R 轴电机,防止 R 轴电机所在平台弯曲变形。






### 更换防滑膜

主机底板上,已经贴了一层 3mm 厚的硅胶垫(长宽 130x300mm),可以起到柔光、保护和防滑等效果。
但是,元件直接放置在硅胶垫上,会被硅胶垫粘住,难以吸取,所以硅胶垫左侧会贴上特殊防滑膜,
该防滑膜可以兼顾元件防滑和吸嘴吸取。

出厂默认已经贴了防滑膜,清洗建议用沾水的纸巾轻轻擦拭。

如果防滑磨表面磨损影响使用,我们可以更换该膜。

防滑膜取自办工用品 -- 护卡膜

我们取出一对护卡膜,用剪刀剪去根部粘了胶的位置,然后用沾水的纸巾擦拭硅胶板,除去灰尘和污渍,
然后把这对护卡膜贴到硅胶板上,用手或合适的工具挤出气泡,最后再分开这一对护卡膜,只保留一张膜在硅胶板上即可(不光滑的一面朝上)。







提示:  
我们也可以不在硅胶板上贴膜,而是把膜贴在 1~2mm 厚的柔光亚克力板上(推荐冬瓜白,和硅胶颜色接近),亚克力板两面都选择亮面,5x7cm 左右大小,其中一面涂胶贴护卡膜。
这样贴片的时候,可以把放好元件的亚克力卡片直接放到硅胶上。贴片的时候可以准备另一块亚克力卡片。

(图为 1mm 厚透明亚克力卡片贴护卡膜,使用 B-7000 胶水,一点点气泡不会影响视觉识别。)



建议用一小节电阻电容的纸载带来把料分散,以及翻面,下面视频为 0402 的电阻翻面操作(更大的电阻难度会加大,不好翻面的时候也可以用镊子操作):



直接把料倒在硅胶板的防滑膜上有时不是很好操作,建议先把料倒在小卡片上,再从卡片用纸载带把料转移到硅胶板上。
特别是前一款料还没贴好的时候,用这个方法可以先准备好下一款料,以节省时间。



## 上电及校准

接上 12V 电源,主机各 MCU 小板会闪烁绿灯,然后绿灯长亮,机器不会转动。
通过机器左下角背光板开关,可以手动控制背光板亮灭。

接入 USB,参见 CD-PnP 安装说明,安装 Python 依赖环境,然后运行 CD-PnP 的主 Python 程序,
程序启动后,机器正常会执行归零操作,归零后会停下来,此时可按照程序终端提示,打开 CD-PnP 软件 web 图形界面。
(如果机器已经上电归零,再次启动 CD-PnP 程序则不会执行归零操作。)



Web 界面打开后,可以用键盘控制机器运动(也可以用 web 界面上的对应的按钮进行移动):



界面中的数据,修改之后会自动保存,刷新页面不会丢失。



### 校准作业的预设高度调整

如果出厂有提供对应编号的机器配置文件,用户在 web 界面通过 `Import Config` 按钮导入,可以选择跳过此步骤。

Web 界面有一组 `User pos` 栏目可供用户使用,其目的是点击对应的 `Goto` 按钮,可以快速移动到之前保存的座标。

默认已经填写了 2 组位置快捷方式,一个是运行到空旷的位置,靠近机器中间,较为不挡用户上下料等操作。
另一个是校准作业的初始位置,要执行吸嘴位置校准时,要先走到该位置。

然而,如果校准作业初始位置的高度不是理想的高度,则会影响后续校准操作,所以我们首次使用机器要先校准一下这个高度,日后几乎不用再重复这个过程。
操作方法如下:

先点击 `Calibration` 的 `Goto` 按钮,走到校准作业的初始位置,勾选 `Camera` 后面的 `Enable` 选项打开摄像头,默认打开 1 号主摄像头,元件识别方式可以选择 `None` 让画面保持干净。





此时,我们可以按 `Grab offset (0°)` 后面的 `<-` 按钮,让吸嘴向左移动到黑十字标线上方,切换至 2 号摄像头,并勾选 Light 选项打开摄像头背光。



接着,用方向键稍微降低吸嘴高度,为了方便观察吸嘴到黑十光标中心的偏移,然后移动吸嘴靠近黑十光标的中心。

此时,点 `Detect bottom` 按钮,让吸嘴自动下降探测黑十光标所在玻璃片的高度,停止后,移动速度选择 2,并向上移动 3 次以抬起吸嘴(高度增加 0.3mm),让吸嘴和玻璃片靠比较近,但又保持一定距离不能接触。





此时,高度就校准的差不多了,接下来要把这个高度存入到 Calibration 这个快捷方式里面:
- 在当前位置,按 `Cur + cam dz` 按钮,把 Z 轴高度增加 `Camera delta z` 对应的高度,默认是 7mm 一般不用改。
- 按 `Grab offset (0°)` 后面的 `->` 按钮让主摄像头向右移动到黑十光标玻璃片上方,可切换到主摄像头画面,对不准没关系。
- 按 Calibration 这个 `User pos` 后面的 `Update` 按钮更新并保存 `Calibration` 座标。


### 校准吸嘴

校准不用每次都做,首次使用时建议做一次校准,再就是下一节 “校准验证” 提到的情形,如果校准验证的结果有问题,则要重新做一次校准。

先点 `Calibration` 后面的 `Goto` 按钮,快速移动到校准作业初始位置,选择 1 号主摄像头画面,1 号摄像头拍到了黑色的 2 号摄像头,导致黑色的十字标线拍不清楚,为了拍清楚,我们可以放一张纸巾在十字标线下方:





如果环境光线很暗,依然拍不清楚的话,可以勾选 `Camera` 后面的 `Light` 选项,打开 2 号摄像头的背光:





如果画面中心的绿色小十字光标,没有对准黑十字标线的中心,则要按方向键移动主摄像头,让它们的中心重合,并通过对应的 `Update` 按钮更新当前座标到 `Calibration` 快捷方式。
移动时,先选择较快速度进行粗调,再选慢速微调对位。
如果已经对准,则直接进行下一步。

点击 `Reset aux` 按钮,清零 `Aux pos` 座标,方便我们测量接下来移动操作之后的位置到当前位置的偏移:



点击 `Grab offset (0°)` 后面的 `<-` 按钮,把吸嘴移动到黑十字标线上方,切换 2 号摄像头画面,记得打开背光。



点击 `Cur - cam dz` 按钮,让吸嘴下降接近黑十字标线所在玻璃表面(但不接触),以便摄像头拍摄清楚和对位:



首次校准误差可能比较大,移动吸嘴对准黑十字标线中心,并按 `Grab offset (0°)` 后面的 `Update |Aux|` 按钮保存校准后的值(吸嘴中心和主摄像头视角中心的偏移)。



点击 `Go 180°` 按钮,让吸嘴从 0° 旋转到 180°,此时吸嘴可能又会偏离黑十字标线中心:



再次移动吸嘴对准黑十字标线中心,并按 `Grab offset (180°)` 后面的 `Update |Aux|` 按钮保存校准后的值。



至此,校准完毕,建议点击 `Idle` 后面的 `Goto` 把吸嘴移动到空旷位置,以防误操作。


### 校准验证

校准之后,我们可以再次验证一下,确保校准的数据无误,或者操作过程中,误碰到主摄像头或吸嘴,也建议做一次校准验证。

1. 先点 `Calibration` 后面的 `Goto` 按钮,快速移动到校准作业初始位置,先确保画面中心的绿色小十字光标,对准黑十字标线的中心。
如果没有对准,则对准后更新 `Calibration` 存放的座标。

2. 点击 `Grab offset (0°)` 后面的 `<-` 按钮,把吸嘴移动到黑十字标线上方,切换 2 号摄像头画面,记得打开背光。
3. 点击 `Cur - cam dz` 按钮,让吸嘴下降接近黑十字标线所在玻璃表面(但不接触),以便摄像头拍摄清楚和对位。
4. 如果吸嘴中心和黑十字标线中心重合,则表示 0° 校准无误。

5. 重复以上步骤,点 `Calibration` 后面的 `Goto` 按钮,快速移动到校准作业初始位置。
6. 点击 `Grab offset (180°)` 后面的 `<-` 按钮,把吸嘴移动到黑十字标线上方
7. 点击 `Cur - cam dz` 按钮,让吸嘴下降
8. 如果吸嘴中心和黑十字标线中心重合,则表示 180° 校准也无误。


### 元件抓取平面高度校准

先点击 `Comp search #0` 按钮,让摄像头移动到散料摆放的位置:





然后点 `Grab offset (0°)` 后面的 `<-` 按钮,让吸嘴移动到刚才摄像头的位置:





此时,点 `Detect bottom` 按钮,让吸嘴自动下降探测摆放散料的平面高度,停止后,点 `Comp base z` 后面的 `Update` 按钮更新元件抓取高度。  
(点 `Detect bottom` 按钮前,也可以手动控制先让吸嘴下降一些,以减少自动高度探测的时间。)







校准完毕,建议再此点击 `Comp search #0` 按钮,让吸嘴离开平面,以防误操作。  
此时可以在摄像头下方摆放一些小元件,看摄像头画面是否正常。

元件抓取高度一般只需要校准一次,如果更换不同高度吸嘴,或者在硅胶垫上方增加使用了亚克力元件小托盘,则要重新校准。


### PCB 表面高度校准

贴片不同厚度的 PCB,或者是 PCB 双面贴片时另一面已经贴好元件,PCB 表面高度发生变化,都要进行一次 PCB 表面高度校准。

校准方法和上一章节类似,先手动移动吸嘴到待贴 PCB 上方一点点,最好是 PCB 中间区域没有锡膏的空白位置。  
(可以先移动摄像头对准目标区域,然后用 `Grab offset (0°)` 后面的 `<-` 按钮,把吸嘴移动到摄像头原本对准的位置。)

然后点 `Detect bottom` 按钮,让吸嘴自动下降探测 PCB 表面高度,停止后,点 `PCB base z` 后面的 `Update` 按钮更新PCB 表面高度。

完成后,可以点 `Cur + cam dz` 按键,让吸嘴离开 PCB 表面,防止误操作让吸嘴受损。


### 摄像头背景补偿

先点击 `Comp search #0` 按钮,让摄像头移动到散料摆放的位置,摄像头补偿前,画面中间亮,周围暗:



此时,靠近边缘的元件,很可能识别不出来:



补偿的方法是,先点 `Comp search #0` 按钮,让摄像头移动到散料摆放的位置,清空散料,让摄像头画面保持干净,然后点击 `Update BG` 按钮,画面周围亮度会变的和中间接近:



此时,靠近边缘的元件颜色会偏淡,但识别不再有问题:





## 贴片作业

### PCB 座标文件导出

此章节以 KiCad 为例,其它 PCB 画图软件导出的座标文件也可以转换为 KiCad 的格式。

建议在 KiCad 的 PCB 编辑器中放置 `Drill/place file origin`,可以在板子内外的任意位置,显示设置里面也默认使用 `Drill/place file origin` 对应的座标:  
(如果不使用 `Drill/place file origin`,板子离原点距离会相对较远,后续操作如果座标有问题,譬如正负号搞反,那么机械可能会运动比较大的偏移,可能会撞到其它物品。)




导出座标文件也选 `Drill/place file origin` 对应的座标:





然后,PCB 板子上任意找两个参考点,并查看它们在 PCB 编辑器中的座标,参考点最好使用专门的标定点,没有的话,也可以是某个元件中心、某个焊盘中心,某根细导线的转角处等等。  
(图中标定点金属部分直径 0.3mm,外圈直径 0.8mm。)





参考点不建议选择字符丝印、钻孔、板边,这些参考和焊盘之间可能会存在较大的误差。


### CDPnP 导入座标文件

点击 `Load CSV` 按钮,选择上一步导出的座标文件:





把上一步选择的两个参考点的座标分别填写到 `Fiducial pcb` 后面的输入框:



### 标定 PCB 位置

PCB 实物要按照 PCB 编辑器中的方向摆放到硅胶板上,允许一定角度的误差,理论上不能超过 45 度。

点 `Fiducial cam #0` 后面的 `Goto` 按钮,除了让摄像头移动到 PCB 附近,还可以让吸嘴比 PCB 表面高出预设的高度(`Camera delta z`),以便摄像头可以对焦。

如果不按上述 `Goto` 按钮,先移动摄像头到 PCB 上方,再点 `PCB base + cam dz` 按钮也可以让摄像头对焦。

注意:摄像头高度不对不只影响对焦,还会影响贴片精度,因为吸嘴校准也是在同样的预设高度下进行的。

手动控制摄像头对准我们的一号参考点,然后点 `Fiducial cam #0` 后面的第一个 `Update` 按钮。  
然后再移动摄像头对准我们的二号参考点,再点后面的第二个 `Update` 按钮即可。

如果同时贴多块 PCB,可以重复上面的步骤,目前最多可以添加 10 块 PCB。





技巧:  
如果是首次使用贴片机,或者是贴多块 PCB,建议首次标定 PCB 位置时先不刷锡膏,先初步标定一次,不用标定很准。
然后把 PCB 依次取下来刷锡膏,再放回原本的位置,有一点偏差没有关系,再用 `Fiducial cam #x` 对应的 `Goto` 按键快速移动摄像头到标定点附近,再手动稍微微调一下就好了。
否则,先刷锡膏,再标定位置,如果标定时间比较长,锡膏容易干燥。

至此,我们已经标定好了 PCB 的位置,此时可以点击软件下方的 `Components` 元件列表中的元件,让摄像头快速移动对准对应的元件。
注意,要点 Reference 和之后的栏目范围。(多块 PCB 可先切换当前 PCB 的选择,便可对准对应 PCB 的对应元件。)



### 开始贴片

贴片前,建议先通过拖拽元件列表整理一下贴片顺序,先贴小的、不分方向的元件,再贴要分方向的元件,不贴的放最后。

电阻电容建议按阻容值排一下顺序,这样不容易贴错料,也容易合并相同的料,否则可能发生以下情况:  
先贴一些 `4.7K` 的电阻,再贴 `10K` 等电阻,然后又再次贴 `4.7K,5%` 的电阻,相同的 `4.7K` 的电阻要找 2 次料。



点击选中要开始贴片的元件(选中会变绿,不选则默认贴第一个),然后点 `Run` 按钮开始贴片。

点 `Run` 之前,要摆放对应的元件,一定要先打开 1 号摄像头,并打开视觉识别,背光板也要手动打开。(当前不在识别的时候,可以关闭背光板。)
- 不识别方向的元件,譬如电阻电容,视觉识别要选择 `Default`,元件摆放角度不重要。(PCB 对应的元件封装中的元件角度,需要是元件短边在左右,长边在上下。常用 PCB 软件都是默认如此。)
- 需要识别方向的元件,视觉识别要选择 `Limit angle`,譬如 LED、SOT-23 和其它芯片,元件需要按照元件封装库中的角度摆放在元件吸取区域,允许一定的角度误差,理论上不能超过 45 度。




(硅胶板元件摆放区域的边缘,用黑色笔做了记号,方便摆料的时候可以尽量摆放在视觉识别范围内。)





运行过程中,按空格键暂停操作,目前暂停是不自动进入下一个步骤,当前步骤依然会完成。

再次按空格键取消暂停前,先检查一下当前停在哪一个步骤,如果不是想要的步骤,可以单击对应的按钮选择步骤(`Show target`、`Goto comp` ... `Put down`)。

贴多块 PCB 时,也要注意当前选择的是几号 PCB.

暂停的时候,也可以修改当前要贴的元件,操作比较灵活。(当然也可以先 `Stop` 再 `Run` 代替 `Pause` 暂停。)

贴片过程抓拍:  









注意:  
贴引脚比较密的芯片,建议不要勾选 `Put down` 选框,芯片被吸取到 PCB 对应焊盘上方会停下,改由用户手动操作:下降元件、对齐芯片引脚和焊盘,确认对齐后再让引脚和焊盘上的锡膏接触,最后按空格取消暂停以升起吸嘴。

自动停止在焊盘上方:



手动下降,和锡膏保持一定安全距离:  
(小吸嘴吸取元件后旋转的时候容易打滑,要手动稍微修正一下,比换大吸嘴方便,换吸嘴要重新校准吸嘴。图中为 502 吸嘴。)



手动调整位置,要从多个角度确保芯片引脚和焊盘对齐,然后继续下降芯片,让引脚接触锡膏:  
(接下来要按空格键取消暂停,气泵会关闭、吸嘴会升起。)





## 注意事项

- 已经粘到锡膏的元件,如果再次使用时不把锡膏清理干净,锡膏的粘性可能会导致吸嘴吸不起来。

- 如果 PCB 对应元件焊盘没有锡膏,气泵停止工作后,0402 或更小的元件可能会继续粘在吸嘴上,干扰下一次贴片。

- 机器正在运动的时候,尽量等它停下来再发送其它运动指令,防止相互干扰。(无其它任务时,可以快速多次按方向键,或长按方向键。运动速度为 4 的时候则要慢一点。)

- 更换吸嘴的时候,要用手扶住旋转轴电机,防止旋转轴电机所在平台受力变形,或使力传感器应变片受损。

- 放料的平面和放 PCB 的地方,使用前用湿纸巾清洁一下灰尘,避免视觉识别受到污渍干扰,以及 PCB 没有粘牢时遇到吸嘴按压容易移位。

- 放置 PCB 的时候,背面没有贴元件时,用力按压到硅胶板上,防止贴片时移动。
- 如果 PCB 背面已经焊接了元件,建议用多个最高的同款元件把 PCB 垫水平,然后用胶布把 PCB 粘到硅胶板上,防止贴片时移动。

- 贴片时,如果感觉 PCB 移动导致不准,可以暂停或停止任务,重新检查并修正两个标定点的位置。
- 取 PCB 时,由于硅胶板有粘性,建议从一角慢慢取下 PCB。
- 触摸机器时,要避免直接接触机器裸露的电路板,尽量先触摸金属骨架或 PCB 螺丝,防止静电使机器受损。
- 摄像头镜头出厂已经调好焦距,并打上了软胶防止松动,如果对不上焦,可能是摄像头高度不对,尽量不要拧镜头调焦。
- 如果 PCB 表面特别脏,画面会多很多细节,摄像头拍摄的 jpg 图片会变大很多,目前 mcu 和摄像头之间的传输速度不够快,可能会导致画面出现破损。
- 如果环境光线太强影响视觉检测,建议想办法降低环境光线,特别是户外照进室内的强光,譬如拉上一些窗帘。
- 机器要放在平整的工作台面,注意底部软脚垫的位置不要压到异物。
- 电机锁住状态,更换吸嘴可能会让 R 轴电机失步转动到其它角度,此时要重新上电找零点,否则吸嘴校准的数据下次通电会不准。
- 机器有位置超限保护,但是目前没有 2 号相机的死区保护,要小心不要撞到 2 号相机。
- 非 `Detect bottom` 模式,如果 Z 轴不小心下压撞到东西,下压力太大,会自动回位到最顶部。(要尽量小心,最好不要撞到东西。)
- 吸嘴校准的过程,吸嘴全程不能接触 2 号相机,用户也要避免触碰 2 号相机(除了很轻的纸巾),防止 2 号相机位置变化影响校准的精度。
- 尽量避免没有吸到元件的吸嘴下降到 PCB 锡膏上,防止吸嘴被锡膏堵住。万一堵住或者粘了锡膏,建议及时清理。

- 如果要重新装入包装箱,先上电走到默认的 `Idle` 位置,然后用 4 档运动速度,向右和下方各走 2 下(下方对应向下箭头,不是 Z 轴下降)。


已经可以陆续开始发货,连接见发货贴 1 楼: https://www.amobbs.com/thread-5760126-1-1.html

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出10入18汤圆

发表于 2023-2-18 23:42:42 | 显示全部楼层
大佬辛苦了

出0入42汤圆

发表于 2023-2-19 00:11:08 来自手机 | 显示全部楼层
辛苦了,有套件了吗

出0入0汤圆

发表于 2023-2-22 16:17:41 | 显示全部楼层
顶起来!诚挚的祝愿 爵哥 新婚快乐!

出700入127汤圆

发表于 2023-2-22 22:07:08 | 显示全部楼层
能稳定贴0201, 100个元件的板子,含编程放料时间,贴5套的时间比手工贴要省时间的话,我也要一台贴小元件样板专用。

出615入1076汤圆

 楼主| 发表于 2023-2-22 23:14:17 来自手机 | 显示全部楼层
本帖最后由 dukelec 于 2023-2-22 23:15 编辑
Aper-2020 发表于 2023-2-22 22:07
能稳定贴0201, 100个元件的板子,含编程放料时间,贴5套的时间比手工贴要省时间的话,我也要一台贴小元件 ...
(引用自5楼)


0201 阻容试过抓取没问题,0201 的板子贴的少,我要再多测试一下

出0入0汤圆

发表于 2023-2-23 07:49:02 | 显示全部楼层
这个要顶一下。  小批量的利器啊。

出0入0汤圆

发表于 2023-2-23 08:34:00 | 显示全部楼层
顶下大佬。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-29 09:13

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表