智能车制作
标题:
官方的方案中角度控制极性问题
[打印本页]
作者:
Tぬ_mi-C-Korey
时间:
2013-3-29 13:50
标题:
官方的方案中角度控制极性问题
void AngleControl(void) {
float fValue;
fValue=(CAR_ANGLE_SET-g_fCarAngle)*ANGLE_CONTROL_P+
(CAR_ANGLE_SPEED_SET-g_fGyroscopeAngleSpeed)*ANGLE_CONTROL_D;
if(fValue>ANGLE_CONTROL_OUT_MAX)
fValue=ANGLE_CONTROL_OUT_MAX;
else if(fValue<ANGLE_CONTROL_OUT_MIN)
fValue=ANGLE_CONTROL_OUT_MIN;
g_fAngleControlOut = fValue;
}
在这个程序中,我的小车陀螺仪和加速度是用的一个运放的方案,融合过后的角度和加速度方向相反,那么fValue=(CAR_ANGLE_SET-g_fCarAngle)*ANGLE_CONTROL_P
+
(CAR_ANGLE_SPEED_SET-g_fGyroscopeAngleSpeed)*ANGLE_CONTROL_D; 这里该取加号还是减号啊。我试过使用减号时平稳些,但是会像一边慢慢偏过去,感觉就像零点偏向一边了一样,使用加号时也会有这样的现象,我测过陀螺仪等的输出,并没有偏移啊。问什么啊?各位大神!!
作者:
lead_your_life
时间:
2013-3-29 14:50
同求
作者:
jianpeng
时间:
2013-5-9 15:52
哥们 解决没??? 我的PD控制和P控制差别不大。而且感觉对它的理解牵涉到微分的作用弄清楚了对以后PD控制D的参数的设定有很大帮助。 我们现在调方向控制是又出现这种情况 速度一加大就很难控制,感觉像是PD参数不敏感了
交流下呗 关于PID的理解
作者:
lyb
时间:
2013-5-9 16:26
相反应该是减吧,慢慢向一边偏是因为陀螺仪有温漂
欢迎光临 智能车制作 (http://dns.znczz.com/)
Powered by Discuz! X3.2