智能车制作

标题: 问一个PID的问题 [打印本页]

作者: chihua    时间: 2010-8-13 11:34
标题: 问一个PID的问题
本帖最后由 chihua 于 2010-8-13 11:37 编辑

刚刚看了华中科技大学第一届的一个程序。里面有个PID的函数。D参数是下面的式子:

/* D parameter */ <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com[img][/img]

/* D parameter */ <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com[img][/img]

D = Kd * ( CarState.E0 + 3*CarState.E1 - 3*CarState.E2 - CarState.E3 )/6.0;

CarState.E3 = CarState.E2;

CarState.E2 = CarState.E1;

CarState.E1 = CarState.E0;

return (P+I+D);

其中:

D = Kd * ( CarState.E0 + 3*CarState.E1 - 3*CarState.E2 - CarState.E3 )/6.0;

我对其不太理解。请教大侠们


作者: chihua    时间: 2010-8-13 11:58
我想知道上面的这个跟 D=Kd*(CarState.E0 -2*CarState.E1+*CarState.E2 )/2  有什么区别。
作者: zouyf12    时间: 2010-8-13 12:14
LZ也知道的这个是增量式PID里的D ,只不过传统的是把3次偏差来做差,而程序里的是拿4次的偏差来做差罢了,  估计由于控制周期快或者传感器精度问题,所以去一个比较长时间段内的偏差来控制
作者: chihua    时间: 2010-8-13 12:24
回复 3# zouyf12


    谢谢 。
作者: zh1992    时间: 2011-4-17 22:17
我想知道PID里的e 就是偏移量怎么测  用来计算舵机的摆脚的、
作者: 沙漠中的鱼DL    时间: 2011-4-22 13:06
应该是E=K(e+积分+微分)部分的!
作者: 诗雨依然    时间: 2011-4-23 16:47





欢迎光临 智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2