.Modelica_Synchronous.WorkInProgress.Incubate.PID

Information

This block defines a text-book version of a discrete-time PID controller by the formula:

// Transfer function form:
   G(z) = (b0*z^2 + b1*z + b2) / (z^2 - z);
   b0 = k*(1 + T/Ti + Td/T)
   b1 = -k*(1 + 2*Td/T)
   b2 = k*Td/T

where k is the gain of the controller, Ti is the time constant of the integrative part, Td is the time constant of the derivative part, and T is the sample period.

This discrete-time form has been derived from the continuous-time form of a PID controller by using the backward rectangular approximation (also called backward euler method or right-hand approximation) between the s- and z- domain:

   s = (z - 1)/(h*z)

Generated at 2024-11-23T19:25:52Z by OpenModelicaOpenModelica 1.24.2 using GenerateDoc.mos