Beiträge von magra13

    Hallo,


    wir stehen gerade auch vor der Entscheidung aus einer VKRC4 eine KRC4 zu machen.
    Reicht hierbei wirklich nur das KRC4 Softwarepaket, oder muss auch noch seitens Hardware etwas angepasst werden?

    Hi,
    danke für die schnelle Antwort


    Zitat


    Eine Frage vorweg. Dürft ihr im Makro Makroaufrufe mache. Ich hab so in Erinnerung, dass im VW-Leitfaden das untersagt ist.


    Makroaufrufe in Makros sind in diesem Fall erlaubt, habe ich im Makro4 auch gemacht. Kunde ist "nur" ein Zulieferer für VW, also darf man da geringfügig abweichen.


    Zitat


    SPSMakro_Mutter fehlt = EIN & !F14 muss natürlich dein INI E32 rein und nicht EIN


    Hast natürlich recht, dass dort = E32 & !F14 stehen muss.


    Werde es nächstest Mal so ausprobieren, wenn ich wieder vor Ort bin ... kann aber erst mal dauern, da noch nicht genügend Teile für die Produktion vorhanden sind.


    Aber danke bis hierhin
    MfG

    Stethi


    hab da mal ne frage zu einem KR30_1 mit VKRC1 Steuerung V1.4.4 SP02


    möchte eine Wiederholung von Zuführung und -vereinzelung programmieren. Folgender Systemablauf:
    Robbi holt Bauteil (BT) und fährt zu einer externen Schweisszange. Ist das BT in Position, wird eine Mutter zugeführt, die auf dem BT verschweisst werden soll.
    Nun ist es aber schon mal vorgekommen, dass die Mutter daneben geflogen ist. Momentan muss der Werker dann in die Anlage, lägt eine Mutter nach und startet die Anlage wieder.

    Jetzt möchte ich dem Werker die Arbeit ersparen und wollt eine Wiederholung der Mutternzuführung programmieren.
    Folgendes ist mir eingefallen, und hoffe nun, dass ich da keinen Strukturfehler drin hab.


    Also idealerweise:
    1. BT in Position
    2. Mutter wird zugeführt
    3. Schweisszange Vorhub zu
    4. Schweisszange Arbeitshub zu
    5. Mutter wird durch Ini abgefragt
    6. Ini meldet: Mutter vorhanden -> !E32 wird in Makro "Arbeitshub zu" abgefragt
    7. Schweissen
    8. Arbeitshub auf
    9. Vorhub auf


    Programmiert bislang wie folgt:
    FB ONL = M1 & M3 & M11
    SPSMAKRO80 = EIN
    SPSMAKRO93 = !F14 -> Mutter vereinzeln und zuführen
    WARTE BIS M8 -> Mutterausstosser rück
    SPSMAKRO2 = EIN -> Vorhub Schweisszange zu
    bin1 ( EIN ) = 1
    SPSMAKRO4 = EIN & !F14 -> hier wird Makro "Arbeitshub zu" aufgerufen, gefolgt vom Schweissen und Makro "Arbeitshub auf"
    SPSMAKRO3 = EIN -> Vorhub Schweisszange auf
    WARTE BIS M1 & M3 & M8 & M11 & E406 & !E408



    Makro "Arbeitshub zu" ist hier das Ausschlag gebende


    Makro "Arbeitshub zu" Anfang
    -- Kontrolle Zange auf + 0-P + Simu --
    WARTE BIS E408 & !E406 + F14
    -- Ventil Zange auf/zu ein = zu --
    A194 = EIN
    -- Kontrolle Zange zu: Warte bis Schweissdruck i.O. & nicht Mutter fehlt & nicht Zange auf --
    WARTE BIS E194 & !E32 & !E406



    Jetzt möchte ich nach der Ansteuerung des Ventils "Zange zu" ein weiteres Makro aufrufen, wenn Mutter fehlt:


    Makro "Arbeitshub zu" Anfang
    -- Kontrolle Zange auf + 0-P + Simu --
    WARTE BIS E408 & !E406 + F14
    -- Ventil Zange auf/zu ein = zu --
    A194 = EIN

    SPSMakro_Mutter fehlt = EIN & !F14 -> wird ja nur ausgeführt wenn die Mutter fehlt, d.h. der Ini ausgelöst hat
    -- Kontrolle Zange zu: Warte bis Schweissdruck i.O. & nicht Mutter fehlt & nicht Zange auf --
    WARTE BIS E194 & !E32 & !E406


    Makro_Mutter fehlt sieht dann wie folgt aus:
    -- Kontrolle Zange arbeitshub zu --
    WARTE BIS !E406 & !E408
    -- Ventil Zange auf -> Einwegwentil --
    A194 = AUS
    -- Schweisszange Vorhub Zange auf --
    SPSMAKRO3 = EIN & !F14
    -- Mutter zuführen --
    SPSMAKRO93 = EIN & !F14
    -- warte bis Ausstosser rueck --
    WARTE BIS M8
    -- Schweisszange Vorhub zu --
    SPSMAKRO2 = EIN & !F14
    -- Schweisszange Arbeitshub zu --
    A194 = EIN


    und von da aus zurück zu Makro "Arbeitshub zu" in die Zeile
    -- Kontrolle Zange zu: Warte bis Schweissdruck i.O. & nicht Mutter fehlt & nicht Zange auf --
    WARTE BIS E194 & !E32 & !E406

    ist das so i.O. ???


    Besten Dank im Voraus

    Hab hier mal Auszüge aus meinen Progs



    Zitat


    130 XSTP 4
    140 WAIT M_WAI(4) = 1 'anstatt des delay-Befehls
    150 XRST 4
    160 WAIT M_PSA(4)=1 'anstatt des delay-Befehls


    Hatte immer die Angewohnheit die Slots vorher zu stoppen und ein Reset zu machen...man weiß ja nie!


    Als nächste Möglichkeit erst eine Abfrage, ob der Slot überhaupt "sauber" ist


    Also, eigentlich nichts Anderes, nur das vorher einmal der Slot so zu sagen abgelöscht wird

    Schön, das es noch (anders) geklappt hat !


    Ich forste trotzdem mal meine alten Mitsubishi-Projekte nach XRun & Co. durch (hab die damals zig mal benutzt und es lief immer)
    Wenn ich was finde, pack ich es rein ... zur Vervollständigung und vielleicht Lösungsfindung


    mich interessiert es aber brennend warum es keinerlei Fehlermeldung gab!


    Hallo,
    möchte diesmal per XLoad/XRun nen Unterprogramm aufrufen. Nur leider passiert nix. Muss ich dafür noch Parameter einstellen? Habe "ALWENA" auf 1 gestellt. Brachte noch keinen Erfolg. Oder muss ich noch vorher den Slot definieren?


    Mir war so, dass der Parameter ALWENA auf 7 eingestellt werden muss ... freigeben / sperren = 7 / 0
    Weiterhin muss der Programmplatz, also der Slot auf die Startbedingung Always eingestellt werden.


    Guck auch mal bitte, ob du in dem Programm, welches du ausführen möchtest den Befehl GETM 1 (am Anfang) und RELM (am Programmende) programmiert hast.


    Viel Erfolg

    :danke:, du hast mir sehr geholfen!


    "Ja, kann man natürlich machen. Du musst dann aber deine UPs so enden lassen, dass beide ja danach zu Home übergehen können, ."
    Das versteht sich von selbst.


    Werde das wohl mit den zwei UPs machen und bei dem UP_niO der SPS ein Handshake-Signal senden, dass das Aufspindeln niO war, um eine weitere Folgenanwahl zu unterbinden.


    Das mit dem GOTO werde ich mir auch auf jeden Fall mal anschauen.

    Stethi
    erst mal Danke für die schnelle Antwort. Kann leider grad nicht sagen welche Version das ist. Kenn die Anlage erst seid einer Woche und habe natürlich nicht nachgeguckt. Hol ich nach, wenn ich wieder eine Reise dahin gewonnen habe.


    Nach der Kontrolle wird der Robbi aus der Zuführung und wieder auf Home gefahren, die Folge ist mit dem Erreichen von Home beendet. Danach wieder eine neue Folgenanwahl für das Nieten an sich. (insgesamt 4 Folgen, da zwei Arbeitstische mit jeweils zwei mal Niet setzen).


    wenn ich dich richtig verstanden habe würde das wie folgt ablaufen:


    FOLGE 1:
    -- Pruefung ob Niete korrekt aufgespindelt --
    1: A181 = EIN
    2: WARTE Eingang iO ODER Eingang niO
    3: A181 = AUS
    4: UP_iO = Eingang iO und nicht Eingang niO
    5: UP_niO = Eingang niO und nicht Eingang iO



    UP_iO : Fahre aus der Prüfung zurück zu Home und Programmende.


    So würde ich das auch machen, jedoch weiß ich nicht wie sich das mit dem Rücksprung aus dem UP verhält.
    Wenn ich den iO Fall abgearbeitet habe, würde die Steuerung da nicht zu Punkt 5: UP_niO zurückkehren und die Folge mit den darin enthaltenen Anweisungen ausführen?


    Wie cancele ich denn die UPs? Mit einem HALT oder BRAKE?
    P.S. Meinst du mit Sprüngen die GOTO Anweisung



    Kann man das vielleicht folgendermaßen realisieren?


    -- Pruefung ob Niete korrekt aufgespindelt --
    1: A181 = EIN
    2: WARTE Eingang iO ODER Eingang niO
    3: A181 = AUS
    4: UP_iO = Eingang iO und nicht Eingang niO
    5: UP_niO = Eingang niO und nicht Eingang iO
    PTP Home


    UP_io: Fahre aus der Zuführung und dann weiter auf Home. Sprung zurück zur Folge 1, die dann auch mit PHome endet.


    UP_niO : Fahre aus der Zuführung und dann weiter auf Home danach einen erzwungenen Halt, damit der Werker beigehen kann und die Niet rausholt. Kann man dann so ohne Weiteres wieder in Automatik wechseln?


    Ich glaube ich drehe mich hier grad im Kreis. KRC, Adept, Mitsubishi und Denso sind doch so schön zu programmieren. Wieso muss VW immer nen eigenes Süppchen kochen?

    Habe da mal ne Frage ... habe eine VKRC Anlage für das Aufnehmen von Nieten.
    Also Robbi fährt zur Zuführung und soll Niet aufspindeln. Nach dem Aufspindel wird per Lichtschranke kontrolliert, ob die Niet richtig drauf sitzt.


    Programmauszug wie folgt:


    -- Pruefpos --
    PTP VB=100% VE=0% ACC=100% Wzg=1 SPSTrig=0[1/100s] FPU
    FB ONL = M1
    -- Pruefung durch Lichtschranke ein --
    1: A181 = EIN
    -- warte auf Freigabe Niet holen oder Niet geladen (Niet geladen -> kann passieren, wenn nach NotAus und SAK wieder angefahren wird) --
    2: WARTE BIS E182 + E181
    -- Pruefung aus --
    3: A181 = AUS
    -- Unterprogramm, wenn Freigabe Niet holen --
    UP20 = E182 & !E181 & !F14


    Unterprogramm ist für das Aufspindeln der Niet zuständig ... aber nun weiter, der Robbi hat die Niet aufgespindelt und es wird nochmals geprüft (Lichtschranke), ob die Niet komplett aufgespindelt wurde oder nicht. Bei einigen Gewindegängen kann es schon mal passieren, dass die Niet da nur zur Hälfte drauf ist.


    PTP VB=100% VE=0% ACC=100% Wzg=1 SPSTrig=0[1/100s] FP
    FB ONL = M1
    -- Pruefung durch Lichtschranke ein --
    1: A181 = EIN
    -- Warte bis Lichtschranke ein, bzw. Niet komplett aufgespindelt --
    2: WARTE BIS E181 + F14
    3: A181 = AUS


    ist die Niet jetzt nur zu Hälfte aufgespindelt bleibe ich natürlich im Schritt 2: WARTE BIS E181 + F14 hängen


    Jetzt möchte der Kunde natürlich, dass der Robbi, wenn er das erkannt hat, eigenständig Home anfährt und das Programm beendet, damit der Werker beigehen kann, die Niet rausholt und wieder Automatik starten kann.


    Meine Frage ist nun, ob das so ohne Weiteres in VKRC mit dem VW_User programmierbar ist, oder habe ich auf Grund des sequenziellen Ablaufs keine Chance?


    Hoffe ja auf positive Nachrichten, aber so wie ich VKRC kennengelernt habe, wundert mich das nicht, dass diese "vermurkste" KRC genannt wird.

    Hallo LindePaul,


    das Problem hat sich heut geklärt...war doch ein Fehler meinerseits.


    Habe heute mit der ibs-cmd-Software die Baugruppen ausgelesen.
    Es hat sich herausgestellt, dass die Fase Schweisssteuerung 48 Bit Prozessdaten bereitstellt, ich hatte 16 Bit eingetragen.
    Somit war es ein Folgefehler der weiteren Zuweisungen.


    Danach habe ich eine E/A Rekonfiguration durchgeführt, un dann lief es.

    Hallo,


    habe zum ersten mal in meiner Robi-Zeit mit KUKA zu tun, und da das nicht genug ist muss ich mich auch noch mit Interbus beschäftigen.


    Der Robi soll über Interbus eine externe Schweisszange und die Zuführung von Muttern steuern.
    Eine übergeordnete SPS ist ebenfalls vorhanden.
    So wie ich das verstanden habe ist die SPS der Interbus-Master und der Robi der lokale Master für die Schweisszange und die Zuführung.


    Die Module sind wie folgt: von der Roboter Interbus-Card -> Fase Schweisssteuerung -> Schweisszange -> Mutternzuführung -> Robotergreifer OUT -> Robotergreifer IN


    Jetzt muss ich natürlich die iosys.ini dementsprechend anpassen. Hier ein Auszug, wie es bis jetzt ist


    [CONFIG]
    VERSION=1.00


    [DRIVERS]
    INTERBUS=1,ibusInit,ibusdrv.o


    [MFC]


    [INTERBUS]
    ;$IN/OUT[n_1]=(n+1)*8-7
    ;$IN/OUT[n_8]=(n+1)*8


    ; ------- Inputs --------
    ;digital inputs
    INB24=2 ;Eingang [193-200] Installation 1. Punktschweisszange
    INB44=5 ;Eingang [353-360] Installation 1. Greifer Teilkontrollen
    INB45=6 ;Eingang [361-368] Installation 1. Greifer rueckmeldung Spanner
    INB46=7 ;Eingang [369-376] Installation 2. Greifer rueckmeldung Spanner
    INB47=8 ;Eingang [377-384] Installation 2. Greifer rueckmeldung Spanner, 3 Greifer
    INB48=9 ;Eingang [385-392] Installation 3. Greifer rueckmeldung Spanner
    INB50=3 ;Eingang [401-408] Installation Mutternzufuehrung
    INB51=4 ;Eingang [409-416] Installation Mutternzufuehrung
    INB68=0 ;Eingang [545-552] 1. Fase Schweissteuerung
    INB69=1 ;Eingang [553-560] 1. Fase Schweissteuerung


    ;Slave Inputs
    INW0=896 ;Eingang von BMS [1-16]
    INW2=898 ;Eingang von BMS [17-32]
    INW4=900 ;Eingang von BMS [33-48]
    INW6=902 ;Eingang von BMS [49-64]
    INW8=904 ;Eingang von BMS [65-80]


    ;--------- Outputs ------
    ;Digital Outputs
    OUTB24=2 ;Ausgang [193-200] Installation 1. Punktschweisszange
    OUTB44=5 ;Ausgang [353-360] Installation 1. Greifer Ventile
    OUTB45=6 ;Ausgang [361-368] Installation 1. Greifer Ventile
    OUTB46=7 ;Ausgang [369-376] Installation 2. Greifer Ventile
    OUTB47=8 ;Ausgang [377-384] Installation 2. Greifer Ventile
    OUTB48=9 ;Ausgang [385-392] Installation 3. Greifer Ventile
    OUTB50=3 ;Ausgang [401-408] Installation Mutternzufuehrung
    OUTB51=4 ;Ausgang [409-416] Installation Mutternzufuehrung
    OUTB68=0 ;Ausgang [545-552] 1. Fase Schweissteuerung
    OUTB69=1 ;Ausgang [553-560] 1. Fase Schweissteuerung


    ;Slave Outputs
    OUTW0=896 ;Ausgang an BMS [1-16]
    OUTW2=898 ;Ausgang an BMS [17-32]
    OUTW4=900 ;Ausgang an BMS [33-48]
    OUTW6=902 ;Ausgang an BMS [49-64]
    OUTW8=904 ;Ausgang an BMS [65-80]


    [DEVNET]
    [LIBO]
    [PERCEPTRON]


    ; ------- Inputs --------
    INW68=0 ;$IN[545-560] X
    INW70=2 ;$IN[561-576] X
    INW72=4 ;$IN[577-592] Y
    INW74=6 ;$IN[593-608] Y
    INW76=8 ;$IN[609-624] Z
    INW78=10 ;$IN[625-640] Z


    ;--------- Outputs ------
    OUTW68=0 ;$OUT[545-560] model, partner
    OUTW70=2 ;$OUT[561-576] color, pointnr
    OUTW72=4 ;$OUT[577-592] phase, fixture, command
    OUTW74=6 ;$OUT[593-608] wrist angle roll
    OUTW76=8 ;$OUT[609-624] wrist angle roll
    OUTW78=10 ;$OUT[625-640] wrist angle pitch


    [END SECTION]


    Jetzt bekomme ich aber die Fehlermeldung
    "Fehler Konfiguration E/A--Treiber"


    Was mache ich da falsch?