# Einsteigerfrage zu AWL-Programmiersyntax



## thf (13 September 2006)

Hallo zusammen,
ich bin SPS-Anfänger und arbeite mich gerade in die SPS-Programmierung ein. Bei folgender Anweisungsliste stellen sich bei mir zwei Fragen, die ich mir nicht erklären kann.
1. Warum faßt man das ODER zwischen E4.1 und E0.5 nochmal mit einer Klammer zu einem UND zusammen? Kann man das U und die Klammer nichtweglassen?
U(
UN E 0.0
UN M 1.0
U E 0.1
S M 2.0
U(
O E 4.1 <----
O E 0.5 <----
)
R M 2.0
U M 2.0
)
UN E 0.2
= A 4.0

2. Frage
Kann man nicht einfach auch die Klammerung mit dem ersten U weglassen,und so schreiben:
UN E 0.0
UN M 1.0
U E 0.1
S M 2.0
U(
O E 4.1
O E 0.5
)
R M 2.0
U M 2.0
UN E 0.2
= A 4.0

Vielen Dank schonmal

Gruß 
Thomas


----------



## kpeter (13 September 2006)

Hallöchen

ich hoffe das reicht dir


UN E 0.0
UN M 1.0
U E 0.1
S M 2.0 // nach einen VKE Abhängigenbefehl wird das VKE neu angefangen

U E 4.1 // somit gibts hier keine verküpfung mit denn oben     
           // geschriebenen eingängen
           // und oder oder ist als erster befehl egal
O E 0.5
R M 2.0

U M 2.0 // nach einen VKE Abhängigenbefehl wird das VKE neu angefangen
UN E 0.2
= A 4.0


----------



## thf (13 September 2006)

Ja, das hilft mit schonmal weiter.

Vielen Dank


----------



## Question_mark (13 September 2006)

*Da hat aber einer Spass an Klammern gehabt*

Hallo,



			
				thf schrieb:
			
		

> 1. Warum faßt man das ODER zwischen E4.1 und E0.5 nochmal mit einer Klammer zu einem UND zusammen? Kann man das U und die Klammer nichtweglassen?



Wer hat denn den Quatsch geschrieben? In STEP5 und STEP7 kannst Du die Klammern komplett weglassen, die Logik bleibt die gleiche...
Da war wohl einer mit dem Klammerbeutel reichlich gepudert worden  



			
				thf schrieb:
			
		

> 2. Frage
> Kann man nicht einfach auch die Klammerung mit dem ersten U weglassen,und so schreiben:



Das war nur in der STEP3 Syntax so erforderlich, ich denke mal als Anfänger wirst Du nicht mit STEP3 anfangen. Also weg mit dem Klammerblödsinn in Deinem Code-Beispiel.

Gruss

Question_mark


----------



## Hartmut Lux (14 September 2006)

Die Antwort ist ganz einfach: Die Syntax der Klammerfolge enstpricht einem Netzwerk, welches sich von AWL in FUP bzw. KOP zurückübersetzen läßt. IN AWL kannst Du die Klammern weglassen. Die AWL Sytax für die Konvertierung nach FUP/KOP ist vorgeschrieben, hierbei muß sowohl die Veroderung als auch das SR-FlipFlop geklammert werden.

AWL kann alle S7 Befehle gemäß ihrer Reihenfolge, KOP u. FUP nur die, die Du malen kannst:-D (kleiner Spaß).


----------



## Question_mark (14 September 2006)

*Unsinnige Klammern*

Hallo,



			
				Hartmut Lux schrieb:
			
		

> welches sich von AWL in FUP bzw. KOP zurückübersetzen läßt.



Diese Aussage lässt den Schluss zu, dass die Klammern nur für die Darstellung in FUP oder KOP erforderlich ist. Dem ist nicht so....
Auch in AWL sind die Klammern erforderlich (entsprechend der erforderlichen Programmlogik), aber eben nicht in diesem Beispiel von thf, da sind die einfach völlig dumm und überflüssig.

Also, das Programmbeispiel von thf lässt sich auch ohne den Klammerblödsinn in FUP und KOP korrekt darstellen, zumindest in STEP5.
STEP7 habe ich mir dann erspart, da ich davon ausgehe, dass es da auch korrekt funktioniert (Mann, was bin ich doch für ein fauler Hund...).  

Gruss

Question_mark

PS : Hinzugefügt um Missverständnisse zu vermeiden : (entsprechend der erforderlichen Programmlogik)


----------



## Pilami (15 September 2006)

Hallo
es ist wohl richtig das die KLammern in AWL nicht nötig sind, wohl aber in FUB/KOP.
Jetzt lasst mal die KLammern in AWL weg und portiert das Ganze in FUB --> funktioniert. Jetzt das Ganze wieder rückwärts, und schwupp sind die Klammern wieder da  .
Also wird es in dem Fall so sein, das der Programmschnippsel zuerst in FUB/KOP existiert hat und dann erst in AWL umgesetzt wurde. Das passiert sehr oft.


----------



## Woldo (15 September 2006)

> Also, das Programmbeispiel von thf lässt sich auch ohne den Klammerblödsinn in FUP und KOP korrekt darstellen, zumindest in STEP5.
> STEP7 habe ich mir dann erspart, da ich davon ausgehe, dass es da auch korrekt funktioniert (Mann, was bin ich doch für ein fauler Hund...).


 
Bei Step7 werden die Klammern für die Umschaltung auf FUP/KOP benötigt.


----------



## thf (22 September 2006)

Danke nochmal an alle, jetzt hab ichs verstanden. 
 Das war übrigens eine Musterlösung eines Professors für die direkte (!) Programmierung in AWL. Blödsinn. Naja.
 Gibt es zwischen der AWL-Syntax von STEP5 und STEP7 große ubterschiede, wo kann ich diese nachlesen?

 Danke für Eure Hilfe


----------



## volker (22 September 2006)

im grossen und ganzen ist das gleich. die befehle heissen teilweise anders. die s7 kennt mehr befehle. s5 kann nur innerhalb des gleichen netzwerk springen. die befehle, die eine cpu kennt, findest du in der operationsliste


----------



## Question_mark (22 September 2006)

*Professoraler Blödsinn*

Hallo,



			
				thf schrieb:
			
		

> Das war übrigens eine Musterlösung eines Professors für die direkte (!) Programmierung in AWL. Blödsinn. Naja.



Wenn das tatsächlich die Musterlösung für die direkte Programmierung in AWL war (und nicht (wie von einigen hier vermutet) Reste einer Umsetzung von FUP/KOP nach AWL), dann würde ich die Vorlesungen dieses Profs lieber nicht mehr besuchen oder sogar die Hochschule wechseln. Wie kann man in nur 14 Zeilen Code letztendlich 4 völlig überflüssige Zeilen einbauen    

Eben Blödsinn, Jaja....

Gruss

Question_mark


----------



## thf (23 September 2006)

*Neue Frage zu S7-Graph*

Hallo,
ihr habt mir so gut geholfen, dann möchte ich noch eine Frage loswerden. Auch wenn es nicht mehr zum Titel past.

Ich habe hier eine Ablaufkette vor mir liegen, die mit S7-Graph erstellt wurde. Nun werden hier zu einigen Schritten Timer gestartet. Leider konnte ich keine Doku finden, die mir die den Syntax dieser Timeraufrufe näher bringt. Habt ihr einen Tip, wo ich das nachlesen kann?

z.B.

S1   TL     T1
               *Zeitangabe*

Was das ganze macht habe ich aus dem Zusammenhang erkannt, aber was die einzelnen Buchstaben bedeuten nicht.

S ist wohl Startbedingung für Schrittanfang? (aber was soll die 1 danach?)
TL sagt mir garnichts.
T1 ist wohl der Name des Timers

Danke für eure Hilfe

Hab nur das hier gefunden, enthölt aber keine Erklärung der Symbole:
http://support.automation.siemens.c...iteid=cseus&query2=&modelled=S7-GRAPH&lang=de

Gruß

Thomas


----------

