[Android] Gyroscope ジャイロセンサー

スマホのスピンやターンを検知するセンサーとしてGyroscopeがあります。
gyro driftを補正した TYPE_GYROSCOPE
gyro drift補正の無いTYPE_GYROSCOPE_UNCALIBRATED があります。
 
axis device2 - [Android] Gyroscope ジャイロセンサー

Android Studio 3.5.3
API 29



Gyroscope

 
Gyroscopeの座標系は加速度センサーと同じです。端末x, y, z軸の反時計方向での回転速度、角速度を計測します。単位は[rad/s]
Gyroscopeには2タイプあります

TYPE_GYROSCOPE_UNCALIBRATED はジャイロドリフトの補正がないセンサー出力です。ジャイロドリフトの補正がないと放置しておくとバイアスがかかったように徐々にずれていきます。
 
ただキャリブレーションによる値のジャンプがより滑らかで、この他のセンサー値との合算を考えるケースではこのセンサー値を使う方が一般的には役に立ちます。但し、工場出荷補正と温度補正は適用されます。
 
加速度センサーはAndroid Studioのemulatorを使ってemulateできましたが、Gyroscopeは使えないようです。
 

 

TYPE_GYROSCOPE

 
実装を簡単に説明すると

  • SensorEventListener の設定
  • SensorManager のインスタンス生成
  • registerListener の登録
  • onSensorChanged でセンサー値の受け取り

となります。実際ににやって見ましょう。
 
MainActivity.java

 

activity_main.xml

 
また、スクリーンが回転すると面倒なので固定しておきます。
AndroidManifest.xml

 
Nexus 5X での結果です。

gyro - [Android] Gyroscope ジャイロセンサー
 

 

 

TYPE_GYROSCOPE_UNCALIBRATED

 
実装はTYPE_GYROSCOPEと同様です。
センサー出力にestimated driftがそれぞれx, y, z軸についてリポートされますが、その関係性はこのようになります。
 
calibrated_x ~= uncalibrated_x – bias_estimate_x
 
MainActivity.java

 
レイアウトはTYPE_GYROSCOPEと同じです。
 
gyro uncalib 01 - [Android] Gyroscope ジャイロセンサー
 
 
関連ページ:
Sensor 一覧を取得する
加速度センサー:Accelerometer
加速度センサーで球ころがし
Gyroscope ジャイロセンサー
 
Reference:
Sensor
SensorEvent
SensorManager
Motion Sensors

誤字脱字、意味不明で分からにゃイ、
などのご意見はこちらから mailフォーム

ブックマークしておくと便利です このエントリーをはてなブックマークに追加

 

アプリ開発が上達するお勧め

アプリ開発を始めたけどわからないところがあり、誰かに聞きたいけど周りにはそんな人はいない…あるいは、会社で働いていて日中そんなに時間をとれないなど、オンラインのプログラミングスクールがいいでしょう。

オンラインスクールは色々ありますが、以下の3つはAndroidが学習できる老舗スクールです。


TECH ACADEMY
Androidアプリコース


こういうものではアプリ作れないと言う意見もありますが、それは結局本人のやる気があるかないかです。やる気があっても独学では突破しにくいところは教えてもらうのが一番早い。


侍エンジニア塾
侍エンジニア塾 無料体験レッスン


とても簡単なことなのに本やネットの画像だけでは分かりにくいことはあります。実際に質問してピンポイントで教えてもらうと、なんだそんなこと、と言うのがけっこうあります。


CodeCamp
~約8,000名の受講生と80社以上の導入実績~
現役エンジニアのオンライン家庭教師CodeCamp




直接(ネットで)誰か分かる人に聞いた方が早く解決して、上達も早いと思います。


無料で転職まで
これはアプリ限定ではありませんが無料です
その代わり就職することを前提にしたスクールでエンジニアになって職を得たいのであれば手っ取り早いかもしれません

受講料無料:社会人転職コース




シェアする

  • このエントリーをはてなブックマークに追加

フォローする