1、KUKA程序解读&ACCESS RVP1&REL 1324&COMMENT DNL_5SchFrontDoorLkr240r2700_prime_s&PARAM DISKPATH = KRC:R11_Geely_UserlProductionDEF DNL_5LFD080ROB01() 工位主程序;* Default src Template for Kuka-Krc-Volvo;* Created 01/10/2012 by Siemens PLM;*;* Study : Front Door L;* Program : DNL_5SchFrontDoorLkr240r2700_prime_
2、s;* Generation Date : 05/01/2013 at 10:01:54;* Robot : LFD080ROB01(kr240r2700_prime_s);* User : Administrator;* Tecnomatix Software : Process Simulate on eMServer 13;* Olp : Kuka-Krc-Volvo 0.0;* Rcs : krc8.2_r01;* Controller : v8.2 (KRC4) CTime(TRUE,1) 计时(计时器1,置位为TRUE) CollisionDetectBEGIN(TorqSeque
3、nce1) 碰撞检测开启 MovInitAll() 初始化所有 Inittool(GrippGP01a) 抓手初始化 Inittool(StatdoserSG01A) Inittool(StatDoserSG01B) DNL_5SchDefault() 生产程序 CollisionDetectEND(TorqSequence1,25) 碰撞检测关闭 CTime(FALSE,1) 计时器(结束计时1,置位为false) END 循环结束 GLOBAL DEF DNL_5SchDefault() 全局程序步序 WaitSignal (AllocateStation) ;1 进入大区域,信号:1 W
4、aitSignal (AllocateST01a) ;3 等待ST01条件满足抓件,信号:3 WaitSignal (AllocateZone1) ;21 进入干涉区1,信号21 DNL_5Get080ST01() 机器人去ST01 抓件 WaitSignal (ReleaseZone1) ;22 释放干涉区1,信号22 WaitSignal (ReleaseST01a) ;4 释放ST01,信号4 WaitSignal (RequestSeala) ;33 请求进入涂胶,信号23 DNL_5Seal080SG01a() 080涂胶胶枪A DNL_5Seal080SG01b() 080涂胶胶枪
5、B DNL_5SealChk080FGH01() 照相检测 GlueingCheck(#DNL_5) 涂胶抽检 WaitSignal (FinishSeala) ;34 释放涂胶完成,信号34 WaitSignal (AllocateST01b) ;5 进入涂胶枪B,信号5 WaitSignal (AllocateZone2) ;23 进入干涉区2,信号23 WaitSignal (AllocateZone9) ;61 进入干涉区9,信号61 DNL_5Put090ST01() 090ST01放件程序 WaitSignal (ReleaseZone9) ;62 释放干涉区9,信号62 Wait
6、Signal (ReleaseZone2) ;24 释放干涉区2,信号24 WaitSignal (ReleaseST01b) ;6 释放ST01B,信号24 WaitSignal (ReleaseStation) ;2 离开大区域,信号:2 WaitSignal (WoekIsDone) ;31 释放信号,工作完成,31 END DEF DNL_5Get080ST01() 抓080ST01 MovSetAcc(100) 加速时间100m/s GripperCheckNoPart(#PartPresent1)抓手没有检测到板件 GripperCls(#Sequence1,) 抓手阀1夹紧 Gr
7、ipperCheckClo(#Sequence1) 抓手阀1检测信号GripperOpn(#Sequence4,) 抓手阀4打开GripperCheckOpn(#Sequence4)抓手阀4打开检测信号VacuumSupervisionOff(#VacPresent1) 吸盘1检测关闭(删了也可以)VacuumSupervisionOff(#VacPresent2) 吸盘2检测关闭 MovA(HomeGrippGP01a,Exact,100) 原点位置MovL(ToInGetFixtST01_20,fine,0.5,GrippGP01a,DNL_5FixtST01,DNL_5GrippGP01
8、aLoadA)MovL(ToInGetFixtST01_10,fine,0.5,GrippGP01a,DNL_5FixtST01,DNL_5GrippGP01aLoadA)MovLFrame(InGetFixtST01,0.5,GrippGP01a,DNL_5FixtST01,DNL_5GrippGP01aLoadA)MovP(ingetfixst01,Exact,100,GrippGP01a,DNL_5FixtST01,DNL_5GrippGP01aLoadA)MovP运动类型:运动类型(轨迹方向和过渡点编号,运动模式(coares、exact、fine),速度(0%-100%),工具坐标系
9、,车型坐标系MovL运动类型:运动类型(轨迹方向和过渡点编号,运动模式(coares、exact、fine),速度(0m/s-2m/s),工具坐标系,车型坐标系GripperCheckPart(#PartPresent1) 抓手检测板件信号WaitSignal (RequestPickPart) ;9 等待抓件信号,9Vacuum_On(#Vacuum1,) 吸盘1,吸气打开Vacuum_On(#Vacuum2,) 吸盘2,吸气打开GripperCls(#Sequence4,) 抓手阀4夹紧GripperCheckClo(#Sequence4) 抓手阀4夹紧检测VacuumSupervisio
10、nOn(#VacPresent1) 吸盘1,检测开启VacuumSupervisionOn(#VacPresent2) 吸盘2,检测开启 WaitSignal (FinishPickPart) ;10MovL(FrInGetFixtST01_10,fine,0.15,GrippGP01a,DNL_5FixtST01,DNL_5GrippGP01aLoadA)MovL(FrInGetFixtST01_20,fine,0.3,GrippGP01a,DNL_5FixtST01,DNL_5GrippGP01aLoadA) MovP (FrInGetFixtST01_30,Coarse,100,Grip
11、pGP01a,DNL_5FixtST01,DNL_5GrippGP01aLoadA) MovP (FrInGetFixtST01_40,Coarse,100,GrippGP01a,DNL_5FixtST01,DNL_5GrippGP01aLoadA) MovP (FrInGetFixtST01_50,Coarse,100,GrippGP01a,DNL_5FixtST01,DNL_5GrippGP01aLoadA) MovA (HomeGrippGP01a,Exact,100) END所有的轨迹做了删减!大致解释如下MovP运动类型:运动类型(轨迹方向和过渡点编号,运动模式(coares、exa
12、ct、fine),速度(0%-100%),工具坐标系,车型坐标系MovL运动类型:运动类型(轨迹方向和过渡点编号,运动模式(coares、exact、fine),速度(0m/s-2m/s),工具坐标系,车型坐标系 DEF DNL_5Seal080SG01a() 080涂胶枪A涂胶程序 MovSetAcc(100) 加速度设为100m/S Inittool(StatDoserSG01a) 初始化胶枪a PrepareEquipment(StatDoserSG01a,DNL_5BD4132) 激活胶枪 MovA (HomeGrippGP01a,Exact,100) MovP MovL(ToDNL_
13、5BD120264136_20,Fine,0.5,StatDoserSG01a,DNL_5CarGP01a,DNL_5GrippGP01aLoadA)MovL(ToDNL_5BD120264136_10,Fine,0.15,StatDoserSG01a,DNL_5CarGP01a,DNL_5GrippGP01aLoadA) GlueL (#On,DNL_5BD120264136_On,DNL_5BD4136,Coarse,0.15,StatDoserSG01a,DNL_5CarGP01a,DNL_5GrippGP01aLoadA)涂胶打开,开始涂胶轨迹 GlueL (#Apply,DNL_5B
14、D120264136_10,DNL_5BD4136,Coarse,0.15,StatDoserSG01a,DNL_5CarGP01a,DNL_5GrippGP01aLoadA)涂胶应用类似于过度点 GlueL (#Off,DNL_5BD120264136_Off,DNL_5BD4136,Coarse,0.15,StatDoserSG01a,DNL_5CarGP01a,DNL_5GrippGP01aLoadA)涂胶关闭,开始涂胶轨迹MovL(FrDNL_5BD120261226_10,Fine,0.15,StatDoserSG01a,DNL_5CarGP01a,DNL_5GrippGP01aLo
15、adA)MovL(FrDNL_5BD120261226_20,Coarse,0.15,StatDoserSG01a,DNL_5CarGP01a,DNL_5GrippGP01aLoadA) MovP (FrDNL_5BD120261226_30,Coarse,100,StatDoserSG01a,DNL_5CarGP01a,DNL_5GrippGP01aLoadA) (FrDNL_5BD120261226_40,Coarse,100,StatDoserSG01a,DNL_5CarGP01a,DNL_5GrippGP01aLoadA) MovA (HomeGrippGP01a,Exact,100)
16、 EndEquipment(StatDoserSG01a) END DEF DNL_5Seal080SG01b() 080涂胶枪A涂胶程序 MovSetAcc(100) 加速度设为100m/S Inittool(StatDoserSG01b) 初始化胶枪B PrepareEquipment(StatDoserSG01b,DNL_5BD5562) 激活胶枪B MovA (HomeGrippGP01a,Exact,100) MovP (ToDNL_5BD120475562_40,Fine,100,StatDoserSG01b,DNL_5CarGP01a,DNL_5GrippGP01aLoadA);
17、 MovP (ToDNL_5BD120475562_40,Fine,100,StatDoserSG01b,ROB,DNL_5GrippGP01aLoadA) MovP (ToDNL_5BD120475562_30,Coarse,100,StatDoserSG01b,DNL_5CarGP01a,DNL_5GrippGP01aLoadA) (#Apply,DNL_5BD120475602_960,DNL_5BD5602,Coarse,0.15,StatDoserSG01b,DNL_5CarGP01a,DNL_5GrippGP01aLoadA)GlueL(#Apply,DNL_5BD12047560
18、2_970,DNL_5BD5602,Coarse,0.15,StatDoserSG01b,DNL_5CarGP01a,DNL_5GrippGP01aLoadA)GlueL(#Off,DNL_5BD120475602_Off,DNL_5BD5602,fine,0.15,StatDoserSG01b,DNL_5CarGP01a,DNL_5GrippGP01aLoadA)MovL(FrDNL_5BD120475602_10,Fine,0.15,StatDoserSG01b,DNL_5CarGP01a,DNL_5GrippGP01aLoadA) MovP (FrDNL_5BD120475602_20,
19、Coarse,100,StatDoserSG01b,DNL_5CarGP01a,DNL_5GrippGP01aLoadA) MovA (HomeGrippGP01a,Fine,100) EndEquipment(StatDoserSG01b) 释放胶枪B END DEF DNL_5Put090ST01() 去 090ST01放件 MovSetAcc(100) 加速度100M/s MovA (HomeGrippGP01a,Exact,100) MovP (ToInPutDeskST01_20,Coarse,100,GrippGP01a,DNL_5DeskST02,DNL_5GrippGP01aL
20、oadA) MovP (ToInPutDeskST01_10,Coarse,100,GrippGP01a,DNL_5DeskST02,DNL_5GrippGP01aLoadA) MovLFrame (InPutDeskST01,0.5,GrippGP01a,DNL_5DeskST02,DNL_5GrippGP01aLoadA) WaitSignal (RequestDropPart) ;13 请求放件,信号13GripperSupervisionOff(#PartPresent1) 抓手阀1,检测关GripperSupervisionOff(#PartPresent2) 抓手阀2,检测关Vac
21、uumSupervisionOff(#VacPresent1) 吸盘1,检测关 VacuumSupervisionOff(#VacPresent2) 吸盘2,检测关 GripperOpn(#Sequence1,) 抓手阀1,打开 GripperOpn(#Sequence4,) 抓手阀4,打开GripperCheckOpn(#Sequence4) 抓手阀4,检测打开 Vacuum_Blow(#Vacuum1,10) 吹气1,10sVacuum_Blow(#Vacuum2,10) 吹气2,10s WaitSignal (FinishDropPart) ;14 等待放件完成,信号14 MovL (F
22、rInPutDeskST01_10,Coarse,1,GrippGP01a,DNL_5DeskST02)Vacuum_Off(#Vacuum1,#NoCheck) 真空阀1检测关Vacuum_Off(#Vacuum2,#NoCheck) 真空阀2检测关 GripperCheckNoPart(#PartPresent1) 抓手没有检测到板件 MovP (FrInPutDeskST01_20,Coarse,100,GrippGP01a,DNL_5DeskST02) MovP (FrInPutDeskST01_30,Coarse,100,GrippGP01a,DNL_5DeskST02) MovP
23、(FrInPutDeskST01_40,Coarse,100,GrippGP01a,DNL_5DeskST02) MovP (FrInPutDeskST01_50,Coarse,100,GrippGP01a,DNL_5DeskST02) MovP (FrInPutDeskST01_60,Fine,100,GrippGP01a,ROB) MovA (HomeGrippGP01a,Exact,100) 回原点的轨迹 END DEF DNL_5Put080PC01() 放件到080检测台 MovSetAcc(25) 加速度25M/sGripperCheckPart(#PartPresent1) 抓手
24、检测到工件 MovA (HomeGrippGP01a,Exact,100) MovP (ToInPutDeskPC01_30,Coarse,100,GrippGP01a,DNL_5DeskPC01,DNL_5GrippGP01aLoadA) MovP (ToInPutDeskPC01_20,Coarse,100,GrippGP01a,DNL_5DeskPC01,DNL_5GrippGP01aLoadA) MovP (ToInPutDeskPC01_10,Coarse,100,GrippGP01a,DNL_5DeskPC01,DNL_5GrippGP01aLoadA) GripperSuperv
25、isionOff(#PartPresent1)抓手检测关 MovLFrame (InPutDeskPC01,0.5,GrippGP01a,DNL_5DeskST01,DNL_5GrippGP01aLoadA)VacuumSupervisionOff(#VacPresent1) 吸盘1,检测关VacuumSupervisionOff(#VacPresent2) 吸盘2,检测关Vacuum_Blow(#Vacuum1,10) 吸盘1,吹气,10SVacuum_Blow(#Vacuum2,10) 吸盘2,吹气,10S GripperOpn(#Sequence1,) 抓手阀1打开GripperChec
26、kOpn(#Sequence1) 抓手阀1检测打开GripperOpn(#Sequence4,) 抓手阀4打开GripperCheckOpn(#Sequence4) 抓手阀4检测打开 WaitSignal(AllocateGlueingCheck_Put) ;39 等待涂胶检测结束,信号39 MovL (FrInPutDeskPC01_10,Coarse,1,GrippGP01a,DNL_5DeskPC01) GripperCheckNoPart(#PartPresent1) 抓手检测信号1没有检测到板件Vacuum_Off(#Vacuum1,#NoCheck) 吸盘1,关Vacuum_Off
27、(#Vacuum2,#NoCheck) 吸盘2,关 MovP (FrInPutDeskPC01_20,Coarse,100,GrippGP01a,DNL_5DeskPC01) MovP (FrInPutDeskPC01_30,Coarse,100,GrippGP01a,DNL_5DeskPC01) MovP (FrInPutDeskPC01_40,Coarse,100,GrippGP01a,DNL_5DeskPC01) MovA (HomeGrippGP01a,Exact,100) END DEF DNL_5Get080PC01_OK() 080抓检测台上合格的板件 MovSetAcc(25)
28、 加速度25M/s MovA (HomeGrippGP01a,Exact,100) GripperCheckNoPart(#PartPresent1) 抓手板件传感器1,没有检测到板件 GripperOpn(#Sequence1,) 抓手阀1,打开 GripperCheckOpn(#Sequence1) 抓手阀1,检测打开GripperOpn(#Sequence4,) 抓手阀4,打开GripperCheckOpn(#Sequence4) 抓手阀4,检测打开 MovP (ToInGetFixtPC01_110,Coarse,100,GrippGP01a,ROB) MovP (ToInGetFix
29、tPC01_30,Coarse,100,GrippGP01a,DNL_5FixtPC01) MovP (ToInGetFixtPC01_20,Coarse,100,GrippGP01a,DNL_5FixtPC01) MovP (ToInGetFixtPC01_10,Coarse,100,GrippGP01a,DNL_5FixtPC01)GripperCls(#Sequence1,) 抓手阀1,关闭GripperCheckClo(#Sequence1) 抓手阀1,检测关闭 MovLFrame (InGetFixtPC01,0.5,GrippGP01a,DNL_5FixtPC01)GripperS
30、upervisionOff(#PartPresent1) 抓手板件传感器,检测关 GripperCheckPart(#PartPresent1)抓手板件传感器1,检测到板件Vacuum_On(#Vacuum1,) 吸盘1,吸气VacuumSupervisionOn(#VacPresent1)吸盘1,检测开启Vacuum_On(#Vacuum2,) 吸盘2,吸气VacuumSupervisionOn(#VacPresent2)吸盘2,检测开启GripperCls(#Sequence4,)抓手阀4,关闭GripperCheckClo(#Sequence4)抓手阀4,检测关闭 WaitSignal(
31、AllocateGlueingCheck_Get) ;79 MovL (FrInGetFixtPC01_10,Coarse,1,GrippGP01a,DNL_5FixtPC01,DNL_5GrippGP01aLoadA) MovP (FrInGetFixtPC01_20,Coarse,100,GrippGP01a,DNL_5FixtPC01,DNL_5GrippGP01aLoadA) MovP (FrInGetFixtPC01_30,Coarse,100,GrippGP01a,DNL_5FixtPC01,DNL_5GrippGP01aLoadA) MovP (FrInGetFixtPC01_80,Coarse,100,GrippGP01a,ROB,DNL_5GrippGP01aLoadA) MovA (HomeGrippGP01a,Exact,100) END DEF DNL_5Get080PC01_NOK() 080抓检测台上不合格的板件 MovSetAcc(25) 加速度25M/s MovA (HomeGrippGP01a,Exact,100) GripperCheckNoPart(#PartPrese
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1