Interrupt durch Betätigung der VKCP auslösen

  • Schritt für Schritt zum Roboterprofi!
  • Zitat

    was für eine Steuerung hast du? Ich denke mal KRC2.


    Ja, genau.


    Zitat

    was genau willst du machen?


    Eine kurze Interruptroutine schreiben, die mir bei Betätigung der VKCP den HOME-Punkt auf die Momentanposition umsetzt.

  • Du schreibst VKCP ist aber keine VKRC?


    und willt du das in Hand machen oder in AUTO? wenn in Auto halte ichs für nicht sehr sicher ausser du überascht mich mit einer guten erklärung.

  • Zitat

    Du schreibst VKCP ist aber keine VKRC?


    ist eine VKRC2.



    Zitat

    und willt du das in Hand machen oder in AUTO? wenn in Auto halte ichs für nicht sehr sicher ausser du überascht mich mit einer guten erklärung.


    In Hand. Also es geht mir um das Versetzen des HOME-Punktes, wenn ich im Handmodus ein zu bearbeitendes Werkstück anfahre.

  • Hallo Tassilo,
    mit der Funktion IS_KEY_PRESSED(i) lässt sich herausfinden, ob eine bestimmte Taste am KCP gedrückt ist oder nicht (Funktion returniert TRUE oder FALSE). Welche Taste sich hinter welchem i versteckt weiß ich an der KRC2 leider nicht auswendig.
    Im sps.sub kannst du dir dann eine $FLAG oder einen beliebige andere boolsche Variable setzen, wenn die gewünschte Taste gedrückt wird.


    IF (IS_KEY_PRESSED(i)==TRUE) THEN
    $FLAG[1]=TRUE
    ELSE
    $FLAG[1]=FALSE
    ENDIF


    Der Interrupt in deinem Programm wird mittels
    INTERRUPT DECL Priorität WHEN $FLAG[1]==TRUE DO Interruptroutine()
    deklariert und mittels INTERRUPT ON Priorität bzw. INTERRUPT OFF Priorität aktiv und inaktiv geschalten.
    Dazu mehr in den Doku´s.



    Bin mir jedoch nicht sicher ob dies auf VKRC Steuerungen auch so möglich ist.
    Hoffe ich konnte dir weiterhelfen.


    LG dax.

    Always look on the bright side of life!<br /><br />Verlass dich nicht auf andere. Mach deine eigenen Fehler! - Manfred Hinrich

  • Hallo Tassilo,
    Sorry, aber über einen Buchstaben auf der Tastatur direkt eine Position "umzuteachen", das macht man als Roboterprogrammierer nicht. Ist definitiv keine bewusste Handlung und führt irgendwann zu Crash.
    Du kannst auch nicht alle Fälle abfangen, dass es jemand nicht versehentlich passiert, mal ein "a" zu Drücken, weil er z.B. in "Variablen-Einzeln-Fenster" eine Variable mit Buchstaben "A" prüfen will, wenn Interrupt dummerweise freigegeben.
    Besserer Ansatz wäre als Beispiel, dass Du ein Meldungsdialog aus der sps.sub her aufrufst, und über eine Softkeytaste z.B. mit "TouchUp" beschrieben, die Korrektur bewusst ausgelöst werden muss mit Abbruchmöglichkeit. Wenn Userkeys nicht belegt, nutz die mit Funktion IS_KEY_Pressed(i) zum Aufruf des Dialoges.


    Gruss SJX

    Manche Maenner bemuehen sich lebenslang, das Wesen einer Frau zu verstehen. Andere befassen sich mit weniger schwierigen Dingen z.B. der Relativitaetstheorie.

  • SJX, herzlichen Dank. Mir geht es erst mal um einen proof of principle, also daß das Umteachen erstmal überhaupt läuft. Deine Vorschläge sind nochmal deutlich konkreter (ich bin noch Neuling in der Roboterprogrammierung), werde dem so nachgehen.
    Gruß :)
    Tassilo

Erstelle ein Benutzerkonto oder melde dich an um zu kommentieren

Du musst ein Benutzerkonto haben um einen Kommentar hinterlassen zu können

Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Geht einfach!
Neues Benutzerkonto erstellen
Anmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden