質問: 三軸加速度センサを用いて万歩計を作成したいのですが、センサの傾きに関わらず値を導出する方法がわかりません。 現在は Zに1gがかかった状態(平らな上に置いた状態で) 500:500:700の値が取れています。傾けると 500:500:300のように値が変わります 万歩計の作成について色々調べた結果 N=√(x^2+y^2+z^2)という式で傾きに依存せずに値を導出できるようなのですが、 これだと値が高い時と低い時でNの値に大きな差が出てしまい、閾値を設定することが難しいです。 何か良い方法はありませんか?わかりにくい文章ですみません
回答: こんにちは。 > > 500:500:700の値が取れています。傾けると > > 500:500:300のように値が変わります > > > 加速度センサーを使ったことはないのですが、その3つの値が順にx, y, z軸方向の加速度を表しているのであれば、x, y軸の加速度が取れていないように見えます。 傾けた時値は変化する筈なのに変化していませんから。 まずは、加速度センサーの仕様書を読んで、正しい出力を把握しましょう。 そして、その「正しい出力」通りに取れるようにプログラムすることが先決です。 ただ、500, 500と意味不明ながらも値が取れているようですので、ソフトウェア的な問題ではなく断線や固着等のハードウェア的な不具合があるかも知れません。 その場合はteratailで質問するには不適切ですので回路系の質問掲示板等を探して質問されるべきと思います。