Allgemeines zur Logik
Inhalt
Haftungsausschluss
Auch wenn die Unterlagen mit großer Sorgfalt erstellt und geprüft sind, können Fehler nicht
vollkommen ausgeschlossen werden.
Technische Änderungen bleiben vorbehalten!
Grundsätzliches
- Die Logik des HS/FS arbeitet ereignisgesteuert.
- Sie wird nicht zyklisch abgearbeitet.
- Bei jedem Eintreffen eines Telegramms wird der Logikbaustein neu berechnet. Bausteine, die
zeitgesteuert sind, führen nach Ablauf der eingestellten Zeit eine Neuberechnung durch.
- Der HS/FS hält nach dem Start ein Prozessabbild im Speicher. Dieses wird permanent durch
Abhören des gesamten Telegrammverkehrs des angeschlossenen EIB und der internen Prozesse
gebildet. Während des Betriebs ist ein Scan von Gruppenadressen normalerweise nicht notwendig.
Sollte es notwendig werden, z.B. beim Austausch von EIB-Komponenten, so steht ein Befehl dafür zur Verfügung.
Eine detailierte Beschreibung des
Startverhaltens liegt
vor.
Der HS/FS sendet maximal 20 EIB-Telegramme pro Sekunde (Frequenz) auf den EIB. Liegen mehr
Sendetelegramme an, so werden diese in einer Warteschlange im HS/FS zwischengespeichert. Mit dieser
Frequenz werden die Werte dann auf den EIB gesendet bis die Warteschlange entleert ist. Die Frequenz
kann verändert werden. Der Standardwert beträgt 6 Telegramme pro Sekunde.
Die Frequenz kann unter
Projekt\
EIB-/iETS-Anbindung verändert werden.
Besonderheit der HS/FS-Logik ist, dass jedem Ausgang HS/FS-Befehle zugeordnet werden
können.
Die Befehle werden nur ausgeführt, wenn über den zugehörigen Ausgang ein Telegramm
mit dem Wert ungleich Null gesendet wird.
Einem Baustein können beliebig viele Befehle zugeordnet werden. Diese werden in der Reihenfolge
der Zuordnung abgearbeitet.
Logisch "wahr" und "falsch"
In den Logikbausteinen wird unterschieden zwischen dem Wert Null und dem Wert ungleich
Null des Eingangstelegramms.
Null entspricht Falsch, False oder Aus.
Ungleich Null entspricht Wahr, True oder Ein.
Hinweis: Negative Werte sind ungleich Null und damit Wahr.
Bei der Zuweisung von Kommunikationsobjekten wird nur zwischen den Typen Text und
Numerisch unterschieden. Ein-/Ausgänge vom Typ Text können nur K.-Objekte mit dem
Datentyp 14 Byte zugewiesen werden. Ein-/Ausgänge vom Typ Numerisch können K.-Objekte
mit allen numerischen Datentypen (z.B. 1 Bit, 16 Bit, usw.) zugewiesen werden. Es erfolgt eine
"implizierte Wandlung". Hier gilt die oben beschriebene Definition für "Wahr" und "Falsch". Damit
entfallen Befehle zur Konvertierung. Es gibt Ausgänge, die den Wert - unabhängig von der
Größe der Eingangswerte - auf Null oder Eins reduzieren (Siehe "Belegung der
Ausgänge").
Verknüpfung der Logik-Bausteine
Die Verknüpfung der Logikbausteine kann über Kommunikationsobjekte (interne/EIB) oder
direkt durch die Zuordnung eines Ausgangs zu einem Eingang erfolgen.
Hinweis: Es wird jedoch empfohlen, nach Möglichkeit die Ein-/Ausgänge der Bausteine direkt zu
verbinden.
Jedem Eingang können beliebig viele Kommunikationsobjekte oder Ausgänge zugeordnet werden,
pro Eingang ist jedoch nur ein Fixwert möglich.
Initialwert des Eingangs
Jeder Eingang wird mit einem Initialwert vorbelegt. Dieser Wert wird bei der Logikberechnung
angenommen, wenn der Eingangswert undefiniert ist (z.B. wenn der Eingang nicht belegt ist).
Negieren des Eingangs
Eingangswerte können negiert werden. Der Eingangswert wird zuerst negiert und dann verarbeitet.
Jedem Ausgang können beliebig viele Kommunikationsobjekte oder Eingänge zugeordnet werden.
Alle Zuordnungen erhalten den Wert des Ausgangs.
Beispiel:

Das Ergebnis der Verknüpfung von E1 & E2 wird auf
alle dem Ausgang A1 zugeordneten
Gruppenadressen gesendet.
Initialwert (Startwert) des Ausgangs
Jeder Ausgang wird intern im HS/FS mit einem Initialwert vorbelegt.
Verhalten der Ausgänge (Send, Send by Change, negiert)
Grundsätzlich wird zwischen drei Arten von Ausgängen unterschieden: "Send", "Send by
Change" und "negiert".
Send
Die Ausgänge mit der Kennzeichnung "send" senden bei jedem Telegrammeingang einen Wert
aus. Der Wert ergibt sich aus der Auswertung der zugehörigen Eingangstelegramme durch den
Logikbaustein.
Send by Change ("SbC")
Die Ausgänge mit der Kennzeichnung "send by change" senden nur bei jeder
Ausgangsänderung einen Wert aus. Das bedeutet: Werden die Eingänge mit Werten beschaltet,
deren Auswertung im Logikbaustein eine Änderung des Wertes am Ausgang "send" hervor
ruft, dann wird der Wert am Ausgang "send by change" gesendet. Bleibt der Wert an
"send" erhalten, wird über "send by change" kein Telegramm versendet.
Beispiel: Das Ergebnis einer Verknüpfung hat den Wert 1. Nach Eintreffen eines neuen
Telegramms sowie der Neuberechnung ist das Ergebnis immer noch 1. Über den Ausgang "send by
change" wird jetzt kein Telegramm gesendet.
Beim Neustart des HS/FS senden bestimmte SbC-Ausgänge kein Telegramm. Das entspricht einer
internen Einstellung (vorgegebene Initialwerte). Diese Ausgänge sind gekennzeichnet mit
"Sendet nicht bei Neustart" (Siehe dazu auch nachfolgende "Wertetabelle Beispiel
UND-Gatter"). Intern werden aber die Zustände berechnet und dann bei Eintreffen von neuen
Telegrammen berücksichtigt.
Negiert "Send" und Negiert "Send by Change"
Das Ergebnis der Verknüpfung wird negiert. Ist das Ergebnis der Verknüpfung 1, so wird
eine Negation durchgeführt: Das Ergebnis ist 0 (Null). Ist das Verknüpfungsergebnis 0
(Null) entsteht durch die Negierung eine 1.
Wertetabelle Beispiel UND-Gatter
|
E1
|
E2
|
A1 (send)
|
A1 negiert (send)
|
A2
(send by Change)
|
A2
negiert
(Send by Change)
|
Verhalten bei HS-Start
Initialwerte
durch EIB-Scan ermittelt
|
1
|
1
|
1
|
0
|
-
|
-
|
|
-
|
1
|
1
|
0
|
1
|
-
|
|
0
|
-
|
0
|
1
|
0
|
1
|
|
-
|
0
|
0
|
1
|
-
|
-
|
Verhalten bei "
Ausgang ist 1-bit-Wert"
Die so gekennzeichneten Ausgänge wandeln den Wert des Ausgangstelegramms in 0 (Null) oder 1 um.
Werte ungleich Null werden zu 1, Werte gleich Null werden zu Null.
Telegrammintervall im Logikbaustein
Nach dem Senden eines Telegramms über einen Ausgang sind alle Ausgänge für diesen
Zeitraum gesperrt. Die Zeit wird in Sekunden angegeben. Der Minimalwert ist Null. Das bedeutet, dass
der Baustein keine Zeitsperre hat. Dieser Wert ist der Standardwert eines Logikbausteins.
Verhalten beim Datentyp "
14 Byte"
Ab der Version 2.1.050511 können 14 Byte-Text in dafür vorgesehenen Bausteinen verwendet werden. Der
grafische Logikeditor verhindert eine falsche Zuweisung des Datentyps auf dem jeweiligen
Ein-/Ausgang.