赞
踩
PID控制,即为对偏差进行比例、积分和微分控制。由三个元素构成:比例(P),积分(I),微分(D)
工程中P必然存在,在P的基础上又有如PI控制(比例积分),PD控制(比例微分),PID控制(比例积分微分)。
比例项:提高响应速度,减小静差。
积分项:消除稳态误差。
微分项:减小震荡以及超调。
位置式PID是根据编码器的脉冲累加测量电机的位置信息,并与目标值进行比较,得到控制偏差,然后通过对偏差的比例、积分、微信进行控制,使偏差趋向于零的过程。
PWM_out=Kp×e(k)+Ki×Σe(k)+Kd×[e(k)-e(k-1)]
3.结构框图
- int Position_PID(int Encoder, int Target)
- {
- static float Bias, PWM_out, Integral_bias, Last_bias;
- Bias = Encoder-Target; // 计算偏差
- Integral_bias += Bias; // 计算偏差的积分
- // 位置式PID控制器公式
- PWM_out = Position_Kp*Bias+Position_Ki* Integral_bias+ Position_KD*(Bias- Last_bias)
- Last_bias = Bias; // 保存上一次偏差
- return PWM_out; // 输出
- }
小车往那边倒,车轮就往哪边开,这样就可以保持车子的平衡。
a=b1×θ+b2×θ’
比例微分控制【PDout=Kp×Angle+Kd×(Angle- Angle_last)】
通过速度反馈使得小车保持平衡。
① 【PD控制器】直立环输出=Kp1×角度偏差+Kd×角度偏差微分
(角度偏差=真实角度-期望角度)
② 【PI控制器】速度环输出=Kp2×编码器偏差+Ki×编码器偏差的积分
(编码器偏差=反馈编码器值-期望编码器值)
【Notes:(1)速度环输出=直立环的期望角度;(2)Kp1:直立环Kp;(3)Kp2:速度环Kp】
③ 串级输出out=Kp1×真实角度+Kd×角度偏差的微分-Kp1×(Kp2×编码器偏差-Ki×编码器偏差的积分)
注:平衡小车更多教程关注我的专栏---平衡小车
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。