Flankenauswertung in Codesys

Zuviel Werbung?
-> Hier kostenlos registrieren
Sorry, aber das ist immer noch völliger Quark. Kommentare wären gut, dann wird vllt. schneller klar, dass der Code bei #8 nicht nur besser aussieht, sondern auch funktional....

Wenn's denn unbedingt AWL sein muss, dann wäre es klug und schnell die Mnemonik der Siemens-Logik rauszusuchen und auf Codesys anwenden. Wie klingt das?

----

Da hat der Klügere wohl ... ;-)
Pädagogisch unklug :sneaky:
sorry.. bin immer am lernen :)
 
CAL soll nur ausgeführt werden, wenn die Anlage_on nicht auf true gesetzt ist.
Timer dürfen nicht übersprungen sondern müssen immer ausgeführt werden, damit sie den Flankenwechsel von 0 auf 1 an Ihrem Eingang erkennen können. IN sorgt dann dafür, ob Q auf 0 oder (nach Zeitablauf) auf 1 ist.

Typischer Fehler der Hochsprachenprogrammierer.
;)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
CAL soll nur ausgeführt werden, wenn die Anlage_on nicht auf true gesetzt ist.
Dieser komplette Aufruf des Timers
Code:
CAL  GVL.time_count(
  IN := GVL.Schalter_on,
  PT := T#1S
  Q  => GVL.lights)
ist übrigens das Gleiche wie diese zerteilte Version:
Code:
LD  GVL.Schalter_on
ST  GVL.time_count.IN

CAL  GVL.time_count(
  PT := T#1S)

LD   GVL.time_count.Q
ST   GVL.lights
 
Timer dürfen nicht übersprungen sondern müssen immer ausgeführt werden, damit sie den Flankenwechsel von 0 auf 1 an Ihrem Eingang erkennen können. IN sorgt dann dafür, ob Q auf 0 oder (nach Zeitablauf) auf 1 ist.

Typischer Fehler der Hochsprachenprogrammierer.
;)

Ah, komplizierter als Hochprogrammiersprachen.
 
Zurück
Oben