渋谷ほととぎす通信

完全趣味でやってるUnityメモ。説明できないところを説明できるようにするための個人ブログ。昨日の自分より少しでも大きくなれるように。。。 ※所属団体とは一切関係がありません

Arduino ジョイスティックモジュールを使ってスティックの傾けた値を取得する


この記事のシリーズで、今回はジョイスティックモジュールについて調べてみます。

f:id:esakun:20181125205534p:plain
コンシューマゲームコントローラについているようなスティックです。縦横斜めに倒すことができます。

スティックを倒すと、X,Y値それぞれ0〜1023の値で返ってきます。 何も操作しなければXY値それぞれ512が返ってくるのではないかと思います(僕の場合値がずれていて困っていますが)

配線的には、ジョイスティックモジュール側に合わせて、GND、+5Vはそれぞれグランドと5Vピンと接続させます。

VRx、VRyピンをそれぞれA5、A4ピンに差し込みます。
ジョイスティックを倒した値は、アナログピンのA4、A5ピンから読み取ることになります。

f:id:esakun:20181125230807p:plain

以下がサンプルコードです。
gist.github.com

不具合?

f:id:esakun:20181125232602p:plain:w300

先のコードを実行した状態でシリアルモニタに出力すると、ジョイスティックを操作していない状態のXY値がデフォルト値からずれていました。
※本来512だと思われるが、X:502、Y:492とずれている

ソースコードからオフセットを与えることで多少は補正できると思いますが、不良品?なんでしょうかね。

追記 2018.11.26


こちらの記事で同様の数値のズレについて書かれていました。後日参考にして、調整しようと思います。


以上

参考