Softkey anzapfen

  • strawswuitsche,


    wie kann man die Softkeys "QUIT" bzw. "QUIT ALLES" anzapfen, so dass sie z.B. im SPS.SUB abgefragt werden können und dort bestimmte Aktionen auslösen?



    apriori schon mal ein :merci:



    Klaus

    Woher soll ich wissen was ich denke bevor ich höre was ich sage?

  • Schritt für Schritt zum Roboterprofi!
  • sdawstwuite, :biggrins:
    ich denke das kann dir weiter helfen.


    $CONF_MESS
    Durch Setzen dieses Eingangs kann der Leitrechner aufgetretene Fehlermeldungen selbst
    löschen (quittieren).
    Es wird nur die ansteigende Flanke des Signals ausgewertet.
    Ein Quittieren der Fehlermeldungen ist selbstverständlich nur dann möglich, wenn die
    Störungsursache beseitigt wurde.
    STOPMESS
    Dieser Ausgang wird von der Robotersteuerung gesetzt, um dem Leitrechner das Auftreten
    einer Meldung anzuzeigen, die das Anhalten des Roboters erforderlich machte.
    (z.B. NOT--AUS, Fahrfreigabe, Bedienerschutz, Sollgeschwindigkeit usw.)

    "Erfahrung heißt gar nichts. Man kann eine Sache auch 35 Jahre falsch machen."

    Kurt Tucholsky

    Wenn die Macht der Liebe die Liebe zur Macht überwindet, erst dann wird es Frieden geben

    Jimi Hendrix (1942 - 1970), US-amerikanischer Rockmusiker

  • Da gibts ne super build-in-function!


    IS_KEY_PRESSED(INT)


    Diese Funktion gibt ein TRUE zurück wenn die KCP-Taste(INT) gedrückt wird.


    40=Taste "Quitt"
    41=Taste "Alles Quitt"


    Achtung: Dies bezieht sich nicht auf das "Quitt" diese Funktion gibt immer TRUE zurück wenn die Taste am KCP(Hardware) gedrückt wird, egal welche Funktion auf dieser liegt!!!


    Desweiteren ist diese Funktion lediglich zum Hardware-Check der KCP-Tasten gedacht. Kein Support oder Gewährleistung. Sie funktioniert auch nicht im OfficeLite (da kein KCP).

  • :merci: für die Antworten.


    Megatron: dieser Roboter, für den ich das Feature brauche hat leider keinen Leitrechner. Ich habe lediglich im SPS.SUB ein paar Funktionen programmiert/erweitert die ich quittieren muss. Da ich auch keine externe Hardware-Quittiertaste habe würde ich gern den Softkey "Quit" oder "Alles Quit" zum Steuern im SPS.SUB heranziehen. Ich habe nur leider noch nicht herausgefunden welches Bit/Byte/Wort/Systemvariable sich beim Softkeytastendruck "Quit" oder "Alles Quit" derart verändert dass es zum Steuern verwendet werden kann.


    Schmidt: Ich glaube das kommt meinen Vorstellungen schon recht nahe. Ich werds mal ausprobieren. :hoff:



    Klaus


    Übrigens habe ich mal wieder vergessen anzugeben: KRC1 , V 2.3.irgendwas (ich schau nochmal genauer nach) :angel:

    Woher soll ich wissen was ich denke bevor ich höre was ich sage?

  • Hallo,


    gibt es eine Liste mit einer Zuordnung welche Taste,welche Nummer trägt?


    Gruss Rainer

    - Ehrlichkeit, die im Pfandhaus gelandet ist, wird nie mehr eingelöst. - (Thomas Middleton (1580-1627), engl. Dramatiker)

  • Welche Nr. welche Taste ist kann ich jetzt nicht aus dem Stehgreif sagen.


    Deklariere
    dir doch schnell ne Globale Int Varaiable (z.B. iKeyAct).


    Füge folgendes im Submit ein:
    DECL INT i
    ....;In den SPS-Loop
    FOR i=1 TO 200
    IF Is_Key_Pressed(i) THEN
    iKeyAct=i
    ENDIF
    ENDFOR


    In der Variablen-Anzeige lässt du nun die "iKeyAct" Variable zyklisch anzeigen (Shift+Enter), so bekommst du recht schnell raus welche Taste was ist. Übrigens es geht damit jede Taste auf dem KCP, auch die Tastatur usw...


    Viel Spass beim ausprobieren...

  • Hallo RobBert,
    geht das vielleicht in sps.sub $STOPMESS auswerten und $CONF_MESS setzen. :denk:

    "Erfahrung heißt gar nichts. Man kann eine Sache auch 35 Jahre falsch machen."

    Kurt Tucholsky

    Wenn die Macht der Liebe die Liebe zur Macht überwindet, erst dann wird es Frieden geben

    Jimi Hendrix (1942 - 1970), US-amerikanischer Rockmusiker

  • Die $CONF_MESS ist ein $IN[?].


    Eingänge können nicht aus KRL beschrieben werden...


    Möglich durch I/O Linking. Kuckt euch mal den "O2I"-Treiber im "Driver"-Verzreichnis an, bzw. in der "ioconfig.ini" das Beispiel zum O2I-Treiber.


    Mit dem kann man Ausgänge auf Eingänge mappen und somit aus KRL über Ausgänge die System-Eingänge beschreiben. So sollte das Problem auch lösbar sein.
    Hinweis: Der O2I-Treiber ist eine Entwicklungstreiber, keine Support, keine Gewährleistung...

  • :sorry: voll daneben, nicht meine woche. :binkrank:

    "Erfahrung heißt gar nichts. Man kann eine Sache auch 35 Jahre falsch machen."

    Kurt Tucholsky

    Wenn die Macht der Liebe die Liebe zur Macht überwindet, erst dann wird es Frieden geben

    Jimi Hendrix (1942 - 1970), US-amerikanischer Rockmusiker

  • Hallo miteinander,


    die Versionsnummer der Software meines kleinen orangen Freundes ist V2.3.34 SP07.
    Ist die Funktion is_key_pressed(I) damit anwendbar? Ich kann es momentan nicht testen; ich im Büro mein kleiner oranger Freund weit weg in der Maschinenhalle.


    Aber ich stelle mir das bei einem KCP etwa auch so vor wie bei einem TouchPanel oder bei einem OP, bei denen man über die Konfigurationssoftware den Tasten irgendwelche Bits oder Nummer zuweisen kann, die ich in der SPS über das Steuerungsprogramm abfragen kann. :ks:


    Von daher wäre so eine Liste gar nicht ganz schlecht.



    MFG



    Klaus

    Woher soll ich wissen was ich denke bevor ich höre was ich sage?

  • Hallo,


    mit Schmidt's SPS Ansicht hauts ganz ordentlich hin --> Vielen Dank! an den Godfather of


    KRC Editor :ylsuper: :ylsuper:


    kennst Du noch mehr von diesen internen Funktionen?


    Gruss Rainer

    - Ehrlichkeit, die im Pfandhaus gelandet ist, wird nie mehr eingelöst. - (Thomas Middleton (1580-1627), engl. Dramatiker)

  • Vielen Dank fuer den feinen Link,


    so lassen sich User-Actionen besser auswerten.


    Der naechste Schritt ist nun die Liste der Key-Constanten zu ermitteln. Ich habe leider nur die Office-Lite Version zur Verfuegung. :(


    Gruss,


    Bernd

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