Funktionsbaustein -Zähler- für Moeller Steuerung erstellen

bayerntobi

Level-1
Beiträge
9
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich will einen Funktionsaustein erstellen mit den Input-Variablen UP, DOWN, "variable" und der Output-Variablen "Zaehlwert". Dabei soll der Zähler folgendes leisten:

Beim kurzen Drücken des Tasters UP zählt der Zähler um ein Inkrement hoch. Wird der Taster länger als 2 s gedrückt, zählt der Zähler mit einer Taktfrequenz von 1 Hz hoch. Der obere Grenzwert ist variable1.
Beim kurzen Drücken des Tasters DOWN zählt der gleiche Zähler um ein Inkrement nach unten. Wird der Taster länger als 2 s gedrückt, zählt der Zähler mit einer Taktfrequenz von 1 Hz runter. Der untere Grenzwert ist 0.

Im Anhang befinden sich von mir 2 Programmierversuche in CFC, die beide nicht funktionsfähig sind.
Bei test1 geht das Rückwärtszählen nicht, weil der Baustein CTD nicht kleiner als 0 zählen kann. Da mir keine Lösung zu dem Problem eingefallen ist, habe ich es bei test2 mit dem Baustein CTUD, der vorwärts- und rückwärtszählen kann, versucht. Allerdings habe ich hier das Problem, dass der Taktgeber aufgrund des OR inaktiv bleibt, wenn ich UP auf TRUE setze. Ich weiß also bei test2 nicht, was ich machen muss, um sowohl das direkte als auch das frequenzabhängige Zählen hinzubekommen.

Ich benötige daher Hilfe in Form von Vorschlägen.


MfG
Tobi
 

Anhänge

  • test1.pdf
    8,4 KB · Aufrufe: 25
  • test2.pdf
    8,1 KB · Aufrufe: 18
gibt es bei dir da (kenne die software nicht persönlich, nur vom hören sagen) addierer und subtrahierer? dann spar dir den zähler und inkrementiere und dekrementiere selberst in eine zahl die du dann mit vergleichern begrenzen kannst und die auch schalten und walten können
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Bevor du den Up-Eingang ins das Or(2) schickst, könntest du es mit Tastzeit.Q verANDNen oder RTRIGern. Sonst kann der Zähler keine Flanke erkennen, weil der Eingang immer auf TRUE steht.
Dein Taktgeber dürfte nur funktionieren mit ANDN Taktgeber.Q, weil der Ausgang nur kommen kann, wenn der Eingang TRUE ist?

Gilt analog für down, dies nur als "Anschubser" für deinen weiteren Experimente.

Habe aber Probleme mit CFC-Lesen. Sonst wandle den Code in AWL, da seh ich klarer.
 
Zurück
Oben