ボタン・レバー入力について学ぶ

ゲーセン店員時代から20年程が経ち、連射装置をどのように取り付けていたのか記憶が怪しくなってきました。
ちゃんと理解せずに付け方だけを覚えていたせいで忘れてしまったんですね。
そこで、アーケード筐体における連射装置などの取り付け方法を学ぶことにします。

ボタンやレバーの入力をするということは(補講)

まずはレバーやボタンで入力する時、電気的にはどのような状態になっているのか整理してみます。

以前こちらに誤った内容を書いてしまったのですが、訂正文を追記した通り、ボタンを押したときは0V/離したときは+5Vになります(負論理)。
基板のテストモードで確認した場合の“ON”は0V/”OFF”は+5Vです。

疑問に思ったことを調べてみる

疑問

構造に関して
  • 電子工作のサイトや書籍を見ると、スイッチを付ける際は誤動作を避けるために必ずプルアップ/プルダウン抵抗を付けるよう書かれています。
    しかしレバーやボタンの交換をした際に抵抗を見たことはありません。
    スイッチとしての機能しかないレバーやボタンで、なぜ1Fという短時間の入力を正確に読み取ることができるのでしょうか。
接続に関して
  • 「連射装置を作る①」でV-SYNC信号に同期して単体で+5V/0Vを切り替えることはできました。
    これをゲームセンターの連射装置のように使用するには、どのように接続すればよいのか

    通常STG台では
    A,B,A連
    というボタン配置になっていて、A連を押しつつAボタンを押した場合にはA押しっぱなし(溜め撃ち等)になるのが一般的です。
      

  • ゲームによっては同時押しボタンがあると便利なものがあるため、同時押しボタンの接続方法についても理解したい

解決へ

ヒントを求めて電子回路のサイトや書籍を調べてみたのですが、アーケード基板と同じケースはなかなか見つかりません。
そんなとき素晴らしい情報を見つけました。

基板側がプルアップ抵抗になっているのですね!
具体的な配線イメージも記載されていて大変助かりました。
特に同時押しや複数のボタンに連射を割り当てる時の配線など、とても参考になります。感謝、感謝です!

ちょっと理解に手間取った図4のケースについては、以下のサイトが役に立ちました。

JAMMAコネクターのレバー・ボタン用のピンの先にはICなどの電子部品が取り付けられているため抵抗があり、ボタンを押したときはボタンを通ってGNDに流れるルートで全ての電流が流れるため、レバー・ボタン入力としては”ON“(0V)になるのですね。

まとめ

  • 基板側がプルアップ抵抗になるためレバー・ボタンはただのスイッチで良い
  • 連射装置はレバー・ボタンのGNDに接続(GNDの電位を0V/+5V切り替える)
  • 複数の連射ボタンをつける場合でも連射装置は1つで良い
  • 同時押しはダイオードを使って接続する

回路シミュレータを使用して具体例を載せてみました(2019.10.18追記)

ボタン・レバー入力について学ぶ②

2 COMMENTS

げえむのごんちゃん

はじめまして。
紹介していただいた記事(mixi日記)を書いたげえむのごんちゃんです。
連射装置や同時押し装置を手に入れたけどどのようにつなげばいいのかよく分からなくて苦戦している人がいたので書きました。
参考になるwebサイトを探したのですが見つからなかったため自分で書いた、という次第です。

参考になったようでなによりです。
記事を頑張って書いた甲斐がありました。
ありがとうございます。

返信する
dende256

はじめまして、コメントありがとうございます!
アーケード基板環境を作成するにあたって、理解してから接続したかったためいろいろ検索してみたのですが、なかなか求めているものと合致する情報を見つけられず困っていました。
そんな時にネット検索でげえむのごんちゃんさんの日記を見つけ、勉強させていただきました。大変感謝しております。

レバー・ボタン入力について学んだことの応用として、
バトルガレッガ用のコントローラー作成(連射・同時押しボタン付)が実現でき、
さらにその応用として、現在コマンドコントローラー(バーチャファイターのトレーニングモード作成)に取り組むことができています。

まだまだ未熟なところがありながらも少しずつ先に進めているのはげえむのごんちゃんさんをはじめとするみなさんのおかげです。
本当にありがとうございました!

返信する

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です