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 autonome mobile Roboter von KUKA
besuche unseren Hauptsponsor
Roboterprogrammierer
Online Roboterschulung
Werbung schalten Roboter
Advertise in Robotics
Der Roboterkanal
Deutscher Robotikverband
Werben in Robotik
Werben für Robotik

Programmstart im AutoExt für nicht Cell-Programme verhindern.

  • mlusti
  • March 16, 2011 at 2:18 PM
  • Thread is Resolved
  • mlusti
    Points
    25
    Posts
    4
    Location
    Zürich
    • March 16, 2011 at 2:18 PM
    • #1

    Hallo

    Ich habe ein Hilfsprogramm, damit der Bediener einige Punkte teachen kann. Die Punkte werden im $config gespeichert. Das Programm ist nicht kollisionsfrei, also muss der Bediener immer von Hand anfahren und dann ein Touch-Up machen.

    Nachher sollte erst das Programm beenden und das Cell starten. Dieses wird von der SPS gesteuert, welche auch die Kollisionen mit anderen Roboter und Pneumatik Geräte verhindert.

    Diese Woche hat der Bediener das Hilfs-Programm nicht beendet und hat die Lichtschranke quittiert. Darauf hin wurde das Hilfs-Programm fortgesetzt und ist kollidiert.

    Wie kann ich verhindern, dass ein Programm, welches nicht von Cell aufgerufen wurde, ausgeführt wird?

    Vielen Dank für eure Ideen.

  • Schritt für Schritt zum Roboterprofi!
  • Anubis
    Points
    1,745
    Posts
    317
    About Me

    1+1 = 10

    • March 16, 2011 at 2:53 PM
    • #2

    servus,

    so auf die schnelle wäre dies meine idee:
    wie wäre es, wenn du bei start des hilfprogramms ein signal an die sps ausgibst. solange dieses anliegt, darf die sps den roboter über autoext nicht starten.
    dieses signal lässt du durch die sps.sub wieder zurücksetzen, sobald das programm abewählt wird.

    „Welten, regiert von künstlichen Intelligenzen,<br />mußten oftmals ihre schmerzlichen Erfahrungen machen.<br />Logik kennt keine Gefühle.“

  • p.xartax
    Reactions Received
    4
    Points
    1,139
    Posts
    194
    • March 16, 2011 at 3:12 PM
    • #3

    Hallo,

    wenn es nicht so viele Punkte sind, und das Hilfsprogramm nie im Automatik-Betrieb laufen soll, würde ich zwischen jeden Punkt

    LOOP
    HALT
    ENDLOOP

    einfügen.

    MfG Peter

    Wer Rechtschreibfehler findet, darf sie behalten!!!&nbsp; :lol:

  • Tilman
    Guest
    • March 16, 2011 at 4:04 PM
    • #4

    Hallo mlusti,


    Dein erster Beitrag heute? Dann herzlich willkommen!

    Habe ich das richtig verstanden. Du hast ein Hilfsprogramm, welches dazu dient, Positionen zu teachen? Etwa so:

    Code
    PTP p1		
    PTP p2 
    …

    Und wenn es nicht abgewählt wird und es ausgeführt hat, dann kann es einen Crash geben?

    Also, da würde ich es zum einen wie Anubis machen. Einen Ausgang am Anfang setzen, der das Starten verhindert, und dann einen am Ende, der den Ausgang zurücksetzt.

    Außerdem würde ich kein Bewegungsprogramm schreiben und Touch Up benutzten, sondern eine Funktion "teachen" schreiben, bei der der Benutzer mit einer Meldung aufgefordert wird, den Roboter an einen bestimmten Ort zu fahren, und teachen (nach Zustimmungstaste) mit px=$POS_ACT.

    Dann würde Dein Hilfsprogramm etwa so aussehen:
    teachen p1 "Position Getränkeautomat"
    teachen p2 "Postion Förderband"
    teachen p3 "Position ..."
    ...

    Diese Programm birgt nicht die genannte Gefahr, da es keinen Bewegungsbefehl enthält.


    Viele Grüße,
    Tilman/Süd-Frankreich


    Hier regnet es immer noch :angry: :angry: :angry:!

  • Stethi
    Reactions Received
    6
    Points
    6,131
    Posts
    1,171
    Location
    MD
    • March 16, 2011 at 4:28 PM
    • #5

    Oder mit Hilfe eines Interrupts bei nicht T1 das Programm automatisch abwählen.

  • Anubis
    Points
    1,745
    Posts
    317
    About Me

    1+1 = 10

    • March 16, 2011 at 4:46 PM
    • #6
    Quote from Stethi


    Oder mit Hilfe eines Interrupts bei nicht T1 das Programm automatisch abwählen.


    ha, da hätt ich doch auch gleich selbst drauf kommen können. naja, wieso einfach, wenns auch kompliziert geht... :uglyhammer_2:

    „Welten, regiert von künstlichen Intelligenzen,<br />mußten oftmals ihre schmerzlichen Erfahrungen machen.<br />Logik kennt keine Gefühle.“

  • Tilman
    Guest
    • March 16, 2011 at 4:52 PM
    • #7

    Kleine Frage: Darf sich ein Programm selber abwählen?

  • mlusti
    Points
    25
    Posts
    4
    Location
    Zürich
    • March 16, 2011 at 5:04 PM
    • #8

    Vielen Dank für den Input.

    Die Idee mit dem Teachen ohne Bewegungsprogramm gefällt mir. Das wäre eigentlich das richtige Lösung, also keine Symptom-Bekämpfung.

    Habe anderweitig nach gefragt und die Idee mit der Variable $PRO_STATE1 aufgegriffen.

    Im INI vom Cell setzte ich einen Ausgang. Diesen kann ich von der SPS überwachen.

    Im Sumitinterpreter überwache ich die Variable $PRO_STATE1, wenn dieser auf #P_FREE geht, wurde ein Programm abgewählt und der Ausgang wird zurückgesetzt. Auch beim Start vom Sumitinterpreter wird der Ausgang zurückgesetzt.

    Klar kann der Bediener während der Ausführung von CELL den Submitinterpreter stoppen.
    Das Cell abwählen, der Ausgang bleibt stehen.
    Aber ohne Summitinterpreter kann kein Programm angewählt werden.

    Eine andere Idee ist die Variable $PRO_NAME1[] zu überwachen. Wenn "CELL" drin steht, läuft auch CELL, auch wenn es in einem Unterprogramm ist. Aber ich habe noch nicht herausgefunden, wie man Felder vergleicht. Ich glaube das Feld exitiert nicht, wenn kein Programm angewählt ist.

  • Anubis
    Points
    1,745
    Posts
    317
    About Me

    1+1 = 10

    • March 16, 2011 at 5:27 PM
    • #9
    Quote from mlusti


    Habe anderweitig nach gefragt und die Idee mit der Variable $PRO_STATE1 aufgegriffen.

    Im INI vom Cell setzte ich einen Ausgang. Diesen kann ich von der SPS überwachen.

    Im Sumitinterpreter überwache ich die Variable $PRO_STATE1, wenn dieser auf #P_FREE geht, wurde ein Programm abgewählt und der Ausgang wird zurückgesetzt. Auch beim Start vom Sumitinterpreter wird der Ausgang zurückgesetzt.


    jup, also mehr oder weniger mein vorschlag :supi:

    „Welten, regiert von künstlichen Intelligenzen,<br />mußten oftmals ihre schmerzlichen Erfahrungen machen.<br />Logik kennt keine Gefühle.“

  • Tilman
    Guest
    • March 16, 2011 at 5:35 PM
    • #10

    mlusti,
    Danke für die Beschreibung Deiner Lösung... es führen halt viele Wege zum Ziel!

    Tilman and others :zwink:
    Habe es gerade mal ausprobiert.

    CWRITE($CMD,Stat,Mode,"Cancel 1") in einem Interrupt ergibt bei mir "Verwendung von Laufzeitdaten des Hauptprogramms nicht erlaubt." Irgendwie fände ich es auch logischer, das Programm aus dem Submit-Interpreter heraus abzuwählen.

  • Bodo
    Reactions Received
    1
    Points
    631
    Posts
    94
    Location
    Rossdorf bei Darmstadt
    • March 16, 2011 at 8:22 PM
    • #11

    wenn der roboter mit einem automatischen Anlagenanlauf ausgestattet ist kann er ja nur in der BA Auto oder Auto extern gestartet werden. Sollte jetzt Cell grundsätzlich das startprogramm sein, sollte es doch langen das Prog Cell beim umschalten der BA aufzurufen.

    Musterbefehl findet sich im Prog SPS.sub Fold INI

    Man lernt nie aus / Stillstand gleich Rückschritt

  • Stethi
    Reactions Received
    6
    Points
    6,131
    Posts
    1,171
    Location
    MD
    • March 17, 2011 at 7:49 AM
    • #12
    Quote from Tilman


    Kleine Frage: Darf sich ein Programm selber abwählen?

    Warum nicht? Wenns richtig programmiert ist.

  • mlusti
    Points
    25
    Posts
    4
    Location
    Zürich
    • March 17, 2011 at 9:23 AM
    • #13
    Quote from Bodo


    Musterbefehl findet sich im Prog SPS.sub Fold INI

    Das SPS.sub hat einfach zu viele Folds. Hatte meine Subroutine verloren im Fold";FOLD ;%{H}" :???:

    Beim Umschalten auf AutoExt kann ich dann Cell aufrufen.
    Aber wie wird das PTP Home ausgeführt?

    Was macht P00 (#CHK_HOME,#PGNO_GET,DMY[],0 )
    Gibt dies eine Fehlermeldung auf die KCP aus und wartet bis der Bediener die Homeposition angefahren hat. Aber es gibt keinen Fehler auf #EXT_ERR aus. Da bei uns die Fehlermeldung auf dem Leitsystem angezeigt werden habe ich die Gripper-Tech Kommandos im Code alle raus geschmissen.
    Muss ich auf alle Fälle einfach ausprobieren.

    @all: hier kommt ja einiges an Erfahrung zusammen. Vielen Dank

  • mlusti
    Points
    25
    Posts
    4
    Location
    Zürich
    • March 17, 2011 at 9:44 AM
    • #14
    Quote from mlusti


    Beim Umschalten auf AutoExt kann ich dann Cell aufrufen.

    Aber wenn der Bediener im Betrieb auf T1 schalten muss um einen Fehler zu beheben (Gripper-Tech) sollte ich beim wieder umschalten nicht unbedingt, dass Cell wieder starten.

  • Bodo
    Reactions Received
    1
    Points
    631
    Posts
    94
    Location
    Rossdorf bei Darmstadt
    • March 17, 2011 at 10:00 AM
    • #15

    Hallo

    also Code um Cell automatisch aufzurufen

    ;--------------------------------------------------------
    ;Automatisches anwaehlen von prog CELL
    IF ($mode_op==#EX) AND (b_autext==FALSE) THEN
    CWRITE($CMD,STAT,MODE,"RUN /R1/CELL()")
    b_autext=TRUE
    ENDIF

    IF ($mode_op==#t1) OR ($mode_op==#t2) THEN
    b_autext=FALSE
    ENDIF
    ;--------------------------------------------------------

    Bool merker b_autext in der Config declarieren


    P00 Chk Home / wird im Programm Cell ausgeführt zur überprüfung ob sich der Roboter auf Homeposition befindet.
    Sollte dies nicht der Fall sein wird am KCP eine Meldung generiert

    Wenn du nun ein Meldung zum Leitrechner bekommen möchtest kannst du im Programm P00 / DEF CHK_HOME ( ) etwas hinzufügen / die Meldung dann im SPS.Sub bei
    umschalten der BA auf T1 oder 2 wieder loeschen

    Man lernt nie aus / Stillstand gleich Rückschritt

  • Valid
    Points
    35
    Posts
    6
    • March 18, 2011 at 12:32 AM
    • #16

    Hi,
    Hab das mit den Bediener-Teachen öfters auch schon so gehandhabt, ist jetzt zwar nicht 100% sicher, erfüllt aber auch seinen Nutzen.

    Code
    ;aktive Bewegungsbefehle..
    
    
    ptp xp1
    ptp xp2
    ptp xp3
    
    
    
    
    ;InlineFormulare zum verändern:
    ;FOLD FOLD - Verfahrwege konventionell ändern
    Goto ausklammern   ; springt dann praktisch im laufenden Prog. direkt nach ausklammern:
    PTP P1 ....    
    PTP P2 ....
    PTP P3 ....
    ausklammern:
    continue
    ;ENDFOLD
    Display More

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

Tags

  • EX
  • PGNO_GET
  • P_FREE
  • T1
  • t2
  • EXT_ERR
  • CHK_HOME

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