1. Dashboard
    1. Dashboard
    2. Suche
  2. Forum
    1. Unresolved Threads
  3. Members
    1. Recent Activities
    2. Users Online
    3. Team
    4. Search Members
  4. Jobs
  5. Articles
  6. Calendar
    1. Upcoming Events
    2. Map
  7. Shop
    1. Orders
    2. Shipping Costs
  • Login or register
  • Search
Roboterprogrammierer finden
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Blog Articles
  • Events
  • Files
  • Products
  • More Options
  1. Roboterforum.de - die Industrieroboter und Cobot Community
  2. Forum
  3. Industrieroboter Support
  4. KUKA Roboter
Your browser does not support videos Handwerk automatisieren - ich schaffs mit KUKA
besuche unseren Partner
Roboterprogrammierer
Online Roboterschulung
Advertise in Robotics
Der Roboterkanal
Deutscher Robotikverband
Werben in Robotik
Werben für Robotik

Überschleifen bei Funkionsaufrufen

  • Marco89
  • October 1, 2024 at 2:37 PM
  • Thread is Resolved
  • Marco89
    Reactions Received
    2
    Points
    172
    Posts
    22
    • October 1, 2024 at 2:37 PM
    • #1

    Hallo liebe Community,

    habe ein Problem und meine Frage ist, wie kann ich es lösen, warum geht es immer im Vorlaufzeiger-Stopp.

    Im Hauptprogramm rufe ich nacheinander die abzuarbeitenden Funkionen auf:

    BH_ST10S1_A174() ;holen Drehtisch Seite 1
    BH_ST10S2_A174() ;holen Drehtisch Seite 2
    BH_ST40_A174() ;holen Ausschweissen Geostation
    BA_ST40_A174() ;ablegen Ausschweissen Geostation

    Wenn der Roboter jetzt die Funktionen abarbeitet, bleibt er zwischen den Funktionen stehen, obwohl die Bewegungspunkte ein CONT drin haben.

    Welche Möglichkeit habe ich, so das der Roboter flüssig durchfährt?

    Hier der Anfang-Programmtext von einer aufgerufenen Funktion:

    &ACCESS RVO1
    &REL 84
    &PARAM DISKPATH = KRC:\R1\Handling\HND02
    DEF BA_ST40_A174()
    ;FOLD INI

    ;FOLD SPTP P05 CONT Vel=100 % PP05 Tool[11]:HND02 Base[6]:ST40_A174 ;%{PE}
    TRIGGER WHEN DISTANCE = 0 DELAY = 0 DO do_SPS_Job_StoppST40abl = FALSE
    TRIGGER WHEN DISTANCE = 0 DELAY = 0 DO do_SPS_Job_StartST40abl = TRUE
    ;FOLD SPTP P06 CONT Vel=100 % PP06 Tool[11]:HND02 Base[6]:ST40_A174 ;%{PE}
    ;FOLD SPTP P010_VorPos CONT Vel=100 % PP010_VorPos Tool[11]:HND02 Base[6]:ST40_A174 ;%{PE}

  • Schritt für Schritt zum Roboterprofi!
  • Sliwka
    Reactions Received
    32
    Points
    687
    Posts
    130
    • October 1, 2024 at 2:48 PM
    • #2

    Hi Marco,

    was steht im Fold "INI" drin?

    Hab das immer so gelöst:


    ;FOLD INI;%{PE}
          CONTINUE
    IF $T1 THEN
    ;FOLD BASISTECH INI
    GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
    INTERRUPT ON 3
    BAS (#INITMOV,0 )
    ;ENDFOLD (BASISTECH INI)
    ;FOLD USER INI
    ;Make your modifications here
                
    ;ENDFOLD (USER INI)
             PTP $POS_ACT
    ENDIF
    ;ENDFOLD (INI)


    Grüße

  • Marco89
    Reactions Received
    2
    Points
    172
    Posts
    22
    • October 1, 2024 at 3:00 PM
    • #3

    Hallo Sliwka,

    vielen Dank für deine Antwort. Bei uns steht das gleiche, nur ohne CONTINUE. Kannst du mir sagen für was das INI benötigt wird, also die Zeile mit dem Interrupt?

    ;FOLD INI;%{PE}
    ;FOLD BASISTECH INI
    GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
    INTERRUPT ON 3
    BAS (#INITMOV,0 )
    ;ENDFOLD (BASISTECH INI)
    ;FOLD USER INI
    ;Make your modifications here

    ;ENDFOLD (USER INI)
    ;ENDFOLD (INI)

  • Thilbi
    Reactions Received
    10
    Points
    1,570
    Posts
    301
    Location
    Schwäbisch Gmünd
    • October 1, 2024 at 3:24 PM
    • #4

    Hallo Marco89,

    der INI-Fold wird benötigt um bestimmte Parameter z. B. für LIN-Bewegungen zu initialisieren. Muss nach dem Anwählen eines Programmes einmal durchlaufen werden. Wenn du nun von deinem Hauptprogramm weitere UP´s aufrufst, kann es in diesen UP´s übersprungen werden. Daher hat Sliwka die IF-Abfrage in seinem INI-Fold mit reinprogrammiert.

    CONTINUE ;Vorlaufzeiger weiterlaufen lassen

    IF $T1 THEN ;Betriebsart abfragen und nur im T1 den INI-Fold komplett durchlaufen

    ...

    PTP $POS_ACT ; Schöne Erweiterung, damit erledigt er im T1 auch gleich die SAK-Fahrt und man kann im Programm auch mit einer LIN-Bewegung anfangen.

    ENDIF

  • Sven Weyer
    Reactions Received
    98
    Points
    8,318
    Trophies
    44
    Posts
    1,504
    Location
    Magdeburg
    • October 1, 2024 at 4:15 PM
    • #5

    Das INI-FOLD benötigts du rein theoretisch nur einmal, anschließen bleiben diese Parameter in der Steuerung erhalten solange bis du cell abwählst und ein anderes Programm anwählst.

    Somit ist das INI-FOLD wichtig wenn du scr's manuell anwählst und abfahren möchtest, dann wären die Variablen nicht initialisiert.

    Ich überspringe das komplette INI-FOLD wenn ich im Automatik mit dem Roboter fahren, dann habe ich ja von cell gestartet wo ja diese Initialisierung sattfindet.

    ;FOLD USER INI
    CONTINUE
    IF $T1 THEN
    ;FOLD INI
    ;FOLD BASISTECH INI
    GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
    INTERRUPT ON 3
    BAS (#INITMOV,0 )
    ;ENDFOLD (BASISTECH INI)
    ;ENDFOLD (INI)
    ENDIF
    ;ENDFOLD (USER INI)

    Da ja das CONTINUE nur auf die nächste nachfolgende Zeile wirkt, ist das für mich die bessere Wahl. ;)


    Gruß

    Wer nichts macht, macht keine Fehler!

    Wer keine Fehler macht, kann nichts daraus lernen!

    Wer nichts lernen kann, kann sich nicht weiterentwickeln!

    Wer sich nicht entwickelt, geht unter!

Tags

  • 1
  • 33
  • 2
  • ABB
  • ABB Roboter
  • ABS
  • base
  • constant
  • CP_PARAMS
  • Dialog
  • EX
  • EXT
  • fanuc
  • Fehler
  • FRAMES
  • INIT
  • INITIALIZED
  • INITMOV
  • IRC5
  • joint
  • KRC2
  • KRC4
  • kuka
  • new
  • NONE
  • notify
  • PATH
  • PGNO_GET
  • profinet
  • PTP_DAT
  • PTP_PARAMS
  • P_ACTIVE
  • P_FREE
  • P_RESET
  • P_STOP
  • Quit
  • Roboter
  • RobotStudio
  • Schweißen
  • Sps
  • Sync
  • T1
  • t2
  • tcp
  • Tool
  • VALUE
  • VAR
  • vel_cp
  • vel_ptp
  • Yaskawa
AD
Your browser does not support videos autonome mobile Roboter von KUKA
Einloggen für weniger Werbung

gesponserte Artikel

  • Gebrauchtroboter kaufen - Was ist zu beachten. Die Checkliste zum kauf von gebrauchten Robotern

    August 11, 2019 at 7:02 PM
  • Was macht ein Roboterprogrammierer genau und was verdient er?

    August 21, 2019 at 8:17 AM
  • Vernetzen, referenzieren, kollaborieren: Das B2B Portal für die Produktionsautomatisierung

    June 2, 2021 at 11:29 AM

Job Offer

  • Sie wollen Ihr Stellenangebot im Roboterforum schalten? Ab 149€

    Werner Hampel June 17, 2021 at 9:52 AM
  • Werde Roboterprogrammierer bei ROBTEC GmbH in Mainburg / Bayern

    Werner Hampel April 5, 2023 at 7:13 PM
Werbung auf Roboterseite
Roboter programmieren lernen
Banner Robotik

Wieviele Mitglieder waren heute eingeloggt?

Logge Dich ein, um hier zu lesen wer in den letzten 24h Online war und um weniger Werbung zu sehen.

  1. Privacy Policy
  2. Legal Notice
Powered by WoltLab Suite™ 6.0.22
Roboterforum.de - die Industrieroboter und Cobot Community in the WSC-Connect App on Google Play
Roboterforum.de - die Industrieroboter und Cobot Community in the WSC-Connect App on the App Store
Download