Interruptroutine: Umschaltung von Hand in Automatik

  • Liebe Kuka Community,


    ich versuche mich mit der Interrupt-Programmierung:


    Die Idee: "Sollte der Roboter vom Hand zu Auto umgeschaltet werden UND war die letzte Mode schon Auto UND steht der Roboter außer Bahn, wird der Signal bFromHandToAuto auf (True) gesetzt und wird ein Interruptprogramm aufgerufen ,womit der Roboter nicht weiter fahren darf."


    Im HauptProg. habe ich Interrupt deklariert.


    ;FOLD Interruptdeklaration

    GLOBAL INTERRUPT DECL 7 WHEN bFromHandToAuto DO IR_HAND_AUTO()

    ;ENDFOLD (Interruptdeklaration)

    .

    .



    In einem anderen .Src Program

    GLOBAL DEF IR_HAND_AUTO()

    INTERRUPT OFF 7

    BRAKE

    bFromHandToAuto=FALSE

    CheckGripper()

    INTERRUPT ON 7

    END


    jetzt bFromHandToAuto=True aber das Interruptprogramm wird nicht aufgerufen und natürlich Robi fährt weiter:denk:.


    Danke im Voraus für uere Ideen//Unterstützung !


    Otto

  • Schritt für Schritt zum Roboterprofi!
  • Hallo Otto,

    Du musst den Interrupt nach dem deklarieren auch noch einschalten (Interrupt on 7).


    Auserdem wertet der Interrupt nur eine Flanke aus. Also wenn das Signal schon beim einschalten auf true ist, dann wird er nicht auslösen.


    Grüße

  • Moin,

    ich gebe zu bedenken das Interrupts nur abgarbeitet werden können wenn auch eine Programmabarbeitung erfolgt.

    Demnach wäre ein Interrupt hier ein deinem Hauptprogramm fehl am Platz, wird dein Programm nicht abgarbeitet bei deinem Wechsel wird der Interrupt dementsprechend nicht reagieren können.


    Besser Lösung wäre in der sps.sub zu suchen, hier könnte man rein theoretisch auch auf einen Interrup verzichten da die sps.sub ja ständig im Hintergrund mit läuft.


    Nur so ein Gedanke.


    Gruß

    Wer nichts macht, macht keine Fehler!

    Wer keine Fehler macht, kann nichts daraus lernen!

    Wer nichts lernen kann, kann sich nicht weiterentwickeln!

    Wer sich nicht entwickelt, geht unter!

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