Frust mit SPS/Step7

plc_from_hell

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

Vorweg:
diesen Beitrag meine ich durchaus ernst.

Momentan mach ich ne Mechatroniker-Umschulung und wurde dadurch mit SPS konfrontiert.

Mein Problem ist:
Jedesmal, wenn das Thema "SPS" aufm Programm steht, hab ich extrem schlechte Laune.

Ist das normal?

Ich meine:
Mir erscheint die Art und Weise, mit Step7 zu programmieren, ziemlich umständlich. Leider gehört das zur Ausbildung dazu.

Aber ich will grundsätzlich einen Zugang zu Step7 finden, daher könnte man die Frage auch so formulieren:

Welche Grundprogrammierstrategien sollte ich wissen/können, um mit Step7 klar zu kommen?
(ich finds ganz schön fummelig, wie man da programmiert, und außerdem nervt mich, dass man Ausgänge nur einmal zuweisen kann ... und beim Einsatz von Merkern verliere ich ruckzuck den Überblick)
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
was meinst du mit Ausgänge nur einmal zuweisen?

Merker kann man Symbolisch verwenden, d.h. einen Namen zuweisen.

Merker sollten nicht die Regel sein.
 
... wenn dem so ist, wie Du schreibst, wirst Du wohl schwerlich irgendwann Spass an dieser Arbeit haben.
Ernst gemeinter Rat: Spezialisiere Dich auf einen anderen Fachbereich.
Als ich vor vielen Jahren anfing, wußte ich auch nichts, aber ich hatte ein enormes Interesse an dem, was ich nicht wußte, und nicht :
Mein Problem ist:
Jedesmal, wenn das Thema "SPS" aufm Programm steht, hab ich extrem schlechte Laune.
 
@pjoddi:
ja. Momentan sieht meine Dtrategie so aus, SPS möglichst zu umschiffen. Aber das ist keine Lösung. Auch ich habe enormes Interesse, zu wissen was ich nicht weiß.
Die schlechte Laune rührt daher, dass ich genau das versuche.
(Anmerkung: hab auch schonmal nen Freund von mir gefragt (Informatiker) ob das normal ist, dass SPS Frust macht. Da hat er gemeint, sofern man schon mal wirklich programmiert hat, ist das völlig normal, denn Step7 sei entwickelt worden für Elektrotechniker, die keine Ahnung von Programmieren haben. Wenn mans für Programmierer entwickelt hätte sähe es anders aus. ;-) )

Die Siemens-Unterlagen hab ich mir auch schon angeschaut. hat mir nicht besonders weitergeholfen.

Was mir vermutlich fehlt:

Der Schritt zwischen "Die Steuerung soll folgendes tun: ... (Beschreibung) "
und
"Nun setz ich mich ans Programmieren"

Da gibts doch noch nen Zwischenschritt. Oder programmiert ihr alle wild drauflos?
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
..........
(Anmerkung: hab auch schonmal nen Freund von mir gefragt (Informatiker) ob das normal ist, dass SPS Frust macht. Da hat er gemeint, sofern man schon mal wirklich programmiert hat, ist das völlig normal, denn Step7 sei entwickelt worden für Elektrotechniker, die keine Ahnung von Programmieren haben. Wenn mans für Programmierer entwickelt hätte sähe es anders aus. ;-) )
..................

Da gibts doch noch nen Zwischenschritt. Oder programmiert ihr alle wild drauflos?
Ja, natürlich programmieren wir wild drauf los.
Was bleibt uns denn auch weiter übrig, wo wir doch vom Programmieren keine Ahnung haben.:ROFLMAO:
 
Ja, natürlich programmieren wir wild drauf los.
Was bleibt uns denn auch weiter übrig, wo wir doch vom Programmieren keine Ahnung haben.:ROFLMAO:

Und Step7-Informatikerprogramme haben wir fast alle schon einmal gelöscht und neu geschrieben.
 
ich fasse es nicht

erklär mit mal wie du einen ausgang zwei verschiedene zustände beibringen willst.

du kannst einen ausgang sooft programmieren wie du willst nur du solltest wissen was du machst und die meisten wissen es nicht wenn sie in doppelt zuweisen und dadurch gilt die regel niemals zweimal zuweisen

oder hat einer schon ein bit gesen das 0.5 hat
 
Zuviel Werbung?
-> Hier kostenlos registrieren
He plc_from_hell,

man was für ein Gefühl, wenn ich die fertige Anlage sehe und sagen kann:
"Das was sie tut habe ich geschrieben"

Du musst mit Leidenschaft programmieren sonst wird nichts gescheites draus!
 
Ich bin kein Programmierer. Aber ich hab in meinem Leben schon mal programmiert (vielleicht is das der Fehler)
meine bisherigen Programmiererfahrungen:
Anfang der 90er: mit BASIC auf KC85/4
Mitte 90er: Mit TurboPascal unter DOS.

Vielleicht hat mich das versaut.

Vermutlich hätte ich nicht so Probleme mit SPS, wenn man da mit BASIC, TP etc. rangehen könnte...

Aber, wie gesagt, das Anliegen ist mir ernst:

Welche Schritte sind nötig, um von der Aufgabe zum Programm zu kommen?
Welche Hilfsmittel ermöglichen besseren Überblick?

Welche Grundstrategien verwendet ihr, um "sauber" zu programmieren. (d.h. damit man selber und andere noch durchblicken. "Irgendwie" bekomm ich das mit viel Enthusiasmus und unter hohem Frustzuwachs auch hin - aber so soll das ja nicht sein.)
 
nicht zuletzt: die Methode "irgendwie" verbietet sich mir schon aus Verantwortzungsbewußtsein. SPS kommt auf Maschinen zum Einsatz, wo es bei Fehlfunktionen zu Sach- und sogar Personenschäden kommen kann.
Und bei Methode "irgendwie" ists nicht ausgeschlossen, dass ein unüblicher Programmstatus nicht einkalkulierte Risiken birgt.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Was für eine Strategie brauchst du denn? Die Strategie ist zB davon abhängig ob du AWL oder FUP nutzt. Dann kommt eben noch hinzu was die Steuerung leisten soll...

Eine eierlegende Wollmilchstrategie gibt es nicht. Die musst du an bestimmten Bedingungen anpassen ;)

Grundsätzlich ist es schonmal gut mit FBs zu arbeiten. Ich habe momentan für eine Art von Förderband einen eigenen FB. Für jedes Förderband rufe ich also einen FB mit eigenem IDB auf. Dieser FB wird von einem FC aufgerufen von dem aus ich das Programm parametriere. Ich finde das schön übersichtlich, wenn du diese Hierarchie nicht verletzt. Die FBs sind auch schön wiederverwendbar. Wenn du erstmal eine Bibliothek von denen hast und weißt wie du die parametrieren kannst, dann kannst du schonmal recht schnell inbetriebsetzen.

Ist natürlich die Frage ob du nur Förderbänder steuern willst und ob du die FBs schon hast oder noch schreiben musst...
 
Ich bin kein Programmierer. Aber ich hab in meinem Leben schon mal programmiert (vielleicht is das der Fehler)
meine bisherigen Programmiererfahrungen:
Anfang der 90er: mit BASIC auf KC85/4
Mitte 90er: Mit TurboPascal unter DOS.

Vielleicht hat mich das versaut.

Vermutlich hätte ich nicht so Probleme mit SPS, wenn man da mit BASIC, TP etc. rangehen könnte...

Nein, das stimmt so nicht, ich hab auch C, Pascal, Delphi, Basic hinter mir. Eine Maschine ist nun mal was anderes als ein PC-Programm.
 
also dein informatikerkumpel hat ja nicht ganz unrecht.
wobei das zu einer zeit war als mit den spsen nur stupide bitschubserei betrieben wurde. also wenn eingang-1 und eingang-2 dann ausgang-1...

heute bieten sps wesentlich mehr möglichkeiten.

wenn du TP kannst, dann kannst du dir mal das simatic zusatzpaket SCL anschauen, damit kann man die S7 in einer hochsprache die TP sehr ähnlich ist programmieren.


oder du achtest etwas auf deine eigene syntax wenn du aufgaben beschreibst:

WENN der "Vorratsbehälter" min 20% hat ODER "Anlage-auf-Dauerbetrieb" ist UND "Füllständ-MAX vom Puffertank" NICH erreicht ist DANN "Föderpumpe" EIN.


das sähe als AWL dann so aus:


O E0.0 // Voratsbehälter >=20%
O E0.1 // Anlage auf Dauerbetrieb
UN E0.2 // Puffertank Maximum
= A4.0 // Förderpumpe


Wenn du nicht für alle Informationen direkte Eingänge hast, dann musst du diese eben mit anderen zur verfügung stehenden bilden.

z.b. so:

L PEW256 // Füllstand Voratsbehälter (Normiert auf %)
L 20 // Grenzwert liegt bei 20%
>=I
O E0.1 // Anlage auf Dauerbetrieb
UN E0.2 // Puffertank Maximum
= A4.0 // Förderpumpe


oder du verwenddest für deinen selbst erzeugten information merken um diese auch in anderen Programmteilen zur verfügung zu haben ohne sie jedesmal nue berechnen zu müssen, oder einfach nur um dein programm besser zu strukturieren:


L PEW256 // Füllstand Voratsbehälter (Normiert auf %)
L 20 // Grenzwert liegt bei 20%
>=I
= M20.0 // Voratsbehälter >=20%




O M20.0 // Voratsbehälter >=20%
O E0.1 // Anlage auf Dauerbetrieb
UN E0.2 // Puffertank Maximum
= A4.0 // Förderpumpe
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@Werwolf:

Ich suche nach dem Schritt bzw. der Strategie,
die kommt, BEVOR ich mir Gedanken mache über die Umsetzung.

Welche Bausteine ich wie verwende gehört schon zur Umsetzung.

@Ralle:
Hmm. Bin mir da nicht so sicher. Programm ist Programm.

@Markus:
Danke für deine ausführliche Antwort.
Ja, das ist wirklich nicht unbegründet (leider). laut wikipedia wurde das SPS-Zeug in den 60ern entwickelt, und zwar für Verdrahter, die vorher VPS gemacht wurden, und zwar mit dem Zweck, dass die Verdrahter die Maschinen progammieren können. Mittels der Ladder-Sprache, also KOP.

Leider hab ich nicht so die Auswahl fürs Selbststudium, sondern ich muss klar kommen mit dem Zeug was wir an der Ausbildungseinrichtung haben. Step7.
Bin noch auf der Suche nach etwas für das Selbststudium zu Hause.
Problem ist natürlich, dass das alles sehr maschinengebunden ist, so kann ich wenig zu Haus probieren.
Ich kann maximal an der Grundstrategie arbeiten. Und genau das suche ich momentan.
Also die Vorarbeit die man macht, bevor man sich ans Programmieren setzt.
Bzw.: die Aufgabe lautet, "das und das ist gegeben, Zylinder, Sensoren, Taster blabla. Die Steuerung soll dies und das damit machen/Das ganze Zeug soll folgendes machen... blabla"
Und dann setzt man sich ans Programmiergerät und legt los. Das aber kann ich nicht zu Hause. Was kann ich VORHER machen? Bevor ich mich ans Programmiergerät/an die SIMATIC-Software setze?
Ich brauch ja irgend nen Plan, bevor ich loslege.
Sinnlos irgendwelche Netzwerke anlegen bringts ja nicht.
 
Bin noch auf der Suche nach etwas für das Selbststudium zu Hause.
Problem ist natürlich, dass das alles sehr maschinengebunden ist, so kann ich wenig zu Haus probieren.
vielleicht hilft dir das Programm TrySim weiter, damit kannst du einen SPS simulieren und deine Maschine auch auf dem Bildschirm zusammenbauen.
Habe das hier gefunden: http://www.download-tipp.de/shareware_und_freeware/3179.shtml ob es dir wirklich was nützt kann ich nicht beurteilen
Gruß
Thomas
 
Hallo,
ich denke es ist falsch zu sagen Du kannst das nicht. Du suchst nach einer Strategie. Hmmm, also was Du wahrscheinlich suchst ist die Methode des Herunterbrechens der Aufgabenstellung in logische Strukturen, aus denen man dann ein Programm macht. Dazu gehört ein analytisches Denken (trainierbar) und ein Wissen um die Möglichkeiten der zum Einsatz kommenden Technik. Nun ist es an Dir wie Du das angehst. Ohne Übung geht nichts, erst recht nicht ohne solides Grundwissen. Hat man letzteres nicht ist eine erfahrene Person unerläßlich die man löchern kann. Ich habe das Zur Zeit mit einem HMI gerät und dessen Programmierung. Ohne vernünftige Handbücher fetzt das gar nicht, und ständig an der Strippe hängen ist auch nicht lustig. Also weiter Trial and Error. Nervt. Von daher kann ich Dein geschriebenes schon verstehen. Also suche Dir jemanden (Praktikum als Hinweis?) der Dir helfen kann und dementsprechend zur Verfügung steht. Ich denke Du wirst dann auch Deine eigene Strategie finden, falls Du daran Spaß oder Nutzen finden solltest.

Viel Erfolg
Mario
 
Ich habe da volles Verständniss

Ich kann die Klage sehr wohl verstehen. Allen Stolz mal zurseite geschoben, verglichen, mit dem was in der Informatik abgeht und an Wissen vorhanden ist, ist die Erstellung eines SPS Programms Steinzeit.

Die AWL Technik ist Stand 1975, die ST oder SCL ist eine Ebene, auf der sich das frühe Pascal 10 Jahre danach bewegte.

Sauber strukturierte SPS Programme sind selten, bewährte Grundsätze der Object Orientierten Software Entwicklung können aus Mangel an den Tools und Sprachen nicht angewendet werden, UML und andere Strategien Fehlanzeige!

Das Problem ist, dass die, die es bräuchten, gar nicht wissen, wo der Stand der Technik ist, und die, die es vermitteln sollten, ebenfalls nicht die Ausbildung haben und die, die es könnten, keine Marktposition haben.

Hart aber wahr, eines Tages kommt ein Paradigmen Wechsel, zwangsweise, da die Anlagen immer komplizierter werden und dann kommen einige Experten oder sogar Industrie Standorte unter die Räder.

Ich weiss, dass ich mir keine Freunde mit diesen Worten mache, aber ich lebe von der Software seit 35 Jahren und weiss, dass "aus Leidenschaft" nur als Motivation für Banker reicht, in der Technik gehört Ausdauer und Geduld und Weiterbildung in die Reihe der Tugenden vorangestellt.
 
Ich kann die Klage sehr wohl verstehen. Allen Stolz mal zurseite geschoben, verglichen, mit dem was in der Informatik abgeht und an Wissen vorhanden ist, ist die Erstellung eines SPS Programms Steinzeit.

Die AWL Technik ist Stand 1975, die ST oder SCL ist eine Ebene, auf der sich das frühe Pascal 10 Jahre danach bewegte.

Sauber strukturierte SPS Programme sind selten, bewährte Grundsätze der Object Orientierten Software Entwicklung können aus Mangel an den Tools und Sprachen nicht angewendet werden, UML und andere Strategien Fehlanzeige!

Das Problem ist, dass die, die es bräuchten, gar nicht wissen, wo der Stand der Technik ist, und die, die es vermitteln sollten, ebenfalls nicht die Ausbildung haben und die, die es könnten, keine Marktposition haben.

Hart aber wahr, eines Tages kommt ein Paradigmen Wechsel, zwangsweise, da die Anlagen immer komplizierter werden und dann kommen einige Experten oder sogar Industrie Standorte unter die Räder.

Ich weiss, dass ich mir keine Freunde mit diesen Worten mache, aber ich lebe von der Software seit 35 Jahren und weiss, dass "aus Leidenschaft" nur als Motivation für Banker reicht, in der Technik gehört Ausdauer und Geduld und Weiterbildung in die Reihe der Tugenden vorangestellt.

Na ja, wenn du meinst. Ich kenne locker mindestens genauso viele dämliche völlig verbastelte, wirkliche OOP nicht mal im Ansatz nutzende "moderne" Programme, wie dusselig geschriebene SPS-Programme. Eine Synthese aus beiden Welten wäre für mich wohl das Ideale, aber ich freu mich schon auf das Chaos und die Hilferufe verzweifelter Anlagenbesitzer.
 
Zurück
Oben