(第6回)コントローラー(その1)
まえばしロボコンに参加してから毎回コントローラーを自作していました。理由は競技によって使うモーターの数やセンサーなどを変える必要があったためです。しかも自作のため、持ちにくい!自分以外の人が操作すると「使いずらい」と不評でした・・・。
そこで市販のコントローラは使えないか?と検索するとPS2のコントローラが有線でArduinoのライブラリがあるということがわかりました。(リンク先参照)
すでにPS5が出ていますので、PS2でゲームをしているという人は少ないと思いますが、ロボコンでPS2のコントローラをつかっているというサイトがあり、そのサイトを参考にしてPS2のコントローラーを使えるようにしたいと思います。
BOOKOFF等で探すと比較的安く手に入れることができるかもしれません。マイコンを中に設置する場合は、クリアタイプ(クリスタルがベスト)をおすすめします。マイコンのLEDが外からも確認できます。無線タイプは電池が必要になるので、まえばしロボコンでは使用できません。
1.コントローラー加工
<<最初に>>
加工は難しい部分が多いです。理由は、コントローラーの一部を切り取って、コントローラーの内部にマイコンを設置するため、うまく配線をしないとマイコンがコントローラーに入らない場合があります。「難しいな」と思った場合は、コントローラーの中に設置せずに、コントローラの外に設置しても良いと思います。
その場合は、コントローラーの四角いコネクタと接続する部品も販売されています。(Playstation2 コントローラー コネクタ で検索)
また、コネクタ部分を分解して配線すると比較的楽に接続できると思います。
ご自身のやりやすい方法で接続していただければと思います。
方法①コントローラーにマイコンを入れて線をつなげる。(難易度:高)
方法②コントローラーの外にマイコンを接続。
<使っている部品>
a.アナログコントローラ(DUALSHOCK 2)
b.抵抗(1kΩ)
1.配線図
コントローラーの外で接続する場合は、コネクタの番号とマイコンを接続。コントローラーの中で接続する場合は、基板の番号と接続します。
LEDは今後の拡張用に接続していますが、後で取り付けても大丈夫です。(例:ロボコンで2台(親機子機)を操作する場合、親機操作中→LED ON、子機操作中→LED OFFを考えてLEDを用意しています。)
<プログラム>
Arduinoにピンヘッダを取り付けたら、以下のとおりプログラムを書き込んでおきます。
①ライブラリとは
ライブラリとは、ほかの人が作って提供しているプログラムのことです。PlayStatiionのボタンの取得は通常簡単にはできませんが、このライブラリを使用することで簡単にボタンの取得をすることができます。
Arduino用のライブラリを自分のパソコンにインストールする必要があるので、その方法をご紹介します。
まずは、どこにプログラムを保存するか?自分のパソコンの環境を確認します。
②ライブラリの入手
下のリンク先からダウンロードします。ZIP形式でダウンロードされます。ZIPを解凍してから「PS2X_lib.cpp」「PS2X_lib.h」のファイルがあるフォルダを①のフォルダの中にコピぺします。
③ライブラリの確認
Arduino IDE にライブラリが有効になったか?確認します。メニューの「スケッチ」→「ライブラリのインクルード」の隣に表示される長いリストの下の方に「PS2X_lib」「MsTimer2」の2つが「提供されたライブラリ」に表示されていれば、使用が可能になっています。
④プログラム
下の「プログラム表示」を右クリックして、テキストファイルを保存して、そのテキストの内容を、Arduino IDE にコピーします。
マイコンに書き込みを実施して終了です。
2.マイコン半田付け方法
マイコンへ配線をする時、1kΩの抵抗kを取り付ける必要があります。図を参考に半田付けをします。
Arduinoへ「プログラムを書き込み」「配線を実施」はできましたか?コントローラの外にマイコンを接続した場合は、マイコンを動かすと隣の配線と接触する場合がありますので、となりの配線と接触しないように、テープやグルーガンなどで固定することをお勧めいたします。
-------------