openpnp - 吸嘴是否吸取了元件的检测

文章目录

    • openpnp - 吸嘴是否吸取了元件的检测
    • 概述
    • 笔记
    • 补充 - 2023/8/11有bug, 元件底部视觉检测有时检测不到正确的元件外形
    • END

openpnp - 吸嘴是否吸取了元件的检测

概述

设备本身调试好了, 现在进行试贴.
发现一个奇怪的问题, 不管是否吸嘴吸取到了元件, 都会往板子上贴元件(空贴).
这就会造成事故了, 批量时, 板子从炉子中出来后, 发现板子上不定要少几个元件, 这咋弄?

. e.g. 飞达上没有元件, 或者飞达上有元件, 由于负压不够或者吸取高度设置好, 导致吸嘴吸取时, 没触碰到元件表面. 或者飞达位置是上一个工程的, 吸嘴下方的X/Y/Z坐标上, 就没有元件. 或者物料编带撕掉蒙皮时, 压板高度不合适, 引起了跳料, 发生跳料的料位, 里面的料要不是飞掉了, 要不就是没有平置在料位内, 导致吸嘴吸取元件失败.

如果这么空贴到板子上, 谁还能有那个耐心, 用元件浏览器, 将板子上的元件都看一遍, 看看哪个元件没贴上?
特别是批量时, 根本不可能去查看是否元件都贴到了板子上.

向几个同学都请教, 他们的设备如果吸嘴未吸取到元件, 贴片任务都会停下来. 这样安全啊.
但是我的设备, 即使开了元件的底部视觉, 还是会空贴.

一位同学说是元件的开底部视觉, 他正忙呢, 就这一条线索.
请一位同学给我远程调试设备, 看他的操作, 没看出来有啥遗漏的操作细节. 最后他没解决.
和另外一位同学讨论, 他说到吸嘴上没元件时, 元件测试对齐时, 就不应该有红框. 这个线索比较醒目.

因为同学的操作我没观察出区别, 就有点怀疑是openpnp软件的bug.
同学推荐, 可以用2023/8/11的测试版, 或者用2023/3/15的开发版.
2023/8/11的测试版, 他用的挺好, 没发现问题.
我现在用的是2022/8/01的开发版.
然后我装了2023/8/11的测试版, 从头开始校验设备, 一次性通过.

试了1天, 找出区别出来了, 是开了元件底部视觉的同时, 还要勾选检测元件size, 这样才行.
和openpnp版本(2022/8/01的开发版/2023/8/11的测试版)没关系, 只不过2023/8/11的测试版功能更多了, 用起来更方便.
在这里插入图片描述
元件尺寸检查有2个选项:

  • 检查外形尺寸, 这个就不用将封装上的焊盘都定义清楚, 只需要将封装上的长/宽填为正确尺寸.
  • 检查焊盘扩展, 这个要将封装上的焊盘都定义清楚, 具体没用, 遇到管脚多的元件再试试.

官方设置, 在吸嘴那里有元件检测, 但是那个元件检测, 使用吸嘴的真空度来判断元件吸取前后, 负压的变化. 这样不靠谱, 多个吸嘴, 用同一个负压源, 如果贴片用气多, 或者不用负压时, 负压保持的不好, 负压值就是不靠谱的. 如果用负压的差值, 也不靠谱.

像我用的这个负压源, 和主板控制没关系. 负压表可以自己设置停止充负压和开始充负压, 自动充负压, 如果在吸取元件时, 正好在充负压, 这就不好去设置吸嘴吸取元件前后的负压值.

像官方的这个吸嘴元件检测(用吸取元件前后的负压变化来判断), 必须主板要能控制和读取当前吸嘴负压值才行. 必须是每个吸嘴都有独立的负压源, 才可能用真空度的差值来元件是否被吸取到了吸嘴上. 而且, 真空泵必须很快(在一个元件被吸取前)就能到达一个稳定的负压值.

怪不得以前买的垃圾桌面贴片机(双帖头), 会有2个微型真空泵.

在这里插入图片描述

同学们用的都是检测元件size的方法, 用的是元件底部视觉, 估计他们的视觉规则默认都是勾了检测size的选项, 所以他们没注意到.

用底部视觉来检测元件尺寸, 不是很精准, 可能测量出来的size, 比元件的实际size大0.5 ~ 1mm, 不过无所谓, e.g. 0603(1.6mm x 0.8mm)吸取了元件时, 可能宽度测量值为1.2mm, 但是没有吸嘴到元件时, 只是一个吸嘴在底部相机的情况下, 测量的宽度尺寸, 就只有0.6mm(估计是测量的吸嘴的外壁). 就通不过底部视觉检测了.

这样就可以解决吸嘴上是否吸取了元件, 解决有无问题.

在网上能查到的元件底部视觉检测的资料(主要是官方资料, 第三方好像没人写这个)不多.
我在设备标定完成时, 做了配置文件的备份. 现在将做过实验的配置删掉, 解开释放备份的配置.
在这个设备刚标定完的环境下, 重现一次"吸嘴是否吸取了元件的检测"的操作.

笔记

回到test_2023_0811刚通过设备标定的状态
在这里插入图片描述
openpnp开机, 设备归零&&视觉归零&&吸嘴(N1, N2)自动标定.
设置丢弃点&&应用. (测试中, 丢弃元件时, 需要定义丢弃点)
在这里插入图片描述
设置P(停靠)点 (贴片任务完成后, 需要回到停靠点)
在这里插入图片描述
设置一种板子上用到的料的散料飞达. 这里用0603, 502吸嘴.
8mm不同编带的厚度不同, 要使用合适高度的压板.
在这里插入图片描述
在散料飞达上吸取一个料.
先走到当前位置看看有没有料, 然后再吸嘴.
在这里插入图片描述
如果是第一次设置, 先将封装的底部视觉选为库存的底部视觉
在这里插入图片描述
将元件的底部视觉从库存底部视觉拷贝为元件独立的底部视觉.
在这里插入图片描述
将检查元件size勾选上, 然后点击元件对齐.
在这里插入图片描述
这里的元件检测方式为BodySize, 我这里默认是None. 如果是None, 元件检测就无效, 会引起空贴.
在这里插入图片描述
点击元件对齐时, 有2个问题.

  1. 元件外形框选的不对, 没有套在元件实际外形上.
  2. 检测元件尺寸时报错, 这是由于原件外形框选的不对引起的.
    修改滑动条, 通过修改阈值和细节尺寸滑动条, 使外形框选到实际元件外形上.
    在这里插入图片描述
    通过实验, 将阈值滑动条和细节尺寸滑动条都移动到右侧, 可以实现元件外形的准确捕获.
    再尝试元件对齐.
    在这里插入图片描述
    此时报错, 说元件的0.8mm那条边, 测量的值出了范围了.
    视觉测量的值是个大概值.
    此时, 要修改测量范围, 修改大一点, 让视觉测量的值在范围内.
    在这里插入图片描述
    将元件size检查的size精度改大一点, 20% => 25%, 接受参数. 再进行元件对齐.
    这里值得注意, 有元件时, 改的size精度, 能让有元件时, 识别到元件外形后, 还要在没有元件时验证一下, 防止size精度过大, 导致没元件时, 误判为有元件. openpnp给出的20%, 好像是个合理的值.应该就在这个值附近才行. 如果元件抓偏了, 改到70%才能在有元件时, 判断到元件外型, 但是无元件时, 就会造成误判. 如果吸嘴偶尔将元件抓偏了, 就丢弃掉, 继续任务, 如果经常性的将元件抓偏, 需要考虑将散料飞达的料槽宽度缩小(8mm的料带对应的料槽宽度可以为8mm或者8.10mm, 不用太大了)到合适宽度, 防止料带随意晃动. 剩下就要考虑吸嘴同心度的问题了. 不过经过了openpnp标定, 吸嘴同心度有补偿的.
    在这里插入图片描述
    可以看到测量的值还比范围大一些. 但是此时的值范围, 已经比20%那时要大一些了.

看到主次基准点和测试目标的尺寸测量的不准, 改为了实际值, 不知道是否对底部相机测量有影响.先改了.
在这里插入图片描述
好像是有影响.
在这里插入图片描述
现在测量出的值, 比以前同样size百分比时, 小一些了, 这样更接近实际值.

小步的修改size检查范围, 直到测量的值在size范围内.

在这里插入图片描述
吸嘴拾取精度的设定.
吸嘴可以设置拾取精度, 标定设备时, 我改为了0.2, 现在改为0.1mm, 引起报错.
在这里插入图片描述
在这里插入图片描述
吸嘴的拾取精度, 指的是吸嘴抓取元件后, 抓取位置和元件形心的偏差.
我这台设备, 这里设置成0.2mm才行. 才能通过元件底部视觉校验.
这个抓取精度所指的形心偏差, 实际上代表了设备能贴的元件的最小尺寸.
在这里插入图片描述
如果吸嘴拾取精度最小只能为0.2mm, 即元件最小为0.4mm, 因为吸嘴必须在元件形心上.
结合电阻厂家的数据表, 可知, 我这台设备由于吸嘴的缘故, 最小只能贴0402的元件. 不过, 暂时这也够了.
现在实验的吸嘴是502, 等后续换501实验时, 看看是否在吸嘴拾取精度为0.1时, 也能通过元件底部视觉校验.

现在抛料, 再吸取几颗料, 看是否都能通过元件底层视觉校验.
试了几次, 重复性挺好, 吸取的聊, 都能检测到元件.

现在模拟没有吸取到料的情况, 进行元件底部视觉检测, 看看是否能察觉到没有检测到吸嘴没有吸到料.
将散料飞达数量归零.
在这里插入图片描述
此时, 用吸嘴取料, 是吸取不到料的(因为料位上没料).
在这里插入图片描述
进行了取料操作后, 就去封装那里进行元件对齐.
在这里插入图片描述
这时, 底部相机十字中只有吸嘴, 但是吸嘴上是空的, 没有吸取到料.
此时, 进行元件对齐, 报错, 说R0603的长边出了范围, 太小了, 长边范围为1.6~1.168, 但是测量的值为0.7mm
这就行了, 现在因为吸嘴的存在, 还是能测量出一个长方形的物体出来. 但是, 测试测量的值要比有元件时小了将近一半.
那现在, 就已经通过元件底部视觉检测, 将吸嘴上有/无元件的情况区分出来了.

现在丢弃元件, 再用N1去吸取散料飞达0603上的料, 重复几次吸嘴上吸取不到元件的情况, 看看重复性怎么样. 现在编带上还有几个连续的料位是空的.

在这里插入图片描述
可以看到, 吸嘴上没有元件时, 元件底部视觉测量的元件边长是吸嘴尖端的外径. 所以我们要使用吸嘴尖端外壁比元件小才能通过这种检测元件size的方法生效.

如果使用的吸嘴尖端外经>元件边长, 就会引起误判和空贴.
试了几次都好使.

补充 - 2023/8/11有bug, 元件底部视觉检测有时检测不到正确的元件外形

在这里插入图片描述
如果元件抓的有点偏, 就无法紧贴元件外形用红框框住. 导致将元件检测的size精度放宽也不行.
两个滑动条(阈值 + 细节size), 越向右边移动, 红框越能靠近元件外形. 但是元件抓的有点偏的情况下, 无论如何调整滑杆, 都无法将元件外形紧密的框住.
我还是回2022/8/1的开发版去玩了.

END

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/68955.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Windows 常用工具系列 8 -- 修改鼠标光标(指针)大小和颜色的快速方法方法】

文章目录 修改方法 上篇文章:Windows 常用工具系列 7 – 禁用win10自带的微软输入法 修改方法 Win键 i 快捷键进入设置页面,然后输入光标... 就会跳出修改鼠标大小与光标颜色的选项。 Win键是在计算机键盘左下角Ctrl和Alt键之间的按键 根据自己的需求…

SQL | 排序检索的数据

3-排序检索的数据 使用order by语句排序检索到的数据。 3.1-排序数据 使用SQL语句返回一个数据表的列。 select prod_id from products; --------------------- | prod_name | --------------------- | 8 inch teddy bear | | 12 inch teddy bear | | 18 inch teddy bear |…

高并发数据抓取实战:使用HTTP爬虫ip提升抓取速度

又到每天一期学习爬虫的时间了,作为一名专业的爬虫程序员,今天要跟你们分享一个超实用的技巧,就是利用HTTP爬虫ip来提升高并发数据抓取的速度。听起来有点高大上?别担心,我会用通俗易懂的话来和你们说,让你…

【论文阅读】基于深度学习的时序预测——FEDformer

系列文章链接 论文一:2020 Informer:长时序数据预测 论文二:2021 Autoformer:长序列数据预测 论文三:2022 FEDformer:长序列数据预测 论文四:2022 Non-Stationary Transformers:非平…

【C++】stack容器

1.stack基本概念 英stk 美stk n.&#xff08;整齐的&#xff09;一堆&#xff1b;<英> 垛&#xff0c;堆&#xff1b;大量&#xff0c;许多&#xff1b;&#xff08;尤指工厂的&#xff09;大烟囱&#xff1b;&#xff08;图书馆的&#xff09;藏书架&#xff0c;双面书架…

C#字符串占位符替换

using System;namespace myprog {class test{static void Main(string[] args){string str1 string.Format("{0}今年{1}岁&#xff0c;身高{2}cm&#xff0c;月收入{3}元&#xff1b;", "小李", 23, 177, 5000);Console.WriteLine(str1);Console.ReadKey(…

科大讯飞星火模型申请与chatgpt 3.5模型以及new bing的对比

科大讯飞星火模型 申请科大讯飞星火认知大模型账号科大讯飞星火认知大模型使用1.界面介绍2. 在编程能力上与chatgpt 3.5对比科大讯飞星火模型chatgpt 3.5模型 3. 在图片生成能力上与new bing对比 总结 申请科大讯飞星火认知大模型账号 注册网址&#xff1a; 科大讯飞星火认知大…

【C++11保姆级教程】delete和default关键字

文章目录 前言一、delete关键字1.1 什么是delete关键字&#xff1f;1.2delete关键字的语法和用法1.3delete关键字的作用和优势 二、default关键字2.1 什么是default关键字&#xff1f;2.2default关键字的语法和用法2.3 default关键字的作用和优势 总结 前言 欢迎来到本教程&am…

竞赛项目 深度学习验证码识别 - 机器视觉 python opencv

文章目录 0 前言1 项目简介2 验证码识别步骤2.1 灰度处理&二值化2.2 去除边框2.3 图像降噪2.4 字符切割2.5 识别 3 基于tensorflow的验证码识别3.1 数据集3.2 基于tf的神经网络训练代码 4 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x…

ASP.NET WEB API通过SugarSql连接MySQL数据库

注意&#xff1a;VS2022企业版可以&#xff0c;社区版可能存在问题。实体名称和字段和数据库中的要一致。 1、创建项目&#xff0c;安装SqlSugarCore、Pomelo.EntityFrameworkCore.MySql插件 2、文件结构 2、appsettings.json { “Logging”: { “LogLevel”: { “Default”: …

张俊林:由ChatGPT反思大语言模型(LLM)的技术精要

转自&#xff1a;https://mp.weixin.qq.com/s/eMrv15yOO0oYQ-o-wiuSyw 导读&#xff1a;ChatGPT出现后惊喜或惊醒了很多人。惊喜是因为没想到大型语言模型&#xff08;LLM,Large Language Model&#xff09;效果能好成这样&#xff1b;惊醒是顿悟到我们对LLM的认知及发展理念&a…

Cesium--一些实验过程中的效果记录

1.一种反射效果&#xff1a; 片元着色器代码 fragmentShaderSource:in vec3 v_positionMC;in vec3 v_positionEC;in vec2 v_st;void main(){czm_materialInput materialInput;vec3 normalEC normalize(czm_normal3D * czm_geodeticSurfaceNormal(v_positionMC, vec3(0.0), ve…