# Siemens S7 Write

Dieser Funktionsblock ist so konzipiert, dass er Daten an Siemens S7 PLC (Programmable Logic Controller) mit der Snap7-Bibliothek schreibt. Er unterstützt verschiedene Datentypen und ermöglicht eine dynamische Interaktion mit der PLC.

## 📥 Eingänge <a href="#inputs" id="inputs"></a>

`Enable` Ein boolescher Eingang zur Aktivierung oder Deaktivierung des Schreibvorgangs zur PLC.

`Data` Die Daten, die in einem kompatiblen Format entsprechend dem ausgewählten Datentyp an die PLC geschrieben werden sollen.

`S7 Client` Die Verbindungsdetails für die Siemens S7 PLC, an die die Daten geschrieben werden.

## 📤 Ausgänge <a href="#outputs" id="outputs"></a>

Dieser Funktionsblock erzeugt keine Ausgaben.

## 🕹️ Steuerungen <a href="#controls" id="controls"></a>

`DB Number` Eingabefeld zur Angabe der Datenblocknummer für den PLC-Schreibvorgang.

`DB Byte Address` Eingabefeld zur Angabe der Byte-Adresse innerhalb des Datenblocks.

`Bit Position` Eingabefeld zur Angabe der Bit-Position, die nur für boolesche Werte gilt.

`DB Data Type` Ein Dropdown-Menü, das die Auswahl des Datentyps ermöglicht, der geschrieben wird (z. B. Boolean, Int, Real usw.).

## 🎨 Funktionen <a href="#features" id="features"></a>

`Connection Handling` Der Block verwaltet automatisch die Verbindungen zur PLC und stellt die Verbindung wieder her, wenn sie verloren geht oder sich die Adresse ändert.

`Multi-threaded Writing` Nutzt einen separaten Thread, um Schreibvorgänge zu verarbeiten, sodass ein kontinuierlicher Datenfluss ohne Blockierung der Hauptausführung ermöglicht wird.

`Dynamic Data Type Support` Unterstützt verschiedene Datentypen und ermöglicht eine flexible Datenverarbeitung.

## 📝 Nutzungshinweise <a href="#usage" id="usage"></a>

1. **Connect to S7 Client**: Geben Sie die erforderlichen Details ein, um sich mit der S7 PLC im Eingangsbereich `S7 Client` zu verbinden. Dies kann IP-Adresse, Port, Rack- und Slotnummern umfassen.
2. **Set DB Number**: Geben Sie die Ereignisnummer im Feld `DB Number` ein, die angibt, wo die Daten innerhalb der PLC geschrieben werden sollen.
3. **Specify Byte Address**: Geben Sie die Byte-Adresse im Feld `DB Byte Address` ein, um festzulegen, wo die Daten geschrieben werden sollen.
4. **Select Data Type**: Wählen Sie den entsprechenden Datentyp aus dem Dropdown-Menü `DB Data Type` aus, der dem zu schreibenden Daten entspricht.
5. **Input Data**: Geben Sie die Daten ein, die in die PLC geschrieben werden sollen, im Eingangsbereich `Data`.
6. **Enable Write Operation**: Stellen Sie den Eingang `Enable` auf `True`, um den Schreibvorgang zu aktivieren. Der Block verarbeitet das Schreiben basierend auf den bereitgestellten Konfigurationen.

## 📊 Bewertung <a href="#evaluation" id="evaluation"></a>

Während der Ausführung dieses Blocks werden die angegebenen Daten an der definierten Stelle auf der PLC geschrieben. Wenn die Verbindung zur PLC verloren geht oder ungültig ist, wird eine Fehlermeldung protokolliert.

## 💡 Tipps und Tricks <a href="#tips-and-tricks" id="tips-and-tricks"></a>

<details>

<summary>Verbindung überprüfen</summary>

Um sicherzustellen, dass der Schreibvorgang reibungslos verläuft, überprüfen Sie, ob die S7 PLC eingeschaltet und ordnungsgemäß mit dem Netzwerk verbunden ist.

</details>

<details>

<summary>Verwendung geeigneter Datentypen</summary>

Stellen Sie sicher, dass die im Eingangsbereich `Data` bereitgestellten Daten dem aus dem Dropdown-Menü `DB Data Type` gewählten Datentyp entsprechen. Ungültige Datentypen können zu Fehlern führen.

</details>

<details>

<summary>Dynamisches Adressieren</summary>

Wenn Sie die PLC-Adresse häufig ändern, ziehen Sie in Betracht, den NodeLineEdit zu verwenden, um die Verbindungsparameter einfach einzugeben, ohne den Code ändern zu müssen.

</details>

## 🛠️ Fehlersuche <a href="#troubleshooting" id="troubleshooting"></a>

<details>

<summary>Verbindungsfehler verloren</summary>

Wenn Sie einen "Verbindung verloren"-Fehler erhalten, überprüfen Sie Ihre Netzwerkeinstellungen und stellen Sie sicher, dass die PLC erreichbar ist. Überprüfen Sie die IP-Adresse und den Port, die in den Client-Parametern angegeben sind.

</details>

<details>

<summary>Fehler bei nicht unterstütztem Datentyp</summary>

Wenn Sie einen Fehler über nicht unterstützte Datentypen erhalten, stellen Sie sicher, dass der im Dropdown-Menü `DB Data Type` ausgewählte Typ für die Ziel-PLC-Register gültig ist.

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.augelab.com/german/function-blocks/blocks-reference/input-output/communication/siemens-s7-write.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
