質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.47%

  • Android

    6628questions

    Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

  • Android Studio

    3785questions

    Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Android 加速度センサー 動き

解決済

回答 3

投稿

  • 評価
  • クリップ 0
  • VIEW 2,474

fefe

score 56

考え方についての質問です。
現在加速度センサーを使用したモーション判定のアプリ(円を描く、四角を描くなど)を作成しようと考えているのですが、x,y,z軸の値は取れるのですが、円を描いた時に円を描いたと判定するにはこの値をどのように計算すればモーションの判定が出来るのでしょうか?

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 3

checkベストアンサー

+2

計算方法だけ提示されても間違いなく実用にはならないので、まずは物理(空間と運動の関係)と数学を勉強する必要があります。

加速度を積分すると速度が計算できます。それをさらに積分すると移動距離が出ます。加速度を微分すると動き始め、終わりが判定できます。1軸で直線運動ならまだ簡単です。

Androidの加速度センサの軸は端末の向きなので、同じ方向に動かしても端末の向きによってどの軸に値が出てくるかは変わります。斜めになっていれば複数の軸に値が出てきます。

さらに、動かしてる途中で端末の向きが変わることも考慮したほうがよいかもしれません。座標系を変換して世界座標(東西南北高さの座標)にしてから考える場合もあります。行列計算の知識が必要です。

円運動などということになると、「空間中で物体が円運動する」というのはどういうことかを数学的に理解しておかなければなりません。x^2+y^2=aとか、これを時間(t)を媒介変数にして表した方程式とか、ああいうやつです。これを3次元で考えるのです。で、取得した加速度センサーの値とこの運動がどう結びつくのかを理解して、やっと「運動を判定」にたどり着くことが出来ます。

AndroidのAPIにこのあたりの計算を支援してくれるものもあるようですが、これらを理解してないとリファレンスに書いてあることが理解できません。

ということで頑張ってください。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

+1

円軌道を描く物体には「向心加速度」という加速度がかかります。
こいつは、常に同じ場所を指している加速度です。

各軸方向の加速度を合算すれば、加速度ベクトルを得ることができるので、
これがある範囲をさし続ければ円軌道を描いている、ということになるのでは?

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/04/12 13:45

    申し訳ない。言葉の定義(向心加速度)は正確じゃないかもしれません。
    とりあえず、円軌道の場合は常に中心を向き続ける加速度がかかります。

    キャンセル

+1

理論としては先の方の解答を参考にされたらいいと思います。

ご存知でしたら失礼ですが、
加速度センサから得られるセンサ情報は、当たり前ですがノイズやら手ブレやらが入るため、ローパスフィルタがないと精度的に厳しいかもしれませんので、頭の隅にでも置いておいて下さい。
(といっても、この部分の実装は簡単です。)

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

関連した質問

  • 受付中

    arduinoと温度センサ

    arduinoと温度センサ arduinoで温度センサを自作しようと考えています。 そこで、7セグLED温度センサのPICをarduinoで代用出来ないかと考えました。マイコン→A

  • 受付中

    arduino、加速度センサでprocessing RGB cubeをコントロールする。

    一応書いてみましたが動きません。 色々なサイトも見てみたのですがよくわかりません。 ついでにY方向やX方向に行くと音楽がなるというのも 教えていただけるとありがたいです。 #a

  • 解決済

    Android端末のセンサについて

    現在、Xperia Z SO-02のジャイロセンサと加速度センサから物体の傾きを測定して、それに合わせてモータ(サーボかブラシレス)を動かして物体の水平を保つというシステムの開発を

  • 解決済

    センサ情報をCSVに変換して保存したい

    前提・実現したいこと AndroidStudioでセンサーのログをcsvに変換してSDカードに記録するアプリケーションを作成しています。 発生している問題・エラーメッセージ

  • 受付中

    三軸加速度センサを用いた万歩計の作成

    三軸加速度センサを用いて万歩計を作成したいのですが、センサの傾きに関わらず値を導出する方法がわかりません。 現在は Zに1gがかかった状態(平らな上に置いた状態で) 500:

  • 受付中

    Androidアプリでセンサとのデータ受信

    今現在Androidアプリでbluetoothを扱おうと考え触っていたのですが、詳しい仕組みがわからず困っています。現在のサンプルコードでは接続が確認されると乱数が表示されるように

  • 解決済

    pythonで方位センサを使いたい

    Raspberry Pi 3 ModelB Ver1.2を使っております。 言語はpythonです。 友達から無理だと方位センサを託されました。 秋月で購入したものですでにペー

  • 解決済

    GPSセンサを利用する

    下記のURLを参考にGPSデータを取得しようとしております。 ①~④を実施しましたが、エラーが出てコンパイルできません。 ご指導いただけると幸いです。 http://arms2

同じタグがついた質問を見る

  • Android

    6628questions

    Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

  • Android Studio

    3785questions

    Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。