|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
PID算法控制
, S0 J; b( P' N8 @从网上找的PID讲解, 感觉还不错,是基于电机的PID 控制讲的:: Z8 W1 }5 ~: h* {0 z; n+ O& ?. n
PID算法原理及调整规律
! j; x7 [" m. P/ r. X-、 PID算法简介+ ^) t( m( g+ C9 }( @$ H( n- t
首先必须明确PID 算法是基于反馈的。
6 K; ]3 h# k- j2 R一般情况下, 这个反馈就是速度传感器返回给单片机# A. `2 M& k7 F5 X" k& ]
当前电机的转速。简单的说,就是用这个反馈跟预设值进行比较,5 \7 d) q5 A( V% A$ e! s
如果转速偏大,就减小电# d5 l- D8 d) s% ^2 B
机两端的电压:相反,则增加电机两端的电压。& q: J- m6 r9 Q1 `
顾名思义,P指是比例( Proporion ),I指是积分( Integral ), D指微分( ifernial ).6 P8 I) R; K/ |7 a: X1 N
在电机调速系统中,输入信号为正,要求电机正转时,反馈信号也为正(. A9 ?1 _$ o6 p$ }1 d, R" ? ]
PID算法时,误差
" I5 t R& V7 c* L# E# x" `4 X=输入-反馈),同时电机转速越高,反馈信号越大.要想搞懂 X3 p" d+ S! z$ I0 I. K1 B% m, m
PID算法的原理,首先必须先/ {* x# h3 P2 E! K
明白RI.D 各自的含义及控制规律:- L' O: j& F# d: `- X6 F8 p
2比例P:比例项部分其实就是对预设值和反馈值差值的发大倍数。举个例子,假如原来! K# j' X0 D4 K; C
电机两端的电压为UO, 比例P为0.2,输入值是800, 而反馈值是1000, 那么输出到电机两1 @& @* y8 q. U# Z4 `
端的电压应变为U0+0.2* ( 800-1000).从而达到了调节速度的目的。显然比例
/ ^: s# O; v s' m6 j8 X0 DP越大时,电( z' k6 |. J+ {! G
机转速回归到输入值的速度将更快,及调节灵敏度就越高。
$ _6 o4 b; u$ W! T" O从而,加大P值,可以减少从非
. R% j9 q. w/ _4 ^& p5 I( t: A稳态到稳态的时间。但是同时 也可能造成电机转速在预设值附近振荡的情形,8 O5 @, |$ j, ^' G z) P8 v
所以又引入积0 ]. E: K* E+ E- Y8 C1 D
分1解决此问题。.
4 F0 Z& B4 c: R2 q" x+ S# H2积分 l: 顾名思义,积分项部分其实就是对预设值和反馈值之间的差值在时间上进行累
1 D+ ~) ~. T+ u( ^加。当差值不是很大时,
- O2 b# C3 o. t6 B为了不引起振荡。可以先让电机按原转速继续运行。当时要将这个
( [ Q D B3 \% x; w差值用积分项累加。当这个和 累加到- -定值时,% X5 l2 X8 ~. D; w% L7 Z1 D- |
再一次性进行处理。从而避免 了振荡现象的
0 C1 f7 l7 B n# Z9 a( L/ Z0 E5 Z3 H发生。可见,积分项的调节存在明显的滞后。而且./ n8 a, i; h9 X3 r
I值越大,滞后效果越明显。
3 k$ k, X+ w# ]* D8 j, K8 f2微分 D:微分项部分其实就是求电机转速的变化率。也就是前后两次差值的差而已.也
* U/ l, u9 X, A# y就是说,微分项是 根据差值变化的速率,
g% p5 u: f4 `提前给出- -个相应的调节动作。6 u! \7 K7 [ s c
可见微分项的调节
/ x8 D q) z4 y- N! n是超前的。并且D 值越大,超前作用越明显。可以在一定程度上缓冲振荡。比例项的作用
2 w Y" I) z. e, a仅是放大误差的幅值,而目前需要增加的是“微分项”, 它能预测误差变化的趋势,这样,
$ e' W! ^% a) ?& F具有比例+微分的控制器,就能够提前使抑制误差的控制作用等于零,甚至为负值,从而避
) t. T, i0 {6 j$ x免了被控量的严重超调。
& q3 _( s/ C4 G3 o二、参数调整一般规则
- A1 o0 U; ]/ e) \ U' d9 }由各个参数的控制规律可知,比例- M+ a2 w2 ^5 o
P使反应变快,微分D 使反应提前,积分1 使反应滞后。1 X; U& F0 H& m* C6 H. ]( K8 D- ]
在一-定范围内,P, D值越大,调节的效果越好。各个参数的调节原则如下:
, h1 N5 F" B- Q: C+ O0 Q% TPID调试一般原则
0 @ _- l7 C- t在输出不振荡时,增大比例增盛
1 r3 E# d7 F& t6 e& S/ h \, s在输出不振荡时,减小积分时间常数' Q P8 R9 k1 ^7 Z3 _! ^
Ti.2 \' X/ q7 A) L, n
输出不振荡时,增大微分时间常数* Y1 M4 |/ ~4 _- v+ q8 I# r
Td.5 i: f1 _( O; z7 A9 i1 ]4 p
, P3 r; H* r. T) n
2 D7 F; k% g9 t4 O6 o* Y |
|