TIA Problem Ablaufsteuerung mit TIA V13 und einer 1500er-CPU

DannyNRW

Level-1
Beiträge
49
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

und zwar haben wir morgen einen Laborversuch zu einer Ablaufsteuerung. Dazu hätte ich eine eher generelle Frage. Wir haben unseren Dozent gefragt, wie man Ablaufsteuerungen professionell programmiert. Er sagte, zuerst wird die Schrittkette (nur mit Merkern) realisiert und zum Schluss (also am Ende des Bausteins) dann die Zuweisungen zu den Ausgängen.
Jetzt hatten wir das Problem, dass bei dieser Verfahrensweise ein bestimmter Ausgang nie gesetzt wurde. Haben wir das Setzen des Ausgangs einige Netzwerke nach oben verschoben, so funktionierte alles wie gewünscht. Allerdings ist damit natürlich die Übersichtlichkeit verloren gegangen.
Kann mir jemand sagen, wie man dieses Problem lösen kann oder was wir falsch gemacht haben könnten?
Bin gerne für weitere Tipps zum Thema Ablaufsteuerung offen.

Danke Euch schon mal.
Daniel
 
Es gibt x Varianten von Schrittketten.
Jede hat ihre speziellen Eigenarten und daher ist es schwer zu sagen was ei euch nicht passte.
Du kannst ja mal ein paar Screenshots zeigen.

Gruß
Blockmove
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Da innerhalb eines Bausteins meist Streng zyklisch vorgegangen wird könnte ich mir vorstellen dass du den Ausgang zweimal nutzt in deinem Baustein.
Kann es sein dass du ihn in einem Netzwerk setzt und später an anderer Stelle aus Versehen nochmal zurücksetzt?

Würde mir jetzt so spontan als Fehler einfallen jedoch geht das mit einem Programm Aufzug oder Screenshots deutlich besser :-)

Gesendet von meinem SM-G935F mit Tapatalk
 
Vermutung:
Schrittkette mit S/R-Gliedern in aufsteigender Reihenfolge realisiert.
Zuweisung der Ausgänge ebenfalls mit S/R-Gliedern am Ende der Schrittkette (z.B. S bei Schritt 3, R bei Schritt 6).
Wenn jetzt die Transition von 3 nach 4 direkt nach Aktivierung von Schritt 3 gegeben ist, bekommt die Zuweisung der Ausgänge am Ende den Schritt 3 nicht zu sehen.

Wenn er jetzt die S/R-Glieder der Schrittkette in absteigender Reihenfolge programmiert, dann funktioniert es weil der Schritt für min. 1 Zyklus aktiv ist.
 
@Thomas: Ich denke, genau das ist der springende Punkt. Die Schrittkette ist tatsächlich mit S/R-Flipflops realisiert worden, ebenso auch die Zuweisung der Ausgänge.
Das heißt, ich müsste den letzten Schritt zuerst programmieren, um dann ein funktionierendes Programm zu bekommen?

Oftmals ist es ja so, dass die Ausgabe in einem anderen Baustein gemacht wird. Wie muss hier vorgegangen werden? Das Problem wäre ja dann das gleiche, als wenn ich alles in einem Baustein programmiere.
Und welche Möglichkeit gibt es, dass die Schritte in aufsteigender Reihenfolge programmiert werden und trotzdem die Zuweisung der Ausgänge in einem anderen Baustein erfolgt?

Danke schon mal.
Daniel
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@Thomas: Ich denke, genau das ist der springende Punkt. Die Schrittkette ist tatsächlich mit S/R-Flipflops realisiert worden, ebenso auch die Zuweisung der Ausgänge.
Das heißt, ich müsste den letzten Schritt zuerst programmieren, um dann ein funktionierendes Programm zu bekommen?

Oftmals ist es ja so, dass die Ausgabe in einem anderen Baustein gemacht wird. Wie muss hier vorgegangen werden? Das Problem wäre ja dann das gleiche, als wenn ich alles in einem Baustein programmiere.
Und welche Möglichkeit gibt es, dass die Schritte in aufsteigender Reihenfolge programmiert werden und trotzdem die Zuweisung der Ausgänge in einem anderen Baustein erfolgt?

Danke schon mal.
Daniel
Warum die Ausgänge überhaupt per SR-Flipflop?
An einem einfachen ODER sollte es dann Funktionieren.

Gesendet von meinem SM-G935F mit Tapatalk
 
Ich möchte eben schon gerne lernen, wie man es richtig macht und dazu ein übersichtliches Programm erhalten. Von daher schien die Aussage des Dozenten, die Zuweisung der Ausgänge erst am Ende des Programmes oder gar in einem separaten Baustein auszuführen, eben logisch.

So wie ich das jetzt verstanden habe, liegt das Problem immer dann vor, wenn ein Schrittwechsel direkt erfolgt, ohne das dazwischen Zeit vergeht (weil die Transitionsbedingung eben direkt erfüllt ist).
Wenn ich eine Zuweisung für die Ausgänge mache, also ohne Flipflops, dann müsste ich mit ODER-Verknüpfungen auf mehrere Merker verweisen. Ist das legitim?
 
Das mit der Oder-Verknüpfung bei der Zuweisung wäre eine Möglichkeit. Aber ich vermute fast du hast noch einen zweiten Fehler in deiner Schrittkette.

Wenn du es so programmiert hast, dass ein Schrittmerker mit dem nachfolgenden Schritt zurückgesetzt wird, dann hast du bei dieser Konstruktion bei aufsteigender Programmierung auch noch das Problem, dass für einen Zyklus zwei oder sogar mehr Schrittmerker gesetzt sein können (Durchrauschen der Schrittkette), wenn sofort die Transitionsbedingung des nachfolgenden Schrittes erfüllt ist.
Du bist nicht der erste der bei seinen ersten Schrittkettenvarianten auf diese Probleme stößt. Das ist ja mehr oder weniger der logische Ansatz wenn man die Ablaufdarstellung in Programmcode umsetzen will.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das kann schon gut möglich sein und ich denke, ich weiß, was Du meinst @Thomas. Die Zykluszeit beträgt ja nur einige ms und einen Zustand mehrerer gleichzeitig gesetzter Schrittmerker bekomme ich über die Beobachtungsfunktion nicht mit, da zu langsam.
Ich kann gerne mal einen Screenshot machen oder das ganze als pdf-File anhängen, wenn das irgendwie hier möglich ist. PDF wäre natürlich noch einfacher
 
Dazu hätte ich eine eher generelle Frage. Wir haben unseren Dozent gefragt, wie man Ablaufsteuerungen professionell programmiert.

Die von Siemens (Offizielle/Professionelle) angebotene Weg, ist Schrittkette mit S7-Graph um zu setzen.

Dann brauchst du dich selbst um viele Sachen nicht zu kümmern. z.b. verriegelung zwischen Schritten.
Visuell ist es in die Projektierung auch als Schrittkette dargestellt.
Mit online beobachten ist dies auch ein Großes Vorteil

https://www.youtube.com/watch?v=BjpeVO8k0d0

Schaue es dir mal an.

Bram
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@TE

Ich würde mir um die richtige Programmierung einer Schrittkette im Allgemeinen im Moment nicht den Kopf zerbrechen. Es gibt so einige Varianten, die sich enorm unterscheiden und es hängt zum Schluß von der Firma ab, für die du arbeitest, was dort üblich ist und praktiziert wird.
Im Moment machst du es so, wie dein Dozent euch das beibringt und es von euch verlangt.
Schrittketten mit Merkern und Ausweisung am Ende haben wir auch vor 20 Jahren gemacht, damals noch mit der S5 und anfänglich auch mit der S7.
Zum Lernen des Prinzips (Ablaufsteuerung mit einer SPS) ist das auch ok, für kleine Sachen seh ich das heute noch manchmal, warum nicht.

Heute kann man gut Graph nutzen, aber manche Firmen wollen das nicht, weil die eigenen Instandhalter entweder die Software nicht haben, man ihnen nicht die Lehrgänge zahlen will oder jemand es rundweg ablehnt, weil er eben KOP/FUÜ und AWL gut versteht.
 
Hallo zusammen,

ich möchte mich an dieser Stelle nochmal für die vielen Tipps bedanken. Die Vorbereitung auf das Labor ist dadurch geglückt und der Versuch war nach einer Stunde beendet.
Lediglich das hochrüsten von Tia V12 auf V13 sowie ein Tippfehler in der Software haben etwas Arbeit gekostet, die Funktionalität jedoch war gegeben, wie es der Dozent gefordert hatte.
Ich hatte es vorher mit Step7 V5.4 programmiert und mit PLCSim getestet.

Dazu habe ich allerdings nochmal eine Frage. Diese Anlage war ja noch recht übersichtlich (3 Tanks, ein paar Ventile, Initiatoren usw.; insgesamt 2 Bausteine mit jeweils 15 Netzwerken, ein paar Timer...) und so konnte ich das Programm gut mit PLCSim testen. Wie ist das aber nun, wenn die Anlagenkomplexizität zunimmt oder die Prozessschritte innerhalb von ein paar Sek. durchlaufen werden?
Natürlich lassen sich Timerzeiten für Testläufe verlängern usw. Ich könnte mir vorstellen, dass sowas dann aber schnell unübersichtlich wird und man möchte ja keine Anlage durch falsche Programmierung zerstören. Gibt's für solche "Vorabsimulationen" spezielle Methodiken?
Programmierarbeit in kleine Arbeitspakete aufteilen, so gut es geht... das würde mir als einziges einfallen.

Danke nochmal.
Daniel
 
Zurück
Oben