Step 7 Quereinsteiger

gaiskasimir

Level-1
Beiträge
113
Reaktionspunkte
13
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
als Quereinsteiger zur S7 Steuerung stehe ich vor mehreren Fragen.
Strukturierter Text ist mir von der B&R Steuerung hinreichend bekannt.

Sollte ich nun in SCL einsteigen? Oder AWL?
Wie werden externe Schnittstellen behandelt (RS232 / RS422 / RS485) Gibt es da was Fertiges? Oder muss ich die "zu Fuss" bearbeiten?
Ist SCL in der PG-Software enthalten ?

Das sind erst mal meine Basisfragen. Weitere werden sicher folgen.

Vielen Dank

Gaiskasimir
 
Hallo Gaiskasimir,

Meine erste Gegenfrage lautet: Mit welcher S7-Steuerung arbeitest du denn?
Meine Antwort wird sich je nach S7-Steuerung anders anhören ;)

Bei einer S7-1500 oder S7-1200 würde ich auf jeden Fall SCL empfehlen und dies ist auch schon im jeweiligen Step7 (im TIA Portal) enthalten.
Bei einer S7-300 oder S7-400 fällt es mir schwer SCL zu empfehlen, da dies intern erstmal in AWL gewandelt wird. SCL ist dann auch nur bei Step7 Prof mit dabei.

Die älteren, externen Schnittstellen werden alle über Systembausteine angesprochen. Welcher genau, hängt wiederum von der Steuerung und dem Kommunikationsprozessor ab.

Gruß Käse
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Käse,

Oh Oh auf dem falschen Fuss erwischt. Das ist bei der B&R-Steuerung keine Frage der Baureihe...
So muß ich erst forschen und melde mich dann noch einmal...

Danke und schönes WE

Gaiskasimir
 
Die S7-300 hat auch schon mehr als 2 Jahrzehnte auf dem Buckel ;)
Die S7-1500 lediglich 2 Jahre.

Gruß und schönes WE Käse
 
Bei einer S7-300 oder S7-400 fällt es mir schwer SCL zu empfehlen, da dies intern erstmal in AWL gewandelt wird. SCL ist dann auch nur bei Step7 Prof mit dabei.
Inwiefern ist das für den Anwender ein Nachteil, dass SCL erst in AWL gewandelt wird? Weißt du denn was und wie das bei der 1200/1500 gewandelt wird, um das dort empfehlen zu können?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Da SCL erst in AWL gewandelt wird und der Compiler erst AWL in Maschinensprache übersetzt, kann der Compiler das SCL-Programm nicht optimieren. Also braucht ein großer, selbst programmierter SCL-Baustein meistens etwas länger in der Bearbeitung im Vergleich zu einem großen AWL-Baustein (mit der gleichen Funktion). Hierbei gehe ich jedoch davon aus, dass bei der AWL-Programmierung in eigener Regie darauf geachtet wird, optimiert zu programmieren.
Nicht zu sprechen von dem altbackenem SCL-Editor im Simatic Manager.

In der 1200/1500 gibt es für jede Sprache einen eigenen Compiler, weshalb jedes Programm möglichst optimiert wird. Welche Befehle zu bevorzugen sind, steht im Programmierleitfaden für die S7-1500:
https://support.industry.siemens.com/cs/ww/de/view/81318674
Generell ist aber zu sagen, dass eine moderner Prozessor keinen Akku1 oder Speicheradressregister in der Form besitzt, wie sie in AWL verwendet werden.
Dementsprechend werden die Akkus, u.w. von der CPU nur simuliert (aus Kompatibilitätsgründen).

Gruß Käse!
 
Da SCL erst in AWL gewandelt wird und der Compiler erst AWL in Maschinensprache übersetzt, kann der Compiler das SCL-Programm nicht optimieren.

Warum sollte das ein prinzipielles Problem darstellen wenn die Zielsprache AWL lautet? Und der SCL Compiler optimiert sehr wohl.
Beispiel bitte mal in AWL programmieren:
Code:
FUNCTION FC10 : VOID

VAR_IN_OUT
    data : STRUCT
        i1 : INT;
        i2 : INT;
        i3 : INT;
    END_STRUCT;
END_VAR

VAR_OUTPUT
    i1 : INT;
    i2 : INT;
    i3 : INT;
END_VAR

BEGIN

i1 := data.i1;
i2 := data.i2;
i3 := data.i3;

END_FUNCTION

Um aber in allen Fällen schnelleren/kleineren Code zu generieren, ist aber nicht der Hauptgrund um SCL zu verwenden. Der Code ist im Vergleich zu AWL lesbarer, gerade wenn mit komplexen Datentypen gearbeitet wird (struct, arrays).

Und die Siemens Dokumente zu den 1200/1500 sagen dir genau gar nichts was da im Hintergrund abläuft.
 
Ne, da hast du mich falsch verstanden. Das ist kein Problem, ich meinte eher: Mit SCL holt man bei der S7-1500 auch den letzten Ticken Performance raus.
Das war bei der S7-300 eher AWL.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ne, da hast du mich falsch verstanden. Das ist kein Problem, ich meinte eher: Mit SCL holt man bei der S7-1500 auch den letzten Ticken Performance raus.
Das war bei der S7-300 eher AWL.

Und wenn man dir bei der S7-300 AWL vorenthalten hätte und du nicht hättest sehen können was aus SCL wird, dann wäre es da auch das Beste. Bei der S7-300/400 ist nunmal die unterlagerte Sprache AWL (MC7), was soll der Compiler denn anderes generieren als AWL (genaugenommen wird an manchen Stellen sogar MC7 erzeugt)? Die Aussage "SCL bei der S7 ist nicht zu empfehlen weil AWL erzeugt wird" ist absoluter Blödsinnn.
Übrigens gibt es bei der 1500 zwischen SCL und FUP kaum einen Unterschied, wenn du in SCL die Option ENO setzen aktivierst, denn nur dann ist die Funktion vergleichbar
 
Zurück
Oben