Automatik Extern. Programm anhalten, zurücksetzen und erneut starten

  • Hallo. Habe eine Frage zur Automatik Extern Funktion.
    Wie in einem vorherigen Beitrag geschildert hat mein Roboter oft lange Wartezeiten. In dieser Zeit möchte ich das Programm stoppen, Antriebe ausschalten und Lüfter ausschalten.


    Wie löse ich das nun mit der AutoExt-Funktion?


    Ich würde mein Programm per Hand (KCP) laden und dann folgendes von der SPS über die definierten I/Os kommunizieren


    Motoren ein pulsen
    Warten auf Rückmeldung $PERY_RDY
    Fehler quittieren pulsen
    Warten, dass kein Fehler mehr anliegt $STOPMESS
    Start pulsen


    ENDLOSSCHLEIFE
    Roboter arbeitet



    Wenn er nun längere Zeit nichts zu tun hat möchte ich von der SPS das Programm stoppen lassen und Antriebe/Lüfter ausschalten und dann auch bei Bedarf wieder starten.


    Wie kann ich das lösen? Mit der HALT Funktion? Aber damit kann ich nicht wieder von Beginn starten oder? Der Programmzeiger müsste doch quasi wieder an den Programmanfang odeR?
    Antriebe aus ist doch einfach ANTEIN=0 von der SPS oder?


    Achja, meine Lüfter hängen mittlerweile an einem Schütz, welches ich per SPS schalten kann. Ist also das kleinste aller Probleme :)


    Dank und Gruß
    TOM

  • Schritt für Schritt zum Roboterprofi!
  • Mit dem Start-Signal kannst Du ihn von beliebiger Stelle starten. Zum Stoppen verzweigst Du in der Endlosschleife einfach mit einem beliebigen Signal in eine Unterroutine, an der er sich selbst anhält (halt). Dadurch ist sichergestellt, dass er nur dann anhält, wenn er auch anhalten darf. Warum willst Du den Programmzeiger zurücksetzen?


    Grüße,
    Michael

  • Guten Morgen,


    Danke, soweit habe ich das verstanden. Meine SPS weiß dass der Roboter nichts mehr zu tun hat und würde dann so das Programm stoppen (EINGANGSSINGNAL => ENDLOSSCHLEIFE BEENDEN => HALT)
    Hintergrund ist wiegesagt dass ich auch die Antriebe Ausschalten kann und die Lüfter stoppen kann. => Ich möchte Strom sparen , solange der Roboter nichts tut.
    Wenn er 1 Stunde später wieder Arbeit bekommt müsste Ihn die SPS nun wieder starten. Dafür muss doch der Programmzeiger wieder an den Anfang oder? Weil von HALT komme ich ja nicht wieder zurück in meine Endlosschleife.


    Gruß
    Tom

  • Warum denn nicht? Innerhalb der Endlosschleife kannst Du doch mit IF abfragen, ob das "Stop"-Signal an ist, und dann auf den Halt verzweigen. Vor dem Selbsthalt kannst Du der SPS noch mitteilen, dass Du jetzt angekommen bist, anschließend bleibt der Programmzeiger auf der Anweisung nach dem Halt stehen. Von da aus geht es über endif wieder zurück in die Schleife.


    Grüße,
    Michael

  • Ah ok... so einfach geht das....
    Ich habe den HALT Befehl noch nie richtig getestet. Ich wusste nicht dass man ab da einfach wieder starten kann....
    Für Antriebe aus muss ja man ja einfach den entsprechenden Eingang auf LOW setzen oder?

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