CN101377670A - 一种插件程序的转换方法、系统 - Google Patents
一种插件程序的转换方法、系统 Download PDFInfo
- Publication number
- CN101377670A CN101377670A CNA2008102168001A CN200810216800A CN101377670A CN 101377670 A CN101377670 A CN 101377670A CN A2008102168001 A CNA2008102168001 A CN A2008102168001A CN 200810216800 A CN200810216800 A CN 200810216800A CN 101377670 A CN101377670 A CN 101377670A
- Authority
- CN
- China
- Prior art keywords
- plug
- unit
- card program
- point
- program
- 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.)
- Granted
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明适用于电子制造领域,提供了一种插件程序的转换方法及系统,所述方法包括以下步骤:读取第一插件程序的数据;将第一插件程序的格式转换成第二插件程序的格式;对第二插件程序的插件路线进行排顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件;根据第二插件程序的格式和排序后的插件路线合成第二插件程序。在本发明中,通过对第一插件程序进行格式转换,并且调整插件顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件,来最终转换生成第二插件机器的插件程序。利用这种方法生成第二插件程序不仅使插件程序的生成效率较高,而且不会占用机器的生产时间。
Description
技术领域
本发明属于电子制造领域,尤其涉及一种插件程序的生成方法及系统。
背景技术
目前,自动插件机被广泛应用在电子制造行业来进行自动装着(AI,电子元器件自动插件)。自动插件机根据数控程序(Numerical Control,NC)来控制元器件的插件过程。其中,数据程序也称插件程序。
RH3、RHS是常见的用来插径向元器件的机器,由于两种自动插件机器在工作原理、插件程序格式等方面均存在差异,当同一种电路板(PCB、印刷电路板)需要安排在RH3、RHS插件机的机器中完成插件生产时,其所需要的插件程序就存在差别,从而在实际生产中需要针对该两类型的机器分别编写不同的插件程序。
由于插件程序的编写受到各种技术方面因素的影响,以致于无论在RH3插件机器或者RHS插件机器上,都很难快速而准确地编写出一套完整的插件程序。现有的一种RHS程序的编制方式是:根据元器件清单,在机器上按照元器件安装点顺序或元器件种类顺序一个元件接一个元件的直接调节机器来完成RHS编程,该方式存在以下缺点:1、由于需要在停止机器生产的情况下完成调试操作,从而占用了机器生产时间,直接影响产品的生产。2、插件程序所需的编制时间较长。例如,制作一个需装着150个元器件的电路板插件程序一个熟练的技术员平均需要10小时,而实际生产中由于电路设计要求等因素制约,在编写好插件程序后仍需要对插件路线进行完善、调整,所以往往需要更长的机器调试时间。3、插件程序的准确性较差。由于长时间的人工操作机器来调试程序,由于疲劳容易导致插件程序的准确性较差。
发明内容
本发明实施例的目的在于提供一种插件程序的转换方法,旨在解决利用插件程序的编制方法来生成插件程序时,不仅插件程序的生成效率较低,而且会占用机器的生产时间的问题。
本发明实施例是这样实现的,一种插件程序的转换方法,所述方法包括以下步骤:
读取第一插件程序的数据;
将第一插件程序的格式转换成第二插件程序的格式;
对第二插件程序的插件路线进行排顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件;
根据第二插件程序的格式和排序后的插件路线合成第二插件程序。
本发明实施例的另一目的在于提供一种插件程序的转换系统,所述系统包括:
第一插件程序获取模块,用于获取第一插件程序数据;
格式转换模块,用于将第一插件程序的格式转换成第二插件程序的格式;
插件点的插件顺序调整模块,用于对第二插件程序的插件路线进行排顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件;以及
第二插件程序合成模块,用于根据第二插件程序的格式和排序后的插件路线合成第二插件程序。
在本发明的实施例中,通过对第一插件程序进行格式转换,并且调整插件顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件,来最终生成第二插件机器的插件程序。利用这种方法生成第二插件程序不仅使插件程序的生成效率较高,而且不会占用机器的生产时间。
附图说明
图1是本发明实施例提供的第一插件程序转换成第二插件程序的方法的流程图;
图2是本发明实施例提供的对第二插件程序的插件路线进行排顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件的步骤的实施流程图;
图3是本发明实施例提供的第一插件程序转换成第二插件程序的系统的结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在本发明的实施例中,通过对第一插件程序进行格式转换,并且调整插件顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件,来最终生成第二插件机器的插件程序。利用这种方法生成第二插件程序不仅使插件程序的生成效率较高,而且不会占用机器的生产时间。在本发明的实施例中,第一插件程序为RH3插件程序,第二插件程序为RHS插件程序。
图1示出了本发明实施例提供的第一插件程序转换成第二插件程序的方法的实施流程,详述如下:
在步骤S101中,获取第一插件程序数据。
在步骤S102中,拆分插件程序数据,获取参数数据。将插件程序数据拆分为多个程序语句。针对每个程序语句,获取相应的参数数据,例如:/值,G值,M值,T值,X值,Y值,Z值,V值。
在步骤S103中,删除第一插件程序中不执行的程序语句。
由于实际生产中元器件的变更,例如由于设计、工程等更改,可能需要取消某个元器件的插件,从而会对插件程序中相应的程序语句进行标记(这类标记过的程序语句也被称作跳跃语句)。删除这些不执行的程序语句,以避免其中参数的干扰。
由于插件程序语句中标记不执行该语句的参数表示为‘/7’,循环搜索含有‘/7’的程序语句,并删除该程序语句即可。
在步骤S104中,将第一插件程序的格式转换成第二插件程序的格式。
修改第一插件程序中的方向参数T的值。对于第一插件程序来说,其方向参数T的值为1时,表示的是X方向,T的值为2时,表示的是Y方向。而对于第二插件程序来说,其方向参数T的值为1时,表示的是Y方向,T的值为2时,表示的是X方向。因此,为了确保执行的正确性,需要修改第一插件程序中的方向参数T的值,具体为:T值为1时,修改成2,T值为2时,修改成1。
除修改方向参数T的值外,还需要修改X坐标、Y坐标、料站Z、扭角V等格式不一样的参数。例如某一第一插件程序的程序语句为:N0003/0G0M001T801X020527Y010676Z00001V00000+00000D,
其中,‘N’项(如程序语句中N0003)为执行顺序参数;
‘/’项(如程序语句中/0)为判断是否执行插件的开关参数;
‘G’项(如程序语句中G0)为判断是否重新执行参数;
‘M’项(如程序语句中M001)为判断机器是否需检验校正各参数;
‘T’项(如程序语句中T801)为平面坐标数据;
‘X、Y’项(如程序语句中X020527Y010676)为平面坐标数据;
‘Z’项(如程序语句中Z00001)料站参数;
‘V’项(如程序语句中V00000)为插件扭角偏移量参数;
‘D’项(如程序语句中+00000D)表示语句执行完毕。
针对该程序语句,转换成第二程序语句后为:
N0003/0G0M001T801X+020527Y+010676Z+00001V+00000W+00000+00000D。
其中,‘W’项(如程序语句中W+00000)为跨距也就是插入的元器件宽度参数;
‘D’项(如程序语句中+00000D)为语句执行完毕。
在步骤S105中,对第二插件程序的插件路线进行调整,使插件路径最短。
由于插件头移动到程序原点最快,作为本发明的实施例,可以选取离程序原点距离最大的点作为插件路径的起始点,从而可以减少坐标移动距离,并规定插件的大致路径方向,以减少插件头碰撞元件。
为了简单、快捷地计算出最短的插件路径,作为本发明的实施例,可以采用中点最短路径算法,其具体为:在选取了第一个插件点N1后,根据插件参数中所有插件点的坐标位置,计算出距离N1最近的插件点作为第二个插件点N2。然后,再计算N1与N2的中点坐标M1,在剩余点中查找离M1最近的点作为N3,计算N2与N3的中点M2,在剩余点中查找离M2最近的点作为N4,以此类推,可以计算出所有插件点的插件顺序,即可得到优化的插件路径。
在步骤S106中,对第二插件程序的插件路线进行排顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件。
插件路径所有的P个插件点为:N1,N2,......,Ni,......,Nj,......,Np-1,Np。由于按优化的插件路径进行插件时,插件头可能触碰到前面已经插好的插件点,例如插N5时可能触碰到前面已经插好的N1、N2、N3、N4中的一个或多个。因此,为了保证插件的正确性,需要调整插件顺序,使得插件头插任一插件点时,不碰撞到之前的插件点。
在步骤S107中,根据第一插件程序总偏移坐标,计算第二插件程序的总偏移坐标。由于插件程序转换过程没对各插件点的坐标进行数值更改处理,并且两类型机器的设计可移动坐标范围一致,所以总偏移坐标的转换只需要在数据格式上变换。例如,常见的格式变换方式是,在第一插件程序中,参数项‘F’一般设置为0,其格式为‘F000’,而在第二插件程序中,其格式为‘F+00000’,因此,将‘F000’转换为‘F+00000’即可。
在步骤S108中,根据第二插件程序的格式和排序后的插件路线合成第二插件程序。
图2示出了本发明实施例提供的对第二插件程序的插件路线进行排顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件的步骤的实施流程,详述如下:
在步骤S1061中,取第i个插件点,i的初始值为2。
在步骤S1062中,判断插件头插当前插件点时,是否会碰撞到之前的第j个插件点元件。其中,j的初始值为1,并且1<=j<i。若不会碰撞到第j个插件点,执行步骤S1064,否则执行步骤S1063。
作为本发明的实施例,插件头碰撞已插件元器件的条件是:
如果当前插件点为X方向的插件点时,第i、j个插件点的Y坐标差值是否小于或等于q,并且当前插件点Y坐标值是否大于第j个插件点的Y坐标值,并且第i个插件点与第j个插件点的X坐标差值小于s。用算式表示即为Y(i)>Y(j),并且|Y(i)-Y(j)|<=q,并且|X(i)-X(j)|<=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),并且|X(i)-X(j)|<=q,并且|Y(i)-Y(j)|<=s,其中,X(i)、Y(i)分别表示第i个插件点的横坐标及纵坐标,X(j)、Y(j)分别表示第i个插件点的横坐标及纵坐标,并且1<=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之后增加总偏移坐标计算模块36,该总偏移坐标计算模块36根据第一插件程序总偏移坐标,计算第二插件程序的总偏移坐标,
综上所述,本发明实施例利用第一插件程序来转换生成第二插件程序,即通过对第一插件程序进行格式转换,并且调整插件顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件,来最终生成第二插件程序。利用这种方法生成第二插件程序不仅使插件程序的生成效率较高,而且不会占用机器的生产时间。通过删除不执行的程序语句,避免了为避免不执行的程序语句中的参数干扰。通过对插件点的插件顺序进行调整,以优化插件路径,从而使插件效率更高。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (12)
1、一种插件程序的转换方法,其特征在于,所述方法包括以下步骤:
读取第一插件程序的数据;
将第一插件程序的格式转换成第二插件程序的格式;
对第二插件程序的插件路线进行排顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件;
根据第二插件程序的格式和排序后的插件路线合成第二插件程序。
2、如权利要求1所述的方法,其特征在于,在所述将第一插件程序的格式转换成第二插件程序的格式的步骤之前还包括步骤:
删除第一插件程序中不执行的程序语句。
3、如权利要求1所述的方法,其特征在于,在所述对第二插件程序的插件路线进行排顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件的步骤之前还包括步骤:
对第二插件程序的插件路线进行调整,使插件路径最短。
4、如权利要求3所述的方法,其特征在于,所述对第二插件程序的插件路线进行调整,使插件路径最短的步骤具体为:
选取离程序原点距离最大的插件点作为插件路径的起始点;
根据所述起始点,利用最短路径算法计算最短的插件路径。
5、如权利要求1所述的方法,其特征在于,在所述对第二插件程序的插件路线进行排顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件的步骤之后还包括步骤:
根据第一插件程序总偏移坐标,计算第二插件程序的总偏移坐标。
6、如权利要求1所述的方法,其特征在于,所述对第二插件程序的插件路线进行排顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件的步骤具体为:
针对第二插件程序的每个插件点,判断插件头在插当前插件点时是否会碰撞到之前插件点的元件;
如果插件头会碰撞到之前插件点的元件,则交换插件路径中当前插件点和与之碰撞的插件点的插件顺序。
7、一种插件程序的转换系统,其特征在于,所述系统包括:
第一插件程序获取模块,用于获取第一插件程序数据;
格式转换模块,用于将第一插件程序的格式转换成第二插件程序的格式;
插件点的插件顺序调整模块,用于对第二插件程序的插件路线进行排顺序,使插件头在插每个插件点时,不碰撞到之前插件点的元件;以及
第二插件程序合成模块,用于根据第二插件程序的格式和排序后的插件路线合成第二插件程序。
8、如权利要求7所述的系统,其特征在于,所述系统还包括:
不执行语句删除模块,用于删除第一插件程序中不执行的程序语句。
9、如权利要求7所述的系统,其特征在于,所述系统还包括:
插件路径优化模块,用于对第二插件程序的插件路线进行调整,使插件路径最短。
10、如权利要求9所述的系统,其特征在于,所述插件路径优化模块具体又包括为:
插件起始点选取模块,用于选取离程序原点距离最大的插件点作为插件路径的起始点;以及
最短插件路径计算模块,用于根据所述起始点,利用最短路径算法计算最短的插件路径。
11、如权利要求7所述的系统,其特征在于,所述系统还包括:
总偏移坐标计算模块,用于根据第一插件程序总偏移坐标,计算第二插件程序的总偏移坐标。
12、如权利要求7所述的系统,其特征在于,所述插件点的插件顺序调整模块具体又包括:
碰撞判断模块,用于针对每个插件点,判断插件头在插当前插件点时是否会碰撞到之前插件点的元件;以及
插件顺序交互模块,用于如果插件头会碰撞到之前插件点的元件,则交换插件路径中当前插件点和与之碰撞的插件点的插件顺序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008102168001A CN101377670B (zh) | 2008-10-07 | 2008-10-07 | 一种插件程序的转换方法、系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008102168001A CN101377670B (zh) | 2008-10-07 | 2008-10-07 | 一种插件程序的转换方法、系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101377670A true CN101377670A (zh) | 2009-03-04 |
CN101377670B CN101377670B (zh) | 2010-09-01 |
Family
ID=40421245
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008102168001A Expired - Fee Related CN101377670B (zh) | 2008-10-07 | 2008-10-07 | 一种插件程序的转换方法、系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101377670B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101571888B (zh) * | 2009-06-17 | 2010-09-08 | 哈尔滨工业大学 | 一种继电器用多有限元软件联合仿真分析方法 |
CN101566840B (zh) * | 2009-05-15 | 2012-06-27 | 深圳创维-Rgb电子有限公司 | 用于优化元件安装顺序的控制方法及系统 |
CN101692174B (zh) * | 2009-08-03 | 2012-11-14 | 深圳创维-Rgb电子有限公司 | 多台插件机组线联动插件的方法 |
-
2008
- 2008-10-07 CN CN2008102168001A patent/CN101377670B/zh not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101566840B (zh) * | 2009-05-15 | 2012-06-27 | 深圳创维-Rgb电子有限公司 | 用于优化元件安装顺序的控制方法及系统 |
CN101571888B (zh) * | 2009-06-17 | 2010-09-08 | 哈尔滨工业大学 | 一种继电器用多有限元软件联合仿真分析方法 |
CN101692174B (zh) * | 2009-08-03 | 2012-11-14 | 深圳创维-Rgb电子有限公司 | 多台插件机组线联动插件的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101377670B (zh) | 2010-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102621826B (zh) | 基于vme总线的步进扫描光刻机的同步控制系统及该系统的同步控制方法 | |
CN100541502C (zh) | 一种具有检错功能的pcb仿真系统及其实现方法 | |
CN103180792B (zh) | 工具路径的生成方法以及生成装置 | |
JP4655240B2 (ja) | タイミング解析支援装置 | |
CN104626593B (zh) | 3d打印的cnc系统与打印文件的生成方法、打印方法 | |
CN102682166A (zh) | Smt设备快速制程系统及方法 | |
CN102004485A (zh) | 机器人离线示教方法 | |
CN101377670B (zh) | 一种插件程序的转换方法、系统 | |
EP2300884A1 (en) | System and method for constructing virtual nc controllers for machine tool simulation | |
CN104714842B (zh) | 一种调整时钟路径延迟来修复时序违反的方法 | |
CN103093020A (zh) | 访问设计规则和设计特征库的方法、系统和软件 | |
CN103093038A (zh) | 一种物料清单的更新方法及装置 | |
CN106292539A (zh) | 数控编程装置、数控加工系统及方法 | |
CN109597979A (zh) | 清单表格生成方法、装置、计算机设备和存储介质 | |
CN103869755A (zh) | 一种调整加工代码进给速度来保证机床输出功率平滑的方法 | |
CN103106313B (zh) | 轧后件顺序重构方法 | |
CN101908081A (zh) | 电路辅助设计方法及系统 | |
CN102664142B (zh) | 对现有版图填充冗余多晶硅条阵列的插入方法 | |
CN101373382B (zh) | 自动插件机器的插件程序转换方法及系统 | |
CN112036442A (zh) | 多帧3d点云数据中物体追踪标注的方法和装置、存储介质 | |
CN103177064B (zh) | 一种自动取录电子文档中指定内容的方法 | |
CN100377151C (zh) | 量测设备离线编程系统及方法 | |
CN102890731B (zh) | 具有统一接口的dfm改进实用工具 | |
CN100464267C (zh) | 用于伺服控制的总线协议解析芯片 | |
CN101458724A (zh) | 修改布局图的方法及其系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100901 Termination date: 20131007 |