智能车制作

标题: 各路大神,pid分位置式和增量式,到底有毛区别啊?? [打印本页]

作者: 释是圣杰    时间: 2013-11-28 09:32
标题: 各路大神,pid分位置式和增量式,到底有毛区别啊??
也是做过智能车一年的人了,不过现在对于这两种pid调节比较纠结,哪位大神能够拿电机调速来为例子来谈谈这么个问题啊??

作者: rubick    时间: 2013-11-28 11:35
想象一个滑块套在一根杆子上,能自由滑动。
如果我用一个弹簧固定住它,那么它只要离开平衡位置,就有一个回复力。
这就是位置式P控制,劲度系数就是P。
其特性是,如果受到一个稳定的干扰,例如有风一直吹着滑块,
最后滑块不会稳定在初始位置,有一个静态误差。

相对的,增量式只要最终稳定下来,一定是稳定在平衡位置的。
增量式是只要与平衡位置还有偏差,就加大回复力,
位置式是,回复力与偏差成正比。

作者: Jyoun    时间: 2013-11-28 13:36
rubick 发表于 2013-11-28 11:35
想象一个滑块套在一根杆子上,能自由滑动。
如果我用一个弹簧固定住它,那么它只要离开平衡位置,就有一个 ...

你说的那个“增量”是类似积分项的累加,和积分项作用类似,可以消除静差。。我知道的增量式是临近两次位置式相减,即每次调节的参考是上一次,即输出与输入的增量有关。
作者: rubick    时间: 2013-11-28 16:37
Jyoun 发表于 2013-11-28 13:36
你说的那个“增量”是类似积分项的累加,和积分项作用类似,可以消除静差。。我知道的增量式是临近两次位 ...

不对吧?“即输出与输入的增量有关。”

那输入无变化,输出岂不是为零?

作者: Jyoun    时间: 2013-11-28 19:09
rubick 发表于 2013-11-28 16:37
不对吧?“即输出与输入的增量有关。”

那输入无变化,输出岂不是为零?

我认为是这样的,输入变化,增量式才会有输出。你说的“位置式”实际是pid位置式的pd(比例微分)部分,这样会有静差,比如弹簧振子因为摩擦力回不到中心位置。加上i,积分环节后,只要有偏差,偏差积分就会不断增大,最终使振子克服摩擦力回到中心位置。增量式是两次位置式之差,近似约分之后剩下部分其实就是位置式中d环节的两次之差,所以说增量式不存在积分饱和(别处看到),因为积分部分在增量式里边被近似的约掉了(两次的积分很接近),只剩d3-2d2+d1,其作用我觉得应该跟位置式中的d类似。

作者: Jyoun    时间: 2013-11-28 19:17
rubick 发表于 2013-11-28 16:37
不对吧?“即输出与输入的增量有关。”

那输入无变化,输出岂不是为零?

我也不知道是我理解不对还是怎么,师兄也说有累加的就是增量式,但是我查阅相关资料后,我觉得累加只是pid的i积分环节啊,只是不同的累加方式有不同的积分效果,我看到的资料基本都是说的两次位置式之差就是增量式。
作者: rubick    时间: 2013-11-28 19:17
Jyoun 发表于 2013-11-28 19:09
我认为是这样的,输入变化,增量式才会有输出。你说的“位置式”实际是pid位置式的pd(比例微分)部分,这 ...

不对哟!是这样的:


位置式P控制:
output = (expect-input)*P;
增量式P控制:
output=0;
output+= (expect-input)*P;


就这么简单。

作者: Jyoun    时间: 2013-11-28 19:21
rubick 发表于 2013-11-28 19:17
不对哟!是这样的:

你这个前者是偏差,后者是偏差积分。分别对应pid控制的p和i,实际pid是三个同时使用的,你还有微分没有用上。
作者: Jyoun    时间: 2013-11-28 19:22
rubick 发表于 2013-11-28 19:17
不对哟!是这样的:

你这个前者是偏差,后者是偏差积分。分别对应pid控制的p和i,实际pid是三个同时使用的,你还有微分没有用上。
作者: rubick    时间: 2013-11-28 20:15
Jyoun 发表于 2013-11-28 19:22
你这个前者是偏差,后者是偏差积分。分别对应pid控制的p和i,实际pid是三个同时使用的,你还有微分没有用 ...

位置式PID控制:
output = (expect-input)*P + (input-input_last)*D + (sum(expect)-sum(input))*I;
增量式PID控制:
output=0;
output+= (expect-input)*P + (input-input_last)*D + (sum(expect)-sum(input))*I;

后面是一样的,增量式或位置式,只针对P控制。

作者: Jyoun    时间: 2013-11-28 20:25
rubick 发表于 2013-11-28 20:15
位置式PID控制:
output = (expect-input)*P + (input-input_last)*D + (sum(expect)-sum(input))*I;
增 ...

嗯,师兄他们就差不多是这样用的,但是他们没有用积分项,我也没看出这样处理跟积分项的区别。
作者: 释是圣杰    时间: 2013-11-28 23:35
rubick 发表于 2013-11-28 11:35
想象一个滑块套在一根杆子上,能自由滑动。
如果我用一个弹簧固定住它,那么它只要离开平衡位置,就有一个 ...

谢谢啦、、、不过还是有些晕
作者: 释是圣杰    时间: 2013-11-28 23:37
Jyoun 发表于 2013-11-28 13:36
你说的那个“增量”是类似积分项的累加,和积分项作用类似,可以消除静差。。我知道的增量式是临近两次位 ...

谢谢。。。还是不太明白

作者: 释是圣杰    时间: 2013-11-28 23:39
Jyoun 发表于 2013-11-28 19:09
我认为是这样的,输入变化,增量式才会有输出。你说的“位置式”实际是pid位置式的pd(比例微分)部分,这 ...

谢谢

作者: 释是圣杰    时间: 2013-11-28 23:43
rubick 发表于 2013-11-28 20:15
位置式PID控制:
output = (expect-input)*P + (input-input_last)*D + (sum(expect)-sum(input))*I;
增 ...

谢谢!!1

作者: 释是圣杰    时间: 2013-11-28 23:47
Jyoun 发表于 2013-11-28 20:25
嗯,师兄他们就差不多是这样用的,但是他们没有用积分项,我也没看出这样处理跟积分项的区别。

谢谢。。有些理解了。

作者: 黯伤人    时间: 2014-4-26 15:27
rubick 发表于 2013-11-28 20:15
位置式PID控制:
output = (expect-input)*P + (input-input_last)*D + (sum(expect)-sum(input))*I;
增 ...

增量式的是△ u(k)=P*(△ e(k))+I*e(k)+D*(△ e(k)-△ e(k-1)),△ u(k)是相对于上次的变化。是这样的吗

作者: 黯伤人    时间: 2014-4-26 15:28
Jyoun 发表于 2013-11-28 13:36
你说的那个“增量”是类似积分项的累加,和积分项作用类似,可以消除静差。。我知道的增量式是临近两次位 ...

增量式的是△ u(k)=P*(△ e(k))+I*e(k)+D*(△ e(k)-△ e(k-1)),△ u(k)是相对于上次的变化。是这样的吗

作者: rubick    时间: 2014-4-27 13:07
黯伤人 发表于 2014-4-26 15:27
增量式的是△ u(k)=P*(△ e(k))+I*e(k)+D*(△ e(k)-△ e(k-1)),△ u(k)是相对于上次的变化。是这样的吗



作者: 黯伤人    时间: 2014-4-27 14:14
rubick 发表于 2014-4-27 13:07


作者: yyyzrxh    时间: 2014-4-27 16:28
rubick 发表于 2013-11-28 11:35
想象一个滑块套在一根杆子上,能自由滑动。
如果我用一个弹簧固定住它,那么它只要离开平衡位置,就有一个 ...

2楼有点误导人了~~~~~~~~~·

作者: rubick    时间: 2014-4-27 16:51
yyyzrxh 发表于 2014-4-27 16:28
2楼有点误导人了~~~~~~~~~·

那真是对不起啊……

作者: BlackMetal    时间: 2016-1-15 04:01
Jyoun 发表于 2013-11-28 19:22
你这个前者是偏差,后者是偏差积分。分别对应pid控制的p和i,实际pid是三个同时使用的,你还有微分没有用 ...

我觉得增量式也是存在积分的,也可能存在积分饱和。计算增量 value  = kI*error;(只写了积分向)。输出out  += value ;这个out始终累加,最后的输出相当于kI(error + last_error+...+),积分还是加上了。

作者: BlackMetal    时间: 2016-1-15 04:09
其实是一样的,增量式最后那个输出化解完和位置式一样
作者: a867777057    时间: 2017-3-28 19:34
真的是受益良多啊




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