Sich gegenseitig ausschliessende Parameter

  • hallo zusammen,


    ich möchte eine routine schreiben, in der sich zwei parameter gegenseitig ausschliessen. Soweit so gut.


    PROC Routine1(\ num param0 | num param1)
    <SMT>
    ENDPROC


    Ein der parameter soll aber beim Aufruf mit ProcCall unbedingt angegeben werden. Wie z.B. bei ConfJ\On.


    Bei meiner Routine steht allerdings nur Routine1;
    ich kann zwar einen der parameter aufrufen, aber von anfang an ist keiner zu sehen.
    gibt es da eine möglichkeit ???

  • ANZEIGE
  • Es geht um einen Greifer der an einer Position geöffnet bzw geschlossen werden soll.


    Also PROC Greifer(\switch Auf | switch Zu)
    blabla...
    ENDPROC

  • Hi,


    meines Erachtens musst Du das in der MMC.CFG parametrieren.


    Lade mal den folgenden Inhalt zu den Systemparametern hinzu.



    Zum einen wird hier angeben, das der erste Parameter der Greifer-Routine erforderlich ist und dass in der MMC-Instruktionsliste die Instruktionen zum Greifer öffnen bzw. schließen direkt angezeigt werden.


    Alternativ kannst Du die instruktion noch als hidden deklarieren, so dass diese in Deiner Instruktionsliste nicht mehr auftaucht


    z.B.

    Code
    name Greifer  -default_struct 1 - hidden


    Trotzdem solltest Du innerhalb der Routine mit der Funktion "Present" überprüfen ob mindestens einer der erforderlichen Parameter vorhanden ist.


    Gruß
    Micky

    Probleme kann man niemals mit derselben Denkweise lösen, durch die sie entstanden sind. (Albert Einstein)

    Einmal editiert, zuletzt von Micky ()

  • Hallo,


    würde es nicht reichen wenn Du die Position übergeordnet über eine IF Instruktion mit Abs(pPosGreifer.trans.(X,Y,Z) abfragst,
    und dann je nach Position den Zustand setzt!?


    Oder habe ich Dich grundsätzlich falsch verstanden?


    Gruß tnjsk4

    Keine Brille ist so stark um die Welt mit meinen Augen zu sehen!

    Einmal editiert, zuletzt von tnjsk4 ()

  • Hallo tnysk4


    Ich glaube da hast Du etwas falsch verstanden. Was Micky beschrieben hat ist genau das was ich gesucht habe. Die Frage war nur ob man das auch im Quellcode schon definieren kann.


    :merci:

Hilfe und Support für ABB Roboter Programmierung, Konfiguration, Inbetriebnahme finden Sie hier im ABB Roboter Forum. ABB Rapid Programmierung ist einfach, die Roboterforum Community hilft sehr gerne.

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