2011-01-11 11 views
1

角度の回転速度を測定するジャイロスコープは、積分された角度を生成しますか? 私の質問はどのように私はこれを行うのですか?何これまでやってイムは、ちょうどすべての角度が検出されたアイブ追加し、それがジャイロスコープのデータを個別に統合する方法はありますか?

AngleIntegrated = GyroDegPersec * (1/GyroBandWidth); 

の提案は非常に歓迎されている非常に間違っているように思われます。ありがとう

答えて

0

私は、ジャイロスコープを読んで、現在の読まれたものと以前の数少ないものを補間することで、長期的には正しい値を持つことに時間をかけてエラーウィンドウを増やすことはできません。滑らかな曲線(例えば、現在の読取りと前の2つを使用する放物線)を取得し、最後の読取り時間と現在の時間からその放物線の積分を計算する。

+0

返信ありがとうございます! RungeKutta 2階のようなものですか? – user571099

+0

Runga Kuttaは4点を使用しているので、現在と前の3点です。その結果、1.5周期前の値を見積もることができます。この遅延は、より良い見積もりの​​ために支払われる価格です。ウェイトを変更することで遅延を減らすことができますが、スムージングの品質も低下します。 – MSalters

+0

@MSaltersと6502このような実装の例はありますか? – sam

2

時間に関してを統合する必要があります。理想的には、定期的(固定)の時間間隔Tでジャイロスコープをサンプリングし、そのサンプリング間隔Tを積分計算に組み込む必要があります。

Nyquist基準を満たすには、Tが十分に小さくなければならないことに注意してください。

+0

お返事ありがとうございます。私のジャイロスコープをサンプリングするとすぐに、新しいデータが提供され、その帯域幅は50Hzになります。サンプルは(1/50)秒でサンプリングされます。この積分計算を実際に実行するにはどうすればよいでしょうか? – user571099

+1

@ user571099: '1/GyroBandWidth'があなたのサンプル間隔(上記の私の答えで' T')であれば、あなたの計算は本質的に正しいです。ただし、正確な結果を得るには、単に加算するのではなく、適切な積分器を実装してください。 –

+0

ご迷惑をおかけして申し訳ありませんが、どうすれば適切なインテグレータを作成できますか?私はcを使っています。 – user571099

1

離散ドメインに統合することができます。角速度をda、時間積分をaとする。 kは離散ステップ番号です。

a(k) = a(k-1) + T*0.5*(da(k) + da(k-1)) 

例えば、da(k)は現在の角速度の読み取り値です。 da(k-1)は、事前に角速度の読み値です。 a(k-1)は前のステップの積分値(回転角)です。 Tはサンプリングレートである。センサーが1ミリ秒ごとに出力する場合、Tは0.001になります。

この式は、k> 0のときに使用できます。初期値a(0)を与えなければなりません。

関連する問題