MWC开自稳晃动问题的解决,本帖非回复就可见,但希望大家来顶。
很多人搞MWC,发现打开自稳后飞行器晃动,我以前也是这个样子,纠结了好久,最后测底研究代码,发现了问题所在,共享出来给大家。
连上上位机,转动传感板,向前转动,也就是机头下沉,ACC里PITCH应该变正数,值和角度有关,GYRO里PITCH应该变正,停止转动时归零,反向转动抬高机头,则ACC.PITCH变负的,GYRO.PITCH变负,停止转动归零。
机头向前,向右倾斜,ACC.ROLL变正,值和倾斜角度相关,GYRO.ROLL变正,停止转动归零,反向同理数值相反。
如果有哪项的数值变化方向不对,打开config.h
找到类似如下的地方:
#define GYRO_ORIENTATION(X, Y, Z) {gyroADC[ROLL] = Y; gyroADC[PITCH] = -X; gyroADC[YAW] = -Z;}
#define ACC_ORIENTATION(X, Y, Z) {accADC[ROLL] = -X; accADC[PITCH] = -Y; accADC[YAW] = Z;}
哪项不对,就改哪项的符号(X或Y前面的负号),例如发现 ACC里PITCH方向不对,那就把上面的accADC[PITCH] = -Y改成accADC[PITCH] = Y,其他同理。
改好后,重新刷进去,适当减小PID,开自稳,爽飞吧。
[ 本帖最后由 setlee 于 2012-7-10 20:58 编辑 ] |