100% found this document useful (1 vote)
833 views54 pages

Wagoappcontrolsuite: Release 1.0.1.4

Uploaded by

MarcioWatanabe
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
833 views54 pages

Wagoappcontrolsuite: Release 1.0.1.4

Uploaded by

MarcioWatanabe
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 54

WagoAppControlSuite

Release 1.0.1.4

Oct 23, 2020


Contents

1 Description 1

2 10 Documentation 3
2.1 doc10_SystemProperties (FB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

3 20 Program Organization Units 5


3.1 Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.1.1 FbAutoTuneControlContinous_01 (FB) . . . . . . . . . . . . . . . . . . . . . 5
3.1.2 FbAutoTuneControlPWM_01 (FB) . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.1.3 FbTemperatureControlContinous_01 (FB) . . . . . . . . . . . . . . . . . . . 10
3.1.4 FbTemperatureControlPWM_01 (FB) . . . . . . . . . . . . . . . . . . . . . . . . 12
3.1.5 Fb_PID (FB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.2 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.2.1 FbAverageMovingFilter (FB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.2.2 FbControlledSystemIdentification_01 (FB) . . . . . . . . . . . . . . . . . 16
FbControlledSystemIdentification_01.Identifikation_ITn (ACT) . 19
FbControlledSystemIdentification_01.Identifikation_PTn (ACT) . 19
3.2.3 FbDelay (FB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.2.4 FbHysteresis_01 (FB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.2.5 FbRamp_01 (FB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.2.6 FbSaturation (FB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.2.7 Fb_D (FB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2.8 Fb_I (FB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.2.9 Fb_P (FB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.2.10 Fb_PT1 (FB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.2.11 Fb_PWM_01 (FB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.2.12 FuControllerParameterCalculation_PTn (FUN) . . . . . . . . . . . . . . . 25
3.2.13 FuDeadZone (FUN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

4 29 Types 28
4.1 eControlledSystem (ENUM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.2 eControllerDisabledMode (ENUM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.3 eControllerType (ENUM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.4 eMethode (ENUM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.5 typConfiguration_01 (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.6 typConfiguration_02 (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.7 typControllerValues (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.8 typPID_Configuration (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.9 typTempConfiguration_01 (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.10 typTempConfiguration_02 (STRUCT) . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

i
5 80 Status 36
5.1 Status (GVL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5.2 eStatus (ENUM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

6 GlobalTextList (Text List) 39

7 ParameterList (PARAMS) 40

8 VersionHistory (GVL) 41

9 Library Reference 42
9.1 3SLicense . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
9.1.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
9.1.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
9.2 Breakpoint Logging Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
9.2.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
9.2.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
9.3 CAA Types Extern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
9.3.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
9.3.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
9.4 CmpIecTask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
9.4.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
9.4.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
9.5 IoStandard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
9.5.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
9.5.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
9.6 Standard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
9.6.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
9.6.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
9.7 VisuElem3DPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
9.7.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
9.7.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
9.7.3 Library Parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
9.8 VisuElemCamDisplayer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
9.8.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
9.8.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
9.8.3 Library Parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
9.9 VisuElemMeter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
9.9.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
9.9.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
9.10 VisuElemTextEditor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
9.10.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
9.10.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
9.11 VisuElemTrace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
9.11.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
9.11.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
9.12 VisuElemXYChart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
9.12.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
9.12.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
9.13 VisuElems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
9.13.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
9.13.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
9.14 VisuElemsAlarm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
9.14.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
9.14.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
9.15 VisuElemsDateTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
9.15.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
9.15.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
9.16 VisuElemsSpecialControls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

ii
9.16.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
9.16.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
9.17 VisuElemsWinControls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
9.17.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
9.17.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
9.18 VisuInputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
9.18.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
9.18.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
9.19 VisuNativeControl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
9.19.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
9.19.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
9.20 WagoAppProcessorLoad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
9.20.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
9.20.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
9.21 WagoSysErrorBase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
9.21.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
9.21.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
9.21.3 Library Parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
9.22 WagoSysKbusTerminalControl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
9.22.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
9.22.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
9.23 WagoSysStandard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
9.23.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
9.23.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
9.24 WagoSysVersion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
9.24.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
9.24.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
9.25 WagoTypesErrorBase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
9.25.1 Library Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
9.25.2 Library Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

iii
CHAPTER 1

Description

This document is automatically generated. Because of this, the chapter 30 Visualization is not shown in this
document. If you are interested in getting to know more about visualization, we refer to the library manager of
e!Cockpit.
Subject to Changes
WAGO Kontakttechnik GmbH & Co. KG reserves the right to provide for any alterations or modifications. WAGO
Kontakttechnik GmbH & Co. KG owns all rights arising from the granting of patents or from the legal protection
of utility patents. Third-party products are always mentioned without any reference to patent rights. Thus, the
existence of such rights cannot be excluded.
Personnel Qualification
All tasks that are carried out with libraries made for the e!COCKPIT software must only be performed by qualified
electrical specialists instructed in PLC programming according to IEC 61131-3.
All tasks that have an effect on the properties or the behavior of automation hardware or software products must
only be performed by qualified employees with a thorough knowledge of handling the products concerned.
Intended Use of e!COCKPIT Libraries
Libraries created for the e!COCKPIT software are used to simplify the development of application projects in the
IEC 61131-3 programming languages.
For automation tasks, WAGO offers programmable logic controllers in a wide variety of performance classes.
In combination with a wide range of I/O modules, the controllers can process standard types of field signals.
Controllers can be implemented centrally or in decentralized configurations. The controllers offer interfaces for
the most commonly used fieldbuses for use in decentralized configurations. Fieldbus independent I/O modules
are then linked via fieldbus couplers. WAGO controllers offer a runtime environment for user programs called
e!RUNTIME. Software projects for implementation in e!RUNTIME environments can be created in e!COCKPIT.
The programming environment in e!COCKPIT is based on the established CODESYS 3 industrial standard. Users
with a previous knowledge of CODESYS 3 will thus find this environment largely familiar. The following pro-
gramming languages of the IEC 61131-3 standard are available:
• Structured Text (ST)
• Ladder Diagram (LD)
• Function Block Diagram (FBD)
• Instruction List (IL)
• Sequential Function Chart (SFC)

1
WagoAppControlSuite, Release 1.0.1.4

• Continuous Function Chart (CFC)


The individual programming languages can also be combined as required during the development of the software.
A portfolio of prepared libraries can be accessed for many frequently used functions in order to make software
development more efficient. This document provides an overview of the WagoAppControlSuite that WAGO offers
for e!COCKPIT.
Function blocks to build closed loop process control such as PID controller1
Further library information are summerized here:
Company WAGO
Title WagoAppControlSuite
Version 1.0.1.4
Categories WAGO FunctionalView|Standard Algorithms; WAGO LayerView|App; Application
Author WAGO / u010663
Placeholder WagoAppControlSuite

Based on WagoAppControlSuite.library, last modified 23.10.2020, 12:43:40. LibDoc 3.5.15.30

2
CHAPTER 2

10 Documentation

2.1 doc10_SystemProperties (FB)


Using the modules of this library requires basic knowledge of control engineering and can only be used by appro-
priately trained employees.
This library provides basic function blocks for control engineering applications. The General folder contains
general modules.
There is also a universal PID controller and two specialized controllers for temperature control. These modules
are in the Controller folder. If the basic options of these modules are inadequate in specific applications,
additional properties can be provided by the addition of basic modules. If the setpoint is offset by noise, it can be
useful to add the FuDeadZone function before the setpoint.
Temperature controls are generally slow. Therefore, a sampling time of 1 or 2 seconds is usually sufficient for
such processes. If the sampling time is very short and the MAX_IDENTIFICATION_ARRAY parameter is too
small, an error occurs because the step response cannot be recorded completely in this case.
Temperature controls often require a large rate time for good control. However, this also increases the sensitivity
to noisy input signals at the same time. In this case, you have to think about using a filter.
In case of temperature control with a digital output, the FbTemperatureControlPWM_01 module is to be
used. It should be noted that this module is used in a task that has a significantly higher execution time than the
sampling time for the actual control specified at the module.
A value ranging from 10 ms to 100 ms is suitable in most cases.
The FbControlledSystemIdentification_01 function block permits the identification of a controlled
system according to the inflectional tangent method. However, it requires a controlled system that has non-
integrating behavior as well as no oscillating behavior, e.g., heating a furnace.
This version of the library currently only supports identification of non-oscillating, non-integrating controlled
systems.

3
WagoAppControlSuite, Release 1.0.1.4

It is recommended to use the trace functionality of the system to roughly verify the determined values.
The Fb_PID function block operates according to the sum formula shown in the following figure:

Note: If the call interval of the control tasks is changed, the project must be recompiled and loaded again. An
online change is not supported for this change.

Note: The sample rate must be assigend by the user.

2.1. doc10_SystemProperties (FB) 4


CHAPTER 3

20 Program Organization Units

3.1 Controller
3.1.1 FbAutoTuneControlContinous_01 (FB)
Interface variables

Scope Name Type Initial Comment


Output oStatus WagoSysErrorBase.FbResult Status object. (Listed in
xEnable BOOL enable controller
rActualValue REAL actual process value
rSetpointValue REAL setpoint value
tSampleRate TIME sample rate
xUseExternalControlParameter BOOL use external control para
rKp REAL 1.0 PID controller ->P-part
rTn REAL 1.0 PID controller -> I-part
Input rTv REAL 1.0 PID controller -> D-part
rOutputMax REAL 1000 maximum limit output r
rOutputMin REAL -1000 minimum limit output r
xManualOperation BOOL manual mode
rManualValue REAL output in manual mode
typConfiguration typConfiguration_01 configuration values
xReleasedByOperator BOOL release identification wit
rStationaryEndvalue REAL estimated stationary end
rY REAL manipulated value in %
rKs REAL calculated process gain
rTu REAL calculated process dead
rTg REAL calculated process build-
xError BOOL error
xLimitReached BOOL manipulated value has li
Output xLimitMaxReached BOOL manipulated value has m
xLimitMinReached BOOL manipulated value has m
iStatus INT internal phase
sStatus STRING status information
actualKp REAL actual gain of controller

5
WagoAppControlSuite, Release 1.0.1.4

Table 3.1 – cont


Scope Name Type Initial Comment
actualTn REAL actual I-part of controlle
actualTv REAL actual D-part of controll
xEnableAutoTune BOOL activate autotune process
Inout
xReset BOOL reset an error

Function
A controller with autotune functionality designed for general control with an analog manipulated output
Graphical Illustration

Function Description
This module represents a process controller with six different phases. Enabling the autotune functionality the first
time is done by activating input xEnable and xEnableAutoTune at the same time.
Phase 1) Settling phase ->internal state 5
In this phase, the controlled system is supplied with a set value the size of typConfiguration.
iP5StartLevel. Depending on the configuration value xUseLevelAsAbsoluteValue iP5StartLevel is
used as absolute or as %-value from the setpoint.
The system then waits until the system is in a stable state.
This phase can also be used to bring the system close to the actual operating point. This is particularly important
when the controlled system is non-linear, so that subsequent identification can determine the real behavior at the
operating point as well as possible.
Phase 2) Identification phase ->internal state 10
In this phase, the controlled system is supplied with a set value the size of typConfiguration.
iP10IdentLevel. Depending on the configuration value xUseLevelAsAbsoluteValue iP10IdentLevel
is used as absolute or as %-value from the setpoint. The waveform of the controlled system response is recorded.
The module returns an error if the step response cannot be recorded completely. Such is the case if the in-
ternal memory is too small. In this case, the error message is ArrayTooSmall. The rY output is reset to
zero by default. The problem can be resolved by increasing the tSampleRate sampling rate or increasing the
MAX_IDENTIFICATION_ARRAY parameter.
At the end of the identification phase, the controlled system parameters are determined using the inflectional
tangent method.
The output point for the control parameters represents the determined data set (rKs, rTu and rTg).

3.1. Controller 6
WagoAppControlSuite, Release 1.0.1.4

Evaluating both typConfiguration.iP10StationaryEndpointControlTime and


typConfiguration.rP10StationaryEndpointPercentReferenceValue inputs determines
when the stationary end value is reached during the identification phase. If the process value does not change
more than the typConfiguration.rP10StationaryEndpointPercentReferenceValue percent
within the specified time, it is assumed that the stationary end value has been reached.
This module also allows you to interrupt identification early or to start calculating the controller parameters im-
mediately. This can be useful if the stationary end value is reached very slowly. In this case, the operator
can estimate the end value from the rStationaryEndvalue input directly and trigger calculation by the
xReleasedByOperator input.
Phase 3) Controlling the intermediate setpoint ->internal state 20
Following the identification phase, the system reaches a specific process value. The process difference from the
setpoint actually specified is determined. In this phase, the control parameters are set to an intermediate setpoint
that is 50 % of the process difference. Therefore, you have the option of roughly estimating the quality of the
control parameters.
Phase 4) Controlling the setpoint ->internal state 30
In this phase, the specified setpoint is controlled with the calculated control parameters. The quality of the control
must be assessed by the operator and improved by manual optimization, if necessary. It is recommended to use
the trace functionality to get a visual impression of the process profile.
The system switches to phase 5 once the setpoint is reached.
Phase 5) Maintain setpoint (regulating disturbance variables) ->internal state 40
The controller operates with the controller set determined by the typConfiguration.
eP40ControlMethode configuration value. The default value is CHR_aperiodisch_dis. If a new
setpoint is identified, the system switches to phase 6.
Phase 6) Regulating the setpoint step change ->internal state 50
The controller operates with the controller set determined by the typConfiguration.
eP50ControlMethode configuration value. The default value is CHR_aperiodisch_set. Once
the new setpoint is reached with the corresponding accuracy, the system switches to phase 5.

Note: Since the controlled system gain is unknown during initial identification, the process value is monitored
using the typConfiguration.rP10MaxProcessValueWhileIdentification configuration value.

When the process value threshold is reached, the output is reset to zero and the identification process terminated.
However, the process value can still rise further due to the properties of the controlled system. With that said, the
process value threshold should be selected as low as possible to preclude any damage due to impermissible high
process values. If an error interrupts identification, the function block must be disabled once. You can then restart
with a reduced value for typConfiguration.iP10IdentLevel.
This module can also be used as a traditional PID controller if the xUseExternalControlParameter is set
to TRUE. In this case, the controller operates with the rKp, rTn and rTv input values.

Note: A second identification phase is only performed if the difference between the current process value and the
new setpoint rSetPointValue is at least typConfiguration.rMinProcessDifference .

3.1.2 FbAutoTuneControlPWM_01 (FB)


Interface variables

Scope Name Type Initial Comment


Output oStatus WagoSysErrorBase.FbResult Status object. (Listed in

3.1. Controller 7
WagoAppControlSuite, Release 1.0.1.4

Table 3.2 – cont


Scope Name Type Initial Comment
xEnable BOOL enable controller
rActualValue REAL actual process value
rSetpointValue REAL setpoint value
tSampleRate TIME sample rate
xUseExternalControlParameter BOOL use external control para
rKp REAL 1.0 PID controller ->P-part
rTn REAL 1.0 PID controller -> I-part
Input rTv REAL 1.0 PID controller -> D-part
rOutputMax REAL 100 [0..100 %] maximum lim
rOutputMin REAL 0 [0..100 %] minimum lim
xManualOperation BOOL manual mode
rManualValue REAL [0..100 %] output in man
typConfiguration typConfiguration_02 configuration values
xReleasedByOperator BOOL release identification wit
rStationaryEndvalue REAL estimated stationary end
xPWM BOOL manipulated value
rY REAL manipulated value in %
rKs REAL calculated process gain
rTu REAL calculated process dead
rTg REAL calculated process build-
xError BOOL error
xLimitReached BOOL manipulated value has li
Output
xLimitMaxReached BOOL manipulated value has m
xLimitMinReached BOOL manipulated value has m
iStatus INT internal phase
sStatus STRING status information
actualKp REAL actual gain of controller
actualTn REAL actual I-part of controlle
actualTv REAL actual D-part of controll
xEnableAutoTune BOOL activate autotune process
Inout
xReset BOOL reset an error

Function
A controller with autotune functionality designed for process control with a digital manipulated output
Graphical Illustration

3.1. Controller 8
WagoAppControlSuite, Release 1.0.1.4

Function Description
This module represents a process controller with six different phases. Enabling the autotune functionality the first
time is done by activating input xEnable and xEnableAutoTune at the same time.
Phase 1) Settling phase ->internal state 5
In this phase, the controlled system is supplied with a set value the size of typConfiguration.
iP5StartLevel. The system then waits until the system is in a stable state. This phase can also be used
to bring the system close to the actual operating point. This is particularly important when the controlled system
is non-linear, so that subsequent identification can determine the real behavior at the operating point as well as
possible.
Phase 2) Identification phase ->internal state 10
In this phase, the controlled system is supplied with a set value the size of typConfiguration.
iP10IdentLevel. The waveform of the controlled system response is recorded. The module returns an error
if the step response cannot be recorded completely. Such is the case if the internal memory is too small. In this
case, the error message is ArrayTooSmall. The xPWM output is reset to zero. The problem can be resolved by
increasing the tSampleRate sampling rate or increasing the MAX_IDENTIFICATION_ARRAY parameter.
At the end of the identification phase, the controlled system parameters are determined using the inflectional
tangent method.
The output point for the control parameters represents the determined data set (rKs, rTu and rTg).
Evaluating both typConfiguration.iP10StationaryEndpointControlTime and
typConfiguration.rP10StationaryEndpointPercentReferenceValue inputs determines
when the stationary end value is reached during the identification phase. If the process value does not change
more than the typConfiguration.rP10StationaryEndpointPercentReferenceValue percent
within the specified time, it is assumed that the stationary end value has been reached.
This module also allows you to interrupt identification early or to start calculating the controller parameters im-
mediately. This can be useful if the stationary end value is reached very slowly. In this case, the operator
can estimate the end value from the rStationaryEndvalue input directly and trigger calculation by the
xReleasedByOperator input.
Phase 3) Controlling the intermediate setpoint ->internal state 20
Following the identification phase, the system reaches a specific process value. The process difference from the
setpoint actually specified is determined. In this phase, the control parameters are set to an intermediate setpoint
that is 50 % of the process difference. Therefore, you have the option of roughly estimating the quality of the
control parameters.
Phase 4) Controlling the setpoint ->internal state 30
In this phase, the specified setpoint is controlled with the calculated control parameters. The quality of the control
must be assessed by the operator and improved by manual optimization, if necessary. It is recommended to use
the trace functionality to get a visual impression of the process profile.
The system switches to phase 5 once the setpoint is reached.
Phase 5) Maintain setpoint (regulating disturbance variables) ->internal state 40
The controller operates with the controller set determined by the typConfiguration.
eP40ControlMethode configuration value. The default value is CHR_aperiodisch_dis. If a new
setpoint is identified, the system switches to phase 6.
Phase 6) Regulating the setpoint step change ->internal state 50
The controller operates with the controller set determined by the typConfiguration.
eP50ControlMethode configuration value. The default value is CHR_aperiodisch_set. Once
the new setpoint is reached with the corresponding accuracy, the system switches to phase 5.

Note: Since the controlled system gain is unknown during initial identification, the process value is monitored
using the typConfiguration.rP10MaxProcessValueWhileIdentification configuration value.

3.1. Controller 9
WagoAppControlSuite, Release 1.0.1.4

When the process value threshold is reached, the output is reset to zero and the identification process terminated.
However, the process value can still rise further due to the properties of the controlled system. With that said, the
process value threshold should be selected as low as possible to preclude any damage due to impermissible high
process values. If an error interrupts identification, the function block must be disabled once. You can then restart
with a reduced value for typConfiguration.iP10IdentLevel.
This module can also be used as a traditional PID controller if the xUseExternalControlParameter is set
to TRUE. In this case, the controller operates with the rKp, rTn and rTv input values.

Note: A second identification phase is only performed if the difference between the current process value and the
new setpoint rSetPointValue it at least typConfiguration.rMinProcessDifference .

3.1.3 FbTemperatureControlContinous_01 (FB)


Interface variables

Scope Name Type Initial Comment


Output oStatus WagoSysErrorBase.FbResult Status object. (Listed in
xEnable BOOL enable controller
rActualValue REAL actual process value
rSetpointValue REAL setpoint value
tSampleRate TIME sample rate
xUseExternalControlParameter BOOL use external control para
rKp REAL 1.0 PID controller ->P-part
rTn REAL 1.0 PID controller -> I-part
rTv REAL 1.0 PID controller -> D-part
Input
rOutputMax REAL 1000 maximum limit output r
rOutputMin REAL -1000 minimum limit output r
xManualOperation BOOL manual mode
rManualValue REAL output in manual mode
typTempConfiguration typTempConfiguration_01 configuration values
xReleasedByOperator BOOL release identification wit
rStationaryEndvalue REAL estimated stationary end
xDisablePT1D_Part BOOL disable PT1D part within
rY REAL manipulated value in %
rKs REAL calculated process gain
rTu REAL calculated process dead
rTg REAL calculated process build-
xError BOOL error
xLimitReached BOOL manipulated value has li
Output xLimitMaxReached BOOL manipulated value has m
xLimitMinReached BOOL manipulated value has m
iStatus INT internal phase
sStatus STRING status information
actualKp REAL actual gain of controller
actualTn REAL actual I-part of controlle
actualTv REAL actual D-part of controll
xEnableAutoTune BOOL activate autotune process
Inout
xReset BOOL reset an error

Function
A controller with autotune functionality designed for temperature control with an analog manipulated output
Graphical Illustration

3.1. Controller 10
WagoAppControlSuite, Release 1.0.1.4

Function Description
This module represents a temperature controller with six different phases.
Phase 1) Settling phase ->internal state 5
In this phase, the controlled system is supplied with a set value the size of typTempConfiguration.
iP5StartLevel. Depending on the configuration value xUseLevelAsAbsoluteValue iP5StartLevel is
used as absolute or as %-value from the setpoint.
The system then waits until the system is in a stable state.
This phase can also be used to bring the system close to the actual operating point. This is particularly important
when the controlled system is non-linear, so that subsequent identification can determine the real behavior at the
operating point as well as possible.
Phase 2) Identification phase ->internal state 10
In this phase, the controlled system is supplied with a set value the size of typTempConfiguration.
iP10IdentLevel. Depending on the configuration value xUseLevelAsAbsoluteValue iP10IdentLevel
is used as absolute or as %-value from the setpoint. The waveform of the controlled system response is recorded.
The module returns an error if the step response cannot be recorded completely. Such is the case if the in-
ternal memory is too small. In this case, the error message is ArrayTooSmall. The rY output is reset to
zero by default. The problem can be resolved by increasing the tSampleRate sampling rate or increasing the
MAX_IDENTIFICATION_ARRAY parameter.
At the end of the identification phase, the controlled system parameters are determined using the inflectional
tangent method.
The output point for the control parameters represents the determined data set (rKs, rTu and rTg).
Evaluating both typTempConfiguration.iP10StationaryEndpointControlTime and
typTempConfiguration.rP10StationaryEndpointPercentReferenceValue inputs deter-
mines when the stationary end value is reached during the identification phase. If the process value does not change
more than the typTempConfiguration.rP10StationaryEndpointPercentReferenceValue
percent within the specified time, it is assumed that the stationary end value has been reached.
This module also allows you to interrupt identification early or to start calculating the controller parameters im-
mediately. This can be useful if the stationary end value is reached very slowly. In this case, the operator
can estimate the end value from the rStationaryEndvalue input directly and trigger calculation by the
xReleasedByOperator input.
Phase 3) Controlling the intermediate setpoint ->internal state 20
Following the identification phase, the system reaches a specific temperature. The temperature difference from the
setpoint actually specified is determined. In this phase, the control parameters are set to an intermediate setpoint

3.1. Controller 11
WagoAppControlSuite, Release 1.0.1.4

that is 50 % of the temperature difference. Therefore, you have the option of roughly estimating the quality of the
control parameters.
Phase 4) Controlling the setpoint ->internal state 30
In this phase, the specified setpoint is controlled with the calculated control parameters. The quality of the control
must be assessed by the operator and improved by manual optimization, if necessary. It is recommended to use
the trace functionality to get a visual impression of the temperature profile.
The system switches to phase 5 once the setpoint is reached.
Phase 5) Maintain setpoint (regulating disturbance variables) ->internal state 40
The controller operates with the controller set determined by the typTempConfiguration.
eP40ControlMethode configuration value. The default value is CHR_aperiodisch_dis. If a new
setpoint is identified, the system switches to phase 6.
Phase 6) Regulating the setpoint step change ->internal state 50
The controller operates with the controller set determined by the typTempConfiguration.
eP50ControlMethode configuration value. The default value is CHR_aperiodisch_set. Once
the new setpoint is reached with the corresponding accuracy, the system switches to phase 5.

Note: Since the controlled system gain is unknown during initial identification, the temperature is moni-
tored using the typTempConfiguration.rP10MaxTemperatureWhileIdentification configura-
tion value.

When the temperature threshold is reached, the output is reset to zero and the identification process terminated.
However, the process temperature can still rise further due to the properties of the controlled system. With that
said, the temperature threshold should be selected as low as possible to preclude any damage due to impermissible
high temperatures. If an error interrupts identification, the function block must be disabled once. You can then
restart with a reduced value for typTempConfiguration.iP10IdentLevel.
This module can also be used as a traditional PID controller if the xUseExternalControlParameter is set
to TRUE. In this case, the controller operates with the rKp, rTn and rTv input values.

Note: A second identification phase is only performed if the temperature difference between the cur-
rent temperature and the new setpoint rSetPointValue it greater than typTempConfiguration.
rMinProcessDifference .

3.1.4 FbTemperatureControlPWM_01 (FB)


Interface variables

Scope Name Type Initial Comment


Output oStatus WagoSysErrorBase.FbResult Status object. (Listed in
xEnable BOOL enable controller
rActualValue REAL actual process value
rSetpointValue REAL setpoint value
tSampleRate TIME sample rate
xUseExternalControlParameter BOOL use external control para
rKp REAL 1.0 PID controller ->P-part
rTn REAL 1.0 PID controller -> I-part
rTv REAL 1.0 PID controller -> D-part
Input
rOutputMax REAL 100 [0..100 %] maximum lim
rOutputMin REAL 0 [0..100 %] minimum lim
xManualOperation BOOL manual mode
rManualValue REAL [0..100 %] output in man

3.1. Controller 12
WagoAppControlSuite, Release 1.0.1.4

Table 3.4 – cont


Scope Name Type Initial Comment
typTempConfiguration typTempConfiguration_02 configuration values
xReleasedByOperator BOOL release identification wit
rStationaryEndvalue REAL estimated stationary end
xDisablePT1D_Part BOOL disable PT1D part within
xPWM BOOL manipulated value
rY REAL manipulated value in %
rKs REAL calculated process gain
rTu REAL calculated process dead
rTg REAL calculated process build-
xError BOOL error
xLimitReached BOOL manipulated value has li
Output
xLimitMaxReached BOOL manipulated value has m
xLimitMinReached BOOL manipulated value has m
iStatus INT internal phase
sStatus STRING status information
actualKp REAL actual gain of controller
actualTn REAL actual I-part of controlle
actualTv REAL actual D-part of controll
xEnableAutoTune BOOL activate autotune process
Inout
xReset BOOL reset an error

Function
A controller with autotune functionality designed for temperature control with a digital manipulated output
Graphical Illustration

Function Description
This module represents a temperature controller with six different phases.
Phase 1) Settling phase ->internal state 5
In this phase, the controlled system is supplied with a set value the size of typTempConfiguration.
iP5StartLevel. The system then waits until the system is in a stable state.
This phase can also be used to bring the system close to the actual operating point. This is particularly important
when the controlled system is non-linear, so that subsequent identification can determine the real behavior at the
operating point as well as possible.

3.1. Controller 13
WagoAppControlSuite, Release 1.0.1.4

Phase 2) Identification phase ->internal state 10


In this phase, the controlled system is supplied with a set value the size of typTempConfiguration.
iP10IdentLevel. The waveform of the controlled system response is recorded. The module returns an error
if the step response cannot be recorded completely. Such is the case if the internal memory is too small. In this
case, the error message is ArrayTooSmall. The xPWM output is reset to zero. The problem can be resolved by
increasing the tSampleRate sampling rate or increasing the MAX_IDENTIFICATION_ARRAY parameter.
At the end of the identification phase, the controlled system parameters are determined using the inflectional
tangent method.
The output point for the control parameters represents the determined data set (rKs, rTu and rTg).
Evaluating both typTempConfiguration.iP10StationaryEndpointControlTime and
typTempConfiguration.rP10StationaryEndpointPercentReferenceValue inputs deter-
mines when the stationary end value is reached during the identification phase. If the process value does not change
more than the typTempConfiguration.rP10StationaryEndpointPercentReferenceValue
percent within the specified time, it is assumed that the stationary end value has been reached.
This module also allows you to interrupt identification early or to start calculating the controller parameters im-
mediately. This can be useful if the stationary end value is reached very slowly. In this case, the operator
can estimate the end value from the rStationaryEndvalue input directly and trigger calculation by the
xReleasedByOperator input.
Phase 3) Controlling the intermediate setpoint ->internal state 20
Following the identification phase, the system reaches a specific temperature. The temperature difference from the
setpoint actually specified is determined. In this phase, the control parameters are set to an intermediate setpoint
that is 50 % of the temperature difference. Therefore, you have the option of roughly estimating the quality of the
control parameters.
Phase 4) Controlling the setpoint ->internal state 30
In this phase, the specified setpoint is controlled with the calculated control parameters. The quality of the control
must be assessed by the operator and improved by manual optimization, if necessary. It is recommended to use
the trace functionality to get a visual impression of the temperature profile.
The system switches to phase 5 once the setpoint is reached.
Phase 5) Maintain setpoint (regulating disturbance variables) ->internal state 40
The controller operates with the controller set determined by the typTempConfiguration.
eP40ControlMethode configuration value. The default value is CHR_aperiodisch_dis. If a new
setpoint is identified, the system switches to phase 6.
Phase 6) Regulating the setpoint step change ->internal state 50
The controller operates with the controller set determined by the typTempConfiguration.
eP50ControlMethode configuration value. The default value is CHR_aperiodisch_set. Once
the new setpoint is reached with the corresponding accuracy, the system switches to phase 5.

Note: Since the controlled system gain is unknown during initial identification, the temperature is moni-
tored using the typTempConfiguration.rP10MaxTemperatureWhileIdentification configura-
tion value.

When the temperature threshold is reached, the output is reset to zero and the identification process terminated.
However, the process temperature can still rise further due to the properties of the controlled system. With that
said, the temperature threshold should be selected as low as possible to preclude any damage due to impermissible
high temperatures. If an error interrupts identification, the function block must be disabled once. You can then
restart with a reduced value for typTempConfiguration.iP10IdentLevel.
This module can also be used as a traditional PID controller if the xUseExternalControlParameter is set
to TRUE. In this case, the controller operates with the rKp, rTn and rTv input values.

3.1. Controller 14
WagoAppControlSuite, Release 1.0.1.4

Note: A second identification phase is only performed if the temperature difference between the cur-
rent temperature and the new setpoint rSetPointValue it greater than typTempConfiguration.
rMinProcessDifference .

3.1.5 Fb_PID (FB)


Interface variables

Scope Name Type Initial Comment Inherited


from
Output oStatus WagoSysErrorBase. Status object. (Listed in Status) The FbBase
FbResult content of the error object can be
displayed using FbShowResult from
the WagoSysErrorBase library.
xEnable BOOL enable controller
rActualValue
REAL actual process value
rSetpointValue
REAL setpoint value
tSampleRateTIME sample rate
rKp REAL 1.0 PID controller ->P-part
rTn REAL 1.0 PID controller -> I-part
Input
rTv REAL 1.0 PID controller -> D-part
rOutputMax REAL 1E+38 maximum limit output rY
rOutputMin REAL -1E+38 minimum limit output rY
xManualOperation
BOOL manual mode
rManualValue
REAL output in manual mode
typ-
typConfiguration configuration values
PID_Configuration
rY REAL (manipulated value in
[rOutputMin..rOutputMax])
Output
xLimitReached
BOOL manipulated value has limit reached
xLimitMaxReached
BOOL manipulated value has maximum
reached
xLimitMinReached
BOOL manipulated value has minimum reached
Function
A PID controller in the additive control structure
Graphical Illustration

Function Description

3.1. Controller 15
WagoAppControlSuite, Release 1.0.1.4

This module represents a controller that allows diverse controller types, e.g., PID or PI, by selecting the rKp, rTn
and rTv inputs.
The output value can be limited to the range from rOutputMin to rOutputMax. If the controller is operated
with a digital output via a PWM module, the limiting values must be set to rOutputMin=0 and rOutputMax=100.
An AntiWindUp of the integral gain is always realized. rOutputMin and rOutputMax are also used as
limiting values. Manual operation is realized via the xManualOperation input. Switching to automatic mode
is hitchless.
If the controller is disabled, the size of the setpoint is determined by the configuration of the
typConfiguration.eDisableMode and typConfiguration.rDisabledOutput, if necessary.
The output is reset to zero by default.
If the rate time of the controller modeled on a real rate time instead of the ideal rate time, corresponding damping
can be realized via typConfiguration.rTdamping.
You can configure other options via the typConfiguration input. typConfiguration.
xUseP_Modified allows the proportional multiplier to act on the process value instead of on the deviation
from the setpoint. The same applies to the rate time via typConfiguration.xUseD_Modified.
By typConfiguration.xChangeInDirection the effective direction can be changed. This option works
only in the standard PID mode.

3.2 General
3.2.1 FbAverageMovingFilter (FB)
Interface variables

Scope Name Type Comment


rIn REAL input
Input
wCount INT amount of samples taken into account
Inout xReset BOOL reset internal buffer to zero
rY REAL output
Output
xError BOOL error occured
Function
A average moving filter
Graphical Illustration

Function description
The average value from wCount samples will be calculated. An error will be indicated if input wCount is greater
than the parameter MAX_AVERAGE_MOVING_FILTER divided by 2.

3.2.2 FbControlledSystemIdentification_01 (FB)


Interface variables

3.2. General 16
WagoAppControlSuite, Release 1.0.1.4

Scope Name Type Initial Comment Inherited


from
Output oStatus WagoSysErrorBase.Status object. (Listed in Status) The FbBase
FbResult content of the error object can be
displayed using FbShowResult from
the WagoSysErrorBase library.
xEnable BOOL enable identification
tSampleRateTIME sample rate
rActualValue
REAL actual process value
rSetPoint REAL reference value
eCon-
eControlledSystem PTn must be PTn, further modes will follow in
trolledSys- the future
Input tem
eController- 99
eControllerType type of controller
Type
tMaxImpuls TIME only future use
xManualOperation
BOOL manual mode, no identification done
rManipulatedValueAtStart
REAL manipulated value at start up
rSetPointReachedLimit
REAL 1 [%]; limit in percent, if the process value
is within this limit, a time defined by
iStationaryEndpointControlTime
will be started to evaluate the stationary
endvalue
[s], time to check whether the process
iStationaryEndpointControlTime
INT
value is in the allowed range
xReleasedByOperator
BOOL activate calculating of controller values by
using input rStationaryEndvalue
as estimated stationary endvalue
rStationaryEndvalue
REAL estimated stationary endvalue
xDone BOOL identification sucessful done
xBusy BOOL identification in progress
xError BOOL identification stopped with error
rValue REAL output
iBufferCounter
INT actual level of internal buffer
Output
rKs REAL calculated process gain
rTu REAL calculated process dead time constant
rTg REAL calculated process build-up time constant
aValues ARRAY calculated controller parameter sets
[0..4] OF
typCon-
trollerVal-
ues
only used by additional function blocks
typAuxData typAuxDataIdentification
from the Controller folder
Function
This function block identifies a controlled system by evaluating the step response following the inflectional tangent
method.
Graphical Illustration

3.2. General 17
WagoAppControlSuite, Release 1.0.1.4

Function Description
This module allows identification of a controlled system. However, a non-oscillating, non-integrating con-
trolled system is required. The eControlledSystem input must therefore always be operated with the
eControlledSystem.PTn value (additional controlled system types shall be added in the future).
Identification may only be started if the system is in a steady state. Otherwise, the values are calculated incorrectly.
If the module is enabled by the xEnable input, identification is started by a change at the rSetPoint input.
The xManualOperation input allows to supply the controlled system manually with the value rSetPoint
without the identification being carried out. This can be useful, so that identification is only executed in the vicinity
of the real operating point (linearization of a nonlinear distance around the operating point). If identification is
started, make sure that the rManipulatedValueAtStart input is connected correctly. If this input has an
incorrect value, identification of the rKs gain factor of the controlled system is calculated incorrectly.

Note: The default for rSetPoint must be selected to prevent damage to the controlled system. Corresponding
monitoring functions must be added to the user program.

If there is no accurate knowledge of the behavior of the controlled system, start with low values for rSetPoint
to get a first impression.
This module maps the real controlled system behavior by PTn approximation.

The output point for the control parameters represents the data set (rKs, rTu and rTg). The module makes the
values possible for the selected eControllerType available at the aValues output. Assignment is as follows:
aValues[0] ->Ziegler, extended Ziegler-Nichols method
aValues[1] ->CHR_aperiodisch_dis, Chien/Hrones and Reswick, aperiodic disturbance response
aValues[2] ->CHR_aperiodisch_dis, Chien/Hrones and Reswick, aperiodic response to setpoint changes
aValues[3] ->CHR_20_dis, Chien/Hrones and Reswick, aperiodic disturbance response with 20 % overshoot
aValues[4] ->CHR_20_dis, Chien/Hrones and Reswick, aperiodic response to setpoint changes with 20 % over-
shoot
Only non-integrating systems are currently supported.

3.2. General 18
WagoAppControlSuite, Release 1.0.1.4

This module returns an error if the step response cannot be recorded completely. Such is the case if the internal
memory is too small. In this case, the error message is ArrayTooSmall. The rValue output is reset to zero
in this case. The problem can be resolved by increasing the tSampleRate sampling rate or increasing the
MAX_IDENTIFICATION_ARRAY parameter.
This module also allows you to interrupt identification early or to start calculating the controller parameters im-
mediately. This can be useful if the stationary end value is reached very slowly. In this case, the operator
can estimate the end value from the rStationaryEndvalue input directly and trigger calculation by the
xReleasedByOperator input.
Evaluating both iStationaryEndpointControlTime and rSetPointReachedLimit inputs deter-
mines when the stationary end value is reached during the identification phase. If the process value does not
change more than the rSetPointReachedLimit percent within the specified time, it is assumed that the
stationary end value has been reached.

FbControlledSystemIdentification_01.Identifikation_ITn (ACT)
FbControlledSystemIdentification_01.Identifikation_PTn (ACT)

3.2.3 FbDelay (FB)


Interface variables

Scope Name Type Initial Comment


rIn REAL input
tSampleRate TIME must be an integer multiple of tTaskIntervall,e.g.
Input 200ms
tDelay TIME TIME#1s0ms required delay
xManualOperation BOOL manual operation
rManualValue REAL value in manual mode
Inout xReset BOOL reset
rY REAL output
Output
xError BOOL error occured
Function
Function block for a dead time element
Graphical Illustration

3.2. General 19
WagoAppControlSuite, Release 1.0.1.4

Function description
A dead time element. An error will occure if the parameter MAX_DELAY is too small to allow for the delay defined
by tDelay.

3.2.4 FbHysteresis_01 (FB)


Interface variables

Scope Name Type Comment


rIn REAL input
Input rActivate REAL activate level
rDeactivate REAL deactivate level
xOut BOOL output
Output
xBetween BOOL xBetween will be high when rIn is between rActivate and rDeactivate
Function
Hysteresis functionality
Graphical Illustration

Function description
This Hysteresis function has two modes:
1. if rActivate > rDeactivate
then xOut will be TRUE when rIn > rActivate and FALSE when rIn < rDeactivate.
2. if rActivate < rDeactivate
then xOut will be TRUE when rIn < rActivate and FALSE when rIn > rDeactivate.

3.2.5 FbRamp_01 (FB)


Interface variables

3.2. General 20
WagoAppControlSuite, Release 1.0.1.4

Scope Name Type Comment


xEnable BOOL Enable function block.
rIn REAL Input value for the ramp.
tSampleRate TIME must be an integer multiple of tTaskIntervall
rRampStartValue REAL ramp value at start
Input
rRampEndValue REAL end value for ramp
tRampDuration TIME ramp duration
xManualOperation BOOL manual mode
rManualValue REAL value in manual mode
rY REAL Output value.
Output
xRampActive BOOL Displays ramp is active.
Function
Function block ensures a defined rising or falling rate of the output
Graphical Illustration

Function description
This function block must be called in each cycle.
If enabled, the output starts with the value defined by rRampStartValue. Within the time period
tRampDuration the signal reaches the value defined by rRampEndValue Leaving the manual mode, while
xEnable is still true, will restart the signal generation, beginning with rRampStartValue

3.2.6 FbSaturation (FB)


Interface variables

Scope Name Type Comment


rIn REAL input
Input rOutputMax REAL maximum value allowed for the input
rOutputMin REAL minimum value allowed for the input
rY REAL output
xLimitReached BOOL output value has limit reached
Output
xLimitMaxReached BOOL output value has maximum reached
xLimitMinReached BOOL output value has minimum reached
Function
This function block limits the input
Graphical Illustration

3.2. General 21
WagoAppControlSuite, Release 1.0.1.4

Function description
The input will be limited by the values rOutputMax and rOutputMin.

3.2.7 Fb_D (FB)


Interface variables

Scope Name Type Initial Comment Inherited


from
Output oStatus WagoSysErrorBase. Status object. (Listed in Status) The FbBase
FbResult content of the error object can be
displayed using FbShowResult from
the WagoSysErrorBase library.
rIn REAL input
tSampleRateTIME must be an integer multiple of
tTaskIntervall
rTv REAL 1.0 [s]
Input rTdamping REAL [s];if rTdamp=0 then ideal D-function
xManualOperation
BOOL manual mode
rManualValue
REAL value in manual mode
xSyncOutputBOOL the output ry will be set to rManualValue
for exactely one cycle ->rising edge
evaluation
rOutputMax REAL 1E+38 maximum value allowed for the input
rOutputMin REAL -1E+38 minimum value allowed for the input
rY REAL output
xLimitReached
BOOL output value has limit reached
Output
xLimitMaxReached
BOOL output value has maximum reached
xLimitMinReached
BOOL output value has minimum reached
Function
A differentiator element to design own control algorithm
Graphical Illustration

3.2. General 22
WagoAppControlSuite, Release 1.0.1.4

Function description
An ideal D-part can be archieved by setting rTdamping to zero. The output may be syncronized. This function-
ality will be perfomed with a rising edge of input xSyncOutput and will set the output to the value given by
rManualValue. The output is limited by rOutputMax and rOutputMin.

3.2.8 Fb_I (FB)


Interface variables

Scope Name Type Initial Comment Inherited


from
Output oStatus WagoSysErrorBase. Status object. (Listed in Status) The FbBase
FbResult content of the error object can be
displayed using FbShowResult from
the WagoSysErrorBase library.
rIn REAL input
tSampleRateTIME must be an integer multiple of
tTaskIntervall,e.g. 200ms
rTi REAL 1 [s] time constant
Input
xManualOperation
BOOL manual mode
rManualValue
REAL value in manual mode
xSyncOutputBOOL syncronize output, rManualValue
will be used
rOutputMax REAL 1E+38 maximum value allowed for the input
rOutputMin REAL -1E+38 minimum value allowed for the input
rY REAL output
xError BOOL error occured
Output xLimitReached
BOOL output value has limit reached
xLimitMaxReached
BOOL output value has maximum reached
xLimitMinReached
BOOL output value has minimum reached
Function
An integrator element to design own control algorithm
Graphical Illustration

Function description
The output may be syncronized. This functionality will be perfomed with a rising edge of input xSyncOutput
and will set the output to the value given by rManualValue. The output will be limited by rOutputMax and
rOutputMin.

3.2. General 23
WagoAppControlSuite, Release 1.0.1.4

3.2.9 Fb_P (FB)


Interface variables

Scope Name Type Comment Inherited


from
Output oStatus Status object. (Listed in Status) The content of the
WagoSysErrorBase. FbBase
FbResult error object can be displayed using
FbShowResult from the
WagoSysErrorBase library.
rIn REAL input
tSampleRateTIME must be an integer multiple of tTaskIntervall,e.g.
Input 200ms
rK REAL gain
xManualOperation
BOOL manual operation
rManualValue
REAL value in manual mode
Output rY REAL output
Function
A proportional element to design own control algorithm
Graphical Illustration

Function description
A proportional element for control structures

3.2.10 Fb_PT1 (FB)


Interface variables

Scope Name Type Initial Comment Inherited


from
Output oStatus WagoSysErrorBase.Status object. (Listed in Status) The FbBase
FbResult content of the error object can be
displayed using FbShowResult from
the WagoSysErrorBase library.
rIn REAL input
tSampleRateTIME must be an integer multiple of
tTaskIntervall,e.g. 200ms
Input
rK REAL 1.0 Gain
rT REAL 1 [s] time constant
xManualOperation
BOOL activate manual value
rManualValue
REAL manual value
rY REAL output
Output
xError BOOL future use
Function

3.2. General 24
WagoAppControlSuite, Release 1.0.1.4

A PT1 element to design own control algorithm


Graphical Illustration

Function description
This function block may be used as a low pass filter.

3.2.11 Fb_PWM_01 (FB)


Interface variables

Scope Name Type Initial Comment


xEnable BOOL Enable
rDutyCycle REAL [%] duty cycle 0..100
Input
REAL 0.5
rCycleDuration [s] duration, e.g. 0.5 ->0.5 s
TIME TIME#10ms
tMinimalSwitchOn [s] Minimum time for the output to be switched on. Must
be an integer multiple of the appropriate task intervall.
Output xOut BOOL output signal
Function
A PWM element to generate a digital signal from an analog input
Graphical Illustration

Function description An input signal in the range from 0% to 100%, will be transformed in a puls width signal.
To increase accuracy, output values below the tMinimalSwitchOn value, will be internally stored and will be
added to the next output.

3.2.12 FuControllerParameterCalculation_PTn (FUN)


Interface variables

3.2. General 25
WagoAppControlSuite, Release 1.0.1.4

Scope Name Type Comment


Return ARRAY [0..4] OF
FuControllerParameterCalculation_PTn
typControllerValues
rKs REAL process gain
rTu REAL process dead time
Input
constant
rTg REAL process build-up time
constant
eControllerType eControllerType controller type such as
PID or PI
Function
A function which calculates controller parameter, depending on the controlled system values
Graphical Illustration

Function description
This function calculates controller parameter depending on the inputs rKs, rTu and rTg as well as
eControllerType.
Assignment is as follows:
FuControllerParameterCalculation_PTn[0] ->Ziegler, extended Ziegler-Nichols method
FuControllerParameterCalculation_PTn[1] ->CHR_aperiodisch_dis, Chien/Hrones and Reswick, aperiodic dis-
turbance response
FuControllerParameterCalculation_PTn[2] ->CHR_aperiodisch_dis, Chien/Hrones and Reswick, aperiodic re-
sponse to setpoint changes
FuControllerParameterCalculation_PTn[3] ->CHR_20_dis, Chien/Hrones and Reswick, aperiodic disturbance re-
sponse with 20 % overshoot
FuControllerParameterCalculation_PTn[4] ->CHR_20_dis, Chien/Hrones and Reswick, aperiodic response to set-
point changes with 20 % overshoot

3.2.13 FuDeadZone (FUN)


Interface variables

Scope Name Type Comment


Return FuDeadZone REAL
rIn REAL Input
Input
rThreshold REAL Threshold
Output xInDeadZone BOOL Input is in the dead zone
Function
A function implementing a dead zone
Graphical Illustration

3.2. General 26
WagoAppControlSuite, Release 1.0.1.4

Function description

3.2. General 27
CHAPTER 4

29 Types

4.1 eControlledSystem (ENUM)


Name Initial Comment
0 PTn-controlled system
PTn
2 future use,PTn-oscillating controlled system
InOut: PTnOscillating
3 future use,ITn-controlled system
ITn
100 future use
Impuls

4.2 eControllerDisabledMode (ENUM)


Name Initial Comment
0 set output to rOutputMin
Output_min
InOut: 1 set output to the last value
Output_hold
2 set output to the value defined by parameter
Output_special
rOutputValueControllerDisabled

4.3 eControllerType (ENUM)


Name Initial Comment
0 P-Controller
P
1 PI-Controller
InOut: PI
2 PD-Controller
PD
3 PID-Controller
PID

28
WagoAppControlSuite, Release 1.0.1.4

4.4 eMethode (ENUM)


Name Initial Comment
0 extended Ziegler-Nichols approach
Ziegler
2 using Chien/Hrones and Reswick aperiodisch set point optimized
CHR_aperiodisch_set
InOut: 1 using Chien/Hrones and Reswick aperiodisch disturbance optimized
CHR_aperiodisch_dis
4 using Chien/Hrones and Reswick aperiodisch set point optimized with
CHR_20_set
20% shot over
3 using Chien/Hrones and Reswick aperiodisch disturbance optimized
CHR_20_dis
with 20% shot over

4.5 typConfiguration_01 (STRUCT)


Name Type Initial Comment
rMaxProcessValue REAL 400 must be adjusted by customer ->e.g. 400
rMinProcessValue REAL 0 must be adjusted by customer ->e.g. 0
iControllerDisabledMode
INT 0 default is ->set output to min value
0
rOutputValueControllerDisabled
REAL the output will be set to this value if the
parameter bControllerDisabledMode is equal
Output_special
eControllerType eController- PID
Type
rMinProcessDifference
REAL 50
Autotune will be denied, if the difference from
the actual process value to the new setpoint is
less than rMinProcessDifference
xChangeInDirection
BOOL effective direction inverted
xUseLevelAsAbsoluteValue
BOOL use iP5StartLevel and
iP10IdentLevel values in continous
mode as absolute values
iP5StartLevel INT 5 Start level will be x or x% from the
rSetpointValue in continous mode or x% duty
InOut:
cycle in PWM mode
tP5Delay TIME TIME#20s0ms after this time the evaluation will start
checking whether the output is already stable
rP5Limit REAL 1.0 process value may change within this limit
tP5TimeCheck TIME TIME#20s0ms each 20s it will be checked how much the
process value has changed
iP10IdentLevel INT 15 Identification will be x or x% from the
rSetpointValue depending on setting
xUseLevelAsAbsoluteValue
1.0 [%] phase 10 identification: % from the
rP10StationaryEndpointPercentReferenceValue
REAL
setpointvalue ->0.5=0.5%
30
iP10StationaryEndpointControlTime
INT [s] phase 10 identification: check whether
value is stable within this time period
eMethode
eP40ControlMethode CHR_aperiodisch_dis
Phase 40: keep value
eMethode
eP50ControlMethode CHR_aperiodisch_set
Phase 50: try to reach new setpoint
4.0
rP50SetPointPercentReferenceValue
REAL [%]
TIME#5s0ms during this time period the actual value must
tP50SettlingTimeReferenceValue
TIME
stay stable within the given range

4.4. eMethode (ENUM) 29


WagoAppControlSuite, Release 1.0.1.4

4.5. typConfiguration_01 (STRUCT) 30


WagoAppControlSuite, Release 1.0.1.4

4.6 typConfiguration_02 (STRUCT)


Name Type Initial Comment Inherited
from
rMaxProcessValue
REAL 400 must be adjusted by customer typConfigu-
->e.g. 400 ration_01
rMinProcessValue
REAL 0 must be adjusted by customer typConfigu-
->e.g. 0 ration_01
iControllerDisabledMode
INT 0 default is ->set output to min value typConfigu-
ration_01
0
rOutputValueControllerDisabled
REAL the output will be set to this value if typConfigu-
the parameter ration_01
bControllerDisabledMode is equal
Output_special
eController-
eControllerType PID typConfigu-
Type ration_01
rMinProcessDifference
REAL 50 Autotune will be denied, if the typConfigu-
difference from the actual process ration_01
value to the new setpoint is less
than
rMinProcessDifference
xChangeInDirection
BOOL effective direction inverted typConfigu-
ration_01
xUseLevelAsAbsoluteValue
BOOL use iP5StartLevel and typConfigu-
iP10IdentLevel values in ration_01
continous mode as absolute values
iP5StartLevel INT 5 Start level will be x or x% from the typConfigu-
rSetpointValue in continous mode ration_01
or x% duty cycle in PWM mode
tP5Delay TIME TIME#20s0ms after this time the evaluation will typConfigu-
InOut:
start checking whether the output is ration_01
already stable
rP5Limit REAL 1.0 process value may change within typConfigu-
this limit ration_01
tP5TimeCheck TIME TIME#20s0ms each 20s it will be checked how typConfigu-
much the process value has ration_01
changed
iP10IdentLevelINT 15 Identification will be x or x% from typConfigu-
the rSetpointValue depending on ration_01
setting
xUseLevelAsAbsoluteValue
1.0 [%] phase 10 identification: %
rP10StationaryEndpointPercentReferenceValue
REAL typConfigu-
from the setpointvalue ->0.5=0.5% ration_01
30
iP10StationaryEndpointControlTime
INT [s] phase 10 identification: check typConfigu-
whether value is stable within this ration_01
time period
eMethode
eP40ControlMethode CHR_aperiodisch_dis
Phase 40: keep value typConfigu-
ration_01
eMethode
eP50ControlMethode CHR_aperiodisch_set
Phase 50: try to reach new setpoint typConfigu-
ration_01
4.0
rP50SetPointPercentReferenceValue
REAL [%] typConfigu-
ration_01
TIME#5s0ms during this time period the actual
tP50SettlingTimeReferenceValue
TIME typConfigu-
value must stay stable within the ration_01
given range
rPWMCycleDuration
REAL 0.5 [s] cycle duration used by PWM
tPWMMinimalSwitchOn
TIME TIME#100ms [s] minimum period of time to
switch the actuator on
4.6. typConfiguration_02 (STRUCT) 31
WagoAppControlSuite, Release 1.0.1.4

4.7 typControllerValues (STRUCT)


Name Type Comment
Kp REAL Proportional multiplier (P part) || Proportionalverstärkung (P - Anteil)
InOut:
Tn REAL Reset time (I part) [s] || Nachstellzeit (I - Anteil) [s]
Tv REAL Rate time (D part) [s] || Vorhaltezeit (D - Anteil) [s]

4.8 typPID_Configuration (STRUCT)


Name Type Comment
xUseP_ModifiedBOOL Use P part in the backward loop
xUseD_ModifiedBOOL Use D part in the backward loop
rTdamping REAL approximate D part by an additional damping time
InOut: eDisableMode eControllerDis- define the way, the output should be set if the controller is
abledMode disabled or in error state
rDisabledOutput
REAL the output will be set to this value if the parameter
bControllerDisabledMode is equal Output_special
xChangeInDirection
BOOL effective direction inverted Wirkrichtungsumkehr

4.7. typControllerValues (STRUCT) 32


WagoAppControlSuite, Release 1.0.1.4

4.9 typTempConfiguration_01 (STRUCT)


Name Type Initial Comment
rMaxTemperature REAL 400 must be adjusted by customer ->e.g. 400°
rMinTemperature REAL 0 must be adjusted by customer ->e.g. 0°
iControllerDisabledMode
INT 0 default is ->set output to min value
0
rOutputValueControllerDisabled
REAL the output will be set to this value if the
parameter bControllerDisabledMode is equal
Output_special
eControllerType eController- PID controller type
Type
rMinProcessDifference
REAL 50 Autotune will be denied, if the difference from
the actual process value to the new setpoint is
less than rMinProcessDifference
xChangeInDirection
BOOL effective direction inverted
xUseLevelAsAbsoluteValue
BOOL use iP5StartLevel and
iP10IdentLevel values in continous
mode as absolute values
iP5StartLevel INT 5 Start level will be x or x% from the
rSetpointValue in continous mode or x% duty
cycle in PWM mode
tP5Delay TIME TIME#20s0ms after this time the evaluation will start
InOut: checking whether the output is already stable
rP5Limit REAL 1.0 process value may change within this limit
tP5TimeCheck TIME TIME#20s0ms each 20s it will be checked how much the
process value has changed
iP10IdentLevel INT 15 Identifikation will be x or x% from the
rSetpointValue depending on parameter
xUseLevelAsAbsoluteValue
1.0 [%] phase 10 identification: % from the
rP10StationaryEndpointPercentReferenceValue
REAL
setpointvalue ->0.5=0.5%
30
iP10StationaryEndpointControlTime
INT [s] phase 10 identification: check whether
value is stable within this time period
eMethode
eP40ControlMethode CHR_aperiodisch_dis
Phase 40: keep value
eMethode
eP50ControlMethode CHR_aperiodisch_set
Phase 50: try to reach new setpoint
4.0
rP50SetPointPercentReferenceValue
REAL [%]
TIME#5s0ms during this time period the actual value must
tP50SettlingTimeReferenceValue
TIME
stay stable within the given range
rP50FadeOutDivisor
REAL 10.0
xP50UseFadeOut BOOL TRUE
rP50TrackingKpFactor
REAL 2.0 PT1_D gain for PT1 part
rP50TrackingTuFactor
REAL 1.0 PT1_D Tv for PT1 part

4.9. typTempConfiguration_01 (STRUCT) 33


WagoAppControlSuite, Release 1.0.1.4

4.9. typTempConfiguration_01 (STRUCT) 34


WagoAppControlSuite, Release 1.0.1.4

4.10 typTempConfiguration_02 (STRUCT)


Name Type Initial Comment Inherited
from
rMaxTemperature
REAL 400 must be adjusted by customer typTemp-
->e.g. 400° Configura-
tion_01
rMinTemperature
REAL 0 must be adjusted by customer typTemp-
->e.g. 0° Configura-
tion_01
iControllerDisabledMode
INT 0 default is ->set output to min value typTemp-
Configura-
tion_01
0
rOutputValueControllerDisabled
REAL the output will be set to this value if typTemp-
the parameter Configura-
bControllerDisabledMode is equal tion_01
Output_special
eController-
eControllerType PID controller type typTemp-
Type Configura-
tion_01
rMinProcessDifference
REAL 50 Autotune will be denied, if the typTemp-
difference from the actual process Configura-
value to the new setpoint is less tion_01
than
rMinProcessDifference
xChangeInDirection
BOOL effective direction inverted typTemp-
Configura-
tion_01
xUseLevelAsAbsoluteValue
BOOL use iP5StartLevel and typTemp-
iP10IdentLevel values in Configura-
continous mode as absolute values tion_01
iP5StartLevel INT 5 Start level will be x or x% from the typTemp-
rSetpointValue in continous mode Configura-
or x% duty cycle in PWM mode tion_01
tP5Delay TIME TIME#20s0ms after this time the evaluation will typTemp-
start checking whether the output is Configura-
already stable tion_01
rP5Limit REAL 1.0 process value may change within typTemp-
this limit Configura-
tion_01
tP5TimeCheck TIME TIME#20s0ms each 20s it will be checked how typTemp-
InOut:
much the process value has Configura-
changed tion_01
iP10IdentLevelINT 15 Identifikation will be x or x% from typTemp-
the rSetpointValue depending on Configura-
parameter tion_01
xUseLevelAsAbsoluteValue
1.0 [%] phase 10 identification: %
rP10StationaryEndpointPercentReferenceValue
REAL typTemp-
from the setpointvalue ->0.5=0.5% Configura-
tion_01
30
iP10StationaryEndpointControlTime
INT [s] phase 10 identification: check typTemp-
whether value is stable within this Configura-
time period tion_01
eMethode
eP40ControlMethode CHR_aperiodisch_dis
Phase 40: keep value typTemp-
Configura-
tion_01
eMethode
eP50ControlMethode CHR_aperiodisch_set
Phase 50: try to reach new setpoint typTemp-
Configura-
4.10. typTempConfiguration_02 (STRUCT) tion_01 35
4.0
rP50SetPointPercentReferenceValue
REAL [%] typTemp-
Configura-
tion_01
36
WagoAppControlSuite, Release 1.0.1.4

CHAPTER 5

80 Status

5.1 Status (GVL)


Value Level Description
WagoTypesError- WagoTypesError- ‘OK’
Base.WagoTypes.Ok Base.WagoTypes.eSeverity.none
ControlledSys- WagoTypesError- ‘Controlled System not supported’
tem_Not_Supported Base.WagoTypes.eSeverity.info
Controller_Not_Supported WagoTypesError- ‘Controller not supported’
Base.WagoTypes.eSeverity.info
Done WagoTypesError- ‘Done’
Base.WagoTypes.eSeverity.info
ArrayTooSmall WagoTypesError- ‘Array too small’
Base.WagoTypes.eSeverity.error
Identification WagoTypesError- ‘Identification active’
Base.WagoTypes.eSeverity.info
P50_TryToReachNewSetpoint WagoTypesError- ‘Try to reach new setpoint’
Base.WagoTypes.eSeverity.info
Abort_MaxProcessValueReachedWagoTypesError- ‘Abort max process value reached’
Base.WagoTypes.eSeverity.error
P40_HoldSetpoint WagoTypesError- ‘Try to hold actual setpoint’
Base.WagoTypes.eSeverity.info
TuningDenied_PWMtoLow WagoTypesError- ‘Identification denied’
Base.WagoTypes.eSeverity.info
ManualOperation WagoTypesError- ‘Manual operation’
Base.WagoTypes.eSeverity.info
ControllerDisabled WagoTypesError- ‘Controller disabled’
Base.WagoTypes.eSeverity.info
Abort_MinProcessValueReachedWagoTypesError- ‘Abort min process value reached’
Base.WagoTypes.eSeverity.info
AutotuneInProgress WagoTypesError- ‘Autotune in progress’
Base.WagoTypes.eSeverity.info
AutotuneDenied WagoTypesError- ‘Autotune denied temperature
Base.WagoTypes.eSeverity.info difference to low’
ControllerParameterInvalid WagoTypesError- ‘No valid controller parameter
Base.WagoTypes.eSeverity.info available’
AutotuneAbortedByUser WagoTypesError- ‘Autotune aborted by user’
5.1. Status (GVL) Base.WagoTypes.eSeverity.info 37
InvalidSampleRate WagoTypesError- ‘Invalid sample rate’
Base.WagoTypes.eSeverity.info
WagoAppControlSuite, Release 1.0.1.4

5.2 eStatus (ENUM)


Name Initial Comment
0 OK
OK
1 controlled system not supported, in this library version only PTn
ControlledSys-
systems are supported
tem_Not_Supported
2 controller type not supported, allowed are P,PI,PD,PID
Con-
troller_Not_Supported
3 done
Done
100 step response can not be evaluated, since not all values can be
ArrayTooSmall
stored
200 identification in progress
Identification
201 internal state 50
P50_TryToReachNewSetpoint
202 maximal process value reached
Abort_MaxProcessValueReached
InOut: 203 internal state 40
P40_HoldSetpoint
204 autotune denied since PWM settings invalid
TuningDe-
nied_PWMtoLow
205 manual mode
ManualOperation
206 controller disabled
ControllerDisabled
207 minimal process value reached
Abort_MinProcessValueReached
208 autotune in progress
AutotuneInProgress
209 autotune denied
AutotuneDenied
210 controller parameter invalid
ControllerParameterIn-
valid
211 autotune aborted by operator
AutotuneAbortedByUser
212 Invalid sample rate
InvalidSampleRate

5.2. eStatus (ENUM) 38


CHAPTER 6

GlobalTextList (Text List)

39
CHAPTER 7

ParameterList (PARAMS)

Scope Name Type Initial Comment


DINT 5000 array to store step response
MAX_IDENTIFICATION_ARRAY
Constant INT 1000 array to store values
MAX_AVERAGE_MOVING_FILTER
InOut:
INT 100 array to store values
MAX_DELAY
REAL 2.0 absolute difference from
ABSO-
setpoint 0
LUTE_DIFFERENCE_SETPOINT_ZERO

40
CHAPTER 8

VersionHistory (GVL)

WagoAppControlSuite.library
date version author change
17.08.2020 1.0.1.4 u010663 Remove WagoVisuIcons
26.09.2019 1.0.1.3 u010663 Bugfix FbDelay
12.09.2019 1.0.1.2 u010663 No error, if xEnable and xEnableAutoTune are not set at the same time
for the first identification
24.06.2019 1.0.1.1 u010663 Improvement tSamplerate=0
08.01.2019 1.0.1.0 u015842 Properties: free placeholder added
29.08.2018 1.0.0.1 u010663 Bugfix setpoint 0
05.12.2017 1.0.0.0 u010663 First version
Release Notes:

41
CHAPTER 9

Library Reference

This is a dictionary of all referenced libraries and their name spaces.

9.1 3SLicense
9.1.1 Library Identification
Placeholder: 3SLicense
Default Resolution: 3SLicense, 0.0.0.0 (3S - Smart Software Solutions GmbH)
Namespace: _3S_LICENSE

9.1.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: False
• Key: 3SLicense
• SystemLibrary: True
• Optional: False

9.2 Breakpoint Logging Functions


9.2.1 Library Identification
Placeholder: BreakpointLogging
Default Resolution: Breakpoint Logging Functions, 3.5.5.0 (3S - Smart Software Solutions GmbH)
Namespace: BPLog

9.2.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: True
• Key: BreakpointLogging
• SystemLibrary: True
• Optional: False

42
WagoAppControlSuite, Release 1.0.1.4

9.3 CAA Types Extern


9.3.1 Library Identification
Placeholder: CAA Types
Default Resolution: CAA Types Extern, * (CAA Technical Workgroup)
Namespace: CAA

9.3.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: True
• Key: CAA Types
• SystemLibrary: False
• Optional: False

9.4 CmpIecTask
9.4.1 Library Identification
Placeholder: CmpIecTask
Default Resolution: CmpIecTask, * (System)
Namespace: CmpIecTask

9.4.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: False
• Key: CmpIecTask
• SystemLibrary: False
• Optional: False

9.5 IoStandard
9.5.1 Library Identification
Placeholder: IoStandard
Default Resolution: IoStandard, 3.5.9.0 (System)
Namespace: IoStandard

9.5.2 Library Properties


• LinkAllContent: True
• QualifiedOnly: False
• Key: IoStandard
• SystemLibrary: True
• Optional: False

9.6 Standard
9.6.1 Library Identification
Placeholder: Standard
Default Resolution: Standard, * (System)

9.3. CAA Types Extern 43


WagoAppControlSuite, Release 1.0.1.4

Namespace: Standard

9.6.2 Library Properties


• LinkAllContent: False
• Optional: False
• QualifiedOnly: False
• Key: Standard
• SystemLibrary: False
• PublishSymbolsInContainer: True

9.7 VisuElem3DPath
9.7.1 Library Identification
Placeholder: System_VisuElem3DPath
Default Resolution: VisuElem3DPath, 3.5.15.40 (System)
Namespace: VisuElem3DPath

9.7.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: False
• Key: System_VisuElem3DPath
• SystemLibrary: True
• Optional: False

9.7.3 Library Parameter


Parameter: GC_POINTS_PER_POLYGON = 100

9.8 VisuElemCamDisplayer
9.8.1 Library Identification
Placeholder: System_VisuElemCamDisplayer
Default Resolution: VisuElemCamDisplayer, 3.5.15.0 (System)
Namespace: VisuElemCamDisplayer

9.8.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: False
• Key: System_VisuElemCamDisplayer
• SystemLibrary: True
• Optional: False

9.8.3 Library Parameter


Parameter: GC_POINTS_PER_CAM = 100

9.7. VisuElem3DPath 44
WagoAppControlSuite, Release 1.0.1.4

9.9 VisuElemMeter
9.9.1 Library Identification
Placeholder: System_VisuElemMeter
Default Resolution: VisuElemMeter, 3.5.15.30 (System)
Namespace: VisuElemMeter

9.9.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: False
• Key: System_VisuElemMeter
• SystemLibrary: True
• Optional: False

9.10 VisuElemTextEditor
9.10.1 Library Identification
Placeholder: System_VisuElemTextEditor
Default Resolution: VisuElemTextEditor, 3.5.15.0 (System)
Namespace: VisuElemTextEditor

9.10.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: False
• Key: System_VisuElemTextEditor
• SystemLibrary: True
• Optional: False

9.11 VisuElemTrace
9.11.1 Library Identification
Placeholder: System_VisuElemTrace
Default Resolution: VisuElemTrace, 3.5.15.20 (System)
Namespace: VisuElemTrace

9.11.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: False
• Key: System_VisuElemTrace
• SystemLibrary: True
• Optional: False

9.12 VisuElemXYChart
9.12.1 Library Identification
Placeholder: System_VisuElemXYChart
Default Resolution: VisuElemXYChart, 3.5.15.0 (System)

9.9. VisuElemMeter 45
WagoAppControlSuite, Release 1.0.1.4

Namespace: VisuElemXYChart

9.12.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: False
• Key: System_VisuElemXYChart
• SystemLibrary: True
• Optional: False

9.13 VisuElems
9.13.1 Library Identification
Placeholder: System_VisuElems
Default Resolution: VisuElems, 3.5.15.30 (System)
Namespace: VisuElems

9.13.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: False
• Key: System_VisuElems
• SystemLibrary: True
• Optional: False

9.14 VisuElemsAlarm
9.14.1 Library Identification
Placeholder: System_VisuElemsAlarm
Default Resolution: VisuElemsAlarm, 3.5.15.0 (System)
Namespace: VisuElemsAlarm

9.14.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: False
• Key: System_VisuElemsAlarm
• SystemLibrary: True
• Optional: False

9.15 VisuElemsDateTime
9.15.1 Library Identification
Placeholder: System_VisuElemsDateTime
Default Resolution: VisuElemsDateTime, 3.5.15.10 (System)
Namespace: VisuElemsDateTime

9.15.2 Library Properties


• LinkAllContent: False

9.13. VisuElems 46
WagoAppControlSuite, Release 1.0.1.4

• QualifiedOnly: False
• Key: System_VisuElemsDateTime
• SystemLibrary: True
• Optional: False

9.16 VisuElemsSpecialControls
9.16.1 Library Identification
Placeholder: System_VisuElemsSpecialControls
Default Resolution: VisuElemsSpecialControls, 3.5.15.0 (System)
Namespace: VisuElemsSpecialControls

9.16.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: False
• Key: System_VisuElemsSpecialControls
• SystemLibrary: True
• Optional: False

9.17 VisuElemsWinControls
9.17.1 Library Identification
Placeholder: System_VisuElemsWinControls
Default Resolution: VisuElemsWinControls, 3.5.15.40 (System)
Namespace: VisuElemsWinControls

9.17.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: False
• Key: System_VisuElemsWinControls
• SystemLibrary: True
• Optional: False

9.18 VisuInputs
9.18.1 Library Identification
Placeholder: system_visuinputs
Default Resolution: VisuInputs, 3.5.15.0 (System)
Namespace: visuinputs

9.18.2 Library Properties


• LinkAllContent: False
• Optional: False
• QualifiedOnly: False
• Key: system_visuinputs
• SystemLibrary: True
• PublishSymbolsInContainer: True

9.16. VisuElemsSpecialControls 47
WagoAppControlSuite, Release 1.0.1.4

9.19 VisuNativeControl
9.19.1 Library Identification
Placeholder: System_VisuNativeControl
Default Resolution: VisuNativeControl, 3.5.15.0 (System)
Namespace: VisuNativeControl

9.19.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: False
• Key: System_VisuNativeControl
• SystemLibrary: True
• Optional: False

9.20 WagoAppProcessorLoad
9.20.1 Library Identification
Placeholder: WagoAppProcessorLoad
Default Resolution: WagoAppProcessorLoad, 1.0.0.2 (WAGO)
Namespace: WagoAppProcessorLoad

9.20.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: False
• Key: WagoAppProcessorLoad
• SystemLibrary: True
• Optional: False

9.21 WagoSysErrorBase
9.21.1 Library Identification
Placeholder: WagoSysErrorBase
Default Resolution: WagoSysErrorBase, * (WAGO)
Namespace: WagoSysErrorBase

9.21.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: False
• Key: WagoSysErrorBase
• SystemLibrary: False
• PublishSymbolsInContainer: True
• Optional: False

9.21.3 Library Parameter


Parameter: RES_LOG_MAX_FILESIZE = 2000

Parameter: RES_LOG_MAX_FILES = 1

9.19. VisuNativeControl 48
WagoAppControlSuite, Release 1.0.1.4

Parameter: RES_LOG_MAX_ENTRIES = 200

Parameter: RES_LOG_NAME = ‘WagoAppResultLogger’

9.22 WagoSysKbusTerminalControl
9.22.1 Library Identification
Placeholder: WagoSysKbusTerminalControl
Default Resolution: WagoSysKbusTerminalControl, 1.6.1.6 (WAGO)
Namespace: WagoSysKbusTerminalControl

9.22.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: False
• Key: WagoSysKbusTerminalControl
• SystemLibrary: True
• Optional: False

9.23 WagoSysStandard
9.23.1 Library Identification
Placeholder: WagoSysStandard
Default Resolution: WagoSysStandard, 1.6.0.0 (WAGO)
Namespace: WagoSysStandard

9.23.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: False
• Key: WagoSysStandard
• SystemLibrary: True
• Optional: False

9.24 WagoSysVersion
9.24.1 Library Identification
Name: WagoSysVersion
Version: 1.0.0.0
Company: WAGO
Namespace: WagoSysVersion

9.24.2 Library Properties


• LinkAllContent: False
• QualifiedOnly: False
• Key: WagoSysVersion, 1.0.0.0 (WAGO)
• SystemLibrary: False
• Optional: False

9.22. WagoSysKbusTerminalControl 49
WagoAppControlSuite, Release 1.0.1.4

9.25 WagoTypesErrorBase
9.25.1 Library Identification
Placeholder: WagoTypesErrorBase
Default Resolution: WagoTypesErrorBase, * (WAGO)
Namespace: WagoTypesErrorBase

9.25.2 Library Properties


• LinkAllContent: False
• Optional: False
• QualifiedOnly: True
• Key: WagoTypesErrorBase
• SystemLibrary: False
• PublishSymbolsInContainer: True
© WAGO Kontakttechnik GmbH & Co. KG, Germany 2018 – All rights reserved. For the avoidance of doubt,
this copyright notice does not only apply to the information above but also and primarily to the described library
itself. Please note that third-party products are always mentioned without reference to intellectual property rights,
including patents, utility models, designs and trademarks, accordingly the existence of such rights cannot be
excluded. WAGO is a registered trademark of WAGO Verwaltungsgesellschaft mbH.

9.25. WagoTypesErrorBase 50

You might also like