Beiträge von Hermann

    Hallole,


    - Brake unterbricht nur programmierte Bewegungen (keine Handbewegungen).
    - Bewegungen dürfen im SPS.SUB nicht programmiert werden.
    -> Also ist Brake auch im SPS.SUB nicht erlaubt (erscheint mir jedenfalls logisch).
    und zwar unabhängig davon, ob in einem externen Programm oder direkt im
    SPS.SUB.


    Auf diese Art kann man das nicht lösen. Evtl. gibt es eine Variable, die den
    Hand-Override setzt, diesen dann auf 0 setzen. Kenne die Variable aber
    gerade nicht auswendig, bzw. weiss nicht, ob es die überhaupt gibt.


    Tschau, Hermann

    Hallole,
    nur ein kleiner Hinweis, als Ergänzung:


    Die Sache mit $tool und $base kann man sich sparen, wenn man die
    Achswinkel per $axis_act einliest. $tool und $base haben nur Auswirkung
    auf die Raumkoordinaten $pos_act.


    Und tschüss, Hermann

    Hallole,
    die Sache mit der Netzwerkverbindung sollte eigentlich klappen.
    Mache ich seit Jahren so.
    Warum der Ping nicht funktioniert kann ich mir im Moment nicht erklären.


    Vielleicht sind die Resourceneinstellungen (IRQ und Speicheradresse, die
    variieren sogar je nach Steuerungsstand) der Netzwerkkarte nicht korrekt.
    Evtl. mal beim Booten der Steuerung auf diesbezügliche Meldungen achten.


    CrossKabel vom PC direkt zu KRC sollte klappen. Der Anschluss im Schaltschrank
    ist von hinten direkt auf der MFC-Karte zugänglich. Wenn man dort direkt
    einstecken möchte muss man zuerst die 'Verlängerung' zum KCP ausstecken.


    Wenn das mit dem Netzwerk dann funktioniert mache ich es normalerweise so:
    - Laufwerk D freigeben
    - Auf Laufwerk D einen Ordner D:\Sicherung erstellen
    - An der Eingabeaufforderung (oder unter 'Start' 'Ausführen' in der Windows-Start
    Leiste ausführen:
    Subst A: D:\sicherung
    - Sicherung der Daten normale Weise. Dabei landet die Sicherung auf D:\Sicherung
    - Kopieren der Daten auf den Laptop
    - An der Eingabeaufforderung (oder unter 'Start' 'Ausführen' in der Windows-Start
    Leiste ausführen:
    Subst A: /d


    Tschau,
    Hermann

    Hello,


    it's not normal that the controller crashes with shared folders. I work with
    shared folders over the net all time long, because i also have problems with the
    plastic-keyboard (uahh). Is it possible that you changed the settings of the
    'VX-works shared memory network card' ? This causes a crash of the robot.
    With resetting to the original values the robot should work again normal.


    But there is another possibility to work more comfortable at the controller direct:
    connect a standard keyboard and mouse to the controller (open the cabinet door
    and plug them into the standard connectors).


    No you can't edit programs while robot is in Auto-Extern (with the KUKA-standard
    editor). You have to switch to T1 or T2.
    But you can edit a program with an external editor (notepad or something else)
    and use the above described method to compile the changed file.


    Greetings, Hermann

    Hallo,
    ja, das könnte sein.


    Aber die Meldungen quittiert man meistens ziemlich schnell weg (bei jedem Hochlauf 10 Meldungen, wer liest die denn schon alle durch?). Sollte man also nicht immer so machen!
    Vielleicht tauchen die dann aber auch wieder im LOG auf?


    Tschau, Hermann

    Hallole,


    Beschreibung zur VKRC-Syntax habe ich keine,


    Aber das mit dem Loop Endloop in zwei Folds klappt ohne Probleme.
    Man kann auch ein Fold ohne Endfold eintragen, oder mehr endfolds als folds.


    Da kommen dann in der Ansicht zwar teilweise komische Sachen raus.


    Das Programm an sich funktioniert aber. Ob's sinnvoll ist sei mal dahingestellt.


    Tschau, Hermann

    Hallole,
    der Eintrag in der IOSYS.ini muss schon mal da sein. Sonst kann's gar nicht
    klappen.


    Aber Garantie für das Laden des Treibers ist das nicht, wenn (wie
    bei Andreas geschehen) der Treiber (mfc.o glaube ich) nicht im entsprechenden
    Verzeichnis liegt, dann wird er auch nicht geladen.
    Wenn man Glück hat, dann gibt es irgend eine Log-Datei, in der man den Fehler
    finden kann.


    Ansonsten muss man sich mit Telnet auf VX-Works-Ebene einloggen und mit
    kryptischen Befehlen die geladenen Module durchsuchen. Aber dazu habe ich
    auch nur gaaanz rudimentäre Kenntnisse, und dokumässig habe ich dazu auch
    noch nicht viel gesehen.


    Tschau, Hermann

    Hallole,
    nein Doku's dazu hab ich auch nicht. Hab ich seinerzeit selber rausgefunden.


    Ist eigentlich ganz einfach: man muss sich nur mal die Variable (Anzeige - Variable - einzlen) anzeigen lassen und mit Cursor runter/hoch die einzelnen Strukturelemente anzeigen lassen.


    Gruss Hermann

    Naja.
    als Notlösung fällt mir da folgendes ein (hab ich schon mal so gemacht):


    - Ein paar Ausgänge des Roboters mit jeweils einem Eingang verbinden. Diese für den Automatik Extern-Betrieb konfigurieren.
    - Im SPS.SUB die Ansteuerung der Automatik-Extern Signale realisieren (was ja normalerweise von einer SPS erledigt weden sollte).
    - Roboter in Betriebsart 'Automatik Extern' betreiben.


    Tschau, Hermann

    Hallole,
    so mal ganz schnell, was mir noch an Neuheiten in der V5.xx einfällt:


    Die Folds haben sich mal wieder geändert.
    Die bisher immer gleich mitgelieferten Softwarepakete (GripperTech, Arctech..) fehlen, wenn man sie nicht mitbestellt.
    Es gibt jetzt offiziell ein Expert-Tech zu kaufen, das man auch braucht, wenn man die Standardbefehle (Lin P10 ohne Fold) nachteachen möchte :huh:
    Habe gehört, dass die Gerätetreiber (speziell DeviceNet) verbessert wurden.
    Das CrossCommExe-Interface für externe Programme gibt es nicht mehr.


    Das war's mal vorerst, sonst fällt mir gerade nichts mehr dazu ein.


    Tschüss, Hermann

    Hallole,
    da scheint mir zwischen den beiden Kommas etwas zu fehlen.


    Zitat aus iosys.ini:


    ; Form 1:
    ; {token}{num}={byte},{res},{type}[,CAL{factor}]
    ;
    ; {token} ANIN or ANOUT
    ; {num} number of the analog channel (1..i)
    ; {byte} byte offset over all peripheral devices (0..m)
    ; Offset starts with 0 at the first device and
    ; ends with m at the end of the last device.
    ; {res} resolution of the analog value (number of bits)
    ; {type} type of analog value
    ; 0 : right justified without sign
    ; 1 : right justified with sign
    ; 2 : left justified without sign
    ; 3 : left justified with sign
    ; {factor} maximum analog value, decimal without prefix,
    ; hexadec. with prefix 0x or octal with prefix 0
    ; "CAL 0" or no entry sets factor to its maximum


    Da sollte dann doch so etwas wie
    ANIN1=4,12,1 stehen.


    Ich vermute, dass bei ,, eine Null angenommen wird.


    Tschau,
    Hermann

    Hallole,
    Office Lite reagiert da wie der echte Roboter auch:
    Programmstop und Fehlermeldung:


    - Arbeitsraumfehler bzw.
    - irgendwas mit Endschalter Achse X


    Tschau,
    Hermann

    burlibua,
    das was ich damals angefangen hatte ist kein Editor, sondern ein Syntaxchecker.
    In ähnlicher Art, wie der von ABB.
    Man lädt den Quelltext und er spuckt die Fehler aus.


    Wie schon gesagt, wurde nicht mehr so richtig verfolgt. Aktueller Stand (soweit ich mich noch erinnern kann):
    Es werden zwar viel mehr Fehler erkannt als vom ABB-Syntax-Checker, aber die Fehlermeldungen sind noch zu unspezifisch (es gibt keinen Hinweis, was denn nun wirklich fehlt, oder falsch ist)
    Die EIO.cfg wird mit ausgewertet, so dass falsch geschriebene Ein-/Ausgänge erkannt werden.
    Neuere Befehle (Movebefehl mit Trigger ohne Triggtada usw.) sind nicht implementiert.


    Der Check läuft relativ langsam...


    Und tschüss
    Hermann

    Hallole,
    Ich habe das ganze schon mehrmals in beiden Varianten verwendet, und bisher nichts entdeckt, das nicht funktioniert.
    Auch wenn als zweiter Frame ein geteachter Punkt verwendet wurde (bei dem ich dann von einer von 0 verschiedenen Orientierung ausgehe) ??


    Was da nicht funktionieren soll ist mir also unklar, vielleicht wissen die bei KUKA das auch nicht so genau?


    Tschau,
    Hermann

    Hallole,
    in der Configmon.ini ein bisschen rumwühlen und zum Beispiel sowas eintragen:


    [Group1]
    GroupTitle=TESTS
    NmbDataCols=4
    User=10
    Substitute==;=;=;=;=;
    MaxColWidths=2800;500;
    ColTitles=Bezeichnung;Wert;
    Item_0=TMP;-T;Oelmax;Oelmax;
    Item_1=TMP;-T;Typnummer;akt_pnr_aktiv;


    In jeder Zeile Item_x wird der vorletzte Text angezeigt, der letzte Text ist der Variablenname.


    Tschau,
    Hermann