openpnp - 解决“底部相机高级校正成功后, 开机归零时,吸嘴自动校验失败的问题“

文章目录

    • openpnp - 解决"底部相机高级校正成功后, 开机归零时,吸嘴自动校验失败的问题"
    • 概述
    • 笔记
    • 问题现象1
    • 问题现象2
    • 原因分析
    • 现在底部相机和吸嘴的位置偏差记录
    • 修正底部相机位置
    • 现在再看看NT1在底部相机中的位置
    • 开机归零,看看是否能通过所有校验
    • 配置备份很重要
    • END

openpnp - 解决"底部相机高级校正成功后, 开机归零时,吸嘴自动校验失败的问题"

概述

和厂家同学讨论,他连轴的齿隙校正都不做。

经过和他的多次讨论,和自己的实验体会,才知道,因为他是做完设备初步校正后,就开始贴片。当然不需要做齿隙校正。
但是,只做设备的初步校验,设备的贴片精度和JOG控制精度要差很多。

必须做到底部相机高级校正之后,才能将设备的贴片精度和JOG控制精度提高到设备本身能达到的最高等级。
如果想让底部相机高级校正通过,就必须将齿隙校正做了,UI上有提示。

做了底部相机高级校正之后,和贴片相关的机械零件(顶部相机,底部相机,X, Y, Z, C1, C2)的安装偏差,就都被openpnp提供的补偿修正了。

我这边遇到一个新问题(以前也遇到过,不过不是每次都出现) : 底部相机高级校正后,用openpnp归零,home点校验没问题。但是2个吸嘴的自动开机校验都失败了。

以前遇到这种情况,因为自己是小白,也不知道咋处理好,只能很蠢的重新标定设备,一次标定就3个小时。标定完,这个问题也不一定会消失。

可怕的是,一旦增加了吸嘴,在NT1/NT2上装的不是设备标定时用的吸嘴的时候,还有可能会出现开机归零后的吸嘴校验失败问题。
现在用了openpnp很长时间了,一直在研究和体会openpnp的各种报错的现象。现在遇到问题,都能具体问题具体分析,确定解决问题的正确方向,然后确定出正确的具体解决方法,然后实验搞定。

被openpnp折腾怕了,在设备机械/电气零件都不移动的情况下,会在标定的每个重要节点结束后,退出openpnp, 做配置备份。
这个问题是可以重现的,这问题就好找了。
在这里插入图片描述

笔记

问题现象1

在这里插入图片描述
这个情况是相机曝光太低了,图像识别不出吸嘴。如果人眼就分辨不出吸嘴, opencv也不能分辨。
在这里插入图片描述
将底部相机曝光调节成既能看清吸嘴,又不至于过亮的值,我这里是-8.
这个曝光值不确定,和环境光的强弱有关系。白天和黑天的效果有点不一样,有可能是我的底部相机灯光不是很强引起的。

现在再用openpnp归零试试,是否能开机校验全部(一个home点,2个吸嘴)通过。

问题现象2

在这里插入图片描述
home点校验过了。
但是2个吸嘴还是校验失败

原因分析

在设备的初步校验中,有一步是底部相机初步校验。
就是将NT1移动到底部相机十字的中间开始的校验。
这步会记录底部相机的位置。
我很确定的记得,当时,是很准确的讲NT1吸嘴内部的中间对准了底部相机十字。
现在明显底部相机十字和吸嘴中心,差了不少。
出现这种情况的原因: 因为过了底部相机高级校验,有补偿存在,那么底部相机初步校验时的位置,应该发生了改变。
现在要尝试在当前情况(底部相机高级校正通过后)下, 修正底部相机的位置(通过顶部相机中心看到的底部相机中心要重合),然后再试试开机归零

现在底部相机和吸嘴的位置偏差记录

将吸嘴选为NT1, 然后在底部相机视图上右击,选择将当前吸嘴移动到底部相机中心。
在这里插入图片描述
将标尺刻度换为0.1mm, 可以看出,吸嘴中心和底部相机十字中心确实有偏差。
以底部相机十字为参考点,吸嘴X方向偏差为0.3mm, Y方向偏差0.5mm

修正底部相机位置

关掉顶部相机灯光,打开底部相机灯光。
用JOG面板,在顶部相机视图中,将顶部相机移动到底部相机的中心。

这个对齐必须在顶部相机中对齐,否则就不对了,因为吸嘴的偏移和顶部相机是固定的。

对齐时,用标尺不太好看,最好将光标改为圆圈,改合适的圆圈大小,可以套住顶部相机中看到的底部相机镜头的圆环。
这样对齐,比较准。

在这里插入图片描述
打开设备设置 => 相机 => 底部相机 => 位置
点击"学习"按钮,记录底部相机在顶部相机坐标中的位置,然后应用参数。

在这里插入图片描述

现在再看看NT1在底部相机中的位置

确认选择当前吸嘴是NT1
将NT1用底部相机的右键菜单功能, 移动到底部相机中心。
在这里插入图片描述
在这里插入图片描述
可以看到,现在NT1吸嘴内部中心区域已经在底部相机中心附近了,虽然还不是很精确,但是只要底部相机十字在吸嘴的内部区域中间就可以。
现在看看NT2和底部相机十字的位置关系。
在这里插入图片描述
现在底部相机十字也在NT2吸嘴内部区域中间。
这说明,底部相机的中心位置已经调整成功了,且定位精确性还可以。

开机归零,看看是否能通过所有校验

在这里插入图片描述
可以看到,归零后,home点校验成功。
吸嘴校验时,底部相机十字也始终在吸嘴内部区域的边缘位置移动,没有校验失败时哪种离的很远的感觉。
在这里插入图片描述
2个吸嘴都自动校验成功了。
在这里插入图片描述
且在校验完成后,可以看到底部相机十字最后停在NT2的中心。
那说明,这个问题的解决思路是对的,思路很清晰。
到此,这个问题(底部相机校正成功后, 开机归零时,吸嘴自动校验失败)被成功快速的搞定 😛

配置备份很重要

修正后的这个配置,就可以作为后续操作的基础配置了,备份一下不吃亏。
在openpnp中关机,退出openpnp, 进行配置文件的压缩备份。
在这里插入图片描述
备份的好处多多。
如果以后出现问题,就可以回到以前的重要节点上实验,看看问题是否存在。
如果改错了配置,也可以通过配置文件的比对,大致确定不对在哪里。
如果不做备份,万一配置文件坏了或不对了(自己配置失误或手误改了参数),就得重新标定设备,白白的浪费时间。

END

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

python csv库

python csv库 水一水又是一篇,乐 读取 import csv # 打开 CSV 文件 with open(example.csv, moder, newline) as file: csv_reader csv.reader(file) # 读取文件头(可选) headers next(csv_reader) print(f"Headers: {heade…

golang将指针传给cgo后还能被回收吗?

问题&#xff1a; 如果把golang分配的变量&#xff0c;其指针通过cgo传给c&#xff0c;并被c存储&#xff0c;那这个变量还能被gc回收吗&#xff1f; 实验代码&#xff1a; test_memory_leak.go package main/* #include <stdlib.h> #include <string.h> #incl…

基于docker-compose编排部署微服务快速开发框架

1. 规划节点 节点规划&#xff0c;见表1。 表1 节点规划 IP主机名节点10.24.2.10masterdocker-compose节点 2. 基础准备 Docker和Docker Compose已安装完成&#xff0c;将提供的软件包Pig.tar.gz上传至master节点/root目录下并解压。 案例实施 1. 基础环境准备 &#x…

渗透测试-百日筑基—SQL注入篇时间注入绕过HTTP数据编码绕过—下

day8-渗透测试sql注入篇&时间注入&绕过&HTTP数据编码绕过 一、时间注入 SQL注入时间注入&#xff08;也称为延时注入&#xff09;是SQL注入攻击的一种特殊形式&#xff0c;它属于盲注&#xff08;Blind SQL Injection&#xff09;的一种。在盲注中&#xff0c;攻击…

模型评估:Accuracy、Precision、Recall、F1、ROC曲线、AUC、PR曲线

Accuracy & Precision & Recall & F1 准确率 Accuracy A c c u r a c y T T T F A L L Accuracy \frac{TT TF}{ALL} AccuracyALLTTTF​ 1.分类器到底分对了多少&#xff1f; 精确率 Precision 2.返回的图片中正确的有多少&#xff1f; 召回率 / 查全率 …

了解光耦合器输入输出关系---腾恩科技

光耦合器&#xff0c;也称为光隔离器&#xff0c;是电子电路中必不可少的元件&#xff0c;主要用于在隔离部分之间传输信号&#xff0c;同时防止电噪声或高压影响敏感元件。其独特的设计使它们能够在没有直接电接触的情况下&#xff0c;弥合不同电压域之间的差距。在本文中&…

解决docker拉取readeck镜像报Error response from daemon: toomanyrequests问题

readeck 是一个内容中心&#xff0c;目前已支持中文翻译 这是本地化部署后的效果&#xff1a; 原命令为&#xff1a; docker run --rm -ti -p 8000:8000 -v readeck-data:/readeck codeberg.org/readeck/readeck:latest Unable to find image codeberg.org/readeck/readeck:la…

LeetCode 热题 100之普通数组

1.最大子数组和 思路分析&#xff1a;这个问题可以通过动态规划来解决&#xff0c;我们可以使用Kadane’s Algorithm&#xff08;卡登算法&#xff09;来找到具有最大和的连续子数组。 Kadane’s Algorithm 的核心思想是利用一个变量存储当前的累加和 currentSum&#xff0c;并…

【高中生讲机器学习】22. 信息论基础:信息熵、交叉熵、相对熵

创建时间&#xff1a;2024-10-16 首发时间&#xff1a;2024-10-24 最后编辑时间&#xff1a;2024-10-24 作者&#xff1a;Geeker_LStar FIRST OF ALL!!! 2024.10.24&#xff01;&#xff01; 1024 快乐&#xff01;&#xff01;&#xff01; 你好呀~这里是 Geeker_LStar 的人工…

IDEA初探:深入理解 Structure 功能

一、Structure - 类视图 Structure 是 IDEA 中的一个视图工具&#xff0c;它提供了对当前文件中结构元素的快速访问。通过 Structure&#xff0c;我们可以方便地查看和导航到代码中的各个部分&#xff0c;从而提高代码编辑和浏览的效率。 1.1 基本概念 Structure 视图以树形结…

Spring Boot:植物健康监测的智能先锋

摘要 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施在技术上已逐步成熟。本文介绍了植物健康系统的开发全过程。通过分析植物健康系统管理的不足&#xff0c;创建了一个计算机管理植物健康系统的方案。文章介绍了植物健康系统的系统分析部分&…

一文带你搞懂RabbitMQ 如何保证消息不丢失

RabbitMQ使用场景&#xff1a; 异步发送&#xff08;验证码、短信、邮件&#xff09;MySQL和Redis&#xff0c;ES之间的数据同步分布式事务削峰填谷 什么情况下消息容易丢失&#xff1a; 消息未到达交换机消息未到达队列队列中消息丢失消费者未接收到消息 解决消息丢失的方法…

python查询并安装项目所依赖的所有包

引言 如果需要进行代码的移植&#xff0c;肯定少不了在另一台pc或者服务器上进行环境的搭建&#xff0c;那么首先是要知道在已有的工程的代码中用到了哪些包&#xff0c;此时&#xff0c;如果是用人工去一个一个的代码文件中去查看调用了哪些包&#xff0c;这个工作甚是繁琐。…

js面试问题笔记(一)

一.热门js面试 1.简述同步和异步的区别? 同步: 浏览器访问服务器请求,用户看到页面刷新 ,重新发请求,等请求完,页面刷新,新内容出现,用户看到新内容,进行下一步操作 异步: 浏览器访问服务器请求,用户正常操作,浏览器后端进行请求,等请求完,页面不刷新,新内容也会出现,用户看到…

【HarmonyOS Next】原生沉浸式界面

背景 在实际项目中&#xff0c;为了软件使用整体色调看起来统一&#xff0c;一般顶部和底部的颜色需要铺满整个手机屏幕。因此&#xff0c;这篇帖子是介绍设置的方法&#xff0c;也是应用沉浸式效果。如下图&#xff1a;底部的绿色延伸到上面的状态栏和下面的导航栏 UI 在鸿蒙…

Grid View 网格视图

GoTo DevExpress Data Grid 数据网格 Grid View 网格视图 GridView 是默认的数据网格视图&#xff0c;它以传统的表格格式显示数据。View 将数据源记录呈现为行&#xff0c;将数据源字段呈现为列。数据值显示在各个单元格中。 以下文档包含有关此表格布局的主要元素的深入信…

多线程——线程安全的集合类

目录 前言 一、多线程环境使用 ArrayList 1.进行加锁 2.使用 SynchronizedList 类 3.使用 CopyOnWriteArrayList 类 二、多线程环境使用队列 1.进行加锁 2.使用阻塞队列 三、多线程环境使用哈希表 1.Hashtable 2.ConcurrentHashMap &#xff08;1&#xff09;缩小锁…

vue文件转AST,并恢复成vue文件(适用于antdv版本升级)

vue文件转AST&#xff0c;并恢复成vue文件---antdvV3升级V4 vue文件转AST&#xff0c;重新转回原文件过程如何获取项目路径读取项目文件&#xff0c;判断文件类型分别获取vue文件 template js&#xff08;vue2和vue3&#xff09;处理vue 文件template部分处理vue script部分uti…

【线下+线上会议|国内外双会场】2024年第四届数字化社会与智能系统国际学术会议(DSInS 2024)-悉尼/郑州双会场

2024年第四届数字化社会与智能系统国际学术会议&#xff08;DSInS 2024&#xff09;-悉尼/郑州双会场 2024 4th International Conference on Digital Society and Intelligent Systems 会议官网&#xff1a;www.dsins.org 2024 4th International Conference on Digital Soc…

龙迅#LT89101 适用于 MIPI DSI/CSI摄像头和 LVDS 中继信号延长功能,分辨率可支持 1080P@60HZ!

1. 描述 Lontium LT89101 是一款高性能 MIPI DSI/CSI-2 和 LVDS 中继器&#xff0c;用于汽车系统应用的移动显示或摄像头信号整形。 LT89101采用先进的 CMOS 工艺制造&#xff0c;并采用小外形 7.5mm x 7.5mm QFN64 封装。该封装符合 RoHS 标准&#xff0c;额定工作温度范围为 …