Aufgaben für S5 100u

S

simo

Guest
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo leute,
ich bin in ausildung und hab ein Problem wo ich nciht weiter komme. Vielleicht bin ich auch falsch an die sache gegangen.

Die Aufgabe ist: 4 kompressoren sollen einen bestimmten Druck halten. Es gibt ein Sensor für zu hohen und Druck und einen für zu niedrigen Druck...
So ist der Druck zu niedrig geht nach 3 sek der erste an , dann 3 sek später der nächste. Ist der Druck dann erreicht, sollen beide weiter laufen. nun ist z.B. der druck zu hoch, dann soll der kompressor ausgehen, der am meisten gelaufen hat (also der erste). Fällt der druck hinwieder, soll dann der angehen, der am wenigstens gelaufen hat, also in dem fall der dritte..



Hier ist mein AWL Code, nur leider wenn alle an sind, geht immer der erste Kompressor wieder aus und man muss vorher alle kompressoren einmal hochfahren, bevor sie alles so machte wie es soll..

E 1.0 = Sensor "Druck zu niedrig"
E 1.1 = Sensor "Druck zu hoch"
E 1.2 = Einschalten
E 1.7 = Reset der Anlage (merker)

A 3.0 = Kompr. 1
A 3.1 = kompr. 2
A 3.2 = Kompr. 3
A 3.3 = Kompr. 4


Code:
      U  E   1.0
      UN E   1.1
      U  E   1.2
      UN M   3.0
      UN M   3.1
      UN M   3.2
      UN M   3.3
      S  M   4.0
      
      U  M   4.0
      U  E   1.0
      L   S5T#3S
      SE T   1
      U  T   1
      S  M   3.0
      R  M   4.0
      
      U  M   3.0
      U  E   1.0
      L   S5T#3S
      SE T   2
      U  T   2
      S  M   3.1
      R  M   4.0
      
      U  M   3.1
      U  E   1.0
      L   S5T#3S
      SE T   3
      U  T   3
      S  M   3.2
      R  M   4.0
      
      U  M   3.2
      U  E   1.0
      L   S5T#3S
      SE T   4
      U  T   4
      S  M   3.3
      S  M   4.0
      
      UN E   1.0
      U  E   1.1
      U  E   1.2
      U  M   3.0
      U  M   3.1
      U  M   3.2
      U  M   3.3
      S  M   5.0
      U  M   5.0
      L   S5T#3S
      SE T   5
      U  T   5
      R  M   3.0
      
      UN M   3.0
      U  E   1.1
      L   S5T#3S
      SE T   6
      U  T   6
      R  M   3.1
      R  M   5.0
      
      UN M   3.1
      U  E   1.1
      L   S5T#3S
      SE T   7
      U  T   7
      R  M   3.2
      R  M   5.0
      
      UN M   3.2
      U  E   1.1
      L   S5T#3S
      SE T   8
      U  T   8
      R  M   3.3
      S  M   5.0
      
      
      U  M   3.0
      =  A   3.0
      
      U  M   3.1
      =  A   3.1
      
      U  M   3.2
      =  A   3.2
      
      U  M   3.3
      =  A   3.3
      
      U  E   1.7
      R  M   3.0
      R  M   3.1
      R  M   3.2
      R  M   3.3
      R  M   4.0
      R  M   5.0
 
Habe deinen code überflogen und da hab ich nichts gefunden wo du überhaupt die Laufzeiten der Antriebe speicherst.
Also schreib dir mal ne Funktion wo du Laufzeiten mitschreibst. (Für dein Übungsprojekt sind wohl Sekunden angemessen). Und dann gleich die nächste Funktion die dir den Antrieb ausspuckt der am längsten und der am kürzesten gelaufen ist.
Strukturiere dein Programm besser und schreib Kommentare rein!

smoe
 
Zurück
Oben