externe Achse während Programmablauf bewegen

  • Hallo zusammen,
    ich programmiere gerade eine Anlage mit 6 Zusatzachsen. Es handelt sich um eine Anlage mit 2 Bearbeitungszellen mit je 3 ext. Achsen. Während in der einen Zelle bestückt wird, wird in der anderen vom Roboter bearbeitet. Die ext. Achsen werden alle asynchron bewegt. Jeweils eine ext. Achse ist für die Kippung des Bearbeitungstisches zuständig (ist erforderlich, dass der Werker die Teile einlegen kann). Da der Tisch sehr schwer ist und dieser über Bolzen pneumatisch arretiert wird, dauert der Vorgang recht lange, so dass bei der sequentiellen Bearbeitung lange Totzeiten in Kauf zu nehmen sind.
    Ich möchte diesen Kipp- und Arretiervorgang gerne schon durchführen, während der Roboter in der anderen Zelle noch bearbeitet. Ich würde hier versuchen über die sps.sub die Bewegung durchzuführen, habe aber keinerlei Erfahrung damit. Da die Anlage schon produziert, würde ich die Nebenwirkungen ungern im laufenden Betrieb erkunden wollen.
    Kennt sich damit jemand aus? Ist das der richtige Ansatz? Gibt es kritische Punkte (z.B. Positioniergenauigkeit)? Was passiert bei Programmabbruch etc?
    Es handelt sich um einen KR 100 HA mit KRC 2 Steuerung (Safe)


    Vielen Dank für eure Hilfe im Voraus.


    MfG
    Andy

  • Schritt für Schritt zum Roboterprofi!
  • Hallo Andy,


    wenn du alle Achsensowieso schon Asynchron hast, kannst du mit den Detach-Jog Eingängen arbeiten. Jeweils einen Freigabetaster für die Fahrfreigabe und jeweils einen Fahrtrichtungstaster für die Bewegung installieren und die Eingänge entsprechend in der $machine.dat im steu ordner zuweisen:


    SIGNAL $ASYNC_AX1_P $IN[1026]
    SIGNAL $ASYNC_AX2_P $IN[1026]
    SIGNAL $ASYNC_AX3_P $IN[1026]
    SIGNAL $ASYNC_AX4_P $IN[1026]
    SIGNAL $ASYNC_AX5_P $IN[1026]
    SIGNAL $ASYNC_AX6_P $IN[1026]
    SIGNAL $ASYNC_AX1_M $IN[1026]
    SIGNAL $ASYNC_AX2_M $IN[1026]
    SIGNAL $ASYNC_AX3_M $IN[1026]
    SIGNAL $ASYNC_AX4_M $IN[1026]
    SIGNAL $ASYNC_AX5_M $IN[1026]
    SIGNAL $ASYNC_AX6_M $IN[1026]
    SIGNAL $ZUST_ASYNC $IN[1026]


    Dann kannst du deine Achsen bewegen wie du willst, unabhängig vom Roboterprogramm. Allerdings obacht, der Roboter dreht die Achsen im ersten Programmschritt wieder zurück.

    Die Abnahme von GOTO Anweisungen verhält sich reziprok zur Qualität einer Programmierung

  • Hallo Martin,
    danke für die Antwort, da ich bestimmte Positionen erreichen muss, muss der Ablauf mit programmierter Position durchgeführt werden. Außerdem wird der Tisch verriegelt und darf dann nicht mehr bewegt werden. Daher ist die Lösung mit den Freigabetastern zwar möglich, beinhaltet aber zusätzliche Risiken.


    MfG


    Andy

  • Hallo Andy,


    es gibt auch noch die Möglichkeit aus dem Submit eine asynchrone Bewegung an zu stossen.
    z.B. auf einen Tasterdruck zu reagieren und dann assynchron in Position fahren
    IF (($IN[12] == TRUE) AND ( NOT $IN[13] == TRUE)) THEN
    ASYPTP {E2 45}
    ASYPTP {E3 200}

    Die Abnahme von GOTO Anweisungen verhält sich reziprok zur Qualität einer Programmierung

  • Hallo Martin,
    dass wäre genau das was ich vorhabe. Ist dort mit irgendwelchen unkontrollierten Reaktionen zu rechnen? Es darf beispielsweise nicht passieren, die Achse ihre Position ungenau anfährt oder über die Position hinausfährt. Das könnte sonst unschön enden. ;)
    Was passiert wenn während dieser Bewegung das Roboterprogramm abgebrochen wird? Läuft die Bewegung trotzdem weiter?


    Vielen Dank im Voraus.


    MfG
    Andy

  • Die Bewegung läuft solange die Antriebe ein sind.
    Es muss kein Programm angewählt sein, damit die Achsen über den Submit sich bewegen.


    Im Anhang die Doku für Zusatzachsen. Da steht auch drin was man mit den Asynchronen machen kann.
    Ist leider nur 5.5.

    Dateien

    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne deine Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklärst du dich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

Erstelle ein Benutzerkonto oder melde dich an um zu kommentieren

Du musst ein Benutzerkonto haben um einen Kommentar hinterlassen zu können

Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Geht einfach!
Neues Benutzerkonto erstellen
Anmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden