Hallo, ich möchte in KRL einen Interrupt durch Betätigen der VKCP auslösen (bspw. Drücken der Taste "A"). Wie adressiere ich in KRL die VKCP?
Interrupt durch Betätigung der VKCP auslösen
- Tassilo
- Erledigt
-
-
Hallo
was für eine Steuerung hast du? Ich denke mal KRC2.
was genau willst du machen?
Gruß Loipe
-
Zitat
was für eine Steuerung hast du? Ich denke mal KRC2.
Ja, genau.Zitatwas 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.Zitatund 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
ENDIFDer 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.
-
Danke!!
-
HOME Punkt bei VKRC ist nicht GLOBAL wie bei einer KRC. So wird das nur innerhalb einer Folge oder das UP funktionieren.
-
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
-
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