RoboDK Forum
kuka krc1 post processor- Printable Version

+- RoboDK Forum (//www.sinclairbody.com/forum)
+-- Forum: RoboDK (EN) (//www.sinclairbody.com/forum/Forum-RoboDK-EN)
+--- Forum: General questions about RoboDK (//www.sinclairbody.com/forum/Forum-General-questions-about-RoboDK)
+--- Thread: kuka krc1 post processor (/Thread-kuka-krc1-post-processor--3045)



kuka krc1 post processor-bastien diligent-01-29-2020

hello, i have a problem with the post processor robodk. I have a Kuka KRC1, and I was recommended to use the post processor of krc2, because it's close. but when I want to charge the program on the robot this one marks me an error message. can you help me. I will link the photo of the program.
thank


RE: kuka krc1 post processor-Jeremy-01-29-2020

We will wait for the photos to know what exactly is the problem.

Jeremy


RE: kuka krc1 post processor-damchab-01-31-2020

hello i'm Damien working with Bastien,

we have a kuka KR 125 RL.
we have made a simple test with a simple software with few point
but unfortunatly lot of errors it is a bit like something is missing as lot of error

here is the program and below the err file

Code:
访问RVP
;&REL 1
;&PARAM TEMPLATE = C:\PROGRA~1\KRC\Roboter\Template\vorgabe
;&PARAM EDITMASK = *

DEF TEST1 ( )

;EXT BAS (BAS_COMMAND :IN,REAL :IN )

;GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )

INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
INTERRUPT ON 3

;FOLD Initialise and set default speed
BAS (#INITMOV,0)
BAS (#VEL_PTP,100)
BAS (#ACC_PTP,20)
$VEL.CP=0.2
BAS (#TOOL,0)
BAS (#BASE,0)
;ENDFOLD

;;FOLD STARTPOS
;$BWDSTART = FALSE
;PDAT_ACT = PDEFAULT
;BAS(#PTP_DAT)
;FDAT_ACT = {TOOL_NO 0,BASE_NO 0,IPO_FRAME #BASE}
;BAS(#FRAMES)
;;ENDFOLD

$ADVANCE = 5

;FOLD ---- Quickly skip BCO ----
; PTP $AXIS_ACT
;ENDFOLD

;FOLD ---- GO HOME ----
; PTP {A1 0.000, A2 -90.000, A3 90.000, A4 0.000, A5 0.000, A6 0.000, E1 0, E2 0, E3 0, E4 0, E5 0, E6 0}
;ENDFOLD


; Program generated by RoboDK v4.0.0 for KUKA KR 125-2 on 31/01/2020 06:43:15
; Using nominal kinematics.
$基础={0.000框架:0.000 X, Y, Z 0.000,A 0.000,B 0.000,C 0.000}
; BASE_DATA[0] = {FRAME: X 0.000,Y 0.000,Z 0.000,A 0.000,B 0.000,C 0.000}
; $BASE = BASE_DATA[0]
$VEL.CP = 0.80000
LIN {X 1252.382,Y -864.921,Z 1193.119,A 0.000,B 90.000,C 0.000}
$OUT[20]=TRUE
Wait for StrClear($LOOP_MSG[])
$LOOP_CONT = TRUE
$LOOP_MSG[] = "Debut PROG"
LIN {X 1178.347,Y 612.261,Z 1193.119,A -0.000,B 90.000,C 0.000}
林{587.582 1781.206 X, Y, Z1193.119,A -0.000,B 90.000,C 0.000}
WAIT SEC 2.000
LIN {X 1781.206,Y -651.583,Z 1036.046,A -0.000,B 90.000,C 0.000}
$OUT[20]=FALSE
$TOOL = {FRAME: X 0.000,Y 0.000,Z 0.000,A 0.000,B 0.000,C 0.000}
; Pas défini
END



错误的文件
--------------------


Code:
&ACCESS RVO
&PARAM TEMPLATE = C:\PROGRA~1\KRC\Rob
&PARAM EDITMASK = *
&REL 1
SRC 3
***EXT BAS (BAS_COMMAND :IN,REAL :IN )
2327( 13)
SRC 5
***GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
2309( 11)
SRC 9
BAS (#INITMOV,0 )
2135( 1)
SRC 10
BAS (#VEL_PTP,100 )
2135( 1)
SRC 11
BAS (#ACC_PTP,20 )
2135( 1)
SRC 12
$VEL.CP=0.2
2125( 6)
SRC 13
BAS (#TOOL,0 )
2135( 1)
SRC 14
BAS (#BASE,0 )
2135( 1)
SRC 25
$ADVANCE=5
2247( 9)
SRC 41
$VEL.CP=0.8
2125( 6)
SRC 44
WAIT FOR STRCLEAR($LOOP_MSG[])
2123( 11)



RE: kuka krc1 post processor-Jeremy-01-31-2020

Do you have an example of a working program on a KRC1 controller?

You can simply create a basic program ( a few movements) manually and save it and send us the .src (and maybe .dat if one was created) file.

Jeremy


RE: kuka krc1 post processor-damchab-01-31-2020

Ok next week i will be near the robot to do it and to give it to you, thank you a lot for your help


RE: kuka krc1 post processor-damchab-02-02-2020

Please find in attachment 2 files made by hand on robot

Thanks a lot for your help

files called damien.src and damien.dat

Code:
&ACCESS RV
DEFDAT DAMIEN
;FOLD EXTERNAL DECLARATIONS;%{PE}%V2.3.0,%MKUKATPBASIS,%CEXT,%VCOMMON,%P
;FOLD BAS EXT;%{PE}%V2.3.0,%MKUKATPBASIS,%CEXT,%VEXT,%P
EXT BAS (BAS_COMMAND :IN,REAL :IN )
DECL INT SUCCESS
;ENDFOLD
;FOLD A10 EXT;%{E}%V2.3.0,%MKUKATPARC,%CEXT,%VEXT,%P
EXT A10 (A_CMD_T:IN,A_STRT_T:IN,A_WELD_T:IN,A_END_T:IN,INT:IN)
;ENDFOLD
;FOLD A20 EXT;%{E}%V2.3.0,%MKUKATPA20,%CEXT,%VEXT,%P
EXT A20 (INT :IN,WELD_ST:IN,WELD_FI:IN,INT:IN)
;ENDFOLD
;FOLD GRIPPER EXT;%{E}%V2.3.0,%MKUKATPGRIPPER,%CEXT,%VEXT,%P
EXT H50 (INT:IN, INT:IN ,INT:IN ,GRP_TYP:IN)
;ENDFOLD
;FOLD SPOT EXT;%{E}%V2.3.0,%MKUKATPSPOT,%CEXT,%VEXT,%P
EXT USERSPOT (S_COMMAND :IN, SPOT_TYPE:IN)
;ENDFOLD
;FOLD TOUCHSENSE EXT;%{E}%V2.3.0,%MKUKATPTS,%CEXT,%VEXT,%P
EXT H70 (INT :IN,SRCH_TYP_2 :OUT,E6POS :IN,SRCH_TYP_3 :IN,SRCH_TYP_2 :IN,SRCH_TYP_2 :IN,SRCH_TYP_2 :IN,SRCH_TYP_2 :IN,SRCH_TYP_2 :IN,INT :IN )
;ENDFOLD
;FOLD USER EXT;%{}%V2.3.0,%MKUKATPUSER,%CEXT,%VEXT,%P
;Make here your modifications
;ENDFOLD
;ENDFOLD

ENDDAT

Code:
访问RVP
DEF DAMIEN ( )
;FOLD INI;%{PE}%V2.3.0,%MKUKATPBASIS,%CINIT,%VCOMMON,%P
;FOLD BAS INI;%{PE}%V2.3.0,%MKUKATPBASIS,%CINIT,%VINIT,%P
INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
INTERRUPT ON 3
BAS (#INITMOV,0 )
;ENDFOLD
;FOLD A20 INI;%{E}%V2.3.0,%MKUKATPA20,%CINIT,%VINIT,%P
IF ARC20==TRUE THEN
A20 (ARC_INI )
INTERRUPT DECL 6 WHEN $CYCFLAG[3]==FALSE DO A20 (TECH_STOP2 )
ENDIF
;ENDFOLD
;FOLD A10 INI;%{E}%V2.3.0,%MKUKATPARC,%CINIT,%VINIT,%P
IF A10_OPTION==#ACTIVE THEN
INTERRUPT DECL 4 WHEN $CYCFLAG[2]==FALSE DO A10 (#APPL_ERROR )
INTERRUPT DECL 7 WHEN A_ARC_SWI==#ACTIVE DO A10 (#ARC_SEAM )
INTERRUPT DECL 5 WHEN A_FLY_ARC==TRUE DO A10 (#HPU_ARC )
INTERRUPT ON 5
A10_INI ( )
ENDIF
;ENDFOLD
;FOLD GRIPPER INI;%{E}%V2.3.0,%MKUKATPGRIPPER,%CINIT,%VINIT,%P
USER_GRP (0,DUMMY,DUMMY,GDEFAULT )
;ENDFOLD
;FOLD SPOT INI;%{E}%V2.3.0,%MKUKATPSPOT,%CINIT,%VINIT,%P
USERSPOT (#INIT )
;ENDFOLD
;FOLD TOUCHSENSE INI;%{E}%V2.3.0,%MKUKATPTS,%CINIT,%VINIT,%P
IF H70_OPTION THEN
INTERRUPT DECL 15 WHEN $MEAS_PULSE[TOUCH_I[TOUCH_ACTIVE].IN_NR] DO H70 (6,CD0 )
INTERRUPT DECL 16 WHEN $ZERO_MOVE DO H70 (7,CD0 )
INTERRUPT DECL 17 WHEN $TECHPAR_C[FG_TOUCH,8]>0.5 DO H70 (8,CD0 )
H70 (1,CD0 )
ENDIF
;ENDFOLD
;FOLD USER INI;%{P}%V2.3.0,%MKUKATPUSER,%CINIT,%VINIT,%P
;Make your modifications here
;ENDFOLD (USER INI)
;ENDFOLD


;FOLD PTP HOME Vel= 100 % DEFAULT;%{PE}%V2.3.0,%MKUKATPBASIS,%CMOVE,%VPTP,%P 1:PTP, 2:HOME, 3:, 5:100, 7:DEFAULT
$H_POS=XHOME
PDAT_ACT=PDEFAULT
BAS (#PTP_DAT )
FDAT_ACT=FHOME
BAS (#FRAMES )
BAS (#VEL_PTP,100 )
PTP XHOME
;ENDFOLD



;FOLD PTP P2 Vel= 100 % PDAT2;%{PE}%R 2.4.14,%MKUKATPBASIS,%CMOVE,%VPTP,%P 1:PTP, 2:P2, 3:, 5:100, 7:PDAT2
PDAT_ACT=PPDAT2
BAS (#PTP_DAT )
FDAT_ACT=FP2
BAS (#FRAMES )
BAS (#VEL_PTP,100 )
PTP XP2
;ENDFOLD


;FOLD LIN P3 Vel= 0.8 m/s CPDAT1;%{PE}%R 2.4.14,%MKUKATPBASIS,%CMOVE,%VLIN,%P 1:LIN, 2:P3, 3:, 5:0.8, 7:CPDAT1
LDAT_ACT=LCPDAT1
BAS (#CP_DAT )
FDAT_ACT=FP3
BAS (#FRAMES )
BAS (#VEL_CP,0.8 )
LIN XP3
;ENDFOLD

;FOLD LIN P4 Vel= 0.8 m/s CPDAT2;%{PE}%R 2.4.14,%MKUKATPBASIS,%CMOVE,%VLIN,%P 1:LIN, 2:P4, 3:, 5:0.8, 7:CPDAT2
LDAT_ACT=LCPDAT2
BAS (#CP_DAT )
FDAT_ACT=FP4
BAS (#FRAMES )
BAS (#VEL_CP,0.8 )
LIN XP4
;ENDFOLD


;FOLD PTP P1 Vel= 100 % PDAT1;%{PE}%R 2.4.14,%MKUKATPBASIS,%CMOVE,%VPTP,%P 1:PTP, 2:P1, 3:, 5:100, 7:PDAT1
PDAT_ACT=PPDAT1
BAS (#PTP_DAT )
FDAT_ACT=FP1
BAS (#FRAMES )
BAS (#VEL_PTP,100 )
PTP XP1
;ENDFOLD



;FOLD PTP HOME Vel= 100 % DEFAULT;%{PE}%V2.3.0,%MKUKATPBASIS,%CMOVE,%VPTP,%P 1:PTP, 2:HOME, 3:, 5:100, 7:DEFAULT
$H_POS=XHOME
PDAT_ACT=PDEFAULT
BAS (#PTP_DAT )
FDAT_ACT=FHOME
BAS (#FRAMES )
BAS (#VEL_PTP,100 )
PTP XHOME
;ENDFOLD
END


Thanks :)