365 err = 0; |
365 err = 0; |
366 P_err = err; |
366 P_err = err; |
367 I_err += unit->PID_err_old; |
367 I_err += unit->PID_err_old; |
368 D_err = err - unit->PID_err_old; |
368 D_err = err - unit->PID_err_old; |
369 |
369 |
370 Out = 0.1*P_err + 0.3*I_err + 0.02*D_err; |
370 Out = (0.1*P_err) + (0.3*I_err) + (0.02*D_err); |
|
371 // Kp Ki Kd |
371 if (debug) |
372 if (debug) |
372 fprintf(stdout, "sp=%.2f pv=%.2f err_old=%.2f err=%.2f P_err=%.2f I_err=%.2f D_err=%.2f Out=%.2f\n", |
373 fprintf(stdout, "sp=%.2f pv=%.2f err_old=%.2f err=%.2f P_err=%.2f I_err=%.2f D_err=%.2f Out=%.2f\n", |
373 sp, pv, unit->PID_err_old, err, P_err, I_err, D_err, Out); |
374 sp, pv, unit->PID_err_old, err, P_err, I_err, D_err, Out); |
374 } |
375 } |
375 |
376 |