Lines Matching +full:tuning +full:- +full:step
40 * PID (Proportional-Integral-Derivative) controller is commonly used in
50 * y[k] = y[k-1] - kp*(x[k] - x[k-1]) + Ki*Ts*e[k] - Kd*(x[k]
51 * - 2*x[k-1]+x[k-2])/Ts
57 static double xk_1, xk_2; /* input temperature x[k-#] */
61 * 1. use CPU burn to produce open loop unit step response
62 * 2. calculate PID based on Ziegler-Nichols rule
64 * add a flag for tuning PID
72 /* TODO: get it from TUI tuning tab */ in init_thermal_controller()
85 syslog(LOG_DEBUG, "TC inactive, relax p-state\n"); in controller_reset()
93 * y[k] = y[k-1] - kp*(x[k] - x[k-1]) + Ki*Ts*e[k] - Kd*(x[k]
94 * - 2*x[k-1]+x[k-2])/Ts
103 ek = p_param.t_target - xk; /* error */ in controller_handler()
112 p_term = -p_param.kp * (xk - xk_1); in controller_handler()
114 d_term = -p_param.kp * p_param.kd * (xk - 2 * xk_1 + xk_2) / p_param.ts; in controller_handler()
122 if (*yk < -LIMIT_HIGH) in controller_handler()
123 *yk = -LIMIT_HIGH; in controller_handler()
124 else if (*yk > -LIMIT_LOW) in controller_handler()
125 *yk = -LIMIT_LOW; in controller_handler()