FM TOWNS II HR の電源が入らなくなったので SFX 電源を導入した話

電源が入らなくなった

FM TOWNS II HR の電源を入れようとしたら、一瞬ONするけど起動まで行かない状態になりました。経年劣化でしょう。

電源周りの修理はさすがに手を出しづらく、すぐ再発することも考えられます。
そこで、現行品で入手しやすい SFX 規格の電源ユニット、Corsair SF450 を流用することにしました。

参考にしたのはこちらの記事です。※本記事も何があっても責任は負えません。自己責任で。


SF450 をそのまま使う問題点

SF450 の配線自体は、ATX 信号を TOWNS HR の 16 ピンコネクタへ対応させるだけです。 SF450 のスイッチを ON にすれば TOWNS は起動します。

ただ、この状態では SF450 のスイッチでしか ON/OFF できません。 TOWNS HR 本体の電源スイッチが何もしない状態になってしまいます。 TOWNS HR 本体の電源スイッチで操作できるようにするには、PS_ON# 信号を制御する回路が別途必要です。

筐体改造

SF450 を TOWNS HR に搭載するにあたり、筐体の加工が必要でした。

上蓋のリブを削る

TOWNS HR の筐体内部、上蓋の内側にはリブ(補強用の突起)があります。 SF450 を置いた状態だとリブに干渉して上蓋が閉まりませんでした。 該当箇所のリブをプラカッターや彫刻刀で切り取りました。 また、おそらく必須ではないですが、電源ユニット向けの下側のストッパーを切り取りました。

SF450の上にあるリブの高さが他より高いため干渉しています。

他のリブと同程度の高さに切り取りました。

SF450の下にあったストッパーはここで切り取りました。

バックパネルの穴を広げる

SF450 には電源スイッチと電源ケーブルのコネクタがあります。 TOWNS HR のバックパネルにはちょうど電源ユニットがはまる位置に穴がありますが、 SF450 のスイッチ位置と合わないため、穴をプラカッターや彫刻刀で広げました。

電源ケーブル上のスイッチが隠れるので

出てくるように切り取りました。

制御回路の設計方針

必要な動作

TOWNS HR の電源 ON/OFF に必要な動作は以下の通りです。

操作動作
ON-OFF SW を押す電源 ON ↔ OFF をトグル(D-FF で実現)
OFF SW を押す一定時間後に電源 OFF(チャタリング除去を兼ねてタイマーで実現)
電源投入時PWR_OK が立ち上がるまで D-FF をリセット状態に保つ

IC の選定

IC役割
NE555OFF SW のチャタリング除去タイマー(単安定、約 2.4 秒)
74HC74ON-OFF SW のトグル制御(D フリップフロップ)
74HC132/CLR1 制御・CLK1 デバウンス・PWR_OK 監視(シュミットトリガー NAND)

74HC132 の選定経緯については後述します。

基板構成の方針

電源ライン(GND / +5V / +12V / -12V)は基板を経由させず、SF450 の 18+10 ピンモジュラーコネクタに接続する専用ケーブルを新規製作し、TOWNS の 16 ピンコネクタへ直接圧着接続します。 基板上は制御信号(+5VSB / PWR_OK / PS_ON# / SW 信号)のみとすることで、基板サイズを小型化できます。

ブレッドボードで試作

NE555、74HC74、74HC00 をブレッドボードに組んで動作確認しました。 電源 ON/OFF は TOWNS HR 本体の電源スイッチで制御できるようになりましたが、ON-OFF SW を押したときに複数回トグルしてしまうことが頻発しました。

チャタリングの問題

機械式スイッチの接点バウンス(チャタリング)が原因で、D-FF の CLK1 に複数エッジが入ってしまいます。 RC フィルタ(R3: 10kΩ + C6: コンデンサ)でチャタリングを除去しようとしました。

試した C6 の値 τ 結果
0.1µF1msチャタリング残り、効果なし
10µF100msまだ発振することがある
22µF、100µF改善しない。根本的な問題があると判断

調べると、74HC00 の入力にはヒステリシスがなく、RC の緩やかな立ち上がり波形が LOW/HIGH しきい値付近をゆっくり通過する間に出力が発振することがわかりました。

74HC132 への変更

74HC00 とピン互換で、シュミットトリガー入力を持つ 74HC132 に交換しました。 74HC132 は約 1.25V のヒステリシスがあるため(5V 動作時)、入力電圧が不安定な帯域を通過する間も出力が安定します。

交換後、C6 = 10µF(積層セラミック)で安定して動作するようになりました。

パワーオンリセット回路

74HC74(D-FF)は電源投入時の状態が不定なため、/CLR1 でリセットする回路が必要です。 R6(10kΩ)+ C5 で RC 回路を組みました。

C5 の値τ結果
0.1µF1msリセットが不安定
10µF100ms改善したが不安定なケースが残る
22µF220ms安定してリセットできるようになった

HR本体と組み合わせて試作

PCB 化

ブレッドボードでの動作確認が取れたため、KiCad で回路図を作成し PCB 化します。

回路図・配線の詳細は GitHub のドキュメントを参照してください。
https://github.com/neko32k/towns-adapter

回路図とPCB

必要な部品

部品型番など数量入手先例
SFX 電源ユニットCorsair SF450 1Amazon
タイマー ICNE555DE4(または NE555P)1秋月電子通商
D フリップフロップ74HC741秋月電子通商
NAND(シュミットトリガー)74HC132(TC74HC132AP)1秋月電子通商
IC ソケット 8ピンDIP8 1秋月電子通商
IC ソケット 14ピンDIP142秋月電子通商
電解または積層セラミックコンデンサ22µF(C5)1秋月電子通商
積層セラミックコンデンサ10µF(C6)1秋月電子通商
積層セラミックコンデンサ0.1µF(C1/C3/C4)3秋月電子通商
抵抗10kΩ(R1/R3/R5/R6)4秋月電子通商
抵抗1MΩ(R2)1秋月電子通商
抵抗1kΩ(R_LED1/R_LED2)2秋月電子通商
LED (赤・黄など)1秋月電子通商
LED(緑・青など) 1秋月電子通商
SF450 18ピンコネクタ PC用電源コネクタ 18Pin レセプタクル(Molex 5556/5557互換)1Amazon
SF450 10ピンコネクタPC用電源コネクタ 10Pin レセプタクル(Molex 5556/5557互換)1Amazon
MOLEX 5566-06A または 5569-06A6ピンヘッダ(PCB側) 1Amazon
MOLEX 5557-06R6ピンハウジング(ケーブル側)1Amazon
MOLEX 5557-16R16ピンハウジング(TOWNS HR側)1Amazon
MOLEX 5556 圧着端子必要量Amazon
AWG18〜20 カラー線、電源ライン用(黒・青・黄・赤)必要量秋月電子通商
AWG22 カラー線、制御信号用(紫・黒・白・緑・黄・赤)=必要量秋月電子通商

その他今回購入した工具

工具入手先
iCrimp SN-2549 ラチェットワイヤ圧着工具Amazon
ニードルリムーバー5557Amazon

結果

SF450の電源を入れるとHRが起動するのは、電源修理前と同等の動作なので良しとします。その後ちゃんとHR本体の電源スイッチでON/OFF操作できるようになりました。

ケーブル結線やPCB設計関連のkicadデータをgithubに格納しています。

コメントを残す

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください