具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的较佳实施方式。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施方式。相反地,提供这些实施方式的目的是使对本发明的公开内容理解的更加透彻全面。
需要说明的是,当元件被称为“固定于”另一个元件,它可以直接在另一个元件上或者也可以存在居中的元件。当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。本文所使用的术语“内”、“外”、“左”、“右”以及类似的表述只是为了说明的目的,并不表示是唯一的实施方式。
如图1所示,在一个实施例中,提出了一种飞针测试机测试方法,本实施例主要以该方法应用于飞针测试机测试来举例说明。具体可以包括以下步骤:
步骤S102,接收对载板上安放的PCB板进行测试的测试指令,载板上排布有多片PCB板,载板放置在飞针测试机的测试区域。
具体地,PCB(Printed Circuit Board,印制电路板)板是电子元器件的支撑体,也是电子元器件电气连接的载体。载板用于放置PCB板,一片载板上可以放置多片PCB板,具体数量根据需要确定,例如可以放置8片,载板上的PCB板的排列方式可以根据需要设定,例如可以包括4行以及2列。载板可以是固定的,也可以是活动的。例如载板可以固定在飞针测试机中的测试区域,例如上夹具以及下夹具之间,当要对PCB板进行测试时,将PCB板放置到载板中。又例如可以预先在活动的载板中放置PCB板,再将载板放置在飞针测试机上的测试区域。测试指令可以是自动触发的也可以是根据用户的操作触发的。例如,当测试人员将载板放置在飞针测试机的测试区域后,可以点击飞针测试机上的测试控件,飞针测试机根据测试人员对测试控件的点击操作触发测试指令。
步骤S104,根据测试指令从多片PCB板中选取至少一片待测PCB板作为基准PCB板。
具体地,基准PCB板是用于确定位置关系的基准板。PCB板的选取方法可以根据需要设置。例如可以是随机选取,也可以是选取预设位置的PCB板作为基准PCB板。如图2所示,载板上放置有4片PCB板(基板1、基板2、基板3以及基板4),则可以将左下角的基板即基板1作为基准PCB板。
步骤S106,对基准PCB板的位置进行检测,得到基准PCB板的位置信息。
具体地,位置信息用于表示PCB板的位置。PCB板的位置信息可以用坐标值表示,飞针测试机可以将预设的位置点例如飞针测试机的探针的初始位置作作为坐标原点,根据各个位置点离坐标原点的距离得到各个位置点的坐标值。在确定基准PCB板对应的坐标值时,可以将PCB板上预设位置的坐标值作为PCB板的位置信息。例如,可以将基准PCB板中对位点的坐标值作为基准PCB板对应的位置信息。对位点是指在测试PCB板时用于确定PCB的位置与方向的点。PCB板上一般会设置有对应的对位点,一片PCB板的对位点个数可以为一个或多个。例如,PCB板的右上角以及左下角上有“+”字形状的对位点。
在一些实施例中,对位点可以是根据用户的选取操作选取的,例如,可以根据用户的对位点选取操作将基准PCB板上的一个或多个测试点作为对位点。例如,测试人员可以通过操作摄像头控制柄使摄像头移动到某一个测试点上,将该测试点作为对位点。
步骤S108,获取多片PCB板在载板的排布信息。
具体地,PCB板在载板上的排布信息用于表示PCB板在载板上是如何排布的。排布信息例如可以包括PCB板的行数、列数、PCB板之间的间隙以及PCB板的尺寸中的一种或多种等信息。排布信息可以是飞针测试机自动检测得到的,也可以是用户输入的。例如,可以利用飞针测试机上的测距设备对PCB板的尺寸进行测量。也可以接收由测试人员输入的PCB板的行数以及列数。
在一些实施例中,可以根据PCB板中测试点的坐标确定PCB板的尺寸。例如,可以读取预先存储的IPC文件,从IPC文件中获取PCB板测试点坐标信息,根据一片PCB板的测试点对应的X轴坐标最大值和最小值,计算出PCB上的测试点之间在X方向上相隔的最大距离,作为PCB板的长度W。根据一片PCB板的测试点中Y轴坐标的最大值和最小值,计算出PCB上的测试点之间在Y方向上相隔的最大距离,作为PCB的高度H。将PCB上的测试点之间在X方向上相隔的最大距离以及Y方向上相隔的最大距离作为PCB板的尺寸。其中,IPC文件是用于存储PCB板的相关信息的文件。
在一些实施中,可以接收用户输入的PCB板的行数、列数以及PCB板之间的间隙等排布信息。例如,用户在将载板放置到飞针测试机后,可以通过飞针测试机的输入控件输入PCB板的行数、列数以及PCB板之间的间隙。其中PCB板之间的间隙指PCB板之间的空间的大小,可以包括PCB板之间在X方向的间隙Δx以及在Y方向的间隙Δy。
步骤S110,根据基准PCB板的位置信息以及排布信息确定各片非基准PCB板的位置信息。
在一些实施例中,非基准PCB板是指载板中基准PCB板之外的PCB板。得到PCB板的排布信息后,基于排布信息以及基准PCB板的位置信息,可以得到各片非基准PCB板的位置信息。例如可以根据基准PCB板的对位点位置信息以及排布信息确定非基准PCB板的对位点位置信息,作为非基准PCB板的位置信息。
举个实际的例子,如果基准PCB板的对位点坐标有两个:a1以及a2,其中a1坐标为(x1,y1),a2坐标为(x2,y2),排布信息包括PCB板的尺寸为(W,H),在X方向的间隙为Δx以及在Y方向的间隙为Δy,则可以计算得到在X方向上,相邻的PCB板的对位点的距离为W+Δx。在Y方向上,相邻的PCB板的对位点的距离为H+Δy。因此,对于与基准PCB板相差一行以及一列的非基准PCB板,可以计算得到该非基准PCB板中,对位点b1的坐标为(x1+W+Δx,y1+H+Δy)。对位点b2的坐标为(x2+W+Δx,y2+H+Δy)。其中,b1与a1均位于PCB板的相同位置,b2与a2均位于PCB板的相同位置。例如,如果a1位于基准PCB板的左上角,则b1位于非基准PCB板的左上角。如果a2位于基准PCB板的右下角,则b2位于非基准PCB板的右下角。
步骤S112,飞针测试机根据多片PCB板的位置信息分别对多片PCB板进行测试,得到测试结果。
具体地,得到多片PCB板中各片PCB板的的位置信息后,可以根据PCB板的位置将测试装置例如探针移动到对应的位置进行测试,得到测试结果。
在一些实施例中,还可以获取PCB板的相邻网络信息以及线路信息,在对PCB板进行导通性测试时,根据PCB板的相邻网络信息以及线路信息对PCB板进行测试。测试网络信息可以按照存储格式[基准网络,测试网络]进行存储,测试网络信息包括测试网络、测试网络号、以及测试网络对应的基准网络和基准网络号。邻接网络信息可以按照存储格式[测试网络,邻接网络]进行存储,邻接网络同样也是在印刷线路板上,是印刷线路板上测试网络的相邻网络,也就是与测试网络相邻接的测试网络,所以邻接网络信息等同于测试网络信息。导通性,是指测量印刷线路板上测试网络的测试点是否导通,测试点是否导通表示该测试点所在的测试网络是否为通路,可以利用电阻法验证该测试点的导通性。例如根据测试点信息验证各测试点的导通性的步骤包括:向测试点施加恒定电流;检测出测试点两端的电压值;根据欧姆定律计算出该测试点的电阻值;将测试点的电阻值与预先设置的阈值进行比较,若不超过阈值则判定该测试点导通,若超过阈值则判定该测试点开路。
本发明实施例的飞针测试机测试方法,在利用飞针测试机进行测试时,载板上排布有多片PCB板,在进行测试时,从多片PCB中选择一片PCB板作为基准PCB板,基于基准PCB板的位置信息得到非基准PCB板的位置信息,因此在进行测试时,可以基于各片PCB板的位置信息确定PCB板的位置和方向,对对应位置上的PCB进行测试,因此可以同时在载板上放置多片待测试的PCB板,降低了放置PCB板的次数,提高了飞针测试机的测试效率。
例如,可以把安放PCB板的多排板框架安装到飞针测试机上夹具以及下夹具之间,然后将同批号的待测PCB排满整个框架,这样可以最大利用飞针台面的空间。并输入多排板框架中PCB板行数和PCB板列数,根据本申请实施例的测试方法进行测试,飞针测试机可以一次性测试完多片PCB,这样不但节省了人力,避免操作员短时间内反复上下PCB板,而且还大大提高了飞针测试机的整体效率。
在一些实施例中,排布信息包括PCB板的尺寸、PCB板之间的间隙以及PCB板的排列方向信息。其中,排列方向是用于表示PCB板是如何进行排列的,例如可以包括载板上PCB的行数与列数。在PCB板之间的间隙以及PCB板的尺寸相同的情况下,可以根据基准PCB板的对位点位置信息以及排布信息确定非基准PCB板的对位点位置信息,作为非基准PCB板的位置信息,如图3所示,包括以下步骤:
步骤S302,根据PCB板的尺寸以及PCB板的间隙确定基础位置偏移值。
具体地,间隙是指PCB板之间的空隙即空间的大小。如图2所示,基板1与基板3之间有一段空隙,空隙的大小为基板1的上边缘到基板3的下边缘的距离。可以将PCB板的尺寸以及PCB板的间隙相加,得到基础位置偏移值。其中基础位置偏移值可以包括X轴方向的基础位置偏移值,以及Y轴方向的基础位置偏移值。例如,如果PCB的尺寸为长为W,高为H,在Y方向的间隙为Δy,在X方向的间隙为Δx,则Y方向基础位置偏移值为H+Δy,则X方向基础位置偏移值为W+Δx。
步骤S304,根据基础位置偏移值以及PCB的排列方向信息确定各片非基准PCB板相对于基准PCB板的目标位置偏移值。
具体地,目标位置偏移值指非基准PCB板的位置相对于基准PCB板的位置的偏移值。得到基础位置偏移值后,根据PCB板的行数、列数得到各行各列的非基准PCB板相对于基准PCB板的目标位置偏移值。其中非基准PCB板对应的目标位置偏移值可以包括X方向的目标位置偏移值以及Y方向的目标位置偏移值。可以根据Y方向的目标位置偏移值以及基准PCB板与非基准PCB板的相差的行数的乘积得到Y方向的目标位置偏移值,根据X方向的目标位置偏移值以及基准PCB板与非基准PCB板的相差的列数的乘积得到X方向对应的目标位置偏移值.
结合图2举个实际的例子,如果PCB板的排列方向为2行以及2列,第一行第一列的基板即基板1为基准PCB板。假设Y方向基础位置偏移值为H+Δy,则X方向基础位置偏移值为W+Δx。则对于第一行第二列的基板即基板2,可以得到基板2与基板1的相差的行数为0,基板2与基板1的相差的列数为1,故基板2在X方向的目标位置偏移值为W+Δx,基板2在Y方向的目标位置偏移值为0。对于第二行第一列的基板即基板3,可以得到基板3与基板1的相差的行数为1,基板3与基板1的相差的列数为0,故基板3在X方向的目标位置偏移值为0,基板2在Y方向的目标位置偏移值为H+Δy。则对于第二行第二列的基板即基板4,可以得到基板4与基板1的相差的行数为1,基板2与基板1的相差的列数为1,故基板4在X方向对应的目标位置偏移值为W+Δx,基板4在Y方向对应的目标位置偏移值为H+Δy。假设还存在位于第三行第三列的基板,则可以得到该基板在X方向对应的目标位置偏移值为(W+Δx)*2,该基板在Y方向对应的目标位置偏移值为(H+Δy)*2。
步骤S306,根据基准PCB板的对位点位置信息以及非基准PCB板对应的目标位置偏移值确定非基准PCB板的对位点位置信息,作为非基准PCB板的位置信息。
具体地,得到基准PCB板的对位点位置信息以及非基准PCB板对应的目标位置偏移值后,可以将基准PCB板的对位点位置信息与非基准PCB板对应的目标位置偏移值相加,得到非基准PCB板的对位点位置信息。例如,假设基准PCB板如基板1的对位点a1的坐标为(x1,y1),则对于基板2,其对位点b1的坐标为(x1+W+Δx,y1),对于基板3,其对位点c1的坐标为(x1,y1+H+Δy)。对于基板4,其对位点的d1的坐标为(x1+W+Δx,y1+H+Δy)。
在一些实施例中,得到各个非基准PCB板的位置信息后,飞针测试机可以绘制出PCB在载板上的排布示意图,并将排布示意图显示在屏幕上,在测试的过程中,可以根据飞针测试机当前测试的PCB板对排布示意图中对应的当前PCB板示意图进行标注,方便测试人员了解PCB板测试的进度以及测试结果,例如测试结果为良品的标注显示为绿色,测试结果为不良的标注显示为红色,从而利于测试人员及时判断设备是否出现异常。
在一些实施例中,如图4所示,飞针测试机测试方法还可以包括以下步骤:
步骤S402,获取基准PCB板的基准测试点的位置信息。
步骤S404,根据基准测试点的位置信息以及排布信息确定非基准PCB板的非基准测试点的位置信息。
具体地,基准测试点是指位于基准PCB板上的测试点。非基准测试点是指位于非基准PCB板上的测试点。测试点例如可以是PCB板的焊接点,探针通过与PCB板的焊接点进行接触,能够得到PCB板的电气导通情况。基准测试点的坐标值是根据基准测试点与坐标原点的距离得到的。根据基准测试点的位置信息以及排布信息确定非基准PCB板的非基准测试点的位置信息的方式可以参考根据基准PCB板的对位点位置信息以及排布信息确定非基准PCB板的对位点位置信息的步骤,在此不再赘述。
在一些实施例中,测试点的位置信息与对位点的测试信息可以存储在不同的位置,例如,可以将测试点的位置信息保存在第一容器中,可以将对位点的位置信息保存在第二容器中。
在一些实施例中,不同的PCB板的位置信息是保存在不同的位置的。例如,可以将第1片PCB板的位置信息保存在第一容器中,将第2片PCB板的位置信息保存在第二容器中……将第n片PCB板的位置信息保存在第N容器中。飞针测试机利用CCD(Charge-coupledDevice,电荷耦合元件)视觉检测系统对PCB板对位,并按照容器的顺序对PCB板进行测试。
如图4所示,得到基准测试点以及非基准测试点的位置信息后,步骤S112即根据多片PCB板的位置信息分别对多片PCB板进行测试,得到测试结果包括:
步骤S406,获取当前测试的非基准PCB板的位置信息作为当前理论位置信息。
具体地,由于PCB板有多片,因此在不同时间测试的PCB板可以是不同的。当对基板2进行测试时,则基板2为当前测试的非基准PCB板。当对基板3进行测试时,则基板3为当前测试的非基准PCB板。在将非基准PCB板的对位点位置信息作为非基准PCB板的位置信息的情况下,则非基准PCB板的对位点位置信息为当前理论位置信息。因为非基准PCB板的对位点位置信息是根据基准PCB板的位置信息计算得到的,但是实际上在摆放PCB板时,会存在一定的旋转的情况,实际位置与计算到的位置信息可能存在一定的偏差,因此将计算得到的位置信息称为理论位置信息。
步骤S408,根据当前理论位置信息对当前测试的非基准PCB板的对位点的位置进行检测,得到当前实际位置信息。
具体地,根据当前理论位置信息可以将测试装置移动到当前理论位置信息对应的理论位置上。再在理论位置周围例如理论位置所在的预设区域内对非基准PCB板的对位点进行检测,得到对位点的实际的位置信息。以缩小检测实际位置信息的范围与时间。
步骤S410,根据当前实际位置信息以及当前理论位置信息得到当前位置补偿值。
具体地,当前位置补偿值描述实际位置信息与理论位置信息的差异。得到当前实际位置信息后以及当前理论位置信息后,可以根据非基准PCB的实际位置与理论位置的相对位置关系,得到当前位置补偿值。当前位置补偿值可以用当前实际位置与当前理论位置相乘的角度与距离表示,也可以表示成位移向量。
步骤S412,根据当前位置补偿值对当前测试的PCB板的当前测试点的位置信息进行位置补偿,得到当前测试点的实际位置信息。
具体地,由于一个PCB板的旋转对于整个PCB板上的对位点以及测试点的影响是几乎一致的,因此,对位点的实际位置相对于其理论位置的偏移量,与测试点的实际位置相对于其理论位置的偏移量也几乎是一致的,因此可以参考对位点对应的当前位置补偿值对非基准PCB板中同样是计算得到的当前测试点的位置信息进行位置补偿,得到当前测试点的实际位置信息。
步骤S414,根据当前测试点的实际位置信息将飞针测试机的测试模块移动到对应位置,对当前测试点进行测试。
具体地,得到当前测试点的实际位置信息后,将飞针测试机的测试模块例如探针移动到实际位置信息对应的的位置,以对当前测试点进行测试。可以理解,在对非基准PCB板进行测试时,飞针测试机的探针可以有多个,当前非基准PCB板的测试点与探针的位置可以是一一对应的,因此,可以是获取其中的一个测试点作为当前测试点,根据当前测试点的位置将该当前测试点对应的探针移动到对应位置时,其他测试点对应的探针也移动到对应测试点的位置。
如图5所示,在一个实施例中,提供了一种飞针测试机测试装置,该飞针测试机测试装置可以集成于上述的飞针测试机设备中,具体可以包括指令接收模块502、基准PCB板选取模块504、基准位置检测模块506、排布信息获取模块508、非基准位置信息确定模块510以及测试模块512。
指令接收模块502,用于接收对载板上安放的PCB板进行测试的测试指令,载板上排布有多片PCB板,载板放置在飞针测试机的测试区域;
基准PCB板选取模块504,用于根据测试指令从多片PCB板中选取至少一片待测PCB板作为基准PCB板;
基准位置检测模块506,用于对基准PCB板的位置进行检测,得到基准PCB板的位置信息;
排布信息获取模块508,用于获取多片PCB板在载板的排布信息;
非基准位置信息确定模块510,用于根据基准PCB板的位置信息以及排布信息确定各片非基准PCB板的位置信息;
测试模块512,用于飞针测试机根据多片PCB板的位置信息分别对多片PCB板进行测试,得到测试结果。
在一些实施中,基准位置检测模块506用于:对基准PCB板的对位点进行检测,确定基准PCB板的对位点位置信息,作为基准PCB板的位置信息;非基准位置信息确定模块510用于:根据基准PCB板的对位点位置信息以及排布信息确定非基准PCB板的对位点位置信息,作为非基准PCB板的位置信息。
在一些实施例中,如图6所示,排布信息包括PCB板的尺寸、PCB板之间的间隙以及PCB的排列方向信息,非基准位置信息确定模块510包括:
基础位置偏移值确定单元510A,用于根据PCB板的尺寸以及PCB板的间隙确定基础位置偏移值;
目标位置偏移值确定单元510B,用于根据基础位置偏移值以及PCB的排列方向信息确定各片非基准PCB板相对于基准PCB板的目标位置偏移值;
非基准位置信息确定单元510C,用于根据基准PCB板的对位点位置信息以及非基准PCB板对应的目标位置偏移值确定非基准PCB板的对位点位置信息,作为非基准PCB板的位置信息。
在一些实施例中,飞针测试机测试装置还包括:
基准测试点位置信息获取模块,用于获取基准PCB板的基准测试点的位置信息;
非基准测试点位置信息获取模块,用于根据基准测试点的位置信息以及排布信息确定各片非基准PCB板的非基准测试点的位置信息;
测试模块512包括:
当前理论位置信息获取单元,用于获取当前测试的非基准PCB板的位置信息作为当前理论位置信息;
当前实际位置信息得到单元,用根据当前理论位置信息对当前测试的非基准PCB板的对位点的位置进行检测,得到当前实际位置信息;
当前位置补偿值得到单元,用根据当前实际位置信息以及当前理论位置信息得到当前位置补偿值;
测试点实际位置信息得到单元,用根据当前位置补偿值对当前测试的非基准PCB板的当前测试点的位置信息进行位置补偿,得到当前测试点的实际位置信息;
测试单元,用根据当前测试点的实际位置信息将飞针测试机的测试模块移动到对应位置,对当前测试点进行测试。
图7示出了一个实施例中飞针测试机的内部结构图。如图7所示,该飞针测试机包括通过系统总线连接的处理器、存储器、输入装置以及测试装置例如探针。其中,存储器包括非易失性存储介质和内存储器。该飞针测试机的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现飞针测试机测试方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行飞针测试机测试方法。
应该理解的是,虽然本发明各实施例的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。