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

ArduinoベースのAtari 2600コントローラーアダプターの製作

必要な部品と材料

Arduino Micro×1

必要な工具と機械

はんだごて(汎用)

使用するアプリとオンラインサービス

プロジェクト概要

近年、ビンテージコンピューター技術に強い関心を持つようになりました。最も興味深く影響力のあるクラシックデバイスの一つが、1977年に発売されたAtari 2600です。残念ながら私が子供の頃にはすでに20年以上前の機種だったため、プレイする機会がありませんでした。

最近、オンラインで比較的安価なAtari 2600を見つけ購入しましたが、電源を入れると「プスッ」と音を立てて動作しませんでした。古い技術を扱うリスクの一つです。動作保証はなく、煙を出すだけの代物にお金を払うことになりかねません。

当然の解決策はAtariエミュレーターをダウンロードすることですが、キーボード操作ではオリジナルハードウェアの感覚が味わえません。そこで、オリジナルのAtariコントローラーをPCに接続してプレイできるアダプターを自作することにしました。それが本プロジェクトです。

ステップ1: コントローラー内部を確認する

ArduinoベースのAtari 2600コントローラーアダプターの製作
ArduinoベースのAtari 2600コントローラーアダプターの製作
ArduinoベースのAtari 2600コントローラーアダプターの製作
ArduinoベースのAtari 2600コントローラーアダプターの製作

まずAtariコントローラーの仕組みを理解するために分解しました。驚いたことに、中身は制御回路なしの5つのボタンのみでした。つまり、マイクロコントローラーを使えばUSBへの変換は非常に簡単です。分解ついでに汚れをすべて清掃しました。

ステップ2: 必要なもの

ArduinoベースのAtari 2600コントローラーアダプターの製作
ArduinoベースのAtari 2600コントローラーアダプターの製作

重要: このプロジェクトはArduino Uno、Nano、Megaでは動作しません。HID(Human Interface Device)として振る舞えるマイクロコントローラーが必要です。ATmega32U4搭載のマイクロコントローラーが該当し、Arduino Micro(Pro Micro)に搭載されています。

パーツリスト:

ステップ3: 各ピンの役割を調べる

ArduinoベースのAtari 2600コントローラーアダプターの製作
ArduinoベースのAtari 2600コントローラーアダプターの製作

Atariコントローラーには9ピンコネクタがあり、各ボタンに専用ピンとグランド用ピンが1本ずつ割り当てられています。つまり9ピン中6ピンが使用されています。テスターの導通モードでどのピンが繋がるか調べれば対応関係がわかります。面倒な場合は以下の図を参照してください。

例えばファイアボタンを押すとオレンジ線がグランドと導通し、これがボタン押下となります。Arduinoでこれを検知し、対応するキーボードコマンドをPCへ送信します。

ステップ4: ケースの製作

ArduinoベースのAtari 2600コントローラーアダプターの製作
ArduinoベースのAtari 2600コントローラーアダプターの製作
ArduinoベースのAtari 2600コントローラーアダプターの製作
ArduinoベースのAtari 2600コントローラーアダプターの製作

9ピンコネクタはすでに製造されておらず入手困難です。解決策は3Dプリントです。9ピンコネクタのハウジングをプリントし、オスピンヘッダーを差し込んでArduino側のコネクタと接触させます。3Dプリント用ファイルは以下から入手可能です。

Atari+Adapter_(31_29).stl

作り方:オスピンをAtari 9ピンコネクタに差し込み、その上からプリントしたコネクタを被せ、ピンの根元を接着剤で固定します。コネクタを外すとピンがプリント側に残り、完璧に位置合わせされます。

ステップ5: 配線

ArduinoベースのAtari 2600コントローラーアダプターの製作

9ピンコネクタのどの色がどのピンに対応するか確認の上、以下のように配線します:

わかりにくい場合は配線図を参照してください。

ステップ6: コードのアップロード

使用するコードは後述します。Keyboardライブラリを活用し、特定のボタンがLOWになったら対応するキーボードキーを押下、HIGHになったら離すというif文の羅列です。

Keyboardライブラリは非常に簡単で、Keyboard.press(119); でキーコード119(ASCIIで'W')を押下、Keyboard.release(119); で離します。内部プルアップ抵抗をコードで有効化しているため、外部抵抗のハンダ付けは不要です。コードはArduino IDEで開くとコメントで詳しく説明されています。

Arduino Pro Microにアップロードしたら次のステップへ進みます。

AtariController.ino

ステップ7: ケースの組み立て

ArduinoベースのAtari 2600コントローラーアダプターの製作
ArduinoベースのAtari 2600コントローラーアダプターの製作
ArduinoベースのAtari 2600コントローラーアダプターの製作

3Dプリントファイルには9ピンコネクタハウジングのほか、基板を収納するトップ/ボトムパーツが含まれます。これらをプリントしたら、ボトムパーツ(Micro USBケーブル用スペースあり)にArduinoを接着し、フロントに9ピンコネクタを接着します。両方が固定できたらトップパーツを接着して完成です。内部にホットボンドを多めに入れると強度が増し、適度な重みで安っぽさが軽減されます。

予算版3Dプリンターだと表面が粗くなるため、サンドペーパーで研磨してから塗装します。Atariコントローラーと本体に倣い、赤いストライプ版と木目調版の2色を作りました。

ステップ8: 使い方

ArduinoベースのAtari 2600コントローラーアダプターの製作
ArduinoベースのAtari 2600コントローラーアダプターの製作

完成したら実際に使ってみましょう。

  1. Atariコントローラーをアダプターに接続
  2. Micro USBケーブルをPCに接続(「キーボードが接続されました」通知が出ます)

キー割り当ては以下の通りです:

エミュレーター側でキーバインドを調整すれば快適にプレイできます。OTGケーブルがあればAndroidスマホでも動作します。

ご質問があればコメントでお気軽にどうぞ!

コード

AtariController.ino Arduino
No preview (download only).

カスタムパーツとエンクロージャ

Atari+Adapter_(31_29).stl

製造プロセス

  1. Bluetooth操作のArduinoスパイボットを自作する
  2. FlickMote:ジェスチャー操作のIRリモコンでスマートホームを制御
  3. 自作Arduino TV-B-Gone:全テレビ対応の万能リモコン
  4. 12メートル先から見える大型LEDマスタークロック(アラーム機能付き)を自作しよう
  5. ArduinoとBluetoothで作るスマート紛失防止タグ「Find Me」
  6. Arduinoプロジェクトのための最適化電源ソリューション
  7. Arduino三目並べ:MAX7219 LEDマトリクスと段ボールケースで自作
  8. スマートArduino四足歩行ロボットの製作:ステップバイステップガイド
  9. ゲーム用カスタムArduinoジョイスティックハンドルの製作
  10. Arduino Nano R3で本格的なCNCマシンを自作する
  11. Earth Analyzer: 農業支援のための高度IoT環境監視ローバー