Star Hype News.

Premium celebrity moments with standout appeal.

news

Reverse engineering a PID controllers parameters

By John Thompson
$\begingroup$

In an attempt to copy an existing PID controller, I wish to identify the active PID controllers parameters.

I found this formula for discrete PID controllers, like the one I want to build.

$$ u(k) = u(k-1) + K_{R} \cdot \left(1+ \frac{T_{0}}{2 \cdot T_{I} }+ \frac{T_{D}}{T_{0}}\right) \cdot e(k) -K_{R} \cdot \left(1 -\frac{T_{0}}{2 \cdot T_{I} } +\frac{2 \cdot T_{D}}{ T_{0}} \right) \cdot e(k-1) + K_{R} \cdot \frac{T_{D}}{T_{0}} \cdot e(k-2) $$where

  • $u(k)$ is the control variable
  • $u(k-1)$ is the previous control variable
  • $K_{R}$ is the gain factor
  • $T_{0}$ is the sampling time
  • $T_{I}$ is the integral time
  • $T_{D}$ is the derivative time
  • $e(k)$ is the error

To identify the right parameters $T_{I}$, $T_{D}$, and $K_{R}$ for the right sampling time $T_{0}$ I could just analyse the data, find the values for the error and the control variable with a sampling time in between, solve the equation, and then I'd have the parameters. However, the sampling time in between data measurements is inconsistent, so I don't really know how to calculate this.

If, for example, the data would be as follows

  • Second = 0, control variable = 50, error = 10
  • Second = 15, control variable = 55, error = 8
  • Second = 18, control variable = 56, error = 7

How can I solve this equation for $T_{I}$, $T_{D}$ and $K_{R}$ ?

$\endgroup$ 7 Reset to default

Know someone who can answer? Share a link to this question via email, Twitter, or Facebook.

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy