利用VisionPro提供的脚本功能对付这种规律分布的产品非常有效。可以在肯定程度上实现程序的封闭,维护、扩展更加方便。

 

这里提供可运行的VPP程序、图片和脚本程序

 

使用c#脚本配合模板定位就可以实现测量和显示功能。

思路是:从左到右一一检测;一次检测一个重复区域;利用脚本改变ROI的位置,每次将新的ROI升级到PMAlign工具中。

CogRectangle roi;

//搜索区域

CogPMAlignTool toolPM=new CogPMAlignTool();

//模板工具

toolPM = toolGroup.Tools["CogPMAlignTool1"] as CogPMAlignTool; for(int i=0;i < 16;i  )

//16是检测目标的数量,改成变量替代比较好

{

/* ROI是矩形框 实例化ROI 定义矩形框的位置和大小 此处,ROI的X方向的位置是变化的 改成变量做到外边比较好 */

roi = new CogRectangle();

//roi.X = 21;

roi.Y = 16; roi.Width = 118;

roi.Height = 525;

roi.Color = CogColorConstants.Blue;

roi.X = 21   i * 122.5;

toolPM.SearchRegion = roi; toolPM.Run();

if(toolPM.Results.Count > 0)

{

//显示匹配到的目标

CogCompositeShape myGraphic = new CogCompositeShape();

myGraphic = toolPM.Results[0].CreateResultGraphics(CogPMAlignResultGraphicConstants.All);
myGraphics.Add(myGraphic);
}
//显示ROI
myGraphics2.Add(roi);

}

阿里云服务器
浏览记录