Main Content

Discrete-time DC-DC voltage PI control with feedforward and optional integral anti-windup

**Library:**Simscape / Electrical / Control / General Machine Control

The DC-DC Voltage Controller block implements discrete-time
proportional-integral (PI) DC-DC voltage control with feedforward,
*FF*. The feedforward input optimizes the transient response. The block
can output a duty cycle or a current control signal. To avoid saturation of the integral
gain, the block can implement anti-windup gain.

The equation that the DC-DC Voltage Controller block uses to calculate the control signal is

$control=\left({K}_{p}+{K}_{i}\frac{{T}_{s}z}{z-1}\right)\left({v}_{ref}-v\right)+FF,$

where:

*control*is the control signal, expressed as a duty cycle or a current.*K*is the proportional gain._{p}*K*is the integral gain._{i}*T*is the sample time._{s}*v*is the reference voltage._{ref}*v*is the measured voltage.*FF*is the feedforward input.

To avoid saturation of the integrator output, the block uses an anti-windup mechanism. The integrator gain is then equal to

$${K}_{i}+{K}_{aw}\left(contro{l}_{sat}-contro{l}_{unsat}\right),$$

where:

*K*is the anti-windup gain._{aw}*control*is the saturated control signal, which the block calculates as $contro{l}_{sat}=\text{min}\left(\mathrm{max}\left(contro{l}_{unsat},contro{l}_{min}\right),contro{l}_{max}\right),$_{sat}where:

*control*is the unsaturated control signal._{unsat}*control*is the lower limit for the control signal._{min}*control*is the upper limit for the control signal._{max}