[发明专利]基于粒子群优化算法的SMT产线检测阈值设定方法有效

专利信息
申请号: 201910635333.4 申请日: 2019-07-15
公开(公告)号: CN110533278B 公开(公告)日: 2022-03-22
发明(设计)人: 常建涛;罗才文;孔宪光;王佩 申请(专利权)人: 西安电子科技大学
主分类号: G06Q10/06 分类号: G06Q10/06;G06Q50/04;G06F16/22;G06N3/00
代理公司: 陕西电子工业专利中心 61205 代理人: 陈宏社;王品华
地址: 710071 陕*** 国省代码: 陕西;61
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明提出了一种基于粒子群优化算法的SMT产线检测阈值设定方法,用于解决现有技术中存在的因为SMT产线的检测阈值设定不合理导致的产品合格率较低的技术问题,实现步骤为:获取关联数据表,然后获取阈值设定数据表,采用粒子群优化算法计算设定阈值,最后获取最优阈值。本发明利用SMT产线的生产数据,并将SMT产线上SPI锡膏检测仪的检测合格率用于计算粒子群优化算法中的个体适应度,通过粒子群优化算法的迭代之后,能够获得的多组检测阈值能提高SPI锡膏检测仪的检测合格率,从而提高SMT产线的产品合格率,并且降低了获取到的多组检测阈值全部不满足生产工艺要求的风险。
搜索关键词: 基于 粒子 优化 算法 smt 检测 阈值 设定 方法
【主权项】:
1.一种基于粒子群优化算法的SMT产线检测阈值设定方法,其特征在于,包括如下步骤:/n(1)获取关联数据表:/n获取SMT产线生产过程中记录SPI锡膏检测仪检测结果的锡膏量数据表、记录AOI自动光学检测仪检测结果的锡膏焊接结果数据表以及记录人工返修缺陷类型数据表,并将该三张数据表中公有字段PCB编号和焊盘编号均相同的数据拼接为一行,得到关联数据表;/n(2)获取阈值设定数据表:/n(2a)对关联数据表中字段名称为testresult所对应的列的值为桥接、外形不良、拉尖的数据进行删除,同时对字段名称为Reason_Name所对应列的值为假焊的数据、字段名称为Alarm所对应列的值为Polarity的数据、以及字段名称为Classification所对应列的值不等于BGA或QFN或SOP或SOT或QFP的数据进行删除,得到经验数据表;/n(2b)计算经验数据表中字段名称为vol所对应列中数据的平均值u和方差σ,并删除该列中数据值大于u+3σ或者小于u-3σ的数据,得到阈值设定数据表;/n(3)基于粒子群优化算法计算设定阈值:/n(3a)初始化粒子群优化算法参数,包括惯性因子w∈(0,1)、第一学习因子c1∈(1,3)、第二学习因子c2∈(1,3)、粒子变量的维度n_dim=2×p、粒子的总体个数pop_size∈(50,∞)、搜索空间最大值value_max∈(180,∞)、搜索空间最小值value_min∈(45,70),迭代次数t,最大迭代次数iter、合格率passrate、误差率error_rate、当前适应度列表Q、历史适应度列表W以及结果列表R,并令t=1,p表示阈值设定数据表中字段名称为Classification所对应列的数据值的类别个数;/n(3b)随机生成大小均为pop_size×n_dim的位置矩阵X、速度矩阵V和记录矩阵G,其中,X中的第i行X[i]代表第i个粒子的位置,V中的第i行V[i]代表第i个粒子的速度,G中的第i行G[i]代表第i个粒子的历史最佳位置,X、V和G的列从左到右分别代表BGA封装阈值上限、BGA封装阈值下限、QFN封装阈值上限、QFN封装阈值下限、SOP封装阈值上限、SOP封装下限、SOT封装阈值上限、SOT封装阈值下限、QFP封装阈值上限和QFP封装阈值下限,且X中每一个元素的值大于value_min且小于value_max,V中的每一个元素的值大于value_min的相反数且小于value_min,令G等于X;/n(3c)对阈值设定数据表中字段名称为Classification所对应列的数据按照取值进行划分,得到BGA数据表、QFN数据表、SOP数据表、SOT数据表以及QFP数据表,并判断该五个数据表中的每一条数据中字段名称为vol所对应的数据值是否位于X中的第i个粒子X[i]对应的封装阈值上限和封装阈值下限之间,若是,标记该条数据为1,否则,标记该条数据为0,同时判断该五个数据表中的每一条数据中字段名称为vol所对应的数据值是否位于G中的第i个粒子G[i]对应的封装阈值上限和封装阈值下限之间,若是,标记该条数据为1,否则,标记该条数据为0;/n(3d)计算X中每个粒子的个体适应度adapt_value,并将计算结果填写到当前适应度列表Q中,得到赋值后的当前适应度列表Q',将adapt_value小于error_rate的粒子放入结果列表R中,得到幅值后的结果列表R',同时计算G中每个粒子的个体适应度adapt_value,并将计算结果填写到当前适应度列表W中,得到赋值后的当前适应度列表W',其中,adapt_value的计算公式为:/n /n其中,n_count表示BGA封装数据、QFN封装数据、SOP封装数据、SOT封装数据以及QFP封装数据中所有标记为1的数据总条数,n表示阈值设定数据表中数据的总条数;/n(3e)当Q'中第i个粒子的当前个体适应度的Q'[i]小于W'中对应的第i个粒子历史个体适应度W'[i]时,通过Q'[i]替换W'[i],通过X[i]替换G[i],得到替换后的历史适应度列表W”以及记录矩阵G';/n(3f)按照下列公式对速度矩阵V的每一行进行更新,得到更新后的速度矩阵V':/nV'[i]=w×V[i]+c1×random()×(G'[i]-X[i])+c2×random()×(gbest-X[i])/n其中,random()表示生成一个0到1之间的随机数,gbset表示变量,gbest=G'[a],a表示历史适应度列表W”中最小值所对应的位置;/n(3g)按照下列公式对位置矩阵X的每一行进行更新,得到更新后的位置矩阵X',并将位置矩阵X'中小于value_min的值用value_min替换,大于value_max的值用value_max替代,得到替换后的位置矩阵X”:/nX'[i]=X[i]+V'[i];/n(3h)令X=X”,令V=V',令G=G',清空Q和W中的值,并判断t等于iter是否成立,若是,执行步骤(3i),否则,令t=t+1,并执行步骤(3c);/n(3i)判断结果列表R'中是否有粒子,若是,将结果列表R'中的粒子按行拼接,得到阈值设定表,否则,令iter=2×iter,并执行步骤(3c);/n(4)获取最优阈值:/n计算阈值设定表中每一行的所有封装的阈值上限的和与所有封装的阈值下限的和之差,并对计算结果进行升序排列,得到最优阈值表。/n
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201910635333.4/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top