网友9 发表于 2013-8-2 09:49:36

请帮忙分析MWC飞控函数

下面这一段我不明白是什么意思,请帮忙分析一下。

// Rotate Estimated vector(s) with small angle approximation, according to the gyro data

void rotateV(struct fp_vector *v,float* delta) {
fp_vector v_tmp = *v;
v->Z -= delta* v_tmp.X + delta * v_tmp.Y;
v->X += delta* v_tmp.Z - delta   * v_tmp.Y;
v->Y += delta * v_tmp.Z + delta   * v_tmp.X;
}

说明:
*delta:陀螺每周期的增量。
*v : 结构,里面包含X,Y,Z(分别代表三个轴)。
:以上函数每个周期都循环一次。
ROLL,PITCH,YAW: 分别等于0,1,2

问题:该函数明显是为了将当时的陀螺增量delta(可正可负)累计到 *v 里面,只是累计方法令人费解,又减又加的,晕啊,卡在这里已经很长时间了,高手解释一下,感谢!

sta 发表于 2014-1-16 23:37:08

不知道楼主现在弄明白rotateV没有,最近我看mwc代码也卡在这个地方了

网友9 发表于 2014-9-9 15:57:56

没有啊,你呢?

Gosling 发表于 2014-11-7 18:11:06

http://www.amobbs.com/thread-5557397-1-5.html,这里有注释

Gosling 发表于 2014-11-7 18:13:20

主要是小角度近似
页: [1]
查看完整版本: 请帮忙分析MWC飞控函数