找回密码
 注册
关于网站域名变更的通知
查看: 447|回复: 4
打印 上一主题 下一主题

PID算法

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-9-22 14:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
关于离散PID的大量程序中的P,I,D,参数初始值不明白怎么来的。求助大神!
8 @! x5 Y1 e/ d1 y. lclear all;
% h! T7 B9 {1 x9 kclose all;4 T+ t# k1 J) T- F, F4 b! F) a
ts=0.001;
& ~, c5 E/ B6 H+ i, O% ^sys=tf(400,[1,50,0]);
5 U( X3 @$ g( P& r! c9 D# Qdsys=c2d(sys,ts,'z');
# h( m+ P9 X3 y( f% n4 o3 S4 q[num,den]=tfdata(dsys,'v');
- [3 {" @( M. M. W9 vu_1=0.0;u_2=0.0;u_3=0.0;
) A) z4 ?0 \: h  Y; k- q2 H, fy_1=0;y_2=0;y_3=0;
! J$ w) M# h! j1 ox=[0,0,0]';) A$ a& |: o3 q* U# I6 A
error_1=0;
0 y. b  Z) O6 U, j! B3 `error_2=0;! l. b0 X' h- P# t
for k=1:1:1000/ s& T* N: ~+ Z3 l
   time(k)=k*ts;
" j3 v, A0 U! n: [/ m1 \8 L   
8 O# o9 j7 U2 {   yd(k)=1.0;
" n4 {. H6 s3 |9 a6 p" i; N% Y   kp=8;$ R/ r" x5 l0 d/ E0 l9 N
   ki=0.10;(请问这三个参数的初始值怎么确定的)
: T& Q; [9 a8 A/ C   kd=10;
- Z/ R1 N, W! e, H3 A   
* G- H+ h! T* d5 E   du(k)=kp*x(1)+kd*x(2)+ki*x(3);
  d' ^  e: K2 u   u(k)=u_1+du(k);
, ]3 q7 j1 h2 i3 j( q   if u(k)>=10; P5 r) V3 R9 a8 c
      u(k)=10;0 T- @9 S/ |( ?) m1 l
   end
' `. [% x) `5 k) G7 v1 d! Z   if u(k)<=-10
: T: U9 n1 H% h' i, R/ L, o      u(k)=-10;0 h( _) E1 E' U
   end   * |9 N% ~6 k# g, Y9 ]
   y(k)=-den(2)*y_1-den(3)*y_2+num(2)*u_1+num(3)*u_2;5 i1 u  |% P& K) e
   3 y7 P$ i/ w/ Q% |
   error=yd(k)-y(k);
* C% s! p2 w4 P8 o- v. w   u_3=u_2;u_2=u_1;u_1=u(k);
' [& U1 M& g# f$ X; e+ s   y_3=y_2;y_2=y_1;y_1=y(k);
0 K4 G! ?  G# u( @8 m( S3 p% P   - ?; k- x# Y0 Q) H2 ]- v
   x(1)=error-error_1;             %Calculating P
* L2 f: j5 N5 w   x(2)=error-2*error_1+error_2;   %Calculating D# r( Z! K% z$ ?" _
   x(3)=error;                     %Calculating I6 {  C" E# F9 ?
   
" ^5 G# P7 T6 I# }5 A# Z7 U   error_2=error_1;4 z% ~0 M" [, n+ @0 g9 p
   error_1=error;" ?( Q: H2 l& E5 u
end2 R/ O& ]* q5 ~+ f9 E1 m3 t& w6 h. |
figure(1);
! a* p- \3 X& S* _  lplot(time,yd,'r',time,y,'k:','linewidth',2);2 V! m# D  U/ [- @8 X) W9 H3 e
xlabel('time(s)');ylabel('yd,y');  O9 ?( H' ?0 `- K3 z5 I: ^: ]! K
legend('Ideal position signal','Position tracking')+ |/ r2 `) X  q% @- q1 |' ~: j5 S

该用户从未签到

2#
发表于 2020-9-22 14:29 | 只看该作者
根据经验确定,然后再根据实际图像进行调整

该用户从未签到

3#
发表于 2020-9-22 14:39 | 只看该作者
我一般都是再试

该用户从未签到

4#
发表于 2020-9-22 14:50 | 只看该作者
这个很难说,就是经验
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-27 18:02 , Processed in 0.109375 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表