Zählfunktion S7

1schilcher

Level-1
Beiträge
137
Reaktionspunkte
2
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Leute, steh vor einem weiteren Problem. Habe einen Wasserzähler der 100 Impulse pro Liter zählt. Ich habe einen Zähler der Hundert Impulse zählt - sich nach 100 Impulsen zurücksetzt und gleichzeitig einen anderem Zähler sagt das 1 Liter Wasser verbraucht ist. Das ganze funktioniert super. Das einzige Problem das ich habe ist das die Zähler bei der S7 max.999 Impulse zählen kann. (oder gibts eine Möglichkeit das er mehr zählt) Wie kann ich es machen das wenn der erste Zähler einen Liter meldet ich in einem MW oder DW immer +1 dazuzähle. Vielleicht hat jemand ein Beispiel. DANKE.
 
Hallo.

Schreib doch einfach folgendes:

U E0.0 // Impuls vom Wasserzähler
ZV Z1
L Z1
L 100
>=I
SPBN Ncou
Set
R Z1 // Reset Zähler 1
L DB1.DBW0 // Anzahl der Liter
L 1 // plus 1 Liter
+I
T DB1.DBW0
Ncou:

Hiermit kannst du auch mehr als 999 Liter zähler nämlich 32767 Liter. Willst du noch mehr Liter zähler so nimm doch einfach ein Doppelwort.
 
Die Systemzähler sind leider nicht optimal. Eine alternative ist es, durch dem Zuzählenden Signal eine Flanke zu erzeugen, und damit einen DINT-Wert entsprechend zu erhöhen mit einen Additionsanweisung. Zurücksetzen des Wertes kann mit einen Transferbefehl (MOVE). Der Zählerwert (DINT) kann mit Vergleichsbefehle ausgewertet werden.
 
Zurück
Oben