Schrittkettenprogrammierung und Ausgänge sicher schalten

Earny

Level-1
Beiträge
422
Reaktionspunkte
38
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich hab mal eine grundsätzliche Frage zur Schrittkettenprogrammierung und zum Ein- und Ausschalten von Ausgängen.
Ich habe bisher eine lineare Schrittkette immer so aufgebaut, dass der Schritt n+1 den Schritt n löscht. Da ich die Schrittkette (meistens FUP) mit Merkern nachbilde, löscht der Schrittmerker des Schrittes n+1 den Schrittmerker des Schrittes n.
In den Ausgangszuweisungen werden die Schrittmerker dann auf die Ausgänge geschaltet. Das geschieht mit Hilfe von Zuweisungen, manchmal verodert mit weiteren Ein- und Ausschaltbedingungen der Betriebsarten Hand/Einrichten. Gelegentlich muss auch mit einem SR-Glied ein Aktor gespeichert angesteuert werden (z.B. federrückgestelltes Pneumatikventil).

Nun sagte ein Kollege, dass sei in seiner Firma nicht üblich: Es dürfte niemals ein Aktor (Ausgang) gespeichert angesteuert werden. Der Oberprogrammierer dieser Firma sieht das nicht gern und ein Kasten Bier ist dann fällig?
Diese Firma hat dann auch ein ganz anderes System der Schrittkettenprogrammierung: Die Schritte einer Schrittkette werden nacheinander, wie vom Prozess gefordert eingeschaltet, und bleiben alle eingeschaltet, bis der allerletzte Schritt die gesamte Schrittkette in einem Rutsch löscht. Natürlich sind dann Verriegelungen an den Ausgängen erforderlich, die relativ kompliziert werden können.

Die grundsätzliche Frage ist: Dürfen Ausgänge die Aktoren ansteuern, gespeichert eingeschaltet werden oder sprechen Sicherheitsüberlegungen (Not-Aus, Spannungsausfall, usw.) dagegen?

Gruß
Earny
 
Kollege? andere Firma oder die, die dir monatlich den Brötchenerwerb
ermöglicht?

wenn letzteres: warum willst du dich mit dem "Oberpragrammierer" und
"Godfather of Stepchains" anlegen? suchst du Streit?

Sicherheitsüberlegungen sprechen nicht dagegen, da

1. bei einem Not-Aus alle gefährdenden Einrichtungen sicher spannungslos
gemacht werden müssen, dazu zählt meist das Potential, welches ca. 90%
der Ausgangskarten versorgt
2. bei einem Spannungsausfall die Ausgangszustände nicht gespeichert
werden, somit nicht wiederhergestellt werden. Wichtig ist hier nur eine
funktionierende Anlaufbehandlung. (besonders bei der 200er, wie godi
feststellte: S7-200 nicht remanente Speicherbereich bei CPU stop zurücksetzen)

was dagegen sprechen könnte ist, dass es als unsauber gilt und viele
Snobs diese Meinung bis aufs Messer verteidigen.

Also: Du darfst! ...mußt dir aber wohlmöglich von manchen Leuten anhören,
dass es ihnen nicht gefällt.

.. ähnlich für ausgänge (aber die sollten sowieso nur einmal beschrieben werden :rolleyes: ... aber bei S/R sinds schon mal zwei ...)
:ROFLMAO:

und hier noch eine Diskussion zu dem Thema, an der sich der geschätzte
Kollege sps-concept beteiligt hat: Ausgänge bleiben gesetz

das mit der Kiste Bier ist eine schöne Idee! :cool:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
exotische Schrittkette

Was ich sehr exotisch finde, ist die Schrittketten auf diese Art zu programmieren-kann man das überhaupt noch als Schrittkette bezeichnen???
 
... solche Schrittketten gibt es bei uns als Alt-Lasten auch noch einige. Das ist besonders toll, wenn man etwas daran ändern möchte oder ggf. einen Parallelzweig einfügen möchte.

Aber das ist ja nicht das Thema ... Ich würde hier 4L zustimmen. Derjenige, der diesbezüglich in der jeweiligen Firma das Sagen hat, der bestimmt auch, wie es gemacht wird (ist bei uns auch so ...;)).

Gruß
LL
 
Hallo

Diese Firma hat dann auch ein ganz anderes System der Schrittkettenprogrammierung: Die Schritte einer Schrittkette werden nacheinander, wie vom Prozess gefordert eingeschaltet, und bleiben alle eingeschaltet, bis der allerletzte Schritt die gesamte Schrittkette in einem Rutsch löscht.

Solche Schrittketten finde ich zum :sm23: , wenn man diese überhaupt so bezeichnen kann.


Gelegentlich muss auch mit einem SR-Glied ein Aktor gespeichert angesteuert werden

Man muss hier einfach aufpassen, dass der Aktor in jeder Situation richtig zurückgesetzt wird.

Schlechtes Beispiel:
Code:
U #Schritt2
S #Ausgang
U #Schritt5
R #Ausgang
Besseres Beispiel: (nach meiner Meinung)
Code:
O #Schritt2
O #Schritt3
O #Schritt4
O #Schritt5
= #Ausgang
Grund: Wird die Schrittkette in Beispiel 1 (z.B. in Schritt 3) aus irgend einem Grund abgebrochen, so bleicht der Ausgang gesetzt.

Gruss Hoyt
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich denke mal dass es auf die Anwedung der Schrittkette ankommt. Ich hab manche, wo der vorige schritt gesetzt bleibt, u. U. bis zum ende der Kette, und viele wo der Folgeschritt den anstossenden rücksetzt.
Wie immer Not-Aus - Konzept muss vorhanden sein, wie so manches mal hier schon erwähnt wurde.
 
ich hab auch schon schrittketten gebaut, die einfach eine schrittnummer im format INT (selten DINT ;)) haben und diese dann für den jeweiligen schritt verglichen wird und inkrementiert ... ähnlich einem GPI (getriggertes prioritäten-inkrement)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
ist es nicht so, dass Graph 7 an irgendwelche Normen "angelehnt" ist? :confused:
Dort kann man meines Wissens nach auch gespeicherte Aktionen machen...

Meiner Meinung nach spricht nix dagegen mit Schrittketten FFs zu setzen/rücksetzen!
Das Ganze hängt doch (wie eigentlich immer) von einem schlüssigen Konzept ab...
 
Hallo,
wenn ich das richtig verstanden habe, brauche ich mir keine Sorgen machen und "mein" System ist in Ordnung.
Ich bin mir allerdings nicht ganz sicher, wie das von kiestumpe und Larry gemeint war. Welches System ist nun OK, das des Oberprogrammierers der Fremdfirma oder mein System.
Mein System ist angelehnt an Wellenreuther/Zastrow, Automatisieren mit SPS, Theorie und Praxis, 3. Auflage, S. 443. (Die beiden Programmieren ja schon seit Jahrzehnten und ich denke, man kann Ihnen vertrauen.)
Da sieht man das Grundsystem einer Schrittkettenprogrammierung mit Ausgangszuweisungen (teilweise gespeichert). So habe ich das auch bisher immer programmiert, es hat immer funktioniert.
Aber man kann ja eine Sache auch 35 Jahre lang falsch machen, ohne dass es immer gleich auffallen muss.

Der Kollege konnte mir leider nicht sachlich begründen, warum sein Oberprogrammierer auf dieses System schwört. Vermutlich ist die Begründung aber ganz einfach: Das funktioniert, das machen wir hier schon immer so, da könnte ja jeder kommen,...
Es macht sicher Sinn, dass innerhalb einer Firma ein einheitliches System herrscht!

Ich wollte nur sicher gehen, dass ich da nichts übersehen habe.

Gruß
Earny
 
Hallo,
wenn ich das richtig verstanden habe, brauche ich mir keine Sorgen machen und "mein" System ist in Ordnung.
Ich bin mir allerdings nicht ganz sicher, wie das von kiestumpe und Larry gemeint war. Welches System ist nun OK, das des Oberprogrammierers der Fremdfirma oder mein System.

Aus meiner Sicht : Dein System ist in Ordnung, wenn sich bisher noch niemand darüber beschwert hat (oder idealerweise deine Programme sogar geschätzt werden) und du selber damit klarkommst.

Der Kollege konnte mir leider nicht sachlich begründen, warum sein Oberprogrammierer auf dieses System schwört. Vermutlich ist die Begründung aber ganz einfach: Das funktioniert, das machen wir hier schon immer so, da könnte ja jeder kommen ...

Never change a running System ...

Es macht sicher Sinn, dass innerhalb einer Firma ein einheitliches System herrscht!

Vollkommen richtig. Und wenn die Firma dein Kunde ist, dann mußt du dich ggf. da anpassend oder den anderen dein System schmackhaft machen ...

Gruß
LL
 
Zuviel Werbung?
-> Hier kostenlos registrieren
+

Kann man dieses auch irgendwie sachlich begründen?
Welche Bedeutung in diesem Zusammenhang haben Anweisungen wie diese

U M 100.0
U M 100.1
= A 127.0

wobei die Merker M 100.0 und M 100.1 durch R und S Anweisungen gebildet werden?

Es sind sehr leicht Fälle anzugeben, die ohne R und S Anweisungen, entweder direkt auf den Ausgängen oder über Zwischenvariablen, NICHT gelöst werden können.

Deshalb halte ich diese Forderung

Es dürfte niemals ein Aktor (Ausgang) gespeichert angesteuert werden.
für eine willkürliche, nicht realisierbare Einschränkung. Der Programmierer ist mit seinem Programm dafür verantwortlich, die Ausgänge der SPS so anzusteuern, dass sie in jedem Anlagenzustand die richtigen Signale führen. Dabei macht es keinen Unterschied, ob das mit "=", R und S oder beidem zusammen erreicht wird.
 
Im Prinzip spricht nichts gegen das Setzen von Ausgängen, wie 4L ja schon erläutert hat. Viele Programmiersysteme heben aus der Schrittkette heraus ein Signal zum Einschalten eines Aktors und eines zum Ausschalten. Diese Signale gehen dann auf einen Aktor-Baustein, der Freigaben, Hand, Automatik, Fehlererkennung etc. handelt. Das ist auch nichts anderes, als ein "Setzen/Rücksetzen" eines Ausgangs, wobei noch einige Randbedingungen (Fehler, Freigaben, etc.) dabei beachtet werden und ich diese Lösung daher persönlich besser finde.
 
Das ist natürlich immer so das jeder Argumente für "sein System" hat.
Bin aber auch der Meinung man sollte sich evtl. Wünschen der Kunden anpassen solange es nicht ganz unsinnig ist. Letztendlich ist man allerdings immer für sein Programm verantwortlich. Und wenn der Preis nicht stimmt kann man natürlich keinen Mehraufwand betreiben um sich anzupassen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

Ich bin mir allerdings nicht ganz sicher, wie das von kiestumpe und Larry gemeint war. Welches System ist nun OK, das des Oberprogrammierers der Fremdfirma oder mein System.

Gruß
Earny
Zu der FRage: ich meinte dieses hier
Die Schritte einer Schrittkette werden nacheinander, wie vom Prozess gefordert eingeschaltet, und bleiben alle eingeschaltet, bis der allerletzte Schritt die gesamte Schrittkette in einem Rutsch löscht.
Ich kenne das nur so, dass immer nur ein Schritt aktiv sein darf, es sei denn du hast ne Parallelverzweigung.
Ist die "Fremdfirma" Kunde oder einfach nur ein externer Programmierer.
Im ersten Fall würde ich deinen Chef auf den mit dieser Methode verbundenen Mehraufwand aufmerksam machen, im zweiten Falle auf den sog. Experten sch*en...
 
Hallo Larry,
in Deinem Beitrag vom 26.8. zu meinem Thema hattest Du geschrieben:
... solche Schrittketten gibt es bei uns als Alt-Lasten auch noch einige. Das ist besonders toll, wenn man etwas daran ändern möchte oder ggf. einen Parallelzweig einfügen möchte.

Ich war mir da nicht ganz sicher, ob Du das Schrittkettensystem des Oberprogrammierers der Fremdfirma meinst oder mein System.

Aber in Deiner Ergänzung vom 27.8. war dann klar, dass Du meine Art der Schrittkettenprogrammierung für i.O. hältst.
Aus meiner Sicht : Dein System ist in Ordnung, wenn sich bisher noch niemand darüber beschwert hat (oder idealerweise deine Programme sogar geschätzt werden) und du selber damit klarkommst.

Gruß
Earny
 
Zurück
Oben