工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 産業技術

Arduino ジョイスティック モジュール:効果的に作成する方法

ジョイスティック モジュール

現在、モーションやロボティクスに関連するプロジェクトを扱っていますか? Arduino ジョイスティック モジュールについては聞いたことがあるかもしれませんが、作成方法はわかりません。

それとも、Arduino ジョイスティック モジュールの仕組みについてもっと知りたいですか?

それなら、あなたは正しい場所にいます。

Arduino ジョイスティックの目的は、モーションを Arduino に伝達することです。また、これを 2D (2 軸) で実行するため、モーションおよびロボット工学のアプリケーションに適しています。

そのため、この記事では、Arduino ジョイスティック モジュールのすべて、その仕組み、および簡単な Arduino ジョイスティック回路の作成方法を学びます。

準備はできたか?飛び込みましょう!

ジョイスティック モジュールとは?

ジョイスティックを必要としないロボット プロジェクトはほとんどありません。プロジェクトに適したコントローラーを入手するのが難しい場合があり、高価になることさえあります。ただし、ジョイスティック モジュールを使用すると、同じ結果をより手頃な価格で実現できます。

また、ジョイスティック モジュールは、アナログ ゲームパッドにあるジョイスティックと同様に機能します。その主要なコンポーネントは、90 度の角度に傾けられた 2 つのポテンショメータです。さらに、短いスティック (中央にスプリングが付いている) とポテンショメータの間に接続があります。

ポテンショメータ

ジョイスティック モジュールは、静止時に X 軸と Y 軸から約 2.5V を出力できます。ここで、ジョイスティックを動かすと、出力が 0V から 5V まで変化します。ただし、これは方向によって異なります。

さらに、ジョイスティック モジュールを備えたマイクロコントローラを使用する場合、静止位置での実際の値は約 512 になります。したがって、このジョイスティックを動かすと、値が 0 から 1023 に変化することがわかりますが、これは位置によって異なります。

ピン構成

ジョイスティック モジュールのピン構成は次のとおりです。

F食べ物

Arduino ジョイスティック モジュールの主な機能は次のとおりです。

技術仕様

ジョイスティック モジュールの仕様は次のとおりです。

概略図

下の画像は、ジョイスティック モジュールの完全な回路図を示しています。前述のように、このモジュールには、X 軸と Y 軸を制御する 2 つのポテンショメータがあります。

ジョイスティック モジュールの回路図

さらに、両方のポテンショメータ (10k) は独立して動きます。つまり、それらを個別に、その方向に移動できます。また、プッシュ ボタンへのスイッチ (SW) ピンの内部接続があります。

ジョイスティックと Arduino のインターフェース

ジョイスティック モジュールは、Raspberry Pi、Arduino などの多くのマイクロコントローラーと互換性があります。さらに、インターフェイスが簡単で、最初に VRx および VRy 軸ピンをマイクロコントローラーの ADC ピンに接続する必要があります。

また、スイッチを使用する場合は、ボタンをマイクロコントローラーのデジタル ピンに接続する必要があります。

ジョイスティック モジュールを任意のマイクロコントローラーに接続する方法を理解するには、下の図を確認してください。

ジョイスティック モジュールからマイクロコントローラへ

次の図は、ジョイスティック モジュールを Arduino と接続する方法を示しています。この図では、モジュールを Arduino に接続できます。また、ジョイスティックのノブを動かす方向に応じて出力が得られます。

Arduino へのジョイスティック モジュール

インターフェースが完了すると、各方向の出力範囲が固定されていることがわかります。次の図は、+X、-X、+Y、および –Y の 4 方向のジョイスティック モジュールの動きに応じた X 軸と Y 軸の出力を示しています。ノブを斜めに動かすと、いくつかのアナログ値も表示されます。

移動方向

ジョイスティックのノブを押したときに知りたい場合は、SW ピンを Arduino のデジタル ピン 8 に接続することもできます。

さらに、ジョイスティックが正しく動作するには電源が​​必要です。そこで、VCC ピンを Arduino の 5V 端子に接続し、GND を Arduino の GND 端子に接続します。

Arduino コード

このプログラムを Arduino IDE でコーディングするのは非常に簡単です。したがって、最良の結果を得るには、1 つのデジタル入力ピンと 2 つのアナログ入力からジョイスティックの動きを測定します。次に、Arduino はモニターに影響を表示します。

ここが最高の部分です

このプログラムをコーディングするのにライブラリは必要ありません。アナログ入力を読み取り、そこから取得した値を表示するだけです。さらに、ボタンを押したときの出力も表示されます。

コードの生のスケッチは次のとおりです:

<オール>
  • #define joyX A0
  • #define ジョイY A1
  • 無効 セットアップ () {
  • シリアル . 開始 ( 9600 );
  • }
  • 無効 ループ () {
  • // ここにメイン コードを配置して、繰り返し実行します:
  • xValue = アナログ読み取り ( ジョイエックス );
  • yValue = アナログ読み取り ( 喜びY );
  • //プロットまたは表示する値を出力
  • シリアル . 印刷 ( xValue );
  • シリアル . 印刷 ( 「\t」 );
  • シリアル . println ( y値 );
  • Arduino コードを示す画像

    マッピング

    場合によっては、アナログ値を読み取ることがすべてではなく、モジュールをディスプレイまたは他のインターフェイスにマッピングする必要がある場合があります。そのため、上記のコードの値を 8×8 LED マトリックスにマッピングする方法を紹介します。

    Arduino マッピング

    このプロセスの結果、ディスプレイ上のピクセルがジョイスティックで移動します。また、コードを変更して OLED またはグラフィック ディスプレイにマッピングすることも簡単です。

    <オール>
  • #include 「LedControl.h」
  • #define joyX A0
  • #define ジョイY A1
  • int xMap yマップ xValue y値 ;
  • LedControl LC = LED コントロール ( 12 11 10 1 );
  • 無効 セットアップ () {
  • シリアル . 開始 ( 115200 );
  • LC . シャットダウン ( 0 );
  • /* 明るさを中間値に設定します */
  • LC . 設定強度 ( 0 8 );
  • /* ディスプレイをクリアします */
  • LC . クリア表示 ( 0 );
  • }
  • 無効 ループ () {
  • // ここにメイン コードを配置して、繰り返し実行します:
  • xValue = アナログ読み取り ( ジョイエックス );
  • yValue = アナログ読み取り ( 喜びY );
  • xMap = 地図 ( xValue 0 1023 0 7 );
  • yMap = 地図 ( y値 0 1023 7 0 );
  • LC . setLed ( 0 xMap yMap );
  • LC . クリア表示 ( 0 );
  • }
  • Arduino を OLED またはグラフィック ディスプレイにマッピングするために必要なコードの画像

    注:上記のコードは、map() 関数を使用して、好みに合わせて範囲をマッピングできることを示しています。

    したがって、すべてが正しければ、シリアル モニターの出力は次のようになります。

    アプリケーション

    Arduino ジョイスティック モジュールのいくつかのアプリケーションを次に示します。

    ロボット ドローン

    可動カメラ

    切り上げ

    ジョイスティックと聞いて真っ先に思い浮かぶのはゲームコントローラーでしょう。ただし、DIY エレクトロニクスに関しては、ジョイスティック モジュールの非常に多くのエキサイティングなアプリケーションがあります。

    ゲーム コントローラ

    さらに、これらのモジュールは、主に Arduino とロボット制御に基づく DIY プロジェクトで機能します。前に説明したように、ジョイスティック モジュールは、スティックの水平方向または垂直方向の動きに応じてアナログ入力を供給するアナログ出力を最初にリリースしました。

    では、以上でこの記事を終わります。ご質問やご提案がございましたら、お気軽にお問い合わせください。いつでも喜んでお手伝いいたします。


    産業技術

    1. カスタマイズ可能なパンチ可能なキーボードボタンの作り方
    2. ArduinoMegaをNEO-6MGPSモジュールとインターフェースする方法
    3. Arduinoジョイスティック
    4. Arduinoで音楽を作る方法
    5. Arduinoベースの自動ドア開口部の作り方
    6. ArduinoBluetooth制御車の作り方
    7. ArduinoNanoを使用して自宅でミニオシロスコープを作成する方法
    8. Arduinoチュートリアル:JARVIS v1 |ホームオートメーションの作り方
    9. rDUINOScope
    10. 自宅でジェスチャ制御ロボットを作る方法
    11. Arduinoを使用して自宅で大きな3Dプリンターを作成する方法
    ピン番号 ピン名 説明
    1 GND モジュールのアース端子
    2 +5V モジュールの正電源端子
    3 VRx X軸に比例する電圧
    4 VRy Y軸に比例する電圧
    5 SW モジュールのスイッチ