Beiträge von Z750

    Ich hatte selbst noch nicht das Vergnügen, aber ich vermute das Selbe was dir jetzt bevorsteht...


    - Umdrehungszähler aktualisieren

    - Kommunikation einrichten

    - IOs einrichten.

    - Werkzeug einrichten (TCP vermessen / Lastdaten)

    - Werkobjekt einrichten

    - optionale Robotware einrichten

    - Programm schreiben


    Und eben alles was der Kunde sonst noch so haben möchte und nicht selbst kann.

    zum Thema Wobj0, ich habe in meiner Simulation ein '' Wobj_Aufnahme '' erstellt, das Synchronisiere ich ja auch mit dem Roboter also Quasi übertrage ich alles was ich bereits in der Simulation habe auf den Roboter. Kann ich dann ganz normal das '' Wobj_Aufnahme '' mit 3 Punkte am realen Roboter anfahren und überschreiben ? Dann wandern die Punkte der Simulation perfekt ins Reale ?

    Richtig. Vor dem Einmessen des Werkobjekts muss natürlich dein Tool vermessen sein.


    In Robotstudio sind die meisten Dokus schon mit dabei (siehe Bild). Hier auch mal unter "Zusätzliche Ressourcen" stöbern.


    Hallo VKE,
    standardmäßig ist "SingArea \Off" d.h. er wird der Singularität nicht ausweichen.

    du hast in deinem Fall 3 Optionen:

    1. Du aktivierst "SingArea \Wrist" und lebst mit der Abweichung/ Änderung am Kabelschlauch.
    2. Du aktivierst "SingArea \Off" (Standard) und lebst mit der Abweichung in der TCP-Geschwindigkeit.

    3. Du veränderst die Achspositionen sodass er nicht durch die Singularität muss.


    Verwendest du in deinem Programm "ConfL \Off" oder "ConfJ \Off"?

    Gruß

    Z

    Hallo Michael,

    versuch mal deinen Interrupt als "single" zu deklarieren und ihn in der Trap dann wieder zu starten. Als single deklarierte Timer-Interrupts können bis auf 0,01s runter. Ist auch in dem oben erwähnten Beispiel von TestSignRead so umgesetzt.



    Gruß

    Z

    Hallo Michael,zur Bewegungsüberwachung findet sich in der Doku folgendes:

    Einschränkungen
    • Die Bewegungsüberwachung ist nie aktiviert für externe Achsen oder beim Betrieb einer oder mehrerer Achsen im unabhängigen Achsenmodus.[...]



    Funktionen um Drehmomente zu erfassen sind z.B.

    GetJointData

    GetMotorTorque
    TestSignRead (In der Doku findet sich hierzu auch ein schönes Beispiel)


    Bin mir aber gerade nicht sicher ab welcher RW diese zu finden sind.


    Gruß

    Z

    Hallo,

    ist meines Wissens nach wie bei der DX200 mit shift+area.

    Ist die zweite Sprache evtl. nicht installiert? Hatten wir auch schon mal. Yaskawa hat uns dann den Parameter zum freischalte geschickt.


    Gruß

    Z

    Morgen,

    das geht mit der UIMessageBox so leider nicht.


    Du könntest es evtl. so lösen:

    1. Gib deiner UIMessageBox den switch "\UIActiveSignal" und weise einen simulierten Ausgang zu. Dann weißt du wenn die MsgBox aktiv ist.

    2. Weise 2 Funktionstasten einen Simulierten Ausgang zu.

    3. Cross Connection mit AND Verknüpfung der beiden simulierten Ausgänge auf z.B. do_axis_minus.


    Ist, denke ich, mit entsprechender Beschreibung in der MsgBox für jeden Benutzer verständlich.

    Code
    CONST string my_message{3}:= ["Achse mit Funktionstasten bewegen","Taste 1: X+", "Taste 2: X-"];
    CONST string my_buttons{2}:=["OK","Skip"];
    
    answer:= UIMessageBox (
    \Header:="UIMessageBox Header"
    \MsgArray:=my_message
    \BtnArray:=my_buttons
    \Icon:=iconInfo);
    \UIActiveSignal:=doSimMoveAxis


    Gruß Z

    Die Variante von Programmiersklave ist da vermutlich noch die eleganteste.
    Egal wie, es macht den Code leider unnötig unübersichtlich.

    Es gibt nur die Kopfgesteuerte Version von While.


    WHILE reg1 < reg2 DO

    ...

    ENDWHILE


    Fußgesteuerte Schleifen muss man sich z.B. mit GoTo (<X) selber basteln.

    Guten Morgen,

    das Flexpendant kann maximal 11 Zeilen. Für mehr Infos musst du z.B. in ein Textfile oder Array mitloggen.


    edit: Im Meldungsfenster von Robotstudio kannst du deutlich mehr sehen.


    Gruß Z