*2軸ジョイスティック [#rbbbcb7d]
#ref(s_joystick.png)
-2軸のジョイスティック
-上下左右の2軸のジョイスティック
-10 kΩの可変抵抗を内蔵
--出力:アナログ電圧出力
--消費電力:0.01 W max
-データシート
#ref(27800-2-Axis-Joystick-Documentation-v1.2.pdf)
-回路図
#ref(27800-2-Axis-Joystick-Schematic-RevB.pdf)
*Arduinoとの接続 [#qcd06901]
-ジョイスティックとArduinoを以下のように接続する。
|信号名|Arduino|備考|
|L/R+|5V||
|U/D+|5V||
|L/R|任意のアナログ入力(A0~A5)||
|U/D|任意のアナログ入力(A0~A5)||
|GND|GND||
~
#ref(Joystick-6.png)
*サンプルコード [#a5b6ca0c]
-「ファイル」→「スケッチの例」→「11.Human Input Devices」→「Joystick_2D」
 /*
 ・Parallaxの2軸ジョイスティックのサンプルプログラムです。
 ・200msごとにジョイスティックの状態を読み取り、シリアルモニタに出力します。
 ・マイコンボードに書き込み後、「ツール」→「シリアルモニタ」を起動してください。
 ・Arduinoとの接続
     L/R+   5V
     U/D+   5V
     L/R    任意のアナログ入力(A0~A5)
     U/D    任意のアナログ入力(A0~A5)
     GND    GND
 */
 
 const int analogInPinUD = A0;    // UDアナログ入力ピン(定数)
 const int analogInPinLR = A1;    // LRアナログ入力ピン(定数)
 int UD = 0;                      // Up-DownのAD値(変数)
 int LR = 0;                      // Left-RightのAD値(変数)
 
 void setup() {
   Serial.begin(9600);           // シリアルモニタを開始
 }
 
 void loop() {
   UD = analogRead(analogInPinUD);   // UDのAD値を取得
   LR = analogRead(analogInPinLR);   // LRのAD値を取得
   Serial.print("UD = ");
   Serial.print(UD, DEC);
   Serial.print(", LR = ");
   Serial.println(LR, DEC);   
   delay(200);
 }
*実行例 [#zd6340d9]
#ref(joystick-serial.png)

*参考資料 [#c20bad59]
-[[Parallax社(2-Axis Joystick)>https://www.parallax.com/product/27800]]
-[[第14回 Arduinoでモーターを制御する!(その4)。リモコンの実装とArduino Pro Miniを使って小型化。>http://deviceplus.jp/hobby/entry014/]]
-[[ジョイスティックでサーボをコントロールする。>http://cordblack.com/arduino/joystick-to-control-the-servo/]]
----

&size(12){Total:&counter(total); / Today:&counter(today); / Yesterday:&counter(yesterday);};

トップ   差分 バックアップ リロード   一覧 検索 最終更新   ヘルプ   最終更新のRSS