# PWM (Pulse Width Modulation)

Dieser Funktionsblock ermöglicht es Benutzern, ein künstliches Pulsbreitenmodulationssignal zu erzeugen, das nützlich ist, um das Timing digitaler Signale basierend auf Zeitintervallen oder Stichproben zu steuern.

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

Dieser Funktionsblock hat keine Eingangsanschlüsse.

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

`Boolean` Dieser Ausgang zeigt den aktuellen Zustand des PWM-Signals an, wechselt zwischen `True` und `False`.

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

`Interval` Ein beschriftetes Eingabefeld, in dem Sie die Gesamtdauer des Intervalls für das PWM-Signal festlegen können. Dies definiert, wie lange ein kompletter Zyklus (hoch und runter) dauern wird.

`Up Duration` Ein beschriftetes Eingabefeld, um die Dauer anzugeben, für die das Signal im hohen Zustand (True) innerhalb des Gesamtintervalls bleibt.

`Time Mode` Ein Umschalter, der es Ihnen ermöglicht, zwischen zeitbasiertem Signal (ein) und stichprobenbasiertem Signal (aus) zu wählen.

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

`Vielseitige Daueroptionen` Benutzer können das PWM-Verhalten basierend auf Zeitintervallen oder Stichprobenanzahlen definieren, was Flexibilität für verschiedene Anwendungen bietet.

`Echtzeit-Zustandsaktualisierungen` Der Ausgangszustand wird kontinuierlich basierend auf den festgelegten Intervallen und den umgeschalteten Zustandseinstellungen aktualisiert.

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

1. **Set Interval**: Geben Sie das gewünschte Gesamtintervall mit der Steuerung `Interval` ein.
2. **Set Up Duration**: Geben Sie an, wie lange das Signal während dieses Intervalls hoch sein soll, indem Sie die Steuerung `Up Duration` verwenden.
3. **Toggle Mode**: Schalten Sie je nach Anwendungsbedarf zwischen Zeitmodus und Stichprobenmodus mit dem Schalter `Time Mode`.
4. **Evaluate**: Beim Ausführen des Blocks zeigt der Ausgang den aktuellen Zustand des PWM-Signals an.

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

Wenn er ausgeführt wird, gibt dieser Funktionsblock ein boolesches Signal aus, das basierend auf den für die Gesamtdauer und die Hochdauer festgelegten Parametern schwankt und ein PWM-Signal simuliert.

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

<details>

<summary>Signalfrequenz anpassen</summary>

Um die Frequenz des PWM-Signals anzupassen, ändern Sie das `Interval`, was sich direkt darauf auswirkt, wie schnell das Signal zwischen den Zuständen wechselt.

</details>

<details>

<summary>Stichprobenanzahl für Konsistenz verwenden</summary>

Wenn Sie ein wiederholtes und konsistentes Verhalten in einer kontrollierten Umgebung benötigen, wählen Sie den Stichprobenmodus und verwenden Sie feste Stichprobenanzahlen, um vorhersehbares Timing sicherzustellen.

</details>

<details>

<summary>Überwachung von Zustandsänderungen</summary>

Verbinden Sie den Ausgang dieses Funktionsblocks mit einem beliebigen Visualisierungstool, um zu überwachen, wie sich der PWM-Ausgangszustand im Laufe der Zeit oder bei Stichproben ändert.

</details>

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

<details>

<summary>Keine Ausgabe beobachtet</summary>

Überprüfen Sie, ob die Felder `Interval` und `Up Duration` korrekt eingestellt sind. Wenn `Up Duration` gleich oder länger als `Interval` ist, kann die Ausgabe hoch bleiben.

</details>

<details>

<summary>Unerwartetes Verhalten im Zeitmodus</summary>

Stellen Sie sicher, dass der Schalter `Time Mode` korrekt eingestellt ist. Wenn er aktiviert ist, sich das Ausgabeverhalten jedoch erratisch zeigt, überprüfen Sie, ob die Uhr des Systems korrekt funktioniert.

</details>

<details>

<summary>Fehler im Stichprobenmodus</summary>

Überprüfen Sie, ob Ihr `Interval`-Wert nicht unter 1 eingestellt ist, da dies zu Divisionfehlern oder instabilen Operationen im Stichprobenmodus führen kann. Passen Sie dies entsprechend an.

</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/data-inputs/pwm-pulse-width-modulation.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.
