LabVIEW 做 PCB 空板 AOI 检测
LabVIEW做 PCB 空板 AOI 检测461个圆孔 0.164 秒识别率 92.8% 背后的流水线一块 PCB 空板进贴片机前焊盘缺孔、空洞靠谁把关人工目检靠不住LabVIEWIMAQ Vision 给出了答案。预计阅读约 4 分钟01贴片前的最后一道人眼关卡在了漏检上PCB空板也就是还没贴元器件的裸板在进入 SMT 贴片工序之前焊盘、插孔、导通孔都必须是完好的。焊盘缺一个孔、孔里残留杂质、钻刀打偏留下毛边——这些缺陷在视觉上都不起眼可一旦带着缺陷过了回流焊损失的就不只是一块板而是整条产线的节拍和口碑。产线对这个环节的现状很无奈很多工厂还在靠人工目检顶这一道工序。老师傅拿着放大镜一块一块翻效率低是其次漏检率完全看人的状态——连续盯上两小时眼睛一花缺陷就从眼皮底下溜过去了。质检不是没有标准而是人眼的稳定性跟不上标准。尤其在批量换型、赶交期的生产节奏下人工检查的瓶颈会被放得更大。这也是自动光学检测AOI在 PCB 行业越来越普及的根本原因。AOI 的底层逻辑其实很朴素把人眼经验换成相机算法让检查这件事变得可重复、可量化、可追溯。本文介绍的这套基于 LabVIEW 和 IMAQ Vision 的 PCB 空板检测方案就是一个很典型的落地案例——硬件怎么搭、图像怎么处理、缺陷怎么判定一步步拆给你看。02系统架构龙门架 X-Y 平台 环形光源先把图像拍干净机器视觉圈有句老话图像质量决定算法上限打光比调参更重要。这套系统在硬件端就把功夫下在了前面。-运动控制单元高精度 X-Y 移动平台载着待检 PCB 往复移动龙门架上固定 CCD 相机与光源相机不动、板子动逐区扫描保证整块板在视场内被完整、等距地拍到。- 照明单元白色无频闪 LED 环形光源与相机同轴布置把环境光的干扰压到最低焊盘与背景的对比度因此稳定可控。环形光源对圆孔类特征尤其友好成像阴影小、轮廓锐利后续处理省力。- 图像采集单元CCD 相机负责原始图像的采集通过采集卡把画面送入上位机软件。软件端走的是纯 LabVIEW 路线采集、处理、判定、结果输出全部在一个开发环境里闭环省去了跨语言拼接和联调的麻烦。IMAQ Vision 提供了 400 多种现成的图像处理函数从相机取流到特征分析一站式覆盖开发阶段还可以用 NI Vision Assistant 搭建视觉模型、自动生成程序框图先把流程跑通再回到 LabVIEW 里精调。03干货核心图像处理流水线每一步都在解决一个实际问题这套系统的识别能力本质上来自一条环环相扣的流水线。我们把它逐级拆开每一步都有明确的工程目的。###灰度化先把数据减下来相机拿到的彩色图像数据量大、冗余多而后续判定主要依赖亮度分布所以第一步用加权平均法把彩色图压成单通道灰度图。加权平均不是简单求平均而是按人眼对 R/G/B 三通道的敏感度分配权重结果更接近人眼观感后续特征也更稳定。###局部阈值专治光照不均这是整条流水线最见功力的一步。全局阈值最怕光照不均——板面反光、边缘阴影会让同一幅图里该黑的不黑、该白的不白一刀切阈值必然误判。Local Threshold 局部阈值函数不看整幅图的统计而是由每个像素周边邻域的灰度分布自动算出该位置的门限相当于对暗处的暗和亮处的亮各自做了归一化。对 PCB 这种表面反光复杂的对象局部自适应阈值几乎是必选项。###形态学把特征修成干净的连通域二值化之后图像里仍残留噪声和毛刺需要 IMAQ Morphology 函数做膨胀、腐蚀和空洞填充膨胀补齐细小断裂腐蚀削掉边缘毛刺填充操作把焊盘内部的小气孔闭合。三步下来每个待检特征都变成完整、独立的连通域为后面的定量分析铺路。###标定与模板匹配把像素对齐到物理世界相机安装误差和平台运动都会引入畸变与位置偏差标定就是把像素坐标和实际物理尺寸对齐让测出来的面积、半径有物理意义。模板匹配负责定位在图像中找到目标特征的参考位置为后续测量提供稳定基准。###粒子分析与混合判定像不像、对不对双重把关以接插孔检测为例系统用圆形搜索锁定圆孔区域再用粒子分析提取每个圆孔的面积、圆心坐标、半径等参数。缺陷判定采用模板匹配 设计规则的混合法——模板匹配管像不像连通域数量与圆形特征是否符合设计规则管对不对两者互为兜底比单一方法抗干扰能力强得多。结果也说明了这套方案的成色10 片 PCB 空板共 461 个圆孔总识别率达到 92.8%平均单孔检测时间仅 0.164 秒。识别率说明混合判定在真实工况下站得住脚速度则说明逐板扫描不会拖慢产线节拍。04几条能直接复用的工程经验案例做下来沉淀了几条可复用的经验对任何视觉检测集成项目都有参考价值。■打光优先图像质量决定算法上限。先解决光源选型、环形光、无频闪、照度均匀性再谈算法调参顺序不能反。■光照不均就上局部阈值被检表面反光不一致时优先试 Local Threshold 这类局部自适应阈值硬调全局阈值往往事倍功半。■形态学是连通域质量的关键膨胀、腐蚀、填充三步做扎实后面的粒子分析才有干净输入省下的调试时间远超这三行函数本身。■混合判定兜底模板匹配负责像不像设计规则负责对不对两条腿走路单点失效也不会全面崩盘。05写在最后从打光到流水线、再到混合判定这套方案把 AOI 里稳定成像、可靠判定两个核心问题都落到了工程实处。对大多数中小型 PCB 工厂来说与其在检测环节继续拼人力和状态不如让机器把重复劳动接过去——92.8% 的识别率和 0.164 秒的单孔耗时已经把答案写在了那里。

相关新闻

正义之怒主角BD终极指南:三步看懂上千份Build攻略,从开卡到毕业不踩坑

正义之怒主角BD终极指南:三步看懂上千份Build攻略,从开卡到毕业不踩坑

正义之怒主角BD终极指南:三步看懂上千份Build攻略,从开卡到毕业不踩坑 【免费下载链接】Wotr-BD-LR 正义之怒Wotr主角BD搜集 项目地址: https://gitcode.com/GitHub_Trending/wo/Wotr-BD-LR 玩《开拓者:正义之怒》最让人头大的问题是什…

2026/10/6 15:14:40 阅读更多 →
从玩具到工程:LCEL如何构建可靠可维护的AI应用链路

从玩具到工程:LCEL如何构建可靠可维护的AI应用链路

1. 从“玩具”到“工程”:为什么我们需要LCEL如果你最近在折腾LangChain,或者任何基于大语言模型的应用开发,大概率已经听过LCEL(LangChain Expression Language)这个名字。刚开始接触时,我也有过疑惑&…

2026/10/8 20:12:54 阅读更多 →
微信聊天记录导出完整指南:用 WeChatMsg 把每一句对话永久留住

微信聊天记录导出完整指南:用 WeChatMsg 把每一句对话永久留住

微信聊天记录导出完整指南:用 WeChatMsg 把每一句对话永久留住 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/…

2026/9/25 7:32:35 阅读更多 →

最新新闻

Claude Code 在 Win11 报 401?把 ANTHROPIC_API_KEY 与 Base URL 改到 TaoToken

Claude Code 在 Win11 报 401?把 ANTHROPIC_API_KEY 与 Base URL 改到 TaoToken

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 22:20:08 阅读更多 →
SQL Server 游标不能 ORDER BY 排序的解决办法:用 TaoToken 统一 Key 打通排查链路

SQL Server 游标不能 ORDER BY 排序的解决办法:用 TaoToken 统一 Key 打通排查链路

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 22:20:08 阅读更多 →
TaoToken 流式查询实战:MyBatis Cursor 分页大数据查询

TaoToken 流式查询实战:MyBatis Cursor 分页大数据查询

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 22:20:08 阅读更多 →
从零实现全连接神经网络:Python手写代码与核心原理解读

从零实现全连接神经网络:Python手写代码与核心原理解读

简介:这份资源是一份使用 Python 与 NumPy 从零搭建全连接神经网络的入门实现,面向想理解深度学习底层原理的初学者与进阶开发者,解决“只会调用框架、不懂内部机制”的问题。资源共含 7 个 py 文件,压缩包仅 4KB,代码…

2026/10/10 22:20:08 阅读更多 →
基于CNN与OpenCV的Python车牌识别实战:从环境搭建到模型调优

基于CNN与OpenCV的Python车牌识别实战:从环境搭建到模型调优

简介:这份资源面向计算机视觉入门者、机器学习课程学习者以及需要完成毕设或课设的学生,提供一套基于CNN与OpenCV的车牌识别完整实现方案,用于解决复杂场景下车牌定位与字符识别准确率不足的问题。压缩包共约2000个文件,以1994张j…

2026/10/10 22:20:08 阅读更多 →
微电网仿真必看:三机并联风光储系统Simulink建模全流程

微电网仿真必看:三机并联风光储系统Simulink建模全流程

做微电网仿真课题的人,十个里有八个会卡在“风光储怎么并联”这一步。我拿到“三机并联风光混合储能并网系统”这个题目时,起初也以为就是把光伏、风机、储能各搭一个模型,往交流母线上一怼就行。真跑到波形收敛那一关才发现,三台…

2026/10/10 22:19:07 阅读更多 →

日新闻

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

1. 从“卫星轨道分类”这个标题说起:为什么值得花时间搞懂第一次接触“卫星轨道分类”这个概念,很多人会觉得它离自己很远——不就是天上的星星怎么转吗?但如果你正在做航天任务规划、遥感数据接收、星座设计,甚至只是准备一场航天…

2026/10/10 0:00:39 阅读更多 →
Spring AOP 核心原理与实战:从概念到日志切面落地

Spring AOP 核心原理与实战:从概念到日志切面落地

1. 从一个真实痛点说起:为什么你的代码里到处都是重复逻辑刚入行那会儿,我写过一个用户管理模块,注册、登录、改密码、注销四个接口。每个接口里都塞了几乎一样的日志打印、参数校验、事务开启和提交。当时觉得没什么,能跑就行。直…

2026/10/10 0:00:40 阅读更多 →
Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

简介:这是一套面向计算机相关专业学生与项目实战学习者的Python数据采集与分析可视化完整项目,以Boss直聘岗位数据为对象,适合用作毕业设计、课程设计或期末大作业。资源包共38个文件,约246KB,以13个py源码文件为核心&…

2026/10/10 0:00:40 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 11:14:25 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 1:36:08 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 11:14:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 5:23:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 10:38:42 阅读更多 →