saki算法详解.pdf - 第68页

附录 68 如何使 用矢 量对 检测窗 口进 行补正

100%1 / 69
應用實:
此窗口的Size應與
Fiducial MarkSize
本一樣
設置第一個窗口的尋找範圍
当第二个窗口面积包含了要检测区域的时, 机器就会用第一个窗口(第一个窗口的面
积用S1表示)在第二个窗口内读取符合你设定光亮度范围内的像素.当读取像素达到最多
(这是这个区域的面积用Cmax表示)的时候 Circle 就会计算出这个面积的中心作为搜索
的结果, 你可以在下面看见计算的逻辑:
计算结果值 "Sample" = Cmax / S1.
67
OK
OK
NG
1窗口在這里時,幾乎沒有符合設定的
灰度值的燈光,所以Sample值趨向于0
1窗口在這里時, 將有一定的比例的灰度
值符合要求,此時Sample值大概為10個百
分點
1窗口在這里時, 窗口內幾乎所有的灰度
值都符合要求,此時Sample達到最大值.
在這時BF將認為這個區域為Mark點的中
在照明方式的
選擇上,應使
得PCB之
MARK區域的
光亮度與其周
邊區域能明燭
顯區分開為原
則.
OK
Rang可
以根據
具體的
情況設
定,此范
圍可以
給得較
為寬松.
附录
68
如何使用矢量对检测窗口进行补正
通常情况下,当我们在对炉前或炉后的元器件进行编程的时候,都会
添加adjust窗口来计算偏移量。偏移量是一个矢量,应当用矢量变量进
行记忆。例如,对炉后的元件检测,我们通常都会制作3adjust窗口。
第一个是计算x方向上的偏移量,第二个是计算y方向上的偏移量。第三
个是将xy方向上的偏移矢量相加,得出一个总的偏移矢量。我们通常
将前两个偏移量记忆到v1v2中,然后再相加到v3。根据实例,在允许
的偏移之内,其它的的检测窗口将调用v3,使得对应的检测窗口随着元
件的偏移一起精确的移动,这样有效的降低误报。当制作炉前/炉后的检
测程序时,除了Areaadjustshift窗口之外,我们在其他的窗口中都
调用v3,使检测的精确度提高。(Area是计算元器件的中心,adjust是计
shift
69
算偏移量的矢量,
shift
是判断元器件的偏移是否在允许的范围之内。若
shift也调用了v3,那么将不会对元器件的偏移进行监控(不会报警)。
因此,我们在设置shift的时候不需要调用v3