Problem mit AWL

Marius

Level-1
Beiträge
13
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Problem.JPG
Hallo Zusammen,

ich schreibe demnächst Regeltechnik-Prüfung und habe ein Problem mit der Erstellung einer AWL (--> Anhang). HAbe mir schon ein Prog runtergeladen aber erfolglos... Könnt Ihr mir vielleicht helfen ?

Gruß

Marius
 

Anhänge

  • Problem.JPG
    Problem.JPG
    24,8 KB · Aufrufe: 93
Hallo Marius, so müsste es gehen:

Code:
      U(    
      O     E      0.1
      O     E      0.2
      )     
      UN    E      0.3
      =     L     20.0
      U     L     20.0
      U(    
      O     E      0.4
      O     E      0.5
      )     
      =     A      0.1
      U     L     20.0
      U     E      0.6
      =     A      0.2

Gruß
raika
 
Das ist ja ein perfekter Hausaufgabenservice!

Man muss nur mal irgendwas runterladen, feststellen das es nicht funktioniert und ohne den eigenen Kopf zu benutzen, bekommt man sofort eine Lösung.
 
Hallo dotzi,

Das ist ja ein perfekter Hausaufgabenservice!

Man muss nur mal irgendwas runterladen, feststellen das es nicht funktioniert und ohne den eigenen Kopf zu benutzen, bekommt man sofort eine Lösung.

... das würde ich nicht so eng sehen. Such mal unter dem Begriff KOP und Du wirst sehen, das viele davon nicht wissen wollen oder verstehen.
Ein Programm vom Grafikmodus in AWL umzudenken und die richtigen Klammern zusetzen oder Schmiermerker zu verwenden, muss auch gekonnt sein.
Ich denke schon, dass dies einem Anfänger schwer fällt.
Auch kommt es ja oft auf den Lehrer an, der einem so etwas beibringt.

Und schließlich muß man ja auch mit dem Internet umgehen können und sich im Forumshandling bewähren, um eine Lösung zu bekommen.;)

Gruß
raika
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Naja, trotzdem gabs die Lösung ohne eigenen Lösungsvorschlag.

Und für mich sieht die Grafik im ersten Post auch nur nach gescannter Aufgabenstellung aus. Mir fehlt der Beweis, dass sich Mühe gegeben wurde.

Die Frage ist doch ob es Marius gelingen wird die nächste Aufgabe selbst zu lösen. Ich wünsche es ihm.

in diesem Sinne :cool:
 
Du hast recht...was helfen die Lösungen wenn er es in der Prüfung nicht hinbekommt.

Ich versuche mal die vorgehensweise zu erklären.

Also Kontakte die Parallel sind werden ODER verknüpft.
Kontakte in Reihe werden UND verknüft. Das ist klar.

Dann versucht man die Schaltung in logische Teilbereiche zu unterteilen und die Zwischenergebnisse merkt man sich in Merkern oder wie hier in Lokalvariablen.
In diesem Fall merkt man sich den Zustand der Schaltung nach dem "nicht E0.3" in einem Merker (L 20.0).
Die beiden Ausgänge sind wieder zwei eigene Teilbereiche.
Nun ersetzt man die erste Teilbereichsschaltung gegen den Merker und verknüpt diesen dann weiter. Hier z.B L20.0 UND E0.6 = A0.2. Der Zustand ist dann der Ausgang A0.2
Aus der Parallelschaltung mit dem E0.4 / E0.5 könnte man wiederum einen Merker bilden. So etwa E0.4 v E0.5 = M1.0
Wenn man dann den Ausgang A0.1 beschreiben wollte, könnte man schreiben.
L 20.0 UND M1.0 = A0.1
 
Nochmal Hallo Zusammen !

Das Problem an der ganzen Sache liegt eignetlich nur darin begraben dass ich nicht weiß wie man zwei Ausgänge in eine AWL implementiert ohne ein L zu benutzen (das haben wir nie behandelt). Bis zu "=A 0.1" isses kein Problem aber dann kommt da die Abzweigung runter zu "A.02". Habs mit WinSPS-S7 (keine Abzweigung möglich) und mit LogoSoft (keine AWl möglich) aber bei beiden hats nicht geklappt.

@Dotzi : Vielen Dank für dein neunmalkluges Gesülz, was keinem in irgendeiner Weise weiterhilft.
 
Das bedeutet ich fange nach "=a0.1" nochmal neu an und gib ihm den weg von links nach rechts "=a0.2" neu vor ?
 
Genau, aber das ist nicht besonders elegant.

Und in einer Prüfung hast Du mehr möglichkeiten einen Flüchtigkeitsfehler zu machen, weil du einfach mehr denken musst und es dauert länger.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hausaufgabe

Hier mal was ohne Klammern:
Wegen der Übersichtlichkeit kann man auch anstatt der ersten 3x A 0.2 einen Merker oder lokalen Merker nehmen.
Kanns leider nicht testen aber sollte schon funktionieren.

OE 0.1
O E 0.2
UN E 0.3
= A 0.2
O E 0.4
O E 0.5
U A 0.2
= A 0.1
U A 0.2
U E 0.6
= A 0.2
 
Klar das geht auch! Aber eleganter finde ich das mit der Doppelzuweisung auch nicht.
Also so eine Doppelzuweisung wird dem Lehrer bestimmt nicht gefallen.
Jedenfalls hat er dann bewiesen dass er das mit der zyklischen Abarbeitung verstanden hat. :D
 
Das ist

nicht nur 'uneleganter', das ist, ( *SORRY* ) Müll. Die SPS ist doof und hörig, bei der gilt immer: Letzter Befehl ist richtig.

Das heißt, dass du 10x 10x 10x dem Ausgang sagen kannst, dass der Ax.x High ist, wenn am ende EIN !! LOW steht, hat alles vorher verloren.

Ich würde eher nicht mit Lokalvariablen agieren, nimm Merker, benuzte das komplette Byte für einen FC, einenProduktionasabschnitt, eine Maschine. Das macht Deine Progs sauber und übersichtlich, vor allem überlistest Du Deinen eigenen Schweinehund...

Ok, da muss man ein wenig reinwachsen, aber je mehr Du strukturell denkst, desto leichert wisrst du auch Fehler finden ( und dich umso mehr ärgen, wenn mal wieder einer einfach was reingehackt hat und dich durch nen plöhhten Zahlendreher 3 h beschaäftigt...)

Greetz

Noch was:
A) es ist einfacher, wenn du die 'FUP- Teile' mit ner Leerzeile trennst
B) Mit Selbssthaltung und so, arbeite dich da mal in SR- Flip Flops ein, macht die Sache 1000 mal stressfreier.

Da liegt dann auch der Hund mir der Abneigung vieler Programmierer gegenüber KOP. Man wurstelt im Speicher rum und versucht die Strippen mit der Maus nachzuziehen, das Verständnis der Digitaltechnik und die Möglichkeiten der SPS verstecken sich dann gaaanz schnell..

(Ausnahme: Easy, aber das hatten wir ja schon an anderer Stelle..)

So, Schluß..
 
Zuletzt bearbeitet:
Das ist

nicht nur 'uneleganter', das ist, ( *SORRY* ) Müll. Die SPS ist doof und hörig, bei der gilt immer: Letzter Befehl ist richtig.

Das heißt, dass du 10x 10x 10x dem Ausgang sagen kannst, dass der Ax.x High ist, wenn am ende EIN !! LOW steht, hat alles vorher verloren.

Ich würde eher nicht mit Lokalvariablen agieren, nimm Merker, benuzte das komplette Byte für einen FC, einenProduktionasabschnitt, eine Maschine. Das macht Deine Progs sauber und übersichtlich, vor allem überlistest Du Deinen eigenen Schweinehund...

Ok, da muss man ein wenig reinwachsen, aber je mehr Du strukturell denkst, desto leichert wisrst du auch Fehler finden ( und dich umso mehr ärgen, wenn mal wieder einer einfach was reingehackt hat und dich durch nen plöhhten Zahlendreher 3 h beschaäftigt...)

Greetz

Noch was:
A) es ist einfacher, wenn du die 'FUP- Teile' mit ner Leerzeile trennst
B) Mit Selbssthaltung und so, arbeite dich da mal in SR- Flip Flops ein, macht die Sache 1000 mal stressfreier.

Da liegt dann auch der Hund mir der Abneigung vieler Programmierer gegenüber KOP. Man wurstelt im Speicher rum und versucht die Strippen mit der Maus nachzuziehen, das Verständnis der Digitaltechnik und die Möglichkeiten der SPS verstecken sich dann gaaanz schnell..

(Ausnahme: Easy, aber das hatten wir ja schon an anderer Stelle..)

So, Schluß..


OkOk du hast mit Sicherheit recht... aber ich muss ganz ehrlich sagen, das ich mit dem ganzen Regeltechnik Zeug überhaupt nicht am Hut habe... ich möchte nur diese madige Prüfung bestehen und da mach ich lieber Sachen die ich persönlich nachvollziehen kann anstatt mich mit viel Zeitaufwand (den ich angesichts der Prüfung nicht habe) in die Materie einzuarbeiten.

Nix für Ungut

Trotzdem Danke !

Marius
 
Zuviel Werbung?
-> Hier kostenlos registrieren
SPS ist nicht doof. Und jeder befehl ist richtig.:ROFLMAO:
Was hast Du gegen Lokalvariablen?
Übrigens seid Ihr jugendlichen Programmierer alle verwöhnt durch Unmengen Merker die zur Verfügung stehen:ROFLMAO: :ROFLMAO:

Rudis Code ist schon ok (Edit: damit Meine ich "Nicht Falsch"), aber leider auch "zu gut" für jeden, der nur mal ebend mit einer S7-SPS zu tun hat, also leider wieder Mist :ROFLMAO:! Zumindest für Marius ungeeignet und ob seine Lehrer das raffen und die volle Punktzahl geben???

@Rudi

Du magst zwar Recht haben, mit den Unmengen an Merkern, aber lieber 2 Merker mehr und jeder kapierts, selbst wenn man es kürzer kann, oder? Jedenfalls in diesem Fall. Ansonsten darf man schon mal überlegen, Programmcode möglichst kurz und knackig zu fassen.

Ich finde aber dennoch, jeder Computer, einschließlich SPS ist doof, zumindest, was seine Reaktion angeht, er macht immer, was ihm aufgegeben wird. Das das oft jeder menschlichen Logik entbehrt, dafür kann aber der Computer auch nichts.
 
Zuletzt bearbeitet:
Diese Lösung finde ich ganz schlecht. Das erste was ich gelernt habe war, Ausgänge in einem Programm nie mehrfach zuzuweisen. Dann sollte man schon besser mit Merkern arbeiten, um Zwischenergebnisse zu speichern.

Gruß Kai

Hallo Kai,

da stimme ich dir voll zu!

Solche Unsauberkeiten in einem Programm kann man übrigens mit meinem kostenlosen S7-Tool (Download - Bereich meiner Homepage) aufspüren!

[Werbung OFF]

CU

Jürgen.
 
Zurück
Oben