安価に(比較的)本格左手デバイスを自作する
こんにちは、初投稿な”センス無い”です。
先日、高専カンファレンスin高尾2018が開催され、そちらの方でLT発表させていただきました。
https://www.slideshare.net/secret/rM9ylHMmhsRi39
その発表内容について詳しく書こうと思います。
大まかな流れは上記リンクのスライドを見てもらえばわかると思うので、単純に制作過程を詳しく説明する記事になります。
今回使用した3Dデータ、ファームウェア等もアップロードしますので、自分も作ってみたいという方はご利用ください。
同じデータで作ると外観は下の画像みたいな感じになります。
この記事通りに作る場合の注意事項(必須条件)
- はんだ付けができる
- 3Dプリンタが使える or その他の方法でケースを作れる
- PICライター(pickit等)が使える
以上だと思います。
ケース作れないならば基板上でタクトスイッチ並べるとかでも良いかもしれないです。
では早速、必要なものリストです。
ICソケットについては丸ピンの方を使うともしかしたらケース内に収まらない可能性もあるかもしれないですが多分大丈夫です。
- 1個 PIC18F2550
- 1個 24ピンICソケット または 丸ピンICソケット
- 1個 20MHzセラロック
- 1個 100μ電解コンデンサ
- 1個 0.1μセラミックコンデンサ
- 1個 アナログジョイスティック
- 1個 ブラケットLED (LED付けたい人)
- 1本 680Ω抵抗 (LED付けたい人)
- 1本 USBケーブル
- 1個 ユニバーサル基板Cタイプ
- 15本 10kΩ抵抗 または 10kΩ8素子9ピン集合抵抗 2個
- 15個 適当なキースイッチ(後述)
- 15個 適当なキーキャップ(後述)
- 適量 配線材
- 10個 皿M2.6タッピングネジ
- 1巻 スズめっき線(あると便利なだけでなくてもいいです)
たぶんこれで足ります。
キースイッチについてですが、CherryMX系のスイッチがハマるようなケースの設計になっています。
僕個人のオススメとしてキースイッチの入手方法ですが、ヤフオク等でメカニカルキーボードと調べて適当なのを落として、分解するのが良いです。
キースイッチとキーキャップがどっちもついてくるのでとても良いです。
それが嫌ならば、千石電商さんとかAmazonさんとかでCherryMXのスイッチが買えるはずです。高いですが。
千石さんで買うとキーキャップもついてくる気がします。高いですが。
材料が揃ったら、3Dプリンタ等でこのデータを印刷するなり手でゴリゴリ切削するなりで作りましょう。
last.zipの内容は
- buttom.STL - 下側の板
- front.STL - 上面のスイッチをはめるやつ
- front_noLED – front.STLのブラケットLED無し版
- slider.STL – ジョイスティックのグリグリ
よくわかんないと思うのでSTLビューワで眺めてみてください。
外身ができたら、キースイッチをはめ込んでニヤニヤしてください。
次にコントローラ基板を作ります。
ケースの都合上とてもスペースが少ないので、端に詰めて部品を配置する必要があります。
また、Cタイプの基板を少し加工する必要があります。
この画像は制作例ですのでこの画像通りにXHコネクタとか使わなくてもきっとだいじょうぶです。
ケース内部のネジ止め用のポールに基板が干渉してしまうので、画像のように基板を切ってください。
穴の数を数えるのに自信が無い方はとりあえず大きめに削っとけばいいと思います。
ニッパー等で穴に添って切って、ヤスリで仕上げるのが一番楽だと思います。
忘れないうちにPICにファームウェアを焼きましょう。
このHEXファイルをpickit等で18F2550に焼いてください。
焼く環境が無い人は、pickitを持ってる人に頼むとかしてなんとかしてください。
ソースコードは当分上げる予定無いです。
基板の加工とファームの書き込みができたら部品を乗せてハンダ付けしていきます。
基板に直でPICを突き刺すような事はしてないですよね?
ICソケットを使ってください。
どうしても直挿ししたい人間はファームを焼くのを忘れないでください。めんどくさいです。
完全に回路図に書くのを忘れていましいたが、+5V-GNDに100μFのコンデンサを接続し、PICの電源ピン付近に0.1μFのコンデンサを接続してください。
なくても動かないわけじゃ無いですが、安定動作のためです。取り付けてください。
基本的に5VとGND、D+、D-さえあっていれば動きます。
つまりこれらは間違えてはいけない重要な配線ということです。
注意して配線してください。
LEDを付ける場合は18番ピンから680Ωの抵抗をはさんでLEDに接続してください。
18番ピン ー> 680Ω ー> LEDの足が長い方 ー> LEDの足が短い方 ー> GND
LEDはPCとの接続に成功すると点灯します。
ジョイスティックは上図のように取り付け、配線してください。
ジョイスティックは突起に合わせてはめ込んだ後、ボンドで固めちゃってください。
スイッチの配線は、生えている2本のピンのどちらかをGNDへ、もう片方をPICへと接続してください。
スイッチのGNDではない配線は10kΩを介して+5Vへ接続してください。プルアップってやつです。これを忘れると入力を読み取れません。
USBケーブルは買ったやつのTypeAじゃない方をぶった切り、線を出しましょう。
キーボードに付属しているやつでも良いですね。
おそらく、赤、白、緑、黒、シールド(銅)が露出すると思われます。
先にケースの穴に通してから、適当回路図の通りに配線してみてください。
白と緑は物によって色が異なる場合があるのでテスターで確認するといいです。
おそらくこれで配線が終わるはずです。
後は雰囲気を察して組み立ててください。
お手持ちのPCにUSBで接続し、ドライバインストールの画面が出てくれば大体成功です。
PCの「デバイスとプリンター」から「Leftside Keypad」を右クリックし、「ゲームコントローラの設定」ー>「プロパティ」でテストのタブで現在の入力情報が確認できます。
なにも触っていない状態ならば、軸は中央、ボタンはすべて暗い色になっています。
ジョイスティックを操作し、軸が動くこと、すべてのボタンを押して、それぞれのボタンが反応している事を確認してください。
触っていないのに、軸が動く場合はジョイスティックの配線がうまくできていない可能性があります。
触っていないのに、ボタンが反応している場合は、該当ボタンの配線がうまくできていない可能性があります。プルアップ抵抗周りも見直してください。
それ以前にUSB機器として認識されない場合は、電源ライン、D+、D-の配線が間違っている可能性があります。
PICが熱くなっているようならばPICを差し込む向きが逆な可能性があります。
それでもダメならば、どっか(特に電源ライン)がショートしている可能性があります。
無事動いたならば、適当に感動してください。
以上です。
苦情や文句、非難、不満、その他質問、要望等があればTwitter:@N0n3enseにお願いします。
ここのコメントでも良いですが多分Twitterのほうが反応が速いです。
クッソ適当な記事でしたが読んでくれてありがとうございました。
それでは良い自作ライフを
なんだかソフトとハードを中途半端にやってるハイブリッド人間(自称)です