Код: Выделить всё
"PID_P" := "DB_MAIN".Kp * (#E - "E_1");
"PID_I" := "DB_MAIN".Ki * #E;
"PID_D" := "DB_MAIN".Kd * (#E - 2 * "E_1" + "E_2");
IF "V_PPO_PID" + "PID_P" + "PID_I" + "PID_D" > "DB_MAIN".V_PID_max THEN
"V_PPO_PID" := "DB_MAIN".V_PID_max;
ELSE
IF "V_PPO_PID" + "PID_P" + "PID_I" + "PID_D" < (- "DB_MAIN".V_PID_max) THEN
"V_PPO_PID" := - "DB_MAIN".V_PID_max;
ELSE
"V_PPO_PID" := "V_PPO_PID" + "PID_P" + "PID_I" + "PID_D";
END_IF;
END_IF;