Übersicht über Bitverknüpfungen in FUP
Bei Bitverknüpfungen handelt es sich um die Verarbeitung der booleschen Signale 0 und 1, die man mit einem Bit darstellen kann. Dabei werden die Signalzustände 0 und 1 ausgewertet und je nach Schaltlogik verknüpft. Jede Verknüpfung führt zu einem Verknüpfungsergebnis VKE, das ebenfalls 0 oder 1 sein kann.
Auch wenn die Programmierung der Schaltlogik in FUP erfolgt, so erfolgt die Abarbeitung des Programms durch die SPS in AWL. Dabei wird das Programm zyklisch (wiederholend) und sequentiell, von oben nach unten, Zeile für Zeile, abgearbeitet. Außer bei der Erstabfrage werden die Abfrageoperationen mit dem VKE verknüpft und neu gebildet.
Zu den Bitverknüpfungen gehören folgende Grundverknüpfungen:
- NICHT-Verknüpfung (NOT)
- UND-Verknüpfung (&, AND)
- ODER-Verknüpfung (>=1, OR)
- Exklusiv-ODER-Verknüpfung (XOR)
Mit diesen drei Grundverknüpfungen kann man auch zusammengesetzte Verknüpfungen bilden. Dazu zählen:
- NICHT-UND-Verknüpfungen (NAND)
- NICHT-ODER-Verknüpfungen (NOR)
- NICHT-Exklusiv-ODER-Verknüpfungen (XNOR)
- UND vor ODER-Verknüpfungen
- ODER vor UND-Verknüpfungen
- Exklusiv-ODER vor UND-Verknüpfungen
- Exklusiv-ODER vor ODER-Verknüpfungen
- UND vor Exklusiv-ODER-Verknüpfungen
- ODER vor Exklusiv-ODER-Verknüpfungen
Erfolgt eine Zuweisung mit = oder wird für die Zuweisung ein Konnektor (mit #) verwendet, wird dem Operanden das aktuelle VKE zugewiesen. Bei einer Zuweisung hat der Operand nur solange das Signal des VKE, solange das VKE der Abfrageoperation eine 1 ist. Es gibt auch die Möglichkeit eines speichernden Verhaltens. Hierfür kann man in FUP folgende Bausteine benutzen:
- S (Setzen)
- R (Rücksetzen)
- RS (Setzdominantes Speicherglied mit R- und S-Eingang)
- SR (Rücksetzdominantes Speicherglied mit S- und R-Eingang)
Eine Signalveränderung wird mit den Operationen N und P sowie die POS und NEG erfasst. Mit der Operation SAVE kann man den Freigabeausgang ENO von Bausteinen beeinflussen.
Hinzufügen eines binären Einganges
Ein binärer Eingang wird in FUP über Linien dargestellt. Neue Eingänge werden über das Symbol Binäreingang in der Auswahlliste per Doppelklick oder über das Symbol in der Symbolleiste eingefügt.
Ein Ausgang kann wiederum zum Eingang eines anderen Bausteins führen.
Negieren von Ein- und Ausgängen
Anders als in KOP gibt es in FUP kein Symbol für einen Öffner. Stattdessen werden die Eingänge negiert. Damit wird abgefragt, ob der Operand das Signal 0 führt.
Man kann in FUP auch den Ausgang einer binären Verknüpfung negieren. Wird ein Ausgang negiert und erfolgt dahinter z.B. eine Zuweisung oder das Setzen/Rücksetzen eines Speicherglieds, bedeutet das eine Negation (Invertieren) des VKE.
Konnektor (Merker) im FUP
Konnektoren werden zum Zwischenspeichern des VKE einer vorangegangenen Verknüpfung benutzt. Meistens wird hierfür eine Merkeradresse verwendet. Das Ergebnis kann an einer anderen Stelle im Programm wiederverwendet werden. Ein Konnektor darf nie den Abschluss eines Netzwerks, z.B. in Form einer Zuweisung bilden. Betrachtet man einen Konnektor in AWL, wird hierfür der Befehl einer Zuweisung angezeigt.
Zuweisung im FUP
Eine Zuweisung ist ein Baustein mit dem Zeichen = und bildet in FUP immer den Abschluss einer Verknüpfungskette in einem Netzwerk. Damit wird angegeben, welchem Operanden das Ergebnis des Verknüpfungsergebnisses zugewiesen wird. Es ist auch möglich, das VKE mehreren Operanden zuzuweisen. Hierfür wird eine Abzweigung benötigt, woran man eine erneute Zuweisung hinzufügen kann.
Die SAVE-Box
Mit der Operation SAVE beeinflusst im Statuswort das Bit-Nr. 8. Das ist das BIE-Bit, wodurch angezeigt wird, ob bei der Abarbeitung eines Bausteins ein Fehler auftrat (BIE=0) oder kein Fehler auftrat (BIE=1). Trat ein Fehler auf, wird der Freigabeausgang ENO des Bausteins auf 0 gesetzt. Trat kein Fehler auf, ist das BIE-Bit und somit ENO eine 1.
An einem ENO-Ausgang kann ein anderer Baustein angehängt werden, wodurch die Abarbeitung der nachfolgenden Bausteine über ENO beeinflusst wird. Mit SAVE wird das aktuelle VKE im BIE-Bit gespeichert und somit erhält ENO den Zustand des VKE. Vor der SAVE-Operation könnte man mit SET (1) und CLR (0) das VKE selbst beeinflussen bzw. ändern. So kann man ein Fehlverhalten des Bausteins erzeugen und beobachten, wie sich das Programm dabei verhält.
Auch wird mit der SAVE-Operation das Bit-Nr. 0 (/ER-Bit) nicht zurückgesetzt. Das ist das Erstabfragebit, wodurch die nächste Verknüpfungskette mit einer Erstabfrage beginnt, wenn das /ER-Bit 0 ist. Ist das /ER-Bit auf 1, wird die nächste Abfrageoperation mit dem VKE verknüpft. Manchmal wird die SAVE-Operation auch zum Zwischenspeichern des VKE im BIE-Bit genutzt, um sie wiederherzustellen. Diese Methode wird aber generell nicht empfohlen, da das BIE-Bit vor dem Wiederherstellen durch andere Operationen verändert sein kann.