打印

自平衡小车速度环问题

[复制链接]
10435|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Chaos_zc|  楼主 | 2011-8-17 20:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 Chaos_zc 于 2011-8-17 20:36 编辑

最近自己DIY的小车已经能保持平衡了,下一步要实现遥控。PID控制参考匠人大叔的PPT:

duty   = Kp_ang * angle ;  // = 比例系数*角度
duty += Kd_ang * angle_dot ; // + 微分系数*角速度
duty += Kp_spd * speed ;  // + 比例系数*车速
duty += Ki_spd * position ;  // + 积分系数*车位移
整定方法:
1.先调角度K值——让小车站起来。
2.调角速度K值——让小车站稳定。
3.调水平速度K值和位移K值——让小车跑起来。

在国外友人做的gyrobot的网站中也找到了上述公式。


但是调试过程发现,加上速度环后(没有速度输入)小车就只能在编码器位置为零的地方附近保持平衡,一旦轮子转过一定角度,小车就开始向一边倾斜并加速。

如果让小车悬空,现象就是:往一边倾斜小车,车轮会朝那边转过一定圈数后停下来,而圈数与速度环的参数有关。如果没有速度环,只要有倾角车轮就会一直转。

我试着调小速度环系数,让小车的平衡受到的影响减小到不明显,但是小车移动效果又很差。

貌似小车速度环对倾角环是种干扰,或者说存在一定的耦合关系。加大速度环系数就会影响平衡,减小系数则会很难实现小车移动。

不知各位已经做成小车的前辈如何解决这个问题??还是只能试验得出一个比较折中的系数?

相关帖子

沙发
zxcscm| | 2011-8-17 21:24 | 只看该作者
哇哦 期待高手来解答,盼望着小车早点站起来

使用特权

评论回复
板凳
程序匠人| | 2011-8-17 22:09 | 只看该作者
建议:在小车没有站起来之前,先关闭速度环。

使用特权

评论回复
地板
kobesff| | 2011-8-17 22:10 | 只看该作者
duty   = Kp_ang * angle ;  // = 比例系数*角度
duty += Kd_ang * angle_dot ; // + 微分系数*角速度
duty += Kp_spd * speed ;  // + 比例系数*车速
duty += Ki_spd * position ;  // + 积分系数*车位移
这个式子没明白。  
PID不是 Kp*angle +Ki*(angle累加) +Kd*(angle-angle(-1))吗,3个项?
怎么duty是4个项啊?

使用特权

评论回复
5
程序匠人| | 2011-8-17 22:26 | 只看该作者
duty   = Kp_ang * angle ;  // = 比例系数*角度
duty += Kd_ang * angle_dot ; // + 微分系数*角速度
duty += Kp_spd * speed ;  // + 比例系数*车速
duty += Ki_spd * position ;  // + 积分系数*车位移
这个式子 ...
kobesff 发表于 2011-8-17 22:10


4个项可以理解为两个环:

角度环是做PD运算
车速环是做PI运算

所以有4项

使用特权

评论回复
6
Chaos_zc|  楼主 | 2011-8-17 23:07 | 只看该作者
呵呵,小车已经能站起来,不知这样理解匠人大叔是话是否正确:小车启动之后角度环先作用几秒钟,等速度基本不在抖动之后在启用速度环?
3# 程序匠人

使用特权

评论回复
7
kobesff| | 2011-8-17 23:21 | 只看该作者
LZ有时间发了经验心得贴什么的。让我们新手学习下。

使用特权

评论回复
8
Chaos_zc|  楼主 | 2011-8-17 23:41 | 只看该作者
7# kobesff
呵呵,我也只能算新手。等过段时间闲下来我会把做的东西整理整理发上来。

使用特权

评论回复
9
Cortex-M0| | 2011-8-18 05:08 | 只看该作者
支持Chaos_zc小盆友~~~

使用特权

评论回复
10
Chaos_zc|  楼主 | 2011-8-19 09:05 | 只看该作者
结贴给分啦

使用特权

评论回复
11
21ICE| | 2012-3-11 17:01 | 只看该作者
等待中!

使用特权

评论回复
12
kimiyang| | 2013-6-8 10:46 | 只看该作者
同问啊,楼主有没有解决啊,觉得速度环和角度环是相互制约的关系。

使用特权

评论回复
13
16777216| | 2013-6-8 10:58 | 只看该作者
程序匠人 发表于 2011-8-17 22:26
4个项可以理解为两个环:

角度环是做PD运算

匠人 你的ppt参考在哪里呀 我没找到

使用特权

评论回复
14
kimiyang| | 2013-6-9 22:25 | 只看该作者
“如果让小车悬空,现象就是:往一边倾斜小车,车轮会朝那边转过一定圈数后停下来,”
按我理解,如果小车一直往一边倾斜,应该车轮向那边越转越快,才能靠加速度使小车修正角度。 如果越转越慢的话,不是倾角越来越大啦。。。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:在追求有意义而又快乐的目标时,我们不是在消磨时间,而是在让时间,闪闪发光。

5

主题

272

帖子

2

粉丝