装配作业的程序

因为准备工作全部作好,所以我们按5.6.2.节所述的顺序,来编制执行装配作业的程序,为了简洁地表现程序,事先将经常使用的文本宏功能化是方便的。

DEFINEgraap($object,$grasp_force)

cCENTER(串grlsp_force);AFFIX$objectTOhand;2DEFINEe-Erasp($object,事gIaap_force)

cCENTER(10);OPENbandTO100;

MOVEhandTO@*C00RD(ROT(zhat,90),VECT(0,0,0));

CENTER(串grasp_force);AFF1X$objectTOhand;一DEFINErelease($object)

cOPENhandTOfull_opening;UNFIXsobjectFROMhand;DEFINEpiek_erew〔$sctew〕

cbite_acrew$screW8crew_feedet—VECT(0,0,d);AFEIX$screwTOdriver;口

抓取物体,或手离开物体时,有必要同时描述的坐标系的结合关系,不仅仅是动作,也包含着坐标系的结合关系的描述,所以这对于简洁地描述作业程序是有用的。此外,以下程序中所出现的MOVE语句,可考虑为某一假想轨道,它不改变手的姿势,一直向上移动,然后移动到最终点的上方后,不改变姿势,又垂直下降,一直到达最终目标点下面给出了让装配作业执行的程序概况。

[1]前臂连杆装固在老虎钳上。

MQVFhandTOlink_grasp

grap(link,grasp_force);MOVElinkTOvie;

OPERATEviseWITHholding_forco;release(lipk)

[2]立起两根导向销(gp)。MOVEhandTOgpl;

_graap(gpl,force-p);

MOVEgpl_bottomTOhole1;pin_isto_hole;

release(gpl);

MOVEhandTOgp2;e_grap(gp2,force-p);

MOVEgp2_bottomTOhole3;pin_into_hole;

relemse(gp2);

[3]利用导向销将驱动单元组装到前臂连杆上。MOVEhandTOdu_graP;

-grap(du,force_du);

MOVEduTOlink_bore;

pin_into_hole;

AFFIXduTOlink;release(du);

[4]用两根螺栓把驱动单元暂固在连杆上。MOVEhandTOdriyer_grap;

grm3p(driver,fopce_d);

MOVEdriverTOscrew_feeder;pick_perew(bolt2);

MOVEbatt2TOdu.hole2;verewinto;

_

UNFIXbolt2FROMdrivert

MOVEdriverTOscrew_feeder;pick_crew(boli4);

MOVEbolt4TOdu_holet;screwinto;

_

UNFLXbolt4FRQMdxiver;

MOVEdtiverTOdrivet_test;pin_into_hole;

rolease(driver);

[5]拔出导向销,返送回螺栓。MOVEhandTOgp1;

e_grap(gp1,force_P);

MOVEgpl_bottomTOgplrestpin_into_hole;

release(gp1);

MOVEhandTOgp2;e-grasp(gp2,foree_p);

MOVEgp2_bottomTOgp2_tent;pin_into_hioto;

release(gp2);

[6]轻轻拧固留下的两根螺栓。

MOVEhandTOdriver_graip;grap(driver,force_d);

MOVEdriverTOscrew_feeder;pick_perew(bolt);

MOVEbolt1TOdu_hole1;serewinto;

_

UNF[Xbolt1FROMdriver!

MOVEdriverTOjcrew_feederpiek_aerew(bolt3);

MOVEbolt3TOdu_hole3;erewinto;

_

UNFIXbolt3FROMdriver;

[7]紧紧拧固四根螺栓。

MOVEdriverTObolt1;bite_aerew;

OPERATEdrirerWITHFTORQUE=finalfastening;AFFIXbolt1TOdu;

MOVEdriverTObolt3;bito,●er6w

OPERATEdelverWITHPTORQUEmfiaal_fastening;

AFFIXbolt3TOdu;

MOVEdriverTObolt2;bite_serew

OPERATEdriverWITHFTORQUE=final_fastening;AFF1Xbolt2TOdu;

MOVFdriverTObolt4bite_oerew

OPERATEdriverWITHFTORQUE=final_faatening;AFFIXbolt4TOdu;

MOVFdriverTOdrivet_test;pin_ioto_hole;

relenge(driver);

[8]将成品从老虎钳卸下,放置到规定的地方。

MOVEhandTOlink_grasp;

graap(ink,force_1);

OPERATFviaeWITHOPENING=full_opening;MOVF.linkTOfinished一VECT(0,0,10)

ONFORCE(zhat)>landing_forceDOSTOPhand;yelease(link);

MOVEhandTOhome.


随便看看