链接
只有p调节的讲解代码
链接
这个只有位置式PID控制,没有电机具体是怎么转的,而且注意静态变量的使用。
设置参数时:
平衡车的工程经验是ki=kp/200;
代码参考:encoder实际值int Position_PID (int Encoder,int Target)
{static float Bias,Pwm,Integral_bias,Last_Bias;
Bias=Encoder-Target;
//计算偏差
Integral_bias+=Bias;
//求出偏差的积分Pwm=Position_KP*Bias+Position_KI*Integral_bias+Position_KD*(Bias-Last_Bias);
//位置式PID控制器
Last_Bias=Bias; //保存上一次偏差
return Pwm; //增量输出}