Discrete-time PID controller

PID_dt.sq

The PID controller is fundamentally a continuous-time controller. However, it is often implemented with discrete-time electronic devices (such as microcomputers, microcontrollers or fpga's). Sampling effects may change performance in subtle ways, especially when the sample frequency is not very high with respect to the bandwidth of the controlled system. Instead of converting a continuous-time PID controller, it is possible to design a PID directly in the discrete-time domain, approximating the integration and derivation by sums and differences, respectively. The parameters of the PID keep their standard meaning. PID_dt.sq does for discrete-time PID controllers what PID_ct.sq does for continuous-time PID controllers. The transfer function K(z) of the PID is

K(z)=kp(1+Ts/Ti(z-1)+Td(z-1)/Ts.z)

where Ts is the sample time.

Figures

The figures are the same as those defined for RST_dt.sq, except for the Open-Loop Zeros and Poles and the Closed-Loop Poles which are not defined.

Settings

The System (continuous-time model), System (discrete-time model), Sample Time, and Damping Specification have the same effect as the corresponding menu entries defined in RST_dt.sq. Two new entries are defined.

PID Coefficients

The three parameters of the PID (kp, Ti and ) can be edited in a dialog box. For P, PI, or PD controllers, set the parameter of the missing component to the empty matrix [].

No Derivator On Reference

When the input of the PID controller is the error between the set-point and the measured output, discontinuities of the set-point are derived by the derivator component of the PID and yield infinite values (or very large values in the case of a discrete-time PID controller) for the control signal. To avoid that, the set-point is usually not derived. The control signal is

u(k)=kp(e(k)+sum(e(k))Ts/Ti)-kp.Td/Ts(y(k)-y(k-1)))


Copyright 1998-2001, Calerga.

All rights reserved.