ポク太郎です。
要らない無線キーボードと不要な廃材を使って無線アーケードコントローラーを作ってみました。
1. 無線アーケードコントローラ
中身は単なるキーボード。無線化するのに回路を組むのが面倒なので、要らない無線キーボードをバラして利用しました。
2. ぶっ壊すキーボードを調べ尽くす
キーボードの構成物は、
・基板に信号を伝えるフレキシート2枚
・3cmx4cm程の基板
・無線のUSB受信機
・他
2枚のフレキシートにはそれぞれ同じ位置に白い点々があります。それが接点で、ゴムシートで押されると電気が流れるスイッチとなる仕組みです。
キーボードのようなスイッチがたくさん並んだものは大抵マトリクス回路。行と列を交互に接続してどのキーが押されたかを判別する回路です。
端子Col1~3、Row1~3はICに繋がっており、恐らくColが出力、Rowが入力でプルアップ付。
例えば、SW21だけが押された場合を考えます。つまり、Col2端子とRow1端子だけが繋がった状態。
ICはCol1端子だけ0を出力し、Row1~3端子の電圧を調べる⇒全部1。
ICはCol2端子だけ0を出力し、Row1~3端子の電圧を調べる⇒Row1だけ0、他は1。
ICはCol3端子だけ0を出力し、Row1~3端子の電圧を調べる⇒全部1。
つまり、→SW21が押された!と判断します。
以降繰り返し。
上記を各0.1秒とか微小時間ごとに繰り返すことで、どのキーが押されたかを判別することができます。人間の動きに対し十分に短い時間で繰り返す“ポーリング監視”と言います。
上の図では行が3本、列が3本→9個のSWを判別可能。
キーボードのキーの数は100ちょっと。11行x11列のマトリクスがあれば121のスイッチが判別できるのでおおよそ11本づつ位。
このキーボードの回路を見るとフレキシートに繋がる端子が23ピン。片方が11本、片方が12本のようです。
2枚のフレキシート片側がColで、もう一方がRow。あとは…、
キーボードのどのキーが、フレキシートのどの接点で、それが基板上のどのピンなのかをテスターでひたすら調べていきます。
裏返して上下左右反対になったり、どちらから数えてたか分からなくなったりするので、表計算ソフトに絵を描き、こんな感じで記録していきます。
このキーボードは全部で104キー。しっかり行と列両方が同じ数になるよう調べ上げます。
ここまで調べ上げたら、中の基板と無線のUSB受信機以外はお払い箱です。
3. アケコンの仕様を整理
電源SW 予備SW | ||
⑦ | SEL START 予備 | ⑧ |
上 左 右 下 |
①②③ ④⑤⑥ |
上 左 右 下 |
それぞれが一つのキーに割り当てられます。電源、予備SW以外。
まず、ツインレバー。2本あると便利です。
また、プレイステーションのコントローラでは人差し指と中指で押すL1、L2、R1、R2なる片側二つづつのボタンが存在します。
それ使う感じのゲームにも対応できるようレバー近くにボタンを配置。が、レバーなのでボタン二つの操作はどの道無理→てことで左右に⑦⑧を一つづつ配置。
他、後から追加するのは面倒極まりないので、SW一個とボタン一個をリザーブとしておきます。
ここで転ばぬ先の杖。キーボードとアケコンの違いを考えます。
キーボードは両手の指10本でキーを押しますが、“同時押し”をあまり使いません。あるとすればSHIFT、CTRL、ALTなどの装飾キー位。
一方ゲームは、例えば斜下+ボタン三つ押しっ放しとかあります。ということは、5つ同時押し。しかも激しい操作。
このキーボードの回路が対応できる仕様なのか分かりません。
そこで、同時押ししそうなものを行列の別々の場所に割り当てます。しそうなのは、
○左レバーの左上、右上、左下、右下と右レバーの〃。
○左レバーの左上、右上、左下、右下と⑦⑧。
○右レバーの左上、右上、左下、右下と⑦⑧。
同行内、同列内での同時押し頻度が下がるよう、上で作った表を見ながら一つづつ割り当てていきます。
そうなると選択の幅が結構狭まるので、逆に絶対に同時押しされないものは積極的に同行、同列に割り当てます。例えば、上と下、右と左、右スティックと①~⑥等。
また、“SHIFT等の装飾キーは使用しない”、または、“あまり押さないセレクト、スタートに割り当てる”ようにします。「連打されました」とOSのアラートが出るので。
4. 金属加工できないので木工アケコン
決めた構造は、
∵ネジ外せば天板と底板が完全に分離可能なように。
●天板と底板の隙間を構成するのは3cm角材。
∵天板裏からのレバーSW部の飛び出しが2.6cmだったため。※
●底板、天板はMDF材を選択。幅45cmx奥行き25cm、厚さは12mm。
∵反りが発生しないMDF材。極薄構造にはならないので操作で浮き上がらないよう奥行と重量でカバー。結構ズッシリ。9mm厚でもいけそう。
●ボタンのロック爪用に、天板の上に2.5mm厚のベニヤ。
●角をすべて丸くし、塗装+サンダー→ニスで表面スベスベに。
これが底板。あらかじめナットを埋め込んだ角材を木工用ボンドで貼り付けてあります。
貼り付けた角材には、6地点にM6のナット埋め込み。反対側からΦ9mmの穴を掘り、グリグリ埋め込みます。
写真では分かりずらいが、天板の上には、ボタンロック用の2.5mm厚のベニヤ。
穴空けは、電動ドリル、ホールソーまたはヤスリ。
ボタンやスイッチの首部分にロックが付いてるので、それを2.5mm厚のベニヤで受け止めます。
なので、“2.5mm厚のベニヤの穴空け”は正確である必要があります。ドリルでとりあえずの穴空け→ヤスリで正確に穴形成。薄いので簡単に拡がります。
“天板のボタン部分”穴空けは、ボタンの爪部の分大きくする必要があるのでホールソー。今回使用したボタンはΦ30mm→ホールソーも30mmので。
レバーの部分の穴空けはドリル→細めのノコギリorジグソー。SWの端子部分など飛び出てるのでモノを当てながら干渉しないよう整形していきました。
全部出来上がったら、組み立てた状態で、カンナ等を使い角を丸く落として行きます。
その後、塗装。適当に塗って乾燥後にヤスリがけ。スベスベになりますが、色が剥げてるので再度塗り直し→ニスでツルツルに。
5. キーボード回路を半田付け
天板以外に線が一切繋がらない構成にしたいので、すべて天板の裏で。
まず電池。元々このキーボードには単四型が使われておりましたが、単三型で。
実装できるなら持ちのいい単二、単一を使いたいのですが、底板と天板の隙間は3cm。単三型が実装できるギリギリでした。
電池ボックスを小ネジで止め、SW経由でキーボードの電源にジャンピングします。
ボタン、SW系は橋渡し半田(一ヶ所から二本の線出すとか)が多く、また、キーボードの基板は小さいので細い線。
面倒だし、細い線は動くと切れやすいので、一旦中継基板に入れそこから半田。
中継基板上に抵抗などのリード線で島を作っておき、一旦そこに半田付け→目的のスイッチへ。こうすると作りやすいし壊れにくいです。
また、基板も小ネジ、両面テープ等で固定して動かないように。
この中継基板上には上で調べてた行と列の島を計22個作ります。んで、基板の端子から細いジャンパー線で各島へジャンピング。
ボタンには端子が二つあるので、割り当てたいキーの繋がる行と列に一本づつ線で繋いでいきます。
結構たくさんあるので大変ですが、頑張って半田付けしました。
最中にあれっと気付いたのは、ESCキー。ゲーム中は触らないが、終了時など特別な場合に押すキー。
それを天板に置いて手が触れると邪魔だが、何かと必要になるキーがたまにあります。
というわけで、天板裏手前、銀行強盗が来たときに右手で押す警報スイッチの位置に、更にスイッチを追加しておくことにしました。
ジャンク品から外したタクトスイッチを四つ。割り当てたのは、ESCキーとファンクションキー。
その他、レバーの支柱は金属製なのでサビると嫌です。なので、住友の熱収縮チューブ。
これはケーブルをまとめるためのチューブ。少しブカブカの状態で差し込んだ後、半田ごてで撫でると縮んでキュッと締め付けてくれます。
因みに、同じ理由で天板を留めるネジはM6のステンレス製皿ネジ。飛び出ないように少し沈めておきます。
6. 夢の無線アケコン完成!
ガラを変えただけなので、ただの無線キーボード。だからもちろん無線。USB受信機をパソコンに挿し、電源を入れるとちゃんと動きます。
で、ゲームをやってみようとしたのですが、キー設定が可能なゲームを持っておりません。なので、操作の具合をテキストファイルで動画にしてみました。
鉄拳のコマンドを技表を見ながら操作してたのですが、なかなか覚えられず時間掛かり過ぎなので、途中からは少し簡単なストリートファイター2です。
いつもに増して真剣に説明しております。
繰り返しになりますがただのキーボード。なので反応速度もキーボード操作時と全く同じです。
まぁ、こんな感じで出来上がりました。
で、そんなん売ってるだろと調べてみたら…、結構高いですね。15,000円から20,000円位します。しかもプレイステーション3用しか見つからず。
パソコンで使えるのかは不明。まぁ何にせよ欲しい人はこんなバカな真似をせずに対応されてる専門品を買った方がいいと思います。
確かに動くんだけどキー設定ができないとどうしようもないので。
そんなことより使いやすい無線キーボードはコレがおススメ。
コメント