TIA Schrittkettenprogrammierung SPS

Dafür sieht dein Ansatz aber schon ziemlich gut aus.

In deinem Beispiel ist M20.2 der Merker dafür, dass Schritt 1 aktiv ist. Anderswo in deiner Logik setzt du dann deine Ausgänge oder andere Bearbeitungsschritte. Beispielsweise, wenn im Schritt 1 eine Lampe leuchten soll und etwas berechnet werden muss, kannst du diese Dinge in Abhängigkeit von M20.2 setzen.

Schritt 2 (M20.3) wird dann gesetzt, wenn M20.2 aktiv ist UND sämtliche Bedingungen erfüllt sind, um von Schritt 1 nach Schritt 2 zu wechseln. DU hast dann also wieder ein SR-Fliflop, dessen S-Eingang mit einem UND-Baustein belegt ist. Hier ist einmal M20.2 angeschlossen, und alle Weiterschaltbedingungen (sog. Transitionsbedingungen).

Meist bietet es sich hier an, einen eigenen Baustein (FC) dafür zu verwenden, nur die Merker zu setzen. Hier hat dann jeder Schrittmerker sein eigenes Netzwerk, damit alles schön übersichtlich ist.
Aber wie bekomme ich es hin das dabei die Zylinder nach einander ein und ausfahren?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Aber wie bekomme ich es hin das dabei die Zylinder nach einander ein und ausfahren?
Wenn du Endlagenabfragen hast, kannst du diese nutzen, ansonsten über Softwaresignale simulieren.
WENN Ausgang TRUE UND Eingang Endlage TRUE DANN nächster Schritt.

Schrittketten in FUP sind ein bisschen wie eine Leiter hochklettern. Erst müssen die Hände nach oben gegriffen haben (Vorbedingung) bevor du dann mit den Beinen nachziehst (Schritt)
 
0) warten auf Start -> nächster Schritt
1) zylinder 1 ausfahren -> nächster Schritt
2) zylinder 1 ist ausgefahren -> nächster Schritt
3) zylinder 2 ausfahren -> nächster Schritt
4) zylinder 2 ist aufgefahren -> nächster Schritt
5) zylinder 2 einfahren -> nächster Schritt
6) zylinder 2 ist eingefahren -> nächster Schritt
7) zylinder 1 einfahren -> nächster Schritt
8) zylinder 1 ist eingefahren -> zu Schritt 0
 
Schau dir vielleicht das Video an, da ist es auch gut erklärt...
Wenn du das Ordentlich machen willst dann verwende zwei Bausteine. im ersten läuft deine Schrittkette und im zweiten werden deine Ausgänge zugewiesen.

@lea.rns03 ich habe da noch einen Tipp, wenn du in deiner Freizeit gerne Kuchen backst dann sieh das als Erstellung eines Rezeptes an.
  • 0) Küchenmaschine herrichten
  • 1) Mehl abwiegen
  • 2) abgewogenes Mehl in die Küchenmaschine
  • 3) einen TL Backpulver....
Ich bin guter Dinge das bekommen wir hin!
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Losgelöst von Bezeichnungen etc. ist es aber auch immer ratsam, mit sprechenden Variablennamen zu arbeiten. Das vereinfacht die Arbeit und später das Verständnis des Programms ungemein. Dazu gehst du in die Variablentabelle ("PLC-Variablen") und gibst den Variablen Namen. In deinem Fall z.B. M20.1 - Schritt 1, M20.2 - Schritt 2 ... wenn du nur mit blanken Nummern arbeitest weißt du evtl. Morgen schon nicht mehr, was was ist.

Festlegen, wie viele Schritte brauche ich?
Dann zuordnen, was in welchem Schritt passieren muss. Losgelöst von Schaltbedienungen.
Schritt 1: Zylinder 1 ist eingefahren, Zylinder 2 ist eingefahren.
Schritt 2: Zylinder 1 ist ausgefahren, Zylinder 2 ist eingefahren.
Schritt 3: Zylinder 1 ist ausgefahren, Zylinder 2 ist ausgefahren.
etc. pp.
Das kann man in der Steuerung auch genau so abbilden.
M1: Z1 - Rücksetzen, Z2 Rücksetzen
M2: Z1 Setzen, Z2 Rücksetzen ...
etc. pp.

Am Ende brauche ich dann nur noch eine Kette, welche die verschiedenen Schritte nacheinander setzt bzw. rücksetzt. Das ist, bei konsequenter Ausführung, nur noch eine einfache Abfolge aus SR FlipFlops wie im Bild unten.
 

Anhänge

  • 2024-05-29 10_14_45-Anlage8-2_Kon.drawio - draw.io.png
    2024-05-29 10_14_45-Anlage8-2_Kon.drawio - draw.io.png
    4,6 KB · Aufrufe: 18
  • 2024-05-29 10_14_58-Anlage8-2_Kon.drawio - draw.io.png
    2024-05-29 10_14_58-Anlage8-2_Kon.drawio - draw.io.png
    9,8 KB · Aufrufe: 18
Hey Leute, hab das Programm jetzt soweit fertig gemacht und wollte es testen aber als ich den Taster S1 gedrückt hab passierte erstmal nichts als ich aber über Beobachtungsprogramm die Merker per Hand auf 1 gesetzt hatte fuhr ein Zylinder von zwei aus. Was hab ich falsch gemacht oder irgendwie noch ein Fehler im Programm?
Kann irgendjemand so ein Programm erstellen und ich kann schauen ob ich nen Fehler gemacht oder ob ein irgendein Bauteil defekt ist?
 
Hey Leute, hab das Programm jetzt soweit fertig gemacht und wollte es testen aber als ich den Taster S1 gedrückt hab passierte erstmal nichts als ich aber über Beobachtungsprogramm die Merker per Hand auf 1 gesetzt hatte fuhr ein Zylinder von zwei aus. Was hab ich falsch gemacht oder irgendwie noch ein Fehler im Programm?
Kann irgendjemand so ein Programm erstellen und ich kann schauen ob ich nen Fehler gemacht oder ob ein irgendein Bauteil defekt ist?
Viel besser: Poste Teile von deinem Programm... in Online Ansicht
 
Prinzipiell ist es keine so wahnsinnig gute Idee, den Zustand von Ausgängen abzufragen und damit zu rechnen. Du kannst den Ausgang setzen und trotzdem falsches Verhalten in der wirklichen Welt bekommen. Beispielsweise wenn die Druckluft am Zylinder fehlt oder der Ausgang nicht richtig verdrahtet ist. Besser wäre es also, zum Weiterschalten der Schrittkette die Position der Zylinder abzufragen.

Außerdem ist die Frage, was "Merker" macht.
 
Deine Merker sind ja die Schrittkettenmerker. Du hast RS Flip Flops verwendet (Setzen dominiert Rücksetzen, also wenn beides TRUE ist, wird gesetzt) und alle Schritte in deiner Schrittkette sind dadurch gleichzeitig gesetzt.
Du brauchst das andere FlipFlop, das SR, (mit der kleinen R1 unten) in welchem die Schritte nacheinander zurückgesetzt werden können...
 
Kann mir vielleicht einer zeigen wie das Programm richtig geschrieben wir ich bin hier sonst noch Ewigkeiten bei? Und bringt ja auch nichts wenn ich’s am Ende trotzdem nicht ververstehe
 
Vllt hilft das weiter.

Die Zuordnung welcher Ausgang welchen Zylinder wie ansteuert sowie Welcher eingang die Endlagen der Zylinder sind. Hast du uns noch nicht geschrieben.
 

Anhänge

  • IMG_20240530_111318.jpg
    IMG_20240530_111318.jpg
    3,6 MB · Aufrufe: 24
Zuletzt bearbeitet:
Zurück
Oben