智能车制作

 找回密码
 注册

扫一扫,访问微社区

楼主: wsdyi100
打印 上一主题 下一主题

跪求卓晴老师、凤姐等牛人解答PI速度闭环疑惑

  [复制链接]

20

主题

72

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4139
威望
2153
贡献
820
兑换币
436
注册时间
2012-10-24
在线时间
583 小时
11#
发表于 2013-1-18 21:06:28 | 只看该作者
直立与速度pwm相减可以这样理解(官方说非最小相位特性,呵呵),  比如车现在加速往前, 编码器测出来的速度为正, 如果预设速度为0, 则速度偏差e为负,故经过PI后得到的输出pwm为负
回复 支持 反对

使用道具 举报

53

主题

2469

帖子

0

精华

跨届大侠

狙击手

Rank: 10Rank: 10Rank: 10

积分
11290

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

威望
4701
贡献
3671
兑换币
2368
注册时间
2012-3-12
在线时间
1459 小时
12#
发表于 2013-1-18 21:14:04 | 只看该作者
wsdyi100 发表于 2013-1-18 20:59
不是我不信你,论坛上好多的是速度PI,速度PD确实没见过

我不是让你信我,我只是想让你试试其他的方法,不能总是人云亦云,呵呵
回复 支持 反对

使用道具 举报

22

主题

209

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1582
威望
858
贡献
372
兑换币
342
注册时间
2012-2-28
在线时间
176 小时
毕业学校
重庆大学
13#
 楼主| 发表于 2013-1-18 21:15:07 | 只看该作者
automate 发表于 2013-1-18 21:06
直立与速度pwm相减可以这样理解(官方说非最小相位特性,呵呵),  比如车现在加速往前, 编码器测出来的速 ...

***实质是减吗?
回复 支持 反对

使用道具 举报

55

主题

401

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1987
威望
1361
贡献
22
兑换币
638
注册时间
2012-9-23
在线时间
302 小时
毕业学校
同济大学
14#
发表于 2013-1-18 23:10:17 | 只看该作者
同问,楼主解决了说下哈
回复 支持 反对

使用道具 举报

55

主题

401

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1987
威望
1361
贡献
22
兑换币
638
注册时间
2012-9-23
在线时间
302 小时
毕业学校
同济大学
15#
发表于 2013-1-18 23:21:02 | 只看该作者
楼主,你这个无线通信用的是什么模块啊??蓝牙吗?还有曲线分析用的是什么软件啊???看起来很好用啊。
回复 支持 反对

使用道具 举报

38

主题

1651

帖子

0

精华

功勋会员

Rank: 10Rank: 10Rank: 10

积分
8770
威望
4444
贡献
2638
兑换币
1818
注册时间
2010-12-29
在线时间
844 小时
16#
发表于 2013-1-18 23:28:11 | 只看该作者
本帖最后由 yukunlinykl 于 2013-1-18 23:58 编辑

你说: “角度控制输出的角度PWM是负责直立控制的,当只有直立控制,车模可能往一个方向越来越加速的运动,这是因为角度所产生的PWM总是欠缺一点,不足以将车模拉回到平衡位置” 。

对此我有不同看法:
1. 为什么车身往一个方向加速
角度控制输出的角度PWM是负责直立控制的,但是由于传感器测量的偏差,
直立控制算法仅将车身控制在传感器所认为的0度,而非真实的0度,此二者有小偏差。
故车身将保持一个倾角,该倾角即传感器偏差。此处暂且假设此偏差角恒定。
为了使得车身保持恒定偏角,小车必向一个方向保持恒定的加速度 a = tan(theta)g 。
2. 如何在没有额外传感器的基础上测出上述效应
上述测量误差导致小车有一个恒定的加速度,此加速度积分一次或两次得到速度或位移。
故只要我们能测出速度或位移,就能知道角度测量误差。
3.如何消除上述现象
理论上讲,我们测出小车加速度后,直接计算出误差的角度,加负号修正到测量的角度上,就能消除上述效应。但实际上这么做效果不好,原因有二:
3.1 小车如果仅有平衡控制的话就是是随遇平衡系统,意思是,小车就像一个放在平面上的小球,滚到哪里都可以平衡。这样,微小的扰动就可以使得小车在地面上到处乱跑(期间仍然保持平衡不会倒)。
3.2 实际上我们只能测出位移(光电编码器(当然要加正反计数,否则就是路程)),然后微分得速度,微两次得加速度。而光电编码器是离散变量,微分即相邻两项求差,这样最终得到的加速度在数值上很小,精度完全不可能达到有求(只有不到十来个取值)。这样的修正极其粗糙,完全无法体现效果。
综上,测量出加速度,并计算出误差,以修正测量值的方法,不采用。
4. 那该怎么办
我们选取两个相对来讲测得准的量来修正:位移,速度。
如果你将位移看成主项,那么速度就可看成对上述修正的修正,就是PD控制。
此时主项负责消除小车的位移(即消除随遇现象),但抖动较大,速度项可以看成前者的微分,负责消除前者在控制过程中的抖动。
如果你将速度看成主项,那么位移就是上述修正的辅助修正,就是PI控制。
此时主项负责消除小车的速度,让他定在一点,而其积分项负责使小车缓慢地回复初始位移。
总之不管怎么看,最终给出的算法是一样的: PWM = A*角度 + B*角速度 + C*速度 + D*位移
四个参数的符号大家自己看着办哈,懒得分析就试试就可以了。

5.最后玩味一下这个简单的公式:PWM = A*角度 + B*角速度 + C*速度 + D*位移
它又可以看成这样写:PWM = A*(角度+C1*速度+D1*位移)+ B*角速度
其中 C1 == C/A, D1 == D/A
这样速度项和位移项就可以看成是角度的修正。
其中,B 看成对 A 的抖动的消除,C1可以看成对D1抖动的消除。

哈哈,很有意思,总之怎么看都都行。

P.S.抱歉,忘了你的问题。
对于你所遇到的问题,如果你用的公式就是:PWM = A*角度 + B*角速度 + C*速度 + D*位移
或者是与其等价的别的表达方式(我扫了一眼你的式子,没太看懂,但感觉貌似是等价的)
如果老是效果不好,就不要纠结算法啦,很有可能是传感器精度不好。
具体要看抖动的效果。
直立控制造成高频抖动,速度和位移项造成低频抖动。
一般高频抖动忽略不计(因为陀螺仪的精度一般比光电编码器高)
主要问题是低频抖动。这个低频抖动其实就是陀螺仪的累积误差的增长,和,速度位移项对此增长误差的修正,
上述二者的较量,此消彼长的过程。
如果误差增长得很快,那么两者较量的拉锯战就很大,抖动剧烈。
如果误差增长慢,较量就轻微,抖动微小。
所以从两方面入手:
1. 提高陀螺仪精度,减小其误差的累积速度。
2. 提高编码器线数,减小“修正的误差”(注意咯!修正也是有误差的哟!如果修正错了咋办呀!)
根据我的经验,如果两方面精度都是够的,上面ABCD参数10分钟以内可以调好。

~~~~我勒个去,口水废了好多,我喝口水去。
P.P.S 喝完水了
关于参数的调节,我留意到楼主说你的参数是20什么什么的。
我想说,参数的绝对大小是没有意义的,因为参数是带量纲的。
量纲选取的不同,绝对大小是会有很大变化的。
一个参数的最优值,可能是20,可能是20万,可能是20亿,可能是20万分之一。
所以要注意,调节参数时,不要线性地修改其值,要指数地修改。
例如,试试20行不行,再试试100,再试试500,再试试5,再试试0.3
回复 支持 反对

使用道具 举报

1

主题

332

帖子

0

精华

高级会员

Rank: 4

积分
967
威望
530
贡献
187
兑换币
438
注册时间
2013-1-8
在线时间
125 小时
17#
发表于 2013-1-19 11:06:14 | 只看该作者
凤姐霸气  
回复 支持 反对

使用道具 举报

1

主题

332

帖子

0

精华

高级会员

Rank: 4

积分
967
威望
530
贡献
187
兑换币
438
注册时间
2013-1-8
在线时间
125 小时
18#
发表于 2013-1-19 11:06:47 | 只看该作者
turf456 发表于 2013-1-18 21:01
貌似是反的。。。我只是大概了解。不精通这个。。。。

凤姐霸气 求加好友 教教小弟  小弟新手
回复 支持 反对

使用道具 举报

22

主题

209

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1582
威望
858
贡献
372
兑换币
342
注册时间
2012-2-28
在线时间
176 小时
毕业学校
重庆大学
19#
 楼主| 发表于 2013-1-19 11:12:37 | 只看该作者
yukunlinykl 发表于 2013-1-18 23:28
你说: “角度控制输出的角度PWM是负责直立控制的,当只有直立控制,车模可能往一个方向越来越加速的运动, ...

嗯,说得真好,以前就是这些原理搞不清楚,不知道是为什么,现在终于弄明白了,谢谢
回复 支持 反对

使用道具 举报

38

主题

1651

帖子

0

精华

功勋会员

Rank: 10Rank: 10Rank: 10

积分
8770
威望
4444
贡献
2638
兑换币
1818
注册时间
2010-12-29
在线时间
844 小时
20#
发表于 2013-1-19 11:26:53 | 只看该作者
wsdyi100 发表于 2013-1-19 11:12
嗯,说得真好,以前就是这些原理搞不清楚,不知道是为什么,现在终于弄明白了,谢谢

手留余香。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-27 20:15 , Processed in 0.127089 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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