For the complete documentation index, see llms.txt. This page is also available as Markdown.

Siemens S7 Read

Dieser Funktionsblock liest Daten aus einer Siemens S7 PLC-Datenbank (DB) und gibt den Wert zur weiteren Verwendung in Ihrem Szenario aus. Er unterstützt gängige PLC-Datentypen und bietet eine einfache Oberfläche, um die DB-Nummer, Byte-Adresse und den Datentyp zu definieren. Verwenden Sie den Eingangsanschluss Enable, um Lesevorgänge auszulösen, und stellen Sie einen verbundenen S7 Client von einem Verbindungsblock bereit.

📥 Eingänge

Enable — Eingangsbuchse zum Ein- oder Ausschalten des Lesens. Liefern Sie ein boolesches Signal (z. B. von einem Logic Input-Block), um zu steuern, wann gelesen wird.

S7 Client — Eingangsbuchse, die ein Client-/Verbindungsobjekt akzeptiert (typischerweise bereitgestellt durch einen Siemens S7 Connect-Block). Damit weiß der Block, mit welchem PLC/Server er kommunizieren soll.

📤 Ausgänge

Data — Ausgangsbuchse, die den vom PLC gelesenen Wert liefert. Der Typ des Wertes richtet sich nach dem gewählten Datentyp (Zahl, String, Bool-Liste usw.).

🕹️ Steuerungen

DB Number — Geben Sie die DB-(Data Block)-Nummer an, aus der gelesen werden soll.

DB Byte Address — Geben Sie die Byte-Verschiebung innerhalb des DB an, an der der gewünschte Wert beginnt.

DB Data Type — Dropdown zur Auswahl des zu lesenden Datentyps (Beispiele: Boolean, Int, DInt, Real, String, Word, DWord, Time, ...).

Connection Type — Dropdown zur Wahl des Verbindungsmodus (z. B. Sync oder Async). Verwenden Sie dies, um zu steuern, wie der Block die PLC-Verbindung mit anderen Blöcken teilt/nutzt.

⚙️ Ablauf / Funktionsweise

  • Wenn der Eingang Enable aktiv ist, liest der Block den konfigurierten Wert bei DB Number und DB Byte Address unter Verwendung des ausgewählten DB Data Type und gibt ihn sofort am Ausgang Data aus.

  • Der Block erwartet am Eingang einen verbundenen S7 Client. Wenn kein Client verbunden ist, meldet der Block einen Verbindungsfehler und liefert keine Daten.

  • Die Einstellung Connection Type steuert, ob der Block eine gemeinsame (synchronisierte) Verbindung oder eine dedizierte/asynchrone Verbindung zum PLC verwendet. Wählen Sie den Modus, der zu Ihrer Umgebung passt (siehe Tipps).

🎯 Hauptfunktionen

  • Unterstützt viele gängige PLC-Datentypen: Boolean-Arrays, Integer (SInt/Int/DInt), unsigned Typen, Fließkommawerte (Real/LReal), Strings, Word/DWord und Zeittypen.

  • Einfache UI-Steuerung für DB-Nummer, Byte-Adresse und Auswahl des Datentyps.

  • Auswahl des Verbindungsmodus, um Szenarien abzudecken, in denen mehrere Blöcke auf dasselbe PLC zugreifen.

  • Gibt Daten in einem formatfreundlichen Format zurück, das sofort von anderen Blöcken weiterverwendet werden kann.

📝 Nutzungshinweise

  1. Fügen Sie einen Siemens S7 Connect-Block hinzu und konfigurieren Sie dort PLC-Adresse und Verbindungsparameter.

  2. Verbinden Sie den Ausgang des Siemens S7 Connect-Blocks mit dem Eingang S7 Client dieses Blocks.

  3. Stellen Sie die Zielwerte für DB Number und DB Byte Address über die Steuerungen ein.

  4. Wählen Sie den passenden DB Data Type, der zur PLC-Variable passt, die Sie lesen möchten.

  5. Verwenden Sie einen Logic Input oder ein anderes boolesches Signal am Eingang Enable, um zu steuern, wann gelesen wird.

  6. Verwenden Sie den Ausgang Data zur Visualisierung, Protokollierung oder für Entscheidungsblöcke.

💡 Tipps und Tricks

  • Kombinieren Sie mit Siemens S7 Connect, um die PLC-Verbindung zentral zu verwalten — dieser Block liefert das Client-Objekt, das hier am Eingang S7 Client erwartet wird.

  • Verwenden Sie Logic Input, um periodische Lesevorgänge ein-/auszuschalten oder abfragebasiertes Lesen zu implementieren.

  • Zur Visualisierung numerischer Trends können Sie den numerischen Ausgang Data in einen Scope-Block zur Live-Anzeige speisen.

  • Um Messwerte zu speichern, leiten Sie Data in Data to JSON und anschliessend in CSV Export weiter.

  • Senden Sie Telemetrie downstream, z. B. durch Verbindung von Data mit MQTT Publish für Cloud-Monitoring oder mit Send Mail (als strukturierte Nachricht) für Benachrichtigungen.

  • Teilen Sie gelesene Werte szenenweit mit Data Write Global / Data Read Global oder lokalen Speicherblöcken, damit andere Teile Ihres Systems reagieren können, ohne erneut vom PLC zu lesen.

  • Zur Fehlersuche verwenden Sie Debug Input, um den ausgegebenen Wert zu protokollieren und Adressen sowie Datentypen zu überprüfen.

  • Wenn mehrere Blöcke denselben DB-Bereich lesen/schreiben, versuchen Sie, den Connection Type auf Sync umzustellen, um Konkurrenzprobleme zu vermeiden.

  • Beim Lesen von Textfeldern achten Sie auf String-Länge und Codierung im PLC. Überprüfen Sie die erwartete Länge im PLC-DB, um abgeschnittene Ergebnisse zu vermeiden.

(hinweis: Nützliche Blöcke zur Kombination: Siemens S7 Connect, Logic Input, Number Input, Data to JSON, CSV Export, MQTT Publish, Scope, Debug Input, Data Write Global)

🛠️ Fehlersuche

  • Keine Daten oder Verbindungsfehler: Prüfen Sie, ob das PLC erreichbar ist und ob der Block Siemens S7 Connect eine erfolgreiche Verbindung anzeigt. Überprüfen Sie Netzwerkadressen, Firewalls und den PLC-Status.

  • Falscher Wert zurückgegeben: Stellen Sie sicher, dass DB Number, DB Byte Address und DB Data Type mit dem Variablenlayout im PLC-DB übereinstimmen. Off-by-one-Byte-Verschiebungen oder falsche Datentypen führen zu ungültigen Ergebnissen.

  • Teilweise oder abgeschnittener String: Achten Sie darauf, dass die String-Länge im PLC den Erwartungen entspricht. Wenn ein String abgeschnitten erscheint, prüfen Sie die konfigurierte Länge auf der PLC-Seite.

  • Intermittierende Lesevorgänge oder Warnung über busy server: Wenn das PLC viele Anfragen bedient, versuchen Sie, den Connection Type auf Sync zu stellen oder die Lesehäufigkeit zu verringern.

  • Unerwartetes boolesches Ergebnis: Manche Boolean-Lesevorgänge liefern Bit-Gruppen — behandeln Sie diese gegebenenfalls als Sammlungen von Boolean-Werten.

Wenn Probleme weiterhin bestehen, fügen Sie einen Debug Input-Block hinzu, um die rohen zurückgegebenen Werte zu sehen, und leiten Sie diese zur Protokollierung oder Analyse in Exportblöcke weiter.

Zuletzt aktualisiert