AutoReset

  • Hallo erstmal,


    wie heißt die Funktion für einen automatischen Programmreset? Und wäre es sinnvoll davor noch ein HALT zusetzen, oder ist das da schon mit inbegriffen?Fährt der Robbi nach reset automatisch wieder los, oder bleibt der vor der INI stehn, so wie wenn man das Programm frisch anwählt? (letzteres hätte ich gerne :) )


    Gruß

    Ich würde mich gern geistig mit dir duellieren, aber ich sehe, du bist unbewaffnet.

  • Schritt für Schritt zum Roboterprofi!
  • CWRITE($CMD,STAT,MODE,"RESET") --> Reset des Programmes


    CWRITE($CMD,STAT,MODE,"CANCEL") --> Abwählen des Programmes


    Nach einem Reset springt der Robi in die INI Zeile. Ob er von da"automatisch"
    wieder los fährt kommt drauf an wie du deine Programme startest. Wenn du es
    über das cell machst benötigt man eine SAK-Fahrt.

  • Hallo,


    wie schaffe ich es mit diesen Funktionen


    CWRITE($CMD,STAT,MODE,"RESET") --> Reset des Programmes


    CWRITE($CMD,STAT,MODE,"CANCEL") --> Abwählen des Programmes


    folgende Aufgabe zu lösen!


    Ich möchte am Ende eines Programms einen Dialog aufrufen, und über zwei Softkeys die Auswahl zwischen RESET oder CANCEL haben, wobei die Reset u. Cancel Aktionen für das
    übergeordnete und nicht das Global lokale Unterprogamm gelten soll! könnt ihr mich verstehen???


    Dank für die mühen im voraus!


    Gruss Rainer

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

  • Hallo...


    Ich bin mir nicht ganz sicher, aber ich würde so ansetzen:


    Müsste aber getestet werden, hab da im Moment nicht die Gelegenheit zu.


    Gruß ... gooselk

    Einmal editiert, zuletzt von gooselk ()

  • fast genauso hab ich es auch versucht! hab das ganze in ein Unterprogramm gepackt und den Dialog aus dem Hauptprogramm aufgerufen! Aber dann wirkt Cancel u. Reset doch auf dieses Unterprogramm oder etwa nicht??? <--- genau das ist das Problem (es soll auf das Hauptprogramm wirken)


    Gruss Rainer

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

  • Oder du packst es in eine Funktion (ins Hauptprogramm) und lässt die Funktion durch einen Interrupt aufrufen. Wenn der Interrupt abgearbeitet wird, steht der Zeiger im Hauptprogramm und CANCEL sollte auch auf dieses wirken. (ohne Gewähr)


    Gruß ... gooselk

  • sollte auch gehen nur warum immer nen aktiven Interrupt haben?


    sollten wir nicht lieber schauen das wir Interrupts für wichtigere Sachen benutzen?


    also mache das mit dem SPS.Sub und des läuft sauber und frisst keine Ressourcen


  • sollte auch gehen nur warum immer nen aktiven Interrupt haben?


    sollten wir nicht lieber schauen das wir Interrupts für wichtigere Sachen benutzen?


    also mache das mit dem SPS.Sub und des läuft sauber und frisst keine Ressourcen


    Das ist ein Argument, das ich aus dem Stehgreif nicht zu entkräften weiss :mrgreen:
    Aber wird denn, wenn man es in der SPS.sub macht, immer das Hauptprogramm abgewählt oder auch nur wieder das Programm, in dem der Zeiger steht? Im ersten Fall, ist das natürlich die elegantere Lösung, im Zweiten hat er nicht wirklich was gewonnen.


    Gruß ... gooselk

  • es wird alles abgewählt sonst wäre es wirklich net so schlau :icon_rofl:


    Probiert es einfach mal im Sub das eröffnet euch viele Möglichkeiten.
    es wählt net nur euer eigentliches Programm ab sondern auch Hilfsroutinen usw.
    da müsstet ihr wenn ihr so wollt den Interrupt auch deklarieren.
    die übergeordnete Steuerung kann über nen Eingang das Programm abwählen oder zurücksetzen.
    im Roboter Programm selber kann man abwählen und auch aus dem SPS.Sub


    Gruß Loipe

  • Hallo,


    hab's im .sub probiert --> haut hin! Danke


    hab folgendes in der KUKA Doku gesehen:



    CWRITE($CMD,STAT,MODE,"CANCEL 1")


    CWRITE($CMD,STAT,MODE,"STOP 1")



    was macht diese "1"???


    Gruss Rainer

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

  • Hallo Porsche.....


    1 steht fuer Robotinterpreter
    0 steht fuer submitinterpreter


    Gruss SJX

    Manche Maenner bemuehen sich lebenslang, das Wesen einer Frau zu verstehen. Andere befassen sich mit weniger schwierigen Dingen z.B. der Relativitaetstheorie.


  • Bleibt nur zu hoffen, dass sein Betrieb die Programmierung in der SPS.sub erlaubt. Ich kenne etliche Firmen, die das verbieten.


    Jaja, die Firmen und ihre lieben Standards. :soakes: :puke:
    Wenn die "hohen Herren" meinen sie könnten besser Programmieren... :mrgreen:


    btt:
    Wenn man eine hohe Interruptzahl nimmt, geht das auch nicht auf die Leistung. Unter Umständen sogar weniger als in der SPS Sub (vermute ich mal)



  • Moin Rainer,


    ich hab dazu in der Doku nix gefunden, kannste davon evtl. bitte mal einen "Screenshot" posten...natürlich nur, wenn das alles legal ist...bin da net so bewandert, was man alles posten darf und was nicht, aber der Admin wirds schon richten :waffen100::)


    Gruß

    Ich würde mich gern geistig mit dir duellieren, aber ich sehe, du bist unbewaffnet.

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