3

IMU(3軸加速度計、3軸ジャイロ、3軸磁力計)を使用していますが、加速度計のデータから線形加速度を取得したいと考えています。私は、センサーフュージョンと、ジャイロスコープのデータを使用して(そして方向を取得して)重力ベクトルを取得し、対応する軸からその影響を取り除く機能について知っていました。

私は正しい道を進んでいますか?できれば助けてもらえますか?


その後、加速度を2回積分して、次のように位置を取得します。

        CurrentAcceleration[0] = e.Accelerometer[0];
        CurrentAcceleration[1] = e.Accelerometer[1];
        CurrentAcceleration[2] = e.Accelerometer[2];

        //we need to get the linear acceleration instead of the read data !!

        CurrentVelocity[0] += (CurrentAcceleration[0] + PreviousAcceleration[0]) / 2;
        CurrentVelocity[1] += (CurrentAcceleration[1] + PreviousAcceleration[1]) / 2;
        CurrentVelocity[2] += (CurrentAcceleration[2] + PreviousAcceleration[2]) / 2;

        Position[0] += (CurrentVelocity[0] + PreviousVelocity[0]) / 2 ;
        Position[1] += (CurrentVelocity[1] + PreviousVelocity[1]) / 2 ;
        Position[2] += (CurrentVelocity[2] + PreviousVelocity[2]) / 2 ;

        PreviousAcceleration[0] = CurrentAcceleration[0];
        PreviousAcceleration[1] = CurrentAcceleration[1];
        PreviousAcceleration[2] = CurrentAcceleration[2];

        PreviousVelocity[0] = CurrentVelocity[0];
        PreviousVelocity[1] = CurrentVelocity[1];
        PreviousVelocity[2] = CurrentVelocity[2];
4

1 に答える 1

3

うまくいきません。

正確な位置や速度さえも取得できません。上記のリンクでは、代わりに実際にできることのヒントを見つけることができます。

ところで、この質問は意外と多いです。

于 2012-06-10T09:10:34.517 に答える