Mit externen Signalen die cell.scr neu starten

  • Hallo,


    ich bin es noch ein weiteres mal. Mal wieder mit einer (kleinen) Frage zu KRL. Gibt es einen Befehl mit dem ich, egal wieviele Unterprogramme ich von der cell.src LOOP entfernt bin sofort in den INIT Schritt selbiger springen kann?


    Hintergrund dazu ist, dass die Anlage hier bei z.B. nach einem Not-Halt nicht einfach da weitermachen soll, wo sie aufgehört hat, sondern stattdesses erst in den Ursprungszustand zurückversetzt werden soll.


    Alternativ wäre auch möglich dass per Not-Halt einfach das komplette Programm zurückgesetzt wird, und wieder neu gestartet werden muss. Ich fummle gerade an einer Lösung mit Interrupts, Returns und IF Abfragen rum, aber mir scheint das komplizierter als es sein müsste.


    Wie immer gilt mein Dank denen, die sich die Zeit genommen haben das hier zu lesen und ich wünsche allen eine erfolgreiche Woche, ist ja gerade erst Montag.... Keep calm and robot.:)


    Meine KSS Version ist 8.5.4.

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


    Über Submitinterpreter wäre es möglich,

    über CWRITE-Kommandos Cell-Programm zu Stoppen, Zurückzusetzen, Abwählen, Anwählen (Start nicht, dieser am Panel oder über aut.ext.Signal).

    Kannst es so relativ einfach und vor allem Flexibel (Bedingungen) machen.


    Für Reset würde Befehl so aussehen:

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

    Infos dazu sollten schon in diversen Posts im Forum vorhanden sein.

    Wichtig ist sauberer Aufbau über Schrittkette mit Abfragen des Status.( Prellen von CWRITE-Kommandos verhindern)


    Interrupt wäre sicher auch möglich, müsstest aber schauen, dass Verschachtelungstiefe stimmt bei Resume.


    Gruss SJX

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

  • Wenn Du den Befehl mehrfach in kurzer Zeit hintereinander aufrufst, was ja durch die zyklische Abarbeitung der sps.sub ja durchaus passieren kann.

    Vergleichbar wenn ein Signal in kurz Zeit mehrfach seinen Zustand ändert.

    Folge davon wäre unter Umständen das du Dir dein System so belastest das es auf keine Bedienung mehr anspricht.


    Also Vorsicht ist geboten!


    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!

  • Ah alles klar, gut das kann ich verhindern. GIbt es eine Doku zu diesem CWRITE, denn ich finde finde keine Deklaration innerhalb der KUKA Dateien, was bei anderen Kommandos wie z.B. BAS ja der Fall ist. zu CWRITE finde ich nur die Aufrufe, bzw. den einen Aufruf der Default in der SPS.sub steht.

  • Da gibt es eine seperate Doku zu CREAD/CWRITE, gib mal eine PN mit E-Mail. :zwink:

    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