智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 17060|回复: 24
打印 上一主题 下一主题

各路大神,pid分位置式和增量式,到底有毛区别啊??

    [复制链接]

26

主题

914

帖子

3

精华

常驻嘉宾

Rank: 8Rank: 8

积分
5643

优秀会员奖章活跃会员奖章论坛元老奖章在线王奖章资源大师奖章

威望
3361
贡献
718
兑换币
2157
注册时间
2012-10-28
在线时间
782 小时
跳转到指定楼层
1#
发表于 2013-11-28 09:32:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
也是做过智能车一年的人了,不过现在对于这两种pid调节比较纠结,哪位大神能够拿电机调速来为例子来谈谈这么个问题啊??

21

主题

896

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4068
威望
2252
贡献
1296
兑换币
1483
注册时间
2012-7-30
在线时间
260 小时
毕业学校
克莱德大学
2#
发表于 2013-11-28 11:35:38 | 只看该作者
想象一个滑块套在一根杆子上,能自由滑动。
如果我用一个弹簧固定住它,那么它只要离开平衡位置,就有一个回复力。
这就是位置式P控制,劲度系数就是P。
其特性是,如果受到一个稳定的干扰,例如有风一直吹着滑块,
最后滑块不会稳定在初始位置,有一个静态误差。

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

使用道具 举报

137

主题

4169

帖子

1

精华

杰出人士

我认为最省轮子的跑法最快。曾经的西科4队

Rank: 12Rank: 12Rank: 12

积分
14006
QQ
威望
6233
贡献
1229
兑换币
4171
注册时间
2013-1-10
在线时间
3272 小时
3#
发表于 2013-11-28 13:36:49 | 只看该作者
rubick 发表于 2013-11-28 11:35
想象一个滑块套在一根杆子上,能自由滑动。
如果我用一个弹簧固定住它,那么它只要离开平衡位置,就有一个 ...

你说的那个“增量”是类似积分项的累加,和积分项作用类似,可以消除静差。。我知道的增量式是临近两次位置式相减,即每次调节的参考是上一次,即输出与输入的增量有关。
回复 支持 反对

使用道具 举报

21

主题

896

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4068
威望
2252
贡献
1296
兑换币
1483
注册时间
2012-7-30
在线时间
260 小时
毕业学校
克莱德大学
4#
发表于 2013-11-28 16:37:53 | 只看该作者
Jyoun 发表于 2013-11-28 13:36
你说的那个“增量”是类似积分项的累加,和积分项作用类似,可以消除静差。。我知道的增量式是临近两次位 ...

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

那输入无变化,输出岂不是为零?
回复 支持 反对

使用道具 举报

137

主题

4169

帖子

1

精华

杰出人士

我认为最省轮子的跑法最快。曾经的西科4队

Rank: 12Rank: 12Rank: 12

积分
14006
QQ
威望
6233
贡献
1229
兑换币
4171
注册时间
2013-1-10
在线时间
3272 小时
5#
发表于 2013-11-28 19:09:27 | 只看该作者
rubick 发表于 2013-11-28 16:37
不对吧?“即输出与输入的增量有关。”

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

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

使用道具 举报

137

主题

4169

帖子

1

精华

杰出人士

我认为最省轮子的跑法最快。曾经的西科4队

Rank: 12Rank: 12Rank: 12

积分
14006
QQ
威望
6233
贡献
1229
兑换币
4171
注册时间
2013-1-10
在线时间
3272 小时
6#
发表于 2013-11-28 19:17:41 | 只看该作者
rubick 发表于 2013-11-28 16:37
不对吧?“即输出与输入的增量有关。”

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

我也不知道是我理解不对还是怎么,师兄也说有累加的就是增量式,但是我查阅相关资料后,我觉得累加只是pid的i积分环节啊,只是不同的累加方式有不同的积分效果,我看到的资料基本都是说的两次位置式之差就是增量式。
回复 支持 反对

使用道具 举报

21

主题

896

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4068
威望
2252
贡献
1296
兑换币
1483
注册时间
2012-7-30
在线时间
260 小时
毕业学校
克莱德大学
7#
发表于 2013-11-28 19:17:45 | 只看该作者
Jyoun 发表于 2013-11-28 19:09
我认为是这样的,输入变化,增量式才会有输出。你说的“位置式”实际是pid位置式的pd(比例微分)部分,这 ...

不对哟!是这样的:


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


就这么简单。
回复 支持 反对

使用道具 举报

137

主题

4169

帖子

1

精华

杰出人士

我认为最省轮子的跑法最快。曾经的西科4队

Rank: 12Rank: 12Rank: 12

积分
14006
QQ
威望
6233
贡献
1229
兑换币
4171
注册时间
2013-1-10
在线时间
3272 小时
8#
发表于 2013-11-28 19:21:52 | 只看该作者
rubick 发表于 2013-11-28 19:17
不对哟!是这样的:

你这个前者是偏差,后者是偏差积分。分别对应pid控制的p和i,实际pid是三个同时使用的,你还有微分没有用上。
回复 支持 反对

使用道具 举报

137

主题

4169

帖子

1

精华

杰出人士

我认为最省轮子的跑法最快。曾经的西科4队

Rank: 12Rank: 12Rank: 12

积分
14006
QQ
威望
6233
贡献
1229
兑换币
4171
注册时间
2013-1-10
在线时间
3272 小时
9#
发表于 2013-11-28 19:22:52 | 只看该作者
rubick 发表于 2013-11-28 19:17
不对哟!是这样的:

你这个前者是偏差,后者是偏差积分。分别对应pid控制的p和i,实际pid是三个同时使用的,你还有微分没有用上。
回复 支持 反对

使用道具 举报

21

主题

896

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4068
威望
2252
贡献
1296
兑换币
1483
注册时间
2012-7-30
在线时间
260 小时
毕业学校
克莱德大学
10#
发表于 2013-11-28 20:15:33 | 只看该作者
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控制。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-11-5 16:31 , Processed in 0.736105 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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