|
|
actual=0;%实际值1 W c' u! _1 p% E4 Y" N
lasterr=0;%上一个偏差值\
. D3 A7 g5 R8 K0 c( nintegral=0;%累计偏差
3 @, ?5 W: u2 k( T/ B. B" q3 Dkp=1;%比例系数
) }, [$ a3 A; K5 Y2 h# }& ]' ^7 [ki=0.1;%积分系数5 G% z8 W7 K1 V9 B; ^/ g/ U5 W
kd=0.01;%微分系数. p) N; u' k5 {6 Q Y; a' N
for count=1:1:200%采样两百次, ^# n* \, n I2 I1 [; _# ~
set=45;%设定值458 Q) [- }, c! n5 u7 K
err=set-actual;%偏差值
0 ^/ J- b* ~8 }* n- g u(count)=kp*err+ki*integral+kd*(err-lasterr);
- P$ |0 L9 Q) p integral=integral+err;%累计误差* t! |, i( G# Y! Y+ F8 x
lasterr=err;
+ C8 C$ Q* Q7 d: Aend1 C/ u$ \7 m0 e6 b+ h4 ~" l
count=1:1:200;
* O6 a' B6 d# e. @# [( @ A4 X3 wplot(count,u) |
|