Beiträge von Drudge

    morning,


    ja di Befehle for das sps.sub sind eigenltich exakt gleich wie für normale src programme. Nur dass halt ein paar Befehle nicht funktionieren (zB LIN, PTP, etc) und einige Anweisungen nicht verwendet werden sollten (zB WAIT)


    lg Drudge

    Wenn du die Variable so im $config.dat deklarierst, dann ist der Wert nach dem Neustart futsch:


    DECL INT iMy_Int
    DECL FRAME fVar


    Wenn du sie aber so (speichernd) deklarierst, sollte auch nach einem Neustart der Wert noch existieren:


    DECL INT iMy_Int = 0
    DECL FRAME fVar = {X 0.0, Y 0.0, Z 0.0, A 0.0, B 0.0, C 0.0}


    lg Drudge

    Hallo Crovax,


    am Besten mal beim Hersteller nachfragen. Auf jeden Fall mal abputzen und einige Zeit beobachten ob es nicht aufhört oder schlimmer wird. (Könnte eventuell auch sich verflüssigtes, überschüssiges Fett sein.)


    lg Drudge

    Die beiden Roboter, welche Steuerung (KRC2, KRC2ed05, KRC4,...) haben sie und was für eine Version (V5.2.x, V5.5.x, V5.6.x, V8.1.x, V8.2.x,...) der Systemsoftware ist jeweils installiert? Eventuell ein Versionenkonflikt?


    Meiner Erfahrung nach gibt es bei dieser Fehlermeldung zwei Möglichkeiten:
    1. Dein Robotermodell ist nicht in der Datenbank erfasst -> bei KUKA eine Version mit der ergänzten Datenbank anfordern.
    2. Es gibt einen Konflikt zwischen der Roboterbezeichnung in der Datenbank und der Modelbezeichnung im $machine.dat -> KUKA Support anrufen und das korrigieren lassen.


    In welchem Land suchst du einen Ansprechspartner?


    lg Drudge

    Alte Langtext.txt (Nur die Einträge, die beschriftet sind):

    Code
    IN_3 Anlage leerfahren
    IN_41 Ablage frei
    IN_42 Fertigteil ablegen
    IN_102 Greiferdruck
    
    
    OUT_9 Heizstempel nach unten
    OUT_41 Robi in Kollisionsbereich


    Neue Langtext.txt (Alle, auch leere, Einträge.):


    Ja die Syntaxänderung ist ein wenig mühsam, trotzdem sehe ich einige Dinge als einen Vortschritt:
    - Mehrere Sprachen bei Langtexten möglich (autom. Wechsel beim Umschalten der Sprache vom Panel)
    - csv ist viel praktischer zum Handeln als das alte TXT. Mit Hilfe von Excel ist das rumkopieren, schieben, aufzählen etc schon einfacher.

    Hallo SpeedFreak,


    wie die Formatierung exakt ist, kann ich dir auswendig nicht sagen, doch ist sie änlich zu der von KRC2 (nur dass auch Flags etc beschriftet sind). Am Besten organisierst du dir ein WorkVisual und exportierst mal die Langtexte, die du zuvor selber eingegeben hast. Dann siehst du das genau.


    lg Drudge


    p.s. Du kannst im csv oder txt Format exportieren.


    ...
    nun würde ich mich aber gern schonmal mit dem workvisual auseinandersetzen. hat jemand eine ahnung, ob das zum roboter immer dazu geliefert wird? oder kann man das auch einzeln beschaffen und was kostet der spaß?
    ..


    Die entsprechende WorkVisual Version wird mit jeder KRC4 ohne Zusatzkosten mitgeliefert.



    Es ist nicht so gut, weil es in etwa gleich umständlich ist wie beim alten System, um Programmänderungen durchzuführen oder aufzuspielen. Plus ist der enthaltene KRL Editor mehr als minimalistisch gehalten.


    Ja beim Meldungsystem funktioniert jetzt nur noch die neue Variante (KSS V5.5 wurde es eingeführt)


    Nein vorläufig kommst du um Sim.Pro und OfficeLite noch nicht rum. (Für KRC4 ist es das Sim.Pro 2.2 und das OfficeLite 8.2)

    mit dem Befehl ON_ERROR_PROCEED wird bei der nächsten Zeile (analog zu CONTINUE) kein Fehler ausgeworfen, sondern die Variable $ERR beschrieben. Wenn nach der Ausführung $ERR.NUMBER == 0 ist, dann wurde die Zeile fehlerfrei abgearbeitet. Vielleicht sparst du damit umständliche SWRITE und VARSTATE Konstrukte . . .

    Tach,


    wie Michael sagt: SAK gibt es in Automatik Extern nicht. Wenn die SPS startet, fährt der Robi los. Ist also kein Problem.


    ich nehme mal an, dein main.src sieht in etwa so aus:

    Code
    Deklarieren
    Initialisieren
    LOOP
      Produzieren
    ENDLOOP


    Das heisst, alles vor dem Loop wird nur 1 mal gemacht, nämlich nach dem Zurücksetzen. Bau da einfach einen Programmaufruf ein, der deine "automatisch Position auswerten und Home fahren" Routine aufruft und setze über den Submit mit einem Eingang dein Programm zurück. (Solltest eventuell im LOOP des main.src eine kleine Kontrolle einbauen, die überprüft ob der submit noch läuft....)


    lg Drudge

    Hallo Andreas,


    kommt drauf an was du mit "Unterprogramme" meinst. In einem Modul kannst du maximal 255 Unterprogramme machen. Die Anzahl der Module ist im Prinzip nicht begrenzt, doch wird sie durch die Arbeitsspeicherkonfiguration begrenzt. Und zwar ist die maximale Grösse einer einzelnen Datei und die gesamt Grösse des Speichers vordefiniert.


    lg Drudge

    Hallo Uli,


    meines Wissens hat sich seit der KRC2 diesbezüglich nichts geändert.
    "Justage setzen" = nicht vorhandene Justage erstellen
    "Justage prüfen" = vorhandene Justage korrigieren/prüfen
    zusätzlich hast du noch die Möglichkeit Lastabhängige Justagen zu erstellen, falls du das wünschst.


    lg Drudge

    Du must "Standard" Start machen, Abgesicherter Modus läuft nicht richtig. Wenn das nicht geht, versuche mal von Bootdisk zu starten und ein Scandisk für das Laufwerk C: zu machen. Wenn das keine Besserung bringt, denke ich ist das Mainboard altersbedingt hin oder eventuell die Harddisk.


    lgd

    Hallo Michael,


    es scheint mir, du bist in der objektorienterten Welt zuhause. ;) KRL ist aber eine prozessorientierte Sprache. Du erleichterst dir die Arbeit, wenn du die Programmierlogik entsprechend aufbaust. ;)


    Anstelle von Modul A aufrufen und über Switch-Case die Unterprogramme wieder aufrufen, könntest du separate Module für jedes Unterprogramm im Modul A machen oder aber die Unterprogramme als GLOBAL deklarieren und direkt aufrufen.


    Rekursive Programmaufrufe sind kein Problem beim KRL und funktionieren einwandfrei. (Habe ich auch schon für Lösungsfindungsalgorythmen verwendet.) Jedoch ist das Problem (mind. bis Version 5.5.x), dass der Programmstack eine fixe Maximalgrösse von 21 hat. Sprich nach dem 20igsten Unterprogrammaufruf ohne ein Unterprogramm abzuschliessen (egal ob rekursiv oder nicht) ist die maximale Verschachtelungstiefe erreicht. Wenn dann nochmals ein Unterprogramm aufgerufen wird, gibt es einene Laufzeitfehler.


    lgd