openpnp - 设备矫正的零碎记录

这篇具有很好参考价值的文章主要介绍了openpnp - 设备矫正的零碎记录。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

openpnp - 设备矫正的零碎记录

概述

设备矫正终于正常通过了…
从头进行多次设备校验, 都能一次性校验通过, 重复性很好.
补充一些矫正过程中的细节.

同学说我是过度矫正, 太不负责任了, 听的我浑身难受. 同学做的任何事情, 都是抱着凑合的态度来做事, 这对自己和别人都不好啊. 这样做事, 口碑都没了.
这次定制的设备, 主干是好的(丝杠, 伺服, 机械强度, 结构设计), 我确实很感谢.
细节的问题, 一定是有的(非标设备, 又是改型的第一台, 不可能细节都到位), 这是正常的, 大家都能理解. 对于细节问题, 大家一起来当作自己的事情来解决, 出主意, 想办法, 这才是正道啊.

设备自带的顶部相机高级矫正和底部相机高级矫正, 是用来矫正相机安装的垂直度补偿的(谁能保证机械部分安装是完全垂直的?), 如果矫正通不过, 那贴片精度根本就无从谈起.

用了4个月, 终于让设备到达了一个出厂设备应该有的正常状态, 味道有点苦.

笔记

设备内部不能有任何强干扰源

我的设备里面安装的真空泵, 是个强干扰源. 是设备矫正过程中的数据受到了干扰. 设备矫正过程时间很长, 真空泵启动的次数很多, 保不准就干扰到啥, 导致无法走完设备校验流程. 即使侥幸走完设备校验流程, 等正常贴片流程时, 还会有干扰.

后来拆掉了设备自带的真空泵, 用冰箱压缩机改了一个真空泵(openpnp - 用空调压缩机改真空泵), 消除了干扰源.

自己做的这个真空泵是否对贴片操作有干扰, 有待观察. 初步看, 是没有影响的.

相机就选100W像素的就行, 没有特殊要求

官方推荐, 就使用100W像素的彩色相机. 这种相机价格不到100RMB.
只要设备没有强干扰, 对相机的垂直度安装, 也没有特别高的要求. 肉眼可见的垂直就行. 有条件时, 可以拿三角尺大概齐看一下.

相机设置时, 去掉自动选项(e.g. 自动曝光, 自动白平衡)

openpnp软件的选择

官方最新的OpenPnP-windows-x64-develop_2023-03-15_00-30-21.460d8aa.exe, 有bug. 底部相机高级矫正完成后, 底部相机标尺分的太细了(密密麻麻的, 像毛毛虫一样). 导致将N1移动到底部相机上, 无论如何缩放, 都看不到正常图像.

我用的是官方的OpenPnP-windows-x64-develop_2022-08-01_18-07-09.2a36a8d.exe, 这个稳定版好使.
但是操作流程上, 需要注意, 必须将当前步骤需要的前置操作先用UI配置完, 否则会导致软件崩溃. (e.g. 矫正N2和相机的偏移时, 必须先设置N2的换刀区, 然后将N2吸嘴载入, 然后才去执行 N2和相机的偏移的矫正)

视觉归位必须禁止

如果使能了视觉归位, 再移动到主基准点, 次基准点时, 位置就偏差了不少. 再重新设置主/次基准点位置, 视觉归位后, 再移动到主/次基准点, 位置还是偏的.

不使能视觉归位, 一切都是正常的.
同学也跟我说, 不要使能视觉归位, 原因他没说.

轴的赤隙矫正不用做

这个点同学说的对, 对于丝杠设备, 齿隙矫正是不必要的.

我的设备X/Y轴是丝杠, 精度由伺服和丝杠来保证. 不用做齿隙矫正
Z轴是步进电机+皮带传动, 但是行程短(+/-20mm), 不用做齿隙矫正.
C1, C2是旋转轴, 也不用做齿隙矫正.

运行openpnp软件的计算机, 必须是台式机

应该和USB口的供电和通讯速率有关系. 应该独立的USB口更好.
笔记本上的独立的USB口不够用(一般就是2,3个, 还要插入鼠标).
台式机上的独立USB口够用, 至少能用4~8个.

如果使用笔记本+USB扩展坞(冰沙主板, 顶部相机, 底部相机), 不好. 发现顶部相机的图像, 过10秒钟, 就会闪一下, 图像不是一个连续完整的图像. 这个不连续, 不是受干扰引起的, 看起来更像通讯带宽不够引起的.
据我的经验, 如果发现有不正常的情况, 就要停下来, 将问题解决掉. 否则不知道会带来啥新问题.

当使用台式机时, 插入设备的3条USB线, 使用OpenPnP-windows-x64-develop_2022-08-01_18-07-09.2a36a8d.exe, 可以正常将校验流程走完. 最后一步是底部相机高级矫正, 当底部相机高级矫正完成后, 看底部相机标尺的分隔, 是正常的分隔(而不是密密麻麻的标尺分隔), 将N1移动到底部相机下, 可以看到正常图像. 缩放底部相机图像, 图像的缩放层级比矫正前多很多.

校验完成后, 数据占用的体积

一次性校验通过, .openpnp2目录体积约为400MB. 备份好.
以后可以观察正常贴片后, 多出哪些可以删除的文件.

吸嘴校验时是采用外壁还是内壁?

听同学说, 如果采用吸嘴外壁虽然也能校验过去. 但是对精度有影响.
还是用吸嘴内壁面积作为吸嘴校验的基准圆.
如果吸嘴内壁粘了东西, 导致内壁不是一个完整的圆形, 用3D打印机专用的吸嘴清理针将内壁清理干净.

为了抓取元件时框住外形准确, 还是暂时使用2022/8/1的开发版

openpnp - 设备矫正的零碎记录,openpnp,openpnp
2023/8/11的测试版, 框住元件外形时, 滑动条(阈值, 细节尺寸)拉大最右边才能正确框住元件, 如果出现元件抓偏的情况, 就没法再调节滑动条了, 导致无法准确框住元件.

但是2022/8/1的开发版要好很多, 正常情况下, 滑动条调节到中部偏右, 就能准确框住元件. 如果抓偏了, 还有调节的余地.

框住元件外形时的尺寸精度选择

默认是20%, 但是不能太大. 如果太大了, 就会使吸嘴上无元件时, 导致误判.
我这设备, size精度改为33%, 可以正确应对有吸嘴有元件和无元件的情况.

校验时,最好上503的吸嘴

校验用的陶瓷圆片如果尺寸比较大(e.g. 6mm直径),有可能502有时吸取不起来。这时, 因为标定还没完,也不敢换吸嘴。
所以, 校验时, 如果是双头的设备, 最好N1/N2都先上503的吸嘴。
或者,如果能买到直径3mm, 直径4mm的陶瓷圆片,可以用502吸嘴来标定设备。

底部相机高级矫正后相机十字线太密的问题

现在oenpnp不管哪个版本, 在底部相机高级矫正后, 都有可能出现底部相机十字倍率太高的问题.
这时, 将N1移动到底部相机中心内, 无论如何缩放, 都看不清N1的吸嘴.
这说明校验的不合适(也不是失败, openpnp显示校验成功了).

此时, 需要重新进行底部相机高级矫正.
先去设备配置树中, 底部相机最右边的配置. 将应用底部相机高级矫正的勾先去掉.
然后在openpnp中, 用按钮关闭设备.
关掉openpnp
打开openpnp, 归零.
然后再进行底部相机高级矫正, 从点了开始矫正的按钮后, 就千万别在操作了, 将鼠标和键盘就拿的远远的, 让openpnp自动校验.

最后校验成功的效果是, 底部相机十字缩放, 可以正常看到N1的吸嘴.

如果校验失败, 看看是不是N1的吸嘴被东西堵住了一部分, 不是圆形引起的.
用3D打印机通孔针将吸嘴清一下. 502吸嘴用0.35mm的针能正好通开.

昨天一天时间, 底部相机高级矫正都过不去. 今天从头做了一次设备标定, 就全部通过了. 总结一下区别, 下次如果要重新标定设备, 就这么做.

openpnp版本为2022/8/1

我是在上午至中午来做设备标定的, 光线比较好.

吸嘴N1装503, 吸嘴N2装502

设置N1/N2安全高度时, 直接Z轴归零, 然后设置归零高度为N1/N2的安全高度.

按照向导提示去做, 不多做超前的设置. 只有这步需要设置的参数才去设置.

相机窗口为H自动布局, 上面是顶部相机, 下面是底部相机. 图像都缩放到最大, 就不再动相机缩放比例. 就按照这个相机缩放来做所有的标定操作.

在需要目标识别的步骤时, 优先采用openpnp自己识别出来的对象绿圈, 不自己调整. 除非自动识别的不对, 才自己用绿圈手工圈目标.

在标定吸嘴和主/次校准点的偏移时, 要用到测试目标(陶瓷圆片, 官方对圆片没有特殊要求, 我这里采用4mm圆片, 厚度1mm, 要单独实验一下, 是否N1/N2上装的吸嘴都能将这个陶瓷圆片吸取到吸嘴尖端. 我实验的结果, 如果是6mm直径的圆片, 502就吸取不上来)

底部相机初次矫正时, 要选取503吸嘴尖端的内壁! (关键点 : 503吸嘴, 吸嘴尖端内壁)

底部相机高级矫正时, 时间比较长, 点击接受后, 任务开始, 然后将鼠标和键盘都拿的远远的.
底部相机高级矫正成功的判断: * openpnp不报错 * 操作完成后, 可以用肉眼看清吸嘴尖端(标定前后, 肉眼观察N1吸嘴, 视觉效果是差不多才对), 如果标定完成后, 底部相机十字太密了, 怎么缩放都看不清吸嘴, 这时就是底部相机高级矫正失败了(虽然openpnp没有报错提示)

因为openpnp软件有bug, 所以不是每次设备标定都能成功. 设备标定完成后, 做个备份. 以后都可以在干净的配置备份上干活.文章来源地址https://www.toymoban.com/news/detail-614821.html

END

到了这里,关于openpnp - 设备矫正的零碎记录的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【webpack】一些零碎的知识点记录:eslint配置、source-map配置、devServer配置

    有些知识点不知道咋归类,就先暂时放在同一个文章里了。这里只记录配置方式,配置的东西是什么就不过多解释了,因为一般需要配置这些东西的也都了解是什么了。 一般在用cli创建vue工程或者cra创建react工程的时候,会默认帮你安装,webpack会自动帮你配置好,我也比较推

    2024年02月13日
    浏览(43)
  • [自学记录06|*百人计划]Gamma矫正与线性工作流

    Gamma矫正其实也属于我前面落下的一块内容,打算把它补上,其它的没补是因为我之前写的GAMES101笔记里已经涵盖了,而Gamma矫正在101里面确实没提到,于是打算把它补上,这块内容并不难,但是想通透的理解我觉的还是有难度的,尤其是关于Gamma矫正,它的原理其实很简单,

    2024年02月12日
    浏览(32)
  • openpnp - 底部相机可以校验通过的版本(openpnp稳定版系列试用体会)

    因为在最新的openpnp稳定版上, 底部相机校验通不过, 先看看到底哪个版本可以让底部相机校验通过. 最后发现, OpenPnP-windows-x64-develop_2022-08-01_18-07-09.2a36a8d 这个版本可以. 但是我换过底部相机, 紧过设备内部的真空泵固定螺丝, 不确认是否是openpnp软件的bug导致底部相机校验不通过

    2024年02月14日
    浏览(35)
  • openpnp - 底部相机支架的制作

    前几天总结了底部相机校验通不过的原因(openpnp - 底部相机矫正(subject not found)的原因总结), 并且可以校验通过了. 好景不长, 在校验通过的第三天(中间再穿插做其他事情), 从头做了一次配置(就是想看看, 硬件不动的情况下(将变量降低), 是否可以再次将底部相机校验通过). 结果

    2024年02月09日
    浏览(42)
  • openpnp - smoothieware config option

    自己设备用的主板是smoothieware 1.3 在设备矫正过程中, 发现机械部分有点问题, Z底板因为强度不够, 向设备背面倾斜了一个很小的角度, 导致Z轴上下移动时, 在底部相机十字中偏差很大, 此时, openpnp底部相机初始化是过不了的. 想将N1电机移动到N2位置, 也就是想将N2那个位置当作

    2024年02月01日
    浏览(28)
  • openpnp - SlotSchultzFeeder source code bugfix

    我的openpnp设备接入的飞达是西门子二手飞达, 用openpnp提供的SlotSchultzFeeder. 发现原版openpnp有个问题(bug): 接入多个西门子飞达时, 因为要调整飞达参数(或仅仅就想确认一下参数), 切换到不同飞达时, 大概率会弹框报错. 报错的项目有多种(最多4种: 飞达ID取不到, 飞达送料数取不到

    2024年02月07日
    浏览(36)
  • openpnp - 板子上最小物料封装尺寸的选择

    现在设备调试完了, 用散料飞达载入物料试了一下. 0402以上贴的贴别准, 贴片流程也稳, 基本不需要手工干预. 0201可以贴, 但是由于底部相机元件视觉识别成功率不是很高, 手工干预要比较多. 吸嘴用的501 01005就不用试了, 没有可用的吸嘴(500吸嘴是2个吸嘴尖端, openpnp只支持一个吸

    2024年02月11日
    浏览(34)
  • openpnp - 相机图像亮度太高的解决方法

    看到同学在群里讨论问题, 说相机补光灯亮度太高了, 导致openpnp图像惨白惨白的, 根本不能用. 能根本解决问题的方法, 就是群里同学说的, 用恒压恒流降压模块, 将补光灯的电压降下来, 直到相机补光灯亮度合适, 使openpnp得到的相机图像正常可用. 如果手头没有合适的电源模块用

    2024年02月17日
    浏览(49)
  • 零碎的c++二

    虚函数是C++中实现多态的一种机制,它允许通过基类指针或引用来调用派生类的成员函数。虚函数的作用是实现动态绑定,即在运行时根据对象的实际类型来确定调用哪个函数。虚函数的声明方式是在函数前加上virtual,如: 虚函数可以有以下几种场景用到: 当我们需

    2024年02月09日
    浏览(29)
  • 关于Kubernetes的一些零碎想法

    很多使用Kubernetes的企业可能没有认识到Kubernetes最重要的特点。许多企业将其视为一种容器集群管理系统(container management system),只使用其管理容器的能力。然而,这种看法是大错特错的。如果只是想管理容器,Mesos可能在这方面甚至比Kubernetes做得更好。甚至只需将OpenSta

    2024年02月16日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包