# LGF_IsValueInToleranceByTime (FB / 1.0.0)

Übersicht

Autor: Siemens Digital Industries

## Kurzbeschreibung

Prüft, ob ein bestimmter Wert innerhalb einer bestimmten Toleranz in Prozent eines bestimmten Sollwerts liegt.
Der Block verfügt über ein konfigurierbares Timing für die Ausblendung von Sollwertänderungen, Untergrenzen und auch für die Ausblendung von Obergrenzenverletzungen.

### Baustein Schnittstelle

| LGF_IsValueInToleranceByTime (FB) |
--- | --- | ---
Real |  |  | value |  | overHighLimit |  |  | Bool
Real |  |  | setpoint |  | belowLowLimit |  |  | Bool
Real |  |  | lowerMinimum |  | inLimits |  |  | Bool
Real |  |  | upperMaximum |  | setpointChange |  |  | Bool
Bool |  |  | reset |  | error |  |  | Bool
LGF_typeIsValueInToleranceByTimeConfiguration |  |  | configuration |  | status |  |  | Word

### Input Parameter

Bezeichner | Datentyp | Default Wert | Beschreibung
--- | --- | --- | ---
value | Real | 0.0 | Zu prüfender Wert, ob im Bereich des Sollwerts
setpoint | Real | 0.0 | Sollwert
lowerMinimum | Real | 0.0 | [% oder ABS] Untere Grenze/Toleranz des Sollwerts in Prozent oder absolut
upperMaximum | Real | 0.0 | [% oder ABS] Obere Grenze/Toleranz des Sollwerts in Prozent oder absolut
reset | Bool | FALSE | Reset Baustein
configuration | LGF_typeIsValueInToleranceByTimeConfiguration | --- | Modulspezifische Konfigurations Parameter

### Output Parameter

Bezeichner | Datentyp | Beschreibung
--- | --- | ---
overHighLimit | Bool | TRUE: Wert liegt über dem oberen Grenzwert
belowLowLimit | Bool | TRUE: Wert liegt unter dem unteren Grenzwert
inLimits | Bool | TRUE: wenn der Wert zwischen den Grenzen liegt
setpointChange | Bool | TRUE: wenn eine Sollwertänderung erkannt wurde
error | Bool | Fehler aufgetreten
status | Word | Status der Funktion

### Status & Error Meldungen

Code / Wert | Bezeichner / Beschreibung
--- | ---
16#0000 | STATUS_NO_ERROR Status: Kein Fehler
16#8401 | ERR_RANGE_LIMIT_VALUE_CALC Fehler: Falsches Ergebnis bei Grenzwertberechnung für Grenzwerte
16#8402 | ERR_SETPOINT_ABOVE_HIGH_LIMIT Fehler: Sollwert über absolutem oberen Grenzwert
16#8403 | ERR_SETPOINT_BELOW_LOW_LIMIT Fehler: Sollwert unterhalb der absoluten Untergrenze

## Benutzer definierte Datentypen

### LGF_typeIsValueInToleranceByTimeConfiguration (UDT / V1.0.0)

Modulspezifische Konfigurations Parameter

Bezeichner | Datentyp | Default Wert | Beschreibung
--- | --- | --- | ---
disableLimits | Bool | FALSE | TRUE: Disable the monitoring timer. Leaving the tolerance triggers immediately
limitsAsAbsolutValues | Bool | FALSE | TRUE: Limit given as absolut value / FALSE: Limits given as tolerance from setpoint - absolut or perecent value
toleranzAsAbsoluteValues | Bool | FALSE | TRUE: Toleranze given as absolut value / FALSE: Toleranze in percent from Setpoint
upperLimitMonitoringTime | Time | T#10S | Monitoring time for the upper limit violation
lowerLimitMonitoringTime | Time | T#10S | Monitoring time for the lower limit violation
setpointChangeMonitingTime | Time | T#20S | Monitoring time for setpoint changes

## Funktionsbeschreibung

Die Variablen "setpoint", "lowerMinimum" und "upperMaximum" legen einen Wertebereich fest.
Die Funktion prüft, ob der "Wert" unterhalb, innerhalb oder oberhalb des Wertebereichs liegt. Die Ausgaben `belowLowLimit`, `inLimits`, oder `overHighLimit` zeigen an, wo sich der `Wert` befindet.

Durch die Konfiguration ist es möglich zu definieren, ob die Grenzen als absolute Werte oder in Prozent vom Sollwert angegeben werden.
Das Timing kann für Sollwertänderungen angepasst werden und auch für das Ausblenden der Überschreitung der unteren oder oberen Grenze im Falle von Peaks.

Abbildung: Funktionsweise

## Änderungshistorie

Version & Datum | Änderungsbeschreibung
--- | ---
| 1.0.0 | Siemens Industry Support
| 21.12.2023 | First released version Copied snd extended from "IsValueInRange"