专利名称:一种插件程序的转换方法、系统的制作方法
技术领域:
本发明属于电子制造领域,尤其涉及一种插件程序的生成方法及系统。
背景技术:
目前,自动插件机被广泛应用在电子制造行业来进行自动装着(AI,电子 元器件自动插件)。自动插件机根据数控程序(Numerical Control, NC )来控制 元器件的插件过程。其中,数据程序也称插件程序。
RH3、 RHS是常见的用来插径向元器件的机器,由于两种自动插件机器在 工作原理、插件程序格式等方面均存在差异,当同一种电路板(PCB、印刷电 路板)需要安排在RH3、 RHS插件机的机器中完成插件生产时,其所需要的插 件程序就存在差别,从而在实际生产中需要针对该两类型的机器分别编写不同 的插件程序。
由于插件程序的编写受到各种技术方面因素的影响,以致于无论在RH3插 件机器或者RHS插件机器上,都很难快速而准确地编写出一套完整的插件程 序。现有的一种RHS程序的编制方式是根据元器件清单,在机器上按照元器 件安装点顺序或元器件种类顺序一个元件接一个元件的直接调节机器来完成 RHS编程,该方式存在以下缺点1、由于需要在停止机器生产的情况下完成 调试操作,从而占用了机器生产时间,直接影响产品的生产。2、插件程序所需 的编制时间较长。例如,制作一个需装着150个元器件的电路板插件程序一个 熟练的技术员平均需要10小时,而实际生产中由于电路设计要求等因素制约, 在编写好插件程序后仍需要对插件路线进行完善、调整,所以往往需要更长的 机器调试时间。3、插件程序的准确性较差。由于长时间的人工操作机器来调试 程序,由于疲劳容易导致插件程序的准确性较差。
发明内容
本发明实施例的目的在于提供一种插件程序的转换方法,旨在解决利用插 件程序的编制方法来生成插件程序时,不仅插件程序的生成效率较低,而且会 占用机器的生产时间的问题。
本发明实施例是这样实现的, 一种插件程序的转换方法,所述方法包括以
下步骤
读取第 一插件程序的数据;
将第 一插件程序的格式转换成第二插件程序的格式; 对第二插件程序的插件路线进行排顺序, -使插件头在插每个插件点时,不
碰撞到之前插件点的元件;
根据第二插件程序的格式和排序后的插件路线合成第二插件程序。
本发明实施例的另一目的在于提供一种插件程序的转换系统,所述系统包
括
第一插件程序获取漠块,用于获取第一插件程序数据; 格式转换;漠块,用于将第一插件程序的格式转换成笫二插件程序的格式; 插件点的插件顺序调整模块,用于对第二插件程序的插件路线进行排顺序, 使插件头在插每个插件点时,不碰撞到之前插件点的元件;以及
第二插件程序合成模块,用于根据第二插件程序的格式和排序后的插件路
线合成第二插件程序。
在本发明的实施例中,通过对第一插件程序进行格式转换,并且调整插件 顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件,来最终生成 第二插件机器的插件程序。利用这种方法生成第二插件程序不仅使插件程序的 生成效率较高,而且不会占用机器的生产时间。
图i是本发明实施例提供的第一插件程序转换成第二插件程序的方法的流
程图2是本发明实施例提供的对第二插件程序的插件路线进行排顺序,使插 件头在插每个插件点时,不碰撞到之前插件点的元件的步骤的实施流程图; 图3是本发明实施例^是供的第一插件程序转换成第二插件程序的系统的结构图。
具体实施例方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实 施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅 仅用以解释本发明,并不用于限定本发明。
在本发明的实施例中,通过对第一插件程序进fl^各式转换,并且调整插件 顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件,来最终生成 第二插件机器的插件程序。利用这种方法生成第二插件程序不仅使插件程序的
生成效率较高,而且不会占用^/L器的生产时间。在本发明的实施例中,笫一插
件程序为RH3插件程序,第二插件程序为RHS插件程序。
图1示出了本发明实施例提供的第一插件程序转换成第二插件程序的方法 的实施流程,详述如下
在步骤S101中,获取第 一插件程序数据。
在步骤S102中,拆分插件程序数据,获取参数数据。将插件程序数据拆分 为多个程序语句。针对每个程序语句,获取相应的参数数据,例如/值,G值, M值,T值,X值,Y值,Z值,V值。
在步骤S103中,删除第一插件程序中不执行的程序语句。 由于实际生产中元器件的变更,例如由于设计、工程等更改,可能需要取 消某个元器件的插件,从而会对插件程序中相应的程序语句进行标记(这类标 记过的程序语句也被称作跳跃语句)。删除这些不执行的程序语句,以避免其 中参数的干扰。由于插件程序语句中标记不执行该语句的参数表示为77,,循环搜索含 有'/7,的程序语句,并删除该程序语句即可。
在步骤S104中,将第一插件程序的格式转换成第二插件程序的格式。 修改第一插件程序中的方向参数T的值。对于第一插件程序来说,其方向 参数T的值为1时,表示的是X方向,T的^f直为2时,表示的是Y方向。而对 于第二插件程序来说,其方向参数T的值为1时,表示的是Y方向,T的值为 2时,表示的是X方向。因此,为了确保执行的正确性,需要修改第一插件程 序中的方向参数T的值,具体为T值为l时,修改成2, T值为2时,修改 成1。
除修改方向参数T的值外,还需要修改X坐标、Y坐标、料站Z、扭角V 等格式不 一 样的参数。例如某 一 第 一 插件程序的程序语句为 N0003/0G0M001T801X020527Y010676Z00001V00000 +00000D,
其中,'N,项(如程序语句中N0003)为执行顺序参数; '/,项(如程序语句中/O)为判断是否执行插件的开关参数; 'G,项(如程序语句中GO)为判断是否重新执行参数; 'M,项(如程序语句中MOOl)为判断机器是否需才企验校正各参数; 'T,项(如程序语句中T801)为平面坐标数据; 'X、 Y,项(如程序语句中X020527Y010676)为平面坐标数据; 'Z,项(如程序语句中Z00001 )料站参数; 'V'项(如程序语句中VOOOOO)为插件扭角偏移量参数; 'D,项(如程序语句中+00000D)表示语句执行完毕。
针对该程序语句,转换成第二程序语句后为 N0003/0G0M001T801X+020527Y+010676Z+00001V+00000W+00000 +00000D 。
其中,'W,项(如程序语句中W+00000)为跨距也就是插入的元器件宽
度参数;
'D,项(如程序语句中+OOOOOD)为语句执行完毕。
在步骤S105中,对第二插件程序的插件路线进行调整,使插件路径最短。
由于插件头移动到程序原点最快,作为本发明的实施例,可以选取离程序 原点距离最大的点作为插件路径的起始点,从而可以减少坐标移动距离,并规 定插件的大致路径方向,以减少插件头碰撞元件。
为了简单、快捷地计算出最短的插件路径,作为本发明的实施例,可以采 用中点最短路径算法,其具体为在选取了第一个插件点N,后,根据插件参数 中所有插件点的坐标位置,计算出距离N!最近的插件点作为第二个插件点N2。 然后,再计算Ni与N2的中点坐标Mp在剩余点中查找离Mi最近的点作为 N3,计算N2与N3的中点M2,在剩余点中查找离M2最近的点作为N4,以此类 推,可以计算出所有插件点的插件顺序,即可得到优化的插件if各径。
在步骤S106中,对第二插件程序的插件路线进行排顺序,使插件头在插每 个插件点时,不碰撞到之前插件点的元件。
插件路径所有的P个插件点为NP N2,……,Ni,……,Nj,……,Np-" Np。由于按优化的插件路径进行插件时,插件头可能触碰到前面已经插好的插 件点,例如插Ns时可能触碰到前面已经插好的N。 N2、 N3、 N4中的一个或多 个。因此,为了保证插件的正确性,需要调整插件顺序,使得插件头插任一插 件点时,不碰撞到之前的插件点。
在步骤S107中,才艮据第一插件程序总偏移坐标,计算第二插件程序的总偏 移坐标。由于插件程序转换过程没对各插件点的坐标进行ft值更改处理,并且 两类型机器的设计可移动坐标范围一致,所以总偏移坐标的转换只需要在数据 格式上变换。例如,常见的格式变换方式是,在第一插件程序中,参数项'F, 一 般设置为O,其格式为'FOOO ,,而在第二插件程序中,其格式为'F+00000 ,, 因此,将'FOOO,转换为'F+00000,即可。
在步骤S108中,根据第二插件程序的格式和排序后的插件路线合成第二插 件程序。
图2示出了本发明实施例提供的对第二插件程序的插件路线进行排顺序,
9
使插件头在插每个插件点时,不碰撞到之前插件点的元件的步骤的实施流程,
详述如下
在步骤S1061中,取第i个插件点,i的初始值为2。
在步骤S1062中,判断插件头插当前插件点时,是否会碰撞到之前的第j 个插件点元件。其中,j的初始值为l,并且1<叫<。若不会碰撞到第j个插件 点,执行步骤S1064,否则执行步骤S1063。
作为本发明的实施例,插件头碰撞已插件元器件的条件是
如果当前插件点为X方向的插件点时,第i、 j个插件点的Y坐标差值是否 小于或等于q,并且当前插件点Y坐标值是否大于第j个插件点的Y坐标值, 并且第i个插件点与第j个插件点的X坐标差值小于s。用算式表示即为Y(i) > Y(j),并且IY(i)-Y(j)l〈-q,并且IX(i)-X(j)l《s,其中,X(i) 、 Y(i)分别表示第 i个插件点的横坐标及纵坐标,X(j) 、 Y(j)分别表示第i个插件点的横坐标及纵 坐标。
如果当前插件点为Y方向的插件点时,第i、 j个插件点的X坐标差值是否 小于或等于q,并且当前插件点X坐标值是否大于第j个插件点的X坐标值, 并且第i个插件点与第j个插件点的Y坐标差值小于s。用算式表示即为X(i)> X(j),并且IX(i) - X(j)l <=q,并且IY(i)-Y(j)l〈-s,其中,X(i) 、 Y(i)分别表示第 i个插件点的横坐标及纵坐标,X(j) 、 Y(j)分别表示第i个插件点的横坐标及纵 坐标,并且l<=j<i。
上述q, s可以根据插件机器实际的插件头尺寸与需插件元器件尺寸数据来 设定,例如q的值可以为15mm, s的值可以为5mm)。
在步骤S1063中,交换插件路径中,第i个插件点与第j个插件点的插件 顺序。
在步骤S1064中,j的值增加1。
在步骤S1065中,判断j的值是否小于i。当j的值小于i时,返回执行步 骤S1062,否则执行步骤S1066。在步骤S1066中,i的值增加1。
在步骤S1067中,判断i的值是否大于插件点的数目。若小于或等于插件 点的数目,则返回步骤S1061,否则结束整个流程。
图3示出了本发明实施例^是供的第一插件程序转换成第二插件程序的系统 的结构,该系统包括第一插件程序获取模块31、格式转换模块33、插件点的插 件顺序调整模块35以及第二插件程序合成模块37。
第一插件程序获取模块31获取第一插件程序数据,格式转换模块33将第 一插件程序的格式转换成第二插件程序的格式,插件点的插件顺序调整模块35 对第二插件程序的插件路线进行排顺序,使插件头在插每个插件点时,不碰撞 到之前插件点的元件,第二插件程序合成模块37根据第二插件程序的格式和排 序后的插件路线合成第二插件程序。
其中,插件点的插件顺序调整模块35又具体包括碰撞判断模块351、插 件顺序交互模块352。碰撞判断模块351针对每个插件点,判断插件头在插当 前插件点时是否会碰撞到之前插件点的元件,如果插件头会碰撞到之前插件点 的元件,插件顺序交互模块352则交换插件路径中当前插件点和与之碰撞的插 件点的插件顺序。
为避免不执行的程序语句中的参数千扰,作为本发明的实施例,可以在该 系统的格式转换模块33之前增加一不执行语句删除模块32,利用不执行语句 删除模块32删除第 一插件程序中不执行的程序语句。
为优化插件路径,使插件效率更高,作为本发明的实施例,可以在该系统 的格式转换模块33之后增加一插件路径优化模块34,插件路径优化模块34对 第二插件程序的插件路线进行调整,使插件路径最短。在本发明的实施例中, 插件路径优化模块34优化插件路径的过程具体为插件起始点选取模块341 选取离程序原点距离最大的插件点作为插件路径的起始点,最短插件路径计算 模块342根据该起始点,利用最短路径算法计算最短的插件路径。
由于第二的总偏移坐标与第一不同,作为本发明的实施例,可以在插件点
的插件顺序调整^^莫块35之后增加总偏移坐标计算^t块36,该总偏移坐标计算 模块36根据第一插件程序总偏移坐标,计算第二插件程序的总偏移坐标,
综上所述,本发明实施例利用第一插件程序来转换生成第二插件程序,即 通过对第一插件程序进行格式转换,并且调整插件顺序,使插件头在插每个插 件点时,不碰撞到之前插件点的元件,来最终生成第二插件程序。利用这种方 法生成第二插件程序不仅使插件程序的生成效率较高,而且不会占用机器的生 产时间。通过删除不执行的程序语句,避免了为避免不执行的程序语句中的参 数干扰。通过对插件点的插件顺序进行调整,以优化插件路径,从而使插件效 率更高。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发 明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明 的保护范围之内。
权利要求
1、一种插件程序的转换方法,其特征在于,所述方法包括以下步骤:读取第一插件程序的数据;将第一插件程序的格式转换成第二插件程序的格式;对第二插件程序的插件路线进行排顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件;根据第二插件程序的格式和排序后的插件路线合成第二插件程序。
2、 如权利要求l所述的方法,其特征在于,在所述将第一插件程序的格式 转换成第二插件程序的格式的步骤之前还包括步骤删除第 一插件程序中不执行的程序语句。
3、 如权利要求1所述的方法,其特征在于,在所述对第二插件程序的插件 路线进行排顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件的 步骤之前还包括步骤对第二插件程序的插件路线进行调整,使插件路径最短。
4、 如权利要求3所述的方法,其特征在于,所述对第二插件程序的插件路 线进行调整,使插件路径最短的步骤具体为选取离程序原点距离最大的插件点作为插件路径的起始点; 根据所述起始点,利用最短路径算法计算最短的插件路径。
5、 如权利要求l所述的方法,其特征在于,在所述对第二插件程序的插件 路线进行排顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件的 步骤之后还包括步骤根据第一插件程序总偏移坐标,计算第二插件程序的总偏移坐标。
6、 如权利要求l所述的方法,其特征在于,所述对第二插件程序的插件路 线进行排顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件的步 骤具体为针对第二插件程序的每个插件点,判断插件头在插当前插件点时是否会碰撞到之前插件点的元件;如果插件头会碰撞到之前插件点的元件,则交换插件路径中当前插件点和与之^5並撞的插件点的插件顺序。
7、 一种插件程序的转换系统,其特征在于,所述系统包括 第 一插件程序获取4莫块,用于获取第 一插件程序数据; 格式转换模块,用于将第一插件程序的格式转换成第二插件程序的格式; 插件点的插件顺序调整^t块,用于对第二插件程序的插件路线进行排顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件;以及第二插件程序合成模块,用于根据第二插件程序的格式和排序后的插件路线合成第二插件程序。
8、 如权利要求7所述的系统,其特征在于,所述系统还包括 不执行语句删除模块,用于删除第 一插件程序中不执行的程序语句。
9、 如权利要求7所述的系统,其特征在于,所述系统还包括 插件路径优化模块,用于对第二插件程序的插件路线进行调整,使插件路径最短。
10、 如权利要求9所述的系统,其特征在于,所述插件路径优化模块具体 又包括为插件起始点选取模块,用于选取离程序原点距离最大的插件点作为插件路 径的起始点;以及最短插件路径计算模块,用于根据所迷起始点,利用最短路径算法计算最 短的插件路径。
11、 如权利要求7所述的系统,其特征在于,所述系统还包括 总偏移坐标计算才莫块,用于根据第一插件程序总偏移坐标,计算第二插件程序的总偏移坐标。
12、 如权利要求7所述的系统,其特征在于,所述插件点的插件顺序调整 模块具体又包括碰撞判断模块,用于针对每个插件点,判断插件头在插当前插件点时是否 会碰撞到之前插件点的元件;以及插件顺序交互才莫块,用于如果插件头会碰撞到之前插件点的元件,则交换 插件路径中当前插件点和与之碰撞的插件点的插件顺序。
全文摘要
本发明适用于电子制造领域,提供了一种插件程序的转换方法及系统,所述方法包括以下步骤读取第一插件程序的数据;将第一插件程序的格式转换成第二插件程序的格式;对第二插件程序的插件路线进行排顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件;根据第二插件程序的格式和排序后的插件路线合成第二插件程序。在本发明中,通过对第一插件程序进行格式转换,并且调整插件顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件,来最终转换生成第二插件机器的插件程序。利用这种方法生成第二插件程序不仅使插件程序的生成效率较高,而且不会占用机器的生产时间。
文档编号G05B19/18GK101377670SQ200810216800
公开日2009年3月4日 申请日期2008年10月7日 优先权日2008年10月7日
发明者甄幸文 申请人:深圳创维-Rgb电子有限公司