PID
P、I、D是什麼?
概念
float Kp = 1;
float Ki = 0.01;
float Kd = 0.1;
float total_error = 0;
float prev_error = 0;
void PID(target_value) {
float actual_value = sensor.get(); // depends on whether you use PROS or Okapilib
float error = actual_value - target_value;
total_error += error;
float deriv_error = error - prev_error;
float output = Kp * error + Ki * total_error + Kd * deriv_error;
motor.moveVoltage(output); // depends on whether you use PROS or Okapilib
prev_error = error;
}如何調整PID參數
範例
使用PID控制底盤前進Last updated