beatmaniaの特徴的なデバイスであるターンテーブルの構造と、動作の仕組みをまとめます。
主に5鍵についてまとめていますが、同じ構造のIIDXについても一部解説します。
ターンテーブルの構造
beatmaniaのターンテーブルには「歯車」と「フォトインタラプタ」が使用されています。
これは初代beatmania(5鍵)筐体、IIDX筐体、各家庭用コントローラーもほぼ同じです。
唯一の例外がbeatmania IIIです。
私は詳しくありませんがロータリーエンコーダが使われているらしい?
歯車・ギア
歯車は均等にスリットが入った円盤です。
5鍵初代beatmania筐体ではスリットの数が72枚。
360°/72=5°の回転で検出されるようです。
家庭用では省スペース化のため垂直に配置されています。
ASCIIコン・DJ Station Proはアーケードの半分で36枚。
なので10°で検出。
IIDXの専コンは50枚なので7.2°で検出するようです。
フォトインタラプタ
「発光するLED」と「受光する光センサー」とを組み合わせて、隙間に物が挟まっているか検出するセンサーです。
センサー部のみを指して「フォトセンサ」、「フォトダイオード」、「フォトトランジスタ」などと呼ばれる場合もあります。
似たやつで「フォトリフレクタ」は遮蔽の検知ではなく、反射光の検知なのでちょっと違う。
ここでは全体を指して「フォトインタラプタ」と呼称します。
アーケードで使われているのは「F」字型のフォトインタラプタのようです。
型番としては東芝のTLP1201Aとか、シャープのGP1A22HRなど。
いずれも5Vで動作します。
家庭用はRPI-441C1など?こちらはセンサー部とLED部で別々に給電します。
センサー部には3.3V、LED部には電流制限により1.14Vが印加されています。
アーケード・家庭用共に遮蔽の際に電圧がHighになります。
回転の検出
フォトインタラプタのパルス位相が90°(波長の1/4)ズレるように2つ配置すると、回転の方向も検出できます。
図にするとこんな感じです。縮尺はほぼ正確。
(クリックで拡大します)
右のセンサーが赤くなる瞬間に、左センサーはどうなっているか?に注目してみましょう。
反時計回りの場合は、右が赤くなる瞬間、左は青いです。
時計回りの場合は、右が赤くなる瞬間、左も赤いです。
このように「どちらかが変化したとき、もう片方がどうなっているか?」を確認すればどちらに回転しているか判断することができます。
検出信号の処理
アーケードの場合
5鍵の筐体にはターンテーブルの信号を処理する専用のサブ基板があります。
上の例では右のセンサーの立ち上がり(赤くなったとき)に注目しましたが、
実は回転方向を検出できるタイミングは
・左センサーの立ち上がりエッジ
・右センサーの立ち上がりエッジ
・左センサーの立ち下がりエッジ
・右センサーの立ち下がりエッジ
の4ヵ所あります。
ただ実機で検証してみたところ、ほぼ「右センサーの立ち上がりエッジ」(例と同じパターン)のみを使用しているようです。(若干例外的な挙動もあり)
仮に、全部のタイミングで検出すれば実機の4倍(1.25°で検出)の感度を持つターンテーブルも作れます。
手が触れただけで反応しますし、1回転スクラッチが90°で終わることになりますw
このサブ基板からはLANケーブルのようなものが伸びており、シリアル通信で現在の回転位置をメイン基板に送信しています。
この通信についても研究しましたが、長くなるのでそれはまた別の記事に。
家庭用の場合
家庭用でも、アーケードと同様に片側のエッジで検出しますが、立ち下がりエッジを使用しています。
センサーの位置はASCIIコン・DJ Station Pro・IIDX専コン(右皿のとき)、いずれも共通で、上側のセンサーの立ち下がりエッジです。
基本的にはアーケードと同じ仕組みですが、回転の位置を管理していません。
単に回転方向によってコントローラーの↑or↓入力が行われます。
連続で同じ方向に回したときに途切れないように、同じ方向の信号を一定時間出し続けるようになっています。
これが私の感覚では少し長く感じられます。
恐らく200ms以上あるために「アーケードで押し押しできる譜面が家庭用ではできない」と言うことが起こります。
これらを踏まえて
ターンテーブルの仕組みを理解するとこんな応用ができます。
- 家庭用の検出部分を自作して押し押しを入れやすくする
- アーケードの皿を家庭用で使う
- 家庭用の皿をアーケードで使う
次の記事ではこのあたりをまとめていきます。
コメント