• 締切済み

加速度センサの3軸について

加速度センサで3軸を取得して、それをぶったいの回転と連動しようとしているのですが、3軸を円周率に変換する計算式がわかりません。助けてください。よろしくお願いします

みんなの回答

  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.5

 3軸加速度センサー(を取り付けてあるブツ)が静止しているときだけ測定を行うものとします。すると、このセンサーに掛かる加速度は重力加速度だけ。だから、重力の方向(つまり真下)に対してセンサーがどれだけ傾いているかが分かります。すなわち、最初にセンサーを「基準の状態」に置いた時の測定値Za=(Zax,Zay,Zaz)を記録しておけば、以後、センサーの置き方を変えて静止させた状態での測定値Zb=(Zbx,Zby,Zbz)を使って、その置き方が「基準の状態」に比べてどれだけ傾いたかが測れます。しかし当然ながら、方角(東西南北)は計算できません。 と、こういうような応用をお考えであるのなら、こちらがご参照になるでしょう → http://okwave.jp/qa/q7453195.html   また、複数のセンサーをブツのいろんな場所に付けておいて、ブツいろいろ動かしたあとで、「基準の状態」に比べてどれだけ動いたか(移動や回転)を計算したい、ということですと、瞬間ごとの加速度を積分して速度を得て、さらに瞬間ごとの速度を積分することで計算できます。ただし、誤差がどんどん累積して行くという問題がありますが。  こっちの話でしたら、少々勉強が必要です。

  • CC_T
  • ベストアンサー率47% (1038/2202)
回答No.4

まず、3軸加速度センサは初期状態からの「加速度変化量」を計測するもので、一定回転など「慣性運動」している状態を検出する事はできません。 あと、同じ3軸でもX,Y,Zの3軸センサじゃないですよね? 各軸方向にどれだけの「加速度」が掛かったかを検出するものですが、その「加速度」は、回転の接線方向及び遠心力の2力の合成として表れるわけですから、XYZ軸センサと回転中心の位置関係がきっちり与えられないと計算することはできません。また、積分計算により誤差が大きくなりますね。 それからもちろん、センサが回転中心に取り付けられている場合は、XYZ3軸センサでは「回転」を検出できません。 回転を検出するなら、ジャイロセンサが妥当です。そのまま角加速度として出力されますから、換算の必要はありませんし。 そちらのほうは参考資料が多々アップされていますので、改めて検索をお勧めします。 http://www.oidenansho.com/elekijack/mbed/2bk0919_gyro_servo/gyro_servo.htm https://www2.himdx.net/mcr/product/download/2gyro_3acc_module_c_language_headstand_control_program_explanation_manual.pdf

shomarusama
質問者

補足

なるほど。3軸の加速度センサだけじゃ物体の回転は無理ってことですか。ジャイロセンサをつかってみます。ありがとうございます!

  • hashioogi
  • ベストアンサー率25% (102/404)
回答No.3

センサの軸がセンサのパッケージに対して正確に水平/垂直かどうか? センサのパッケージが装置に対して正確に水平/垂直かどうか? 軸を真上に向けたときと真下に向けたときの出力値の絶対値が同じかどうか? 等々も考慮した方がいいかも。

shomarusama
質問者

補足

ご回答ありがとうございます。

  • hashioogi
  • ベストアンサー率25% (102/404)
回答No.2

3軸の内のある1つの軸だけ説明する。全ての軸は同じ考えだと思うから。 センサが理想的であれば、軸を真下に向ければ最大値(または最小値)を出力する。軸を真横に向ければ0を出力する。真上に向ければ最小値(または最大値)を出力する。 例えば 真下:1024 真横:0 真上:-1024 のように。 軸が水平面から角度αだけ下を向いていれば、1024sin(α)の値を出力する。 軸が水平面から角度αだけ上を向いていれば、-1024sin(α)の値を出力する。 こんな感じだと思いますよ。

shomarusama
質問者

補足

ご回答ありがとうございます!

  • shuu_01
  • ベストアンサー率55% (759/1365)
回答No.1

質問の意味がわからないのですが、現実(リアル) での話ですか? 卓球のボールの加速度を計測できるセンサーがあるのですか? 卓球のボールは無理とすると、何の加速度なら計測できるのですか? 加速度だけで、速度自体は計測できないのですか? (速度が計測できたら、加速度もわかりそうなもんですけど) そういうセンサーがあれば、3軸のどの方向にどの位の速度で 回転しているかわかりそうですが、、、、 円周率に変換する計算式ってどういう意味ですか? 円周率って、3.141592654 って定数なので、物体の加速度と 関係ないんでないの?

shomarusama
質問者

補足

すいません。質問の仕方が悪すぎました。http://otn.oracle.co.jp/technology/global/jp/sdn/java/series/sunspot/200803.html このサイトの図8のようにプログラミングしたくて、3軸の座標の傾きは取得できるんですがどうすればいいのかわからないです。