0% fanden dieses Dokument nützlich (0 Abstimmungen)
4 Ansichten222 Seiten

Elembsta

Das Dokument ist ein Programmier- und Bedienhandbuch für CFC-Elementarbausteine der Siemens AG, das verschiedene Bausteintypen und deren Anwendungen beschreibt. Es enthält Sicherheits- und Warnhinweise sowie rechtliche Hinweise zur Verwendung der Produkte. Zudem wird auf die Notwendigkeit qualifizierten Personals für den Umgang mit den beschriebenen Systemen hingewiesen.
Copyright
© All Rights Reserved
Wir nehmen die Rechte an Inhalten ernst. Wenn Sie vermuten, dass dies Ihr Inhalt ist, beanspruchen Sie ihn hier.
Verfügbare Formate
Als PDF, TXT herunterladen oder online auf Scribd lesen
0% fanden dieses Dokument nützlich (0 Abstimmungen)
4 Ansichten222 Seiten

Elembsta

Das Dokument ist ein Programmier- und Bedienhandbuch für CFC-Elementarbausteine der Siemens AG, das verschiedene Bausteintypen und deren Anwendungen beschreibt. Es enthält Sicherheits- und Warnhinweise sowie rechtliche Hinweise zur Verwendung der Produkte. Zudem wird auf die Notwendigkeit qualifizierten Personals für den Umgang mit den beschriebenen Systemen hingewiesen.
Copyright
© All Rights Reserved
Wir nehmen die Rechte an Inhalten ernst. Wenn Sie vermuten, dass dies Ihr Inhalt ist, beanspruchen Sie ihn hier.
Verfügbare Formate
Als PDF, TXT herunterladen oder online auf Scribd lesen

Bausteinparameter EN,

Hilfe für CFC - Elementarbausteine ___________________


ENO, SAMPLE_T 1
___________________
Anlauf bei S7-300 CPUs 2
___________________
CFC-Bausteine 3
___________________
Logikbausteine mit dem
Datentyp BOOL 4
SIMATIC
___________
Logikbausteine mit dem
5
Datentyp WORD und
DWORD
Prozessleitsystem PCS 7
___________
Bausteine zum Vergleichen
Hilfe für CFC - Elementarbausteine 6
zweier Eingangswerte
gleichen Typs

___________________
Bausteine zum Konvertieren
von Datentypen 7
Programmier- und Bedienhandbuch
___________________
Arithmetik-Bausteine mit
dem Datentyp REAL 8
___________________
Arithmetik-Bausteine mit den
9
Datentypen INT und DINT

___________________
Flip-Flop Bausteine 10
___________________
Shift-Bausteine 11
___________________
Multiplex-Bausteine 12
___________________
Zählbausteine 13
___________
Bausteine zum Erzeugen
14
oder Bearbeiten von
Impulsen

___________
Bausteine zur Erfassung
15
oder Bearbeitung von
Zeitpunkten und Zeiträumen
___________________
Regelungsbausteine 16
___________________
Bausteine für
Systemfunktionen 17
___________________
Bausteine für AS-
übergreifende Verbindungen 18
___________________
Bausteinfamilie "@SYSTEM" 19
___________________
Anhang 20

04/2014
A5E34748365-AA
Rechtliche Hinweise
Warnhinweiskonzept
Dieses Handbuch enthält Hinweise, die Sie zu Ihrer persönlichen Sicherheit sowie zur Vermeidung von
Sachschäden beachten müssen. Die Hinweise zu Ihrer persönlichen Sicherheit sind durch ein Warndreieck
hervorgehoben, Hinweise zu alleinigen Sachschäden stehen ohne Warndreieck. Je nach Gefährdungsstufe
werden die Warnhinweise in abnehmender Reihenfolge wie folgt dargestellt.

GEFAHR
bedeutet, dass Tod oder schwere Körperverletzung eintreten wird, wenn die entsprechenden
Vorsichtsmaßnahmen nicht getroffen werden.

WARNUNG
bedeutet, dass Tod oder schwere Körperverletzung eintreten kann, wenn die entsprechenden
Vorsichtsmaßnahmen nicht getroffen werden.

VORSICHT
bedeutet, dass eine leichte Körperverletzung eintreten kann, wenn die entsprechenden Vorsichtsmaßnahmen
nicht getroffen werden.

ACHTUNG
bedeutet, dass Sachschaden eintreten kann, wenn die entsprechenden Vorsichtsmaßnahmen nicht getroffen
werden.
Beim Auftreten mehrerer Gefährdungsstufen wird immer der Warnhinweis zur jeweils höchsten Stufe verwendet.
Wenn in einem Warnhinweis mit dem Warndreieck vor Personenschäden gewarnt wird, dann kann im selben
Warnhinweis zusätzlich eine Warnung vor Sachschäden angefügt sein.
Qualifiziertes Personal
Das zu dieser Dokumentation zugehörige Produkt/System darf nur von für die jeweilige Aufgabenstellung
qualifiziertem Personal gehandhabt werden unter Beachtung der für die jeweilige Aufgabenstellung zugehörigen
Dokumentation, insbesondere der darin enthaltenen Sicherheits- und Warnhinweise. Qualifiziertes Personal ist
auf Grund seiner Ausbildung und Erfahrung befähigt, im Umgang mit diesen Produkten/Systemen Risiken zu
erkennen und mögliche Gefährdungen zu vermeiden.
Bestimmungsgemäßer Gebrauch von Siemens-Produkten
Beachten Sie Folgendes:

WARNUNG
Siemens-Produkte dürfen nur für die im Katalog und in der zugehörigen technischen Dokumentation
vorgesehenen Einsatzfälle verwendet werden. Falls Fremdprodukte und -komponenten zum Einsatz kommen,
müssen diese von Siemens empfohlen bzw. zugelassen sein. Der einwandfreie und sichere Betrieb der
Produkte setzt sachgemäßen Transport, sachgemäße Lagerung, Aufstellung, Montage, Installation,
Inbetriebnahme, Bedienung und Instandhaltung voraus. Die zulässigen Umgebungsbedingungen müssen
eingehalten werden. Hinweise in den zugehörigen Dokumentationen müssen beachtet werden.

Marken
Alle mit dem Schutzrechtsvermerk ® gekennzeichneten Bezeichnungen sind eingetragene Marken der
Siemens AG. Die übrigen Bezeichnungen in dieser Schrift können Marken sein, deren Benutzung durch Dritte für
deren Zwecke die Rechte der Inhaber verletzen kann.
Haftungsausschluss
Wir haben den Inhalt der Druckschrift auf Übereinstimmung mit der beschriebenen Hard- und Software geprüft.
Dennoch können Abweichungen nicht ausgeschlossen werden, so dass wir für die vollständige Übereinstimmung
keine Gewähr übernehmen. Die Angaben in dieser Druckschrift werden regelmäßig überprüft, notwendige
Korrekturen sind in den nachfolgenden Auflagen enthalten.

Siemens AG A5E34748365-AA Copyright © Siemens AG 2014.


Industry Sector Ⓟ 04/2014 Änderungen vorbehalten Alle Rechte vorbehalten
Postfach 48 48
90026 NÜRNBERG
DEUTSCHLAND
Inhaltsverzeichnis

1 Bausteinparameter EN, ENO, SAMPLE_T............................................................................................... 9


2 Anlauf bei S7-300 CPUs ....................................................................................................................... 11
3 CFC-Bausteine ..................................................................................................................................... 13
4 Logikbausteine mit dem Datentyp BOOL ............................................................................................... 15
4.1 BIT-LGC .......................................................................................................................................15
4.2 AND: Und-Verknüpfung ...............................................................................................................16
4.3 OR: Oder-Verknüpfung ................................................................................................................17
4.4 XOR: Antivalenz-Verknüpfung .....................................................................................................18
4.5 NAND: Nand-Verknüpfung ...........................................................................................................19
4.6 NOR: Nor-Verknüpfung ................................................................................................................20
4.7 NOT: Not-Verknüpfung ................................................................................................................21
5 Logikbausteine mit dem Datentyp WORD und DWORD ........................................................................ 23
5.1 WRD_LGC ...................................................................................................................................23
5.2 WAND_W: Wortweise Und-Verknüpfung .....................................................................................24
5.3 WOR_W: Wortweise Oder-Verknüpfung .....................................................................................25
5.4 WXOR_W: Wortweise Antivalenz-Verknüpfung ..........................................................................26
5.5 WNAND_W: Wortweise Und-Verknüpfung ..................................................................................27
5.6 WNOR_W: Wortweise Nor-Verknüpfung .....................................................................................28
5.7 WNOT_W: Wortweise Not-Verknüpfung ......................................................................................29
5.8 WAND_DW: Doppelwortweise Und-Verknüpfung .......................................................................30
5.9 WOR_DW: Doppelwortweise Oder-Verknüpfung ........................................................................31
5.10 WXOR_DW: Doppelwortweise Antivalenz-Verknüpfung .............................................................32
5.11 WNAND_DW: Doppelwortweise Nand-Verknüpfung ...................................................................33
5.12 WNOR_DW: Doppelwortweise Nor-Verknüpfung ........................................................................34
5.13 WNOT_DW: Doppelwortweise Not-Verknüpfung ........................................................................35
6 Bausteine zum Vergleichen zweier Eingangswerte gleichen Typs ......................................................... 37
6.1 COMPARE ...................................................................................................................................37
6.2 CMP_I: Vergleicher für INT-Werte ...............................................................................................38
6.3 CMP_DI: Vergleicher für DINT-Werte ..........................................................................................39
6.4 CMP_R: Vergleicher für REAL-Werte ..........................................................................................40
6.5 CMP_T: Vergleicher für TIME-Werte ...........................................................................................41

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 3
Inhaltsverzeichnis

7 Bausteine zum Konvertieren von Datentypen ........................................................................................ 43


7.1 CONVERT ................................................................................................................................... 43
7.2 BY_DW ........................................................................................................................................ 45
7.3 BY_W .......................................................................................................................................... 46
7.4 DI_DW ......................................................................................................................................... 47
7.5 DI_I .............................................................................................................................................. 48
7.6 DI_R ............................................................................................................................................ 49
7.7 DW_DI ......................................................................................................................................... 50
7.8 DW_R .......................................................................................................................................... 51
7.9 DW_W ......................................................................................................................................... 52
7.10 I_DI .............................................................................................................................................. 53
7.11 I_DW............................................................................................................................................ 54
7.12 I_R ............................................................................................................................................... 55
7.13 I_W .............................................................................................................................................. 56
7.14 R_DI ............................................................................................................................................ 57
7.15 R_DW .......................................................................................................................................... 58
7.16 R_I ............................................................................................................................................... 59
7.17 W_BY .......................................................................................................................................... 60
7.18 W_DW ......................................................................................................................................... 61
7.19 W_I .............................................................................................................................................. 62
7.20 BO_BY......................................................................................................................................... 63
7.21 BO_W .......................................................................................................................................... 64
7.22 BO_DW ....................................................................................................................................... 65
7.23 BY_BO......................................................................................................................................... 66
7.24 W_BO .......................................................................................................................................... 67
7.25 DW_BO ....................................................................................................................................... 68
8 Arithmetik-Bausteine mit dem Datentyp REAL....................................................................................... 69
8.1 MATH_FP .................................................................................................................................... 69
8.2 ADD_R: Addition von REAL-Werten ........................................................................................... 71
8.3 SUB_R: Subtraktion von REAL-Werten ...................................................................................... 72
8.4 MUL_R: Multiplikation von REAL-Werten ................................................................................... 73
8.5 DIV_R: Division von REAL-Werten ............................................................................................. 74
8.6 MAXn_R: Maximum von REAL-Werten ...................................................................................... 75
8.7 MINn_R: Minimum von REAL- Werten ....................................................................................... 76
8.8 ABS_R: Absolutwert von REAL-Werten ...................................................................................... 77

Hilfe für CFC - Elementarbausteine


4 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Inhaltsverzeichnis

8.9 SQRT: Quadratwurzel ..................................................................................................................78


8.10 EXP: Exponentialfunktion ............................................................................................................79
8.11 POW10: Zehner Potenzfunktion ..................................................................................................80
8.12 LN: Natürlicher Logarithmus ........................................................................................................81
8.13 LOG10: Logarithmus zur Basis 10 ...............................................................................................82
8.14 SIN: Sinusfunktion .......................................................................................................................83
8.15 COS: Cosinusfunktion ..................................................................................................................84
8.16 TAN: Tangensfunktion .................................................................................................................85
8.17 ASIN: Arcussinusfunktion ............................................................................................................86
8.18 ACOS: Arcuscosinusfunktion .......................................................................................................87
8.19 ATAN: Arcustangensfunktion .......................................................................................................88
8.20 NEG_R: Negierer von REAL-Werten ...........................................................................................89
8.21 LIM_R: Begrenzer von REAL-Werten ..........................................................................................90
8.22 EPS_R: Genauigkeit Approximation ............................................................................................91
8.23 CADD_R: Steuerbarer Addierer von REAL-Werten.....................................................................92
8.24 POWXY: Allgemeine Potenzfunktion ...........................................................................................93
8.25 SAMP_AVE: Gleitender Mittelwert ...............................................................................................94
9 Arithmetik-Bausteine mit den Datentypen INT und DINT ....................................................................... 95
9.1 MATH_INT ...................................................................................................................................95
9.2 ADD_I: Addition von INT-Werten .................................................................................................97
9.3 SUB_I: Subtraktion von INT-Werten ............................................................................................98
9.4 MUL_I: Multiplikation von INT-Werten .........................................................................................99
9.5 DIV_I: Division von INT-Werten .................................................................................................100
9.6 MOD_I: Modulo-Funktion von INT-Werten ................................................................................101
9.7 MAXn_I: Maximum von INT-Werten ..........................................................................................102
9.8 MINn_I: Minimum von INT- Werten............................................................................................103
9.9 ABS_I: Absolutwert von INT-Werten ..........................................................................................104
9.10 NEG_I: Negierer von INT-Werten ..............................................................................................105
9.11 LIM_I: Begrenzer von INT-Werten .............................................................................................106
9.12 EPS_I: Genauigkeit Approximation von INT-Werten .................................................................107
9.13 CADD_I: Steuerbarer Addierer von INT-Werten ........................................................................108
9.14 ADD_DI: Addition von DINT-Werten ..........................................................................................109
9.15 SUB_DI: Subtraktion von DINT-Werten .....................................................................................110
9.16 MUL_DI: Multiplikation von DINT ...............................................................................................111
9.17 DIV_DI: Division von DINT-Werten ............................................................................................112

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 5
Inhaltsverzeichnis

9.18 MOD_DI: Modulo-Funktion von DINT-Werten .......................................................................... 113


9.19 MAXn_DI: Maximum von DINT-Werten .................................................................................... 114
9.20 MINn_DI: Minimum von DINT- Werten ..................................................................................... 115
9.21 ABS_DI: Absolutwert von DINT-Werten .................................................................................... 116
9.22 NEG_DI: Negierer von DINT-Werten ........................................................................................ 117
9.23 LIM_DI: Begrenzer von DINT-Werten ....................................................................................... 118
9.24 EPS_DI: Genauigkeit Approximation von DINT-Werten ........................................................... 119
9.25 CADD_DI: Steuerbarer Addierer von DINT-Werten .................................................................. 120
10 Flip-Flop Bausteine ..............................................................................................................................121
10.1 FLIPFLOP ................................................................................................................................. 121
10.2 JK_FF: JK-FlipFlop .................................................................................................................... 122
10.3 RS_FF: RS-FlipFlop, rücksetzen dominant............................................................................... 123
10.4 SR_FF: SR-FlipFlop, setzen dominant ..................................................................................... 124
11 Shift-Bausteine ....................................................................................................................................125
11.1 SHIFT ........................................................................................................................................ 125
11.2 SHL_W: WORD nach links schieben ........................................................................................ 126
11.3 SHL_DW: DWORD nach links schieben ................................................................................... 127
11.4 SHR_W: WORD nach rechts schieben ..................................................................................... 128
11.5 SHR_DW: DWORD nach rechts schieben................................................................................ 129
11.6 ROL_W: WORD links drehen .................................................................................................... 130
11.7 ROL_DW: DWORD links drehen............................................................................................... 131
11.8 ROR_W: WORD rechts drehen................................................................................................. 132
11.9 ROR_DW: DWORD rechts drehen ........................................................................................... 133
12 Multiplex-Bausteine..............................................................................................................................135
12.1 MULTIPLX ................................................................................................................................. 135
12.2 MUXn_I: Multiplexer 1 aus n für INT-Werte .............................................................................. 136
12.3 MUXn_DI: Multiplexer 1 aus n für DINT-Werte ......................................................................... 137
12.4 MUXn_R: Multiplexer 1 aus n für REAL-Werte ......................................................................... 138
12.5 MUXn_BO: Multiplexer 1 aus n für BOOL-Werte ...................................................................... 139
12.6 SEL_BO: Multiplexer 1 aus 2 für BOOL-Werte ......................................................................... 140
12.7 SEL_R: Multiplexer 1 aus 2 für REAL-Werte ............................................................................ 141
13 Zählbausteine ......................................................................................................................................143
13.1 COUNTER................................................................................................................................. 143
13.2 CTU: Vorwärtszähler ................................................................................................................. 144
13.3 CTD: Rückwärtszähler .............................................................................................................. 146

Hilfe für CFC - Elementarbausteine


6 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Inhaltsverzeichnis

13.4 CTUD: Vor- und Rückwärtszähler..............................................................................................147


14 Bausteine zum Erzeugen oder Bearbeiten von Impulsen ..................................................................... 149
14.1 IMPULS ......................................................................................................................................149
14.2 TIMER_P: Impulsbildner ............................................................................................................150
14.3 R_TRIG: Erkennung der steigenden Flanke ..............................................................................153
14.4 F_TRIG: Erkennung der fallenden Flanke .................................................................................154
14.5 AFP: Taktgeber ..........................................................................................................................155
15 Bausteine zur Erfassung oder Bearbeitung von Zeitpunkten und Zeiträumen ...................................... 157
15.1 TIME ...........................................................................................................................................157
15.2 TIME: Ausführungszeit messen .................................................................................................158
15.3 TIME_BEG: Aktuelle Uhrzeit auslesen ......................................................................................159
15.4 TIME_END: Eingangszeit mit der aktuellen Zeit vergleichen ....................................................160
16 Regelungsbausteine ........................................................................................................................... 161
16.1 CONTROL..................................................................................................................................161
16.2 CONT_C.....................................................................................................................................162
16.2.1 CONT_C: Kontinuierlicher Regler ..............................................................................................162
16.2.2 CONT_C: Blockschaltbild ...........................................................................................................168
16.3 CONT_S .....................................................................................................................................169
16.3.1 CONT_S: Schrittregler ...............................................................................................................169
16.3.2 CONT_S: Blockschaltbild ...........................................................................................................174
16.4 PULSEGEN................................................................................................................................175
16.4.1 PULSEGEN: Pulsbreitenmodulation für PID-Regler..................................................................175
16.4.2 PULSEGEN: Blockschaltbild......................................................................................................181
16.4.3 PULSEGEN: Dreipunktregelung ................................................................................................181
16.4.4 PULSEGEN: Dreipunktregelung, unsymmetrisch......................................................................182
16.4.5 PULSEGEN: Zweipunktregelung ...............................................................................................183
16.4.6 PULSEGEN: Handbetrieb bei Zwei- oder Dreipunktregelung ...................................................184
17 Bausteine für Systemfunktionen .......................................................................................................... 185
17.1 EVENT: Start der Ablaufebene ..................................................................................................185
17.2 DELAY .......................................................................................................................................186
17.3 DELAY: Verzögern der Startereignisse .....................................................................................187
17.4 EDELAY : Freigabe der verzögerten Startereignisse ................................................................188
17.5 DISCARD: Alle auftretenden Startereignisse werden verworfen ...............................................189
17.6 EDISCARD: Freigabe aller neu auftretenden Startereignisse ...................................................190
17.7 LASTERR: Ermittlung des Fehlercodes in DELAY, EDELAY, DISCARD,
EDISCARD,P_REASON ............................................................................................................191
17.8 SYSTIME: Ermittlung der Systemzeit ........................................................................................192
17.9 P_REASON: Ermittlung der Ursache des Prozessalarms .........................................................193
17.10 FRC_CFC: Interner Baustein .....................................................................................................194

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 7
Inhaltsverzeichnis

18 Bausteine für AS-übergreifende Verbindungen .....................................................................................195


18.1 IK_STATE.................................................................................................................................. 195
18.2 IK_MANAG ................................................................................................................................ 197
18.3 IK_SEND ................................................................................................................................... 198
18.4 IK_RCV...................................................................................................................................... 199
18.5 IK_CP_OU ................................................................................................................................. 200
18.6 IK_CP_IN ................................................................................................................................... 201
18.7 IK_ALARM ................................................................................................................................. 202
19 Bausteinfamilie "@SYSTEM" ...............................................................................................................203
19.1 PA_CPU: Überwachungsbaustein für Lizenzinformationen ...................................................... 203
20 Anhang ................................................................................................................................................205
20.1 Handwertverarbeitung ............................................................................................................... 205
20.2 Impulsbreitenmodulation ........................................................................................................... 206
20.3 Istwertzweig............................................................................................................................... 207
20.4 Kennlinie mit bipolarem Stellwertbereich .................................................................................. 208
20.5 Kennlinie mit unipolarem Stellwertbereich ................................................................................ 209
20.6 PI-Schrittalgorithmus ................................................................................................................. 210
20.7 PID-Algorithmus ........................................................................................................................ 211
20.8 Regeldifferenzbildung ............................................................................................................... 212
20.9 Sollwertzweig ............................................................................................................................ 213
20.10 Stellwertverarbeitung ................................................................................................................ 214
20.11 Störgrößenaufschaltung ............................................................................................................ 215
20.12 Symetrische Kennlinie für Dreipunktregler ................................................................................ 216
20.13 Unsymetrische Kennlinie des Dreipunktreglers ........................................................................ 217
Index ...................................................................................................................................................219

Hilfe für CFC - Elementarbausteine


8 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteinparameter EN, ENO, SAMPLE_T 1
EN
EN (enable): Freigabeeingang.
Der Eingang ist nur in der grafischen CFC-Darstellung vorhanden, allerdings unsichtbar
geschaltet. Bei dem Freigabeeingang können Sie das Ein- / Ausschalten der Bearbeitung
des Bausteins steuern. Dadurch wird im Ablaufcode auf AS-Ebene erreicht, dass der
Baustein nur dann aufgerufen wird, wenn er mit EN = 1 freigegeben ist.

ENO
ENO: entspricht dem BIE (Binäres Ergebnis- siehe STEP 7-Beschreibung).
ENO = 1 zeigt ein gültiges, der Funktion entsprechendes Ergebnis an. Beim Auftreten von
Fehlern, die durch das Betriebssystem und/oder durch die Fehlerbehandlung im
Bausteinprogramm erkannt werden, wird durch ENO = 0 ein ungültiges Ergebnis angezeigt.
Sie können diese Information nutzen, um auf andere Werte umzuschalten (z. B.
Sicherheitswerte) und wenn nötig Meldungen an der OS anzuzeigen.
Der ENO wird auch dann auf FALSE gesetzt, wenn EN = FALSE ist.

SAMPLE_T
Alle Bausteine mit dem Eingangsparameter SAMPLE_T müssen in zeitlich äquidistanten
Tasks abgearbeitet werden, z. B. OB 35: Weckalarm 100 ms. Beim Einbau in
nichtzyklischen Tasks, z. B. Prozessalarm, liefern diese Bausteine falsche Ergebnisse.

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 9
Bausteinparameter EN, ENO, SAMPLE_T

Hilfe für CFC - Elementarbausteine


10 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Anlauf bei S7-300 CPUs 2
Anlauf
Da bei S7-300-CPUs die Neustartebene nicht automatisch erkannt werden kann, wird bei
Bausteinen mit Anlaufverhalten (in ELEM_300 enthalten) das Merkerwort 0 (MW0) als
Anlaufmerker verwendet. Dieses Merkerwort darf daher im Anwenderprogramm nicht
verändert werden.
Damit der Anlauf korrekt durchlaufen wird, müssen Sie die Funktion RESTART (FC 70)
einmal pro S7-300-CPU in einem CFC-Plan platzieren.
Vorgehen:
1. Öffnen Sie den Ablaufeditor mit dem Menübefehl Bearbeiten > Ablaufreihenfolge oder
über das Symbol in der Funktionsleiste.
2. Bauen Sie im OB 100 den RESTART-Baustein an erster Stelle ein.
3. Löschen Sie den RESTART-Baustein in der zyklischen Task (voreingestellt: OB 35)
der Baustein wird nur noch im OB 100 aufgerufen.

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 11
Anlauf bei S7-300 CPUs

Hilfe für CFC - Elementarbausteine


12 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
CFC-Bausteine 3
Folgende CFC-Bausteinfamilien stehen zur Verfügung:

Familie Verwendung
BIT-LGC (Seite 15) Logik-Bausteine mit dem Datentyp BOOL
WRD_LGC Logik-Bausteine mit dem Datentyp WORD und DWORD
(Seite 23)
COMPARE Bausteine zum Vergleichen zweier Eingangswerte gleichen Typs
(Seite 37)
CONVERT (Seite 43) Bausteine zum Konvertieren von Datentypen
MATH_FP (Seite 69) Arithmetik-Bausteine mit dem Datentyp REAL
MATH_INT Arithmetik-Bausteine mit den Datentypen INT und DINT
(Seite 95)
FLIPFLOP Flip-Flop Bausteine
(Seite 121)
SHIFT (Seite 125) Shift-Bausteine
MULTIPLX Multiplex-Bausteine
(Seite 135)
COUNTER Zähl-Bausteine
(Seite 143)
IMPULS (Seite 149) Bausteine zum Erzeugen oder Bearbeiten von Impulsen
TIME (Seite 157) Bausteine zur Erfassung oder Bearbeitung von Zeitpunkten und Zeiträumen
CONTROL Regelungs-Bausteine
(Seite 161)
EVENT: Start der Bausteine für Systemfunktionen
Ablaufebene
(Seite 185)
Bausteine für AS- Bausteine für AS-übergreifende Verbindungen
übergreifende
Verbindungen
(Seite 195)

Informationen zu den Bausteinen ALARM_8P, BSEND und BRCV finden Sie in der Hilfe
PCS 7 Standard Library.

Hinweis
Der Initialwert am Ausgang der CFC-Bausteine ist, unabhängig von den Werten an den
Eingängen, "1". Das bedeutet, dass die nachfolgende Logik mit "1" versorgt wird, solange
der Baustein nicht bearbeitet wird.

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 13
CFC-Bausteine

Hilfe für CFC - Elementarbausteine


14 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Logikbausteine mit dem Datentyp BOOL 4
4.1 BIT-LGC

CFC-Bausteine der Familie "BIT_LGC"


In dieser Familie sind folgende Bausteine zusammengefasst, mit denen logische
Verknüpfungen realisiert werden können:

AND: Und-Verknüpfung Und-Verknüpfung


(Seite 16)
OR: Oder-Verknüpfung Oder-Verknüpfung
(Seite 17)
XOR: Antivalenz- Antivalenz-Verknüpfung
Verknüpfung (Seite 18)
NAND: Nand-Verknüpfung Nand-Verknüpfung
(Seite 19)
NOR: Nor-Verknüpfung Nor-Verknüpfung
(Seite 20)
NOT: Not-Verknüpfung Not-Verknüpfung
(Seite 21)

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 15
Logikbausteine mit dem Datentyp BOOL
4.2 AND: Und-Verknüpfung

4.2 AND: Und-Verknüpfung

Funktion
Dieser Baustein verknüpft die Eingänge zu einem logischen UND. Der Ausgang ist 1, wenn
alle Eingänge 1 sind. Sonst ist der Ausgang 0. Die Anzahl der Eingänge IN kann verändert
werden.

Wahrheitstabelle (Beispiel für n = 2)

IN1 IN2 OUT


0 0 0
0 1 0
1 0 0
1 1 1

Anschlüsse

Name Datentyp Voreinstellung


Eingänge IN1 BOOL 1
IN2 BOOL 1
... ...
INn BOOL 1
Ausgang OUT BOOL 1

Hilfe für CFC - Elementarbausteine


16 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Logikbausteine mit dem Datentyp BOOL
4.3 OR: Oder-Verknüpfung

4.3 OR: Oder-Verknüpfung

Funktion
Dieser Baustein verknüpft die Eingänge zu einem logischen ODER. Der Ausgang ist 1, wenn
wenigstens ein Eingang 1 ist. Wenn alle Eingänge 0 sind, ist der Ausgang 0. Die Anzahl der
Eingänge IN kann verändert werden.

Wahrheitstabelle (Beispiel für n = 2)

IN1 IN2 OUT


0 0 0
0 1 1
1 0 1
1 1 1

Anschlüsse

Name Datentyp Voreinstellung


Eingänge IN1 BOOL 0
IN2 BOOL 0
... ...
INn BOOL 0
Ausgang OUT BOOL 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 17
Logikbausteine mit dem Datentyp BOOL
4.4 XOR: Antivalenz-Verknüpfung

4.4 XOR: Antivalenz-Verknüpfung

Funktion
Dieser Baustein verknüpft die Eingänge zu einem Exklusiv-ODER. Der Ausgang ist 0, wenn
alle Eingänge den selben Wert haben. Sonst ist der Ausgang 1. Die Anzahl der Eingänge IN
kann verändert werden.

Wahrheitstabelle (Beispiel für n = 2)

IN1 IN2 OUT


0 0 0
0 1 1
1 0 1
1 1 0

Anschlüsse

Name Datentyp Voreinstellung


Eingänge IN1 BOOL 0
IN2 BOOL 0
... ...
INn BOOL 0
Ausgang OUT BOOL 0

Hilfe für CFC - Elementarbausteine


18 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Logikbausteine mit dem Datentyp BOOL
4.5 NAND: Nand-Verknüpfung

4.5 NAND: Nand-Verknüpfung

Funktion
Dieser Baustein verknüpft die Eingänge zu einem logischen UND, das anschließend negiert
wird. Der Ausgang ist nur dann 0, wenn alle Eingänge 1 sind. Die Anzahl der Eingänge IN
kann verändert werden.

Wahrheitstabelle (Beispiel für n = 2)

IN1 IN2 OUT


0 0 1
0 1 1
1 0 1
1 1 0

Anschlüsse

Name Datentyp Voreinstellung


Eingänge IN1 BOOL 1
IN2 BOOL 1
... ...
INn BOOL 1
Ausgang OUT BOOL 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 19
Logikbausteine mit dem Datentyp BOOL
4.6 NOR: Nor-Verknüpfung

4.6 NOR: Nor-Verknüpfung

Funktion
Dieser Baustein verknüpft die Eingänge zu einem logischen ODER, das anschließend
negiert wird. Der Ausgang ist nur dann 1, wenn alle Eingänge 0 sind. Die Anzahl der
Eingänge IN kann verändert werden.

Wahrheitstabelle (Beispiel für n = 2)

IN1 IN2 OUT


0 0 1
0 1 0
1 0 0
1 1 0

Anschlüsse

Name Datentyp Voreinstellung


Eingänge IN1 BOOL 0
IN2 BOOL 0
... ...
INn BOOL 0
Ausgang OUT BOOL 1

Hilfe für CFC - Elementarbausteine


20 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Logikbausteine mit dem Datentyp BOOL
4.7 NOT: Not-Verknüpfung

4.7 NOT: Not-Verknüpfung

Funktion
Der Baustein invertiert den Eingang.

Wahrheitstabelle

IN OUT
0 1
1 0

Anschlüsse

Name Datentyp Voreinstellung


Eingang IN BOOL 0
Ausgang OUT BOOL 1

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 21
Logikbausteine mit dem Datentyp BOOL
4.7 NOT: Not-Verknüpfung

Hilfe für CFC - Elementarbausteine


22 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Logikbausteine mit dem Datentyp WORD und
DWORD 5
5.1 WRD_LGC

CFC-Bausteine der Familie "WRD_LGC"


In dieser Familie sind folgende Bausteine zusammengefasst, mit denen logische
Verknüpfungen der Datentypen WORD und DWORD realisiert werden können:

WAND_W: Wortweise Und-Verknüpfung Wortweise Und-Verknüpfung


(Seite 24)
WAND_DW Doppelwortweise Und-Verknüpfung
WOR_W: Wortweise Oder-Verknüpfung Wortweise Oder-Verknüpfung
(Seite 25)
WOR_DW Doppelwortweise Oder-Verknüpfung
WXOR_W: Wortweise Antivalenz-Verknüpfung Wortweise Antivalenz-Verknüpfung
(Seite 26)
WXOR_DW Doppelwortweise Antivalenz-Verknüpfung
WNAND_W: Wortweise Und-Verknüpfung Wortweise Nand-Verknüpfung
(Seite 27)
WNAND_DW Doppelwortweise Nand-Verknüpfung
WNOR_W: Wortweise Nor-Verknüpfung Wortweise Nor-Verknüpfung
(Seite 28)
WNOR_DW Doppelwortweise Nor-Verknüpfung
WNOT_W Wortweise Not-Verknüpfung
WNOT_DW: Doppelwortweise Not-Verknüpfung Doppelwortweise Not-Verknüpfung
(Seite 35)

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 23
Logikbausteine mit dem Datentyp WORD und DWORD
5.2 WAND_W: Wortweise Und-Verknüpfung

5.2 WAND_W: Wortweise Und-Verknüpfung

Funktion
Dieser Baustein verknüpft die Eingänge wortweise zu einem logischen UND. Die Bits mit
gleicher Wertigkeit sämtlicher Eingänge werden nach logisch-UND verknüpft und das
Ergebnis in das entsprechende Bit des Ausgangs geschrieben. Die Anzahl der Eingänge IN
kann verändert werden.

Beispiel (für 2 Eingänge)

IN1 2# 1 1 1 1_0 0 0 0_1 1 1 1_0 0 0 0_1 1 0 1


IN2 2# 1 1 1 1_0 0 0 0_0 0 1 1_0 0 0 0_0 0 1 1
OUT 2# 1 1 1 1_0 0 0 0_0 0 1 1_0 0 0 0_0 0 0 1

Anschlüsse

Name Datentyp Voreinstellung


Eingänge IN1 WORD 0
IN2 WORD 0
...
Ausgang OUT WORD 0

Hilfe für CFC - Elementarbausteine


24 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Logikbausteine mit dem Datentyp WORD und DWORD
5.3 WOR_W: Wortweise Oder-Verknüpfung

5.3 WOR_W: Wortweise Oder-Verknüpfung

Funktion
Dieser Baustein verknüpft die Eingänge wortweise zu einem logischen ODER. Die Bits mit
gleicher Wertigkeit sämtlicher Eingänge werden nach logisch-ODER verknüpft und das
Ergebnis in das entsprechende Bit des Ausgangs geschrieben. Die Anzahl der Eingänge IN
kann verändert werden.

Beispiel (für 2 Eingänge)

IN1 2# 1 1 1 1_0 0 0 0_1 1 1 1_0 0 0 0_1 1 0 1


IN2 2# 1 1 1 1_0 0 0 0_0 0 1 1_0 0 0 0_0 0 1 1
OUT 2# 1 1 1 1_0 0 0 0_1 1 1 1_0 0 0 0_1 1 1 1

Anschlüsse

Name Datentyp Voreinstellung


Eingänge IN1 WORD 0
IN2 WORD 0
...
Ausgang OUT WORD 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 25
Logikbausteine mit dem Datentyp WORD und DWORD
5.4 WXOR_W: Wortweise Antivalenz-Verknüpfung

5.4 WXOR_W: Wortweise Antivalenz-Verknüpfung

Funktion
Dieser Baustein verknüpft die Eingänge wortweise zu einem logischen Exklusiv-ODER. Die
Bits mit gleicher Wertigkeit sämtlicher Eingänge werden nach logischem Exklusiv-ODER
verknüpft und das Ergebnis in das entsprechende Bit des Ausgangs geschrieben. Das Bit ist
0, wenn die Bits mit gleicher Wertigkeit aller Eingänge den selben Wert haben. Sonst ist das
Bit 1. Die Anzahl der Eingänge IN kann verändert werden.

Beispiel (für 2 Eingänge)

IN1 2# 1 1 1 1_0 0 0 0_1 1 1 1_0 0 0 0_1 1 0 1


IN2 2# 1 1 1 1_0 0 0 0_0 0 1 1_0 0 0 0_0 0 1 1
OUT 2# 0 0 0 0_0 0 0 0_1 1 0 0_0 0 0 0_1 1 1 0

Anschlüsse

Name Datentyp Voreinstellung


Eingänge IN1 WORD 0
IN2 WORD 0
...
Ausgang OUT WORD 0

Hilfe für CFC - Elementarbausteine


26 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Logikbausteine mit dem Datentyp WORD und DWORD
5.5 WNAND_W: Wortweise Und-Verknüpfung

5.5 WNAND_W: Wortweise Und-Verknüpfung

Funktion
Dieser Baustein verknüpft die Eingänge wortweise zu einem logischen NICHT UND. Die Bits
mit gleicher Wertigkeit sämtlicher Eingänge werden nach logischem UND verknüpft,
anschließend negiert und in das entsprechende Bit des Ausgangs geschrieben. Die Anzahl
der Eingänge IN kann verändert werden.

Beispiel (für 2 Eingänge)

IN1 2# 1 1 1 1_0 0 0 0_1 1 1 1_0 0 0 0_1 1 0 1


IN2 2# 1 1 1 1_0 0 0 0_0 0 1 1_0 0 0 0_0 0 1 1
OUT 2# 0 0 0 0_1 1 1 1_1 1 0 0_1 1 1 1_1 1 1 0

Anschlüsse

Name Datentyp Voreinstellung


Eingänge IN1 WORD 0
IN2 WORD 0
...
Ausgang OUT WORD 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 27
Logikbausteine mit dem Datentyp WORD und DWORD
5.6 WNOR_W: Wortweise Nor-Verknüpfung

5.6 WNOR_W: Wortweise Nor-Verknüpfung

Funktion
Dieser Baustein verknüpft die Eingänge wortweise zu einem logischen NICHT ODER. Die
Bits mit gleicher Wertigkeit sämtlicher Eingänge werden nach logischem ODER verknüpft,
anschließend wird das Ergebnis negiert und in das entsprechende Bit des Ausgangs
geschrieben. Die Anzahl der Eingänge IN kann verändert werden.

Beispiel (für 2 Eingänge)

IN1 2# 1 1 1 1_0 0 0 0_1 1 1 1_0 0 0 0_1 1 0 1


IN2 2# 1 1 1 1_0 0 0 0_0 0 1 1_0 0 0 0_0 0 1 1
OUT 2# 0 0 0 0_1 1 1 1_0 0 0 0_1 1 1 1_0 0 0 0

Anschlüsse

Name Datentyp Voreinstellung


Eingänge IN1 WORD 0
IN2 WORD 0
Ausgang OUT WORD 0

Hilfe für CFC - Elementarbausteine


28 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Logikbausteine mit dem Datentyp WORD und DWORD
5.7 WNOT_W: Wortweise Not-Verknüpfung

5.7 WNOT_W: Wortweise Not-Verknüpfung

Funktion
Der Baustein invertiert wortweise den Eingang. Jedes Bit des Eingangs wird negiert und in
das gleichwertige Bit des Ausgangs geschrieben.

Beispiel

IN 2# 1 1 1 1_0 0 0 0_1 1 1 1_0 0 0 0_1 1 0 1


OUT 2# 0 0 0 0_1 1 1 1_0 0 0 0_1 1 1 1_0 0 1 0

Anschlüsse

Name Datentyp Voreinstellung


Eingang IN WORD 0
Ausgang OUT WORD 1

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 29
Logikbausteine mit dem Datentyp WORD und DWORD
5.8 WAND_DW: Doppelwortweise Und-Verknüpfung

5.8 WAND_DW: Doppelwortweise Und-Verknüpfung

Funktion
Dieser Baustein verknüpft die Eingänge doppelwortweise zu einem logischen UND. Die Bits
mit gleicher Wertigkeit sämtlicher Eingänge werden nach logisch-UND verknüpft und das
Ergebnis in das entsprechende Bit des Ausgangs geschrieben. Die Anzahl der Eingänge IN
kann verändert werden.

Beispiel (wie bei WAND_W, erweitert auf 32 Bit)

Anschlüsse

Name Datentyp Voreinstellung


Eingänge IN1 DWORD 0
IN2 DWORD 0
Ausgang OUT DWORD 0

Hilfe für CFC - Elementarbausteine


30 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Logikbausteine mit dem Datentyp WORD und DWORD
5.9 WOR_DW: Doppelwortweise Oder-Verknüpfung

5.9 WOR_DW: Doppelwortweise Oder-Verknüpfung

Funktion
Dieser Baustein verknüpft die Eingänge doppelwortweise zu einem logischen ODER. Die
Bits mit gleicher Wertigkeit sämtlicher Eingänge werden nach logisch-ODER verknüpft und
das Ergebnis in das entsprechende Bit des Ausgangs geschrieben. Die Anzahl der Eingänge
IN kann verändert werden.

Beispiel (wie bei WOR_W, erweitert auf 32 Bit)

Anschlüsse

Name Datentyp Voreinstellung


Eingänge IN1 DWORD 0
IN2 DWORD 0
Ausgang OUT DWORD 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 31
Logikbausteine mit dem Datentyp WORD und DWORD
5.10 WXOR_DW: Doppelwortweise Antivalenz-Verknüpfung

5.10 WXOR_DW: Doppelwortweise Antivalenz-Verknüpfung

Funktion
Dieser Baustein verknüpft die Eingänge doppelwortweise zu einem logischen Exklusiv-
ODER. Die Bits mit gleicher Wertigkeit sämtlicher Eingänge werden nach Exklusiv-ODER
verknüpft und das Ergebnis in das entsprechende Bit des Ausgangs geschrieben. Das Bit ist
0, wenn die Bits mit gleicher Wertigkeit aller Eingänge den selben Wert haben. Sonst ist das
Bit 1. Die Anzahl der Eingänge IN kann verändert werden.

Beispiel (wie bei WXOR_W, erweitert auf 32 Bit)

Anschlüsse

Name Datentyp Voreinstellung


Eingänge IN1 DWORD 16#0
IN2 DWORD 16#0
Ausgang OUT DWORD 16#00000000

Hilfe für CFC - Elementarbausteine


32 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Logikbausteine mit dem Datentyp WORD und DWORD
5.11 WNAND_DW: Doppelwortweise Nand-Verknüpfung

5.11 WNAND_DW: Doppelwortweise Nand-Verknüpfung

Funktion
Dieser Baustein verknüpft die Eingänge doppelwortweise zu einem logischen NICHT UND.
Die Bits mit gleicher Wertigkeit sämtlicher Eingänge werden nach logischem UND verknüpft,
anschließend negiert und in das entsprechende Bit des Ausgangs geschrieben. Die Anzahl
der Eingänge IN kann verändert werden.

Beispiel (wie bei WNAND_W, erweitert auf 32 Bit)

Anschlüsse

Name Datentyp Voreinstellung


Eingänge IN1 DWORD 0
IN2 DWORD 0
Ausgang OUT DWORD 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 33
Logikbausteine mit dem Datentyp WORD und DWORD
5.12 WNOR_DW: Doppelwortweise Nor-Verknüpfung

5.12 WNOR_DW: Doppelwortweise Nor-Verknüpfung

Funktion
Dieser Baustein verknüpft die Eingänge doppelwortweise zu einem logischen NICHT ODER.
Die Bits mit gleicher Wertigkeit sämtlicher Eingänge werden nach logischem ODER
verknüpft, anschließend wird das Ergebnis negiert und in das entsprechende Bit des
Ausgangs geschrieben. Die Anzahl der Eingänge IN kann verändert werden.

Beispiel (wie bei WNOR_W, erweitert auf 32 Bit)

Anschlüsse

Name Datentyp Voreinstellung


Eingänge IN1 DWORD 0
IN2 DWORD 0
Ausgang OUT DWORD 0

Hilfe für CFC - Elementarbausteine


34 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Logikbausteine mit dem Datentyp WORD und DWORD
5.13 WNOT_DW: Doppelwortweise Not-Verknüpfung

5.13 WNOT_DW: Doppelwortweise Not-Verknüpfung

Funktion
Der Baustein invertiert wortweise den Eingang. Jedes Bit des Eingangs wird negiert und in
das gleichwertige Bit des Ausgangs geschrieben.

Beispiel (wie bei WNOT_W, erweitert auf 32 Bit)

Anschlüsse

Name Datentyp Voreinstellung


Eingang IN DWORD 0
Ausgang OUT DWORD 1

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 35
Logikbausteine mit dem Datentyp WORD und DWORD
5.13 WNOT_DW: Doppelwortweise Not-Verknüpfung

Hilfe für CFC - Elementarbausteine


36 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Vergleichen zweier Eingangswerte
gleichen Typs 6
6.1 COMPARE

CFC-Bausteine der Familie "COMPARE"


In dieser Familie sind die Bausteine zusammengefasst, die zwei Eingangsgrößen
vergleichen:

CMP_I: Vergleicher für INT-Werte (Seite 38) Vergleicher für INT-Werte


CMP_DI: Vergleicher für DINT-Werte (Seite 39) Vergleicher für DINT-Werte
CMP_R: Vergleicher für REAL-Werte (Seite 40) Vergleicher für REAL-Werte
CMP_T: Vergleicher für TIME-Werte (Seite 41) Vergleicher für TIME-Werte

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 37
Bausteine zum Vergleichen zweier Eingangswerte gleichen Typs
6.2 CMP_I: Vergleicher für INT-Werte

6.2 CMP_I: Vergleicher für INT-Werte

Funktion
Dieser Baustein vergleicht zwei Eingangsgrößen und setzt die Ausgänge folgendermaßen:
GT = 1 wenn IN1 > IN2,
GE = 1 wenn IN1 ≥ IN2,
EQ = 1 wenn IN1 = IN2
LE = 1 wenn IN1 ≤ IN2
LT = 1 wenn IN1 < IN2

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 INT Eingangsgröße 1 0
IN2 INT Eingangsgröße 2 0
Ausgänge GT BOOL 1, IN1 > IN2 0
GE BOOL 1, IN1 ≥ IN2 0
EQ BOOL 1, IN1 = IN2 0
LE BOOL 1, IN1 ≤ IN2 0
LT BOOL 1, IN1 < IN2 0

Hilfe für CFC - Elementarbausteine


38 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Vergleichen zweier Eingangswerte gleichen Typs
6.3 CMP_DI: Vergleicher für DINT-Werte

6.3 CMP_DI: Vergleicher für DINT-Werte

Funktion
Dieser Baustein vergleicht zwei Eingangsgrößen und setzt die Ausgänge folgendermaßen:
GT = 1 wenn IN1 > IN2,
GE = 1 wenn IN1 ≥ IN2
EQ = 1 wenn IN1 = IN2
LE = 1 wenn IN1 ≤ IN2
LT = 1 wenn IN1 < IN2

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 DINT Eingangsgröße 1 0
IN2 DINT Eingangsgröße 2 0
Ausgänge GT BOOL 1, IN1 > IN2 0
GE BOOL 1, IN1 ≥ IN2 0
EQ BOOL 1, IN1 = IN2 0
LE BOOL 1, IN1 ≤ IN2 0
LT BOOL 1, IN1 < IN2 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 39
Bausteine zum Vergleichen zweier Eingangswerte gleichen Typs
6.4 CMP_R: Vergleicher für REAL-Werte

6.4 CMP_R: Vergleicher für REAL-Werte

Funktion
Dieser Baustein vergleicht zwei Eingangsgrößen und setzt die Ausgänge folgendermaßen:
GT = 1 wenn IN1 > IN2,
GE = 1 wenn IN1 ≥ IN2
EQ = 1 wenn IN1 = IN2
LT = 1 wenn IN1 < IN2
LE = 1 wenn IN1 ≤ IN2
In jedem der Fälle werden die anderen vier Ausgänge entsprechend auf 0 gesetzt.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 REAL Eingangsgröße 1 0
IN2 REAL Eingangsgröße 2 0
Ausgänge GT BOOL 1, IN1 > IN2 0
GE BOOL 1, IN1 ≥ IN2 0
EQ BOOL 1, IN1 = IN2 0
LT BOOL 1, IN1 < IN2 0
LE BOOL 1, IN1 ≤ IN2 0

Hilfe für CFC - Elementarbausteine


40 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Vergleichen zweier Eingangswerte gleichen Typs
6.5 CMP_T: Vergleicher für TIME-Werte

6.5 CMP_T: Vergleicher für TIME-Werte

Funktion
Dieser Baustein vergleicht zwei Eingangsgrößen und setzt die Ausgänge folgendermaßen:
GT = 1 wenn IN1 > IN2,
GE = 1 wenn IN1 ≥ IN2
EQ = 1 wenn IN1 = IN2
LE = 1 wenn IN1 ≤ IN2
LT = 1 wenn IN1 < IN2

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 TIME Eingangsgröße 1 0
IN2 TIME Eingangsgröße 2 0
Ausgänge GT BOOL 1, IN1 > IN2 0
GE BOOL 1, IN1 ≥ IN2 0
EQ BOOL 1, IN1 = IN2 0
LE BOOL 1, IN1 ≤ IN2 0
LT BOOL 1, IN1 < IN2 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 41
Bausteine zum Vergleichen zweier Eingangswerte gleichen Typs
6.5 CMP_T: Vergleicher für TIME-Werte

Hilfe für CFC - Elementarbausteine


42 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Konvertieren von Datentypen 7
7.1 CONVERT

Einleitung
Im CFC kann man nur Bausteinausgänge (Quelltyp) mit Bausteineingängen (Zieltyp)
verbinden, wenn die beiden Datentypen identisch sind, z. B. REAL-Ausgang mit REAL-
Eingang. Um unterschiedliche Datentypen zu verschalten, müssen Konvertierbausteine
eingesetzt werden. Diese besitzen Ein- und Ausgänge unterschiedlichen Typs und setzen
den Eingangswert in den Datentyp des Ausgangs um.

Konvertierungsregeln
Der Typname der Konvertierbausteine wird gebildet durch die Abkürzung der Datentypen
des Quelltyps und des Zieltyps, verbunden durch "_".
In der folgenden Tabelle werden die Konvertierungsregeln der einzelnen Bausteine kurz
beschrieben. Wenn der Eingangswert IN nicht im zulässigen Bereich liegt, dann wird der
Ausgangswert OUT ungültig und über den Prüfausgang ENO = 0 angezeigt.
Sie können ENO auswerten, um z. B. einen Ersatzwert/Sicherheitswert in der weiteren
Bearbeitung zu verwenden.
In der Gruppe CONVERT sind Bausteine zusammengefasst, die n Werte eines Datentyps in
m Werte eines anderen Datentyps umwandeln. m und n können auch denselben Wert
haben.
Folgende Bausteine konvertieren einen Wert eines Datentyps in einen Wert eines anderen
Datentyps:

BY_DW (Seite 45) Konvertiert BYTE nach DWORD


BY_W (Seite 46) Konvertiert BYTE nach WORD
DI_DW (Seite 47) Konvertiert DINT nach DWORD
DI_I (Seite 48) Konvertiert DINT nach INT
DI_R (Seite 49) Konvertiert DINT nach REAL
DW_DI (Seite 50) Konvertiert DWORD nach DINT
DW_R (Seite 51) Konvertiert DWORD nach REAL
DW_W (Seite 52) Konvertiert DWORD nach WORD
I_DI (Seite 53) Konvertiert INT nach DINT
I_DW (Seite 54) Konvertiert INT nach DWORD
I_R (Seite 55) Konvertiert INT nach REAL
I_W (Seite 56) Konvertiert INT nach WORD
R_DI (Seite 57) Konvertiert REAL nach DINT
R_DW (Seite 58) Konvertiert REAL nach DWORD

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 43
Bausteine zum Konvertieren von Datentypen
7.1 CONVERT

R_I (Seite 59) Konvertiert REAL nach INT


W_BY (Seite 60) Konvertiert WORD nach BYTE
W_DW (Seite 61) Konvertiert WORD nach DWORD
W_I (Seite 62) Konvertiert WORD nach INT

Folgende Bausteine konvertieren mehrere Werte vom Typ BOOL in einen Wertvom Typ
BYTE, WORD oder DWORD:

BO_BY (Seite 63) Konvertiert BOOL nach BYTE, 8 Eingänge


BO_W (Seite 64) Konvertiert BOOL nach WORD, 16 Eingänge
BO_DW (Seite 65) Konvertiert BOOL nach DWORD, 32 Eingänge

Folgende Bausteine konvertieren einen Wertvom Typ BYTE, WORD oder DWORD in
mehrere Werte vom Typ BOOL:

BY_BO (Seite 66) Konvertiert BYTE nach BOOL, 8 Ausgänge


W_BO (Seite 67) Konvertiert WORD nach BOOL, 16 Ausgänge
DW_BO (Seite 68) Konvertiert DWORD nach BOOL, 32 Ausgänge

Hilfe für CFC - Elementarbausteine


44 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Konvertieren von Datentypen
7.2 BY_DW

7.2 BY_DW

Funktion
Das Byte von IN wird nach Low-Byte von OUT kopiert, die höheren Bytes werden auf 0
gesetzt.

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Voreinstellung


Eingang IN BYTE 0
Ausgang OUT DWORD 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 45
Bausteine zum Konvertieren von Datentypen
7.3 BY_W

7.3 BY_W

unktion
Das Byte von IN wird nach Low-Byte von OUT kopiert, der High-Byte wird auf 0 gesetzt.

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Voreinstellung


Eingang IN BYTE 0
Ausgang OUT WORD 0

Hilfe für CFC - Elementarbausteine


46 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Konvertieren von Datentypen
7.4 DI_DW

7.4 DI_DW

Funktion
Der Bitstring von IN wird nach OUT kopiert.

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN DINT Eingangswert 0
Ausgang OUT DWORD Ausgangswert 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 47
Bausteine zum Konvertieren von Datentypen
7.5 DI_I

7.5 DI_I

Funktion
Der Bitstring von IN wird als INT interpretiert und nach OUT kopiert.

Fehlerbehandlung
Bei Werten von IN außerhalb von -32 768 ... 32 767 wird ENO = 0 und OUT ist ein ungültiger
Wert.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN DINT Eingangswert 0
Ausgang OUT INT Ausgangswert 0

Hilfe für CFC - Elementarbausteine


48 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Konvertieren von Datentypen
7.6 DI_R

7.6 DI_R

Funktion
Der Wert von IN wird in eine REAL-Zahl umgewandelt und nach OUT kopiert.

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Voreinstellung


Eingang IN DINT 0
Ausgang OUT REAL 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 49
Bausteine zum Konvertieren von Datentypen
7.7 DW_DI

7.7 DW_DI

Funktion
Der Bitstring von IN wird nach OUT kopiert.

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN DWORD Eingangswert 0
Ausgang OUT DINT Ausgangswert 0

Hilfe für CFC - Elementarbausteine


50 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Konvertieren von Datentypen
7.8 DW_R

7.8 DW_R

Arbeitsweise
Der Baustein reicht den Bitstring nur weiter und führt keine Wertwandlung durch. Um eine
Wertwandlung nach REAL zu bekommen, muss der DW_DI Baustein und anschließend der
DI_R Baustein verwendet werden.

Funktion
Der Bitstring von IN wird nach OUT kopiert.

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN DWORD Eingangswert 0
Ausgang OUT REAL Ausgangswert 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 51
Bausteine zum Konvertieren von Datentypen
7.9 DW_W

7.9 DW_W

Funktion
Das Low-Word von IN wird nach Word von OUT kopiert.

Fehlerbehandlung
ENO = 0 bei High-Word von IN > 0

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN DWORD Eingangswert 0
Ausgang OUT WORD Ausgangswert 0

Hilfe für CFC - Elementarbausteine


52 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Konvertieren von Datentypen
7.10 I_DI

7.10 I_DI

Funktion
Der Wert von IN wird nach OUT kopiert.

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Voreinstellung


Eingang IN INT 0
Ausgang OUT DINT 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 53
Bausteine zum Konvertieren von Datentypen
7.11 I_DW

7.11 I_DW

Funktion
Der Bitstring von IN wird nach Low-Word von OUT kopiert, das High-Word wird auf 0
gesetzt.

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN INT Eingangswert 0
Ausgang OUT DWORD Ausgangswert 0

Hilfe für CFC - Elementarbausteine


54 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Konvertieren von Datentypen
7.12 I_R

7.12 I_R

Funktion
Die Integer-Zahl von IN wird nach OUT konvertiert.

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Voreinstellung


Eingang IN INT 0
Ausgang OUT REAL 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 55
Bausteine zum Konvertieren von Datentypen
7.13 I_W

7.13 I_W

Funktion
Der Bitstring von IN wird nach OUT kopiert.

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN INT Eingangswert 0
Ausgang OUT WORD Ausgangswert 0

Hilfe für CFC - Elementarbausteine


56 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Konvertieren von Datentypen
7.14 R_DI

7.14 R_DI

Funktion
Die Real-Zahl von IN wird nach OUT konvertiert.

Fehlerbehandlung
Wenn der Wert von IN nicht zwischen -2,147483648e+09 und 2,147483647e+09 liegt, dann
wird ENO = 0 und OUT ist ein ungültiger Wert.

Anschlüsse

Name Datentyp Voreinstellung


Eingang IN REAL 0
Ausgang OUT DINT 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 57
Bausteine zum Konvertieren von Datentypen
7.15 R_DW

7.15 R_DW

Arbeitsweise
Der Baustein reicht den Bitstring nur weiter und führt keine Wertwandlung durch. Um eine
Wertwandlung nach DW zu bekommen, muss der R_TO_DW-Baustein (PCS 7 Library)
verwendet werden.

Funktion
Der Bitstring von IN wird nach OUT kopiert.

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Voreinstellung


Eingang IN REAL 0
Ausgang OUT DWORD 0

Hilfe für CFC - Elementarbausteine


58 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Konvertieren von Datentypen
7.16 R_I

7.16 R_I

Funktion
Die REAL-Zahl am Eingang IN wird in eine INT-Zahl konvertiert und am Ausgang OUT
ausgegeben. Dabei wird folgendermaßen gerundet: 0,5 → 0, 1,5 → 2, 2,5 → 2, 3,5 → 4, usw.

Fehlerbehandlung
Wenn der Wert von IN nicht zwischen -32.768 und 32.767 liegt, dann wird ENO = 0 und OUT
ist ein ungültiger Wert.

Anschlüsse

Name Datentyp Voreinstellung


Eingang IN REAL 0
Ausgang: OUT INT 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 59
Bausteine zum Konvertieren von Datentypen
7.17 W_BY

7.17 W_BY

Funktion
Das Low-Byte von IN wird nach OUT kopiert.

Fehlerbehandlung
Wenn das High-Byte > 0 ist, dann wird ENO = 0.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN WORD Eingangswert 0
Ausgang OUT BYTE Ausgangswert 0

Hilfe für CFC - Elementarbausteine


60 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Konvertieren von Datentypen
7.18 W_DW

7.18 W_DW

Funktion
Das Word von IN wird in das Low-Word von OUT kopiert.

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Voreinstellung


Eingang IN WORD 0
Ausgang OUT DWORD 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 61
Bausteine zum Konvertieren von Datentypen
7.19 W_I

7.19 W_I

Funktion
Der Bitstring von IN wird nach OUT kopiert.

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN WORD Eingangswert 0
Ausgang OUT INT Ausgangswert 0

Hilfe für CFC - Elementarbausteine


62 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Konvertieren von Datentypen
7.20 BO_BY

7.20 BO_BY

Funktion
Dieser Baustein konvertiert die 8 Eingangswerte vom Typ BOOL in einen Wert vom Typ
BYTE, der am Ausgang angelegt wird. Die Konvertierung 8 BOOL -> 1 BYTE erfolgt
folgendermaßen:
Das i-te Bit des BYTE-Wertes wird auf 0 (oder 1), gesetzt, wenn der i-te Eingangswert 0 (
oder 1) ist. (i = 0..7).

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Voreinstellung


Eingänge IN0 BOOL 0
... ...
IN7 BOOL 0
Ausgang OUT BYTE 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 63
Bausteine zum Konvertieren von Datentypen
7.21 BO_W

7.21 BO_W

Funktion
Dieser Baustein konvertiert die 16 Eingangswerte vom Typ BOOL in einen Wert vom Typ
WORD, der am Ausgang angelegt wird. Die Konvertierung 16 BOOL -> 1 WORD erfolgt
folgendermaßen:
Das i-te Bit des WORD-Wertes wird auf 0 (oder 1) gesetzt, wenn der i-te Eingangswert 0
(oder 1) ist (i = 0..15).

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Voreinstellung


Eingänge IN0 BOOL 0
... ...
IN15 BOOL 0
Ausgang OUT WORD 0

Hilfe für CFC - Elementarbausteine


64 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Konvertieren von Datentypen
7.22 BO_DW

7.22 BO_DW

Funktion
Dieser Baustein konvertiert die 32 Eingangswerte vom Typ BOOL in einen Wert vom Typ
DWORD, der am Ausgang angelegt wird. Die Konvertierung 32 BOOL -> 1 DWORD erfolgt
folgendermaßen:
Das i-te Bit des DWORD-Wertes wird auf 0 (oder 1) gesetzt, wenn der i-te Eingangswert 0
(oder 1) ist (i = 0..31).

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Voreinstellung


Eingänge IN0 BOOL 0
... ...
IN31 BOOL 0
Ausgang OUT DWORD 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 65
Bausteine zum Konvertieren von Datentypen
7.23 BY_BO

7.23 BY_BO

Funktion
Dieser Baustein konvertiert den Eingangswert von Datentyp BYTE in 8 Werte von Datentyp
BOOL, die an den 8 Ausgängen angelegt werden. Dabei wird IN-Bit0 nach OUT0, IN-Bit1
nach OUT1 usw. umgesetzt.

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Voreinstellung


Eingang IN BYTE 0
Ausgänge OUT0 BOOL 0
... ...
OUT7 BOOL 0

Hilfe für CFC - Elementarbausteine


66 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Konvertieren von Datentypen
7.24 W_BO

7.24 W_BO

Funktion
Dieser Baustein konvertiert den Eingangswert von Datentyp WORD in 16 Werte des
Datentyps BOOL, die an den 16 Ausgängen angelegt werden. Dabei wird IN-Bit0 nach
OUT0, IN-Bit1 nach OUT1 usw. umgesetzt.

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Voreinstellung


Eingang IN WORD 0
Ausgänge OUT0 BOOL 0
... ...
OUT15 BOOL 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 67
Bausteine zum Konvertieren von Datentypen
7.25 DW_BO

7.25 DW_BO

Funktion
Dieser Baustein konvertiert den Eingangswert von Datentyp DWORD in 32 Werte des
Datentyps BOOL, die an den 32 Ausgängen angelegt werden. Dabei wird IN-Bit0 nach
OUT0, IN-Bit1 nach OUT1 usw. umgesetzt.

Fehlerbehandlung
entfällt

Anschlüsse

Name Datentyp Voreinstellung


Eingang IN DWORD 0
Ausgänge OUT0 BOOL 0
... ...
OUT31 BOOL 0

Hilfe für CFC - Elementarbausteine


68 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit dem Datentyp REAL 8
8.1 MATH_FP

CFC-Bausteine der Familie "MATH_FP"


In dieser Familie sind folgende Bausteine zusammengefasst, mit denen arithmetische
Operationen mit Daten vom Typ REAL realisiert werden:

ADD_R: Addition von REAL-Werten (Seite 71) Addition von REAL-Werten


SUB_R: Subtraktion von REAL-Werten (Seite 72) Subtraktion von REAL-Werten
MUL_R: Multiplikation von REAL-Werten (Seite 73) Multiplikation von REAL-Werten
DIV_R: Division von REAL-Werten (Seite 74) Division von REAL-Werten
ABS_R: Absolutwert von REAL-Werten (Seite 77) Absolutwert von REAL-Werten
EPS_R: Genauigkeit Approximation (Seite 91) Genauigkeit; Approximation
NEG_R: Negierer von REAL-Werten (Seite 89) Negierer von REAL-Werten
MAXn_R: Maximum von REAL-Werten (Seite 75) Maximum von REAL-Werten
MINn_R: Minimum von REAL- Werten (Seite 76) Minimum von REAL- Werten
LIM_R: Begrenzer von REAL-Werten (Seite 90) Begrenzer von REAL-Werten
CADD_R: Steuerbarer Addierer von REAL-Werten Steuerbarer Addierer von REAL-Werten
(Seite 92)
SQRT: Quadratwurzel (Seite 78) Quadratwurzel
EXP: Exponentialfunktion (Seite 79) Expontialfunktion
POW10: Zehner Potenzfunktion (Seite 80) Zehner Potenzfunktion
LN: Natürlicher Logarithmus (Seite 81) Natürlicher Logarithmus
LOG10: Logarithmus zur Basis 10 (Seite 82) Logarithmus zur Basis 10
SIN: Sinusfunktion (Seite 83) Sinusfunktion
COS: Cosinusfunktion (Seite 84) Cosinusfunktion
TAN: Tangensfunktion (Seite 85) Tangensfunktion
ASIN: Arcussinusfunktion (Seite 86) Arcussinusfunktion
ACOS: Arcuscosinusfunktion (Seite 87) Arcusosinusfunktion
ATAN: Arcustangensfunktion (Seite 88) Arcusangensfunktion
POWXY: Allgemeine Potenzfunktion (Seite 93) Allgemeine Potenzfunktion
SAMP_AVE: Gleitender Mittelwert (Seite 94) Gleitender Mittelwert

Hinweis
Der Wertebereich von Realzahlen ist:
-3,40282e^+38 ... -1,755e^-38 ... 0 ... 1,755e^-38 ... 3,40282e^+38

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 69
Arithmetik-Bausteine mit dem Datentyp REAL
8.1 MATH_FP

Hilfe für CFC - Elementarbausteine


70 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit dem Datentyp REAL
8.2 ADD_R: Addition von REAL-Werten

8.2 ADD_R: Addition von REAL-Werten

Funktion
Dieser Baustein addiert die Eingänge und gibt die Summe am Ausgang aus.
OUT = IN1 + IN2

Fehlerbehandlung
ENO = 0 bei Überlauf oder Unterlauf.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 REAL Summand 1 0.0
IN2 REAL Summand 2 0.0
Ausgang OUT REAL Summe 0.0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 71
Arithmetik-Bausteine mit dem Datentyp REAL
8.3 SUB_R: Subtraktion von REAL-Werten

8.3 SUB_R: Subtraktion von REAL-Werten

Funktion
Dieser Baustein subtrahiert den Eingang IN2 von Eingang IN1 und gibt die Differenz am
Ausgang aus.
OUT = IN1 - IN2

Fehlerbehandlung
ENO = 0 bei Überlauf und Unterlauf.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 REAL Minuend 0.0
IN2 REAL Subtrahend 0.0
Ausgang OUT REAL Differenz 0.0

Hilfe für CFC - Elementarbausteine


72 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit dem Datentyp REAL
8.4 MUL_R: Multiplikation von REAL-Werten

8.4 MUL_R: Multiplikation von REAL-Werten

Funktion
Dieser Baustein multipliziert die Eingänge und gibt das Produkt am Ausgang aus.
OUT = IN1 * IN2

Fehlerbehandlung
ENO = 0 bei Überlauf und Unterlauf.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 REAL Multiplikand 0.0
IN2 REAL Multiplikator 0.0
Ausgang OUT REAL Produkt 0.0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 73
Arithmetik-Bausteine mit dem Datentyp REAL
8.5 DIV_R: Division von REAL-Werten

8.5 DIV_R: Division von REAL-Werten

Funktion
Dieser Baustein teilt den Eingang IN1 durch den Eingang IN2 und gibt den Quotient am
Ausgang aus.
OUT = IN1 / IN2

Fehlerbehandlung
Bei Division durch 0, Überlauf und Unterlauf bekommt ENO den Wert 0.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 REAL Dividend 0.0
IN2 REAL Divisor 0.0
Ausgang OUT REAL Quotient 0.0

Hilfe für CFC - Elementarbausteine


74 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit dem Datentyp REAL
8.6 MAXn_R: Maximum von REAL-Werten

8.6 MAXn_R: Maximum von REAL-Werten

Funktion
Dieser Baustein vergleicht die Eingänge und gibt deren Maximum am Ausgang aus.
OUT = MAX {IN1, ... , INn}

Bausteine

Name Erklärung
MAX2_R 2 Eingänge vom Typ REAL
MAX4_R 4 Eingänge vom Typ REAL
MAX8_R 8 Eingänge vom Typ REAL

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 REAL Eingangsgröße 1 0.0
...
INn REAL Eingangsgröße n 0.0
Ausgang OUT REAL Maximalwert 0.0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 75
Arithmetik-Bausteine mit dem Datentyp REAL
8.7 MINn_R: Minimum von REAL- Werten

8.7 MINn_R: Minimum von REAL- Werten

Funktion
Dieser Baustein vergleicht die Eingänge und gibt deren Minimum am Ausgang aus.
OUT = MIN {IN1, ... , INn}

Bausteine

Name Erklärung
MIN2_R 2 Eingänge vom Typ REAL
MIN4_R 4 Eingänge vom Typ REAL
MIN8_R 8 Eingänge vom Typ REAL

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 REAL Eingangsgröße 1 0.0
...
INn REAL Eingangsgröße n 0.0
Ausgang OUT REAL Maximalwert 0.0

Hilfe für CFC - Elementarbausteine


76 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit dem Datentyp REAL
8.8 ABS_R: Absolutwert von REAL-Werten

8.8 ABS_R: Absolutwert von REAL-Werten

Funktion
Dieser Baustein gibt den absoluten Wert des Eingangs am Ausgang aus.
OUT = | IN |

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN REAL Eingangswert 0.0
Ausgang OUT REAL Absolutwert 0.0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 77
Arithmetik-Bausteine mit dem Datentyp REAL
8.9 SQRT: Quadratwurzel

8.9 SQRT: Quadratwurzel

Funktion
Dieser Baustein berechnet die Quadratwurzel des Eingangs und gibt diese am Ausgang aus.
OUT = SQRT(IN)

Fehlerbehandlung
ENO = 0 und OUT = 0, wenn IN < 0.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN REAL Radikand 0.0
Ausgang OUT REAL Wurzel 0.0

Hilfe für CFC - Elementarbausteine


78 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit dem Datentyp REAL
8.10 EXP: Exponentialfunktion

8.10 EXP: Exponentialfunktion

Funktion
Dieser Baustein berechnet die Exponentialfunktion des Eingangs und gibt diese am
Ausgang aus. e ist die Eulersche Zahl 2,71... und die Basis des natürlichen Logarithmus.
OUT = e^IN

Fehlerbehandlung
ENO = 0 bei Überlauf und Unterlauf.
ENO = 0 und OUT = 0, wenn IN < 0.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN REAL Exponent 0.0
Ausgang OUT REAL Exponentialfunktion 0.0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 79
Arithmetik-Bausteine mit dem Datentyp REAL
8.11 POW10: Zehner Potenzfunktion

8.11 POW10: Zehner Potenzfunktion

Funktion
Dieser Baustein berechnet die Potenzfunktion 10IN des Eingangs und gibt diese am Ausgang
aus.
OUT = 10^IN

Fehlerbehandlung
ENO = 0 bei IN1 < -37.9 und IN1 > 38.5

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN REAL Exponent 0.0
Ausgang OUT REAL Zehner Potenz 0.0

Hilfe für CFC - Elementarbausteine


80 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit dem Datentyp REAL
8.12 LN: Natürlicher Logarithmus

8.12 LN: Natürlicher Logarithmus

Funktion
Dieser Baustein berechnet den natürlichen Logarithmus des Eingangs und gibt diesen am
Ausgang aus.
OUT = LN (IN)
Der Eingang IN muss positiv sein.

Fehlerbehandlung
ENO = 0 bei Überlauf und Unterlauf.
ENO = 0 und OUT = 0, wenn IN < 0.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN REAL Argument 0.0
Ausgang OUT REAL nat. Logarithmus 0.0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 81
Arithmetik-Bausteine mit dem Datentyp REAL
8.13 LOG10: Logarithmus zur Basis 10

8.13 LOG10: Logarithmus zur Basis 10

Funktion
Dieser Baustein berechnet den Logarithmus zur Basis 10 aus dem Eingang und gibt diesen
am Ausgang aus.
OUT = LOG10(IN)
Der Eingang IN muss positiv sein.

Fehlerbehandlung
ENO = 0 bei Überlauf und Unterlauf.
ENO = 0 und OUT = 0, wenn IN < 0.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN REAL Argument 0.0
Ausgang OUT REAL Logarithmus 0.0

Hilfe für CFC - Elementarbausteine


82 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit dem Datentyp REAL
8.14 SIN: Sinusfunktion

8.14 SIN: Sinusfunktion

Funktion
Dieser Baustein berechnet die Sinusfunktion des Eingangs und gibt diese am Ausgang aus.
IN ist in Bogenmaß anzugeben.
OUT = SIN(IN)

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN REAL Argument 0.0
Ausgang OUT REAL Sinus 0.0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 83
Arithmetik-Bausteine mit dem Datentyp REAL
8.15 COS: Cosinusfunktion

8.15 COS: Cosinusfunktion

Funktion
Dieser Baustein berechnet die Kosinusfunktion des Eingangs und gibt diese am Ausgang
aus. IN ist in Bogenmaß anzugeben.
OUT = COS(IN)

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN REAL Argument 0.0
Ausgang OUT REAL Kosinus 0.0

Hilfe für CFC - Elementarbausteine


84 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit dem Datentyp REAL
8.16 TAN: Tangensfunktion

8.16 TAN: Tangensfunktion

Funktion
Dieser Baustein berechnet die Tangensfunktion des Eingangs und gibt diese am Ausgang
aus. IN ist in Bogenmaß anzugeben.
OUT = TAN(IN)

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN REAL Argument 0.0
Ausgang OUT REAL Tangens 0.0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 85
Arithmetik-Bausteine mit dem Datentyp REAL
8.17 ASIN: Arcussinusfunktion

8.17 ASIN: Arcussinusfunktion

Funktion
Dieser Baustein berechnet den Arcussinus des Eingangs und gibt diesen am Ausgang aus.
Das Ergebnis wird in Bogenmaß ausgegeben und hat einen Wert zwischen -π/2 und +π/2.
Das Argument der Funktion muss zwischen 1 und +1 liegen.
OUT = ASIN(IN)

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN REAL Argument 0.0
Ausgang OUT REAL Arcussinus 0.0

Hilfe für CFC - Elementarbausteine


86 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit dem Datentyp REAL
8.18 ACOS: Arcuscosinusfunktion

8.18 ACOS: Arcuscosinusfunktion

Funktion
Dieser Baustein berechnet den Arcuscosinus des Eingangs und gibt diesen am Ausgang
aus. Das Ergebnis wird in Bogenmaß ausgegeben und hat einen Wert zwischen 0 und π.
Das Argument der Funktion muss zwischen -1 und +1 liegen.
OUT = ACOS(IN)

Fehlerbehandlung
ENO = 0 bei IN < -1 --> OUT = 3.14..
ENO = 0 bei IN > 1 --> OUT = 0

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN REAL Argument 0.0
Ausgang OUT REAL Arcuscosinus 0.0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 87
Arithmetik-Bausteine mit dem Datentyp REAL
8.19 ATAN: Arcustangensfunktion

8.19 ATAN: Arcustangensfunktion

Funktion
Dieser Baustein berechnet den Arcustangens des Eingangs und gibt diesen am Ausgang
aus. Das Ergebnis wird in Bogenmaß ausgegeben und hat einen Wert zwischen -π/2 und
+π/2. Als Argumentbereich ist der gesamte REALZahlenbereich erlaubt.
OUT = ATAN(IN)

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN REAL Argument 0.0
Ausgang OUT REAL Arcustangens 0.0

Hilfe für CFC - Elementarbausteine


88 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit dem Datentyp REAL
8.20 NEG_R: Negierer von REAL-Werten

8.20 NEG_R: Negierer von REAL-Werten

Funktion
Dieser Baustein gibt am Ausgang die Eingangsgröße mit gewechselten Vorzeichen aus.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN REAL Eingangsgröße 0.0
Ausgang OUT REAL Ausgangsgröße 0.0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 89
Arithmetik-Bausteine mit dem Datentyp REAL
8.21 LIM_R: Begrenzer von REAL-Werten

8.21 LIM_R: Begrenzer von REAL-Werten

Funktion
Dieser Baustein vergleicht die Eingangsgrößen IN, MAX und MIN. Es wird geprüft, ob IN
innerhalb oder außerhalb des von MIN und MAX begrenzten Intervalls liegt. Wenn die untere
Grenze MIN des Intervalls größer der oberen Grenze MAX ist, dann wird der Ausgang OUT
= MAX und die Ausgänge OUTU und OUTL auf 1 gesetzt. Wenn IN > MAX ist, dann liegt
Grenzüberschreitung vor, OUT = MAX, OUTU = 1 und OUTL = 0. Wenn IN < MIN ist, dann
liegt Grenzunterschreitung vor, OUT = MIN, OUTU = 0, OUTL = 1. Wenn IN zwischen MIN
und MAX ist, dann werden OUT = IN, OUTU = 0, OUTL = 0 gesetzt.
Wenn die untere Grenze MIN gleich der oberen Grenze MAX ist, verhält sich der Baustein
wie folgt:
IN < MAX: OUT = MAX; OUTU = 0; OUTL = 1
IN > MAX: OUT = MAX; OUTU = 1; OUTL = 0

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN REAL Eingangsgröße 0.0
MIN REAL Untere Grenze -100.0
MAX REAL Obere Grenze 100.0
Ausgänge OUT REAL Ausgangsgröße 0
OUTU BOOL Grenzüberschreitung 0
OUTL BOOL Grenzunterschreitung 0

Hilfe für CFC - Elementarbausteine


90 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit dem Datentyp REAL
8.22 EPS_R: Genauigkeit Approximation

8.22 EPS_R: Genauigkeit Approximation

Funktion
Dieser Baustein vergleicht die absoluten Werte der Eingänge. Wenn der absolute Wert des
Eingangs IN kleiner ist als die Grenze INTERVAL, so wird der Ausgang QA auf 1 und der
Ausgang QN auf 0 gesetzt. Die Eingangsgröße IN ist dann im Intervall enthalten. Sonst wird
der Ausgang QA auf 0 und der Ausgang QN auf 1 gesetzt. Die Eingangsgröße IN befindet
sich dann außerhalb des Intervalls.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN REAL Eingangsgröße 0.0
INTERVAL REAL Intervallgrenze 0.0
Ausgänge QA BOOL Gültigkeitsmerker 0
QN BOOL Invertierter Gültigkeitsmerker 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 91
Arithmetik-Bausteine mit dem Datentyp REAL
8.23 CADD_R: Steuerbarer Addierer von REAL-Werten

8.23 CADD_R: Steuerbarer Addierer von REAL-Werten

Funktion
Dieser Baustein addiert die Eingangsgröße IN zu der Ausgangsgröße OUT, wenn der
Eingang CI auf 1 und die Eingänge RI und SI auf 0 gesetzt sind. Wenn RI = 1 ist, so wird der
Ausgang OUT auf 0 gesetzt. Wenn SI = 1 und RI = 0 sind, so wird OUT = IN.

Fehlerbehandlung
ENO = 0 bei Überlauf und Unterlauf.

Wahrheitstabelle

RI SI CI OUT ENO
1 X X 0 1
0 1 X IN 1
0 0 1 OUT* + IN 1
0 0 0 OUT* 1

X ist ein beliebiger Wert


OUT* ist der alte Wert aus dem letzten Zyklus

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN REAL Summand 0.0
RI BOOL Rücksetzen 0
SI BOOL Setzen 0
CI BOOL Zählen 0
Ausgang OUT REAL Summe 0.0

Hilfe für CFC - Elementarbausteine


92 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit dem Datentyp REAL
8.24 POWXY: Allgemeine Potenzfunktion

8.24 POWXY: Allgemeine Potenzfunktion

Funktion
Dieser Baustein gibt am Ausgang die Eingangsgröße IN1 aus, erhoben zur Potenz der
Eingangsgröße IN2.
OUT = IN1^IN2
Voraussetzung: IN1 > 0

Fehlerbehandlung
Bei Überlauf und Unterlauf geht M7 in Zustand STOP.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 REAL Basis 0.0
IN2 REAL Exponent 0.0
Ausgang OUT REAL Ausgangsgröße 0.0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 93
Arithmetik-Bausteine mit dem Datentyp REAL
8.25 SAMP_AVE: Gleitender Mittelwert

8.25 SAMP_AVE: Gleitender Mittelwert

Funktion
Dieser Baustein gibt am Ausgang den Mittelwert der letzten N Eingangswerte aus.
OUT = (Ink + Ink -1 + ... + Ink -n + 1) / N
wobei Ink der aktuelle Eingangswert ist. Die Anzahl N der Eingangswerte muss die
Bedingung
0 < N < 33
erfüllen.

Anlaufverhalten
Bei Anlauf und Erstlauf wird jedes Element des Buffers für IN- und OUT-Werte auf 0 gesetzt.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN REAL Eingangsgröße 0.0
N INT Anzahl der betrachteten 1
Eingangswerte
Ausgang OUT REAL Mittelwert 0.0

Hilfe für CFC - Elementarbausteine


94 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit den Datentypen INT und
DINT 9
9.1 MATH_INT

CFC-Bausteine der Familie "MATH_INT"


In dieser Familie sind folgende Bausteine zusammengefasst, mit denen arithmetische
Operationen mit Daten vom Typ INT und DINT realisiert werden:

ADD_I: Addition von INT-Werten (Seite 97) Addition von INT-Werten


ADD_DI: Addition von DINT-Werten (Seite 109) Addition von DINT-Werten
SUB_I: Subtraktion von INT-Werten (Seite 98) Subtraktion von INT-Werten
SUB_DI: Subtraktion von DINT-Werten (Seite 110) Subtraktion von DINT-Werten
MUL_I: Multiplikation von INT-Werten (Seite 99) Multiplikation von INT-Werten
MUL_DI: Multiplikation von DINT (Seite 111) Multiplikation von DINT-Werten
DIV_I: Division von INT-Werten (Seite 100) Division von INT-Werten
DIV_DI: Division von DINT-Werten (Seite 112) Division von DINT-Werten
ABS_I: Absolutwert von INT-Werten (Seite 104) Absolutwert von INT-Werten
ABS_DI: Absolutwert von DINT-Werten (Seite 116) Absolutwert von DINT-Werten
EPS_I: Genauigkeit Approximation von INT-Werten Genauigkeit; Approximation von INT-Werten
(Seite 107)
EPS_DI: Genauigkeit Approximation von DINT- Genauigkeit; Approximation von DINT-Werten
Werten (Seite 119)
NEG_I: Negierer von INT-Werten (Seite 105) Negierer von INT-Werten
NEG_DI: Negierer von DINT-Werten (Seite 117) Negierer von DINT-Werten
MOD_I: Modulo-Funktion von INT-Werten Modulo-Funktion von INT-Werten
(Seite 101)
MOD_DI: Modulo-Funktion von DINT-Werten Modulo-Funktion von DINT-Werten
(Seite 113)
MAXn_I: Maximum von INT-Werten (Seite 102) Maximum von INT-Werten
MAXn_DI: Maximum von DINT-Werten (Seite 114) Maximum von DINT-Werten
MINn_I: Minimum von INT- Werten (Seite 103) Minimum von INT- Werten
MINn_DI: Minimum von DINT- Werten (Seite 115) Minimum von DINT- Werten
LIM_I: Begrenzer von INT-Werten (Seite 106) Begrenzer von INT-Werten
LIM_DI: Begrenzer von DINT-Werten (Seite 118) Begrenzer von DINT-Werten
CADD_I: Steuerbarer Addierer von INT-Werten Steuerbarer Addierer von INT-Werten
(Seite 108)
CADD_DI: Steuerbarer Addierer von DINT-Werten Steuerbarer Addierer von DINT-Werten
(Seite 120)

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 95
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.1 MATH_INT

Hinweis
Die Wertebereiche der Datentypen INT und DINT betragen
INT : -32 768 ... 32 767
DINT: -2 147 483 648 ... 2 147 483 647

Hilfe für CFC - Elementarbausteine


96 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.2 ADD_I: Addition von INT-Werten

9.2 ADD_I: Addition von INT-Werten

Funktion
Dieser Baustein addiert die Eingänge und gibt die Summe am Ausgang aus.
OUT = IN1 + IN2

Fehlerbehandlung
ENO = 0 bei Überlauf und Unterlauf.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 INT Summand 1 0
IN2 INT Summand 2 0
Ausgang OUT INT Summe 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 97
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.3 SUB_I: Subtraktion von INT-Werten

9.3 SUB_I: Subtraktion von INT-Werten

Funktion
Dieser Baustein subtrahiert den Eingang IN2 von Eingang IN1und gibt die Differenz am
Ausgang aus.
OUT = IN1 - IN2

Fehlerbehandlung
ENO = 0 bei Überlauf und Unterlauf.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 INT Minuend 0
IN2 INT Subtrahend 0
Ausgang OUT INT Differenz 0

Hilfe für CFC - Elementarbausteine


98 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.4 MUL_I: Multiplikation von INT-Werten

9.4 MUL_I: Multiplikation von INT-Werten

Funktion
Dieser Baustein multipliziert die Eingänge und gibt das Produkt am Ausgang aus.
OUT = IN1 * IN2

Fehlerbehandlung
ENO = 0 bei Überlauf und Unterlauf.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 INT Multiplikand 0
IN2 INT Multiplikator 0
Ausgang OUT INT Produkt 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 99
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.5 DIV_I: Division von INT-Werten

9.5 DIV_I: Division von INT-Werten

Funktion
Dieser Baustein teilt den Eingang IN1 durch den Eingang IN2 und gibt den Quotient am
Ausgang aus.
OUT = IN1 / IN2

Fehlerbehandlung
ENO = 0 bei Division durch 0 und bei –32768 durch –1.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 INT Dividend 0
IN2 INT Divisor 0
Ausgang OUT INT Quotient 0

Hilfe für CFC - Elementarbausteine


100 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.6 MOD_I: Modulo-Funktion von INT-Werten

9.6 MOD_I: Modulo-Funktion von INT-Werten

Funktion
Dieser Baustein gibt den Rest der ganzzahligen Division DIV_I (Seite 100) des Eingangs IN1
durch den Eingang IN2 am Ausgang aus.

Fehlerbehandlung
ENO = 0 bei Division durch 0.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 INT Dividend 0
IN2 INT Divisor 1
Ausgang OUT INT Rest der Division 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 101
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.7 MAXn_I: Maximum von INT-Werten

9.7 MAXn_I: Maximum von INT-Werten

Funktion
Dieser Baustein vergleicht die Eingänge und gibt deren Maximum am Ausgang aus.
OUT = MAX {IN1, ... , INn}

Bausteine

Name Erklärung
MAX2_I 2 Eingänge vom Typ INT
MAX4_I 4 Eingänge vom Typ INT
MAX8_I 8 Eingänge vom Typ INT

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 INT Eingangsgröße 1 0
...
INn INT Eingangsgröße n 0
Ausgang OUT INT Maximalwert 0

Hilfe für CFC - Elementarbausteine


102 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.8 MINn_I: Minimum von INT- Werten

9.8 MINn_I: Minimum von INT- Werten

Funktion
Dieser Baustein vergleicht die Eingänge und gibt deren Minimum am Ausgang aus.
OUT = MIN {IN1, ... , INn}

Bausteine

Name Erklärung
MIN2_I 2 Eingänge vom Typ INT
MIN4_I 4 Eingänge vom Typ INT
MIN8_I 8 Eingänge vom Typ INT

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 INT Eingangsgröße 1 0
...
INn INT Eingangsgröße n 0
Ausgang OUT INT Minimalwert 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 103
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.9 ABS_I: Absolutwert von INT-Werten

9.9 ABS_I: Absolutwert von INT-Werten

Funktion
Dieser Baustein gibt den Absolutbetrag des Eingangs am Ausgang aus.
OUT = | IN |

Fehlerbehandlung
ENO = 0 bei IN = -32 768

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN INT Eingangswert 0
Ausgang OUT INT Absolutbetrag 0

Hilfe für CFC - Elementarbausteine


104 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.10 NEG_I: Negierer von INT-Werten

9.10 NEG_I: Negierer von INT-Werten

Funktion
Dieser Baustein gibt am Ausgang die Eingangsgröße mit gewechseltem Vorzeichen aus.

Fehlerbehandlung
ENO = 0 bei IN = -32 768

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN INT Eingangsgröße 0
Ausgang OUT INT Ausgangsgröße 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 105
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.11 LIM_I: Begrenzer von INT-Werten

9.11 LIM_I: Begrenzer von INT-Werten

Funktion
Dieser Baustein vergleicht die Eingangsgrößen IN, MAX und MIN. Es wird geprüft, ob IN
innerhalb oder außerhalb des von MIN und MAX begrenzten Intervalls liegt.
Wenn die untere Grenze MIN des Intervalls größer ist als die obere Grenze MAX, dann wird
der Ausgang OUT = MAX und die Ausgänge OUTU und OUTL auf 1 gesetzt.
Wenn IN ≥ MAX ist, dann liegt Grenzüberschreitung vor, OUT = MAX, OUTU = 1 und OUTL
= 0. Wenn IN ≤ MIN ist, dann liegt Grenzunterschreitung vor, OUT = MIN, OUTU = 0, OUTL
= 1. Wenn IN zwischen MIN und MAX liegt, dann werden OUT = IN, OUTU = 0, OUTL = 0
gesetzt.
Wenn MAX = MIN ist, dann hängen die Ausgänge OUTU und OUTL von IN ab:
● OUTU = 1 bei IN = MIN = MAX
● OUTL = 1 bei IN < MIN = MAX
● OUTU = 1 bei IN > Max = MAX
● zusätzlich gilt: OUT = MAX = MIN

Fehlerbehandlung
ENO = 0 bei MIN > MAX --> OUT = MAX; OUTU = OUTL = 1

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge MAX INT Obere Grenze 0
IN INT Eingangsgröße 0
MIN INT Untere Grenze 0
Ausgänge OUTU BOOL Grenzüberschreitung 0
OUTL BOOL Grenzunterschreitung 0
OUT INT Ausgangsgröße 0

Hilfe für CFC - Elementarbausteine


106 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.12 EPS_I: Genauigkeit Approximation von INT-Werten

9.12 EPS_I: Genauigkeit Approximation von INT-Werten

Funktion
Dieser Baustein vergleicht den Absolutbetrag des Eingangs IN mit dem Wert des Eingangs
INTERVAL. Wenn der Absolutbetrag des Eingangs IN kleiner ist als die Grenze INTERVAL,
so wird der Ausgang QA auf 1 und der Ausgang QN auf 0 gesetzt. Die Eingangsgröße IN ist
dann im Intervall enthalten. Sonst wird der Ausgang QA auf 0 und der Ausgang QN auf 1
gesetzt. Die Eingangsgröße IN befindet sich dann außerhalb des Intervalls.
INTERVAL muss einen positiven Wert haben.
Ist INTERVAL ≤ 0, so ist QA = 0.

Fehlerbehandlung
ENO = 0 bei IN = -32 768

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN INT Eingangsgröße 0
INTERVAL INT Intervallgrenze 0
Ausgänge QA BOOL Gültigkeitsmerker 0
QN BOOL Invertierter Gültigkeitsmerker 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 107
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.13 CADD_I: Steuerbarer Addierer von INT-Werten

9.13 CADD_I: Steuerbarer Addierer von INT-Werten

Funktion
Dieser Baustein addiert die Eingangsgröße IN zu der Ausgangsgröße OUT, wenn der
Eingang CI auf 1 und die Eingänge RI und SI auf 0 gesetzt sind. Wenn RI = 1 ist, dann wird
der Ausgang OUT auf 0 gesetzt. Wenn SI = 1 und RI = 0 sind, dann wird OUT = IN.

Fehlerbehandlung
ENO = 0 bei Überlauf und Unterlauf.

Wahrheitstabelle

RI SI CI OUT ENO
1 X X 0 1
0 1 X IN 1
0 0 1 OUT* + IN 1
0 0 0 OUT* 1

X ist ein beliebiger Wert


OUT* ist der alte Wert aus dem letzten Zyklus

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN INT Summand 0
RI BOOL Rücksetzen 0
SI BOOL Setzen 0
CI BOOL Zählen 0
Ausgang OUT INT Summe 0

Hilfe für CFC - Elementarbausteine


108 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.14 ADD_DI: Addition von DINT-Werten

9.14 ADD_DI: Addition von DINT-Werten

Funktion
Dieser Baustein addiert die Eingänge und gibt die Summe am Ausgang aus.
OUT = IN1 + IN2

Fehlerbehandlung
ENO = 0 bei Überlauf und Unterlauf.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 DINT Summand 1 0
IN2 DINT Summand 2 0
Ausgang OUT DINT Summe 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 109
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.15 SUB_DI: Subtraktion von DINT-Werten

9.15 SUB_DI: Subtraktion von DINT-Werten

Funktion
Dieser Baustein subtrahiert den Eingang IN2 von Eingang IN1 und gibt die Differenz am
Ausgang aus.
OUT = IN1 - IN2

Fehlerbehandlung
ENO = 0 bei Überlauf und Unterlauf.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 DINT Minuend 0
IN2 DINT Subtrahend 0
Ausgang OUT DINT Differenz 0

Hilfe für CFC - Elementarbausteine


110 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.16 MUL_DI: Multiplikation von DINT

9.16 MUL_DI: Multiplikation von DINT

Funktion
Dieser Baustein multipliziert die Eingänge und gibt das Produkt am Ausgang aus.
OUT = IN1 * IN2

Fehlerbehandlung
ENO = 0 bei Überlauf und Unterlauf.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 DINT Multiplikand 0
IN2 DINT Multiplikator 0
Ausgang OUT DINT Produkt 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 111
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.17 DIV_DI: Division von DINT-Werten

9.17 DIV_DI: Division von DINT-Werten

Funktion
Dieser Baustein teilt den Eingang IN1 durch den Eingang IN2 und gibt den Quotient am
Ausgang aus.
OUT = IN1 / IN2

Fehlerbehandlung
ENO = 0 bei Division durch 0 und bei –2147483648 durch –1.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 DINT Dividend 0
IN2 DINT Divisor 0
Ausgang OUT DINT Quotient 0

Hilfe für CFC - Elementarbausteine


112 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.18 MOD_DI: Modulo-Funktion von DINT-Werten

9.18 MOD_DI: Modulo-Funktion von DINT-Werten

Funktion
Dieser Baustein gibt den Rest der ganzzahligen Division DIV_DI (Seite 112) des Eingangs
IN1 durch den Eingang IN2 am Ausgang aus.

Fehlerbehandlung
ENO = 0 bei Division durch 0.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 DINT Dividend 0
IN2 DINT Divisor 0
Ausgang OUT DINT Rest der Division 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 113
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.19 MAXn_DI: Maximum von DINT-Werten

9.19 MAXn_DI: Maximum von DINT-Werten

Funktion
Dieser Baustein vergleicht die Eingänge und gibt deren Maximum am Ausgang aus.
OUT = MAX {IN1, ... , INn}

Bausteine

Name Erklärung
MAX2_DI 2 Eingänge vom Typ DINT
MAX4_DI 4 Eingänge vom Typ DINT
MAX8_DI 8 Eingänge vom Typ DINT

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 DINT Eingangsgröße 1 0
...
INn DINT Eingangsgröße n 0
Ausgang OUT DINT Maximalwert 0

Hilfe für CFC - Elementarbausteine


114 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.20 MINn_DI: Minimum von DINT- Werten

9.20 MINn_DI: Minimum von DINT- Werten

Funktion
Dieser Baustein vergleicht die Eingänge und gibt deren Minimum am Ausgang aus.
OUT = MIN {IN1, ... , INn}

Bausteine

Name Erklärung
MIN2_DI 2 Eingänge vom Typ DINT
MIN4_DI 4 Eingänge vom Typ DINT
MIN8_DI 8 Eingänge vom Typ DINT

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN1 DINT Eingangsgröße 1 0
...
INn DINT Eingangsgröße n 0
Ausgang OUT DINT Minimalwert 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 115
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.21 ABS_DI: Absolutwert von DINT-Werten

9.21 ABS_DI: Absolutwert von DINT-Werten

Funktion
Dieser Baustein gibt den absoluten Wert des Eingangs am Ausgang aus.
OUT = | IN |

Fehlerbehandlung
ENO = 0 bei IN = -2 147 483 648 (kleinste negative Zahl)

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN DINT Eingangswert 0
Ausgang OUT DINT Absolutwert 0

Hilfe für CFC - Elementarbausteine


116 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.22 NEG_DI: Negierer von DINT-Werten

9.22 NEG_DI: Negierer von DINT-Werten

Funktion
Dieser Baustein gibt am Ausgang die Eingangsgröße mit gewechseltem Vorzeichen aus.

Fehlerbehandlung
ENO = 0 bei IN = -2 147 483 648

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang IN DINT Eingangsgröße 0
Ausgang OUT DINT Ausgangsgröße 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 117
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.23 LIM_DI: Begrenzer von DINT-Werten

9.23 LIM_DI: Begrenzer von DINT-Werten

Funktion
Dieser Baustein vergleicht die Eingangsgrößen IN, MAX und MIN. Es wird geprüft, ob IN
innerhalb oder außerhalb des von MIN und MAX begrenzten Intervalls liegt.
Wenn die untere Grenze MIN des Intervalls größer ist als die obere Grenze MAX, dann wird
der Ausgang OUT = MAX und die Ausgänge OUTU und OUTL auf 1 gesetzt.
Wenn IN ≥ MAX ist, dann liegt Grenzüberschreitung vor, OUT = MAX, OUTU = 1 und
OUTL = 0. Wenn IN ≤ MIN ist, liegt Grenzunterschreitung vor, dann ist OUT = MIN,
OUTU = 0, OUTL = 1. Wenn IN zwischen MIN und MAX liegt, dann werden OUT = IN,
OUTU = 0, OUTL = 0 gesetzt.
Wenn MAX = MIN ist, dann hängen die Ausgänge OUTU und OUTL von IN ab:
● OUTU = 1 bei IN = MIN = MAX
● OUTL = 1 bei IN < MIN = MAX
● OUTU = 1 bei IN > Max = MAX
● zusätzlich gilt: OUT = MAX = MIN

Fehlerbehandlung
ENO = 0 bei MIN > MAX --> OUT = MAX; OUTU = OUTL = 1

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge MAX DINT obere Grenze 0
IN DINT Eingangsgröße 0
MIN DINT untere Grenze 0
Ausgänge OUTU BOOL Grenzüberschreitung 0
OUTL BOOL Grenzunterschreitung 0
OUT DINT Ausgangsgröße 0

Hilfe für CFC - Elementarbausteine


118 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.24 EPS_DI: Genauigkeit Approximation von DINT-Werten

9.24 EPS_DI: Genauigkeit Approximation von DINT-Werten

Funktion
Dieser Baustein vergleicht den Absolutbetrag des Eingangs IN mit dem Wert des Eingangs
INTERVAL. Wenn der Absolutbetrag des Eingangs IN kleiner ist als die Grenze INTERVAL,
dann wird der Ausgang QA auf 1 und der Ausgang QN auf 0 gesetzt. Die Eingangsgröße IN
ist dann im Intervall enthalten. Sonst wird der Ausgang QA auf 0 und der Ausgang QN auf 1
gesetzt. Die Eingangsgröße IN befindet dann sich außerhalb des Intervalls.
INTERVAL muss einen positiven Wert haben.
Wenn INTERVAL ≤ 0 ist, dann ist QA = 0.

Fehlerbehandlung
ENO = 0 bei IN = -2 147 483 648

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN DINT Eingangsgröße 0
INTERVAL DINT Intervallgrenze 0
Ausgänge QA BOOL Gültigkeitsmerker 0
QN BOOL Invertierter 0
Gültigkeitsmerker

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 119
Arithmetik-Bausteine mit den Datentypen INT und DINT
9.25 CADD_DI: Steuerbarer Addierer von DINT-Werten

9.25 CADD_DI: Steuerbarer Addierer von DINT-Werten

Funktion
Dieser Baustein addiert die Eingangsgröße IN zu der Ausgangsgröße OUT, wenn der
Eingang CI auf 1 und die Eingänge RI und SI auf 0 gesetzt sind. Wenn RI = 1 ist, dann wird
der Ausgang OUT auf 0 gesetzt. Wenn SI = 1 und RI = 0 sind, dann wird OUT = IN.

Fehlerbehandlung
ENO = 0 bei Überlauf und Unterlauf.

Wahrheitstabelle

RI SI CI OUT ENO
1 X X 0 1
0 1 X IN 1
0 0 1 OUT* + IN 1
0 0 0 OUT* 1

X ist ein beliebiger Wert


OUT* ist der alte Wert aus dem letzten Zyklus

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN DINT Summand 0
RI BOOL Rücksetzen 0
SI BOOL Setzen 0
CI BOOL Zählen 0
Ausgang OUT DINT Summe 0

Hilfe für CFC - Elementarbausteine


120 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Flip-Flop Bausteine 10
10.1 FLIPFLOP

CFC-Bausteine der Familie "FLIPFLOP"


In dieser Familie sind folgende Flip-Flop-Bausteine zusammengefasst:

JK_FF: JK-FlipFlop (Seite 122) JK-FlipFlop


RS_FF: RS-FlipFlop, rücksetzen dominant RS-FlipFlop, rücksetzen dominant
(Seite 123)
SR_FF: SR-FlipFlop, setzen dominant (Seite 124) SR-FlipFlop, setzen dominant

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 121
Flip-Flop Bausteine
10.2 JK_FF: JK-FlipFlop

10.2 JK_FF: JK-FlipFlop

Funktion

J K
0 0

0 1 0 1
1 0 1 0
1 1

*)

*) Die Ausgänge wechseln den Wert im Takt der eingebauten Ablaufebenen.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge J BOOL Setzen 0
K BOOL Rücksetzen 0
Ausgänge BOOL Ausgang 0

BOOL negierter Ausgang 1

Hilfe für CFC - Elementarbausteine


122 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Flip-Flop Bausteine
10.3 RS_FF: RS-FlipFlop, rücksetzen dominant

10.3 RS_FF: RS-FlipFlop, rücksetzen dominant

Funktion

R S
0 0

0 1 1 0
1 0 0 1
1 1 0 1

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge R BOOL Rücksetzen 0
S BOOL Setzen 0
Ausgänge BOOL Ausgang 0

BOOL negierter Ausgang 1

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 123
Flip-Flop Bausteine
10.4 SR_FF: SR-FlipFlop, setzen dominant

10.4 SR_FF: SR-FlipFlop, setzen dominant

Funktion

R S
0 0

0 1 1 0
1 0 0 1
1 1 1 0

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge R BOOL Rücksetzen 0
S BOOL Setzen 0
Ausgänge BOOL Ausgang 0

BOOL Negierter Ausgang 1

Hilfe für CFC - Elementarbausteine


124 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Shift-Bausteine 11
11.1 SHIFT

CFC-Bausteine der Familie "SHIFT"


In dieser Familie sind folgende Bausteine zusammengefasst, die den Eingangswert bitweise
schieben oder drehen und das Ergebnis auf den Ausgang setzen:

SHL_W: WORD nach links schieben (Seite 126) WORD nach links schieben
SHL_DW: DWORD nach links schieben (Seite 127) DWORD nach links schieben
SHR_W: WORD nach rechts schieben (Seite 128) WORD nach rechts schieben
SHR_DW: DWORD nach rechts schieben (Seite 129) DWORD nach rechts schieben
ROL_W: WORD links drehen (Seite 130) WORD links drehen
ROL_DW: DWORD links drehen (Seite 131) DWORD links drehen
ROR_W: WORD rechts drehen (Seite 132) WORD rechts drehen
ROR_DW: DWORD rechts drehen (Seite 133) DWORD rechts drehen

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 125
Shift-Bausteine
11.2 SHL_W: WORD nach links schieben

11.2 SHL_W: WORD nach links schieben

Funktion
Der Eingangswert IN wird bitweise um so viele Stellen nach links geschoben, wie am
Eingang N angegeben. Das Ergebnis wird am Ausgang angezeigt.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN WORD Eingangswert 0
N WORD Anzahl Schiebestellen 0
Ausgang OUT WORD Ausgang 0

Hilfe für CFC - Elementarbausteine


126 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Shift-Bausteine
11.3 SHL_DW: DWORD nach links schieben

11.3 SHL_DW: DWORD nach links schieben

Funktion
Der Eingangswert IN wird bitweise um so viele Stellen nach links geschoben, wie am
Eingang N angegeben. Das Ergebnis wird am Ausgang angezeigt.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN DWORD Eingangswert 0
N WORD Anzahl Schiebestellen 0
Ausgang OUT DWORD Ausgang 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 127
Shift-Bausteine
11.4 SHR_W: WORD nach rechts schieben

11.4 SHR_W: WORD nach rechts schieben

Funktion
Der Eingangswert IN wird bitweise um so viele Stellen nach rechts geschoben, wie am
Eingang N angegeben. Das Ergebnis wird am Ausgang angezeigt.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN WORD Eingangswert 0
N WORD Anzahl Schiebestellen 0
Ausgang OUT WORD Ausgang 0

Hilfe für CFC - Elementarbausteine


128 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Shift-Bausteine
11.5 SHR_DW: DWORD nach rechts schieben

11.5 SHR_DW: DWORD nach rechts schieben

Funktion
Der Eingangswert IN wird bitweise um so viele Stellen nach rechts geschoben, wie am
Eingang N angegeben. Das Ergebnis wird am Ausgang angezeigt.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN DWORD Eingangswert 0
N WORD Anzahl Schiebestellen 0
Ausgang OUT DWORD Ausgang 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 129
Shift-Bausteine
11.6 ROL_W: WORD links drehen

11.6 ROL_W: WORD links drehen

Funktion
Der Eingangswert IN wird bitweise um so viele Stellen nach links rotiert, wie am Eingang N
angegeben. Das Ergebnis wird am Ausgang angezeigt.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN WORD Eingangswert 0
N WORD Anzahl Rotationen 0
Ausgang OUT WORD Ausgang 0

Hilfe für CFC - Elementarbausteine


130 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Shift-Bausteine
11.7 ROL_DW: DWORD links drehen

11.7 ROL_DW: DWORD links drehen

Funktion
Der Eingangswert IN wird bitweise um so viele Stellen nach links rotiert, wie am Eingang N
angegeben. Das Ergebnis wird am Ausgang angezeigt.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN DWORD Eingangswert 0
N WORD Anzahl Rotationen 0
Ausgang OUT DWORD Ausgang 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 131
Shift-Bausteine
11.8 ROR_W: WORD rechts drehen

11.8 ROR_W: WORD rechts drehen

Funktion
Der Eingangswert IN wird bitweise um so viele Stellen nach rechts rotiert, wie am Eingang N
angegeben. Das Ergebnis wird am Ausgang angezeigt.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN WORD Eingangswert 0
N WORD Anzahl Rotationen 0
Ausgang OUT WORD Ausgang 0

Hilfe für CFC - Elementarbausteine


132 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Shift-Bausteine
11.9 ROR_DW: DWORD rechts drehen

11.9 ROR_DW: DWORD rechts drehen

Funktion
Der Eingangswert IN wird bitweise um so viele Stellen nach rechts rotiert, wie am Eingang N
angegeben. Das Ergebnis wird am Ausgang angezeigt.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge IN DWORD Eingangswert 0
N WORD Anzahl Rotationen 0
Ausgang OUT DWORD Ausgang 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 133
Shift-Bausteine
11.9 ROR_DW: DWORD rechts drehen

Hilfe für CFC - Elementarbausteine


134 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Multiplex-Bausteine 12
12.1 MULTIPLX

CFC-Bausteine der Familie "MULTIPLX"


In dieser Familie sind folgende Bausteine zusammengefasst, die abhängig vom Wert eines
bestimmten Eingangs, einen der anderen Eingänge auf den Ausgang setzen:

MUXn_I: Multiplexer 1 aus n für INT-Werte Multiplexer 1 aus n für INT-Werte (n = 2, 4, 8)


(Seite 136)
MUXn_DI: Multiplexer 1 aus n für DINT-Werte Multiplexer 1 aus n für DINT-Werte (n = 2, 4, 8)
(Seite 137)
MUXn_R: Multiplexer 1 aus n für REAL-Werte Multiplexer 1 aus n für REAL-Werte (n = 2, 4, 8)
(Seite 138)
MUXn_BO: Multiplexer 1 aus n für BOOL-Werte Multiplexer 1 aus n für BOOL-Werte (n = 2, 4, 8)
(Seite 139)
SEL_BO: Multiplexer 1 aus 2 für BOOL-Werte Multiplexer 1 aus 2 für BOOL-Werte
(Seite 140)
SEL_R: Multiplexer 1 aus 2 für REAL-Werte Multiplexer 1 aus 2 für REAL-Werte
(Seite 141)

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 135
Multiplex-Bausteine
12.2 MUXn_I: Multiplexer 1 aus n für INT-Werte

12.2 MUXn_I: Multiplexer 1 aus n für INT-Werte

Funktion
Der Baustein ist ein Multiplexer 1 aus n für INT-Werte (n = 2, 4, 8). In Abhängigkeit vom Wert
des Auswahleingangs K wird einer der Eingänge IN0...IN7 auf den Ausgang gelegt.

Fehlerbehandlung
ENO = 0 und OUT = 0, wenn k > (n-1) oder k < 0.

Funktionstabelle

Anzahl der
Eingänge
2 K: 0 1
OUT: IN0 IN1
4 K: 0 1 2 3
OUT: IN0 IN1 IN2 IN3
8 K: 0 1 2 3 4 5 6 7
OUT: IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge K INT Auswahleingang 0
IN0 INT Wert 1 0
... ...
INm (n-1) INT Wert n 0
Ausgang OUT INT Ausgang 0

Hilfe für CFC - Elementarbausteine


136 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Multiplex-Bausteine
12.3 MUXn_DI: Multiplexer 1 aus n für DINT-Werte

12.3 MUXn_DI: Multiplexer 1 aus n für DINT-Werte

Funktion
Der Baustein ist ein Multiplexer 1 aus n für DINT-Werte (n = 2, 4, 8). In Abhängigkeit vom
Wert des Auswahleingangs K wird einer der Eingänge IN0...IN7 auf den Ausgang gelegt.

Fehlerbehandlung
ENO = 0 und OUT = 0, wenn k > (n-1) oder k < 0.

Funktionstabelle

Anzahl der
Eingänge
2 K: 0 1
OUT: IN0 IN1
4 K: 0 1 2 3
OUT: IN0 IN1 IN2 IN3
8 K: 0 1 2 3 4 5 6 7
OUT: IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge K INT Auswahleingang 0
IN0 DINT Wert 1 0
... ...
INm (n-1) DINT Wert n 0
Ausgang OUT DINT Ausgang 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 137
Multiplex-Bausteine
12.4 MUXn_R: Multiplexer 1 aus n für REAL-Werte

12.4 MUXn_R: Multiplexer 1 aus n für REAL-Werte

Funktion
Der Baustein ist ein Multiplexer 1 aus n für REAL-Werte (n = 2, 4, 8). In Abhängigkeit vom
Wert des Auswahleingangs K wird einer der Eingänge IN0...IN7 auf den Ausgang gelegt.

Fehlerbehandlung
ENO = 0 und OUT = 0, wenn k > (n-1) oder k < 0.

Funktionstabelle

Anzahl der
Eingänge
2 K: 0 1
OUT: IN0 IN1
4 K: 0 1 2 3
OUT: IN0 IN1 IN2 IN3
8 K: 0 1 2 3 4 5 6 7
OUT: IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge K INT Auswahleingang 0
IN1 REAL Wert 1 0
... ...
INm REAL Wert m (m = n-1) 0
Ausgang OUT REAL Ausgang 0

Hilfe für CFC - Elementarbausteine


138 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Multiplex-Bausteine
12.5 MUXn_BO: Multiplexer 1 aus n für BOOL-Werte

12.5 MUXn_BO: Multiplexer 1 aus n für BOOL-Werte

Funktion
Der Baustein ist ein Multiplexer 1 aus n für BOOL-Werte (n = 2, 4, 8). In Abhängigkeit vom
Wert des Auswahleingangs K wird einer der Eingänge IN0...IN7 auf den Ausgang gelegt.

Fehlerbehandlung
ENO = 0 und OUT = 0, wenn k > (n-1) oder k < 0.

Funktionstabelle

Anzahl der
Eingänge
2 K: 0 1
OUT: IN0 IN1
4 K: 0 1 2 3
OUT: IN0 IN1 IN2 IN3
8 K: 0 1 2 3 4 5 6 7
OUT: IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge K INT Auswahleingang 0
IN0 BOOL Wert 1 0
... ...
INm (n-1) BOOL Wert n 0
Ausgang OUT BOOL Ausgang 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 139
Multiplex-Bausteine
12.6 SEL_BO: Multiplexer 1 aus 2 für BOOL-Werte

12.6 SEL_BO: Multiplexer 1 aus 2 für BOOL-Werte

Funktion
Dieser Baustein schaltet abhängig vom Wert des Eingangs K den Wert des Eingangs IN0 (K
= 1) oder des Eingangs IN1 (K = 0) auf den Ausgang.

Anschlüsse

Name Datentyp Voreinstellung


Eingänge K BOOL 0
IN0 BOOL 0
IN1 BOOL 0
Ausgang OUT BOOL 0

Hilfe für CFC - Elementarbausteine


140 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Multiplex-Bausteine
12.7 SEL_R: Multiplexer 1 aus 2 für REAL-Werte

12.7 SEL_R: Multiplexer 1 aus 2 für REAL-Werte

Funktion
Dieser Baustein schaltet abhängig vom Wert des Eingangs K den Wert des Eingangs IN0 (K
= 1) oder des Eingangs IN1 (K = 0) auf den Ausgang.

Anschlüsse

Name Datentyp Voreinstellung


Eingänge K BOOL 0
IN0 REAL 0.0
IN1 REAL 0.0
Ausgang OUT REAL 0.0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 141
Multiplex-Bausteine
12.7 SEL_R: Multiplexer 1 aus 2 für REAL-Werte

Hilfe für CFC - Elementarbausteine


142 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Zählbausteine 13
13.1 COUNTER

CFC-Bausteine der Familie "COUNTER"


In dieser Familie sind folgende Zählerbausteine enthalten:

CTU: Vorwärtszähler (Seite 144) Vorwärtszähler


CTD: Rückwärtszähler (Seite 146) Rückwärtszähler
CTUD: Vor- und Rückwärtszähler (Seite 147) Vor- und Rückwärtszähler

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 143
Zählbausteine
13.2 CTU: Vorwärtszähler

13.2 CTU: Vorwärtszähler

Funktion
Dieser Baustein bildet einen flankengesteuerten Vorwärtszähler. Der Zähler wird bei einer
Auf-Flanke am Eingang S mit dem Wert PV vorbesetzt. Bei ansteigender Flanke am Eingang
CU wird der Zählerstand inkrementiert. Der Zählerstand liegt am Ausgang CV an. Bei
Erreichen des maximalen INT-Werts (32767) wird der Zähler angehalten. Durch Rücksetzen
wird der Zählerstand auf 0 gesetzt und kann wieder hochzählen.
Q = 0, wenn CV = 0,
Q = 1, wenn CV > 0

Anlaufverhalten
Bei Anlauf verhält sich der Baustein wie bei Rücksetzen (CV = 0).

Wahrheitstabelle

R CU CV ENO
1 X 0 1
0 1 CV*+1 1
0 0 CV* 1

X ist ein beliebiger Wert


CV* ist der alte Wert aus dem letzten Zyklus

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge CU BOOL Vorwärtsimpuls 0
R BOOL Rücksetzen 0
S BOOL Setzen (Laden) 0
PV INT Ladewert 1000
Ausgänge Q BOOL Überlauf 0
CV INT Zählerstand 0

Hilfe für CFC - Elementarbausteine


144 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Zählbausteine
13.2 CTU: Vorwärtszähler

Hinweis
Diesen Baustein gibt es zweimal: In der Standard Library als SFB0 und in der CFC-
Elementarbibliothek als FB24. Die beiden Bausteine haben unterschiedliches Verhalten:
• Der SFB0 besitzt keine Vorbelegung. Der Eingang PV wird mit dem Ausgang CV auf
Erreichung / Überschreitung verglichen. Der Ausgang Q zeigt an, ob der aktuelle Zählwert
größer oder gleich PV ist.
• Der FB24 besitzt den Eingang PV als Vorbelegung. Ab diesem Wert wird gezählt. Der
Ausgang Q wird nicht ausgewertet.

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 145
Zählbausteine
13.3 CTD: Rückwärtszähler

13.3 CTD: Rückwärtszähler

Funktion
Dieser Baustein bildet einen flankengesteuerten Rückwärtszähler. Der Zähler wird bei einer
Auf-Flanke am Eingang S mit dem Wert PV vorbesetzt. Bei ansteigender Flanke am Eingang
CD wird der Zählerstand dekrementiert. Der Zählerstand liegt am Ausgang CV an. Bei
Erreichen des minimalen INT-Wertes wird der Zähler angehalten. Durch Rücksetzen wird
der Zählerstand auf 0 gesetzt.
Q = 0, wenn CV = 0
Q = 1, wenn CV > 0
Bei Erreichen von CV = 0 wird der Zähler angehalten. Es erfolgt kein Zählen in den
negativen Zahlenbereich.

Anlaufverhalten
Bei Anlauf verhält sich der Baustein wie bei Rücksetzen (CV = 0).

Wahrheitstabelle

R CD CV ENO
1 X 0 1
0 1 CV*-1 1
0 0 CV* 1

X ist ein beliebiger Wert


CV* ist der alte Wert aus dem letzten Zyklus

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge CD BOOL Rückwärtsimpuls 0
R BOOL Rücksetzen 0
S BOOL Setzen (Laden) 0
PV INT Ladewert 1000
Ausgänge Q BOOL Unterlauf 0
CV INT Zählerstand 0

Hilfe für CFC - Elementarbausteine


146 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Zählbausteine
13.4 CTUD: Vor- und Rückwärtszähler

13.4 CTUD: Vor- und Rückwärtszähler

Funktion
Dieser Baustein bildet einen flankengesteuerten Vorwärts-/ Rückwärtszähler. Der Zähler
wird bei einer Auf-Flanke am Eingang S mit dem Wert PV vorbesetzt. Bei ansteigender
Flanke am Eingang CU wird der Zählerstand inkrementiert. Bei ansteigender Flanke am
Eingang CD wird der Zählerstand dekrementiert. Der Zählerstand liegt am Ausgang CV an.
Über die Ausgänge QU oder QD kann der Zählerstand überwacht werden. Das Rücksetzen
des Zählers wird mit R = 1 erreicht.
QU = 1, wenn CV < max. INT (32767)
QU = 0, wenn CV = max. INT (32767)
QD = 0, wenn CV = – max. INT (-32768)
QD = 1, wenn CV > - max. INT (-32768)

Anlaufverhalten
Bei Anlauf verhält sich der Baustein wie bei Rücksetzen (CV = 0).

Wahrheitstabelle

R CU CD CV ENO
1 X X 0 1
0 1 0 CV*+1 1
0 0 1 CV*-1 1
0 0 0 CV* 1
0 1 1 CV* 1

X ist ein beliebiger Wert


CV* ist der alte Wert aus dem letzten Zyklus

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge CU BOOL Vorwärtsimpuls 0
CD BOOL Rückwärtsimpuls 0
R BOOL Rücksetzen 0
S BOOL Setzen (Laden) 0
PV INT Ladewert 1000
Ausgänge QU BOOL Zähler an Obergrenze 0
QD BOOL Zähler an Untergrenze 0
CV INT Zählerstand 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 147
Zählbausteine
13.4 CTUD: Vor- und Rückwärtszähler

Hilfe für CFC - Elementarbausteine


148 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Erzeugen oder Bearbeiten von
Impulsen 14
14.1 IMPULS

CFC-Bausteine der Familie "IMPULS"


In dieser Familie sind folgende Bausteine zur Impulsbearbeitung zusammengefasst:

TIMER_P: Impulsbildner (Seite 150) Impulsbildner


R_TRIG: Erkennung der steigenden Flanke Erkennung der steigenden Flanke
(Seite 153)
F_TRIG: Erkennung der fallenden Flanke Erkennung der fallenden Flanke
(Seite 154)
AFP: Taktgeber (Seite 155) Taktgeber

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 149
Bausteine zum Erzeugen oder Bearbeiten von Impulsen
14.2 TIMER_P: Impulsbildner

14.2 TIMER_P: Impulsbildner

Funktion
Der Baustein startet den Timer in der Betriebsart, die durch den Wert am Eingang MODE
vorgegeben ist:
● Impulsbildner
● Verlängerter Impuls
● Einschaltverzögerung
● Speichernde Einschaltverzögerung
● Ausschaltverzögerung

Betriebsarten

MODE Betriebsart
0 Timer als Impuls starten
1 Timer als verlängerter Impuls starten
2 Timer einschaltverzögernd starten
3 Timer speichernd einschaltverzögernd starten
4 Timer ausschaltverzögernd starten

Der Baustein übernimmt die Betriebsart (MODE) nur bei einer positiven Flanke des
Eingangs I0. Dieser Flankenwechsel ist auch nach einem CPU-Neustart erforderlich. Der
Zeitzähler PTIME wird mit dem Wert TIME0 geladen und zyklisch um die Abtastzeit
SAMPLE_T erniedrigt. Bei abgelaufener Zeit wird der Ausgang Q0 entsprechend der
Betriebsart verändert. Über RESET = 1 werden die Ausgänge Q0 = 0 und PTIME = 0
ausgegeben.

Impulsdiagramme
MODE=0 Impuls

MODE=1 Verlängerter Impuls

Hilfe für CFC - Elementarbausteine


150 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Erzeugen oder Bearbeiten von Impulsen
14.2 TIMER_P: Impulsbildner

MODE=2 Einschaltverzögerung

MODE=3 Speichernde Einschaltverzögerung

MODE=4 Ausschaltverzögerung

Beachten Sie bei der Eingabe von Werten Folgendes:


● Die Abtastzeit (SAMPLE_T) muss kleiner sein als die Schaltzeit (TIME0).
● Der Abstand von TIME0 und SAMPLE_T darf nicht mehr als 10^7 betragen.

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 151
Bausteine zum Erzeugen oder Bearbeiten von Impulsen
14.2 TIMER_P: Impulsbildner

Anschlüsse

Hinweis
Aufsummieren der Abtastzeit SAMPL_T
Der Baustein TIMER_P arbeitet intern mit REAL-Werten. Immer dann, wenn die Abtastzeit
SAMPL_T sich nicht exakt als REAL-Zahl darstellen lässt, kommt es beim Aufsummieren zu
Ungenauigkeiten.
Die Abtastzeit lässt sich nur dann exakt als REAL-Zahl darstellen, wenn die
Nachkommastellen der Abtastzeit durch eine Division von 2, 4, 8, 16 usw., entstehen.
Beispiele für exakte Abtastzeiten: x.5, x.25, x.125, x.0625 usw.
Beispiele für nicht exakte Abtastzeiten: x.1, x.2
Dabei steht "x" für eine positive Ganzzahl.

Name Datentyp Erklärung Voreinstellung


Eingänge SAMPLE_T REAL Task-Abtastzeit in s 1.0
TIME0 REAL Zeit in s 0.0
MODE INT Betriebsart (s. oben) 0
RESET BOOL Rücksetzen 0
I0 BOOL Eingangsimpuls 0
Ausgänge QERR BOOL Fehler 1
Q0 BOOL Ausgangsimpuls 0
PTIME REAL Verbleibende Zeit 0.0

Hilfe für CFC - Elementarbausteine


152 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Erzeugen oder Bearbeiten von Impulsen
14.3 R_TRIG: Erkennung der steigenden Flanke

14.3 R_TRIG: Erkennung der steigenden Flanke

Hinweis
Für korrekte Arbeitsweise muss der R_TRIG-Baustein in einen Weckalarm eingebaut
werden (zyklische Task).

Funktion
Dieser Baustein prüft die Eingangsgröße auf Auftreten einer steigenden Flanke und zeigt am
Ausgang an, ob eine Flanke erkannt wurde. Bei positiver Flanke des Eingangsimpulses CLK
wird der Ausgang Q auf 1 gesetzt.

Anlaufverhalten
Bei Anlauf wird der Flankenmerker auf 0 gesetzt.

Impulsdiagramm

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang CLK BOOL Eingangsimpuls 0
Ausgang Q BOOL Ausgangsimpuls 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 153
Bausteine zum Erzeugen oder Bearbeiten von Impulsen
14.4 F_TRIG: Erkennung der fallenden Flanke

14.4 F_TRIG: Erkennung der fallenden Flanke

Hinweis
Für korrekte Arbeitsweise muss der F_TRIG-Baustein in einen Weckalarm eingebaut werden
(zyklische Task).

Funktion
Dieser Baustein prüft die Eingangsgröße auf Auftreten einer fallenden Flanke und zeigt am
Ausgang an, ob eine Flanke erkannt wurde. Bei negativer Flanke des Eingangsimpulses
CLK wird der Ausgang Q auf 1 gesetzt.

Anlaufverhalten
Bei Anlauf wird der Flankenmerker auf 1 gesetzt.

Impulsdiagramm

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang CLK BOOL Eingangsimpuls 0
Ausgang Q BOOL Ausgangsimpuls 0

Hilfe für CFC - Elementarbausteine


154 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zum Erzeugen oder Bearbeiten von Impulsen
14.5 AFP: Taktgeber

14.5 AFP: Taktgeber

Hinweis
Für eine korrekte Arbeitsweise muss der AFP-Baustein in einen Weckalarm eingebaut
werden (zyklische Task).

Funktion
Taktgeber. Dieser Baustein erzeugt Impulse mit zu parametrierenden Impulsdauer und
Impulspause. Impulsdauer und Impulspause werden in ms angegeben.

Anlaufverhalten
Bei Anlauf werden die Zähler und Enable-Bits für die Perioden Q = 0 und Q = 1 eingestellt.
Das Enable-Bit für Q = 0 wird 1, die anderen Werte werden auf 0 gesetzt.

Impulsdiagramm

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge SAMPLE_T REAL Task-Abtastzeit in s 1.0
T0 TIME Dauer der Impulspause T#0ms
T1 TIME Dauer des Impulses T#0ms
Ausgang Q BOOL Ausgangsimpuls 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 155
Bausteine zum Erzeugen oder Bearbeiten von Impulsen
14.5 AFP: Taktgeber

Hilfe für CFC - Elementarbausteine


156 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zur Erfassung oder Bearbeitung von
Zeitpunkten und Zeiträumen 15
15.1 TIME

CFC-Bausteine der Familie


In dieser Familie sind folgende Bausteine zusammengefasst, die Zeitfunktionen zur
Verfügung stellen:

TIME: Ausführungszeit messen (Seite 158) Ausführungszeit messen


TIME_BEG: Aktuelle Uhrzeit auslesen (Seite 159) Aktuelle Uhrzeit auslesen
TIME_END: Eingangszeit mit der aktuellen Zeit Eingangszeit mit der aktuellen Zeit vergleichen
vergleichen (Seite 160)

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 157
Bausteine zur Erfassung oder Bearbeitung von Zeitpunkten und Zeiträumen
15.2 TIME: Ausführungszeit messen

15.2 TIME: Ausführungszeit messen

Funktion
Dieser Baustein misst die Zeit zwischen zwei Aufrufen (maximal 2 147 483 647 ms).

Hinweis
Zwischen den Aufrufen darf kein Datumswechsel liegen, da sonst eine negative Zeitdifferenz
(00:00:00 – gemessene Zeit) entsteht.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingänge DIFF BOOL Differenzmessung ein 1
Ausgang OUT TIME Zeit

Hilfe für CFC - Elementarbausteine


158 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine zur Erfassung oder Bearbeitung von Zeitpunkten und Zeiträumen
15.3 TIME_BEG: Aktuelle Uhrzeit auslesen

15.3 TIME_BEG: Aktuelle Uhrzeit auslesen

Funktion
Dieser Baustein gibt am Ausgang TM die Systemzeit an, zu der der Baustein aufgerufen
wird.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Ausgang TM TIME Aktuelle Zeit T#0ms

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 159
Bausteine zur Erfassung oder Bearbeitung von Zeitpunkten und Zeiträumen
15.4 TIME_END: Eingangszeit mit der aktuellen Zeit vergleichen

15.4 TIME_END: Eingangszeit mit der aktuellen Zeit vergleichen

Funktion
Dieser Baustein gibt am Ausgang TM_DIFF den Zeitunterschied zwischen dem Eingang TM
und der aktuellen Systemzeit an. Der Eingang TM diese Bausteins kann mit dem Ausgang
TM eines TIME_BEG-Bausteins verschaltet werden, um die Zeit zwischen den Aufrufen
dieser beiden Bausteine zu ermitteln.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang TM TIME Eingangszeit in ms T#0ms
Ausgang TM_DIFF TIME Zeitunterschied T#0ms

Hilfe für CFC - Elementarbausteine


160 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Regelungsbausteine 16
16.1 CONTROL

CFC-Bausteine der Familie "CONTROL"


Diese Familie umfasst folgende Bausteine:

CONT_C: Kontinuierlicher Regler (Seite 162) Kontinuierliches Regeln


CONT_S: Schrittregler (Seite 169) Schrittregeln
PULSEGEN: Pulsbreitenmodulation für PID-Regler Impulsformen
(Seite 175)

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 161
Regelungsbausteine
16.2 CONT_C

16.2 CONT_C

16.2.1 CONT_C: Kontinuierlicher Regler

Objektname (Art + Nummer)


FB 1

Einleitung
Der Funktionsbaustein CONT_C dient zum Regeln von technischen Prozessen mit
kontinuierlichen Ein- und Ausgangsgrößen auf den Automatisierungssystemen SIMATIC S7.
Über die Parametrierung können Sie Teilfunktionen des PID-Reglers zu- oder abschalten
und damit diesen an die Regelstrecke anpassen.

Anwendung
Den Regler können Sie als PID-Festwertregler einzeln oder auch in mehrschleifigen
Regelungen als Kaskaden-, Mischungs- oder Verhältnisregler einsetzen. Die Arbeitsweise
basiert auf dem PID-Regelalgorithmus des Abtastreglers mit analogem Ausgangssignal,
gegebenenfalls um eine Impulsformerstufe zur Bildung von pulsbreitenmodulierten
Ausgangssignalen für Zwei- oder Dreipunktregelungen mit proportionalen Stellgliedern
ergänzt.

Beschreibung
Neben den Funktionen im Soll- und Istwert realisiert der Funktionsbaustein einen fertigen
PID-Regler mit kontinuierlichem Stellgrößen-Ausgang und Beeinflussungsmöglichkeit des
Stellwerts von Hand. Folgende Teilfunktionen gibt es:
● Sollwertzweig (Seite 213)
● Istwertzweig (Seite 207)
● Regeldifferenzbildung (Seite 212)
● PID-Algorithmus (Seite 211)
● Handwertverarbeitung (Seite 205)
● Stellwertverarbeitung (Seite 214)
● Störgrößenaufschaltung (Seite 215)

Betriebszustände Neustart/Wiederanlauf
Der Funktionsbaustein CONT_C verfügt über eine Neustartroutine.
Der Integrierer wird beim Anlauf intern auf den Initialisierungswert I_ITVAL gesetzt. Beim
Aufruf in einer Weckalarmebene arbeitet er von diesem Wert aus weiter.

Hilfe für CFC - Elementarbausteine


162 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Regelungsbausteine
16.2 CONT_C

Alle anderen Ausgänge werden auf ihre Voreinstellungswerte gesetzt.

Fehlerinformationen
Das Fehlermeldewort RET_VAL wird nicht verwendet.

Eingangsparameter

Parameter Datentyp Wertebereich Voreinstellung Beschreibung


MAN_ON BOOL TRUE MANUAL VALUE ON/Handbetrieb
einschalten
Wenn der Eingang "Handbetrieb
einschalten" gesetzt ist, dann ist der
Regelkreis unterbrochen. Als
Stellwert wird ein Handwert
vorgegeben.
PVPER_ON BOOL FALSE PROCESS VARIABLE PERIPHERY
ON/Istwert Peripherie einschalten
Wenn der Istwert von der Peripherie
eingelesen werden soll, so muss der
Eingang PV_PER mit der Peripherie
verschaltet und der Eingang "Istwert
Peripherie einschalten" gesetzt
werden.
P_SEL BOOL TRUE PROPORTIONAL ACTION ON/P-
Anteil einschalten
Im PID-Algorithmus lassen sich die
PID-Anteile einzeln zu- und
abschalten. Der P-Anteil ist
eingeschaltet, wenn der Eingang "P-
Anteil einschalten" gesetzt ist.
I_SEL BOOL TRUE INTEGRAL ACTION ON/I-Anteil
einschalten
Im PID-Algorithmus lassen sich die
PID-Anteile einzeln zu- und
abschalten. Der I-Anteil ist
eingeschaltet, wenn der Eingang "I-
Anteil einschalten" gesetzt ist.
INT_HOLD BOOL FALSE INTEGRAL ACTION HOLD/I-Anteil
einfrieren
Der Ausgang des Integrierers kann
eingefroren werden. Hierzu muss der
Eingang "I-Anteil einfrieren" gesetzt
werden.
I_ITL_ON BOOL FALSE INITIALIZATION OF THE
INTEGRAL ACTION/I-Anteil setzen
Der Ausgang des Integrierers kann
auf den Eingang I_ITL_VAL gesetzt
werden. Hierzu muss der Eingang "I-
Anteil setzen" gesetzt werden.

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 163
Regelungsbausteine
16.2 CONT_C

Parameter Datentyp Wertebereich Voreinstellung Beschreibung


D_SEL BOOL FALSE DERIVATIVE ACTION ON/D-Anteil
einschalten
Im PID-Algorithmus lassen sich die
PID-Anteile einzeln zu- und
abschalten. Der D-Anteil ist
eingeschaltet, wenn der Eingang "D-
Anteil einschalten" gesetzt ist.
SAMPLE_T REAL ≥ 0.001 s T#1s SAMPLE TIME/Abtastzeit
Die Zeit zwischen den
Bausteinaufrufen muss konstant
sein. Der Eingang "Abtastzeit" gibt
die Zeit zwischen den
Bausteinaufrufen an.
SP_INT REAL -100.0 ... 0.0 INTERNAL SETPOINT/Interner
+100.0 % oder Sollwert
phys. Größe Der Eingang "Interner Sollwert" dient
zur Vorgabe eines Sollwerts.
PV_IN REAL -100.0 ... 0.0 PROCESS VARIABLE IN/Istwert
+100.0 % oder Eingang
phys. Größe Am Eingang "Istwert Eingang" kann
ein Inbetriebsetzungswert
parametriert oder ein externer Istwert
im Gleitpunktformat verschaltet
werden.
PV_PER WORD W#16#0000 PROCESS VARIABLE
PERIPHERIE/Istwert Peripherie
Der Istwert im Peripherieformat wird
am Eingang "Istwert Peripherie" mit
dem Regler verschaltet.
MAN REAL -100.0 ... 0.0 MANUAL VALUE/Handwert
+100.0 % oder Der Eingang "Handwert" dient zur
phys. Größe Vorgabe eines Handwerts mittels
Bedien-Beobachterfunktion.
GAIN REAL 2.0 PROPORTIONAL
GAIN/Proportionalbeiwert
Der Eingang "Proportionalbeiwert"
gibt die Reglerverstärkung an.
TN TIME ≥ SAMPLE_T T#20s RESET TIME/Integrationszeit
Der Eingang "Integrationszeit"
bestimmt das Zeitverhalten des
Integrierers.
TV TIME ≥ SAMPLE_T T#10s DERIVATIVE TIME/Differenzierzeit
Der Eingang "Differenzierzeit"
bestimmt das Zeitverhalten des
Differenzierers.

Hilfe für CFC - Elementarbausteine


164 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Regelungsbausteine
16.2 CONT_C

Parameter Datentyp Wertebereich Voreinstellung Beschreibung


TM_LAG TIME ≥ SAMPLE_T / T#2s TIME LAG OF THE DERIVATE
2 ACTION/Verzögerungszeit des D-
Anteils
Der Algorithmus des D-Anteils
enthält eine Verzögerung, die am
Eingang "Verzögerungszeit des D-
Anteils" parametriert werden kann.
DEADB_W REAL ≥ 0.0 % oder 0.0 DEAD BAND WIDTH/Totzonenbreite
phys. Größe Die Regeldifferenz wird über eine
Totzone geführt. Der Eingang
"Totzonenbreite" bestimmt die Größe
der Totzone.
LMN_HLM REAL LMN_LLM ... 100.0 MANIPULATED VALUE HIGH
+100.0 % oder LIMIT/Stellwert obere Begrenzung
phys. Größe Der Stellwert wird immer auf eine
obere und untere Grenze begrenzt.
Der Eingang "Stellwert obere
Begrenzung" gibt die obere
Begrenzung an.
LMN_LLM REAL -100.0 ... 0.0 MANIPULATED VALUE LOW
LMN_HLM % LIMIT/Stellwert untere Begrenzung
oder phys. Der Stellwert wird immer auf eine
Größe obere und untere Grenze begrenzt.
Der Eingang "Stellwert untere
Begrenzung" gibt die untere
Begrenzung an.
PV_FAC REAL 1.0 PROCESS VARIABLE
FACTOR/Istwertfaktor
Der Eingang "Istwertfaktor" wird mit
dem Istwert multipliziert. Der
Eingang dient zur Anpassung des
Istwertbereichs.
PV_OFF REAL 0.0 PROCESS VARIABLE
OFFSET/Istwert-Offset
Der Eingang "Istwert-Offset" wird mit
dem Istwert addiert. Der Eingang
dient zu Anpassung des
Istwertbereichs.
LMN_FAC REAL 1.0 MANIPULATED VALUE
FACTOR/Stellwertfaktor
Der Eingang "Stellwertfaktor" wird
mit dem Stellwert multipliziert. Der
Eingang dient zur Anpassung des
Stellwertbereiches.
LMN_OFF REAL 0.0 MANIPULATED VALUE
OFFSET/Stellwertoffset
Der Eingang "Stellwertoffset" wird
mit dem Stellwert addiert. Der
Eingang dient zur Anpassung des
Stellwertbereiches.

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 165
Regelungsbausteine
16.2 CONT_C

Parameter Datentyp Wertebereich Voreinstellung Beschreibung


I_ITLVAL REAL -100.0 ... 0.0 INITIALIZATION VALUE OF THE
+100.0 % oder INTEGRAL
phys. Größe ACTION/Initialisierungswert für I-
Anteil
Der Ausgang des Integrierers kann
am Eingang I_ITL_ON gesetzt
werden. Am Eingang
"Initialisierungswert für I-Anteil" steht
der Initialisierungswert.
DISV REAL -100.0 ... 0.0 DISTURBANCE
+100.0 % oder VARIABLE/Störgröße
phys. Größe Für eine Störgrößenaufschaltung
wird die Störgröße am Eingang
"Störgröße" verschaltet.

Ausgangsparameter

Parameter Datentyp Wertebereich Voreinstellung Beschreibung


LMN REAL 0.0 MANIPULATED VALUE/Stellwert
Am Ausgang "Stellwert" wird der
effektiv wirkende Stellwert im
Gleitpunktformat ausgegeben.
LMN_PER WORD W#16#0000 MANIPULATED VALUE
PERIPHERY/Stellwert Peripherie
Der Stellwert im Peripherieformat
wird am Ausgang "Stellwert
Peripherie" mit dem Regler
verschaltet.
QLMN_HLM BOOL FALSE HIGH LIMIT OF MANIPULATED
VALUE REACHED/Obere
Begrenzung des Stellwerts
angesprochen
Der Stellwert wird immer auf eine
obere und untere Grenze begrenzt.
Der Ausgang "Obere Begrenzung
des Stellwerts angesprochen" meldet
die Überschreitung der oberen
Begrenzung.
QLMN_LLM BOOL FALSE LOW LIMIT OF MANIPULATED
VALUE REACHED/Untere
Begrenzung des Stellwerts
angesprochen
Der Stellwert wird immer auf eine
obere und untere Grenze begrenzt.
Der Ausgang "Untere Begrenzung
des Stellwerts angesprochen" meldet
die Unterschreitung der unteren
Begrenzung.

Hilfe für CFC - Elementarbausteine


166 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Regelungsbausteine
16.2 CONT_C

Parameter Datentyp Wertebereich Voreinstellung Beschreibung


LMN_P REAL 0.0 PROPORTIONALITY
COMPONENT/P-Anteil
Der Ausgang "P-Anteil" enthält den
Proportionalanteil der Stellgröße.
LMN_I REAL 0.0 INTEGRAL COMPONENT/I-Anteil
Der Ausgang "I-Anteil" enthält den
Integralanteil der Stellgröße.
LMN_D REAL 0.0 DERIVATIVE COMPONENT/D-
Anteil
Der Ausgang "D-Anteil" enthält den
Differenzialanteil der Stellgröße.
PV REAL 0.0 PROCESS VARIABLE/Istwert
Am Ausgang "Istwert" wird der
effektiv wirkende Istwert
ausgegeben.
ER REAL 0.0 ERROR SIGNAL/Regeldifferenz
Am Ausgang "Regeldifferenz" wird
die effektiv wirkende Regeldiffernz
ausgegeben.

Weitere Informationen
Weitere Informationen finden Sie im Abschnitt:
CONT_C: Blockschaltbild (Seite 168)

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 167
Regelungsbausteine
16.2 CONT_C

16.2.2 CONT_C: Blockschaltbild

Hilfe für CFC - Elementarbausteine


168 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Regelungsbausteine
16.3 CONT_S

16.3 CONT_S

16.3.1 CONT_S: Schrittregler

Objektname (Art + Nummer)


FB 2

Einleitung
Der Funktionsbaustein CONT_S dient zum Regeln von technischen Prozessen mit binären
Stellwertausgangssignalen für integrierende Stellglieder auf den Automatisierungssystemen
SIMATIC S7. Über die Parametrierung können Sie Teilfunktionen des PI-Schrittreglers zu-
oder abschalten und damit diesen an die Regelstrecke anpassen.

Anwendung
Der Regler kann als PI-Festwertregler einzeln oder in unterlagerten Regelkreisen bei
Kaskaden-, Mischungs- oder Verhältnisregler eingesetzt werden, jedoch nicht als
Führungsregler. Die Arbeitsweise basiert auf dem PI-Regelalgorithmus des Abtastreglers
und wird um die Funktionsglieder zur Erzeugung des binären Ausgangssignals aus dem
analogen Stellsignal ergänzt.
Mit TN = T#0 ms kann der I-Anteil des Reglers abgeschaltet werden. Somit kann der
Baustein als P-Regler verwendet werden.
Da der Regler ohne Stellungsrückmeldung arbeitet, stimmt die intern berechnete Stellgröße
nicht exakt mit der Stellgliedposition überein. Ein Abgleich wird vorgenommen, wenn die
Stellgröße (ER * GAIN) negativ wird. Dann setzt der Regler den Ausgang Stellwertsignal tief
(QLMNDN) solange, bis das untere Anschlagssignal der Stellungsrückmeldung (LMNR_LS)
gesetzt wird.
Der Regler kann auch in einer Reglerkaskade als unterlagerter Stellungsregler eingesetzt
werden. Über den Sollwerteingang SP_INT wird die Stellgliedposition vorgegeben. In diesem
Fall müssen der Istwerteingang und der Parameter Integrationszeit (TN) auf Null gesetzt
werden. Anwendungsfall ist z. B. eine Temperaturregelung mit Heizleistungsregelung über
Puls-Pause-Ansteuerung und Kühlleistungsregelung über eine Ventilklappe.
Um die Klappe ganz zu schließen sollte die Stellgröße (ER * GAIN) negativ werden.

Beschreibung
Neben den Funktionen im Istwertzweig realisiert der Funktionsbaustein einen fertigen PI-
Regler mit binärem Stellwertausgang und Beeinflussungsmöglichkeit des Stellwerts von
Hand. Der Schrittregler arbeitet ohne Stellungsrückmeldung. Folgende Teilfunktionen gibt
es:
● Sollwertzweig (Seite 213)
● Istwertzweig (Seite 207)

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 169
Regelungsbausteine
16.3 CONT_S

● Regeldifferenzbildung (Seite 212)


● PI-Schrittalgorithmus (Seite 210)
● Störgrößenaufschaltung (Seite 215)

Betriebszustände Neustart/Wiederanlauf
Der Funktionsbaustein CONT_S verfügt über eine Neustartroutine.
Alle Ausgänge werden auf ihre Voreinstellungswerte gesetzt.

Fehlerinformationen
Das Fehlermeldewort RET_VAL wird nicht verwendet.

Eingangsparameter

Parameter Datentyp Wertebereich Voreinstellung Beschreibung


LMNR_HS BOOL FALSE HIGH LIMIT SIGNAL OF REPEATED
MANIPULATED VALUE/Oberes
Anschlagsignal der
Stellungsrückmeldung
Das Signal "Stellventil am oberen
Anschlag" wird am Eingang "Oberes
Anschlagsignal der
Stellungsrückmeldung" verschaltet.
LMNR_HS = TRUE heißt: Das
Stellventil befindet sich am oberen
Anschlag.
LMNR_LS BOOL FALSE LOW LIMIT SIGNAL OF REPEATED
MANIPULATED VALUE/Unteres
Anschlagsignal der
Stellungsrückmeldung
Das Signal "Stellventil am unteren
Anschlag" wird am Eingang "Unteres
Anschlagsignal der
Stellungsrückmeldung" verschaltet.
LMNR_LS = TRUE heißt: Das
Stellventil befindet sich am unteren
Anschlag.
LMNS_ON BOOL TRUE MANIPULATED SIGNALS
ON/Handbetrieb der Stellwertsignale
einschalten
Am Eingang "Handbetrieb der
Stellwertsignale einschalten" wird die
Stellwertsignalverarbeitung auf Hand
geschaltet.

Hilfe für CFC - Elementarbausteine


170 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Regelungsbausteine
16.3 CONT_S

Parameter Datentyp Wertebereich Voreinstellung Beschreibung


LMNUP BOOL FALSE MANIPULATED SIGNALS
UP/Stellwertsignal Hoch
Bei Handbetrieb der Stellwertsignale
wird am Eingang "Stellwertsignal
Hoch" das Ausgangssignal QLMNUP
bedient.
LMNDN BOOL FALSE MANIPULATED SIGNALS
DOWN/Stellwertsignal Tief
Bei Handbetrieb der Stellwertsignale
wird am Eingang "Stellwertsignal Tief"
das Ausgangssignal QLMNDN
bedient.
PVPER_O BOOL FALSE PROCESS VARIABLE PERIPHERY
N ON/Istwert Peripherie einschalten
Wenn der Istwert von der Peripherie
eingelesen werden soll, so muss der
Eingang PV_VER mit der Peripherie
verschaltet werden und der Eingang
"Istwert Peripherie einschalten"
gesetzt werden.
SAMPLE_ REAL ≥ 0.001s T#1s SAMPLE TIME/Abtastzeit
T Die Zeit zwischen den
Bausteinaufrufen muss konstant sein.
Der Eingang "Abtastzeit" gibt die Zeit
zwischen den Bausteinaufrufen an.
SP_INT REAL -100.0 ... 0.0 INTERNAL SETPOINT/Interner
+100.0 % oder Sollwert
phys. Größe Der Eingang "Interner Sollwert" dient
zur Vorgabe eines Sollwerts.
PV_IN REAL -100.0 ... 0.0 PROCESS VARIABLE IN/Istwert
+100.0 % oder Eingang
phys. Größe Am Eingang "Istwert Eingang" kann
ein Inbetriebsetzungswert parametriert
oder ein externer Istwert im
Gleitpunktformat verschaltet werden.
PV_PER WORD W#16#0000 PROCESS VARIABLE
PERIPHERIE/Istwert Peripherie
Der Istwert im Peripherieformat wird
am Eingang "Istwert Peripherie" mit
dem Regler verschaltet.
GAIN REAL 2.0 PROPORTIONAL
GAIN/Proportionalbeiwert
Der Eingang "Proportionalbeiwert" gibt
die Reglerverstärkung an.
TN TIME ≥ SAMPLE_T T#20s RESET TIME/Integrationszeit
Der Eingang "Integrationszeit"
bestimmt das Zeitverhalten des
Integrierers.

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 171
Regelungsbausteine
16.3 CONT_S

Parameter Datentyp Wertebereich Voreinstellung Beschreibung


DEADB_ REAL ≥ 0.0 % oder 0.0 DEAD BAND WIDTH/Totzonenbreite
W phys. Größe Die Regeldifferenz wird über eine
Totzone geführt. Der Eingang
"Totzonenbreite" bestimmt die Größe
der Totzone.
PV_FAC REAL 1.0 PROCESS VARIABLE
FACTOR/Istwertfaktor
Der Eingang "Istwertfaktor" wird mit
dem Istwert multipliziert. Der Eingang
dient zur Anpassung des
Istwertbereichs.
PV_OFF REAL 0.0 PROCESS VARIABLE
OFFSET/Istwert-Offset
Der Eingang "Istwert-Offset" wird mit
dem Istwert addiert. Der Eingang dient
zur Anpassung des Istwertbereichs.
PULSE_T TIME ≥ SAMPLE_T T#3s MINIMUM PULSE
M TIME/Mindestimpulsdauer
Am Parameter "Mindestimpulsdauer"
kann eine minimale Impulslänge
parametriert werden.
BREAK_T TIME ≥ SAMPLE_T T#3s MINIMUM BREAK
M TIME/Mindestpausendauer
Am Parameter "Mindestpausendauer"
kann eine minimale Pausenlänge
parametriert werden.
MTR_TM TIME ≥ SAMPLE_T T#30s MOTOR MANIPULATED
VALUE/Motorstellzeit
Am Parameter "Motorstellzeit" wird die
Laufzeit des Stellventils von Anschlag
zu Anschlag eingetragen.
DISV REAL -100.0 ... 0.0 DISTURBANCE VARIABLE/Störgröße
+100.0 % oder Für eine Störgrößenaufschaltung wird
phys. Größe die Störgröße am Eingang "Störgröße"
verschaltet.

Hilfe für CFC - Elementarbausteine


172 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Regelungsbausteine
16.3 CONT_S

Ausgangsparameter

Parameter Datentyp Wertebereich Voreinstellung Beschreibung


QLMNUP BOOL FALSE MANIPULATED SIGNAL
UP/Stellwertsignal Hoch
Wenn der Ausgang "Stellwertsignal
Hoch" gesetzt ist, so soll das
Stellventil geöffnet werden.
QLMNDN BOOL FALSE MANIPULATED SIGNAL
DOWN/Stellwertsignal Tief
Wenn der Ausgang "Stellwertsignal
Tief" gesetzt ist, so soll das
Stellventil geschlossen werden.
PV REAL 0.0 PROCESS VARIABLE/Istwert
Am Ausgang "Istwert" wird der
effektiv wirkende Istwert
ausgegeben.
ER REAL 0.0 ERROR SIGNAL/Regeldifferenz
Am Ausgang "Regeldifferenz" wird
die effektiv wirkende Regeldiffernz
ausgegeben.

Weitere Informationen
Weitere Informationen finden Sie im Abschnitt:
CONT_S: Blockschaltbild (Seite 174)

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 173
Regelungsbausteine
16.3 CONT_S

16.3.2 CONT_S: Blockschaltbild

Hilfe für CFC - Elementarbausteine


174 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Regelungsbausteine
16.4 PULSEGEN

16.4 PULSEGEN

16.4.1 PULSEGEN: Pulsbreitenmodulation für PID-Regler

Objektname (Art + Nummer)


FB 3

Einleitung
Der Funktionsbaustein PULSEGEN dient zum Aufbau eines PID-Reglers mit Impulsausgang
für proportionale Stellglieder.

Anwendung
Mit dem Funktionsbaustein PULSEGEN lassen sich PID-Zweipunktregler oder PID-
Dreipunktregler mit Pulsbreitenmodulation aufbauen. Die Funktion wird meistens in
Verbindung mit dem kontinuierlichen Regler CONT_C (Seite 162) angewendet.

Beschreibung
Die Funktion PULSEGEN transformiert die Eingangsgröße INV (= LMN des PID-Reglers)
durch Modulation der Impulsbreite in eine Impulsfolge mit konstanter Periodendauer. Sie
entspricht der Zykluszeit, mit der die Eingangsgröße aktualisiert wird, und muss in PER_TM
parametriert werden.
Die Dauer eines Impulses pro Periodendauer ist proportional der Eingangsgröße. Dabei ist
der durch PER_TM parametrierte Zyklus nicht identisch mit dem Bearbeitungszyklus des
Funktionsbausteins PULSEGEN. Vielmehr setzt sich ein Zyklus PER_TM aus mehreren
Bearbeitungszyklen des Funktionsbausteins PULSEGEN zusammen. Die Anzahl der
PULSEGEN-Aufrufe pro PER_TM-Zyklus stellt dabei ein Maß für die Genauigkeit der
Impulsbreitenmodulation dar.
Wetere Informationen zur Impulsbreitenmodulation finden Sie unter:
Impulsbreitenmodulation (Seite 206)

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 175
Regelungsbausteine
16.4 PULSEGEN

Eine Eingangsgröße von 30% und 10 PULSEGEN-Aufrufe pro PER_TM bedeutet


Folgendes:
● "eins" am Ausgang QPOS für die ersten drei Aufrufe des PULSEGEN (30% von 10
Aufrufen)
● "null" am Ausgang QPOS für sieben weitere Aufrufe des PULSEGEN (70% von 10
Aufrufen)
Die Impulsdauer wird zu Beginn jeder Periode neu berechnet.

Stellwertgenauigkeit
Durch ein "Abtastverhältnis" von 1:10 (CONT_C-Aufrufe zu PULSEGEN-Aufrufe) ist die
Stellwertgenauigkeit in diesem Beispiel auf 10% beschränkt. Vorgegebene Eingangswerte
INV können nur im Raster von 10% auf eine Impulslänge am Ausgang QPOS abgebildet
werden.
Entsprechend erhöht sich die Genauigkeit mit der Anzahl der PULSEGEN-Aufrufe pro
CONT_C-Aufruf.
Wenn PULSEGEN zum Beispiel 100 mal häufiger aufgerufen wird als CONT_C, so erreicht
man eine Auflösung von 1% des Stellwertbereichs.

Hinweis
Die Untersetzung der Aufrufhäufigkeit müssen Sie selbst programmieren.

Automatische Synchronisation
Es besteht die Möglichkeit, die Impulsausgabe mit dem Baustein, der die Eingangsgröße
INV (zum Beispiel CONT_C) aktualisiert, automatisch zu synchronisieren. Damit ist
gewährleistet, dass eine sich ändernde Eingangsgröße auch schnellstmöglich als Impuls
ausgegeben wird.
Der Impulsformer wertet immer im Zeitabstand der Periodendauer PER_TM die
Eingangsgröße INV aus und wandelt den Wert in ein Impulssignal der entsprechenden
Länge um. Da aber INV meistens in einer langsameren Weckalarmebene berechnet wird,
sollte der Impulsformer möglichst schnell nach der Aktualisierung von INV mit der
Umwandlung des diskreten Werts in ein Impulssignal beginnen.
Dazu kann der Baustein den Start der Periode nach folgendem Verfahren selbst
synchronisieren:
Wenn sich INV geändert hat und wenn sich der Bausteinaufruf nicht im ersten oder in den
letzten zwei Aufrufzyklen einer Periode befindet, so wird eine Synchronisation ausgeführt.
Die Impulsdauer wird neu berechnet und beim nächsten Zyklus mit einer neuen Periode wird
mit der Ausgabe begonnen.
Die automatische Synchronisation lässt sich am Eingang "SYN_ON" (= FALSE) abschalten.

Hilfe für CFC - Elementarbausteine


176 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Regelungsbausteine
16.4 PULSEGEN

Hinweis
Durch den Beginn der neuen Periode wird der Altwert von INV (das heißt von LMN) nach der
Synchronisation mehr oder weniger ungenau auf das Impulssignal abgebildet.

Betriebsarten
Je nach Parametrierung des Impulsformers können PID-Regler mit Dreipunktverhalten oder
mit bipolarem beziehungsweise unipolarem Zweipunktausgang konfiguriert werden. Die
folgende Tabelle zeigt die Einstellung der Schalterkombinationen für die möglichen
Betriebsarten.

Betriebsart Schalter
MAN_ON STEP3_ON ST2BI_ON
Dreipunktregelung FALSE TRUE beliebig
Zweipunktreglung mit bipolarem Stellbereich (-100% ... FALSE FALSE TRUE
+100%)
Zweipunktreglung mit unipolarem Stellbereich (0% ... +100%) FALSE FALSE FALSE
Handbetrieb TRUE beliebig beliebig

Eingangsparameter

Parameter Datentyp Wertebereich Voreinstellung Beschreibung


INV REAL -100.0 ... 0.0 INPUT
+100.0% VARIABLE/Eingangsvariable
Am Eingangsparameter
"Eingangsvariable" wird eine
analoge Stellwertgröße
aufgeschaltet.
PER_TM TIME ≥ 20 * T#1s PERIOD TIME/Periodendauer
SAMPLE_T Am Eingangsparameter
"Periodendauer" wird die konstante
Periodendauer der
Pulsbreitenmodulation eingegeben.
Sie entspricht der Abtastzeit des
Reglers. Das Verhältnis Abtastzeit
des Impulsformers zu Abtastzeit
des Reglers bestimmt die
Genauigkeit der
Pulsbreitenmodulation.

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 177
Regelungsbausteine
16.4 PULSEGEN

Parameter Datentyp Wertebereich Voreinstellung Beschreibung


P_B_TM TIME ≥ SAMPLE_T T#0ms MINIMUM PULSE/BREAK
TIME/Mindestimpuls-
beziehungsweise
Mindestpausendauer
Am Eingangsparameter
"Mindestimpuls- beziehungsweise
Mindestpausendauer" kann eine
minimale Impuls- beziehungsweise
Pausenlänge parametriert werden.
RATIOFAC REAL 0.1 ... 10.0 1.0 RATIO FACTOR/Verhältnisfaktor
Durch den Eingangsparameter
"Verhältnisfaktor" kann das
Verhältnis der Dauer von negativen
zu positiven Impulsen verändert
werden. Bei einem thermischen
Prozess können damit
unterschiedliche Zeitkonstanten für
Heizen und Kühlen (zum Beispiel
Prozess mit elektrischer Heizung
und Wasserkühlung) kompensiert
werden.
STEP3_ON BOOL TRUE THREE STEP CONTROL
ON/Dreipunktregelung einschalten
Am Eingangsparameter
"Dreipunktregelung einschalten"
wird die entsprechende Betriebsart
aktiviert. Bei Dreipunktregelung
arbeiten beide Ausgangssignale.
ST2BI_ON BOOL FALSE TWO STEP CONTROL FOR
BIPOLAR MANIPULATED VALUE
RANGE ON/Zweipunktregelung für
bipolaren Stellwertbereich
einschalten
Am Eingangsparameter
"Zweipunktregelung für bipolaren
Stellwertbereich einschalten" kann
zwischen den Betriebsarten
"Zweipunktregelung für bipolaren
Stellwertbereich" und
"Zweipunktregelung für unipolaren
Stellwertbereich" gewählt werden.
Hierbei muss STEP3_ON = FALSE
sein.
MAN_ON BOOL FALSE MANUAL MODE ON/Handbetrieb
einschalten
Durch Setzen des
Eingangsparameters "Handbetrieb
einschalten" können die
Ausgangssignale von Hand gesetzt
werden.

Hilfe für CFC - Elementarbausteine


178 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Regelungsbausteine
16.4 PULSEGEN

Parameter Datentyp Wertebereich Voreinstellung Beschreibung


POS_P_ON BOOL FALSE POSITIVE PULSE ON/Positiver
Impuls ein
Bei Handbetrieb Dreipunktregelung
kann am Eingangsparameter
"Positiver Impuls ein" das
Ausgangssignal QPOS_P bedient
werden. Bei Handbetrieb
Zweipunktregelung wird QNEG_P
immer invertiert zu QPOS_P
gesetzt.
NEG_P_ON BOOL FALSE NEGATIVE PULSE ON/Negativer
Impuls ein
Bei Handbetrieb Dreipunktregelung
kann am Eingangsparameter
"Negativer Impuls ein" das
Ausgangssignal QNEG_P bedient
werden. Bei Handbetrieb
Zweipunktregelung wird QNEG_P
immer invertiert zu QPOS_P
gesetzt.
SYN_ON BOOL TRUE SYNCHRONISATION
ON/Synchronisation einschalten
Es besteht die Möglichkeit, durch
Setzen des Eingangsparameters
"Synchronisation einschalten" die
Impulsausgabe mit dem Baustein,
der die Eingangsgröße INV
aktualisiert, automatisch zu
synchronisieren. Damit ist
gewährleistet, dass eine sich
ändernde Eingangsgröße auch
schnellstmöglich als Impuls
ausgegeben wird.
SAMPLE_T REAL ≥ 0,001s 1 SAMPLE TIME/Abtastzeit [s]
Die Zeit zwischen den
Bausteinaufrufen muss konstant
sein. Der Eingang "Abtastzeit" gibt
die Zeit zwischen den
Bausteinaufrufen an.

Hinweis
Die Werte der Eingangsparameter werden im Baustein nicht begrenzt. Eine Prüfung der
Parameter findet nicht statt.

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 179
Regelungsbausteine
16.4 PULSEGEN

Ausgangsparameter

Parameter Datenty Wertebereich Voreinstellung Beschreibung


p
QPOS_P BOOL FALSE OUTPUT POSITIVE PULSE/Ausgangssignal
positiver Impuls
Der Ausgangsparameter "Ausgangssignal
positiver Impuls" ist gesetzt, wenn ein Impuls
ausgegeben werden soll. Bei
Dreipunktregelung ist es der positive Impuls.
Bei Zweipunktregelung wird QNEG_P immer
invertiert zu QPOS_P gesetzt.
QNEG_P BOOL FALSE OUTPUT NEGATIVE
PULSE/Ausgangssignal negativer Impuls
Der Ausgangsparameter "Ausgangssignal
negativer Impuls" ist gesetzt, wenn ein
Impuls ausgegeben werden soll. Bei
Dreipunktregelung ist es der negative Impuls.
Bei Zweipunktregelung wird QNEG_P immer
invertiert zu QPOS_P gesetzt.

Betriebszustände Neustart/Wiederanlauf
Bei Neustart werden alle Signalausgänge auf Null gesetzt.

Fehlerinformationen
Das Fehlermeldewort RET_VAL wird nicht verwendet.

Weitere Informationen
Weitere Informationen finden Sie in folgenden Abschnitten:
PULSEGEN: Blockschaltbild (Seite 181)
PULSEGEN: Dreipunktregelung (Seite 181)
PULSEGEN: Dreipunktregelung, unsymmetrisch (Seite 182)
PULSEGEN: Zweipunktregelung (Seite 183)
PULSEGEN: Handbetrieb bei Zwei- oder Dreipunktregelung (Seite 184)

Hilfe für CFC - Elementarbausteine


180 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Regelungsbausteine
16.4 PULSEGEN

16.4.2 PULSEGEN: Blockschaltbild

16.4.3 PULSEGEN: Dreipunktregelung

Beschreibung
In der Betriebsart "Dreipunktregelung" können drei Zustände des Stellsignals erzeugt
werden. Dazu werden die Zustandswerte der binären Ausgangssignale QPOS_P und
QNEG_P den jeweiligen Betriebszuständen des Stellgliedes zugeordnet: Die Tabelle zeigt
das Beispiel einer Temperaturregelung:

Stellglied
Ausgangssignal Heizen Aus Kühlen
QPOS_P TRUE FALSE FALSE
QNEG_P FALSE FALSE TRUE

Aus der Eingangsgröße wird über eine Kennlinie eine Impulsdauer berechnet. Die Form
dieser Kennlinie wird durch die Mindestimpuls- beziehungsweise Pausendauer und dem
Verhältnisfaktor definiert. Der normale Wert für den Verhältnisfaktor ist 1.
Die Knickpunkte an den Kennlinien werden durch die Mindestimpuls- beziehungsweise
Pausendauer verursacht. Weitere Informationen zur Kennlinie finden Sie unter:
Symetrische Kennlinie für Dreipunktregler (Seite 216)

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 181
Regelungsbausteine
16.4 PULSEGEN

Mindestimpulsdauer oder Pausendauer


Eine richtig parametrierte Mindestimpulsdauer oder Mindestpausendauer P_B_TM kann
kurze Ein- oder Ausschaltzeiten, die die Lebensdauer von Schaltgliedern und
Stelleinrichtungen beeinträchtigen, verhindern.

Hinweis
Kleine Absolutwerte der Eingangsgröße LMN, die eine Impulsdauer kleiner als P_B_TM
erzeugen würden, werden unterdrückt. Große Eingangswerte, die eine Impulsdauer größer
als (PER_TM - P_B_TM) erzeugen würden, werden auf 100% beziehungsweise
-100% gesetzt.
Die Dauer der positiven oder negativen Impulse errechnet sich aus der Eingangsgröße (in
%) mal Periodendauer: Impulsdauer = INV / 100 * PER_TM

Weitere Informationen
Weitere Informationen finden Sie in folgenden Abschnitten:
PULSEGEN: Dreipunktregelung, unsymmetrisch (Seite 182)
PULSEGEN: Zweipunktregelung (Seite 183)
PULSEGEN: Handbetrieb bei Zwei- oder Dreipunktregelung (Seite 184)

16.4.4 PULSEGEN: Dreipunktregelung, unsymmetrisch

Beschreibung
Über den Verhältnisfaktor RATIOFAC kann das Verhältnis der Dauer von positiven zu
negativen Impulsen verändert werden. Bei einem thermischen Prozess lassen sich damit
zum Beispiel unterschiedliche Streckenzeitkonstanten für Heizen und Kühlen
berücksichtigen.
Der Verhältnisfaktor beeinflusst auch die Mindestimpulsdauer bzw. Pausendauer. Ein
Verhältnisfaktor < 1 bedeutet, dass der Ansprechwert für negative Impulse mit dem
Verhältnisfaktor multipliziert wird.

Verhältnisfaktor < 1
Die aus Eingangsgröße mal Periodendauer berechnete Impulsdauer am negativen
Impulsausgang wird um den Verhältnisfaktor verkürzt:
Dauer des positiven Impulses = INV / 100 * PER_TM
Dauer des negativen Impulses = INV / 100 * PER_TM + RATIOFAC

Hilfe für CFC - Elementarbausteine


182 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Regelungsbausteine
16.4 PULSEGEN

Verhältnisfaktor > 1
Die aus Eingangsgröße mal Periodendauer berechnete Impulsdauer am positiven
Impulsausgang wird um den Verhältnisfaktor verkürzt:
Dauer des positiven Impulses = INV / 100 + PER_TM
Dauer des negativen Impulses = INV / 100 * PER_TM / RATIOFAC

Weitere Informationen
Weitere Informationen finden Sie in folgenden Abschnitten:
Unsymetrische Kennlinie des Dreipunktreglers (Seite 217)
PULSEGEN: Dreipunktregelung (Seite 181)
PULSEGEN: Zweipunktregelung (Seite 183)
PULSEGEN: Handbetrieb bei Zwei- oder Dreipunktregelung (Seite 184)

16.4.5 PULSEGEN: Zweipunktregelung

Beschreibung
Bei der Zweipunktregelung wird nur der positive Impulsausgang QPOS_P von PULSEGEN
mit dem betreffenden Ein- / Aus-Stellglied verbunden. Je nach genutztem Stellwertbereich
hat der Zweipunktregler einen bipolaren oder einen unipolaren Stellwertbereich.
An QNEG_P steht das negierte Ausgangssignal zur Verfügung, falls die Verschaltung des
Zweipunktreglers im Regelkreis ein logisch invertiertes Binärsignal für die Stellimpulse
erfordert.

Impuls Stellglied Ein Stellglied Aus


QPOS_P TRUE FALSE
QNEG_P FALSE TRUE

Weitere Informationen
Weitere Informationen finden Sie in folgenden Abschnitten:
Kennlinie mit bipolarem Stellwertbereich (Seite 208)
Kennlinie mit unipolarem Stellwertbereich (Seite 209)
PULSEGEN: Dreipunktregelung (Seite 181)
PULSEGEN: Dreipunktregelung, unsymmetrisch (Seite 182)
PULSEGEN: Handbetrieb bei Zwei- oder Dreipunktregelung (Seite 184)

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 183
Regelungsbausteine
16.4 PULSEGEN

16.4.6 PULSEGEN: Handbetrieb bei Zwei- oder Dreipunktregelung

Beschreibung
Im Handbetrieb (MAN_ON = TRUE) können die Binärausgänge des Dreipunkt-
beziehungsweise Zweipunktreglers über die Signale POS_P_ON und NEG_P_ON
unabhängig von INV gesetzt werden.

POS_P_ON NEG_P_ON QPOS_P QNEG_P


Dreipunktregelung FALSE FALSE FALSE FALSE
TRUE FALSE TRUE FALSE
FALSE TRUE FALSE TRUE
TRUE TRUE FALSE FALSE
Zweipunktregelung FALSE beliebig FALSE TRUE
TRUE beliebig TRUE FALSE

Weitere Informationen
Weitere Informationen finden Sie in folgenden Abschnitten:
PULSEGEN: Dreipunktregelung (Seite 181)
PULSEGEN: Dreipunktregelung, unsymmetrisch (Seite 182)
PULSEGEN: Zweipunktregelung (Seite 183)

Hilfe für CFC - Elementarbausteine


184 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine für Systemfunktionen 17
17.1 EVENT: Start der Ablaufebene

CFC-Bausteine der Familie "SYSTEM"


In der Familie sind folgende Systemaufrufe zusammengefasst, die das M7-300/400-
Laufzeitsystem zur Verfügung stellt:

DELAY (Seite 186) Generieren eines Softwarealarms, dessen Name als


Parameter übergeben wird
DELAY: Verzögern der Startereignisse Verzögern aller auftretenden Startereignisse bis zur
(Seite 187) Freigabe der Bearbeitung
EDELAY : Freigabe der verzögerten Freigabe der verzögerten Startereignisse
Startereignisse (Seite 188)
DISCARD: Alle auftretenden Startereignisse Verwerfen aller auftretenden Startereignisse (Nicht-
werden verworfen (Seite 189) Starten), damit die aufgerufene Ablaufebene ohne
Unterbrechung arbeiten kann
EDISCARD: Freigabe aller neu auftretenden Freigabe aller neu auftretenden Startereignisse
Startereignisse (Seite 190)
LASTERR: Ermittlung des Fehlercodes in Ermittlung des Fehlercodes der Peripheriefehler und
DELAY, EDELAY, DISCARD, der Fehler in den Systembausteinen DELAY, EDELAY,
EDISCARD,P_REASON (Seite 191) DISCARD, EDISCARD, P_REASON
SYSTIME: Ermittlung der Systemzeit Ermittlung der Systemzeit
(Seite 192)
P_REASON: Ermittlung der Ursache des Ermittlung der Prozessalarm-Ursache
Prozessalarms (Seite 193)

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 185
Bausteine für Systemfunktionen
17.2 DELAY

17.2 DELAY

Hinweis
Der Baustein kann nur für ein M7-300/400-Laufzeitsystem eingesetzt werden!

Funktion
Der Baustein generiert einen Softwarealarm. Er startet die Ablaufebene (Task), deren Name
am TN-Eingang angegeben wird.
Wenn ein Name angegeben wird, dem keine Ablaufebene zugewiesen ist, so wird beim
Übersetzen und Konsistenzprüfen ein Fehler gemeldet.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang TN TASK Taskname 0

Hilfe für CFC - Elementarbausteine


186 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine für Systemfunktionen
17.3 DELAY: Verzögern der Startereignisse

17.3 DELAY: Verzögern der Startereignisse

Hinweis
Der Baustein kann nur für ein M7-300/400-Laufzeitsystem eingesetzt werden!

Funktion
Mit diesem Baustein kann die aufrufende Ablaufebene ohne Unterbrechung durch andere
Ablaufebenen arbeiten. Alle auftretenden Startereignisse werden verzögert bis entweder die
Bearbeitung freigegeben wird (mit Hilfe des Bausteins EDELAY) oder die laufende
Ablaufebene beendet wird.
Danach werden die Startereignisse ausgeführt, die in der Zwischenzeit eingetroffen sind.
Wenn während der Bearbeitung ein Fehler auftritt, so kann dieser mit Hilfe des Bausteins
LASTERR abgefragt werden.

Informationen zu den Bausteinen EDELAY und LASTERR finden Sie in folgenden


Abschnitten:
● EDELAY : Freigabe der verzögerten Startereignisse (Seite 188)
● LASTERR: Ermittlung des Fehlercodes in DELAY, EDELAY, DISCARD,
EDISCARD,P_REASON (Seite 191)

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 187
Bausteine für Systemfunktionen
17.4 EDELAY : Freigabe der verzögerten Startereignisse

17.4 EDELAY : Freigabe der verzögerten Startereignisse

Hinweis
Der Baustein kann nur für ein M7-300/400-Laufzeitsystem eingesetzt werden!

Funktion
Dieser Baustein gibt verzögerte Startereignisse wieder frei. Die Startereignisse müssen
vorher mit Hilfe des Bausteins DELAY verzögert worden sein.
Wenn während der Bearbeitung ein Fehler auftritt, so kann dieser mit Hilfe des Bausteins
LASTERR abgefragt werden.
Weitere Informationen zu den Bausteinen DELAY und LASTERR finden Sie in folgenden
Abschnitten:
● DELAY: Verzögern der Startereignisse (Seite 187)
● LASTERR: Ermittlung des Fehlercodes in DELAY, EDELAY, DISCARD,
EDISCARD,P_REASON (Seite 191)

Hilfe für CFC - Elementarbausteine


188 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine für Systemfunktionen
17.5 DISCARD: Alle auftretenden Startereignisse werden verworfen

17.5 DISCARD: Alle auftretenden Startereignisse werden verworfen

Hinweis
Der Baustein kann nur für ein M7-300/400-Laufzeitsystem eingesetzt werden!

Funktion
Mit diesem Baustein kann die aufrufende Ablaufebene ohne Unterbrechung durch andere
Ablaufebenen arbeiten. Alle auftretenden Startereignisse werden verworfen, die
Ablaufebenen werden nicht gestartet. Bereits registrierte (verzögerte) Ereignisse werden
fertig bearbeitet. Prozessalarme werden sofort quittiert.
Alle auftretenden Startereignisse werden verworfen bis entweder die Bearbeitung
freigegeben wird (mit Hilfe des Bausteins EDISCARD) oder die laufende Ablaufebene
beendet wird.
Wenn während der Bearbeitung ein Fehler auftritt, so kann dieser mit Hilfe des Bausteins
LASTERR abgefragt werden.
Weitere Informationen zu den Bausteinen EDISCARD und LASTERR finden Sie in
folgenden Abschnitten:
● EDISCARD: Freigabe aller neu auftretenden Startereignisse (Seite 190)
● LASTERR: Ermittlung des Fehlercodes in DELAY, EDELAY, DISCARD,
EDISCARD,P_REASON (Seite 191)

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 189
Bausteine für Systemfunktionen
17.6 EDISCARD: Freigabe aller neu auftretenden Startereignisse

17.6 EDISCARD: Freigabe aller neu auftretenden Startereignisse

Hinweis
Der Baustein kann nur für ein M7-300/400-Laufzeitsystem eingesetzt werden!

Funktion
Dieser Baustein gibt neu auftretende Startereignisse wieder frei. Zuvor muss mit Hilfe des
Bausteins DISCARD die Bearbeitung von Startereignissen gesperrt worden sein.
Wenn während der Bearbeitung ein Fehler auftritt, so kann dieser mit Hilfe des Bausteins
LASTERR abgefragt werden.
Weitere Informationen zu den Bausteinen DISCARD und LASTERR finden Sie in folgenden
Abschnitten:
● DISCARD: Alle auftretenden Startereignisse werden verworfen (Seite 189)
● LASTERR: Ermittlung des Fehlercodes in DELAY, EDELAY, DISCARD,
EDISCARD,P_REASON (Seite 191)

Hilfe für CFC - Elementarbausteine


190 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine für Systemfunktionen
17.7 LASTERR: Ermittlung des Fehlercodes in DELAY, EDELAY, DISCARD, EDISCARD,P_REASON

17.7 LASTERR: Ermittlung des Fehlercodes in DELAY, EDELAY,


DISCARD, EDISCARD,P_REASON

Hinweis
Der Baustein kann nur für ein M7-300/400-Laufzeitsystem eingesetzt werden!

Funktion
Dieser Baustein liefert den Fehlercode des zuletzt aufgetretenen Fehlers für folgende
Fehlerklassen:
● Peripheriefehler
● Fehler in den Systembausteinen:
– DELAY: Verzögern der Startereignisse (Seite 187),
– EDELAY : Freigabe der verzögerten Startereignisse (Seite 188),
– DISCARD: Alle auftretenden Startereignisse werden verworfen (Seite 189),
– EDISCARD: Freigabe aller neu auftretenden Startereignisse (Seite 190),
– P_REASON: Ermittlung der Ursache des Prozessalarms (Seite 193)
Die möglichen Werte sind eine Untermenge der Fehlercodes der M7-Systemsoftware. Sie
können in der Datei M7API.H oder in der Dokumentation der M7-Systemsoftware
nachgeschlagen werden.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Ausgang ERR DINT Error Code 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 191
Bausteine für Systemfunktionen
17.8 SYSTIME: Ermittlung der Systemzeit

17.8 SYSTIME: Ermittlung der Systemzeit

Hinweis
Der Baustein kann nur für ein M7-300/400-Laufzeitsystem eingesetzt werden!

Funktion
Mit diesem Baustein kann die Systemzeit ermittelt werden. Sie wird im Format TIME am
Ausgang des Bausteins geliefert.

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Ausgang TIME TIME System Time 0

Hilfe für CFC - Elementarbausteine


192 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine für Systemfunktionen
17.9 P_REASON: Ermittlung der Ursache des Prozessalarms

17.9 P_REASON: Ermittlung der Ursache des Prozessalarms

Funktion
Dieser Baustein ermittelt die Aufrufursache eines Prozessalarms.
Die gewünschte Task wird über ihren Namen am Eingang TN angegeben. Wenn es sich
dabei nicht um einen Prozessalarm handelt, so bleibt der Baustein wirkungslos.
Am Ausgang STATE wird die Zusatzinformation des Prozessalarms beim letzten Aufruf
ausgegeben. Der Inhalt dieser Zusatzinformation ist baugruppenspezifisch und wird
bezüglich der Byte-Reihenfolge im INTEL-Format geliefert.
Am Ausgang MASK wird zusätzlich die Alarmmaske ausgegeben, die im CFC für diese
Prozessalarm-Ablaufebene projektiert wurde.
Wenn während der Bearbeitung ein Fehler auftritt, so kann dieser mit Hilfe des Bausteins
LASTERR abgefragt werden.
Weitere Informationen zum Baustein LASTERR finden Sie im Abschnitt: LASTERR:
Ermittlung des Fehlercodes in DELAY, EDELAY, DISCARD, EDISCARD,P_REASON
(Seite 191)

Anschlüsse

Name Datentyp Erklärung Voreinstellung


Eingang TN TASK Taskname 0
Ausgänge STATE STATE Alarm State 0
MASK DWORD Alarm Mask 0

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 193
Bausteine für Systemfunktionen
17.10 FRC_CFC: Interner Baustein

17.10 FRC_CFC: Interner Baustein

Objektname (Art + Nummer)


FB 136
Dieser Baustein ist ein Systembaustein und wird ausschließlich intern verwendet. Eine Hilfe
steht daher nicht zur Verfügung.

Hilfe für CFC - Elementarbausteine


194 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine für AS-übergreifende Verbindungen 18
18.1 IK_STATE

IK_STATE: Status einer AS - übergreifenden Verbindung anzeigen

Objektname (Art + Nummer)


FC 157

Anwendung
Der Baustein wird in einem CFC-Plan verwendet, wenn AS-übergreifende Verbindungen
genutzt werden und der Fehlerzustand dieser Verbindungen im Anwenderprogramm
ausgewertet werden soll.
Für jede AS-übergreifende Verbindung muss auf Sender- und Empfängerseite je eine
Instanz des Bausteins in den CFC-Plan eingefügt werden.
Entfernen Sie die Instanzen, wenn Sie die AS-übergreifende Verbindung gelöscht haben.

Funktion
Der Baustein liefert am Ausgang den Fehlerzustand der AS-übergreifenden Verbindung,
deren Nummer am Eingang NETPRO_ID parametriert wurde.
Der Baustein liefert für jeden Fehler ein eigenes Bit. Zusätzlich ist ein Sammelfehler
verfügbar. Wenn die angegebene NETPRO_ID nicht vorhanden ist, wird ebenfalls ein Fehler
ausgegeben.

Fehlerbehandlung
Der Rückgabewert RET_VAL wird nicht verwendet.

Eingangsparameter

Parameter Datentyp Voreinstellung Beschreibung


NETPRO_ID INT 0 NETPRO_ID der Verbindung
MasterDB INT 0 DB-Nummer des Master-DBs. Wird vom CFC
automatisch ausgefüllt

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 195
Bausteine für AS-übergreifende Verbindungen
18.1 IK_STATE

Ausgangsparameter

Parameter Datentyp Voreinstellung Beschreibung


SendErr BOOL FALSE Fehler beim Senden
Anzeige im BSEND
RcvErr BOOL FALSE Fehler beim Empfangen
Anzeige im BRCV
SendOvl BOOL FALSE Überlast beim Sender
Dieser Fehler kann entstehen durch zu langsame
Abarbeitung der Sende-Zwischenpuffer
RcvOv BOOL FALSE Überlast beim Empfänger
Dieser Fehler kann entstehen durch zu langsame
Abarbeitung der Empfangs-Zwischenpuffer
RcvChg BOOL FALSE Inkonsistente Änderung beim Empfänger
1. Es wurde empfängerseitig eine Umprojektierung
an der AS - übergreifenden Verschaltung
vorgenommen, die auch den Sender betrifft. Dieser
war aber zu der Zeit nicht erreichbar.
2. Es wurde senderseitig eine Umprojektierung an
der AS - übergreifenden Verschaltung
vorgenommen, die auch den Empfänger betrifft.
Dieser war aber zu der Zeit nicht erreichbar.
3. Aufgrund unterschiedlicher Ladestände haben
Sender und Empfänger unterschiedliche AS -
übergreifende Datenstrukturen.
RcvTmout BOOL FALSE Zeitüberlauf beim Empfänger
Ursachen sind z.B.:
1. STOP der sendenden AS
2. Sender hat (noch) keinen BSEND geladen
SysErr BOOL FALSE Systemfehler
z.B. AS - übergreifende Datenbaustein nicht
vorhanden
GroupErr BOOL FALSE Sammelfehler der 8 obigen Fehler
ConnNA BOOL FASLE Parametrierte NETPRO_ID nicht vorhanden

Weitere Informationen zur AS-übergreifenden Verschaltung finden Sie in der Hilfe "CFC für
SIMATIC S7 > Erstellen von Ablaufstrukturen > Einrichten und Hantieren von
Verschaltungen > AS-übergreifende Verschaltungen einrichten".

Hilfe für CFC - Elementarbausteine


196 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine für AS-übergreifende Verbindungen
18.2 IK_MANAG

18.2 IK_MANAG

IK_MANAG

Objektname (Art+Nummer)
FC152

Anwendung
Der Baustein IK_MANAG ist Teil des Laufzeitsystems für die Unterstützung der AS-
übergreifenden Verschaltungen, das automatisch mit dem ersten Erzeugen einer AS-
übergreifenden Verschaltung in den Bausteinordner des S7-Programms kopiert wird.
Eine detaillierte Beschreibung dieses Bausteins ist nicht vorgesehen.
Weitere Informationen zur AS-übergreifenden Verschaltung finden Sie in der Hilfe "CFC für
SIMATIC S7 > Erstellen von Ablaufstrukturen > Einrichten und Hantieren von
Verschaltungen > AS-übergreifende Verschaltungen einrichten".

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 197
Bausteine für AS-übergreifende Verbindungen
18.3 IK_SEND

18.3 IK_SEND

IK_SEND

Objektname (Art+Nummer)
FC155

Anwendung
Der Baustein IK_SEND ist Teil des Laufzeitsystems für die Unterstützung der AS-
übergreifenden Verschaltungen, das automatisch mit dem ersten Erzeugen einer AS-
übergreifenden Verschaltung in den Bausteinordner des S7-Programms kopiert wird.
Eine detaillierte Beschreibung dieses Bausteins ist nicht vorgesehen.
Weitere Informationen zur AS-übergreifenden Verschaltung finden Sie in der Hilfe "CFC für
SIMATIC S7 > Erstellen von Ablaufstrukturen > Einrichten und Hantieren von
Verschaltungen > AS-übergreifende Verschaltungen einrichten".

Hilfe für CFC - Elementarbausteine


198 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine für AS-übergreifende Verbindungen
18.4 IK_RCV

18.4 IK_RCV

IK_RCV

Objektname (Art+Nummer)
FC156

Anwendung
Der Baustein IK_RCV ist Teil des Laufzeitsystems für die Unterstützung der AS-
übergreifenden Verschaltungen, das automatisch mit dem ersten Erzeugen einer AS-
übergreifenden Verschaltung in den Bausteinordner des S7-Programms kopiert wird.
Eine detaillierte Beschreibung dieses Bausteins ist nicht vorgesehen.
Weitere Informationen zur AS-übergreifenden Verschaltung finden Sie in der Hilfe "CFC für
SIMATIC S7 > Erstellen von Ablaufstrukturen > Einrichten und Hantieren von
Verschaltungen > AS-übergreifende Verschaltungen einrichten".

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 199
Bausteine für AS-übergreifende Verbindungen
18.5 IK_CP_OU

18.5 IK_CP_OU

IK_CP_OU

Objektname (Art+Nummer)
FC154

Anwendung
Der Baustein IK_CP_OU ist Teil des Laufzeitsystems für die Unterstützung der AS-
übergreifenden Verschaltungen, das automatisch mit dem ersten Erzeugen einer AS-
übergreifenden Verschaltung in den Bausteinordner des S7-Programms kopiert wird.
Eine detaillierte Beschreibung dieses Bausteins ist nicht vorgesehen.
Weitere Informationen zur AS-übergreifenden Verschaltung finden Sie in der Hilfe "CFC für
SIMATIC S7 > Erstellen von Ablaufstrukturen > Einrichten und Hantieren von
Verschaltungen > AS-übergreifende Verschaltungen einrichten".

Hilfe für CFC - Elementarbausteine


200 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteine für AS-übergreifende Verbindungen
18.6 IK_CP_IN

18.6 IK_CP_IN

IK_CP_IN

Objektname (Art+Nummer)
FC153

Anwendung
Der Baustein IK_CP_IN ist Teil des Laufzeitsystems für die Unterstützung der AS-
übergreifenden Verschaltungen, das automatisch mit dem ersten Erzeugen einer AS-
übergreifenden Verschaltung in den Bausteinordner des S7-Programms kopiert wird.
Eine detaillierte Beschreibung dieses Bausteins ist nicht vorgesehen.
Weitere Informationen zur AS-übergreifenden Verschaltung finden Sie in der Hilfe "CFC für
SIMATIC S7 > Erstellen von Ablaufstrukturen > Einrichten und Hantieren von
Verschaltungen > AS-übergreifende Verschaltungen einrichten".

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 201
Bausteine für AS-übergreifende Verbindungen
18.7 IK_ALARM

18.7 IK_ALARM

IK_ALARM

Objektname (Art+Nummer)
FB244

Anwendung
Der Baustein IK_ALARM ist Teil des Laufzeitsystems für die Unterstützung der AS-
übergreifenden Verschaltungen, das automatisch mit dem ersten Erzeugen einer AS-
übergreifenden Verschaltung in den Bausteinordner des S7-Programms kopiert wird.
Eine detaillierte Beschreibung dieses Bausteins ist nicht vorgesehen.
Weitere Informationen zur AS-übergreifenden Verschaltung finden Sie in der Hilfe "CFC für
SIMATIC S7 > Erstellen von Ablaufstrukturen > Einrichten und Hantieren von
Verschaltungen > AS-übergreifende Verschaltungen einrichten".

Hilfe für CFC - Elementarbausteine


202 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Bausteinfamilie "@SYSTEM" 19
19.1 PA_CPU: Überwachungsbaustein für Lizenzinformationen

Funktion
Der Baustein vergleicht zur Laufzeit die Anzahl der Prozessobjekte (PO), die im Automation
License Manager unter der Lizenz "AS RT PO" verbucht sind, mit der Anzahl der PO, die im
AS "S7-410" geladen sind.
Der Baustein wird beim Übersetzen automatisch in den CFC-Plan "@PA-CPU" eingefügt
und dieser CFC-Plan in den OB1 eingebaut. Beim Laden in das AS "S7-410" werden
Baustein und CFC-Plan in die CPU geladen.
Wenn die Anzahl der verbuchten Lizenzen für PO im Automation License Manager geringer
ist, als die Anzahl der PO, die im AS "S7-410" geladen sind, dann wird diese nicht
ausreichende Lizenzierung angezeigt durch:
● Einen Eintrag in den Diagnosepuffer der CPU
● Zyklisches Auslösen einer entsprechenden Meldung in SIMATIC WinCC.
Die Meldung wird immer sofort ausgelöst beim Ladevorgang, bei dem die nicht
ausreichende Lizenzierung festgestellt wird, und wenn sich die Differenz durch den
Ladevorgang ändert. Danach erfolgt die Meldung im Abstand von ca. 6 Stunden.
Wenn die Prozessobjekte wieder ausreichend lizenziert sind, z. B. nach einer
Reduzierung der benötigten PO im AS-Programm oder durch Nachkauf von Lizenzen,
dann erfolgt diese Meldung nicht mehr. Es wird keine Meldung "GEHEND" erzeugt.

Hinweis
Bei der AS "S7-410" wird die maximale Anzahl der ladbaren PO durch die Hardware
lizenziert. Dabei ist es nicht möglich, eine größere Anzahl an PO in das AS zu laden, als die
per Hardware lizenzierte Anzahl. Diese Grenze ist für den Vergleich im Baustein "PA-CPU"
jedoch nicht relevant.

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 203
Bausteinfamilie "@SYSTEM"
19.1 PA_CPU: Überwachungsbaustein für Lizenzinformationen

Hilfe für CFC - Elementarbausteine


204 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Anhang 20
20.1 Handwertverarbeitung

Es kann zwischen Hand- und Automatikbetrieb umgeschaltet werden. Bei Handbetrieb wird
die Stellgröße einem Handwert nachgeführt.
Der Integrierer (INT) wird intern auf LMN - LMN_P - DISV und der Differenzierer (DIF) auf 0
gesetzt und intern abgeglichen. Das Umschalten in den Automatikbetrieb ist damit stoßfrei.

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 205
Anhang
20.2 Impulsbreitenmodulation

20.2 Impulsbreitenmodulation

Impulsbreitenmodulation

Legende
1 Zyklus PULSEGEN
2 Zyklus CONT_C

Hilfe für CFC - Elementarbausteine


206 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Anhang
20.3 Istwertzweig

20.3 Istwertzweig

Der Istwert kann im Peripherie- oder Gleitpunktformat eingelesen werden. Die Funktion
CRP_IN wandelt den Peripheriewert PV_PER in ein Gleitpunktformat von -100 ... +100 %
nach folgender Vorschrift um:
Ausgang von CPR_IN = PV_PER * 100 / 27648
Die Funktion PV_NORM normiert den Ausgang von CRP_IN nach folgender Regel:
Ausgang von PV_NORM = (Ausgang von CRP_IN) * PV_FAC + PV_OFF
PV_FAC ist mit 1 und PV_OFF ist mit 0 vorbelegt.

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 207
Anhang
20.4 Kennlinie mit bipolarem Stellwertbereich

20.4 Kennlinie mit bipolarem Stellwertbereich

Kennlinie mit bipolarem Stellwertbereich


Stellwertbereich -100% bis 100%

Legende
1 dauernd "Aus"
2 Dauer des positiven Imulses
3 dauernd "Ein"

Hilfe für CFC - Elementarbausteine


208 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Anhang
20.5 Kennlinie mit unipolarem Stellwertbereich

20.5 Kennlinie mit unipolarem Stellwertbereich

Kennlinie mit unipolarem Stellwertbereich


Stellwertbereich 0% bis 100%

Legende
1 Dauer des positiven Imulses

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 209
Anhang
20.6 PI-Schrittalgorithmus

20.6 PI-Schrittalgorithmus

Der Funktionsbaustein arbeitet ohne Stellungsrückmeldung. Der I-Anteil des PI-Algorithmus


und die gedachte Stellungsrückmeldung werden in einem Integrator (INT) berechnet und als
Rückführungswert mit dem verbliebenen P-Anteil verglichen. Die Differenz geht auf ein
Dreipunktglied (THREE_ST) und einen Impulsformer (PULSEOUT), der die Impulse für das
Stellventil bildet. Über eine Adaption der Ansprechschwelle des Dreipunktgliedes wird die
Schalthäufigkeit des Reglers reduziert.

Hilfe für CFC - Elementarbausteine


210 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Anhang
20.7 PID-Algorithmus

20.7 PID-Algorithmus

Der PID-Algorithmus arbeit im Stellungsalgorithmus. Der Proportional-, Integral- (INT) und


Differenzialanteil (DIF) sind parallel geschaltet und einzeln zu- und abschaltbar. Damit
lassen sich P-, PI-, PD- und PID-Regler parametrieren; aber auch reine I- und D-Regler sind
möglich.

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 211
Anhang
20.8 Regeldifferenzbildung

20.8 Regeldifferenzbildung

Die Differenz von Soll- und Istwert ergibt die Regeldifferenz. Zur Unterdrückung einer kleinen
Dauerschwingung aufgrund der Stellgrößen-Quantisierung, z. B. bei einer
Pulsbreitenmodulation mit PULSEGEN, oder begrenzte Auflösung des Stellwerts durch das
Stellventil, wird die Regeldifferenz über eine Totzone (DEADBAND) geleitet. Bei DEADB_W
= 0 ist die Totzone ausgeschaltet.

Hilfe für CFC - Elementarbausteine


212 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Anhang
20.9 Sollwertzweig

20.9 Sollwertzweig

Der Sollwertzweig wird am Eingang SP_INT im Gleitpunktformat eingegeben.

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 213
Anhang
20.10 Stellwertverarbeitung

20.10 Stellwertverarbeitung

Der Stellwert wird mit der Funktion LMNLIMIT auf vorgebbare Werte begrenzt. Das
Überschreiten der Grenzen wird in Meldebits angezeigt.
Die Funktion LMN_NORM normiert den Ausgang von LMNLIMIT nach folgender Regel:
LMN = (Ausgang von LMNLIMIT) * LMN_FAC + LMN_OFF
LMN_FAC ist mit 1 und LMN_OFF mit 0 vorbelegt.
Der Stellwert steht auch im Peripherieformat zur Verfügung. Die Funktion CRP_OUT wandelt
den Gleitpunktwert LMN in einen Peripheriewert nach folgender Regel um:
LMN_PER = LMN * 27648 / 100

Hilfe für CFC - Elementarbausteine


214 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Anhang
20.11 Störgrößenaufschaltung

20.11 Störgrößenaufschaltung

Am Eingang DISV kann eine Störgröße additiv aufgeschaltet werden.

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 215
Anhang
20.12 Symetrische Kennlinie für Dreipunktregler

20.12 Symetrische Kennlinie für Dreipunktregler

Symmetrische Kennlinie für Dreipunktregler


Verhältnisfaktor = 1

Legende
1 Dauer des positiven Imulses
2 dauernd "Ein"
3 dauernd "Aus"
4 Dauer des negativen Impulses

Hilfe für CFC - Elementarbausteine


216 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Anhang
20.13 Unsymetrische Kennlinie des Dreipunktreglers

20.13 Unsymetrische Kennlinie des Dreipunktreglers

Unsymmetrische Kennlinie des Dreipunktreglers


Verhältnisfaktor = 0.5

Legende
1 Dauer des positiven Imulses
2 Dauer des negativen Impulses

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 217
Anhang
20.13 Unsymetrische Kennlinie des Dreipunktreglers

Hilfe für CFC - Elementarbausteine


218 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Index

BIT_LGC, 15
BIT-Logikbausteine, 15
A BO_BY, 63
BO_DW, 65
ABS_DI, 116
BO_W, 64
ABS_I, 104
BY_BO, 66
ABS_R, 77
BY_DW, 45
Absolutwert, DINT, 116
BY_W, 46
Absolutwert, INT, 104
Absolutwert, REAL, 77
ACOS, 87
C
ADD_DI, 109
ADD_I, 97 CADD_DI, 120
ADD_R, 71 CADD_I, 108
Addierer, DINT, 109 CADD_R, 92
Addierer, INT, 97 CFC-Bausteine, 13
Addierer, REAL, 71 CMP_DI, 39
Addierer, steuerbar, DINT, 120 CMP_I, 38
Addierer, steuerbar, INT, 108 CMP_R, 40
Addierer, steuerbar, REAL, 92 CMP_T, 41
AFP, 155 COMPARE, 37
Aktuelle Uhrzeit, 159 CONT_C, 162
auslesen, 159 Blockschaltbild,
AND, 16 CONT_S, 169
Anlauf bei S7-300 CPUs, 11 Blockschaltbild,
Antivalenz-Verknüpfung, 18 CONTROL, 161
Antivalenz-Verknüpfung, generisch, DWORD, 32 COS, 84
Antivalenz-Verknüpfung, WORD, 26 Cosinus, REAL, 84
Arcuscosinus, REAL, 87 COUNTER, 143
Arcussinus, REAL, 86 CTD, 146
Arcustangens, REAL, 88 CTU, 144
Arithmetikbausteine, 95 CTUD, 147
ASIN, 86
ATAN, 88
Ausführungszeit, 158 D
messen, 158
DELAY, 187
Auslesen, 159
DI_DW, 47
aktuelle Uhrzeit, 159
DI_I, 48
Ausschaltverzögerung, 150
DI_R, 49
DISCARD, 189
DIV_DI, 112
B
DIV_I, 100
Bausteinparameter EN ENO SAMPLE_T, 9 DIV_R, 74
Begrenzer, unsymmetrisch, DINT, 118 Dividierer, DINT, 112
Begrenzer, unsymmetrisch, INT, 106 Dividierer, INT, 100
Begrenzer, unsymmetrisch, REAL, 90 Dividierer, REAL, 74
Beschreibung von Doppelwort-Logik, 23
FRC_CFC, 194 Drehen, links, DWORD, 131

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 219
Index

Drehen, links, WORD, 130 Intervall, INT, 107


Drehen, rechts, DWORD, 133 Intervall, REAL, 91
Drehen, rechts, WORD, 132 Intervall, symmetrisch, DINT, 119
DW_BO, 68 Invertierer, 21
DW_DI, 50 Invertierer, DWORD, 35
DW_R, 51 Invertierer, WORD, 29
DW_W, 52

J
E JK_FF, 122
EDELAY, 188 JK-FlipFlop, 122
EDISCARD, 190
Eingangszeit, 160
Eingangszeit K
mit der aktuellen Zeit vergleichen,
Konvertierung, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
Einschaltverzögerung, 150
55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68
EPS_DI, 119
16 BOOL -> WORD, 64
EPS_I, 107
32 BOOL -> DWORD, 65
EPS_R, 91
8 BOOL -> BYTE, 63
Erkennung, 153, 154
BYTE -> 8 BOOL, 66
der fallenden Flanke, 154
BYTE -> DWORD, 45
der steigenden Flanke, 153
BYTE -> WORD, 46
EVENT, 186
DINT -> DWORD, 47
EXP, 79
DINT -> INT, 48
Expontialfunktion, REAL, 79
DINT -> REAL, 49
DWORD -> 32 BOOL, 68
DWORD -> DINT, 50
F
DWORD -> REAL, 51
F_TRIG, 154 DWORD -> WORD, 52
Fallende Flanke, 154 INT -> DINT, 53
Erkennung, 154 INT -> DWORD, 54
Flip-Flop, 121 INT -> REAL, 55
Flip-Flop, rücksetzen dominant, 123 INT -> WORD, 56
FlipFlop, setzen dominant, 124 REAL -> DINT, 57
FRC_CFC, 194 REAL -> DWORD, 58
Beschreibung, 194 REAL -> INT, 59
WORD -> 16 BOOL, 67
WORD -> BYTE, 60
G WORD -> DWORD, 61
WORD -> INT, 62
Gleitpunkt-Arithmetikbausteine, 69
Konvertierungsbausteine, 43

I L
I_DI, 53
LASTERR, 191
I_DW, 54
LIM_DI, 118
I_R, 55
LIM_I, 106
I_W, 56
LIM_R, 90
IMPULS, 149
LN, 81
Impulsbildner, 150
LOG10, 82
Impulsformen für proportionale Stellglieder, 175
Logarithmus zur Basis 10, REAL, 82

Hilfe für CFC - Elementarbausteine


220 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA
Index

M NEG_R, 89
Negierer, DINT, 117
M7-Task, 186
Negierer, INT, 105
starten, 186
Negierer, REAL, 89
MATH_FP, 69
NOR, 20
MATH_INT, 95
NOR-Verknüpfung, 20
Maximum, DINT, 114
NOR-Verknüpfung, generisch, DWORD, 34
Maximum, INT, 102
NOR-Verknüpfung, WORD, 28
Maximum, REAL, 75
NOT, 21
MAXn_DI, 114
MAXn_I, 102
MAXn_R, 75
O
Merkerwort 0, 11
Messen, 158 ODER-Verknüpfung, 17
Ausführungszeit, 158 ODER-Verknüpfung, generisch, DWORD, 31
Minimum, DINT, 115 ODER-Verknüpfung, WORD, 25
Minimum, INT, 103 OR, 17
Minimum, REAL, 76
MINn_DI, 115
MINn_I, 103 P
MINn_R, 76
P_REASON, 193
Mittelwert, gleitend, REAL, 94
PA-CPU, 203
MOD_DI, 113
Potenz zur Basis 10, REAL, 80
MOD_I, 101
Potenz, allgemein, REAL, 93
Modulo, DINT, 113
POW10, 80
Modulo, INT, 101
POWXY, 93
MUL_DI, 111
Pulsbreitenmodulation, 175
MUL_I, 99
Pulsegen
MUL_R, 73
Blockschaltbild,
Multiplexer, BOOL, 139
PULSEGEN, 175
Multiplexer, DINT, 137
Dreipunktregelung,
Multiplexer, INT, 136
Dreipunktregelung unsymmetrisch,
Multiplexer, REAL, 138
Handbetrieb,
Multiplizierer, DINT, 111
Zweipunktregelung,
Multiplizierer, INT, 99
Multiplizierer, REAL, 73
MULTIPLX, 135
Q
MUXn_BO, 139
MUXn_DI, 137 Quadratwurzel, REAL, 78
MUXn_I, 136
MUXn_R, 138
MW0, 11 R
R_DI, 57
R_DW, 58
N
R_I, 59
NAND, 19 R_TRIG, 153
NAND-Verknüpfung, 19 ROL_DW, 131
NAND-Verknüpfung, generisch, DWORD, 33 ROL_W, 130
NAND-Verknüpfung, WORD, 27 ROR_DW, 133
Natürlicher Logarithmus, REAL, 81 ROR_W, 132
NEG_DI, 117 RS_FF, 123
NEG_I, 105 Rückwärtszähler, 146

Hilfe für CFC - Elementarbausteine


Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA 221
Index

S V
SAMP_AVE, 94 Vergleiche, 160
Schieben, links, DWORD, 127 Eingangszeit mit der aktuellen Zeit, 160
Schieben, links, WORD, 126 Vergleicher, DINT, 39
Schieben, rechts, DWORD, 129 Vergleicher, INT, 38
Schieben, rechts, WORD, 128 Vergleicher, REAL, 40
Schrittregeln, 169 Vergleicher, TIME, 41
SEL_BO, 140 Verlängerter Impuls, 150
SEL_R, 141 Vor- und Rückwärtszähler, 147
SHIFT, 125 Vorwärtszähler, 144
SHL_DW, 127
SHL_W, 126
SHR_DW, 129 W
SHR_W, 128
W_BO, 67
SIN, 83
W_BY, 60
Sinus, REAL, 83
W_DW, 61
Speichernde Einschaltverzögerung, 150
W_I, 62
SQRT, 78
WAND_DW, 30
SR_FF, 124
WAND_W, 24
Starten, 186
WNAND_DW, 33
M7-Task, 186
WNAND_W, 27
Steigende Flanke, 153
WNOR_DW, 34
Erkennung, 153
WNOR_W, 28
SUB_DI, 110
WNOT_DW, 35
SUB_I, 98
WNOT_W, 29
SUB_R, 72
WOR_DW, 31
Subtrahierer, DINT, 110
WOR_W, 25
Subtrahierer, INT, 98
Wort-Logik, 23
Subtrahierer, REAL, 72
WRD_LGC, 23
SYSTEM, 185
WXOR_DW, 32
SYSTIME, 192
WXOR_W, 26

T X
Taktgeber, 155
XOR, 18
TAN, 85
Tangens, REAL, 85
TIME, 158
TIME, Gruppe, 157
TIME_BEG, 159
TIME_END, 160
TIMER_P, 150

U
UND-Verknüpfung, 16
UND-Verknüpfung, generisch, DWORD, 30
UND-Verknüpfung, WORD, 24

Hilfe für CFC - Elementarbausteine


222 Programmier- und Bedienhandbuch, 04/2014, A5E34748365-AA

Das könnte Ihnen auch gefallen