Zum Inhalt

Verknüpfungsarten: Logik, Wert und Daten

Der Programm-Editor unterscheidet drei Informationsarten. Diese Typisierung sorgt dafür, dass nur fachlich passende Funktionsblöcke miteinander verbunden werden.

Logik-, Wert- und Datenverbindungen im Wetterrelais Programmeditor

Logik

Logik beschreibt einen binären Zustand:

  • TRUE / FALSE
  • EIN / AUS
  • Bedingung erfüllt / nicht erfüllt

Typische Blöcke mit Logikanschlüssen sind:

  • Prüfen als Ausgang,
  • UND,
  • Invertierer,
  • Zeitschaltuhr,
  • Timer,
  • Astrouhr,
  • Wetterereignis,
  • Warnungen,
  • Shelly Aktor als Eingang.

Logikverbindungen werden im Editor grün dargestellt.

Wert

Wert bezeichnet einen einzelnen numerischen Wert. Beispiele:

  • Temperatur 21.5
  • Leistung 850
  • Spannung 230.1
  • berechnetes Ergebnis -4.2

Typische Blöcke sind:

  • Arithmetik,
  • Statistik als Ausgang,
  • Shelly Meter,
  • Shelly H&T,
  • analoger Modbus-Wert.

Wertverbindungen werden im Editor in einem grau-blauen Farbton dargestellt.

Daten

Daten bezeichnet eine Reihe zusammengehöriger Werte. Der häufigste Anwendungsfall sind zeitlich aufgelöste Wetterdaten.

Beispiel:

[8.4, 9.1, 10.3, 11.8, 12.0]

Ein Datenblock kann beispielsweise durch Statistik auf einen einzelnen Wert reduziert oder durch Prüfen anhand einer Datenbedingung ausgewertet werden.

Datenverbindungen werden im Editor blau dargestellt.

Warum Wetterdaten keine einzelne Zahl sind

Der Block Wetterdaten stellt für den gewählten Zeitraum eine Datenreihe bereit. Dadurch kann das nachfolgende Programm selbst entscheiden, wie die Werte auszuwerten sind.

Beispiele:

Wetterdaten ──Daten──> Statistik ──Wert──> Prüfen

oder direkt:

Wetterdaten ──Daten──> Prüfen

Die Aufteilung verhindert, dass bereits im Wetterdatenblock unbemerkt eine bestimmte Aggregation vorgenommen wird.

Dynamische Anschlüsse

Einige Blöcke passen ihren Anschlusstyp an die Konfiguration oder an die verbundene Quelle an.

Skalierung

Die Skalierung zeigt ohne Verbindung Daten / Wert. Sobald ein Wert oder Daten angeschlossen wird, übernehmen Eingang und Ausgang diesen Typ.

Skalierungsblock im Wetterrelais Programmeditor mit dynamischem Daten- oder Werteingang

Wird die Eingangsverbindung wieder gelöscht, wechselt die Skalierung zurück auf Daten / Wert. So kann sie anschließend erneut mit beiden numerischen Informationsarten verwendet werden.

Prüfen

Der Block Prüfen akzeptiert am Eingang Wert oder Daten. Damit kann sowohl ein einzelner Mess- beziehungsweise Rechenwert als auch eine komplette Datenreihe in ein Logiksignal umgewandelt werden.

Modbus

Bei Modbus-Blöcken hängt die Informationsart vom gewählten Registertyp ab. Beim Modbus Input wird der Eingang automatisch angepasst:

  • Discrete Input Contact → Logik
  • Analog Input Register → Wert

Beim Modbus Output wird entsprechend der Ausgang angepasst:

  • Discrete Output Coil → Logik
  • Analog Output Holding Register → Wert

Benutzerdefinierter Code

Beim Code-Block können Ein- und Ausgangstyp in den Eigenschaften gewählt werden. Nicht mehr passende Verbindungen müssen nach einer Typänderung korrigiert werden.

Universeller Anschluss *

Ein * kennzeichnet einen Anschluss, der mehrere Informationsarten aufnehmen kann. Das bedeutet nicht, dass jeder nachfolgende Verarbeitungsschritt automatisch mit jedem Inhalt umgehen kann. Die semantische Bedeutung des angeschlossenen Blocks bleibt zu beachten.

Die Ausgabevariable ist ein typisches Beispiel: Sie kann unterschiedliche Werte zur Anzeige übernehmen und benötigt deshalb keinen festen Eingangstyp.

Ungültige Verbindungen

Wenn ein bereits geladenes Programm eine Verbindung enthält, deren Typen nicht mehr zusammenpassen, markiert der Editor diese Verbindung rot. Ein solches Programm kann nicht als aktives Programm übertragen werden, bevor die fehlerhafte Verbindung korrigiert wurde.

Übersicht

Typ Inhalt Typische Verwendung
Logik binärer Zustand Schalten, Bedingungen, logische Verknüpfung
Wert einzelne Zahl Rechnen, Messwert, Skalierung, Anzeige
Daten Zahlenreihe Wetterverlauf, Statistik, Auswertung mehrerer Werte
* mehrere Typen zulässig universelle Übergabe an dafür ausgelegte Blöcke

Typen nicht künstlich umgehen

Die Typprüfung ist ein Schutz gegen unklare Programme. Wenn zwei Blöcke nicht verbunden werden können, sollte der Signalfluss mit einem dafür vorgesehenen Umwandlungs- oder Auswerteblock aufgebaut werden, statt die Typisierung zu umgehen.