Beiträge von Ivgo

    so hier noch das holen programm


    ist quasi ein leeres programm also INI PTP HOME --> PTP HOME --> END


    &ACCESS RVO
    DEF HOLEN ( )



    ;FOLD INI;%{PE}%V2.2.2,%MKUKATPBASIS,%CINIT,%VCOMMON,%P
    ;FOLD BAS INI;%{PE}%V2.2.2,%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.2.2,%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.2.2,%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.2.2,%MKUKATPGRIPPER,%CINIT,%VINIT,%P
    USER_GRP (0,DUMMY,DUMMY,GDEFAULT )
    ;ENDFOLD
    ;FOLD SPOT INI;%{E}%V.2.2,%MKUKATPSPOT,%CINIT,%VINIT,%P
    USERSPOT (#INIT )
    ;ENDFOLD
    ;FOLD TOUCHSENSE INI;%{E}%V2.2.2,%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.2.2,%MKUKATPUSER,%CINIT,%VINIT,%P
    ;Make your modifications here
    ;ENDFOLD
    ;ENDFOLD



    ;FOLD PTP P1 Vel= 100 % PDAT1;%{PE}%R 2.4.6,%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.2.2,%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

    KRC1
    Version2.2.8


    UP wurde in der Config.dat mit EXT HOLEN () unter USER EXTERNALS deklariert


    Der Fehler mit den Sternen wurde behoben....musste die DEF Zeile einblenden, hatte quasi zweimal die def Zeile.


    Das UP wurde als globales UP eingerichtet also mit eigenem src file.
    Ich hab nun nur noch das Problem wenn ich das UP im HP aufruf wird es abgearbeitet aber nicht mehr verlassen.
    Muss ich das UP im HP noch extra deklariern oder reicht es in der Config.dat oder gibt es einen Befehl um wieder heraus zu springen?


    Hier nun ein Programmauszug meines HPs.


    Mein UP heißt HOLEN ()



    &ACCESS RVP
    DEF SK_OBEN ( )


    ;FOLD INI;%{PE}%V2.2.2,%MKUKATPBASIS,%CINIT,%VCOMMON,%P
    ;FOLD BAS INI;%{PE}%V2.2.2,%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.2.2,%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.2.2,%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.2.2,%MKUKATPGRIPPER,%CINIT,%VINIT,%P
    USER_GRP (0,DUMMY,DUMMY,GDEFAULT )
    ;ENDFOLD
    ;FOLD SPOT INI;%{E}%V.2.2,%MKUKATPSPOT,%CINIT,%VINIT,%P
    USERSPOT (#INIT )
    ;ENDFOLD
    ;FOLD TOUCHSENSE INI;%{E}%V2.2.2,%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.2.2,%MKUKATPUSER,%CINIT,%VINIT,%P
    ;Make your modifications here
    ;ENDFOLD
    ;ENDFOLD


    LOOP


    HOLEN ( )


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


    ;FOLD LIN bearbeitung_1 Vel= 0.2 m/s CPDAT1;%{PE}%R 2.4.6,%MKUKATPBASIS,%CMOVE,%VLIN,%P 1:LIN, 2:bearbeitung_1, 3:, 5:0.2, 7:CPDAT1
    LDAT_ACT=LCPDAT1
    BAS (#CP_DAT )
    FDAT_ACT=FBEARBEITUNG_1
    BAS (#FRAMES )
    BAS (#VEL_CP,0.2 )
    LIN XBEARBEITUNG_1
    ;ENDFOLD




    ENDLOOP


    ;FOLD PTP HOME Vel= 100 % DEFAULT;%{PE}%V2.2.2,%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

    Hallo liebe Roboterfreunde


    ich sitz grad an einem Robi mit einer KRC1 Steuerung leider besitze ich nur Unterlagen zu der KRC2.


    Hab das UP in der Config.dat deklariert und rufe es in meinem HP auf.
    Er sprint auch sauber rein ins UP, aber leider nicht mehr raus.


    Hab Befehle wie Exit, Return() oder Brake versucht.
    Keine Reaktion auser bei Brake da kommt Befehl nicht zugelassen :)


    Wie komm ich wieder aus dem UP raus??



    Im Voraus schon mal danke für eure Hilfe