|
本帖最后由 40342zz 于 2012-7-28 12:51 编辑
进度卡在PID参数调整上了,弄的我半个多月没心情再想四轴了,参考的凌阳某手册上的PID程序,增量式的,程序如下
//增量式 PID 控制设计
s16 IncPIDCalc(PID *p,double SetPoint,double NowPoint)
{
float iError, iIncpid; //当前误差
iError = SetPoint - NowPoint;
//增量计算
iIncpid = p->Proportion * (float)iError;
if(fabs(iError) < 2)
{
iIncpid = iIncpid - p->Integral * p->LastError
+ p->Derivative * p->PrevError;
}
//存储误差,用于下次计算
p->PrevError = p->LastError;
p->LastError = iError;
//返回增量值
return(iIncpid);
}
目前仅仅是只调整Roll方向,让Roll方向平衡。
只有比例项的时候参数从很小到很大都试过了,要么是调整缓慢要么是剧烈晃动,试着加上积分和微分也没有改观,下面的是调整的情况,根据现在的现象应该如何调整参数呢?
我没有学过自动控制,现在对姿态调整的想法比较简单,还想请问如何把解算后的姿态数据分配到四个电机的转速上?
http://player.youku.com/player.php/sid/XNDI4MzU3MjY4/v.swf |
阿莫论坛20周年了!感谢大家的支持与爱护!!
曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……
|