PID制御計算用ライブラリ
Dependents: ROBOCON2017_archan ROBOCON2017_suchan
Diff: cal_PID.cpp
- Revision:
- 1:f1f6c98a4b12
- Parent:
- 0:52549f6dd024
- Child:
- 2:e340bdcb9bca
--- a/cal_PID.cpp Fri Aug 26 11:30:08 2016 +0000 +++ b/cal_PID.cpp Wed Sep 28 01:42:33 2016 +0000 @@ -32,7 +32,7 @@ past_error=0; integral_error=0; } -signed long cal_pid::get_pid(signed long position,signed long targ){ +signed long cal_pid::get_pid(signed long position,signed long targ,int rd){ error=targ-position; integral_error+=error*control_period; differential_error=(error-past_error)/control_period; @@ -41,6 +41,7 @@ i_part=integral_error*i_gain; d_part=differential_error*d_gain; operate=p_part+i_part+d_part; + operate*=rd; if(operate<output_min)operate=output_min; else if(operate>output_max)operate=output_max;