Zählerfunktionen in Kontaktplan KOP
Bei Speicherprogrammierbaren Steuerungen werden eine Vielzahl von Zählern eingesetzt. Im Grunde könnte man jeden Produktionsschritt zählen und auswerten. Für Zähler sind in der CPU ein Speicherbereich reserviert, womit auch die Anzahl der einsetzbaren Zähler in einem Programm begrenzt wird. Wieviele Zähler benutzt werden können, sind aus den Referenzhandbüchern der Geräte zu entnehmen. In der Darstellungsart KOP wird die Verwendung von bis zu 256 Zählern unterstützt.
In der Programmiernorm 61131-3 wurden die Zähler CTU (Count-Up), CTD (Count-Down) und CTUD (Count-Up-Down) als Standard festgelegt. Daneben haben die meisten Hersteller von SPS-Programmiersoftware eigene Zähler implementiert. Wenn man in Step7 die Zähler nach der Programmiernorm 61131-3 benutzen möchte, muss man folgende Systembausteine verwenden:
- SFB0: Für CTU
- SFB1: Für CTD
- SFB2: Für CTUD
Daneben sind in Step7 drei firmeneigene Zähler implementiert, die im Handling etwas einfacher sind. Dabei handelt es sich um folgende Zähler:
- Z_VORW: Vorwärtszähler
- Z_RUECK: Rückwärtszähler
- ZAEHLER: Vorwärts- und Rückwärtszähler
Z_VORW und Z_RUECK haben jeweils einen Eingang für den Zählimpuls, um Vorwärts bzw. Rückwärts zu zählen. Der Baustein ZAEHLER hat 2 Eingänge, ein zum Vorwärtszählen und einen zum Rückwärtszählen. In der Darstellungsart KOP wird für Zähler die Blockdarstellung aus FUP benutzt und sehen wie nachfolgend abgebildet aus.
Die Ein- und Ausgänge der Zähler
Ein Zähler hat mehrere Eingänge und ist wie auf den Bildern dargestellt aufgebaut. Die Bedeutung wird ausführlich unter Zähler programmieren erläutert. Daher hier in Kurzform:
- Zx: Zähleroperand, z.B. Z3, Z10 usw.
- Typ des Zählers: Im Baustein oben mittig steht der Typ des Zählers, also ZAEHLER, Z_VORW, Z_RUECK.
- ZV: Eingang zum Vorwärtszählen.
- ZR: Eingang zum Rückwärtszählen.
- S: Eingang zum Setzen des Zählers auf den Zählwert (ZW).
- ZW Eingang für Zählwert, zum Setzen des Zählers auf eine Voreinstellung.
- R: Eingang zum Rücksetzen des Zählers.
- DUAL Zählerstandausgabe dualcodiert.
- DEZ: Zählerstandausgabe dezimalcodiert.
- Q: Zählerausgang zum Abfragen des Zählers.
Zählerausgang Q
Führt das Signal 1 bei Zählerstand über 0. Kann über Zähleroperand abgefragt und in Verbindung mit Verknüpfungen verwendet werden.
DUAL- und DEZ-Ausgang
Ausgabe des aktuellen Zählerstands.
Setzeingang für Zähler
Zum Setzen des Zählers auf den Zählwert (ZW-Eingang).
Zählwert eingeben
Der Zählwert wird über den Eingang ZW eingegeben. Beispiele:
- C#333, Eingabe als Konstante
- W#16#333, Eingabe BCD-codiert
Kann auch mit dem Ladebefehl L in den Akku 1 geladen werden, z.B. L C#999 oder L W#16#999. Vor dem Setzen sollte man zuerst in den Akku laden. Ladbar auch über Eingangs-, Ausgangs-, Merker-, Lokaldaten- oder Datenwörtern.
Der maximale Eingabewert für den Zählwert ist 999, da die Zahl als BCD-Code eingegeben wird und nur 3 Tetraden benutzt werden, somit 3x die Ziffern 0 - 9.
Zähler rücksetzen
Darüber kann der Zähler rückgesetzt werden. Der Zählerstand und der Ausgang werden dadurch 0. Ein Zähler ist rücksetzdominant.
Vorwärts- und Rückwärtszählen
Die Impulse zum Vorwärts und Rückwärtszählen wird über die Eingänge ZV und ZR eingegeben. Maximale Zählerstand ist 999.