Diese Funktion begrenzt die Änderungsgeschwindigkeit einer Eingangsgröße. Aus einer Sprungfunktion wird eine Rampenfunktion.
| LGF_LimRateOfChangeCI (FB) | ||||||||
|---|---|---|---|---|---|---|---|---|
| LReal | value | delayedValue | LReal | |||||
| LReal | setChangeRate | error | Bool | |||||
| LReal | defaultOutValue | status | Word | |||||
| Bool | enDefaultOutValue | subfunctionStatus | Word | |||||
| OB_CYCLIC | callOB | |||||||
| Bezeichner | Datentyp | Default Wert | Beschreibung |
|---|---|---|---|
| value | LReal | 0.0 | Eingangssignal das verarbeitet und in seiner Änderungsrate begrenzt wird |
| setChangeRate | LReal | 0.0 | Änderungsrate der Rampenfunktion (1/Sekunde) |
| defaultOutValue | LReal | 0.0 | Wert für die Default Vorbelegung der Ausgangsgröße (`outputValue` = `defaultOutValue`) |
| enDefaultOutValue | Bool | FALSE | Zuweisen des Default Ausgangswert (`outputValue` = `defaultOutValue`) |
| callOB | OB_CYCLIC | --- | Aufrufender Weckalarm-OB (Cyclic Interrupt OB) |
| Bezeichner | Datentyp | Beschreibung |
|---|---|---|
| delayedValue | LReal | Ausgangsgröße |
| error | Bool | FALSE: Kein Fehler TRUE: Während der Ausführung des FB ist ein Fehler aufgetreten |
| status | Word | 16#0000-16#7FFF: Status des FB 16#8000-16#FFFF: Fehleridentifikation (siehe folgende Tabelle) |
| subfunctionStatus | Word | Status oder Rückgabewert von aufgerufenen FB's / FC's und Systemfunktionen |
| Code / Wert | Bezeichner / Beschreibung |
|---|---|
| 16#0000 | STATUS_FINISHED_NO_ERROR Status: Abarbeitung ohne Fehler beendet |
| 16#8200 | ERR_NEG_RATE_LIM Fehler: Negative Änderungsrate. Parameter für die Änderungsrate darf nicht negativ sein. |
| 16#8600 | ERR_QRY_CINT Fehler in Anweisung `QRY_CINT` - weitere Infos in `subFunctionStatus` |
| 16#8601 | ERR_OB_UNAVAILABLE Fehler: OB am Eingang `callOB` ist nicht projektiert / vorhanden. Verschalten Sie am Eingang `callOB` den Konstanten Namen eines projektierten Weckalarm-OB. |
subFunctionStatus wird der Status von aufgerufenen Anweisungen ausgegeben. Der Ausgangswert in status gibt in diesem Fall an, welche Anweisung den Fehler verursacht hat. Holen Sie sich in diesem Fall die Informationen aus der TIA Portal Online Hilfe zu den jeweiligen Anweisungen.Die Rampe ist eine Begrenzungsgerade und bezieht sich auf eine Änderungsrate pro Sekunde; wird zum Beispiel setChangeRate = 10.0 parametriert, so wird bei einer Abtastzeit von 1s/100ms/10ms bei jedem Bausteinaufruf, wenn value > delayedValue ist, 10.0/1.0/0.1 zu delayedValue addiert, bis value erreicht ist.
Die Begrenzung der Änderungsrate ist sowohl im positiven als auch negativen Wertebereich für den Anstieg und den Abfall gültig.
Der Ausgang delayedValue kann vorbelegt bzw. initialisiert werden.
Der Zeittakt des aufrufen Weckalarm-OBs wird ermittelt, in dem am Eingangs-parameter callOB der aufrufende Weckalarm-OB verschaltet wird.

Wenn enDefaultOutValue = TRUE gesetzt ist, wird am Ausgang der Wert an defaultOutValue ausgegeben. Bei Änderung von TRUE nach FALSE wird der Ausgang delayedValue von defaultOutValue nach value rampenförmig gefahren. Beim Wechsel von FALSE nach TRUE springt Ausgang delayedValue sofort zu defaultOutValue.
Die untenstehende Abbildung zeigt den Rampenfunktionsverlauf:

| Version & Datum | Änderungsbeschreibung | |
|---|---|---|
| 01.00.00 | Siemens Industry Online Support | |
| 21.06.2016 | First released version | |
| 01.00.01 | Siemens Industry Online Support | |
| 02.01.2017 | Upgrade: TIA Portal V14 Update 1 | |
| 01.00.02 | Siemens Industry Online Support | |
| 17.08.2018 | Upgrade: TIA V15 Update 2 | |
| 01.00.03 | Siemens Industry Online Support | |
| 23.11.2018 | Upgrade: TIA V15.1 | |
| 01.00.06 | Simatic Systems Support | |
| 15.11.2019 | Regions, comments and constants are added | |
| 03.00.00 | Simatic Systems Support | |
| 23.04.2020 | Set version to V3.0.0, harmonize the version of the whole library | |
| 03.00.01 | Simatic Systems Support | |
| 22.03.2021 | Insert documentation | |