CN114443045A - 基于dll的pcb板参考点的动态加入方法及系统 - Google Patents
基于dll的pcb板参考点的动态加入方法及系统 Download PDFInfo
- Publication number
- CN114443045A CN114443045A CN202111599574.1A CN202111599574A CN114443045A CN 114443045 A CN114443045 A CN 114443045A CN 202111599574 A CN202111599574 A CN 202111599574A CN 114443045 A CN114443045 A CN 114443045A
- Authority
- CN
- China
- Prior art keywords
- reference point
- graph
- dll
- image
- pcb
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01N—INVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
- G01N21/00—Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
- G01N21/84—Systems specially adapted for particular applications
- G01N21/88—Investigating the presence of flaws or contamination
- G01N21/95—Investigating the presence of flaws or contamination characterised by the material or shape of the object to be examined
- G01N21/956—Inspecting patterns on the surface of objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01N—INVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
- G01N21/00—Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
- G01N21/84—Systems specially adapted for particular applications
- G01N21/88—Investigating the presence of flaws or contamination
- G01N21/95—Investigating the presence of flaws or contamination characterised by the material or shape of the object to be examined
- G01N21/956—Inspecting patterns on the surface of objects
- G01N2021/95638—Inspecting patterns on the surface of objects for PCB's
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2115/00—Details relating to the type of the circuit
- G06F2115/12—Printed circuit boards [PCB] or multi-chip modules [MCM]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Geometry (AREA)
- Life Sciences & Earth Sciences (AREA)
- Chemical & Material Sciences (AREA)
- Analytical Chemistry (AREA)
- Biochemistry (AREA)
- General Health & Medical Sciences (AREA)
- Immunology (AREA)
- Pathology (AREA)
- Evolutionary Computation (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于DLL的PCB板参考点的动态加入方法及系统,方法S1,设置参考点的ID属性值;S2,读取PCB板的CAD文件,解析CAD元素;S3,编写图形参考点计算程序;S4,编写图像参考点计算程序;S5,编写参考点的使用程序;S6,生成DLL动态链接库文件;S7,建立ID与DLL的映射,通过ID来选择不同参考点生成方法。本发明克服了传统多次修改程序代码方式对设备和人力等资源的浪费,采用生成DLL的思想,大幅度减少了参考点的编程工作量,可以方便快捷地实现参考点的动态加入,提高了参考点的测试效率。
Description
技术领域
本发明属于PCB板的自动光学检测(AOI)领域,涉及一种基于DLL的PCB板参考点的动态加入方法及系统。
背景技术
PCB(Printed Circuit Board)印制电路板,又称印刷线路板,是重要的电子部件,是电子元器件的支撑体,是电子元器件电气相互连接的载体。在PCB板的自动光学检测中,PCB板图形图像的对位是一个不可或缺的步骤。传统的参考点生成方法均由工程师按照经验根据PCB板的实际元素,针对性地编写代码完成。并且参考点生成方法的加入是通过在程序中增加新的函数方法的形式实现。显而易见,传统方法会让工程师需要对每一块PCB板进行代码的编写,会带来很高的工作量,降低了工作效率;还会不利于程序的管理,增加了代码的复杂性,每次增加一个新的参考点方法都需要对系统进行程序编写以及编译生成新版本。
发明内容
为解决现有技术中存在的上述问题,本发明的技术方案为:一种基于DLL的PCB板参考点的动态加入方法,包括以下步骤:
S1,设置参考点的ID属性值;
S2,读取PCB板的CAD文件,解析CAD元素;
S3,编写图形参考点计算程序;
S4,编写图像参考点计算程序;
S5,编写参考点的使用程序;
S6,生成DLL动态链接库文件;
S7,建立ID与DLL的映射,通过ID来选择不同参考点生成方法。
优选地,所述S3具体包括以下步骤:
S31,设计一个用于计算参考点的图形的特征参数表;
S32,遍历PCB板里的图形轮廓,得到满足图形特征参数表里特征的图形;
S33,利用获得的图形计算图形参考点。
优选地,所述S4具体包括以下步骤:
S41,对图形和图像进行粗对位,然后获取图形参考点区域在PCB板扫描图像中的区域图像;
S42,使用轮廓追踪算法提取得到像素级的图形轮廓;
S43,将像素轮廓进行亚像素化,得到亚像素轮廓;
S44,将亚像素轮廓拟合成对应的图形;
S45,利用拟合后的图形计算得到图像参考点。
优选地,所述S6具体包括以下步骤:
S61,组合图形参考点计算程序和图像参考点计算程序,得到一个完整的参考点生成函数接口;
S62,提取参考点的使用程序代码,封装为参考点的使用函数接口;
S63,使用编译器生成DLL文件。
基于上述目的,本发明还提供了一种基于DLL的PCB板参考点的动态加入系统,采用上述方法,包括:
资料解析模块:用于执行S2的读取PCB的CAD文件,解析CAD元素;
图形搜索模块:用于执行S31的设计一个用于计算参考点的图形的特征参数表和S32的遍历PCB板里的图形轮廓,得到满足图形特征参数表里特征的图形;
图形参考点计算模块:用于执行S33的利用获得的图形计算图形参考点;
图形图像快速匹配模块:用于执行S41的对图形和图像的进行粗对位,然后获取图形参考点区域在PCB板扫描图像中的区域图像;
图像功能模块:用于执行S4的编写图像参考点计算程序里对图像的轮廓提取操作、亚像素功能、拟合函数功能;
图像参考点计算模块:用于执行S45的利用拟合后的图形计算得到图像参考点;
DLL模块:用于执行S6的生成DLL动态链接库以及S7的建立ID与DLL的映射,通过ID来选择不同参考点生成方法。
与现有技术相比,本发明对于一个新加入的PCB板子如何动态加入参考点生成方法的问题,该方法克服了传统多次修改程序代码方式对设备和人力等资源的浪费,采用生成DLL(Dynamic Link Library,动态链接库,是一个包含可由多个程序,同时使用的代码和数据的库)的思想,大幅度减少了参考点的编程工作量,可以方便快捷地实现参考点的动态加入,提高了参考点的测试效率。赋予每一种参考点生成方法一个ID属性值,利用编译器将代码生成DLL文件,通过ID属性选择不同的DLL加入程序中,采用DLL的方式实现参考点的动态加入。
本发明可以有效地提高工作效率、降低程序复杂性。参考点生成方法可以通过生成DLL文件的形式,将更新应用于各个模块,而不会影响AOI程序的其他部分。通过DLL文件的形式,可以手动或者自动地根据PCB板的特点选择参考点生成方法DLL,不需要再频繁编写代码。
附图说明
图1为本发明方法实施例的基于DLL的PCB板参考点的动态加入方法的步骤流程图;
图2为应用本发明方法实施例的基于DLL的PCB板参考点的动态加入方法的PCB自动光学检测系统图;
图3为本发明系统实施例的基于DLL的PCB板参考点的动态加入系统的界面图;
图4为本发明方法实施例的基于DLL的PCB板参考点的动态加入方法的参考点自动生成流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
相反,本发明涵盖任何由权利要求定义的在本发明的精髓和范围上做的替代、修改、等效方法以及方案。进一步,为了使公众对本发明有更好的了解,在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。
方法实施例1
参见图1,所示为本发明一实施例的基于DLL的PCB板参考点的动态加入方法,包括以下步骤:
S1,设置参考点的ID属性值;
S2,读取PCB板的CAD文件,解析CAD元素;
S3,编写图形参考点计算程序;
S4,编写图像参考点计算程序;
S5,编写参考点的使用程序;
S6,生成DLL动态链接库文件;
S7,建立ID与DLL的映射,通过ID来选择不同参考点生成方法。
S3具体包括以下步骤:
S31,设计一个用于计算参考点的图形的特征参数表;
S32,遍历PCB板里的图形轮廓,得到满足图形特征参数表里特征的图形;
S33,利用获得的图形计算图形参考点。
S4具体包括以下步骤:
S41,对图形和图像进行粗对位,然后获取图形参考点区域在PCB板扫描图像中的区域图像;
S42,使用轮廓追踪算法提取得到像素级的图形轮廓;
S43,将像素轮廓进行亚像素化,得到亚像素轮廓;
S44,将亚像素轮廓拟合成对应的图形;
S45,利用拟合后的图形计算得到图像参考点。
S6具体包括以下步骤:
S61,组合图形参考点计算程序和图像参考点计算程序,得到一个完整的参考点生成函数接口;
S62,提取参考点的使用程序代码,封装为参考点的使用函数接口;
S63,使用编译器生成DLL文件。
本发明还提供了一种基于DLL的PCB板参考点的动态加入系统,采用上述方法,包括:
资料解析模块:用于执行S2的读取PCB的CAD文件,解析CAD元素;
图形搜索模块:用于执行S31的设计一个用于计算参考点的图形的特征参数表和S32的遍历PCB板里的图形轮廓,得到满足图形特征参数表里特征的图形;
图形参考点计算模块:用于执行S33的利用获得的图形计算图形参考点;
图形图像快速匹配模块:用于执行S41的对图形和图像的进行粗对位,然后获取图形参考点区域在PCB板扫描图像中的区域图像;
图像功能模块:用于执行S4的编写图像参考点计算程序里对图像的轮廓提取操作、亚像素功能、拟合函数功能;
图像参考点计算模块:用于执行S45的利用拟合后的图形计算得到图像参考点;
DLL模块:用于执行S6的生成DLL动态链接库以及S7的建立ID与DLL的映射,通过ID来选择不同参考点生成方法。
图2为本发明实施例提供的PCB自动光学检测简单系统,在一个PCB自动光学检测简单系统中,通过CAD软件设计PCB板的标准图形,根据设计加工生产PCB板,PCB板在CCD成像系统下可生成图像。通过分别计算图形和图像上的参考点来校正图形的位置和缩放。将图像和校正后的图形进行比对,可以发现PCB板的短路、断路、铜渣等错误情况,完成检测。在所述PCB电路板的光学检测系统中,本发明实现所述参考点的动态生成方法。
本发明系统由资料解析模块、图形搜索模块、图形参考点计算模块、图形图像快速匹配模块、图像功能模块、图像参考点计算模块、DLL模块组成。在本实例中,资料解析模块以及图像功能模块由AOI总程序提供,对于不同的PCB板子,这两个模块的代码维持不变。
系统实施例中,参见图3,基于该系统的操作界面由基本信息、参数输入区、图形代码输入区、图像代码输入区、保存操作组成。
基本信息包含ID和名字,为每一种参考点生成方法指定标识,通过id可动态地选择参考点。
参数输入区由图形参数区、图形传递图像参数区、图像参数区组成。图形参数区用于辅助图形搜索模块,其中的每一个方框用来输入所需的参数值,数据类型为小数或者整数;图形传递图像参数区用于数据传递,其中的方框分为参数的类型以及参数的名称,数组类型为字符串类型;图像参数去用于辅助图像参考点计算模块,其中的每一个方框是用来输入所需的参数值,数据类型为小数或者整数。
图形代码输入区用于输入用户编写的图形代码,包括图形搜索模块和图形参考点计算模块的代码;图像代码输入区用于输入用户编写的图像代码,包括图形图像快速匹配模块、图像功能模块和图像参考点计算模块代码;参考点使用方式区用于输入用户编写的利用参考点对位的代码,该实例案例的参考点使用方式为默认方式。上述输入区代码语言均支持C++。
点击保存按钮会生成DLL文件,对应DLL模块。过程参见图4,将参数区里的数据解析到图形代码和图像代码中,根据ID和名字生成一个新的接口,在接口里整合图形代码和图像代码,得到一个完整的参考点生成函数接口;提取参考点的使用程序代码,封装为参考点的使用函数接口;使用编译器生成DLL文件。最后在程序中建立ID与DLL的映射,通过ID来选择不同的参考点生成方法。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种基于DLL的PCB板参考点的动态加入方法,其特征在于,包括以下步骤:
S1,设置参考点的ID属性值;
S2,读取PCB板的CAD文件,解析CAD元素;
S3,编写图形参考点计算程序;
S4,编写图像参考点计算程序;
S5,编写参考点的使用程序;
S6,生成DLL动态链接库文件;
S7,建立ID与DLL的映射,通过ID来选择不同参考点生成方法。
2.根据权利要求1所述的基于DLL的PCB板参考点的动态加入方法,其特征在于,所述S3具体包括以下步骤:
S31,设计一个用于计算参考点的图形的特征参数表;
S32,遍历PCB板里的图形轮廓,得到满足图形特征参数表里特征的图形;
S33,利用获得的图形计算图形参考点。
3.根据权利要求1所述的基于DLL的PCB板参考点的动态加入方法,其特征在于,所述S4具体包括以下步骤:
S41,对图形和图像进行粗对位,然后获取图形参考点区域在PCB板扫描图像中的区域图像;
S42,使用轮廓追踪算法提取得到像素级的图形轮廓;
S43,将像素轮廓进行亚像素化,得到亚像素轮廓;
S44,将亚像素轮廓拟合成对应的图形;
S45,利用拟合后的图形计算得到图像参考点。
4.根据权利要求1所述的基于DLL的PCB板参考点的动态加入方法,其特征在于,所述S6具体包括以下步骤:
S61,组合图形参考点计算程序和图像参考点计算程序,得到一个完整的参考点生成函数接口;
S62,提取参考点的使用程序代码,封装为参考点的使用函数接口;
S63,使用编译器生成DLL文件。
5.一种基于DLL的PCB板参考点的动态加入系统,采用权利要求1-4之一所述基于DLL的PCB板参考点的动态加入方法,其特征在于,包括:
资料解析模块:用于执行S2的读取PCB的CAD文件,解析CAD元素;
图形搜索模块:用于执行S31的设计一个用于计算参考点的图形的特征参数表和S32的遍历PCB板里的图形轮廓,得到满足图形特征参数表里特征的图形;
图形参考点计算模块:用于执行S33的利用获得的图形计算图形参考点;
图形图像快速匹配模块:用于执行S41的对图形和图像的进行粗对位,然后获取图形参考点区域在PCB板扫描图像中的区域图像;
图像功能模块:用于执行S4的编写图像参考点计算程序里对图像的轮廓提取操作、亚像素功能、拟合函数功能;
图像参考点计算模块:用于执行S45的利用拟合后的图形计算得到图像参考点;
DLL模块:用于执行S6的生成DLL动态链接库以及S7的建立ID与DLL的映射,通过ID来选择不同参考点生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111599574.1A CN114443045A (zh) | 2021-12-24 | 2021-12-24 | 基于dll的pcb板参考点的动态加入方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111599574.1A CN114443045A (zh) | 2021-12-24 | 2021-12-24 | 基于dll的pcb板参考点的动态加入方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114443045A true CN114443045A (zh) | 2022-05-06 |
Family
ID=81363215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111599574.1A Pending CN114443045A (zh) | 2021-12-24 | 2021-12-24 | 基于dll的pcb板参考点的动态加入方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114443045A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI836466B (zh) * | 2022-06-10 | 2024-03-21 | 伊斯酷軟體科技股份有限公司 | 印刷電路板資料自動化處理方法以及電子裝置 |
CN118175201A (zh) * | 2024-03-12 | 2024-06-11 | 奥特酷智能科技(南京)有限公司 | 一种mpu应用与mcu实现dds通信的系统及方法 |
-
2021
- 2021-12-24 CN CN202111599574.1A patent/CN114443045A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI836466B (zh) * | 2022-06-10 | 2024-03-21 | 伊斯酷軟體科技股份有限公司 | 印刷電路板資料自動化處理方法以及電子裝置 |
CN118175201A (zh) * | 2024-03-12 | 2024-06-11 | 奥特酷智能科技(南京)有限公司 | 一种mpu应用与mcu实现dds通信的系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112181416B (zh) | 一种从视觉稿直接生成ui代码的方法及装置 | |
CN103294598B (zh) | 一种源代码检查方法及装置 | |
CN114443045A (zh) | 基于dll的pcb板参考点的动态加入方法及系统 | |
CN113127771A (zh) | 应用埋点方法、装置、计算设备和系统 | |
CN107679276B (zh) | 电力系统潮流接线图的生成方法、装置及电子设备 | |
CN107704382A (zh) | 面向Python的函数调用路径生成方法和系统 | |
CN1959684A (zh) | 混合信号电路模拟器 | |
CN111208998A (zh) | 数据可视化大屏自动布局的方法、装置及存储介质 | |
CN114239479A (zh) | 电路模块复用设计方法、装置、计算机设备及存储介质 | |
CN101364174B (zh) | 印刷电路板测试文件生成系统及方法 | |
CN104346502A (zh) | 一种基于odb++文件转化为可编辑pcb版图的方法 | |
CN111400169A (zh) | 一种自动化生成用于测试软硬件的网表文件的方法及系统 | |
CN117057318A (zh) | 领域模型生成方法、装置、设备以及存储介质 | |
CN1523660A (zh) | 集成电路设计的双向技术系统 | |
CN109840201B (zh) | Ui测试方法、装置、电子设备及计算机可读存储介质 | |
CN112015405A (zh) | 界面布局文件的生成方法、界面生成方法、装置及设备 | |
CN111475970B (zh) | 一种结构模型派生系统及方法 | |
CN112560413A (zh) | 基于配置模式的报表扩展方法、装置和设备 | |
CN113536407B (zh) | 基于单元设备构造项目图纸的方法、装置及存储介质 | |
CN112906344B (zh) | 一种片上仿真信息实时提取方法 | |
CN115495362A (zh) | 生成测试代码的方法、装置、存储介质及计算机设备 | |
CN109741417B (zh) | 一种图形文件的生成方法、装置、计算设备及存储介质 | |
CN113419959A (zh) | 一种生成覆盖率验证报告的方法和设备 | |
CN117632772B (zh) | 一种ui自动化测试的方法 | |
CN100343854C (zh) | 利用图形界面快速完成端口连接的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB03 | Change of inventor or designer information |
Inventor after: Yan Yi Inventor after: Huang Guofeng Inventor after: Sun Danfeng Inventor after: Wu Huifeng Inventor before: Yan Yi Inventor before: Huang Guofeng Inventor before: Sun Danfeng Inventor before: Wu Huifeng |
|
CB03 | Change of inventor or designer information |