当前位置: 首页 > news >正文

openpnp - 设备矫正的零碎记录

文章目录

    • openpnp - 设备矫正的零碎记录
    • 概述
    • 笔记
    • 设备内部不能有任何强干扰源
    • 相机就选100W像素的就行, 没有特殊要求
    • openpnp软件的选择
    • 视觉归位必须禁止
    • 轴的赤隙矫正不用做
    • 运行openpnp软件的计算机, 必须是台式机
    • 校验完成后, 数据占用的体积
    • END

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. 备份好.
以后可以观察正常贴片后, 多出哪些可以删除的文件.

END

相关文章:

openpnp - 设备矫正的零碎记录

文章目录 openpnp - 设备矫正的零碎记录概述笔记设备内部不能有任何强干扰源相机就选100W像素的就行, 没有特殊要求openpnp软件的选择视觉归位必须禁止轴的赤隙矫正不用做运行openpnp软件的计算机, 必须是台式机校验完成后, 数据占用的体积END openpnp - 设备矫正的零碎记录 概…...

Linux内核中的链表、红黑树和KFIFO

lLinux内核代码中广泛使用了链表、红黑树和KFIFO。 一、 链表 linux内核代码大量使用了链表这种数据结构。链表是在解决数组不能动态扩展这个缺陷而产生的一种数据结构。链表所包含的元素可以动态创建并插入和删除。链表的每个元素都是离散存放的,因此不需要占用连…...

【C++】做一个飞机空战小游戏(二)——利用getch()函数实现键盘控制单个字符移动

[导读]本系列博文内容链接如下: 【C】做一个飞机空战小游戏(一)——使用getch()函数获得键盘码值 【C】做一个飞机空战小游戏(二)——利用getch()函数实现键盘控制单个字符移动 在【C】做一个飞机空战小游戏(一)——使用getch()函数获得键盘码值一文中介绍了如何利用…...

Android 设备兼容性使用(详细版)

经典好文推荐,通过阅读本文,您将收获以下知识点: 一、设备兼容性分类 二、硬件设备兼容 三、软件 APP 兼容 四、兼容不同语言 五、兼容不同分辨率 六、兼容不同屏幕方向布局 七、兼容不同硬件 Feature 八、兼容不同SDK平台 一、设备兼容性分类 Android设计用于运行在许多不同…...

React 中的常见 API 和生命周期函数

目录 useStateuseEffectuseRefdangerouslySetInnerHTML生命周期函数 constructorcomponentDidMountstatic getDerivedStateFromPropsshouldComponentUpdatecomponentDidUpdatecomponentWillUnmount useState useState 是 React 的一个 Hook,用于在函数组件中添加…...

神经网络中遇到的 python 函数(Pytorch)

1.getattr() 函数用于返回一个对象属性值。 def getattr(object, name, defaultNone): # known special case of getattr"""getattr(object, name[, default]) -> valueGet a named attribute from an object; getattr(x, y) is equivalent to x.y.When a …...

分布式事务及解决方案

1、分布式事务 分布式事务就是在一个交易中各个服务之间的相互调用必须要同时成功或者同时失败,保持一致性和可靠性。在单体项目架构中,在多数据源的情况下也会发生 分布式事务问题。本质上来说,分布式事务就是为了保证不同数据库的数据一致性…...

【宏定义】——编译时校验

文章目录 编译时校验功能描述代码实现示例代码正常编译示例编译错误示例预处理之后的结果 代码解析!!estruct {int:-!!(e); }sizeof(struct {int:-!!(e); }) 参考代码 编译时校验 功能描述 用于在编译时检查一个条件是否为真,如果条件为真则会编译失败&#xff0c…...

C#学习系列之System.Windows.Data Error: 40报错

C#学习系列之System.Windows.Data Error: 40报错 前言报错内容解决总结 前言 在用户界面使用上,代码运行没有问题,但是后台报错,仔细研究了报错内容,解决问题,所以记录一下。 报错内容 System.Windows.Data Error: 4…...

【java安全】RMI

文章目录 【java安全】RMI前言RMI的组成RMI实现Server0x01 编写一个远程接口0x02 实现该远程接口0x03 Registry注册远程对象 Client 小疑问RMI攻击 【java安全】RMI 前言 RMI全称为:Remote Method Invocation 远程方法调用,是java独立的一种机制。 RM…...

rcu链表综合实践

基础知识 rcu-read copy update的缩写。和读写锁起到相同的效果。据说牛逼一点。对于我们普通程序员,要先学会使用,再探究其内部原理。 链表的数据结构: struct list_head {struct list_head *next, *prev; };还有一种:struct h…...

odoo16-python框架-动作

总结 1 模型和视图的 设计之美 view_ids, view_id,view_mode 最终目的都是为了生成views, 也就是视图. 模型是死的,像男人,一成不变 视图像女人,千变万化, 姿态万千 一阴一阳之谓道,设计之美又在这里得到了体现 2 所有的动作都可以通过web界面来配置 可以通过在"设…...

微信小程序——同一控件的点击与长按事件共存的解决方案

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…...

selenium自动化-获取元素属性信息

在写自动化过程中我们会想验证自己的代码是否正确,比如登录之后,通过用户名或其他信息来证明你登录成功,或者点击链接后,是否会跳转新的页面。通过获取元素属性信息,可以解决我们的疑惑。 一、获取内容对象的内容信息 …...

LabVIEW开发小型减阻试验平台

LabVIEW开发小型减阻试验平台 湍流摩擦在粘性流体的阻力中起着重要作用,减少湍流摩擦是流体力学领域的热门话题之一。在油气管道的长距离流体输送中,泵站提供的几乎所有动力都用于克服流体的胫骨摩擦。在流体输送领域,船舶的蒙皮摩擦阻力占总…...

解决分类任务中数据倾斜问题

大家好,在处理文本分类任务时,基准测试流行的自然语言处理架构的性能是建立对可用选项的理解的重要步骤。在这里,本文将深入探讨与分类相关的最常见的挑战之一——数据倾斜。如果你曾经将机器学习(ML)应用于真实世界的…...

Vue3 word如何转成pdf代码实现

🙂博主:锅盖哒 🙂文章核心:word如何转换pdf 目录 1.前端部分 2.后端部分 在Vue 3中,前端无法直接将Word文档转换为PDF,因为Word文档的解析和PDF的生成通常需要在后端进行。但是,你可以通过Vu…...

fpga--流水灯

fpga流水灯的设计 思路:外部时钟频率50mhz,若要实现每隔0.5s闪烁一次,则使用内部计数器计数到24999999拉高一个周期电平,当电平被拉高的时候,进行LED灯电平的设置,每次检测到高电平,就进行一位…...

51单片机:数码管和矩阵按键

目录 一:动态数码管模块 1:介绍 2:共阴极和共阳极 A:共阴极 B:共阳极 C:转化表 3:74HC138译码器 4:74HC138译码器控制动态数码管 5:数码管显示完整代码 二:矩阵按键模块 1:介绍 2:原理图 3:矩阵按键代码 一:动态数码管模块 1:介绍 LED数码管:数码管是一种…...

Django + Xadmin 数据列表复选框显示为空,怎么修复这个问题?

问题描述: 解决方法: 后续发现的报错: 解决方案: 先根据报错信息定位到源代码: 在该文件顶部写入: from django.core import exceptions然后把: except models.FieldDoesNotExist修改为&…...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统

医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上,开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识,在 vs 2017 平台上,进行 ASP.NET 应用程序和简易网站的开发;初步熟悉开发一…...

Debian系统简介

目录 Debian系统介绍 Debian版本介绍 Debian软件源介绍 软件包管理工具dpkg dpkg核心指令详解 安装软件包 卸载软件包 查询软件包状态 验证软件包完整性 手动处理依赖关系 dpkg vs apt Debian系统介绍 Debian 和 Ubuntu 都是基于 Debian内核 的 Linux 发行版&#xff…...

《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)

CSI-2 协议详细解析 (一) 1. CSI-2层定义(CSI-2 Layer Definitions) 分层结构 :CSI-2协议分为6层: 物理层(PHY Layer) : 定义电气特性、时钟机制和传输介质(导线&#…...

智能在线客服平台:数字化时代企业连接用户的 AI 中枢

随着互联网技术的飞速发展,消费者期望能够随时随地与企业进行交流。在线客服平台作为连接企业与客户的重要桥梁,不仅优化了客户体验,还提升了企业的服务效率和市场竞争力。本文将探讨在线客服平台的重要性、技术进展、实际应用,并…...

第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明

AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...

Unit 1 深度强化学习简介

Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库,例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体,比如 SnowballFight、Huggy the Do…...

是否存在路径(FIFOBB算法)

题目描述 一个具有 n 个顶点e条边的无向图,该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序,确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数,分别表示n 和 e 的值(1…...

稳定币的深度剖析与展望

一、引言 在当今数字化浪潮席卷全球的时代,加密货币作为一种新兴的金融现象,正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而,加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下,稳定…...

Web 架构之 CDN 加速原理与落地实践

文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 &#xf…...

JAVA后端开发——多租户

数据隔离是多租户系统中的核心概念,确保一个租户(在这个系统中可能是一个公司或一个独立的客户)的数据对其他租户是不可见的。在 RuoYi 框架(您当前项目所使用的基础框架)中,这通常是通过在数据表中增加一个…...