Mehrere Bedingungen, Fehlermeldung "Operand oder Ausdruck erwartet"

  • Guten Morgen,
    kurze Info : ich bin Neuling in der Welt der Roboter, habe aber ein gutes programmiertechnisches Verständnis.
    Ich bin jetzt bei der KRL Programmierung auf eine Merkwürdigkeit gestoßen. Und zwar bekomme ich es nicht hin, sei es bei STOP WHEN PATH [...] IF [...] oder bei INTERRUPT [...] WHEN [...] zwei Bedingungen abzufragen. WorkVisual sagt alles okay, aber am Panel lässt sich die Datei nicht anwählen "Operand oder Ausdruck erwartet..".
    Wer kann mir sagen, was ich hier falsch mache?

    Code
    INTERRUPT DECL 10 WHEN ((DI_MorOutDAST10==TRUE) AND (DI_MorOutDAST20==TRUE)) DO STOP_ROB()


    Danke!

  • Schritt für Schritt zum Roboterprofi!
  • Code
    $CYCFLAG[10] = DI_MorOutDAST10 AND DI_MorOutDAST20


    Code
    INTERRUPT DECL 10 WHEN $CYCFLAG[10] DO STOP_ROB()


    logisch verknüpfen geht bei der Interrupt deklarierung nicht.
    das kannst du über ein zyklisches Flag machen.


    Gruß Loipe

  • Code
    $CYCFLAG[10] = DI_MorOutDAST10 AND DI_MorOutDAST20


    Code
    INTERRUPT DECL 10 WHEN $CYCFLAG[10] DO STOP_ROB()


    logisch verknüpfen geht bei der Interrupt deklarierung nicht.
    das kannst du über ein zyklisches Flag machen.


    Gruß Loipe


    Gilt dann vermutlich auch für STOP WHEN PATH? Laut Doku sollte in beiden Fällen "eine einfache logische Verknüpfung: NOT, OR, AND
    oder EXOR" möglich sein!?


    Und wo deklariere ich dieses Flag am besten? In der main, wo ich auch den Interrupt deklariere?

  • Ich weiß jetzt nicht wirklich was du mit "Stop when Path" meinst.


    Cycflag kannst beschreiben wie und wann du willst.
    Deklariert ist das schon einfach verwenden. Kannst auch im laufen die bedingung einfach ändern die den interrupt auslöst. Oder mal Cycflag[10]=true zum deaktivieren

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