本发明涉及机器视觉技术领域,更具体的说,特别涉及一种五点识别ccd方法。
背景技术:
传统的应用在pcb测试设备中ccd系统,采用两点或四点标识进行分析。其中,采用两点标识法,其ccd工位与夹具测试工位的定位一致性要求很高,往往难以达到,由于定位基准的偏移,造成分析发生偏差,容易造成ccd系统效果不佳。采用四点标识法,比较准确,但往往会有pin孔破损,单个pin孔移位的情况,导致四点分析系统少了一个基准,自然也就分析不准,ccd效果自然也不理想。
技术实现要素:
本发明的目的在于针对现有技术存在的技术问题,提供一种五点识别ccd方法,能够解决pcb板测试时、整体偏移或旋转的产品无法扎到pad上,导致测试fail的问题。
为了解决以上提出的问题,本发明采用的技术方案为:
一种五点识别ccd方法,该方法具体步骤包括如下:
步骤s1:固定pcb板,并定位其上三个pin孔,另外选取pcb板上的两点,记为mark1、mark2;
步骤s2:根据当前pcb板的pin孔三角形相对于模板的pin孔三角形是否全等,判断pcb板内是否发生形变,如果无形变,则执行下一步;如果有形变,则判定pcb板的涨缩误差r是否小于1/2(l+d),若小于则执行下一步;若大于,则直接判定为该pcb板不合格;
其中,l为被测pcb最小焊盘直径,d为探针针尖截面直径;
步骤s3:以pcb板上较小形变基准边建立坐标系,即将pcb板上形变最小角的对边作为x轴,该边的一个端点或中点为原点建立pin孔坐标系;
步骤s4:将mark1和mark2在所述pin孔坐标系内的坐标与模板上的模板mark1和模板mark2在所述pin孔坐标系内的坐标进行比较,计算出pcb板的线段mark1mark2与模板的线段模板mark1模板mark2形成的夹角,得到旋转偏移角;
步骤s5:根据三个pin孔在夹具中心坐标系内的坐标,以原点的中心坐标进行坐标系平移,以x轴上两pin孔组成的线段在中心坐标系内与中心坐标系x轴的夹角进行坐标系旋转,将点mark1、mark2从pin孔坐标系转移到夹具中心坐标系;
步骤s6:计算当前线段mark1mark2的中心相对于线段模板mark1模板mark2的中心在x轴和y轴的平移量记为x、y,并结合所述旋转偏移角θ,将夹具按照x、y、θ进行搬针,或pcb板按照-x、-y、-θ进行运动。
所述步骤s3中,若涨缩造成的形变对平移计算造成的误差为r1,确保接触良好时针尖与焊盘接触面直径为r2,则允许涨缩误差r为l+d-r1-2r2。
所述夹具按照x、y、θ进行搬针,具体包括如下:
如果是先旋转后平移,那么先将线段模板mark1模板mark2旋转θ得到线段模板mark1’模板mark2’,并计算出线段模板mark1’模板mark2’的中点与pcb板上的线段mark1mark2中点的位置偏差作为x、y平移量,再将线段模板mark1’模板mark2’在x轴、y轴平移x、y;
如果是先平移后旋转,先计算出pcb板上的线段mark1mark2旋转-θ角度后的虚拟位置,在根据虚拟线段mark1”mark2”中点与线段模板mark1模板mark2中点的位置偏差作为x、y平移量,并将线段mark1mark2在x轴、y轴平移x、y后,再旋转θ。
与现有技术相比,本发明的有益效果在于:
本发明中采用五点识别ccd的方法,可以更稳定,更精确的分析计算出pcb板发生的整体偏移、偏转量xyθ,再通过外围的夹具微调结构,按这个计算结果进行搬针,使得夹具能准确的扎到那些发生偏移、偏转的产品上pad,从而进行顺利的测试,提高客户产品测试的合格率。
相对于以往的ccd识别方法,在建立pin孔坐标系时,还可以选择最小形变边作为基准,这样分析得出的结果更精确。
附图说明
图1为本发明的一种五点识别ccd方法的步骤流程图。
图2为本发明远端偏移的示意图。
图3为本发明涨缩形变的示意图。
图4为本发明pin孔坐标系的示意图。
图5为本发明旋转偏移角的示意图。
图6为本发明坐标系转换的示意图。
图7为本发明待测pcb板先旋转后平移的示意图。
图8为本发明待测pcb板先平移后旋转的示意图。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的较佳实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容的理解更加透彻全面。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
参阅图1所示,本发明提供的一种五点识别ccd方法,该方法具体步骤包括如下:
步骤s1:固定pcb板,并定位其上三个pin孔,分别记为pin1、pin2、pin3;另外选取pcb板上的两点,记为mark1、mark2。
步骤s2:根据当前pcb板的pin孔三角形相对于模板的pin孔三角形是否全等,判断pcb板内是否发生形变,如果无形变,则执行下一步;如果有形变,则判定pcb板的涨缩误差r是否小于1/2(l+d),若小于则执行下一步;若大于,则直接判定为该pcb板不合格。
本步骤中,由于pcb板一旦变形,那么三个pin孔的位置必定发生改变,其相对距离也会发生变化,且形变是绝对的,基本上所有pcb板的pin孔都不会与模板的pin孔位置完全一致,即必然会发生变形。如果没有形变,则要判断mark1、mark2两点是否产生了偏移,也要执行下一步。具体分析如下:
若pcb板变形,且最大形变角导致允许最大尺寸板的“远端偏移”超过1/2(l+d)时,则判定pcb板为形变过大,直接判定为不合格(其l为最小焊盘直径、d为最小探针针尖截面直径)。
上述中,所述远端偏移(参阅图2所示)为以pin孔三角形的“形变最大角”对应的顶点为圆心,以该角为扇形圆心角,以pcb板的长边为半径的扇形,与pcb板边的交点,其末端相对于模板发生的偏移。
所述形变角为模板上pin孔三角形与被测pcb板上pin孔三角形的三内角之差称为形变角。根据内角差值大小分为形变最大角和形变最小角。
这里假设未形变时,针尖刚好扎到焊盘中心上,此时,焊盘中心到针尖中心距离为0;倘若形变导致焊盘超过针尖能接触的范围,即焊盘中心到针尖中心距离超过1/2(l+d)时,针与焊盘就无接触。这里忽略了接触面积、形变的不定向性、还有形变造成软件计算造成的误差,所以“1/2(l+d)”只是允许涨缩误差r的粗略估算。
若考虑以上造成误差的因素,假定涨缩造成的形变对平移计算造成的误差为r1,确保接触良好时针尖与焊盘接触面直径为r2,则允许涨缩误差 r为l+d-r1-2r2。
下面通过具体实例来说明,具体如下:
如附图3所示,若焊盘直径为0.15mm,探针针尖截面直径为0.1mm。
当pcb板出现膨胀变形时,假如左边焊盘左移0.1mm,右边焊盘右移0.15mm,则只需要将针床整体往右移动0.025mm,即可出现图中第二行的情况,探针与焊盘刚好能接触到。
令:被测pcb最小焊盘直径为l,探针针尖截面直径为d;假定:涨缩造成的形变对平移计算造成的误差为r1,确保接触良好时针尖与焊盘接触面直径为r2。
则:允许涨缩误差r为l+d-r1-2r2。
例:当l=0.15mm,d=0.1mm,r1=0.03mm,r2=0.01mm时,r=0.2mm。
步骤s3:以pcb板上较小形变基准边建立坐标系,即将pcb板上形变最小角的对边为x轴,该边的一个端点(或中点)为原点建立pin孔坐标系,如附图4所示。
本步骤中,根据大边对大角,则最小形变角的对边就是最小形变边,选取该边作为pin坐标系的x轴,比选取任意边或者四点系统中固定两点作为x轴更为精确。
步骤s4:计算旋转偏转角,即将mark1、mark2在所述pin孔坐标系内的坐标与模板上两mark点(即模板mark1、模板mark2)在所述pin孔坐标系内的坐标进行比较,可以计算出pcb板的线段mark1mark2与模板的线段模板mark1模板mark2形成的夹角,即为旋转偏移角θ,如附图5所示。
步骤s5:根据pin孔在夹具中心坐标系内的坐标,以原点的中心坐标进行坐标系平移,以x轴上两pin孔组成的线段在中心坐标系内与中心坐标系x轴的夹角进行坐标系旋转,从而将点mark1、mark2从pin孔坐标系转移到夹具中心坐标系。
由于旋转运动都是以原点为中心的,因此需要将点mark1、mark2从pin 孔坐标系转移到夹具中心坐标系,然后在夹具中心坐标系中计算旋转后的平移量。
如附图6所示,将上面的pin孔坐标系放置到夹具框内,其中的o点是运动中心,以此点作为原点,电机水平运动方向为x轴建立的坐标系称为夹具中心坐标系。
步骤s6:计算当前线段mark1mark2的中心相对于线段模板mark1模板mark2的中心在x轴和y轴的平移量记为x、y,并结合所述旋转偏移角θ,将夹具按照x、y、θ进行搬针,或pcb板按照-x、-y、-θ进行运动。具体包括:
如果是先旋转后平移,那么先将线段模板mark1模板mark2旋转θ得到线段模板mark1’模板mark2’,并计算出线段模板mark1’模板mark2’的中点与pcb板上的线段mark1mark2中点的位置偏差作为x、y平移量,再将线段模板mark1’模板mark2’在x、y轴平移x、y。
如果是先平移后旋转,先计算出pcb板上的线段mark1mark2旋转-θ角度后的虚拟位置,在根据虚拟线段mark1”mark2”中点与线段模板mark1模板mark2中点的位置偏差作为x、y平移量,并将线段mark1mark2在x、y轴平移x、y后,再旋转θ。
本步骤通过以下具体实例来说明:
如图7所示,模板mark1、模板mark2为标准模板上的mark点位置,a、b为生产的待测pcb板上相应mark1、mark2的位置,由于菲林印制时,绕着p点发生了一点偏转,同时还发生了x、y平移。
那么,要想使针床上mark1、mark2对应的针准确的戳中a、b点,就得进行x、y、θ的运动。搬针的旋转是围绕点0为中心的,具体包括如下情况:
若先旋转后平移,则具体为:
1.1先旋转搬针,将模板mark1、模板mark2旋转θ到a、b点的平行 位置c、d;
由于|oc|=|omark1|、|od|=|omark2|、|cd|=|mark1mark2|,
故δocd≌δomark1mark2,由此很容易推出∠υ=∠θ。
其中,∠υ为直线mark1、mark2和直线ab的夹角,很容易通过公式计算得出。
1.2再平移xy使cd与ab重合;
其中,a、b、模板mark1、模板mark2点坐标已知,c、d点坐标如下:
c点坐标为【|omark1|cos(∠β-∠θ)、|omark1|sin(∠β-∠θ)】
d点坐标求解与c点类似。然后根据线段模板mark1模板mark2中点与线段ad中点的x、y差距来计算x、y平移量即可。
若先平移后旋转,则具体为:
先平移搬针,使模板mark1、模板mark2平移到c、d位置(此处c、d是虚拟a、b点绕o旋转-θ角度后得到的),而后再以o为中心进行旋转θ,使之与ab重合。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。