智能车制作

标题: 【顿悟】舵机PID(附美文) [打印本页]

作者: andyxu    时间: 2014-3-18 16:34
标题: 【顿悟】舵机PID(附美文)
      闲着无聊,翻出以前下载下来还没看的资料。突然看到舵机的PID(资料见附件),又产生了疑问,我们舵机的设定值到底是什么?!     文献上的舵机采用增量式PID:[attach]56961[/attach]
而我到现在的程序一直是这么写的:
arm_mult_f32(&mid_shift,&mid_shift,&mult_mid_shift,1);

    //P Control
    steer_tmp += mid_shift*126.0/11.0;
    steer_tmp += 4.0*left_right_flag*mult_mid_shift*21.0/121.0;

    //D Control
    if(fabs(pre_mid_shift - mid_shift) > 15.0 )   
      steer_tmp += 3.0*(mid_shift - pre_mid_shift)*126.0/11.0;//舵机给定偏差
    else
      steer_tmp += 0.0;//舵机给定偏差

    if(fabs(mid_shift) < 5.0 )     //弱化直道打角   
      steer_tmp /= 1.5;
    else
      {;}


注:steer_tmp即指文献中的delt U。
我所写的P(=4.0)实际是   I,D(=3.0)实际是文献中的  P。可是我所理解的不就是  P*当前偏差   D*偏差的差  
想不明白……想不明白……想不明白……想不明白……在论坛里搜帖子,继续想……继续想……继续想……
后来又看自己的程序:  temp_steerPWM = servo_mid + (s32)steer_tmp;突然明白了。原来我苦苦想不通的给定值 就是servo_mid。
想想也是,我们小车苦苦追寻的不就是赛道中线吗?理想一些,如果小车一直跑直道,不就是 delt始终是0,舵机始终居中;对于弯道,不正是因为赛道的中心点变了,小车才去跟随嘛。
不知道各位车友是否赞同我的观点。最后附上美文一篇,一起努力。

[attach]56962[/attach]



作者: 917052549    时间: 2014-3-18 17:28
顶了,,,,,
作者: 热血青年    时间: 2014-3-18 17:38

作者: 景胜归来    时间: 2014-3-18 18:00

作者: hcy1993    时间: 2014-3-18 18:27
DING

作者: 南宇    时间: 2014-3-18 18:39

作者: mnh999    时间: 2014-3-19 18:48

作者: liningbo888    时间: 2014-3-19 19:13

作者: xiaoshihshijie    时间: 2014-3-19 19:44
32个赞
作者: hi棠    时间: 2014-3-20 19:01
好啊 谢谢
作者: 相见不如怀念、    时间: 2014-4-28 17:17

作者: yansunji    时间: 2014-5-3 21:36

作者: 1249844726    时间: 2014-5-3 23:29

作者: 6851668    时间: 2014-5-4 01:56
先顶一下再说!!!
作者: 头上两只角    时间: 2014-5-4 07:37
看一下。。。
作者: yyyzrxh    时间: 2014-5-4 09:01
你终于娶到经了~~
作者: 之银    时间: 2014-5-4 10:26

作者: ↗仰┢┦望☆    时间: 2014-5-4 10:52

作者: 客流量    时间: 2014-5-4 15:12
haha
作者: slichee    时间: 2014-6-12 20:51

作者: loveCSU    时间: 2014-6-12 21:23
楼主理解得不错~~~
作者: andyxu    时间: 2014-6-12 21:49
loveCSU 发表于 2014-6-12 21:23
楼主理解得不错~~~

但是与实际的还是有一点出入,看实际的效果了,暂时不管理论了

作者: 狅士§    时间: 2014-6-12 23:22
没看明白,您看增量式领悟到了位置式。。。。还有,那你假如舵机中值不对,还是走中,还是走玩呢。。。。。。。。。
作者: loveCSU    时间: 2014-6-13 10:00
andyxu 发表于 2014-6-12 21:49
但是与实际的还是有一点出入,看实际的效果了,暂时不管理论了

我的理解是,理论是正确的,但是每个人的车舵机转向输入不同,所以不能一概照搬,没准在适当的地方做改动会更好~~

作者: andyxu    时间: 2014-6-13 10:09
loveCSU 发表于 2014-6-13 10:00
我的理解是,理论是正确的,但是每个人的车舵机转向输入不同,所以不能一概照搬,没准在适当的地方做改动 ...

恩恩  当时我也很纠结理论和实际怎么相结合,现在先不纠结了,看实际效果

作者: loveCSU    时间: 2014-6-13 11:30
andyxu 发表于 2014-6-13 10:09
恩恩  当时我也很纠结理论和实际怎么相结合,现在先不纠结了,看实际效果

哈哈~~~我也是这样的,实践是检验真理的唯一标准嘛~~~

作者: 蓝光1775    时间: 2014-8-12 16:43
有指导性

作者: 灬爱    时间: 2014-8-13 08:32

作者: 0xaa    时间: 2014-9-7 22:12
mark
作者: 张福利    时间: 2014-9-8 16:39
跟我一样,也是比完赛才顿悟的。
作者: Greece    时间: 2014-9-8 17:10

作者: 空有一人    时间: 2014-10-1 10:06

作者: 六步上篮    时间: 2014-10-1 10:16

作者: 啊狗俊    时间: 2015-1-22 12:27
:):):)
作者: 一心一境14    时间: 2015-2-2 14:51
:hug::hug:
作者: WMB吴茂彬    时间: 2015-2-5 20:14
不错不错
作者: 蓝冰点幽    时间: 2015-2-13 10:37
顶了

作者: 小熊仔    时间: 2015-3-22 17:05
楼主。。对于电磁的中线看的不是太明白阿、、、
作者: goodlife    时间: 2015-4-10 22:34
漂亮   好人啊   嘻嘻




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