Beiträge von Alvedin

    Hallo Gemeinde,


    ich habe einen Kunden der seinen Roboterpark erweitert hat.
    Seit neuestem stehen dort ABB Roboter rum, die Typen habe ich in die Betreffzeile geschrieben.
    Ich habe bisher nur KUKA und Reis Roboter gemacht, kriegt man das in diesem Fall mit meinen Erfahrungen
    auch programmiert..?


    Kann mir jemand noch Unterlagen zur Programmierung und Wartung etc. zukommen lassen.


    Grüße


    Alvedin

    Hallo Gemeinde,
    es geht um die KRC4 Steuerung.
    Welche Bits werden von der Steuerung gesetzt wenn der Bremsentest angefordert wird?
    Welche Bits werden von der Steuerung gesetzt wenn die Justagefahrt angefordert wird?


    Und wie müsste dann das BrakeTestReq() aufgebaut sein?


    Möchte den Bremsentest und die Justagefahrt automatisch machen beim Start über Cell.


    Grüße
    Alvedin


    ;Prüfung Justage- und Bremsentest
    IF ($MASTERINGTEST_REQ_INT OR $BRAKETEST_REQ_INT) THEN
    ;FOLD WAIT Time=1 sec;%{PE}%R 8.3.34,%MKUKATPBASIS,%CWAIT,%VWAIT,%P 3:1
    WAIT SEC 1
    ;ENDFOLD
    ENDIF
    ;
    ;FOLD Justagetest und Bremsentest
    ;
    CONTINUE
    ;
    ;*************************************************************
    ;Automatische Justagereferenzierung
    ;*************************************************************
    IF $MASTERINGTEST_REQ_EXT THEN
    ;DO_Rob_führt_Justagereferenzierung_durch = true
    ;
    ;Home-Pos anfahren
    ;FOLD PTP HOME Vel=100 % DEFAULT;%{PE}%R 8.3.34,%MKUKATPBASIS,%CMOVE,%VPTP,%P 1:PTP, 2:HOME, 3:, 5:100, 7:DEFAULT
    $BWDSTART=FALSE
    PDAT_ACT=PDEFAULT
    FDAT_ACT=FHOME
    BAS(#PTP_PARAMS,100)
    $H_POS=XHOME
    PTP XHOME
    ;ENDFOLD
    ;
    ;Aufrufen Programm Masref_main
    Masref_main()
    ;
    ;Home-Pos anfahren
    ;FOLD PTP HOME Vel=100 % DEFAULT;%{PE}%R 8.3.34,%MKUKATPBASIS,%CMOVE,%VPTP,%P 1:PTP, 2:HOME, 3:, 5:100, 7:DEFAULT
    $BWDSTART=FALSE
    PDAT_ACT=PDEFAULT
    FDAT_ACT=FHOME
    BAS(#PTP_PARAMS,100)
    $H_POS=XHOME
    PTP XHOME
    ;ENDFOLD
    ;
    ;Rücksetze Ausgang
    ;DO_Rob_führt_Justagereferenzierung_durch = false
    ;
    ENDIF
    ;
    ;*************************************************************
    ;Automatischer Bremsentest
    ;*************************************************************
    IF $BRAKETEST_REQ_EX THEN
    ;DO_Rob_führt_Bremsentest_durch = true
    ;
    ;Home-Pos anfahren
    ;FOLD PTP HOME Vel=100 % DEFAULT;%{PE}%R 8.3.34,%MKUKATPBASIS,%CMOVE,%VPTP,%P 1:PTP, 2:HOME, 3:, 5:100, 7:DEFAULT
    $BWDSTART=FALSE
    PDAT_ACT=PDEFAULT
    FDAT_ACT=FHOME
    BAS(#PTP_PARAMS,100)
    $H_POS=XHOME
    PTP XHOME
    ;ENDFOLD
    ;
    ;Geschwindigkeit auf 100% setzen
    $RED_VEL = 100
    ;
    ;Aufrufen Programm BrakeTestReq
    BrakeTestReq()
    ;
    ;Geschwindigkeit auf 50% setzen
    $RED_VEL = 50
    ;
    ;Home-Pos anfahren
    ;FOLD PTP HOME Vel=100 % DEFAULT;%{PE}%R 8.3.34,%MKUKATPBASIS,%CMOVE,%VPTP,%P 1:PTP, 2:HOME, 3:, 5:100, 7:DEFAULT
    $BWDSTART=FALSE
    PDAT_ACT=PDEFAULT
    FDAT_ACT=FHOME
    BAS(#PTP_PARAMS,100)
    $H_POS=XHOME
    PTP XHOME
    ;ENDFOLD
    ;
    ;Rücksetze Ausgang
    ;DO_Rob_führt_Bremsentest_durch = false
    ENDIF
    ;ENDFOLD Justagetest und Bremsentest

    Bei mir sieht das Programm aber so aus:


    1 Cell
    2 Hauptjob
    3 Greifer einstellen ()
    4 Bauteil holen ()
    Hier ist die Abfrage drin
    Bauteil i.o oder Bauteil n.i.o
    4 Bauteil ablegen ()


    Das heißt wenn ich jetzt mit RETURN arbeite
    Komme ich ja nur im Hauptjob raus und nicht in Cell.


    Oder?



    Grüße


    Alvedi

    Hallo Gemeinde,
    kann mir jemand helfen?
    Wie kann ich folgendes Programm abbrechen bei Bauteil_NIO
    Brake und RESUM funktioniert hier nicht.


    Grüße
    Alvedin


    ;#################################
    ;
    ;Start Schleife
    LOOP
    ;
    ;melde SPS --> Rob: Bauteil i.O
    IF Checker_IO == TRUE THEN
    GOTO Bauteil_IO
    ENDIF
    ;
    ;melde SPS --> Rob: Bauteil n.i.O
    IF Checker_NIO == TRUE THEN
    GOTO Bauteil_NIO
    ENDIF
    ;
    ;Schleife Ende
    ENDLOOP
    ;#################################
    ;
    ;
    ;#################################
    ;Sprungziel Bauteil n.i.O
    Bauteil_NIO:
    ;
    ;Fold Bauteil NIO
    ;Rob legt Bauteil wieder auf Förderband ab und fährt in Home-Pos
    ;
    ;Vorlaufzeiger auf 1 setzen
    $ADVANCE = 1
    ;
    ;Fold Initialisere Bewegung
    ;
    ;Bewegung Initialiseren
    BAS(#INITMOV,0)
    ;
    ;BASE laden
    $BASE = BASE_DATA[7]
    ;
    ;TOOL laden
    $TOOL = TOOL_DATA[2]
    ;
    ;Getrieberuck
    $JERK = {CP 50.0}
    ;
    ;Geschwindigkeit laden
    $VEL.CP = 0.05
    ;
    ;Überschleifen
    $APO.CVEL = 100
    ;
    ;Endfold
    ;Bewegung Fahrgestell ablegen
    SLIN XP4
    ;
    ;;Bewegung Fahrgestell ablegen
    SLIN XP3
    ;
    ;Ablegeposition Fahrgestell
    SLIN XP2
    ;
    ;Fold Greifer öffnen
    ;FOLD OUT 152 'Greifer links+rechts schliessen' State=FALSE ;%{PE}%R 8.3.44,%MKUKATPBASIS,%COUT,%VOUTX,%P 2:152, 3:Greifer links+rechts schliessen, 5:FALSE, 6:
    $OUT[152]=FALSE
    ;ENDFOLD
    ;FOLD OUT 153 'Greifer Stifte ausfahren' State=FALSE ;%{PE}%R 8.3.44,%MKUKATPBASIS,%COUT,%VOUTX,%P 2:153, 3:Greifer Stifte ausfahren, 5:FALSE, 6:
    $OUT[153]=FALSE
    ;ENDFOLD
    ;FOLD WAIT FOR ( IN 154 'E_Greifer Stift links eingefahren' AND IN 155 'E_Greifer Stift rechts eingefahren' );%{PE}%R 8.3.44,%MKUKATPBASIS,%CEXT_WAIT_FOR,%VEXT_WAIT_FOR,%P 2:, 4:, 5:$IN, 6:154, 7:E_Greifer Stift links eingefahren, 8:AND, 9:, 10:$IN, 11:155, 12:E_Greifer Stift rechts eingefahren, 14:
    WAIT FOR( $IN[154] AND $IN[155] )
    ;ENDFOLD
    ;FOLD OUT 160 'Greifer links+rechts oeffnen' State=TRUE ;%{PE}%R 8.3.44,%MKUKATPBASIS,%COUT,%VOUTX,%P 2:160, 3:Greifer links+rechts oeffnen, 5:TRUE, 6:
    $OUT[160]=TRUE
    ;ENDFOLD
    ;FOLD WAIT FOR ( IN 153 'E_Greifer rechts offen' AND IN 160 'E_Greifer links offen' );%{PE}%R 8.3.44,%MKUKATPBASIS,%CEXT_WAIT_FOR,%VEXT_WAIT_FOR,%P 2:, 4:, 5:$IN, 6:153, 7:E_Greifer rechts offen, 8:AND, 9:, 10:$IN, 11:160, 12:E_Greifer links offen, 14:
    WAIT FOR( $IN[153] AND $IN[160] )
    ;ENDFOLD


    ;
    ;Endfold
    ;
    ;Bewegung wegfahren von Förderband
    SLIN XP1
    ;
    ;Home-Pos anfahren
    ;FOLD PTP HOME Vel= 100 % DEFAULT;%{PE}%MKUKATPBASIS,%CMOVE,%VPTP,%P 1:PTP, 2:HOME, 3:, 5:100, 7:DEFAULT
    $BWDSTART = FALSE
    PDAT_ACT=PDEFAULT
    FDAT_ACT=FHOME
    BAS (#PTP_PARAMS,100 )
    $H_POS=XHOME
    PTP XHOME
    ;ENDFOLD
    ;
    ;Endfold
    ;Fold Auftrag komplett abbrechen
    ;
    ;Aktive Fahrbewegungen abbrechen
    BRAKE
    ;Abbruch des Programms
    RESUME
    ;
    ;Endfold
    ;
    ;#################################
    ;
    ;
    ;#################################
    ;Sprungziel Bauteil i.O
    Bauteil_IO:
    ;
    ;Fold BAUTEIL IO
    ;Rob fährt auf Vorposition zum einlegen des Fahrgestells auf WT
    ;FOLD SPTP P5 CONT Vel=50 % PDAT3 Tool[2]:Greifer Fahrgestell Base[7]:Zufuehrband;%{PE}%R 8.3.44,%MKUKATPBASIS,%CSPLINE,%VSPTP_SB,%P 1:SPTP_SB, 2:P5, 3:C_DIS, 5:50, 7:PDAT3
    SPTP XP5 WITH $VEL_AXIS[1]= SVEL_JOINT( 50), $TOOL= STOOL2( FP5), $BASE= SBASE( FP5.BASE_NO),$IPO_MODE= SIPO_MODE( FP5.IPO_FRAME), $LOAD= SLOAD( FP5.TOOL_NO), $ACC_AXIS[1]= SACC_JOINT( PPDAT3), $APO= SAPO_PTP( PPDAT3), $GEAR_JERK[1]= SGEAR_JERK( PPDAT3) C_SPL
    ;ENDFOLD
    ;FOLD SPTP P6 Vel=50 % PDAT4 Tool[2]:Greifer Fahrgestell Base[7]:Zufuehrband;%{PE}%R 8.3.44,%MKUKATPBASIS,%CSPLINE,%VSPTP_SB,%P 1:SPTP_SB, 2:P6, 3:, 5:50, 7:PDAT4
    SPTP XP6 WITH $VEL_AXIS[1]= SVEL_JOINT( 50), $TOOL= STOOL2( FP6), $BASE= SBASE( FP6.BASE_NO),$IPO_MODE= SIPO_MODE( FP6.IPO_FRAME), $LOAD= SLOAD( FP6.TOOL_NO), $ACC_AXIS[1]= SACC_JOINT( PPDAT4), $GEAR_JERK[1]= SGEAR_JERK( PPDAT4)
    ;ENDFOLD
    ;
    ;melde Rob --> SPS: Auftrag erledigt Fahrgestell nchfördern
    ;FOLD OUT 2106 'Rob_weg_von_Foerderband' State=TRUE ;%{PE}%R 8.3.44,%MKUKATPBASIS,%COUT,%VOUTX,%P 2:2106, 3:Rob_weg_von_Foerderband, 5:TRUE, 6:
    $OUT[2106]=TRUE
    ;ENDFOLD
    ;
    ;Wartezeit
    ;FOLD WAIT Time=0.2 sec;%{PE}%R 8.3.44,%MKUKATPBASIS,%CWAIT,%VWAIT,%P 3:0.1
    WAIT SEC 0.2
    ;ENDFOLD
    ;
    ;melde Rob --> SPS: Auftrag erledigt Fahrgestell nchfördern
    ;FOLD OUT 2106 'Rob_weg_von_Foerderband' State=FALSE ;%{PE}%R 8.3.44,%MKUKATPBASIS,%COUT,%VOUTX,%P 2:2106, 3:Rob_weg_von_Foerderband, 5:TRUE, 6:
    $OUT[2106]=FALSE
    ;ENDFOLD
    ;
    ;Endfold
    ;
    ;#################################

    Der Drehtisch wurde von mir vermessen!
    Jede Drehtisch Position entspricht eine Vermessene Basis.


    Und genau die Vermessene Basis mlchte ich dann laden wenn diese vorm Roboter steht.

    Hallo Gemeinde,


    benötige Hilfe bei der Syntax:
    Habe einen Drehtisch mit 6 BASES, möchte jetzt einen Ablegepunkt teachen für eine BASE.
    Der Drehtisch streut maßlich nicht sind nur 0,02 mm.


    Möchte jetzt immer diesen einen Punkt anfahren und die BASE laden die dann vorm Roboter steht.


    kann mir jemand helfen?


    Grüße


    Alvedin

    Hallo Gemeinde,


    ich möchte an meiner KRC4 Steuerung folgendes tun:


    Ich möchte meine 2 ANALOG EINGÄNGE in ein WAIT FOR packen.
    Also Analog Eingang 1 muss > 7.7 und < 8.2 und Analog Eingang 2 muss >7.7 und <8.2 sein.
    Ich habe hier Probleme mit der Syntax.


    Kann mir einer helfen?

    Hallo R47,


    ich habe ganz vergessen zu sagen das alle Koordinaten von der SPS kommen.
    Ich bekomme von der SPS die Koordinaten für Korb abholen vom Förderband.
    Ich bekomme von der SPS die Koordinaten für Korb ablegen in die Anlage.


    Ich bekomme von der SPS auch die Maße vom Korb z.B. 200mm, dann weiß ich in wie weit ich meinen Greifer auseinander fahren muss. (Korbmaß)


    Ich bekomme auch die Information welcher Korb gefahren wird. (Korb Nr.: 1 - 54)


    Wir möchten die Programme so aufbauen, das kein Programmierer mehr hin muss um ein weiteres Bauteil einzupflegen.


    Endkunde gibt neue Produktmaße am Touch Panel ein, SPS verrechnet alles und übermittelt dem Roboter dann die Koordinaten.