Punkt wird bei angewähltem Programm nicht in die .src Datei geschrieben

  • Hallo,


    ich habe ein Problem mit meinem neuen KR6 (KRC2 V5.5.16 Build 78). Wenn ich in einem angewählten Programm einen Teachpunkt über das Inline-Formular erstelle, werden die Koordinaten und Einstellungen in der .dat Datei erstellt, jedoch nicht der Fahrbefehl in der .src Datei. Es wird auch kein Fehler angezeigt, nur dass der Punkt erfolgreich erstellt wurde.
    Komischerweise funktioniert es wieder, wenn ich im selben Unterprogramm vorher einen Punkt angefahren bin.
    Dasselbe passiert auch mit GripperTech.
    In einem abgewählten Programm funktioniert alles ohne Probleme... ist das von Kuka so gewollt? Es nervt schon ordentlich, wenn man immer wieder das Programm abwählen und von vorne anfangen muss.


    MfG


    Artur

    Einmal editiert, zuletzt von arturb ()

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


    Zitat


    wird dieser in der .dat Datei erstellt, jedoch nicht in der .src Datei


    Das ist ein absolut korrektes Verhalten. Wenn Du eine Bewegung mit einem Formular programmierst, also Befehle->Bewegung->PTP, so wird der Punkt in der Dat-Datei gespeichert.


    Falls Du ihn dann hinterändern willst, kannst Du die entsprechend Zeile anwählen, und mit Touch Up dann die aktuelle Position speichern.


    Zitat


    Komischerweise funktioniert es wieder, wenn ich im selben Unterprogramm vorher einen Punkt angefahren bin.


    Das verstehe ich nicht. Was funktioniert wieder? Bis jetzt war das beschriebene Verhalten korrekt.


    Viele Grüße,
    Tilman/Frankreich

  • Mojen,



    Hallo,


    Komischerweise funktioniert es wieder, wenn ich im selben Unterprogramm vorher einen Punkt angefahren bin.
    Dasselbe passiert auch mit GripperTech.


    ich denke mal, dass Du von lokalen Unterprogrammen redest. Da ist das nicht so einfach hin und her zu springen. ich vermute mal, dass Dein Satzzeiger außerhalb Deines lokalen Unterprogramms steht und Du versuchst da einen Punkt hinzuzufügen. Glaub das geht nicht (müsste ich auch erst mal probieren).


    Gruß René

  • Hallo Tilman,


    Danke für deine Antwort.


    Zitat

    Das ist ein absolut korrektes Verhalten. Wenn Du eine Bewegung mit einem Formular programmierst, also Befehle->Bewegung->PTP, so wird der Punkt in der Dat-Datei gespeichert.


    Falls Du ihn dann hinterändern willst, kannst Du die entsprechend Zeile anwählen, und mit Touch Up dann die aktuelle Position speichern.


    Genau, in der .dat Datei sind die Koordinaten und Einstellungen, aber in der .src steht der Fahrbefehl und eben dieser wird nicht erstellt. D.h., ich lege über das Inline-Fomular einen Punkt an, die Koordinaten werden in der .dat gespeichert, jedoch wird in der .src Datei der entsprechende Fold mit Fahrbefehl usw. nicht angelegt. Oder anders gesagt, die .src Datei wird überhaupt nicht verändert.


    Zitat


    Das verstehe ich nicht. Was funktioniert wieder? Bis jetzt war das beschriebene Verhalten korrekt.


    Wenn man folgendesHauptprogramm hat:

    Code
    ;FOLD PTP ...
    :
    :
    PTP punkt
    ;ENDFOLD
    
    
    unterprogramm()


    So kann man im Hauptprogramm den Punkt ohne Probleme erstellen (das Fold im .src wird ebenfalls erstellt). Wenn ich dann aus dem Programm heraus in das Unterprogramm springe, kann ich dort aber wieder keine Punkte in der .src Datei erstellen.


    Was mir jetzt auch aufgefallen ist: Wenn ich ein normales Modul aus der Kuka Vorlage erstelle, mit INI und den beiden Home-Positionen, so kann ich die Punkte ohne Probleme anlegen. Sobald ich ein Expert Modul anlege, geht wieder nichts. Jedenfalls wenn das Programm angewählt ist.

  • ist deine bewegung innerhalb eines FOLDs?

    Wolfram (Cat) Henkel

    never forget Asimov's Laws at the programming of robots...

    "Safety is an integral part of function. No safety, no production. I don't buy a car without brakes."


    Messages und Mails mit Anfragen wie "Wie geht das..." werden nicht beantwortet.

    Diese Fragen und die Antworten interessieren jeden hier im Forum.


    Messages and Mails with questions like "how to do..." will not be answered.

    These questions and the answers are interesting for everyone here in the forum.

  • Hallo arturb,


    Jetzt habe ich Dein Problem verstanden :uglyhammer_2:.


    Ich glaube, daß es daran liegt, daß die Inline-Formulare die "BAS" Funktion benötigen. Schreibe mal einfach in Dein DAT-File des Unterprogramms oben rein:


    Code
    EXT  BAS (BAS_COMMAND  :IN,REAL  :IN )
    DECL INT SUCCESS


    Dann sollte das Teachen auch hier klappen (tut es jedenfalls bei mir).


    Viele Grüße,
    Tilman/Frankreich

  • Gleich ne Anschlußfrage: Wer weiß eigentlich, wofür die Variable SUCCESS benötigt wird? Die Suchfunktion des Windows-Explorer findet die zwar überall deklariert... aber nirgendwo benutzt!


  • ist deine bewegung innerhalb eines FOLDs?


    Nee. Selbst wenn ich ein ganz frisches Experten Modul erstelle, lässt sich nichts in die src einfügen. Bei einem normalen Modul, funktioniert es dagegen.



    Ich glaube, daß es daran liegt, daß die Inline-Formulare die "BAS" Funktion benötigen. Schreibe mal einfach in Dein DAT-File des Unterprogramms oben rein:


    Code
    EXT  BAS (BAS_COMMAND  :IN,REAL  :IN )
    DECL INT SUCCESS


    Das hört sich gut an. Ich probiere es mal aus und melde mich dann.


    Hhm...mit dem success könnt ich mir höchstens vorstellen, dass es schon etwas älter ist und BAS früher möglicherweise eine Funktion war, die einen Rückgabewert geliefert hat, der nach success geschrieben wurde. Aber das ist reine Spekulation :pfeif:

  • Ich glaube du meinst, dass du einen Fahrbefehl per ILF in einem angewählten Programm einfügen möchtest und wenn due auf "Befehl ok" drückst, dann verschwindet das ILF, das du gerade angelegt hast, aus dem SRC.
    Im Meldungsfenster müsste dann auch eine Fehlermeldung ausgegeben werden.


    Diesen von dir beschriebenen Fehler habe ich leider auch bei verschiedenen Steuerungen und Softwareversionen erlebt. Wurde auch hier schon öfter diskutiert. Woran es liegt weiß ich nicht! Es geht nur mit dem von dir beschriebenen Workaround - nicht schön aber immerhin.




    Ich glaube, daß es daran liegt, daß die Inline-Formulare die "BAS" Funktion benötigen. Schreibe mal einfach in Dein DAT-File des Unterprogramms oben rein:


    Code
    EXT  BAS (BAS_COMMAND  :IN,REAL  :IN )
    DECL INT SUCCESS


    Dann sollte das Teachen auch hier klappen (tut es jedenfalls bei mir).


    Hallo Tilman,
    hattest du denn vorher auch den vom TE beschriebene Fehler?

    Greetings, Irrer Polterer!

    Wie poste ich falsch? Nachdem ich die Suche und die FAQ erfolgreich ignoriert habe, erstelle ich das gleiche Thema in mehreren Unterforen, benutze einen sehr kreativen Titel wie "Hilfe", am Besten noch mit mehreren Ausrufezeichen, und veröffentliche einen so eindeutigen Text, dass sich jeder etwas Anderes darunter vorstellt.


    Life is a beta version. Full of bugs and no Manual.

    Einmal editiert, zuletzt von IrrerPolterer ()

  • Hallo Rainer,


    Zitat

    hattest du denn vorher auch den vom TE beschriebene Fehler?


    Ja, klar. Nachdem ich die Frage verstanden hatte, habe ich es mal mit OfficeLite ausprobiert. Dort habe ich den Fehler, genau wie beschrieben, nachvollziehen können.


    Hier noch ein bißchen Hintergrundwissen dazu. In einem Bewegungsbefehl (Folder), steht z.B. folgender Aufruf der Funktion BAS(#PTP_PARAMS,100). Es ist also notwendig, daß diese Funktion vorher deklariert wurde. Dazu Orginalton Kuka


    Zitat

    ...Stattdessen wird das standardmäßig vorhandene “BAS.SRC” hierzu verwendet. Dazu muß es zunächst mit der EXT-Anweisung dem Programm bekannt gemacht werden.


    Der beschriebene Workaround ist auch schon dokumentiert.

    Zitat


    Das Schlüsselwort “EXT” ist nicht notwendig, wenn der betreffende UP- bzw. Funktionsaufruf im Editor eingegeben wird.


    Mit freundlichen Grüßen,
    Tilman/Frankreich

    Einmal editiert, zuletzt von Tilman ()

  • :shock: Das macht es eigentlich um so schlimmer, da bei mir immer die BAS-Deklaration so im DAT-File drin stand.

    Greetings, Irrer Polterer!

    Wie poste ich falsch? Nachdem ich die Suche und die FAQ erfolgreich ignoriert habe, erstelle ich das gleiche Thema in mehreren Unterforen, benutze einen sehr kreativen Titel wie "Hilfe", am Besten noch mit mehreren Ausrufezeichen, und veröffentliche einen so eindeutigen Text, dass sich jeder etwas Anderes darunter vorstellt.


    Life is a beta version. Full of bugs and no Manual.

  • Dann sind das eindeutig zwei unterschiedliche Ursachen. Eine ist jedenfalls schon mal geklärt! Jetzt bist Du dran :D :D :D

  • Leider (oder zum Glück) habe ich gerade keine Steuerung mit diesem Fehler... :)
    Außerdem habe ich wirklich schon alles durchgeforstet. Software-Neuinstallation hat übrigens geholfen. macht aber keinen Spaß. :eviltongue:

    Greetings, Irrer Polterer!

    Wie poste ich falsch? Nachdem ich die Suche und die FAQ erfolgreich ignoriert habe, erstelle ich das gleiche Thema in mehreren Unterforen, benutze einen sehr kreativen Titel wie "Hilfe", am Besten noch mit mehreren Ausrufezeichen, und veröffentliche einen so eindeutigen Text, dass sich jeder etwas Anderes darunter vorstellt.


    Life is a beta version. Full of bugs and no Manual.

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