Beiträge von d4nuu8

    Sicherheitstechnisch sind die Spielereien mit dem Override immer sehr heikel. Wenn der Bediener die Geschwindigkeit absichtlich reduziert und die Kiste dann auf einmal wieder Vollgas fährt, ist das etwas merkwürdig.


    Meistens macht es mehr Sinn den Override zu prüfen und ggfs. den Bediener darauf hinzuweisen, dass mit dem aktuellen Override der Prozess nicht fortgeführt werden kann. Oder irgendetwas in diese Richtung..

    Die zwei "Arbeitsbereiche" sind völlig getrennt voneinander. Der eine hat mit dem anderen gar nichts zu tun.


    Bei "Konfiguration und Inbetriebnahme" öffnest du wvs-Dateien. Egal wo auch diese herkommen (von der Steuerung direkt geladen, oder vom PC).


    Bei "Programmierung und Diagnose" erfolgt alles on-the-fly. Wenn hier etwas angezeigt wird, dann nur aus deiner vorherigen Session.


    War wirklich schon immer so. ;)

    Mh, ich hab's gerade mal auf einer Windows 7 VM probiert. Bei mir funktioniert es ohne Probleme. Habe auch mal zwischen farbiger, und schwarz-weiß Ausgabe gewechselt. Sogar wenn ich den Reporter auf irgendwas nicht vorhandenes Stelle, bekomme ich eine Ausgabe.


    Ich schreib dir morgen mal eine PN. Vielleicht fällt mir noch irgendwas ein. :huh:

    Also wenn du krllint nur eine einzelne Datei übergibst, ohne sonstige Parameter, erhältst du als Ausgabe alles was krllint zu bemängeln hat (siehe Only_Test.png).


    Wenn du jetzt noch zusätzlich die Option "fix" aktivierst, wird die angegebene Datei direkt korrigiert (kein Backup der Datei oder so was).


    Zum Beispiel die angehängte "diry.src" kopieren und in "clean.src" umbenennen. Dann:

    Code
    krllint --fix clean.src


    Wenn du jetzt "clean.src" nochmal prüfst, dann bekommst du aktuell keine Ausgabe, weil es nichts mehr zu bemängeln gibt.


    Ich habe aber schon aufgenommen, in der nächsten Version eine Ausgabe der insgesamt gefunden "Fehler" als Abschluss auszugeben. ;)

    Code
    >>> import krllint
    >>> krllint --help
    Traceback (most recent call last):
      File "<pyshell#1>", line 1, in <module>
        krllint --help
    TypeError: bad operand type for unary -: '_Helper'
    >>> krllint cell.src
    SyntaxError: invalid syntax


    Du kannst krllint direkt aus der Windows CMD / Powershell starten. Einzige Voraussetzung hierfür ist, dass bei der Installation von Python die Option "add python to PATH" (oder so ähnlich) gesetzt wurde.


    Edit: Hast du pip zur Installation genutzt? Sonst funktioniert die beschriebene Methode nicht. Würde ich dir empfehlen. Vereinfacht das ganze und bringt alles mit was man braucht.


    Einfach in einer CMD "pip install krllint" eingeben. Zur Installation braucht die CMD einmalig Admin-Rechte. Danach funktioniert krllint ohne spezielle Rechte.

    Hallo Forum


    ich würde euch gerne ein kleines Projekt von mir vorstellen, welches ich vor kurzem angefangen habe.


    Das ganze nennt sich krllint und soll dazu dienen KRL zu analysieren und ggfs. zu korrigieren.


    Was kann krllint bisher:


      • Überprüfung der Einrücktiefe des Codes

      • Überprüfung auf Großschreibung von Schlüsselwörtern der Sprache

      • Überprüfung auf überflüssige Leerzeichen

      • Überprüfung der Verwendung eines einheitlichen Zeichens zur Einrückung des Codes (Leerzeichen oder Tab)


    Bei allen genannten Punkten ist krllint in der Lage (falls gewünscht) den Code automatisch zu korrigieren.


    Ich erstelle diesen Eintrag mit der Hoffnung, dass der ein oder andere krllint vielleicht ganz nett findet und verwenden möchte. Aktuell befindet sich krllint noch in einer sehr frühen Phase und kann, wie ihr seht, noch nicht all zu viel.



    Finden könnt ihr krllint hier. Dort findet ihr auch eine kleine Beschreibung zur Installation und der wichtigsten Funktionen.


    Für alle die noch kein Python installiert haben: hier findet ihr eine Anleitung zur Installation.




    Ich freue würde mich über Anmerkungen, Wünsche, Kritik, etc. sehr freuen.


    Bei Fragen - einfach raus damit.




    d4nuu8

    Wo wird Links_Anguss_1 beschrieben? Steht, zumindest in diesem Code hier, immer Null drin.


    Und wieso willst die deine Punkte mit xP1 bzw. xP2 adressieren, wenn sie ohne x deklariert sind? Die Kuka-ILFs legen die Punkte nach diesem Muster an. Falls die die Punkte über Touch-Up teachen willst, musst du das x bei der Deklaration auch mit angeben.

    Entweder wenn ein festgelegter Achswert überschritten wurde, oder wenn ein Stillstand des Roboters absehbar war, wurde die Achse genullt.


    Wir hatten damals den Vorteil, dass wir zwei gegenläufige Achsen hatten. Somit konnte man die Ungenauigkeit / Fehler zwischen beiden Achsen einfach vergleichen und dementsprechend nullen.

    Ich hatte mal ein ähnliches Problem. Eine Lösung habe ich damals allerdings nicht gefunden.


    Als Workaround haben wir die Achsen (waren zwei gekoppelte), einfach so oft wie möglich genullt. Sollte eigentlich auch deutlich schneller gehen, als in deinem Code.