Wie muss ich das in AWL schreiben?

Tmbiz

Level-2
Beiträge
642
Reaktionspunkte
21
Hallo, ich habe nur sehr wenig Erfahrung in AWL aber ich soll es in AWL schreiben. Daher mal eine etwas "doofe" Frage.

Ich habe 3 Eingänge und eine Ausgang.

Der Ausgang soll 1 sein wenn Eingang 1 oder Eingang 2 auf 1 sind. Aber nur wenn Eingang 3 auf 1 ist.

If (1 oder 2) and 3 -> Ausgang 1 = high

Wie kann man das in AWL schreiben?
 
Als grundsätzlichen Tipp kann ich dir dieses Referenzhandbuch empfehlen:
https://support.industry.siemens.co...ungsliste-(awl)-für-s7-300-400?dti=0&lc=de-WW

Für deine Frage findest du dort einige Beispiele. Bestimmt hilft das Dokument auch in Zukunft weiter.

Auf deine Frage bezogen, wäre Folgendes möglich, sofern kein exklusives Oder eingesetzt werden soll:

Code:
U(          
O     E      0.0
O     E      0.1
)     
U     E      0.2
=     A      0.0
 
Ah ok. TIA hatte die Klammern erst nicht gefressen und da dachte ich man müsse da anders schreiben. Jetzt hat es geklappt.

Danke
 
anstatt dieser unsaeglichen IF THEN ELSE Geschichte
Ja, solche IF... sind schneller hingetippselt als das Gehirn eingeschaltet, da fällt manchem gar nicht auf, daß die IF-Formulierung nur unvollständige Logik ist.

Der Ausgang soll 1 sein wenn Eingang 1 oder Eingang 2 auf 1 sind. Aber nur wenn Eingang 3 auf 1 ist.
entspricht:
Code:
U(
O Eingang1
O Eingang2
)
U Eingang3
= Ausgang

If (1 oder 2) and 3 -> Ausgang 1 = high
Vorsicht mit IF-Formulierungen. Diese Formulierung hier ist nicht das Selbe wie die verbale Aufgabenstellung oben, sondern bedeutet:
Code:
U(
O Eingang1
O Eingang2
)
U Eingang3
S Ausgang

Harald
 
Ja, solche IF... sind schneller hingetippselt als das Gehirn eingeschaltet, da fällt manchem gar nicht auf, daß die IF-Formulierung nur unvollständige Logik ist.


entspricht:
Code:
U(
O Eingang1
O Eingang2
)
U Eingang3
= Ausgang


Vorsicht mit IF-Formulierungen. Diese Formulierung hier ist nicht das Selbe wie die verbale Aufgabenstellung oben, sondern bedeutet:
Code:
U(
O Eingang1
O Eingang2
)
U Eingang3
S Ausgang

Harald


Ah ok. Danke für den Hinweis.
 
Moin Harald!

Ja, solche IF... sind schneller hingetippselt als das Gehirn eingeschaltet, da fällt manchem gar nicht auf, daß die IF-Formulierung nur unvollständige Logik ist.

entspricht:
Code:
U(
O Eingang1
O Eingang2
)
U Eingang3
= Ausgang


Vorsicht mit IF-Formulierungen. Diese Formulierung hier ist nicht das Selbe wie die verbale Aufgabenstellung oben, sondern bedeutet:
Code:
U(
O Eingang1
O Eingang2
)
U Eingang3
S Ausgang

Harald

Genau, Harald, so etwas sieht man im Forum immer wieder, z.B. ...

...
Was meinst Du mit: "wenn a_1 oder (OR) b_1 TRUE = c_1 TRUE" ???

a) if a1=True or b1=True then c1=True ' was soll im Else-Fall passieren? nichts?
oder
b) c1 = a1 or b1 ' eine schlichte OderVerknüpfung mit anschliessender, bedingungsloser Wertzuweisung
oder
c) ... ?
...

"Was soll im Else-Fall passieren? nichts?" - das ist das, was im Eifer des Gefechts leicht übersehen wird.
Habe (leider) schon in ProgrammierKursen erlebt, dass als Anwendung für IF-Abfragen gerne "ausgerechnet" solche Beispiele genommen werden, die sich eigentlich nur zum schlichten Ausrechnen aufdrängen, aber kaum die Anwendung einer IF-Abfrage rechtfertigen.
Anscheinend haben viele, die in "HochSprache" denken, logische Verknüpfungen nur im Zusammenhang mit IF-Abfragen (bzw. als AbbruchBedingungen wie in DO WHILE ... oder LOOP UNTIL ...) kennengelernt und können sich nicht vorstellen, das VerknüpfungsErgebnis einer Variablen zuzuweisen.

Wofür werden in ...
Code:
 U(
 O Eingang1
 O Eingang2
 )
 U Eingang3
 = Ausgang
... die Klammern gebraucht? Sind die Anweisungen U( und ) für die Umwandlung in KOP, FUP, ... erforderlich? Für AWL sind sie nicht nötig.
Gruss, Heinileini
 
Zuletzt bearbeitet:
Wofür werden [...]
... die Klammern gebraucht? Sind die Anweisungen U( und ) für die Umwandlung in KOP, FUP, ... erforderlich? Für AWL sind sie nicht nötig.
Ja, die werden für die FUP/KOP-Darstellbarkeit gebraucht, und damit es eine UND-Verknüpfung bleibt falls jemand noch ein "U irgendwas" davorschreibt.

Es kann nicht schaden, wenn man AWL-Verknüpfungen immer so schreibt, daß sie in FUP/KOP darstellbar sind, inklusive im Spezialfall überflüssiger Klammern, da wird das ganze schnell überprüfbar. Besser als zu wenige oder wie meistens zu viele Angst-Klammern zu setzen.

Harald
 
Zurück
Oben