根据视觉的零部件分类

我们来编写执行下述作业的程序(图5.22),从滑沟盘,将圆形、正方形、六角形这三种板一个个随机地送进托盘。将落到盘内的板区分为圆板、正方板、六角板三类,并分别叠放在规定的地方.在执行这个作业时,板形的识别当然要靠视觉进行。抓取被识别后的板时,采用利用触觉的center,动作。另外,将板叠放时,用5.4.3节中所述的puton,并利用力觉稳稳当当地进行放置。郎这个作业是利用视觉、触觉、力觉的综合传感相互作用的例子。

板的种类的识别,是在视觉功能中,利用了样板匹配机能。事先将三种类形板的形状作为预比较模式disc(圆板),square(正方板),hexagon(六角板)登录下来,并与输入图像进行模式比

捕获.JPG

较。template-matching(templatelist,result,x,y,φ)这个视觉的功能,将输入图像与事先已登录下来的样板模式进行比较。

取得一致的样板名放在resule中,图心位置放在x,y中,惯性主轴的方向放在中中。因为x,y是视觉坐标系中的位置,所以事先有必要用calculate-world-coord这个功能将其变换到绝对坐标系。

为了抓取被识别的物体,利用5.4.2节中所说的center动作。为了正确抓取物体,在圆板与正方板的情况时,执行一次center作后,张开手指回转90°,再执行一次center动作,在六角板时,回转60°之后再一次执行center动作。这样就可以让物体中心与指的中心一致而准确地抓取。

抓住了物体之后,沿着5.4.1节中所述的轨道,移动手将disc,square,hexagon分别运送到规定的地方。在叠放物体时,用图5.4.3节中所述的puton.根据puton的使用,物体将被稳稳当当地叠放到所规定的地方。手离开物体之后,返回到待机位置,视觉系统开始识别。它的程序可以概括如下:

processband-eye-example;begin

startIOput-hand-opening(full-opening);

whileTRUEdobegin

8lartIOtemplatc-matching(templatelist,result,x,y,);startIOcalcu]ate-world-coord(x,ysφ,h,#5yosαw)

casetesultot

disc:begin

move-deproach(#,ym,b,αo);center(grasp-force);

startIOput-hand-opening(full-opening);delay(T₀);

α=a十90

startlOput-aim-reference(*>yo,h,α);delay(T₉);center(grasp-farce);

move-deproach(Xdisc,Ydisc,zdisc,0)

puton;move-deproach(Xhome,Yhome,Zhame,ahome);

end:

*quare:begin


move-deproach(如>yosh,a);cepter(grasp-force);

startIOput-hand-opening(fuli-opeoing);delay(T₀);

a=αu十90;

startIOput-arm-reference(#ywshsαm);delay(T₀);

center(grasp-force);

move-deproach(X6quace,Ysquare,Zsquares0);

puton;

move-deproach(Xhome,Yhome,Zhome,αhpme);

end;

hexagon;begin

move-deproach(xm,ymo₅m);center(grasp-force);

tartIOput-hand-openipg(full-opening);delay(To);

α,=4o十60

utart[Oput-arm-reference(xyu,A,α);delay(T₀);

center(grasp-force);

move-deproacb(Xhex,Yhex,Zhex,0);puton;

move-deproach(Xhome,Yhome,Zhome,ahome);end;

end;end;


标签: 视觉触觉力觉

随便看看