智能车制作

标题: 电磁PD控制舵机 [打印本页]

作者: somebodyes    时间: 2014-4-23 22:42
标题: 电磁PD控制舵机
两个电感,用PD控制舵机,老是抖啊,加了D后抖。根本走不了,左右晃死了
[qq]1769697729[/qq]
u(t) = Kp*[e(t)-e(t-1)]+Kd*[e(t)-2*e(t-1)+e(t-2)]

作者: czr27    时间: 2014-4-23 22:43
增量式PID
作者: 头上两只角    时间: 2014-4-23 22:44
正在全力解决这个问题 。。。我们也是。
作者: zhou1994    时间: 2014-4-23 22:48
为什么你们选择的是增量式的?
作者: somebodyes    时间: 2014-4-23 22:48
头上两只角 发表于 2014-4-23 22:44
正在全力解决这个问题 。。。我们也是。

我去,你们是不是也看了那个理论。。。。

作者: somebodyes    时间: 2014-4-23 22:50
czr27 发表于 2014-4-23 22:43
增量式PID

增量式是说白了是不是两杆的误差ERROR啊,位置式是不是用电感值减去小车在中间时的ERROR啊

作者: somebodyes    时间: 2014-4-23 22:51
zhou1994 发表于 2014-4-23 22:48
为什么你们选择的是增量式的?

因为一开始我光用P的时候用的是差比和(两个电感)

作者: czr27    时间: 2014-4-24 08:00
somebodyes 发表于 2014-4-23 22:50
增量式是说白了是不是两杆的误差ERROR啊,位置式是不是用电感值减去小车在中间时的ERROR啊

你们控制是pid计算出的量与当前角度相加给舵机吗,你们的公式对应的做法就是那样的,增量式

作者: zq1742975439    时间: 2014-4-24 15:02
同样问题,我们已放弃PD。。。先用比例调着!
作者: 重生    时间: 2014-4-24 15:34
舵机应该用位置式的吧,而且可能是参数不太对

作者: somebodyes    时间: 2014-4-24 16:09
zq1742975439 发表于 2014-4-24 15:02
同样问题,我们已放弃PD。。。先用比例调着!

光比例不行吧,还是好好研究研究吧,比例控制直道。。。转弯D起作用

作者: somebodyes    时间: 2014-4-24 16:11
重生 发表于 2014-4-24 15:34
舵机应该用位置式的吧,而且可能是参数不太对

这位亲,如果位置式是怎么得到ERROR呢,如果您要是能解答一实在太谢谢您了

作者: somebodyes    时间: 2014-4-24 16:13
czr27 发表于 2014-4-24 08:00
你们控制是pid计算出的量与当前角度相加给舵机吗,你们的公式对应的做法就是那样的,增量式

当前角度是指什么。。我们就是PD计算值加舵机中值。。

作者: chenqiang    时间: 2014-4-24 16:29
duty=中值+p*err+d*(err-err_old)  我们目前是这样的
作者: somebodyes    时间: 2014-4-24 16:32
本帖最后由 somebodyes 于 2014-4-24 16:34 编辑
chenqiang 发表于 2014-4-24 16:29
duty=中值+p*err+d*(err-err_old)  我们目前是这样的

效果怎么样,这个是不是位置式,我也用过,但是也抖,一旦和前后error有联系(加减关系)系统相当不稳定
作者: somebodyes    时间: 2014-4-24 16:34
http://lql990832.blog.163.com/bl ... 655200992434744316/

作者: 重生    时间: 2014-4-24 16:41
somebodyes 发表于 2014-4-24 16:11
这位亲,如果位置式是怎么得到ERROR呢,如果您要是能解答一实在太谢谢您了

ERROR就是你当前探测出来的偏移导线的距离啊  这个舵机的控制其实也是相当于闭环的,你前端的探测杆 探测出来当前的偏移导线的值 目标值是0
作者: chenqiang    时间: 2014-4-24 16:43
somebodyes 发表于 2014-4-24 16:32
效果怎么样,这个是不是位置式,我也用过,但是也抖,一旦和前后error有联系(加减关系)系统相当不稳定

还好啊。虽然出弯的时候会晃一两下。但也很快稳定了。是不是d给大了啊?

作者: somebodyes    时间: 2014-4-24 16:47
chenqiang 发表于 2014-4-24 16:43
还好啊。虽然出弯的时候会晃一两下。但也很快稳定了。是不是d给大了啊?

好吧,亲我觉得也是D调的不是太合适,继续找找新的值可能会更好。

作者: somebodyes    时间: 2014-4-24 16:49
本帖最后由 somebodyes 于 2014-4-24 16:52 编辑
重生 发表于 2014-4-24 16:41
ERROR就是你当前探测出来的偏移导线的距离啊  这个舵机的控制其实也是相当于闭环的,你前端的探测杆 探测 ...

我用的是两个电感,然后两个电感的差值是ERROR,你说的距离ERROR是不是用ADC值减去车子在中间时ADC的值啊

作者: somebodyes    时间: 2014-4-24 17:04
adjust=(KP*error)+(KD*(error-last_error))+中值PWM;位置式
u(t) = Kp*[e(t)-e(t-1)]+Kd*[e(t)-2*e(t-1)+e(t-2)]增量式
作者: czr27    时间: 2014-4-24 17:33
somebodyes 发表于 2014-4-24 16:13
当前角度是指什么。。我们就是PD计算值加舵机中值。。

你用的是增量式pid的计算 最后控制却用的是位置式 不抖才怪

作者: somebodyes    时间: 2014-4-24 18:05
czr27 发表于 2014-4-24 17:33
你用的是增量式pid的计算 最后控制却用的是位置式 不抖才怪

改成位置式了,但是感觉D没起作用,P=200的时候,D=0.5直道虽然抖点,但是弯道都过来。后来我减小P改变D但是貌似D值不论怎么改,过弯道过不去,改到100,改到0.01都一个状态冲出去,D没起作用

作者: 重生    时间: 2014-4-24 18:16
somebodyes 发表于 2014-4-24 16:49
我用的是两个电感,然后两个电感的差值是ERROR,你说的距离ERROR是不是用ADC值减去车子在中间时ADC的值啊 ...

不是、、你可以拟合曲线嘛 看看官方方案 技术报告什么的


作者: czr27    时间: 2014-4-24 18:55
somebodyes 发表于 2014-4-24 18:05
改成位置式了,但是感觉D没起作用,P=200的时候,D=0.5直道虽然抖点,但是弯道都过来。后来我减小P改变D但 ...

调参就漫长了,多多少少都有点效果或者不同

作者: somebodyes    时间: 2014-4-24 19:17
本帖最后由 somebodyes 于 2014-4-24 19:19 编辑
重生 发表于 2014-4-24 18:16
不是、、你可以拟合曲线嘛 看看官方方案 技术报告什么的

恩恩,好的,听起来很高端大气上档次啊,,,,,,,,,,这个??[attach]58951[/attach]
作者: somebodyes    时间: 2014-4-24 19:18
czr27 发表于 2014-4-24 18:55
调参就漫长了,多多少少都有点效果或者不同

OK,thank you,大家了

作者: ゛|.life﹖    时间: 2014-5-1 10:21
somebodyes 发表于 2014-4-24 17:04
adjust=(KP*error)+(KD*(error-last_error))+中值PWM;位置式
u(t) = Kp*[e(t)-e(t-1)]+Kd*[e(t)-2*e(t-1)+ ...

你用第一条位置式时,error是怎么得到的?哪个减哪个?

作者: 碛北的孤狼    时间: 2014-5-1 13:44
参数调节的不对吧

作者: somebodyes    时间: 2014-5-13 01:48
碛北的孤狼 发表于 2014-5-1 13:44
参数调节的不对吧

是是是,继续中

作者: lh_include    时间: 2014-5-13 09:42
somebodyes 发表于 2014-4-23 22:51
因为一开始我光用P的时候用的是差比和(两个电感)

你用的差和比是归一化里的 测量值-最小值/最大值-最小值 么,还是其他什么值的差和比?求教一下!!
作者: somebodyes    时间: 2014-5-13 11:57
lh_include 发表于 2014-5-13 09:42
你用的差和比是归一化里的 测量值-最小值/最大值-最小值 么,还是其他什么值的差和比?求教一下!!

差比和差比和,归一化是归一化,http://www.znczz.com/forum.php?mod=viewthread&tid=213532看看这位大神的贴

作者: 蛋蛋不孤单    时间: 2014-5-13 12:09
somebodyes 发表于 2014-4-24 16:11
这位亲,如果位置式是怎么得到ERROR呢,如果您要是能解答一实在太谢谢您了

当前偏差是电感测得的,目标是0,error=偏差-0;

作者: lh_include    时间: 2014-5-13 16:06
somebodyes 发表于 2014-5-13 11:57
差比和差比和,归一化是归一化,http://www.znczz.com/forum.php?mod=viewthread&tid=213532看看这位大神 ...

唆嘎!谢了!
作者: somebodyes    时间: 2014-5-13 19:39
lh_include 发表于 2014-5-13 16:06
唆嘎!谢了!

不客气

作者: 碛北的孤狼    时间: 2014-5-14 12:01
somebodyes 发表于 2014-4-24 19:17
恩恩,好的,听起来很高端大气上档次啊,,,,,,,,,,这个??

你用的啥上位机调的啊,看起来很高端啊,自己编的吗??交流一下哦
作者: gsc617    时间: 2014-5-29 12:12
我的程序加个D控制部分就程序跑飞,车就跑不起来呀:L
作者: somebodyes    时间: 2014-6-2 20:53
gsc617 发表于 2014-5-29 12:12
我的程序加个D控制部分就程序跑飞,车就跑不起来呀

D作用其实车速低的时候作用很小

作者: gsc617    时间: 2014-6-2 21:49
somebodyes 发表于 2014-6-2 20:53
D作用其实车速低的时候作用很小

不解呀,不过没有d直线跑的还是不错的,不过现在速度闭环也有问题,怎么闭环呀

作者: somebodyes    时间: 2014-6-13 20:17
gsc617 发表于 2014-6-2 21:49
不解呀,不过没有d直线跑的还是不错的,不过现在速度闭环也有问题,怎么闭环呀

我去D跟直道有什么大关系,,,,闭环不知道是什么??学过模电嘛

作者: 天芒    时间: 2014-6-13 21:09
你这是写错了的,以前我也是你这么理解的,那个D上面乘的不对,应该是 (这次偏差 - 上次偏差) 才对。
你把位置式和增量式的PID弄昏了,简直糊里糊涂的
作者: 天芒    时间: 2014-6-13 21:10
那个P上面乘的也不对
作者: somebodyes    时间: 2014-6-13 21:19
天芒 发表于 2014-6-13 21:10
那个P上面乘的也不对

你说的那个啊?谢谢
作者: an~    时间: 2014-6-25 13:40
somebodyes 发表于 2014-4-24 16:09
光比例不行吧,还是好好研究研究吧,比例控制直道。。。转弯D起作用

D能起什么作用呢?
作者: wuguangnan110    时间: 2014-6-25 14:01

作者: HuangSy    时间: 2014-6-25 15:05
你先把PID内容看清楚再说,分清增量式和位置式,你就不会问这种问题了。
作者: 老油条    时间: 2014-7-20 17:06
somebodyes 发表于 2014-4-24 16:09
光比例不行吧,还是好好研究研究吧,比例控制直道。。。转弯D起作用

你好像说反了吧,,P控制弯道的,,D控制知道稳定的
作者: 3132618007    时间: 2016-2-1 17:16
到底是p控制弯还是D控制弯道?




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