Verständnisproblem Schaltbedingung SPS->Step 7

ramirez19

Level-1
Beiträge
40
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Zusammen :confused:,

ich versuche derzeit ein komplexes S7 Programm zu verstehen. Nun habe ich festgestellt, dass ich die Programmierbedingung und deren Zusammenhang nicht verstehe.
Wenn ich etwas grundsätzlich programmiere, wovon hängt eine Einschalt/ Ausschalt.- Bedingung ab bzw. bei einer Anlage sind Sensoren, Aktoren, Tastern (HMI, Panel), Freigaben und Kommando von einander abhängig. Wie gehe ich am besten beim Programmieren vor? Wie programmiere ich einen Maschinenablauf? Ich möchte die Logik der Maschine verstehen und ich möchte beim programmieren logisch denken :D.
Ich habe mit Hochsprachen Programmierung nix zu tun. Gibt es ein Buch, Tutorien mit Programmierstrategie für Anfänger und von Maschinendenkweise?

Ich bin euch dankbar, wenn ihr mir dabei hilft.

:p

Gruß Rez
 
Puh...

Wenn man ganz am Anfang steht wäre ein Lehrgang sicher nicht schlecht...

Literatur gibt es reichlich. Um sich Basics draufzuschaffen sind die Bücher von Hans Berger nicht schlecht.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also Programmierstile gibt's wie Sand am Meer, und jeder denkt natürlich, seiner ist der Längste, ähh Beste.

Prinzipiell sollte man sich daran orientieren, was die Kollegen in der eigenen Firma machen, bzw. wie der Kunde so arbeitet.

Nichts ist schlimmer, als 1000 Varianten, in jeder SPS was anderes...

Was man macht bzw. nicht macht, hängt von vielen Dingen ab, z.B.:

- welche Steuerung, welches Visu
- welche Entwicklungsumgebung,
- was können die Kollegen, Instandhalter
- welche Branche
- Sonder- oder Serienmaschienen oder Anlagenbau
- spätere Änderungen im laufenden Betrieb notwendig
- Anbindung an übergeordnetes Leitsystem, BDE, MES, ERP

Grundsätzlich ein Programm immer in viele logisch abgetrennte Einzelaufgaben unterteilen...

Aber konkret, was willst Du machen?

gruß.
 
Ein-/Ausschaltbedingungen hängen vom Prozess ab
Wie die Maschine funktioniert erforscht man imho am besten, indem man von der Ausgangszuweisung eines Aktors "rückwärts" die Schaltbedingungen analysiert.

Harald
 
@ Tigerente1974

ich stehe nicht am Anfang sondern also einiges weiße ich aber wie gesagt Programmierstrategien und die Art und Weise zu analysieren fehlen mir.
Welches Buch kannst du mir empfehlen? oder hast du deine eigene Strategie, die du mir sagen kannst :)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@ ducati
das ist eine Sondermaschine. Ich versuche zu verstehen was die Kollegen programmiert haben.
Die Analyse fehlt mir grundsätzlich... was mich verwirrt ist die Sensorik in Verbindung mit den einzelnen Funktionen und wie sie sich voneinander abhängen.
wie der Kollege PN/PD erwähnt hat rückwärts die Schaltbedingung analysieren in den einzelnen Netzwerkpfaden fehlt mir schwer ein vor allem, wenn man mit Freigaben, Kommandos, Time und Sensoren
und die Funktionsweise der Anlage in Abhängigkeit von den einzelnen Baugruppen und Schritte.
 
Dann bleibt Dir nur der Weg, das nachzuvollziehen was der Programmierer geschrieben hat.
Es nutzt dir auch nichts, wenn jetzt jemand sagt wie das normalerweise gemacht wird. (und da gibt es auch x Meinungen...)
Wenn Du den Code lesen und verstehen kannst und der ausreichend kommentiert ist, wirst Du nach einer Zeit schon dahinterkommen.
Ggf. auch mal online gucken was da passiert um es zu verstehen...
 
Übrigens ist das auch ein gangbarer Weg programmieren zu lernen. Wenn man die Programme von verschiedenen Programmierern mal nachvollzogen hat, kann man da einiges an Wissen rausziehen. Natürlich vorausgesetzt, dass der Programmierer das halbwegs vernünftig gemacht hat.
 
wie wärs denn mal mit ein bisschen code damit wir zumindest mal einen ganz kleinen Einblick bekommen.
 
@ramirez19 versuche das Pferd von hinten aufzurollen und dich so durchzuhangeln. Wichtig ist, systematisch zu denken und Bereiche als einzelne Blöcken zu abstrahieren. Verstehst du etwas nicht, mach eine Blackbox drüber. Der Sinn hinter zunächst Unverständlichem ergibt sich meist später. Vor allem halte dich nicht mit unwichtigen Details auf. Man muss nicht z.B. in die Tiefen einer Antriebssteuerung absteigen, das kann man zunächst mal als fertiges Konstrukt betrachten. Bei deinem Problem würden dir Bücher nicht weiterhelfen. Das Programm was du hast, wird nicht dem Buch entsprechen und dich somit eigentlich nur noch viel mehr verwirren.
Du sagst, es wäre ein Programm deiner Kollegen. Warum frägst du die nicht einfach wie sie das programmiert haben? Eine gute 10 minütige Erklärung bringt mehr als stundenlanges Suchen.
 
Zuletzt bearbeitet:
Übrigens ist das auch ein gangbarer Weg programmieren zu lernen.
Bevor ...
... man die Programme von verschiedenen Programmierern mal nachvollzogen hat, ...
... sich mal eigene Gedanken zu machen, wie man eine bestimmte Aufgabe lösen könnte - das hat mir meistens am besten geholfen.
Egal, ob man eine Lösung gefunden oder resigniert aufgegeben hat. Man hat sich zumindest in die Problematik hineingedacht und sieht dann die Lösungswege anderer mit ganz anderen Augen.
Z.B. stolpert man dann darüber, dass andere Programmierer Bedingungen/Zustände berücksichtigen, an die man selbst nicht gedacht hat.
Oder - genau umgekehrt - andere haben GesichtsPunkte aussen vor gelassen, die man selbst für wesentlich hält.
Diese Aspekte finde ich durchaus wichtig, insbesondere, wenn man sowohl den eigenen als auch den Ansatz anderer einschätzen/vergleichen will.
Nicht alles, was man unübersichtlich findet, ist allein durch den Programmierstil unübersichtlich dargestellt.
Oft genug ist schon die zu lösende Aufgabe nicht ganz so simpel, wie es auf den ersten Blick scheint.
Wenn dann eine Ausnahme nach der anderen nachtgestrickt werden muss, wird auch die einfachste Regel schnell undurchschaubar.
Und noch undurchschaubarer ist dann das dazu gehörige Programm, wenn mehrfach verschiedene Programmierer "nachgebessert" haben.
Gruss, Heinileini
 
Zuletzt bearbeitet:
Zurück
Oben