ポク太郎です。
あけましておめでとうございます。ジジイの今年一発目のネタは、
ある目的のためにプレイステーション3のコントローラの内部回路を調べています。ジャンク品をかき集め分解する中、同じ型番CECHZC2Jでも2種類見つかったので、そのメモも兼ねて。
発見したPS3コントローラ型番は5種類
ちょっとしたグロ画像ですが、この汚ったいコントローラをまず分解・洗浄してキレイにしました。触る気しないのでね。
入手したのは4種の型番
存在した型番がこう。
●記入無し…ジャンク売り場にいくつか存在。やたらと軽く、モータ無し?と怪み未購入。なので詳細不明。
●CECHZC2J…トリガー部別部品
●CECHZC2J…トリガー部一体型
●CECHZC2JA1
●CECHZC2JA2
次項に書きますが、同じ型番CECHZC2Jにも2種類存在しました。
型番CECHZC2Jにも2種類
ここからの写真は洗浄した後のプレステ3パッド。スルスル滑りまくるほどキレイになりました。
同じ型番に見えるCECHZC2Jですが、明らかに異なる2種類が存在します。外部からの見分け方はここ。
●トリガー部L2、R2下の樹脂が別部品…ここではタイプAと表記。
●トリガー部L2、R2下部は背面樹脂と一体化…ここではタイプBと表記。
クリスマス商戦に間に合わせるため相当なことをやったらしいPS3ですのでタイプAが初期型ではないかと予想。すごく組み立てづらいので。
ソニー内部で管理しない訳無いので、銘板にある「CUL0281」とか「CUL0324」とかって番号がそれを表してるものかと。
タイプAは開けるにも閉めるにも多大な苦労を強いられ、クリスマス前の在庫確保に焦る製造現場=工場から設計部門へ想像を絶するクレームが入ったのではと勝手に想像。
なので、ジャンク等購入される方はタイプAでないことを確認して選ぶとよいと思います。判別方法は「トリガー部L2、R2下の樹脂に割れ目が無く別部品となってない方を選ぶ」。
型番による違いを表に整理
違いは、
CECHZC2J タイプA |
CECHZC2J タイプB |
CECHZC2J A1 |
CECHZC2J A2 |
||
① | トリガー部L2、R2下の樹脂 | 別部品 | 背面と一体 | 背面と一体 | 背面と一体 |
② | トリガー部L2、R2の軸 | 金属軸 | 一体 | 一体 | 一体 |
③ | バッテリー | 一回り小さく610mAh品のものも、樹脂と合体させ固定 | 570mAh品 | ツメ付き570mAh品 | ツメ付き570mAh品 |
④ | 左右のモータ | 前面樹脂にネジ止め | スポンジでハメ込み | 受け樹脂(※)にハメ込み | 受け樹脂(※)にハメ込み |
⑤ | Aスティック先端の加水分解 | ネチャッ | 割と平気 | 割と平気 | 割と平気 |
⑥ | Aスティック | 基板直付け | 基板直付け | 基板直付け | 受け樹脂(※)に固定、ケーブルもフレキに |
⑦ | 十字キー中央決め | 別部品樹脂 | 別部品樹脂 | 一体 | 一体 |
⑧ | Aスティック下のツメ | 強力(開けづらい) | 適度 | 適度 | 適度 |
また、このPS3パッドが持つ構造的な欠陥=「アナログスティックをグリグリやると押してもない無関係なボタンが反応する」不具合に関しては上記のどれも同じです。
程度の違いはあるでしょうが、必ず経年劣化で上記症状が現れる構造になっています。
アナログスティックが基板直付けでなく受け樹脂固定であるA2は少しマシかも…て程度。でも結局信号線の導通接触をスポンジの反発力に頼ってるので、大差ないと判断しますが。
ここでは「ソニータイマーを調整した程度」と表現しておきます。
内部回路調査ボタン部・アナログスティック部
●【PS3分解実況6】無線コントローラの内部に迫る【訂正あり】
●Reverse Engineering Assignment: Dissecting a PS3 Controller
仕方ないので、自分で調べるしか。
PS3パッドピンアサイン
これがフレキのケーブル。
テスターでピンアサイン・回路を調べると、
PS2時代からのプレステパッドのボタン回路
まず言えるのは、上のピンアサインの図から考えて、L1・L2とR1・R2は同じ回路であるはずなので、COM_LとCOM_Rは同じ信号である筈→となると十字キー上下左右と○△□×も等価な回路。
異なるのは中央のSELECT・START・PSボタンだけデジタル入力。フレキのケーブルを見ると分かりますが、電極が分離しています。
つまり、ファミコン・スーファミ時代と同じ。デジタル入力ではこんな回路でした。
ボタンが押されてない時はプルアップ抵抗を介し電源電圧に、押されたときはGNDに→それをICに入力し0・1判定。
このようにデジタルなら単純明快でしたが、PS2時代以降、デジタルに見えるこれらボタンも一応アナログ入力に変わった様子。
だから、SELECT・START・PSボタン以外は電極が最初からつながっており、導電ゴムによる圧力によって抵抗値が変わる仕組み。
その回路は電源2.8Vから抵抗6.2KΩを介し、各ボタン解放時の抵抗値は10KΩ。□×○△ボタンそれぞれの端子がLowに引っ張ることで分圧値を信号COMで読み取る方式のようです(予想です)。
※ここでの信号COMて名付けが適当じゃなかったかも。
図中にありますが、ボタンをギュッッと押し込むと10KΩだったボタン間の抵抗値が2~5KΩに変化します→1.73V~0.46Vの電圧値によって押し込み具合を判定。
下にフレキ解放時の状態を載せますが、0.2Vでもオン検知されました。なので、0Ωショートのボタンでも反応すると判断します。
以下のサイクルを繰り返しそれぞれのボタンをポーリング監視すれば、すべてのボタンの押され具合を検知できます。そーやって制御してると予想します。
●微小時間のみ△ボタンへGND出力→分圧値をCOMで読み取り
●微小時間のみ□ボタンへGND出力→分圧値をCOMで読み取り
●微小時間のみ×ボタンへGND出力→分圧値をCOMで読み取り
●微小時間のみ他ボタンへGND出力→分圧値をCOMで読み取り
●…繰り返し
ポーリング頻度が相当ですが、USB向けに12MHzのクロック内蔵してるから可能だし、また、そうしないと電圧監視できないので…。無駄に電力は喰うけどモータに比べりゃ微々たるもん。
とはいえ、□×○△ボタンをアナログ感覚で入力するプレイヤってまず居ないと思うので、そー考えると無駄な電力、無駄な回路だねぇ。
また、フレキのケーブルを付けずに各ボタンの状態を調べると以下。この時COMの電圧は0.2V程度であり、“アナログボタン”とされる□×○△L1R1ボタンがオン状態に認識されています。
十字キーも同じ“アナログボタン”ですが、全方向押されてドライバがキャンセル扱いしてるものかと。
このPS3パッドが持つ構造的な欠陥=「押してもないボタンがチラチラ誤検出される」現象は、フレキが端子から離された瞬間に起きる現象として辻褄が合います。
アナログスティックの回路
4端子の磁気センサーが4つ付いており、それぞれ左スティックX、Y・右スティックX、Y。ピンアサインは[GND]、[電源]、[正出力]、[負出力]のようです。
取り外すと中が見えて、長方形枠の磁石が傾いた際に起きる磁気変化を検出しそれに応じた電圧を出力するようです。
その出力値は、中央位置で1.4V。それに対し目いっぱい倒した時がL:1.36V、H:1.44V。つまり、0.04Vの違いで検知してるってこと。すごい微妙。よく検知できてるな。
それ故か、2本ある出力ピンが差動出力になっております。
これを乗っ取り回路で実現するのは厳しそうだな~。
PS2時代のこの辺の資料がネット上から全部無くなってんだな。という訳で自分で作りながら試してくしかありません。
他の型番でのアナログスティックを実現する可変抵抗の仕様も含めこれから調べて行くことになります。興味ある方は本ページをブックマークしておいてね。
こんなこと調べてる理由はこれ。
無線ってものが便利すぎて、天面6ボタンのこーいうのを無線化できないもんかと。慣れ親しんだのって代えづらいのでね。
もちろん本丸はコイツ。
ネジコンこそ無線化により最も恩恵を受ける秀逸な入力デバイス。
新年早々、結構なチャレンジですが上手くいくでしょうか。乞うご期待。
コメント