Beiträge von TheSheep

    - Es wäre schön, wenn es mal die Möglichkeit geben würde ein Dialog-Fenster zu öffnen, in dem man Werte über die Tastatur eintragen kann.

    - Die Übertragung von WorkVisual auf den Roboter hat sehr oft Fehler/Bugs, bzw. wird abgebrochen.

    Wenn man einfach nochmal überträgt, geht es dann plötzlich. Kommt sehr häufig im Modus "Programmieren und Diagnose" vor. Das ist gefühlt auch schon in den letzten 5 WoV-Updates so.

    - Das es endlich mal möglich ist, sich mehrere Module aus dem Menüpunkt "Anzeige" anzeigen zu lassen (Zum Beispiel IST-Position und Ein/Ausgänge)

    - Die Suchen und Ersetzen Funktion ist grausam. Warum muss das Ersetzen immer am Dokumentanfang beginnen?

    - Ich finde, hier wurden schon sehr viele "Quality of Life"-Wünsche geäußert, die das Programmieren der Roboter wirklich sehr vereinfachen würden (vereinfachte ConfigMon.ini / besserer Splitscreen / Abmeldezeit ändern ...)

    Moin,


    Ich habe an meiner CV-X den Programmwechsel wie folgt gelöst.

    Hier ist zwar das Auslesen nicht mit drin, aber die Anwahl deines Programmes ist noch nicht korrekt. Du musst der Kamera nicht nur "PW" schicken, sondern auch den Speicherort (SD-1) und die Programmnummer (nnn).

    Code
    ;Programmwechsel zu Kameraprogramm 1 
    ;(Befehl, SD-Karte, Prog.-Nummer)
             KeySendString("PW,1,001")
             LOOP_MSG("Warte auf Programmwechsel Kamera...", "Keyence")
             KeyRecvString(g_strBuf[])
             WAIT FOR STRCOMP(g_strBuf[], "PW", #CASE_SENS)
             LOOP_MSG(" ")

    Erst stoße ich den Wechsel an.

    Dann schicke ich direkt einen Lesebefehl hinterher, welcher erst von der Kamera ausgewertet wird sobald sie mit dem Programmwechsel fertig ist und warte auf die Bestätigung der Kamera, dass der Programmwechsel vollzogen wird (Recv "PW).


    Wenn ich mich richtig erinnere, müsstest du beim Auslesen deine Daten in das angegebene Array geschrieben bekommen (zum Beispiel g_strBuf[ ] ) und dann per String-Vergleich die Programmnummer der Kamera mit deiner "i_PRG_akt" vergleichen.

    Mal so aus dem Stehgreif:

    Code
    KeySendString ("PR")
    KeyRecvString(g_strBuf[])
    bRet = KeySplitStringBySpace(g_strBuf[], 1, g_rPrm[])
    
    IF NOT STRCOMP (g_rPrm[1],i_PRG_akt, #CASE_SENS) THEN
    ...
        
    IF NOT STRCOMP (g_rPrm[2],i_SD_akt, #CASE_SENS) THEN
    ...

    In welches Array welcher paramter geschrieben wird, kann ich dir grad so nicht sagen. Aber das steht ja in der Bedienungsanleitung.


    Grüße und nen schönes Wochenende

    Vielen Dank für die vielen Antworten :danke:


    Das es vermutlich am Fahrbefehl von PTP zu PTP liegt, war auch mein erster Gedanke.


    Das Überschleifen hatte ich bei der Inbetriebnahme weitesgehend so optimiert, das fast alle Hinweismeldungen auf nicht durchführbare Überschleifungen nicht mehr aufgetreten sind.

    Aber die Anlage steht da auch schon über ein Jahr und der Kunde fingert leider auch gerne an den Positionen rum. Das werde ich mir nochmal genauer anschauen bei Gelegenheit.

    Der E6Axis Punkt wird mit Default-Werten angefahren, also DEF_APO_CPTP = 50; PTP-Approximation [%].


    Der KUKA Support kam noch mit einem weiteren Lösungsvorschlag, welche die Aussage vom Programmiersklave eventuell unterstützen würde.


    Leider bin ich momentan nicht vor Ort, um mir die Daten auszulesen oder Tests fahren zu können. Sobald ich weitere Informationen habe, werde ich sie hier reinschreiben.


    VG

    Hallo zusammen,


    Ich habe derzeit ein Problem, zu dem ich bisher im Forum keine Infos finden konnte...

    Eckdaten Roboter:

    KR10 R1420

    KRC4 KSS 8.6.7


    Der Roboter steht bereits beim Kunden und ist auch bereits seit einem Jahr in Betrieb.

    Die Aufgaben des Roboters bestehen aus simplen Pick&Place Aufgaben mit einer Leiterplatte.

    Aufgrund der Taktzeit konnte der Roboter bisher mit einer entspannten Geschwindigkeit von 40-60% fahren.

    Da die Taktzeit nun verringert wurde, wurden die Roboter schneller gestellt, wodurch es plötzlich zu einem mir unbegreiflichen Verhalten des Roboters kam.

    Auf einmal wurden bestimmte Positionen nicht mehr genau angefahren, sondern "überfahren", wodurch der Greifer mit der Leiterplattenzuführung kollidiert.

    Setzt man die Geschwindigkeit wieder runter (OV_PRO < 70%), werden die Positionen wieder genau angefahren.


    Die Bewegung, die der Roboter ausführen muss ist keine komplizierte. Er muss lediglich seinen Arm leicht nach unten ausstrecken, die Achsen A4 + A6 bleiben größtenteils gleich, A5 bewegt sich leicht mit, um den Greifer parallel zum Boden/Station zu halten.

    Der Roboter kommt von einer E6AXIS-Position.

    Die Position, die nicht genau angefahren oder Überfahren wird, ist die gXCX_SP_LOAD_Ent_LP. Hierbei handelt es sich um einen "Stoßpunkt" direkt über der Entnahmeposition (mittig über der Leiterplatte).

    Im Programmbeispiel wurde die Geschwindigkeit für den Fahrbefehl bereits auf VEL = 30% reduziert. Vor der Änderung wurde der Punkt mit VEL = 75% angefahren.


    Meine größte Verwirrung kommt daher, das bei der Inbetriebnahme und Endabnahme beim Kunden der Roboter schon auf 100% gelaufen sind. Und das ohne Crash! :nocheck:

    Die Lastdaten sind nach CAD-Werten eingetragen.

    Ich hatte ein ähnliches Verhalten bei einem anderen Roboter. Hier wurde jedoch eine relative große Achsbewegung (A6 ca. 90°) innerhalb einer kurzen Fahrdistanz von ca. 20cm durchgeführt .

    Auch hier war die Abhilfe, die Anfahrgeschwindigkeit des Punktes runter auf 30% zu setzen.


    Meine Frage wäre, ob jemand eine Vermutung hat, woher das Fahrverhalten kommt? :kopfkratz:

    Ist es der Sprung von einem E6-Axis zu einer E6Pos? Ist es der PTP-Fahrbefehl, der plötzlich einen wesentlich größeren Radius benötigt aufgrund der hohen Geschwindigkeit?


    Der KUKA-Support meinte, ich soll einfach das Überschleifen der E6Axis-Position ausschalten. Das löst eventuell das Problem, aber die Ursache kenne ich trotzdem noch nicht.

    Vielleicht kann hier hier jemand Licht ins Dunkel bringen


    Mit freundlichem Gruß

    Sheep

    Hallo micha_hensel

    Ich habe zwar die 3D-Kamera von Keyence in Gebrauch, jedoch scheint es vom Aufbau her relativ gleich zu sein. Wenn mich nicht alles täuscht, müssten die neuen Positionen über das Sub-Programm "KeyRelMove" als Relative Postionen oder "KeyAbsMove" mit Absoluten Positionen in der Keyence_Setup.src übertragen werden.

    Die neuen Positions-Daten sollten dann in rX, rY, rZ, usw. stehen.

    Wir haben ebenfalls einige Roboter mit Wechselwerkzeugen, die auch oftmals während dem Prozess gewechselt werden und kamen recht schnell auf das selbe Problem wie ihr.


    Die Abhile:

    Die Stimmgabel für die Bedämpferplatte wurde an eine Halterung zwischen dem Roboterflansch und dem (Schnell)wechselmodul für das Werkzeug befestigt. Somit kann der Roboter mit jedem Werkzeug oder auch mit gar keinem die Referenzposition anfahren.

    Hallo zusammen,


    So wie du das geschrieben hast dachte ich mir das zuerst auch. Leider wird ein Projekt welches einmalig mit 6.0.19 bearbeitet wurde soweit geschädigt das auch ein wieder aufspielen mit einer älteren Version nicht hilft..

    Ich hatte das selbe Problem. Ich habe es mit meheren Versionen von WoV und unterschiedeliche Versionen meines Roboterprogramms versucht, ohne Erfolg...


    ABER:

    Ich habe heute morgen eine E-Mail vom KUKA Support bekommen, das die Version WoV6.0.20 ab heute zum Download zur Verfügung steht!


    Und siehe da: Es funktioniert :applaus:

    Neue Version installiert, Projekt aufgemacht, übertragen und meine Langtexte wurden alle angezeigt :supi:

    Hallo zusammen,

    als erstes mal vielen Dank an dieses Forum. Ich konnte hier schon eine Menge an Hilfestellungen finden.

    Ohne dieses Forum wäre ich bisher nie soweit gekommen :thumbup:


    Nun habe ich jedoch ein "Problem", wofür ich hier noch keinen entsprechenden Beitrag finden konnte.

    Kurz zur Hardware: Ich habe hier 3 KRC4 smallsize2 mit der KSS8.6 und die dazugehörigen KR10R1420.

    Programmiert werden diese mit WoV 6.0.18.


    Mein Problem bezieht sich, wie im Titel zu lesen, auf alle Langtexte.

    Diese werden mir auf meinem KCP einfach nicht angezeigt.

    In WoV sind sie deklariert, das Programm wird übertragen und trotzdem steht z.B. in den Digitalen Eingänge weiterhin nur "Eingang". Jedoch nicht der Langtext, den ich deklariert habe.

    Exportiere ich mir die Langtexte über Inbetriebnahme>Service>Langtexte auf einen USB-Stick und öffne die CSV-Datei, sind die Langtexte vorhanden.

    Genau so wie ich sie in WoV deklariert habe:wallbash:

    Gleiches Verhalten beim Exportieren als .txt-Datei.

    Auch ein Exportieren der Langtexte aus WoV auf den Stick und Importieren auf die KCP bringt keinen Erfolg.


    Der KUKA Support meinte (vor 2 Wochen) ich solle auf die neuste WoV-Version hochrüsten. 1 Woche später kam die Meldung, das diese Version einen Bug bezüglich der Langtexte hat und die Version zurückgezogen wird. Also Software wieder deinstalliert und die .18 wieder installiert.

    Aber mein Problem bestand ja auch schon vorher.

    Hat jemand von euch schonmal einen ähnlichen Fehler gehabt oder könnte eine Ahnung haben, woran das liegen könnte?


    Schonmal danke im Voraus