Beiträge von michaelg

    Hi,


    weil ich im Normalfall keine Sekunde warten will. Die Routine in der sps.sub zielt auf den Anwendungsfall ab, dass die Variable nicht wie vorgesehen nach 0,2 (oder weniger) Sekunden vom System auf False gesetzt wird.


    Gruß
    iRobot

    Du bist mir mit der zweiten Antwort zuvor gekommen :uglyhammer_2:


    Warum sollte das nicht möglich sein? Wenn ich in die äußere IF-Abfrage reinkomme und mein Timer ist größer als 1000, dann setzt er mir die Variable auf FALSE und dann gelange ich in den inneren zweiten Zweig wo der Timer resettet wird. Das einzige Problem dabei ist, wenn mir die Variable außerhalb der IF-Abfrage vom System zurück gesetzt wird, da gebe ich Dir Recht.


    Mögliche Konstellationen:


    1. Die Variable ist zu Beginn des Programmblocks FALSE => der Block wird übersprungen.
    2. Die Variable ist zu Beginn des Programmblocks TRUE => der Block wird betreten, der Timer gestartet, sonst passiert erstmal nichts. Beim nächsten Mal ist die Variable immer noch TRUE, der Block wird wieder betreten, der Timer ist evtl. immer noch nicht so weit. Es passiert wieder nichts. Beim nächsten Mal wird wieder der Block betreten, der Timer hat den Wert überschritten, die Variable wird auf FALSE gesetzt und der Timer dadurch resettet.


    JETZT PROBLEM:
    3. Die Variable ist TRUE, der Block wird betreten, der Timer gestartet. Die Variable wird außerhalb der IF-Abfrage auf FALSE gesetzt: der Block wird nicht mehr betreten und der Timer läuft weiter.


    Ich habe wie von Dir empfohlen die Abfrage hinter den Block gesetzt, damit sollte eigentlich alles erschlagen sein. Dann wird er zwar ständig den Timer stoppen und resetten wollen wenn die Variable FALSE ist, allerdings sollte das ja kein Problem sein.



    Besten Dank schon mal :biggrins:
    iRobot

    Hi Tilman,


    zu 1) sollte kein Problem, da ich keine Quittierung benötige. Das sind lediglich Statusmeldungen, die in einem externen Programm abgespeichert werden. Also kein Problem, wenn die Meldung direkt wegquittiert wird.


    zu 2) Ich habe den Code dahingehend angepasst, dass ein Umschalten der Variablen auf FALSE innerhalb der IF-Abfrage abgefangen wird und der Timer nicht bis zum Nimmerleinstag weiterläuft. Entweder schafft es die Systemsoftware den Wert auf FALSE zu setzen, dann wird der Timer gestoppt und resettet. Oder der Timer läuft ab, da es die Systemsoftware nicht schafft, und setzt die Variable zurück und dann wird der Timer resettet.


    Hallo,


    der Thread ist nun schon ein wenig älter, dennoch ist das Thema aktuell.

    Ich habe ähnliche Probleme mit der Meldungsausgabe. Ist die Wartezeit in der Schleife zu gering oder werden kurz hintereinander Meldungen ausgegeben, so kommt es vor, dass die Variable $MSG_T.VALID nicht mehr auf FALSE zurück fällt. Daher habe ich mir im sps.sub eine kleine Routine geschrieben und wollte fragen, ob das jemand schon so gelöst hat bzw. ob das auf diesem Wege zulässig ist. Die SW-Version ist 5.2.19 auf einem KRC2.



    Wird eine Meldung ausgegeben und fällt der Wert der Variable $MSG_T.VALID nicht innerhalb einer Sekunde auf FALSE, wird der Wert von sps.sub auf FALSE gesetzt. Syntaxfehler gabs keine, ausprobieren konnte ich es allerdings auch noch nicht. Evtl. hat da jemand Erfahrung mit gemacht.


    Gruß
    iRobot

    Hallo zusammen,


    es gibt ja schon diverse Threads zu dem Thema, allerdings bringen die mir nicht den gewünschten Überblick. Ich habe auch eben mal mit der Hotline telefoniert, allerdings war der Erfolg eher mäßig.


    Meine Daten:
    KRC 2
    KR 16
    SW 5.2.19


    Meine Frage(n):


    Für die Geschwindigkeit bei der Expertenprogrammierung sind die Systemvariablen $vel.cp und $acc.cp zuständig (das Programm besteht hauptsächlich aus LIN-Bewegungen).
    1) Wo finde ich die Maximalwerte für diese Variablen?


    Meinem Verständnis nach sollten das die Zeilen

    Code
    DECL CP $ACC_MA={CP 10.0,ORI1 1000.0,ORI2 1000.0} ;CP = MAX. BAHNBESCHLEUNIGUNG [M/SEC2], ORI1 = MAX. SCHWENKBESCHLEUNIGUNG     [GRAD/SEC2], ORI2 = MAX. DREHBESCHLEUNIGUNG [GRAD/SEC2]
    DECL CP $VEL_MA={CP 3.0,ORI1 400.0,ORI2 400.0} ;CP = MAX. BAHNGESCHWINDIGKEIT [M/SEC], ORI1 = MAX. SCHWENKGESCHWINDIGKEIT    [GRAD/SEC], ORI2 = MAX. DREHGESCHWINDIGKEIT [GRAD/SEC]


    in der $machine.dat sein. So wie ich es hier gepostet habe steht das auch bei mir drin. Allerdings nennt die Doku der Systemvariablen andere Werte, z.B.


    Code
    DECL CP $ACC_MA={CP 4.6,ORI1 200.0,ORI2 200.0}


    und


    Code
    DECL CP $VEL_MA={CP 1.75,ORI1 400.0,ORI2 400.0}


    Der Kollege von der Hotline nannte mir die Werte aus der Doku.


    2) Kann ich also auf eigenes Risiko in der $machine.dat diese Grenzen verändern mit der Gefahr dass er mir mit einem Getriebemoment aussteigt?


    3) Für was ist dann der Bereich CP-Movements im Fold BASISTECH GLOBALS der $config.dat zuständig. Dort steht bei mir


    Code
    ; CP - MOVEMENTS                                                 
    ;----------------------------------
    DECL CIRC_TYPE DEF_CIRC_TYP=#BASE
    REAL DEF_VEL_CP=2.0
    REAL DEF_VEL_ORI1=200.0
    REAL DEF_VEL_ORI2=200.0
    REAL DEF_ACC_CP=2.29999995
    REAL DEF_ACC_ORI1=100.0
    REAL DEF_ACC_ORI2=100.0
    REAL DEF_VEL_FACT=1.0


    Diese Werte unterscheiden sich ja doch signifikant von denen in der $machine.dat. Legen sie das Verhalten zum Programmstart fest während die in der $machine.dat die Obergrenzen festlegen?


    Ich habe ja im Programmcode dennoch die Möglichkeit $acc.cp und $vel.cp zu verändern. Werden diese Zuweisung vom Bereich CP-Movements aus der $config.dat beeinflusst.


    Viele Fragen und meinen Dank im Voraus :danke:


    Gruß
    iRobot

    Hi Solid,


    ich hatte an einer Maschine schon mal ein ähnliches Problem. Es kam keine Meldung von wegen Achsenjustierung aber beim Prüfen der Justage sind Differenzen bei den Inkrementgebern der Achsen aufgetreten. Laut KUKA kommt die Dejustagemeldung erst ab einer gewissen Abweichung dieser Werte.


    Gruß
    iRobot

    Hallo zusammen,


    woran kann es liegen, dass die Schaltfläche <Wert> beim Dialogfenster Anzeige -> Ein-/Ausgänge -> Digitale Ausgänge inaktiv, also "ausgegraut" dargestellt wird. Wäre für den Systemtest hilfreich, wenn ich die Leitungen zumindest mal überprüfen könnte, in dem ich die Ausgänge setzen kann. Über ein Programm ist es auch nicht möglich, da manche Ausgänge schreibgeschützt sind. Ich bin als Admin angemeldet, die Betriebsart ist T1. SW ist 5.2.19 bei einer KRC2.


    Muss man da irgendwas freischalten oder liegt das an irgendeiner Systemkonfiguration. Oder liegt es an der Automatik Extern Konfig?


    Danke


    Gruß
    iRobot

    Hallo zusammen,


    ja, der Thread ist schon ein wenig älter, aber ich bin da jetzt drüber gestolpert und das hört sich für mich sehr interessant an. Den Editor habe ich jetzt auch ausmachen können, aber das Menü mit den Software-Endschalter setzen taucht bei mir nicht auf. Gibt es dafür Vorbedingungen, wie z.B. ein laufendes Programm usw.?


    Oder hat jemand eine Doku für diesen Editor?


    Besten Dank


    iRobot

    Ich würde mal folgende Werte in $machine.dat und $robcor.dat überprüfen:


    - in $machine.dat -> Zeile mit $TRAFONAME[] = <Bezeichnung>
    - in $robcor.dat -> Zeile mit $MODEL_Name[] = <Bezeichnung>


    Die Bezeichnungen müssen mit dem Typenschild übereinstimmen, das Problem hatte ich mal mit einer gespiegelten Platte. Auch nachdem ich die RDW Daten auf die Platte übernommen habe.


    Du sagst ja, dass Du die beiden Dateien manuell wieder eingespielt hast, aber evtl. überschreibt er dass, wenn Du Daten von der RDW auf die Platte schreibst und umgekehrt.


    Gruß
    iRobot

    Hi,


    ja du hast Recht. die Hotline hat mir das auch bestätigt. Ab 5.5.x ist die Umschaltung drin. Bei dem jetztigen Roboter ist das deaktiviert.


    Ich wollte es gerne so haben, DASS er nach 5 Minuten wieder zum normalsterblichen Nutzer wird, denn beim Kunden könnte das fatal werden, wenn man mal vergisst sich aus zu loggen.


    Gruß
    iRobot

    Hi,


    ich habe den SW-Stand 5.2.19 auf einer KRC2, aber leider ist die Datei Authentication.config im Ordner /KRC/HMI/Config nicht vorhanden. Ich habe auch schon die Ansicht geändert so dass versteckte und Systemdateien angezeigt werden, ohne Erfolg.


    Wer weiß Rat?


    Gruß
    iRobot

    Ich mach das immer so, allerdings mit einer KRC2, SW 5.2.19:


    Kompletter Abzug des Systems, dann die neuen Dateien in die archive.zip injezieren, und wiederherstellen. Klappt wunderbar. Ein komplettes Backup sollte man aber immer machen.


    Wenn Du nur einzelne Dateien auf eine Diskette ziehst wird das wahrscheinlich nicht funktionieren, da das System beim Wiederherstellen nach einer ZIP-Datei Ausschau hält.


    Gruß
    iRobot