step 7 Programme

OP #4158614
Lesenswert?
• ▲
▼
Moin alle miteinander

Ich hätte mal ne frage bezüglich der Programmierung von der step 7.
In der schule lernte ich das alles via schrittkette zu programmieren sei 
wegen Übersicht und so
Im Studium ist es nun mehr eine schrittkette freie Programmierung.
Daher meine Frage welches Verfahren benutzt man nun für  größere 
programme.
Ist es da dem Programmierer überlassen wie er programmiert oder gibt's 
da ein ungeschriebenes Gesetz das man sich an eine Version hallten muss.

Schon mal danke für eure antworten
Gast #4158671
Lesenswert?
• ▲
▼
Kommt immer drauf an.
Mein Prof hat damals erzählt, der Ingenieur programmiert in AWL, der 
Techniker in FUP, und KOP ist so blöd, daß man es gar nicht sgen kann.
In der Praxis stand ich nachts um 3 an der Maschine, das PG 4Meter 
entfernt auf online geschaltet und ich wollte sehen, was die dig. E im 
Programm machen. AWL ist spätestens nach der 3. Klammerebene nicht mehr 
intuitiv, bei FUP kann ich das & und >= nur noch mit dem Fernglas lesen. 
Lösung war ganz einfach: KOP. Da sollte man sich von akademischen 
Zwängen befreien. Klar ist aber, daß sich bestimmte Probleme nur in AWL 
lösen lassen.
Ich habe mal eine Maschine programmiert, die ca. 50 unabhängige 
Baugruppen hatte, je 2-3 Zylinder, gleichzeitig in Betrieb. Jede bekam 
eine Schrittkette. Natürlich könnte man für jedes eine extra Task 
aufmachen; dann ist der ProgramCounter eben der Schrittzeiger. Aber 
einzelne PB in KOP, das war einfacher und auch für den Wartungstechniker 
(der für 20 unterschiedliche Maschinen zuständig ist, und beim Bau der 
Masch nicht dabei gewesen ist), verständlich.
Übrigens gibt es Schrittketten auch in 'C': Schritt-Nummer wird in einer 
Variable gespeichert, in einer case-Verzweigung werden die Schritte 
ausgewählt, und der Schritt-Übergang ist nur, die SChritt-Nummer zu 
ändern. Das ganze muß immer (_delay ist verboten, warten auf Bedingung 
ist verboten) wieder aufgerufen werden; zB im 1ms-Interrupt.
(Firma: Schweigstill IT) Persönliche Seite #4158681
Lesenswert?
• ▲
▼
abc.def schrieb:
> Lösung war ganz einfach: KOP.

Die noch bessere Lösung ist: SCL

> Übrigens gibt es Schrittketten auch in 'C': Schritt-Nummer wird in einer
> Variable gespeichert, in einer case-Verzweigung werden die Schritte
> ausgewählt, und der Schritt-Übergang ist nur, die SChritt-Nummer zu
> ändern. Das ganze muß immer (_delay ist verboten, warten auf Bedingung
> ist verboten) wieder aufgerufen werden; zB im 1ms-Interrupt.

Genau diese Vorgehensweise hat sich bei unseren Projekten in SCL sehr 
bewährt. Insbesondere kann man die Schrittnummer auch sehr gut in 
irgendwelchen Fehlermeldungen ausgeben und weiß sofort, an welcher 
Stelle es hakt.

Der einzige wichtige Nachteil, den ich bei SCL sehe, besteht darin, dass 
man die Persistenz von Datenbausteinen nicht dargestellt bekommt. Ist 
dieses Problem in aktuellen Versionen von STEP7 mittlerweile behoben?
Gast #4158691
Lesenswert?
• ▲
▼
Andreas Schweigstill schrieb:

So in der Art mache ich das auch. Automatikprogramme mittels SCL/AWL 
erstellen, für einzelne Aggregate mittels SCL/AWL jeweils einen Baustein 
erstellen (z.B. für Pumpen, Analogwerte etc) und diese dann über KOP mit 
EAs beschalten. Wenn man die Bausteine vorher ordentlich getestet hat, 
dann sieht man damit während der IBN auch sehr schnell, welcher Eingang 
Beispielsweie noch für Pumpe X fehlt etc. Außerdem spart man sich damit 
ständiges neu programmieren von Funktionen, eine Pumpe funktioniert in 
95% der Fälle gleich  und wenn doch etwas anders ist, dann kann man den 
Baustein ja bedenkenlos erweitern. Damit muss man sich dann auch bei 
zukünftigen Projekten hauptsächlich um die Automatik kümmern, zumindest 
wenn die Projekte einigermaßen ähnlich sind.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.