首页> 中国专利> 一种印制电路板检测用治具的孔位设计方法、装置及系统

一种印制电路板检测用治具的孔位设计方法、装置及系统

摘要

本申请涉及一种印制电路板检测用治具的孔位设计方法、装置及系统,其包括S1、获取对应于当前印制电路板的检测点的实际点;S2、按照潜在衍生策略,生成若干个潜在点;S3、按照干涉排除策略,生成第二预留集合;S4、按照合并新生策略,生成新生点;S5、基于当前的第二预留集合生成最终预留集合;S6、获取若干个对应于最终预留集合内的各个点的预留孔,获取若干个对应于各个实际点的预留孔。本申请具有减少治具后期的修改维护成本,提高治具的可发展性的效果。

著录项

  • 公开/公告号CN112528588A

    专利类型发明专利

  • 公开/公告日2021-03-19

    原文格式PDF

  • 申请/专利权人 深圳市微特精密科技股份有限公司;

    申请/专利号CN202110173035.5

  • 发明设计人 赵雄杰;杨丹;韩雪涛;孙德滔;

    申请日2021-02-08

  • 分类号G06F30/39(20200101);G06F115/12(20200101);

  • 代理机构

  • 代理人

  • 地址 518000 广东省深圳市宝安区沙井街道沙头社区创新路东塘工业区2号一层

  • 入库时间 2023-06-19 10:19:37

说明书

技术领域

本申请涉及印制电路板检测治具设计的领域,尤其是涉及一种印制电路板检测用治具的孔位设计方法、装置及系统。

背景技术

随着电子工业的发展,对电子系统的可靠性的要求也越来越高,在印制电路板的批量生产中,为了确保出厂的电路板满足相应的规格或参数要求,厂家通常会在生产线的末端加入印制电路板检测设备,以保证印制电路板的出场质量,尤其是在MLB(多层印制板)的生产中。常见的印制电路板检测包括有ICT(在线测试)和FCT(功能测试),而无论是ICT检测设备还是FCT检测设备,待检测的印制电路板上都会设置有若干个测试点,在检测过程中还都需要使用检测探针和治具;治具一般包括有用于承载检测探针的针载板,针载板会预先设置有若干个与各个测试点一一对应的检测孔,在印制电路板检测时,各个检测探针可穿过检测孔并与对应的测试点接触。

参照图1,目前,在现有的治具设计过程中,治具供应商需要针对客户产品主板MLB进行设计。针对上述中的相关技术,申请人认为,在MLB进行更新迭代之后,MLB上的测试点的分布也会发生变化,而为了达到相同的ICT或FCT检测目的,治具供应商又需要针对客户产品主板MLB更新后的版本进行治具重新设计,这个重新设计的过程既耗费人力及时间,又会增加额外的物料成本,且随着MLB更新迭代的版本越来越多,重新设计的难度以以及耗费的人力物力成本也会越来越多,导致治具后期的修改维护成本较大,影响治具的可发展性。

发明内容

本申请目的一是提供一种印制电路板检测用治具的孔位设计方法,具有提高治具的可发展性的特点。

本申请的上述申请目的一是通过以下技术方案得以实现的:

一种印制电路板检测用治具的孔位设计方法,用于在治具上设计对应于当前印制电路板的检测点的检测孔和可对应于更新后印制电路板的检测点的预留孔,采用以下步骤,

S1、获取对应于当前印制电路板的检测点的实际点,生成包含所有实际点的实际集合;

S2、按照潜在衍生策略,基于实际集合中的各个点的坐标生成若干个潜在点,生成包含所有潜在点的初始集合;

S3、按照干涉排除策略,基于实际集合中的各个点和预设的禁区模型,从初始集合中获取干涉点,基于干涉点更新初始集合,生成第二预留集合;

S4、按照合并新生策略,基于预设的最小间距值Dmin从第二预留集合中获取可与其他潜在点合并的潜在点,基于获取的潜在点生成新生点,并基于新生点更新第二预留集合;

S5、基于当前的第二预留集合生成最终预留集合;

S6、获取若干个对应于最终预留集合内的各个点的预留孔,获取若干个对应于各个实际点的预留孔。

通过采用上述技术方案,检测点为MLB在ICT检测或FCT检测中需要进行检测的点,而实际集合则是包含了所有实际点的集合。由于各个实际点对应于当前MLB各个检测点,获取实际集合相当于预设各个检测点在治具上的分布,后期治具的针载板可根据各个实际点的分布打出若干个与各个检测点一一对应的孔位。每一个检测点均可以衍生出若干个潜在点,在生成了包含所有潜在点的初始集合中,需要通过按照干涉排除策略,排除初始集合中可能会与任意实际点或任意禁区模型发生干涉的潜在点,从而对初始集合进行更新迭代,最后生成最终预留集合。通过最终预留集合中的潜在点,可以获取若干个预留孔,并且将该部分的预留孔保存成数据发送给MLB设计人员。这部分预留孔会在治具的针载板上打出,但是在当前的ICT检测或FCT检测中并不需要用到,且在未来ICT检测或FCT检测中并不一定会完全用到,该部分的预留孔可以为MLB设计人员在后期对MLB进行更新时作为参考,即MLB设计人员可参考预留孔的位置进行检测孔的排布,只要更新了位置的检测孔与原来的预留孔相对应,则说明治具无需重新设计针载板,利用对应的预留孔即可进行测试操作,进而减少治具后期的修改维护成本,提高治具的可发展性。

可选的,在S3的步骤中,包括,

S31、按照第一干涉评估策略,从初始集合中获取与各个实际点发生干涉的实际干涉点,基于实际干涉点更新初始集合,生成第一预留集合;

S32、按照第二干涉评估策略,从第一预留集合中获取与禁区模型发生干涉的区域干涉点,基于区域干涉点更新第一预留集合,生成第二预留集合。

通过采用上述技术方案,实际干涉点指的是所有潜在点中可能会与任意一实际点发生干涉的潜在点,第一干涉评估策略指的是检测潜在点与各个实际点之间的距离,基于该距离来来评估该潜在点是否为实际干涉点,而将所有实际干涉点从初始集合中排除后,可以获取第一预留集合。区域干涉点指的是所有潜在点中可能会与任意一禁区模型发生干涉的潜在点,第二干涉评估策略指的是检测潜在点形成的预留孔与各个禁区模型之间是否存在重叠部分,来评估该潜在点是否为区域干涉点,而将所有区域干涉点排除后,可以获得第二预留集合。第二预留集合内的所有潜在点均与实际干涉点或禁区模型之间发生干涉的风险较小,进而使潜在点的获取更为合理。

可选的,在S31的步骤中,包括,

S311、生成可跟随对比次数更新的第一确定子集,生成可跟随对比结果更新的实际干涉子集;

S312、判断第一确定子集在初始集合的补集中是否存在可抽取的潜在点,若是则执行S313;若否则执行S317;

S313、从第一确定子集在初始集合的补集中抽取待对比点;

S314、获取待对比点与各个实际点之间的距离D1,判断各个距离D1是否满足实际干涉条件,若是则执行S315;若否则执行S316;

S315、将当前的待对比点加入第一确定子集和实际干涉子集,并返回S312;

S316、将当前的待对比点加入第一确定子集,并返回S312;

S317、获取实际干涉子集在初始集合中的补集为第一预留集合。

通过采用上述技术方案,第一确定子集用于统计已经完成评估的潜在点,实际干涉子集用于统计评估结果为实际干涉点的潜在点;随着评估操作的反复进行,第一确定子集内的点和实际干涉子集内的点可跟随评估次数进行更新。待对比点是通过其与各个实际点之间的距离判断是否满足实际干涉条件,当待对比点与实际点距离过近时,将待对比点作为实际干涉点并排除。

可选的,在S32的步骤中,包括,

S321、获取对应于当前印制电路板的非检测区域的禁区模型,生成包含所有禁区模型的禁区总集;

S322、生成可跟随检测次数更新的第二确定子集,生成可跟随检测结果更新的区域干涉子集;

S323、判断第二确定子集在第一预留集合的补集中是否存在可抽取的潜在点,若是则执行S324;若否则执行S328;

S324、预设边缘值Nb,从第二确定子集在第一预留集合的补集中抽取待检测点,获取边缘值Nb个到待检测点之间距离为预设的孔径值r的边缘点;

S325、判断各个边缘点是否满足禁区干涉条件,若是则执行S326;若否则执行S327;

S326、将当前的待检测点加入第二确定子集和区域干涉子集,并返回S323;

S327、将当前的待检测点加入第二确定子集,并返回S323;

S328、获取区域干涉子集在第一预留集合中的补集为第二预留集合。

通过采用上述技术方案,禁区模型指的是基于非检测区域在坐标系中建立的模型,禁区模型的数量根据MLB的原有的非检测区域的数量而定。第二确定子集用于统计已经完成评估的潜在点,区域干涉子集用于统计区域干涉点,随着评估操作的反复进行,已经完成评估的潜在点会越来越多,区域干涉点可能也会越来越多,因此第二确定子集以及区域干涉子集可跟随评估的进行而更新。通过在一待检测点为圆心孔径值r为半径可获取对应于预留孔的预留模型,而各个边缘点则相当于是预留模型经过的点,各个边缘点可代表预留孔与禁区模型进行比较,评估对应的预留模型是否会与禁区模型具有重叠部分。

可选的,在S325的步骤中,包括,

S3251、生成若干个包含相邻两个边缘点的外沿子集,生成包含所有外沿子集的模拟总集;

S3252、判断任意一外沿子集是否与任意一禁区模型满足禁区相交条件,若是则执行S326;若否则执行S327;

在S3252的步骤中,包括,

S32521、判断当前的模拟总集中是否存在可被抽取的外沿子集,若是则执行S32522;若否则执行S327;

S32522、从模拟总集中抽取外沿子集,依次判断外沿子集是否与任意一禁区模型满足禁区相交条件,若是则执行S326;若否则执行S327;

S325221、重置当前的禁区总集;

S325222、判断当前的禁区总集中是否存在可被抽取的禁区模型,若是则执行S325222;若否则执行S327;

S325323、从禁区总集中抽取一个禁区模型,获取该禁区模型的所有端点,生成若干个包含相邻两个端点的边界子集,预设排序规则,基于排序规则排列所有边界子集;

S325324、按照直线式判断策略,依次判断外沿子集与各个边界子集是否满足潜在相交条件,若是则执行S325325;若否则将禁区模型从禁区总集中排除,并执行S325324;

S325325、抽取满足潜在相交条件的边界子集,按照逆直线式判断策略,判断外沿子集与边界子集是否满足逆相交条件,若是则执行S326;若否则并执行S325324。

通过采用上述技术方案,在坐标系上以待检测点为圆心并以孔径值r为半径可以获取预留模型,各个边缘点为均预留模型经过的点,若将每一组相邻的两个边缘点用线连接,取得的线段趋近于预留模型的边线,通过检测该边线是否与禁区模型具有相交部分,可判断预留孔与非检测区域具有重叠部分的区域,完成对潜在点的评估。判断两个边缘点之间的连线与两个端点之间的连线是否相交,可预设一经过两个端点的直线模型,先判断两个边缘点是否位于该直线模型的两侧,若是则表示两个边缘点可能位于两个端点之间线段的两侧或者该线段延长线的两侧;此时应预设一经过两个边缘点的直线模型,再判断两个端点是否位于该直线模型的两侧,若是则表示两个边缘点之间的连线与两个端点之间的连线相交。

可选的,在S4的步骤中,包括,

S41、基于预设的最小间距值Dmin判断当前的第二预留集合中是否至少存在两个可合并的潜在点,若是则执行S42;若否则执行S5;

S42、基于可合并的潜在点生成新生点,基于新生点更新第二预留集合,并返回S41。

通过采用上述技术方案,最小间距值Dmin是潜在点与实际点之间的最小距离,也是任意两潜在点之间的最小距离;当任意两个潜在点之间的距离小于最小间距值Dmin时,两潜在点会合并成新生点并被新生点取代;新生点会更新至第二预留集合内作为新的潜在点,并参与与其他潜在点之间的比较,直到第二预留集合内不存在可合并的潜在点。

可选的,在S41的步骤中,包括,

S411、生成可更新的孤岛子集;

S412、判断孤岛子集在第二预留集合中的补集是否存在可抽取的潜在点,若是则执行S413;若否则执行S5;

S413、生成可更新的缓存子集;

S414、从孤岛子集在第二预留集合的补集中抽取第一配对点;

S415、判断从第一配对点和缓存子集在第二预留集合的补集中是否存在可抽取的潜在点,若是则执行S416;若否则将当前的第一配对点加入孤岛子集,重置缓存子集为空集,并返回S414;

S416、从第一配对点和缓存子集在第二预留集合的补集中抽取第二配对点;

S417、判断第一配对点和第二配对点是否满足合并条件,若是则执行S421;若否则执行S418;

S418、将第二配对点加入缓存子集,并返回S414。

在S42的步骤中,包括,

S421、按照中点生成策略,基于第一配对点和第二配对点获取新生点;

S422、将新生点加入第二预留集合,将第一配对点和第二配对点从第二预留集合中排除,并返回S412。

通过采用上述技术方案,当新生点生成后,新生点会更新至第二预留集合内作为新的潜在点,并参与与其他潜在点之间的比较,直到第二预留集合内不存在可合并的潜在点。若孤岛子集在第二预留集合中的补集中仍有潜在点可以被收取,则表示第二预留集合内的所有潜在点还没完全比较完;若该补集中没有可被抽取的潜在点,则表示所有潜在点已经比较完。

缓存子集中包含内的点为已经与当前的第一配对点比较过的点,第一配对点和缓存子集在第二预留集合的补集中存在可被抽取的点,则当前的第一配对点还未与各个潜在点比较完成;若该补集中不存在可被抽取的点,则代表当前的第一配对点已经与各个潜在点比较完成。

由于第一配对点若满足合并条件会直接从第一预留合集中排除,因此若第一配对点仍然保留与其他潜在点进行比较的机会,则表示该第一配对点在之前的所有距离比较中均不可以被合并,在此基础上,若该第一配对点已经与其他所有潜在点完成距离对比,则表示该第一配对点与所有其他潜在点之间不满足合并的条件,可将该第一配对点作为合格的潜在点加入孤岛子集中,并进行下一个第一配对点的选取。

本申请目的二是提供一种印制电路板检测用治具的孔位设计装置,具有提高治具的可发展性的特点。

本申请的上述申请目的二是通过以下技术方案得以实现的:

一种印制电路板检测用治具的孔位设计装置,包括,

实际生成模块,用于获取对应于当前印制电路板的检测点的实际点,生成包含所有实际点的实际集合;以及,

潜在衍生模块,用于基于实际集合中的各个点的坐标生成若干个潜在点,生成包含所有潜在点的初始集合;以及,

干涉排除模块,用于基于实际集合中的各个点和预设的禁区模型,从初始集合中获取干涉点,基于干涉点更新初始集合,生成第二预留集合;以及,

合并新生模块,用于基于预设的最小间距值Dmin从第二预留集合中获取可合并的潜在点,基于获取的潜在点生成新生点,并基于新生点更新第二预留集合;以及,

最终生成模块,用于基于当前的第二预留集合生成最终预留集合;以及,

孔位输出模块,用于获取若干个对应于最终预留集合中的各个点的预留孔,获取若干个对应于各个实际点的检测孔。

本申请目的三是提供一种印制电路板检测用治具的孔位设计系统,具有提高治具的可发展性的特点。

本申请的上述申请目的三是通过以下技术方案得以实现的:

一种印制电路板检测用治具的孔位设计系统,包括存储器和处理器,所述存储器上存储有能够被处理器加载并执行上述方法的计算机程序。

本申请目的四是提供一种计算机可读存储介质,能够存储相应的程序,具有提高治具的可发展性的特点。

本申请的上述申请目的四是通过以下技术方案得以实现的:

一种计算机可读存储介质,存储有能够被处理器加载并执行上述方法的计算机程序。

附图说明

图1是相关技术中的治具设计流程示意图。

图2是本申请的印制电路板检测用治具的孔位设计方法流程示意图。

图3是本申请的方法中衍生潜在点步骤的流程示意图。

图4是本申请的衍生潜在点步骤的状态示意图。

图5是本申请的方法中评估实际干涉点步骤的流程示意图。

图6是本申请的评估实际干涉点步骤的状态示意图。

图7是本申请的方法中评估区域干涉点步骤的流程示意图。

图8是本申请的评估区域干涉点步骤的状态示意图。

图9是本申请的方法中对比禁区模型步骤的流程示意图。

图10是本申请的方法中直线式判断步骤的流程示意图。

图11是本申请的方法中生成新生点步骤的流程示意图。

图12是本申请的生成新生点步骤的状态示意图。

图13是本申请的印制电路板检测用治具的孔位设计装置的模块示意图。

图中,1、实际生成模块;2、潜在衍生模块;3、干涉排除模块;4、合并新生模块;5、最终生成模块;6、孔位输出模块。

具体实施方式

参照图1,相关技术中,在MLB(多层印制板)的ICT或FCT检测中,检测设备需要配合治具和检测探针。MLB上通常会设置有若干个能够与电子元件电气连接的检测点以及若干个不需要进行检测的非检测区域,其中检测点能够与检测探针相抵触以进行电气连接;非检测区域一般为MLB上焊接有电子元件的区域或不允许检测探针扎入的区域。治具通常设置有用于承载各个检测探针的针载板,而为了使各个检测探针可穿设于针载板并与对应的检测点接触,针载板开设有若干个供检测探针穿设的检测孔,各个检测孔需要与各个检测点一一对应。因此,在治具制造生产之前,MLB设计者会将MLB的测试点数据发送给治具供应商,治具供应商需要针对MLB的测试点数据进行设计。但是,当治具设计生产制造出来之后,治具上各个检测孔的分布难以发生改变;若客户产品的MLB进行了更新迭代,MLB上的测试点的分布也可能会发生变化,此时旧的治具难以满足客户的需求,为了达到相同的ICT或FCT检测目的,治具供应商又需要针对客户产品主板MLB更新后的版本进行治具重新设计,导致治具后期的修改维护成本较大,治具的可发展性较差。

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

下面结合说明书附图2-13对本申请实施例作进一步详细描述。

实施例一

本申请实施例提供一种印制电路板检测用治具的孔位设计方法,所述方法的主要流程描述如下。

参照图2,

S1、获取对应于当前印制电路板的检测点的实际点TPx,生成包含所有实际点TPx的实际集合,预设最小间距值Dmin。

其中,检测点为MLB在ICT检测或FCT检测中需要进行检测的点,而实际集合则是包含了所有实际点TPx的集合。由于各个实际点TPx对应于当前MLB各个检测点,获取实际集合相当于预设各个检测点在治具上的分布,后期治具的针载板可根据各个实际点TPx的分布打出若干个与各个检测点一一对应的孔位。在本实施例中,预设的实际点TPx的初始数量为m。

最小间距值Dmin指的是在治具上任意两个孔位之间应预留的最小距离,在实际检测应用中,若两孔位之间过小,可能会导致探针难以进行配合并且增大短路的几率,因此若需要判断治具上的孔位分布是否合理,最小间距值Dmin可作为最为基础的判断标准,设计者可根据实际使用场景预设合理的最小间距值Dmin。

参照图2和图3,S2、按照潜在衍生策略,基于实际集合中的各个点的坐标生成若干个潜在点Pn,生成包含所有潜在点Pn的初始集合。

其中,潜在点Pn指的是可能可以与更新后MLB的检测点相对应的点,是潜在的检测点,而治具针载板上基于潜在点Pn设置的孔位,相当于是为位置变化后的检测点预留孔位的预留孔。潜在衍生策略指的是基于当前的检测集合中的各个点进行衍生并得到各个潜在点Pn的方法;初始集合指的是包含所有潜在点Pn的集合,通过对初始集合进行更新可得到更有价值的潜在点Pn。

需要注意的是,潜在点Pn不一定为更新后的MLB上必定会使用的检测点,潜在点Pn的设置可为MLB设计人员提供参考数据,只要更新后的MLB的检测点对应设置有潜在点Pn,则说明治具无需重新设计针载板,利用潜在点Pn预留的孔位即可进行测试操作。

参照图3和图4,在S2的步骤中,包括,

S21、预设初始值Nc。

其中,初始值Nc为以实际集合中的每一个点衍生出的潜在点Pn的数量。

S22、获取实际集合中各个实际点TPx的坐标,基于实际点TPx的坐标,生成满足衍生条件的衍生模型,衍生条件为模型经过的各个点到实际点TPx的距离均大于或等于最小间距值Dmin。

其中,衍生条件用于保证衍生模型经过的各个潜在点Pn与对应的该衍生模型的实际点TPx之间的距离均大于或等于最小间距值Dmin,可排除当前的实际点TPx与衍生出来的各个潜在点Pn之间的可能存在干涉。

S23、从衍生模型中获取初始值Nc个相邻两点之间距离大于或等于最小间距值Dmin的点作为潜在点Pn,生成包含所有潜在点Pn的初始集合。

由于对应于同一实际点TPx的相邻两潜在点Pn之间的距离大于或等于最小间距值Dmin,可排除由同一实际点TPx衍生出的各个潜在点Pn之间的干涉。

衍生模型实际上是一圆心为实际点TPx的圆周模型,为了减少对应于任意一实际点TPx的潜在点Pn干涉其他的实际点TPx的风险,应尽量减少衍生模型的半径,在此基础上为了能从同一实际点TPx中获得足够多的潜在点Pn,应使衍生模型的半径等于最小间距值Dmin,并且使从相邻两潜在点Pn之间的距离也等于最小间距值Dmin,从而使实际点TPx与任意两个相邻潜在点Pn之间的连线可形成一个边长为最小间距值Dmin的等边三角形,可以得出本实施例中的最优初始值Nc为6,且各个潜在点Pn围绕对应的实际点TPx呈60°等间隔圆周阵列分布。

具体的,可获取各个实际点TPx的坐标(X(TPx),Y(TPx)),x=1、2、…、m。

预设各个潜在点Pn的坐标(X(Pn),Y(Pn)),并预设公式(1)和公式(2),

将实际集合内的各个实际点TPx的坐标(X(TPx),Y(TPx))代入(1)和(2)后,可以获得各个潜在点Pn的坐标(X(Pn),Y(Pn))。

参照图2,S3、按照干涉排除策略,基于实际集合中的各个点和预设的禁区模型,从初始集合中获取干涉点,基于干涉点更新初始集合,生成第二预留集合。

其中,禁区模型指的是对应于MLB上非检测区域的模型,禁区模型可通过计算非检测区域的各个端点ed的坐标获得。

干涉排除策略指的是找到从初始集合中会对实际点TPx或禁区模型进行干涉的干涉点,将这部分干涉点从初始集合中排除后,可对初始集合进行更新并获得第二预留集合,第二预留集合相当于排除不需要的潜在点Pn后得到的包含所有潜在点Pn的集合。

在本实施例中,由于干涉排除策略综合考虑潜在点Pn分别对实际点TPx的影响和对禁区模型的影响,因此干涉点包括有对应于实际点TPx的实际干涉点和对应于禁区模型的区域干涉点。

参照图2,在S3的步骤中,包括:

S31、按照第一干涉评估策略,从初始集合中获取与各个实际点TPx发生干涉的实际干涉点,基于实际干涉点更新初始集合,生成第一预留集合。

其中,实际干涉点指的是所有潜在点Pn中可能会与任意一实际点TPx发生干涉的潜在点Pn,因此是需要从初始集合中排除的点。第一干涉评估策略指的是检测潜在点Pn与各个实际点TPx之间的距离,基于该距离来评估潜在点Pn是否会对任意一实际点TPx产生干涉的方法;第一干涉评估策略可从初始集合中选取出实际干涉点,令初始集合中排除实际干涉点,可更新初始集合并获取第一预留集合。

参照图5,在S31的步骤中,包括:

S311、生成可跟随对比次数更新的第一确定子集,生成可跟随对比结果更新的实际干涉子集。

其中,第一确定子集用于统计已经完成评估的潜在点Pn,第一确定子集的初始集为空集;随着评估操作的反复进行,已经完成评估的潜在点Pn会越来越多,因此第一确定子集可跟随评估次数进行更新;实际干涉子集用于统计实际干涉点,实际干涉子集的初始集为空集;随着评估操作的进行,实际干涉点可能会越来越多,因此第一确定子集可跟随评估结果进行更新。

S312、判断第一确定子集在初始集合的补集中是否存在可抽取的潜在点Pn,若是则执行S313;若否则执行S317。

其中,第一确定子集在初始集合的补集相当于初始集合中还没有被抽取评估过的各个潜在点Pn,该补集若还存在可抽取的潜在点Pn,则说明初始集合内的所有潜在点Pn还没完全抽取完;若不存在可抽取的潜在点Pn,则说明初始集合内的潜在点Pn都已经评估完。具体的,若第一确定子集在初始集合的补集不为空集,则执行S313;若第一确定子集在初始集合的补集为空集,则执行S317。

S313、从第一确定子集在初始集合的补集中抽取待对比点。

其中,待对比点指的是在初始集合中除去已完成评估的潜在点Pn后,剩下的各个潜在点Pn中的任意一个。

S314、获取待对比点与各个实际点TPx之间的距离D1,判断各个距离D1是否满足实际干涉条件,若是则执行S315;若否则执行S316。

其中,实际干涉条件指的是距离D1是否小于最小间距Dmin,若距离D1小于最小间距Dmin则表示待对比点可能会对其中一实际点TPx造成干涉,将待对比点评估为实际干涉点;若距离D1大于或等于最小间距Dmin,则表示待对比点的评估结果为合格。

参照图5,在S314的步骤中,包括,

S3141、生成可更新的比对子集。

其中,比对子集用于统计在当前的待对比点的评估操作中,已经参与过评估的实际点TPx的集合,比对子集的初始集为空集;随着当前待对比点的评估的进行,参与过评估的实际点TPx的数量会越来越多,使比对子集内实际点TPx也越来越多;而当所有的实际点TPx都完成当前的待对比点的评估后,比对子集会重置为空集,等待下一个待对比点的评估。

S3142、判断比对子集在实际集合的补集中是否存在可抽取的实际点TPx,若是则执行S3143;若否则执行S3145。

其中,若比对子集在实际集合的补集中还存在可抽取的实际点TPx,则说明实际集合中还有实际点TPx没有参与过当前的评估;若该补集中不存在可抽取的实际点TPx,则说明待对比点已经与所有实际点TPx完成评估。

具体的,若比对子集在实际集合的补集不为空集,则执行S3143;若比对子集在实际集合的补集为空集,则执行S3145。

S3143、从比对子集在实际集合的补集中抽取实际点TPx,计算该实际点TPx与抽取点之间的距离D1,判断距离D1是否满足实际干涉条件,若是则执行S315;若否则执行S3144。

参照图5和图6,具体的,可获取被抽取的实际点TPx的坐标(X(TPx),Y(TPx)),x=1、2、…、m,

以及待对比点的坐标(X(Pn),Y(Pn)),并预设公式(3)、公式(4)和公式(5),

其中,△ds为实际点TPx与待对比点之间的距离,即△ds=距离D1。将被抽取的实际点TPx的坐标(X(TPx),Y(TPx))和待对比点的坐标(X(Pn),Y(Pn))代入公式(3)、公式(4)和公式(5)后可以获得距离D1,

若距离D1小于最小间距Dmin,则评估待对比点为实际干涉点,执行S315;

若距离D1大于或等于最小间距Dmin,则评估待对比点为合格,执行S3144。

参照图5,S3144、将当前被抽取的实际点TPx加入比对子集中,并返回S3142。

其中,由于被抽取的实际点TPx已经完成对当前待对比点的评估,所以将该实际点TPx统计进比对子集中,避免该实际点TPx在同一待对比点的评估中被重复抽取。

S3145、将比对子集重置为空集,并执行S316。

其中,由于当前的待对比点已经与所有实际点TPx完成评估,下一次的评估应对应于下一个待对比点,重置比对子集,可使各个实际点TPx均可以参与下一个待对比点的评估,进而使各个实际点TPx均有参与任意一潜在点Pn的评估的机会。

S315、将当前的待对比点加入第一确定子集和实际干涉子集,并返回S312。

其中,当前的待对比点已经参与完评估,且被评估为实际干涉点,因此将该待对比点加入第一确定子集,以避免该待对比点在步骤S312中被重新抽取,并且将该待对比点加入实际干涉子集,以便从初始集合中排除该待对比点。

S316、将当前的待对比点加入第一确定子集,并返回S312。

其中,当前的待对比点已经参与完评估,因此将该待对比点加入第一确定子集,以避免该待对比点在步骤S312中被重新抽取。

S317、获取实际干涉子集在初始集合中的补集为第一预留集合。

此时,初始集合中的所有潜在点Pn均已经完成评估,取实际干涉子集在初始集合中的补集,可将实际干涉点从初始集合中排除,进而可获取第一预留集合。第一预留集合相当于初始集合经过第一干涉评估策略的评估后得到的更合理的集合。

参照图7,S32、按照第二干涉评估策略,从第一预留集合中获取与禁区模型发生干涉的区域干涉点,基于区域干涉点更新第一预留集合,生成第二预留集合。

其中,区域干涉点指的是所有潜在点Pn中可能会与禁区模型发生干涉的潜在点Pn,因此是需要从第一预留集合中排除的点。第二干涉评估策略指的是通过检测潜在点Pn与各个禁区模型是否具有重叠部分,来评估该潜在点Pn是否会对任意一禁区模型产生干涉的方法,进而可从第一预留集合中选取出区域干涉点,从第一预留集合中排除区域干涉点,可更新第一预留集合并获取第二预留集合。

参照图7,在S32的步骤中,包括,

S321、获取对应于当前印制电路板的非检测区域的禁区模型,生成包含所有禁区模型的禁区总集。

其中,禁区模型指的是基于非检测区域在坐标系中建立的模型,禁区模型的数量根据MLB的原有的非检测区域的数量而定。

S322、生成可跟随检测次数更新的第二确定子集,生成可跟随检测结果更新的区域干涉子集。

其中,第二确定子集用于统计已经完成评估的潜在点Pn,第二确定子集的初始集为空集;随着评估操作的反复进行,已经完成评估的潜在点Pn会越来越多,因此第二确定子集可跟随评估次数进行更新;区域干涉子集用于统计区域干涉点,区域干涉子集的初始集为空集;随着评估操作的进行,区域干涉点可能会越来越多,因此第二确定子集可跟随评估结果进行更新。

S323、判断第二确定子集在第一预留集合的补集中是否存在可抽取的潜在点Pn,若是则执行S324;若否则执行S328。

其中,第二确定子集在第一预留集合的补集相当于第一预留集合中还没有被抽取评估过的各个潜在点Pn,该补集若还存在可抽取的潜在点Pn,则说明第一预留集合内的所有潜在点Pn还没完全抽取完;若不存在可抽取的潜在点Pn,则说明第一预留集合内的潜在点Pn都已经评估完。

具体的,若第二确定子集在第一预留集合的补集不为空集,则所有潜在点Pn并未评估完,执行S324;

若第二确定子集在第一预留集合的补集为空集,则所有潜在点Pn均已经完成评估,执行S S328。

S324、预设边缘值Nb和预设孔径值r,从第二确定子集在第一预留集合的补集中抽取待检测点,获取边缘值Nb个与待检测点之间距离为孔径值r的边缘点Pbx。

其中,孔径值r指的是在后期加工中,基于潜在点Pn在治具上设置的预留孔的内径,若任意一预留孔被评估为可能会与任意一禁区模型发生干涉,则需要排除对应于该预留孔的潜在点Pn。在本实施例中,孔径值r等于检测孔的内径,在其他实施例中,孔径值r可根据设计者的实际需要进行修改。

在坐标系上以待检测点为圆心并以孔径值r为半径可以获取预留模型,预留模型为对应于待检测点的预留孔。各个边缘点Pbx为均预留模型经过的点,若将每一组相邻的两个边缘点Pbx用线连接,则可形成趋近于预留模型的模拟模型。通过检测模拟模型是否与禁区模型具有重叠部分,可判断预留孔与非检测区域具有重叠部分的区域,完成对潜在点Pn的评估。

进一步的,为了提高评估精度,选取的边缘值Nb个边缘点Pbx应在预留模型上等间距分布,从而可获取预留模型的内接等边多边形作为模拟模型。理论上来说,边缘值Nb的取值越大,模拟模型则更趋近于预留模型,使得评估结果也更为精确,但是后期对于各个边缘点Pbx的计算量也会增大,为了在评估精度和计算难度之间取得平衡,在实施例中,边缘值Nb的取值为8相当于取预留模型的内接等边八边形作为模拟模型。在其他实施例中,设计者可根据实际需要更改边缘值Nb的取值。

参照图7和图8,具体的,预设边缘点Pbx的坐标(X(Pbx),Y(Pbx)),x=1、2、3、…、8;

获取待检测点的坐标(X(Pn),Y(Pn)),预设公式(6)和公式(7),

将待检测点的坐标(X(Pn),Y(Pn))代入(6)和(7)后,可以获得8个边缘点Pbx的坐标(X(Pbx),Y(Pbx))。

S325、判断各个边缘点Pbx是否满足禁区干涉条件,若是则执行S326;若否则执行S327。

其中,禁区干涉条件可判断各个边缘点Pbx之间形成的模拟模型是否与任意一禁区模型具有重叠部分,若具有重叠部分则将当前的待检测点评估为区域干涉点,即评估为需要排除的潜在点Pn;反之则评估当前的待检测点为合格。

参照图7和图8,在S325的步骤中,包括,

S3251、生成若干个包含相邻两个边缘点Pbx的外沿子集,生成包含所有外沿子集的模拟总集。

其中,每一个外沿子集中均包含两个相邻的边缘点Pbx,而两个相邻的边缘点Pbx之间的连线可形成模拟模型中对应的边线,相当于每一个外沿子集均可以代表模拟模型中对应的一条边线。模拟总集指的是包含了所有外沿子集的集合,可代表整个模拟模型参与待检测点的评估,每一个待检测点对应设置有1个模拟总集,而每一个模拟总集内包含有8个外沿子集。

S3252、判断任意一外沿子集是否与任意一禁区模型满足禁区相交条件,若是则执行S326;若否则执行S327。

其中,禁区条件指的是外沿子集内的所有边缘点Pbx之间的连线是否与禁区模型相交,若相表示对应于该连线的预留模型会与禁区模型具有重叠部分,进而得出当前的潜在点Pn为区域干涉点;反之则表示对应于该连线的预留模型与当前的禁区模型之间存在距离。

参照图9,在S3252的步骤中,包括,

S32521、判断当前的模拟总集中是否存在可被抽取的外沿子集,若是则执行S32522;若否则执行S327。

其中,当抽取的外沿子集判断为与禁区模型满足禁区相交条件时,对应于该外沿子集的待检测点会被评估为区域干涉点,此时对于待检测点的评估已经完成,因此直接执行S326;若模拟总集中还有外沿子集可以被抽取,则说明当前的待检测点还有没有评估完。

S32522、从模拟总集中抽取外沿子集,依次判断外沿子集是否与任意一禁区模型满足禁区相交条件,若是则执行S326;若否则执行S327。

其中,排列规则指的是各个禁区模型参与对外沿子集之间比较的顺序,由于各个禁区模型之间相互独立,各个外沿子集需要依次与各个禁区模型进行比较;在依次比较的过程中,当外沿子集与任意一禁区模型满足相交条件,则将待检测点评估为区域干涉点。

参照图9和图10,在S32522的步骤中,包括,

S325221、重置当前的禁区总集。

其中,在各个禁区模型与任意一外沿子集对比较的过程中,外沿子集每比较完一个禁区模型,该禁区模型会从禁区总集中暂时排除;为了使每一个被抽取的外沿子集均公平的拥有与任意禁区模型进行比较的机会,在新的外沿子集参与进对比后,应重置禁区总集,使禁区总集内包含所有禁区模型。

S325222、判断当前的禁区总集中是否存在可被抽取的禁区模型,若是则执行S325223;若否则执行S327。

其中,由于禁区模型还需要被抽取,则表示待检测点不满足之前比较过的所有禁区模型的禁区相交条件,且该待检测点的评估还未完全完成,此时若存在可被抽取的禁区模型,则需要抽取禁区模型继续进行比较;反之则说明所有禁区模型已经参与过评估,该待检测点可评估为合格。

S325323、从禁区总集中抽取一个禁区模型,获取该禁区模型的所有端点ed,生成若干个包含相邻两个端点ed的边界子集,预设排序规则,基于排序规则排列所有边界子集。

其中,相邻的两个端点ed之间可以形成禁区模型的边线,每一个边界子集可代表禁区模型中的一条边线,且边界子集的数量、长度和倾斜度均按照每一个禁区模型的形状设置。判断外沿子集的连线是否与任意一个边界子集的连线相交,可以判断外沿子集的连线是否与禁区模型相交;在依次比较的过程中,由于各个边界子集相互独立,当任意一个边界子集的连线与外沿子集的连线发生相交后,会直接排除该待检测点,因此可排序各个边界子集,使外沿子集依次与各个边界子集比较。

在本实施例中,不限定排序规则的设定方式,使用者可依照各个边界子集的连线在禁区模型上的分布沿顺时针进行排序;也可以赋予各个边界子集序列号,并按照序列号从小到大的顺序进行排序。

S325324、按照直线式判断策略,依次判断外沿子集与各个边界子集是否满足潜在相交条件,若是则执行S325325;若否则将禁区模型从禁区总集中排除,并执行S325322。

其中,直线式判断策略是通过预设一经过边界子集内所有点的直线模型,并通过外沿子集的所有边缘点Pbx的位置判断边缘点Pbx与该直线模型之间关系的方法。潜在相交条件指的是,判断外沿子集的两个边缘点Pbx是否分别位于边界子集的直线模型的两侧,若是则代表两个边缘点Pbx之间的连线可能会与边界子集的直线模型相交;若否则表示两个边缘点Pbx位于边界子集的直线模型的同一侧,两边缘点Pbx之间的连线不存在与该直线模型发生相交的可能。值得注意的是,由于在直线式判断策略中,边界子集的直线模型包括了两端点ed之间的连线,以及两端点ed之间连线的延长线,因此若两边缘点Pbx位于该直线模型的两侧,只能判断两边缘点Pbx之间的连线可能会与两端点ed之间的连线相交,也可能会与两端点ed之间的连线的延长线相交。

参照图8和图10,具体的,获取外沿子集内其中一个边缘点Pbx的坐标(X(Pn1),Y(Pn1)),以及另外一个边缘点Pbx的坐标(X(Pn2),Y(Pn2));获取当前判断的边界子集的其中一个端点ed的坐标(X(ed1),Y(ed1)),以及另外一个端点ed的坐标(X(ed2),Y(ed2)),并预设公式(8)、公式(9)和公式(10),

将端点ed的坐标(X(ed1),Y(ed1))和端点ed的坐标(X(ed2),Y(ed2))代入(8)后,可以获取a1、1b和c1;将a1、b1、c1以及边缘点Pbx(X(Pn1),Y(Pn1))代入(9)后,可获取fn1;将a1、b1、c1以及边缘点Pbx(X(Pn2),Y(Pn2))代入(10)后,可获取fn2。

获取a1、b1和c1后,相当于获取了边界子集对应的直线式,获取边界子集的直线模型,

若在fn1的符号和fn2的符号相反,则代表两个边缘点Pbx分布于边界子集的直线模型的两侧,两个边缘点Pbx的连线与边界子集的直线模型可能相交,执行S325325;

若在fn1的符号和fn2的符号相同,则代表两个边缘点Pbx均位于边界子集的直线模型的同一侧,两个边缘点Pbx的连线与边界子集的直线模型不相交,执行S325324。

S325325、抽取满足潜在相交条件的边界子集,按照逆直线式判断策略,判断外沿子集与边界子集是否满足逆相交条件,若是则执行S326;若否则并执行S325324。

其中,逆直线式判断策略指的是通过预设一经过外沿子集内所有点的直线模型,并通过边界子集的所有端点ed的位置判断端点ed与该直线模型之间关系的方法。潜在相交条件指的是,判断边界子集的两个端点ed是否分别位于外沿子集的直线模型的两侧,若是则代表两个端点ed之间的连线可能会与外沿子集的直线模型相交;若否则表示两个端点ed位于外沿子集的直线模型的同一侧,两端点ed之间的连线不存在与该直线模型发生相交的可能。

参照图8和图10,具体的,获取外沿子集内其中一个边缘点Pbx的坐标(X(Pn1),Y(Pn1)),以及另外一个边缘点Pbx的坐标(X(Pn2),Y(Pn2));获取当前判断的边界子集的其中一个端点ed的坐标(X(ed1),Y(ed1)),以及另外一个端点ed的坐标(X(ed2),Y(ed2)),并预设公式(11)、公式(12)和公式(13),

将端点ed的坐标(X(ed1),Y(ed1))和端点ed的坐标(X(ed2),Y(ed2))代入(11)后,可以获取a2、b2和c2;将a2、b2、c2以及边缘点Pbx(X(Pn1),Y(Pn1))代入(12)后,可获取fd1;将a2、b2、c2以及边缘点Pbx(X(Pn2),Y(Pn2))代入(13)后,可获取fd2。

获取a2、b2和c2后,相当于获取了外沿子集对应的直线式,获取外沿子集的直线模型,

若在fd1的符号和fd2的符号相反,则代表两个端点ed分布于外沿子集的直线模型的两侧,两端点ed之间的连线经过两边缘点Pbx的直线模型,由于两边缘点Pbx之间的连线经过两端点ed的直线模型,因此可判断两端点ed之间的连线与两边缘点Pbx之间的连线相交,执行S326;

若fn1的符号和fn2和符号相同,则代表两个端点ed均位于外沿子集的直线模型的同一侧,可判断两个边缘点Pbx的连线与两个端点ed连线的延长线相交,两个边缘点Pbx的连线与两个端点ed的连线并未相交,此时外沿子集应与下一个边界子集进行比较,执行S325324。

参照图9和图10,S326、将当前的待检测点加入第二确定子集和区域干涉子集,并返回S323。

其中,当前的待检测点已经参与完评估,且被评估为区域干涉点,因此将该待检测点加入第二确定子集,以避免该检测比点在步骤S323中被重新抽取,并且将该待检测点加入区域干涉子集,以便从第一预留集合中排除该待检测点。

S327、将当前的待检测点加入第二确定子集,并返回S323。

其中,当前的待检测点已经参与完评估,因此将该待检测点加入第二确定子集,以避免该待检测点在步骤S323中被重新抽取。

S328、获取区域干涉子集在第一预留集合中的补集为第二预留集合。

此时,第一预留集合中的所有潜在点Pn均已经完成评估,取区域干涉子集在第一预留集合中的补集,可将区域干涉点从第一预留集合中排除,进而可获取第二预留集合。第二预留集合相当于第一预留集合经过第二干涉评估策略的评估后得到的更合理的集合。

参照图11和图12,S4、按照合并新生策略,基于预设的最小间距值Dmin从第二预留集合中获取可与其他潜在点Pn合并的潜在点Pn,基于获取的潜在点Pn生成新生点Nw,并基于新生点Nw更新第二预留集合。

其中,合并新生策略指的是当任意数量个潜在点Pn之间的距离过于近时,将该潜在点Pn抽取出来并合并生成新生点Nw,并通过新生点Nw取代被收取的潜在点Pn以更新第二预留集合的方法。最小间距值Dmin为两潜在点Pn之间的最小间距,当任意潜在点Pn之间的距离小于最小间距值Dmin时,该潜在点Pn会被合并。

参照图11,在S4的步骤中,包括,

S41、基于最小间距值Dmin判断当前的第二预留集合中是否至少存在两个可合并的潜在点Pn,若是则执行S42;若否则执行S5。

其中,最小间距值Dmin是潜在点Pn与实际点TPx之间的最小距离,也是任意两潜在点Pn之间的最小距离;当任意两个潜在点Pn之间的距离小于最小间距值Dmin时,两潜在点Pn会合并成新生点Nw并被新生点Nw取代。

参照图11和图12,在S41的步骤中,包括,

S411、生成可更新的孤岛子集。

其中,合并新生策略的本质是通过任意一个潜在点Pn依次与其他所有潜在点Pn之间进行距离对比,来判断该潜在点Pn是否可以合并,并找到与该潜在点Pn可以合并的点。孤岛子集用于统计已经参与过距离判断且不可合并的潜在点Pn,孤岛子集的初始集为空集,随着越来越多的潜在点Pn完成所有距离比较,孤岛子集内的元素数量会越来越多。

S412、判断孤岛子集在第二预留集合中的补集是否存在可抽取的潜在点Pn,若是则执行S413;若否则执行S5。

其中,若孤岛子集在第二预留集合中的补集中仍有潜在点Pn可以被收取,则表示第二预留集合内的所有潜在点Pn还没完全比较完,应继续抽取潜在点Pn;若孤岛子集在第二预留集合中的补集中没有可被抽取的潜在点Pn,则表示所有潜在点Pn已经比较完。

具体的,应判断孤岛子集在第二预留集合中的补集是否为空集,若是则执行S413;若否则执行S5。

S413、生成可更新的缓存子集。

其中,缓存子集用于统计在对某一潜在点Pn的比较中已经比较过的其他潜在点Pn,使某一潜在点Pn可逐步与其他各个潜在点Pn进行比较;缓存子集的初始集为空集,随着该潜在点Pn的比较次数的增多,缓存子集内元素会越来越多;当进行下一个潜在点Pn的比较时,缓存子集会被重置为空集。

S414、从孤岛子集在第二预留集合的补集中抽取第一配对点Me1。

其中,孤岛子集在第二预留集合的补集中均为未完全进行过比较的潜在点Pn,随着孤岛子集内的点越来多,该补集中的点越来越少,当该补集无法再抽取点时,则表示所有潜在点Pn已经完成了所有的距离比较。值得注意的是,第二预留集合内的潜在点Pn应包含原有的潜在点Pn,以及由新生点Nw新生成的潜在点Pn。

S415、判断从第一配对点Me1和缓存子集在第二预留集合的补集中是否存在可抽取的潜在点Pn,若是则执行S416;若否则将当前的第一配对点Me1加入孤岛子集,重置缓存子集为空集,并返回S414。

其中,缓存子集中包含内的点为已经与当前的第一配对点Me1比较过的点,因此第一配对点Me1和缓存子集在第二预留集合的补集中的点均为需要与当前的第一配对点Me1进行比较的点,若该补集中存在可被抽取的点,则当前的第一配对点Me1还未与各个潜在点Pn比较完成;若该补集中不存在可被抽取的点,则代表当前的第一配对点Me1已经与各个潜在点Pn比较完成。

由于第一配对点Me1若满足合并条件会直接从第一预留合集中排除,因此若第一配对点Me1仍然保留与其他潜在点Pn进行比较的机会,则表示该第一配对点Me1在之前的所有距离比较中均不可以被合并,若该第一配对点Me1已经与其他所有潜在点Pn完成距离对比,则表示该第一配对点Me1与所有其他潜在点Pn之间不满足合并的条件,可将该第一配对点Me1加入孤岛子集中,并进行下一个第一配对点Me1的选取;为了使下一个第一配对点Me1可以公平地跟其他各个潜在点Pn进行对比,缓存子集应重置为空集。

具体的,应判断第一配对点Me1和缓存子集在第二预留集合的补集是否为空集,若是则执行S416;若否则执行S414。

S416、从第一配对点Me1和缓存子集在第二预留集合的补集中抽取第二配对点Me2。

其中,第一配对点Me1和缓存子集在第二预留集合的补集中均为未完全与第一配对点Me1进行距离对比过的点,从该补集中抽取的第二配对点Me2用于继续与第一配对点Me1进行距离比较。

S417、判断第一配对点Me1和第二配对点Me2是否满足合并条件,若是则执行S421;若否则执行S418。

其中,合并条件指的是第一配对点Me1和第二配对点Me2之间的距离是否小于最小间距值Dmin。

参照图11和图13,具体的,获取第一配对点Me1的坐标(X(Me1),Y(Me1))和第二配对点Me2的坐标((X(Me2),Y(Me2)),并预设公式(14)、公式(15)和公式(16),

其中,△de为第一配对点Me1第二配对点Me2之间的距离,将第一配对点Me1的坐标(X(Me1),Y(Me1))和第二配对点Me2的坐标((X(Me2),Y(Me2))代入公式(14)、公式(15)和公式(16)后可以获得△de,

若△de小于最小间距Dmin,则第一配对点Me1和第二配对点Me2满足合并条件,执行S421;

若△de大于或等于最小间距Dmin,则第一配对点Me1和第二配对点Me2不满足合并条件,执行S418。

参照图11,S418、将第二配对点Me2加入缓存子集,并返回S414。

其中,该第二配对点Me2与当前第一配对点Me1不满足合并条件,因此将第二配对点Me2放置进缓存子集中,避免在当前第一配对点Me1之后的距离比较中重复出现。

S42、基于可合并的潜在点Pn生成新生点Nw,基于新生点Nw更新第二预留集合,并返回S412。

其中,当新生点Nw生成后,新生点Nw会更新至第二预留集合内作为新的潜在点Pn,并参与与其他潜在点Pn之间的比较,直到第二预留集合内不存在可合并的潜在点Pn。

参照图11和图12,在S42的步骤中,包括,

S421、按照中点生成策略,基于第一配对点Me1和第二配对点Me2获取新生点Nw。

其中,中点生成策略指的是通过第一配对点Me1和第二配对点Me2获得新生点Nw的方法,获取新生点Nw之后,新生点Nw取代第一配对点Me1和第二配对点Me2并作为新的潜在点Pn加入第二预留集合。

具体的,预设新生点Nw的坐标(X(Nw),Y(Nw)),公式(17)和公式(18),

将第一配对点Me1的坐标(X(Me1),Y(Me1))和第二配对点Me2的坐标((X(Me2),Y(Me2))代入公式(17)和公式(18)后可以获得新生点Nw的坐标(X(Nw),Y(Nw))。

S422、将新生点Nw加入第二预留集合,将第一配对点Me1和第二配对点Me2从第二预留集合中排除,并返回S412。

其中,通过新生点Nw代替第一配对点Me1和第二配对点Me2成为新的潜在点Pn,并使新生点Nw参与进其他潜在点Pn的比较中。

参照图2,S5、基于当前的第二预留集合生成最终预留集合。

其中,当前的第二预留集合经过排除可合并的潜在点Pn以及加入新生成的潜在点Pn之后,第二预留集合内的各个潜在点Pn均不满足合并条件,因此可选取当前的第二预留集合为最终预留集合,生成最终预留集合。

S6、获取若干个对应于最终预留集合内的各个点的预留孔,获取若干个对应于各个实际点TPx的预留孔。

其中,以最终预留集合内的各个点为圆心并以孔径值r为半径可获得多个预留模型,每一个预留模型均代表一个预留孔;以各个实际点TPx为圆心并以孔径值r为半径可获得多个实际模型,每一个实际模型均代表一个检测孔。

在获取了各个预留孔的分布和各个预留孔的分布之后,可保存并提供给MLB设计人员,MLB设计人员在后期对MLB进行更新时,可基于预留孔的分布更新再版MLB检测点,即更新检测孔的位置,只要更新后的检测孔与原来的预留孔相对应,则说明治具无需重新设计针载板,利用对应的预留孔即可进行测试操作。

本实施例的实施原理为:检测点为MLB在ICT检测或FCT检测中需要进行检测的点,而实际集合则是包含了所有实际点TPx的集合。由于各个实际点TPx对应于当前MLB各个检测点,获取实际集合相当于预设各个检测点在治具上的分布,后期治具的针载板可根据各个实际点TPx的分布打出若干个与各个检测点一一对应的孔位。每一个检测点均可以衍生出若干个潜在点Pn,在生成了包含所有潜在点Pn的初始集合中,需要通过按照干涉排除策略,排除初始集合中可能会与任意实际点TPx或任意禁区模型发生干涉的潜在点Pn,从而对初始集合进行更新迭代,最后生成最终预留集合。通过最终预留集合中的潜在点Pn,可以获取若干个预留孔,并且将该部分的预留孔保存成数据发送给MLB设计人员。这部分预留孔会在治具的针载板上打出,但是在当前的ICT检测或FCT检测中并不需要用到,且在未来ICT检测或FCT检测中并不一定会完全用到,该部分的预留孔可以为MLB设计人员在后期对MLB进行更新时作为参考,即MLB设计人员可参考预留孔的位置进行检测孔的排布,只要更新了位置的检测孔与原来的预留孔相对应,则说明治具无需重新设计针载板,利用对应的预留孔即可进行测试操作,进而减少治具后期的修改维护成本,提高治具的可发展性。

实施例二:

参照图13,在一个实施例中,提供一种印制电路板检测用治具的孔位设计装置,与上述实施例一中的印制电路板检测用治具的孔位设计一一对应,应用于减少治具后期的修改维护成本,提高治具的可发展性,该装置包括实际生成模块1、潜在衍生模块2、干涉排除模块3、合并新生模块4、最终生成模块5以及孔位输出模块6。各功能模块详细说明如下,

实际生成模块1,用于获取对应于当前印制电路板的检测点的实际点TPx,生成包含所有实际点TPx的实际集合;以及,

潜在衍生模块2,用于按照潜在衍生策略,基于实际集合中的各个点的坐标生成若干个潜在点Pn,生成包含所有潜在点Pn的初始集合;以及,

干涉排除模块3,用于按照干涉排除策略,基于实际集合中的各个点和预设的禁区模型,从初始集合中获取干涉点,基于干涉点更新初始集合,生成第二预留集合;以及,

合并新生模块4,用于按照合并新生策略,基于预设的最小间距值Dmin从第二预留集合中获取可与其他潜在点Pn合并的潜在点Pn,基于获取的潜在点Pn生成新生点Nw,并基于新生点Nw更新第二预留集合;以及,

最终生成模块5,用于基于当前的第二预留集合生成最终预留集合;以及,

孔位输出模块6,用于获取若干个对应于最终预留集合内的各个点的预留孔,获取若干个对应于各个实际点TPx的预留孔。

实施例三:

在一个实施例中,提供了一种智能终端,其包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中存储器存储训练模型中的训练数据、算法公式以及滤波机制等。处理器用于提供计算和控制能力,处理器执行计算机程序时实现以下步骤,

S1、获取对应于当前印制电路板的检测点的实际点TPx,生成包含所有实际点TPx的实际集合;

S2、按照潜在衍生策略,基于实际集合中的各个点的坐标生成若干个潜在点Pn,生成包含所有潜在点Pn的初始集合;

S3、按照干涉排除策略,基于实际集合中的各个点和预设的禁区模型,从初始集合中获取干涉点,基于干涉点更新初始集合,生成第二预留集合;

S4、按照合并新生策略,基于预设的最小间距值Dmin从第二预留集合中获取可与其他潜在点Pn合并的潜在点Pn,基于获取的潜在点Pn生成新生点Nw,并基于新生点Nw更新第二预留集合;

S5、基于当前的第二预留集合生成最终预留集合;

S6、获取若干个对应于最终预留集合内的各个点的预留孔,获取若干个对应于各个实际点TPx的预留孔。

实施例四:

在一个实施例中,提供了一种计算机可读存储介质,其存储有能够被处理器加载并执行上述印制电路板检测用治具的孔位设计方法的计算机程序,计算机程序被处理器执行时实现以下步骤:

S1、获取对应于当前印制电路板的检测点的实际点TPx,生成包含所有实际点TPx的实际集合;

S2、按照潜在衍生策略,基于实际集合中的各个点的坐标生成若干个潜在点Pn,生成包含所有潜在点Pn的初始集合;

S3、按照干涉排除策略,基于实际集合中的各个点和预设的禁区模型,从初始集合中获取干涉点,基于干涉点更新初始集合,生成第二预留集合;

S4、按照合并新生策略,基于预设的最小间距值Dmin从第二预留集合中获取可与其他潜在点Pn合并的潜在点Pn,基于获取的潜在点Pn生成新生点Nw,并基于新生点Nw更新第二预留集合;

S5、基于当前的第二预留集合生成最终预留集合;

S6、获取若干个对应于最终预留集合内的各个点的预留孔,获取若干个对应于各个实际点TPx的预留孔。

所述计算机可读存储介质例如包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

具体实施方式的实施例均为本申请的较佳实施例,并非依此限制本申请的保护范围,故:凡依本申请的结构、形状、原理所做的等效变化,均应涵盖于本申请的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号