Controller
The purpose of the controller is to operate on the basis of the set velocity differences (following error) or other set magnitudes (acceleration) in such a way that the following error is kept as small as possible and that the axis does not undergo any overshoots in position or velocity. A wide variety of controller versions is supported. Servo position controllers and special controllers for particular types of axis are available.
Controller types
Two different types of controller can be chosen: position controllers (controllers whose task is to control the actual position in such a way that it follows the set position as precisely as possible) and controllers for special axes (high/low speed axes, stepper motor, SERCOS). The way in which the controller operates is described under the position control loop topic. Positions controller types: position controller P; following error proportional controller. Position controller with two P-constants: following error proportional controller with different constants for the stationary state and for movement. Position controller PID: position PID-T1 controller with proportional acceleration feed forward.
Automatic DAC offset adjustment
Any controller with no I component has automatic DAC offset adjustment as an option. This adjustment is only active when the velocity feed forward of the axis falls below a certain magnitude. This prevents it from being affected by the dynamic behaviour of the axis. If the axis is subject to position control (or is moving at a suitably low-velocity) an offset velocity is generated by integrating the control velocity. This is added to the output. The negative feedback of the position control loop results in a PT1 behaviour, which means that an exponential function is created.
Offset calibration parameters
Parameter | Data type | Unit | Description |
---|---|---|---|
Offset filter time | double | s | Time constant for the offset calibration |
Offset limit | double |
| Relative control, above which the offset is kept constant. |
If necessary, it is possible to affect the behavior of the offset calibration at runtime. A range of "switches" is available for this: for instance, at runtime the PLC or another ADS device can modify the parameters for the time constants and the pre-control limit.
If necessary, the offset calibration can be entirely switched off. In this case it will not always be possible to avoid a jump in the output voltage. Soft deactivation can be achieved with "fade out". This will reduce the adjustment to zero over time following its own curve. "Hold" mode can be activated if the adjustment is to be kept steady for a period of time. This can, for instance, be used if the power section of the drive is to be stopped temporarily. If the adjustment were to remain active, it would be impossible for the offset not to run out of control.
Acceleration feed forward
In addition to proportional feedback of the following error, nearly all position controllers contain a proportional acceleration feed forward (the Ka factor). This should normally be used only in association with the proportional component (Kv factor) of the position controller. It is necessary that the axis is adjusted for strict symmetry:
- when stationary, the following error is symmetrical about 0 (DAC offset).
- when moving steadily the following error is symmetrical about 0 (reference velocity).
- Set Kv.
- Measure the extreme value of the acceleration (deceleration) a+max (a-max), and the associated following error d+max (d-max) in the middle of the accelerating/braking phase.
- Ka+ = Kv · d+max / a+max
Ka- = Kv· d-max / a-max
Ka= (Ka+ + Ka-) / 2
Global parameters for a controller
Controller parameters
Parameter | Data type | Unit | Description |
---|---|---|---|
CONTROLLER mode | ENUM |
| Controller mode: only STANDARD is possible. |
Weighting | float >=0 |
| Relative weighting of the pre-control. |
OPERATION MODE: position lag monitoring | BOOL |
| The default value of 1.0 corresponds to 100 % pre-control weighting. |
Maximum position lag | float >=0 | mm | Maximum permitted position lag. |
Maximum position lag error filter time | float >=0 | s | If the position lag exceeds the maximum permitted position lag error for a period of time that is longer than the maximum lag error filter time, and if the monitoring is active, the axis will be stopped instantaneously through a voltage output of 0 V and placed in the logical "error" state. |
Position P controller
Controller parameters
Parameter | Data type | Unit | Description |
---|---|---|---|
Position control: proportional factor Kv | float >=0 | [mm/s]/mm | Proportional gain of the P component. Output velocity = pre-control velocity + Kv· lag error. |
OPERATION MODE: automatic offset calibration | BOOL |
| Activation or deactivation of the automatic offset calibration. The automatic offset calibration is only active in the range of the relative pre-control velocity defined by [-Offsetlimit,+Offsetlimit]. It calculates and activates a DAC offset that minimizes the lag error in the position control. |
Offset filter time | float >=0 | s | Integrator time constant. |
Offset limit | float >=0 |
| The upper limit of the active range of the offset calibration as a relative proportion of the output magnitude. |
Position PP controller
Controller parameters
Parameter | Data type | Unit | Description |
---|---|---|---|
Standstill: proportional factor Kvs | float >=0 | [mm/s]/mm | Proportional gain of the P component when stationary. Output velocity when stationary = pre-control velocity + Kvs lag error |
Position control travel: | float >=0 | [mm/s]/min | Proportional gain of the P component when moving. |
Position control: | float >=0 |
| Output velocity when moving = pre-control velocity + Kvf lag error. |
OPERATION MODE: automatic offset calibration | BOOL |
| Activation or deactivation of the automatic offset calibration. The automatic offset calibration is only active in the range of the relative pre-control velocity defined by [-Offsetlimit,+Offsetlimit]. It calculates and activates a DAC offset that minimizes the lag error in the position control. |
Offset filter time | float >=0 | s | Integrator time constant. |
Offset limit | float >=0 |
| The upper limit of the active range of the offset calibration as a relative proportion of the output magnitude. |
Acceleration pre-control proportional factor Ka | float >=0 | s | Output velocity component = Ka set acceleration. |
Example
A PP controller uses two P constants Kvs and Kvf and a velocity threshold Vdyn to define a function for a velocity dependent kv factor. The velocity threshold Vdyn is a relative value, calculated as SetVelocity / ReferenceVelocity.
The diagram below shows the connection

The sample is parameterized with Kvs = 50, Kvf = 10 and Vdyn = 0,2.
Position PID controller
Controller parameters
Parameter | Data type | Unit | Description |
---|---|---|---|
Position control: proportional factor Kv | float >=0 | [mm/s]/mm | Proportional gain of the P component. Output velocity = pre-control velocity + Kv lag error. |
Position control: | float >=0 | s | Integral action time of the I component (integration time) |
Position control: rate time Tv | float >=0 | s | Rate time of the real D component (D-T1 component). |
Position control: damping time Td | float >=0 | s | Damping time of the real D component (D-T1 component). |
OPERATION MODE: automatic offset calibration | BOOL |
| Activation or deactivation of the automatic offset calibration. The automatic offset calibration is only active in the range of the relative pre-control velocity defined by [-Offsetlimit,+Offsetlimit]. It calculates and activates a DAC offset that minimizes the lag error in the position control. |
Offset filter time | float >=0 | s | Integrator time constant. |
Offset limit | float >=0 |
| The upper limit of the active range of the offset calibration as a relative proportion of the output magnitude. |
Position control: acceleration pre-control Ka | float >=0 | s | Output velocity component = Ka · set acceleration. |
Controllers for special axes types (high/low speed, stepper motors, SERCOS)
Controller parameters
Parameter | Data type | Unit | Description |
---|---|---|---|
CONTROLLER mode | ENUM |
| Controller mode: only STANDARD is possible. |
Weighting of the pre-control | float >=0 |
| Relative weighting of the pre-control. |
OPERATION MODE: position lag monitoring | BOOL |
| The default value of 1.0 corresponds to 100 % pre-control weighting. |
Maximum position lag | float >=0 | mm | Maximum permitted position lag. |
Maximum position lag error filter time | float >=0 | s | If the position lag exceeds the maximum permitted position lag error for a period of time that is longer than the maximum lag error filter time, and if the monitoring is active, the axis will be stopped instantaneously through a voltage output of 0 V and placed in the logical "error" state. |
Delay time compensation
For every controller at there is an option of compensation for the delay between the time when a set value is output and the time when it has an effect. Here, the set position is delayed by an adjustable time in comparison with the set velocity. The delay time compensation is an element in the set value generator for an axis.