【レポート】

「温泉PC」を自作してみました

1 それは使えば使うほどお金が貯まるPC

    大塚実  [2004/01/01]
    製作した温泉PCシステム。特にチープさの再現を重視したが、何も工夫しなくても普通に作ったら十分チープになった

    いきなりだが、「温泉PC」とは、正式には「温泉街の旅館などで良く見かける、100円で30分~1時間ほど見られるようになっているテレビのようなPC」の略だ。このテレビの横にくっついていたシステムは、昔は大抵の旅館にあったものだが、最近はフリーで好きなだけテレビを見られることも多く、ほとんど見かけなくなった。

    このデフレ時代、「無料」なことは何でも良いこととされがちだが、この温泉システムのおかげで「せっかく訪れた旅先なのに部屋でテレビを見てダラダラ過ごしてしまった」という事態が抑止されていたという一面もあるのだ。筆者などは「テレビなんて見てないで散歩でもしてきやがれ」という、押し付けがましくも親切な旅館側の配慮に感謝すらしたものだ。

    今回、製作するのはこのシステムを採用したPCであるが、導入のメリットとしては、例えば

    • PCを使えば使うほどお金が貯まる
    • 無駄にPCを起動しないので電力の節約になる
    • 旦那や息子のいかがわしいアクセスを減らせる

    などがあるかもしれない。反面、デメリットを考えればキリがない気もするが、そこは気にせず進めたい。せっかくのお正月でもあるし、奥さん、アイロンを半田ごてに持ち代えてレッツ・トライ!!

    ○では回路を作ろう

    電源オプションのプロパティ。毎回、終了→再起動するのも時間がかかるので、「休止状態」にしておくのが便利
    まずは大まかなところから考えよう。通常、PCを起動するには電源ボタンを押すだろう。一方、シャットダウンの時にはスタートメニューからコマンドを選択することが多いと思うが、Windows 2000/XPなどでは「電源オプション」のプロパティで設定しておけば、電源ボタンを押した時に"シャットダウン"なり"休止状態"なりにすることができる。

    ということで、OSをそのように設定した上で、電源ボタンを押した時の動作を自作回路でエミュレートすれば、起動・停止は何とかなりそうだ。それに、コインの投入を検出する回路、設定時間後にPCを終了させるためのタイマー回路を組み込めばいい。

    今回製作する回路だが、コアになるのはこのタイマー回路だ。当初、クロックを使った正確なものを作ろうと考えていたのだが、面倒なことになりそうだったので、汎用ロジックIC1個で実現できる単安定マルチバイブレータ(ワンショット・マルチバイブレータ)を使うことにした。全体の回路図はこんな感じになる。

    今回製作した回路の概略(電源・GNDの接続やパスコン等の描画は省略)。タイマー部分以外の抵抗値はかなり適当に決めてあるので、参考程度にしていただきたい

    ICは2個、「74HC123」と「74HC386」を利用する。74HC123がこの単安定マルチバイブレータ用のICで、トリガ入力があった時に、一定の時間幅(端子に接続するRとCの値から決まる)の長さのパルスを発生することができる。他にも、良く利用されるタイマーIC「NE555」などでもこの機能は実現できるのだが、74HC123はリトリガブル(再トリガ可能)となっているので、今回はこちらを採用した。

    74HC123のトリガ入力には、立ち下がり(H→L)で動作するA入力と立ち上がり(L→H)のB入力の2種類が用意されている。出力も、Qとその反転信号の2種類がある

    このパルスの長さは、実際にはメーカーごとに多少異なる可能性があるが、東芝のデータシートによれば、ほぼ「T(sec)=R(Ω)×C(F)」となっている。今回は1時間程度に設定したいので、例えば4,700μFのコンデンサと766KΩの抵抗を用意すればいいわけだ。今回の回路では可変抵抗を使って、約500K~1MΩの範囲で調整できるようにした。

    フォトリフレクタ「SPI-315」。1個50円程度と安価で、秋月電子通商で通販も行っている
    次はコインの検出回路だ。適当に物理的な仕掛けを用意してもいいのだが、今回はフォトリフレクタ「SPI-315」を使うことにした。これは、赤外線LEDとフォトトランジスタが1パッケージ化されているもので、金属など赤外線をよく反射する素材が1~10mm程度まで近づいた時に、コレクタ-エミッタ間で流れる電流が増大する特性を持つ。今回は、コインの投入口にレールを作り、フォトリフレクタの前をコインが通過する時のエミッタ側の電圧変化で投入を検出している。


    入力の片側をVcc固定にしたXORは、論理的にNOTと等価
    さて、前述の74HC123で生成されたパルスをもとに、PCの起動・停止を行うわけだが、この信号はそのままでは利用できない。実際にPCの電源ボタンを押す動作を考えてみれば分かるが、起動・停止にはそれぞれパルスが必要なのだ。そこで利用しているのがもう1つのICの74HC386(2入力XOR×4)で、74HC123の出力パルスの立ち上がりと立ち下がりを検出し、マザーボードに与える短いパルスを生成している。ここではディレイ信号とのXOR(排他的論理和)でエッジを検出している訳だが、XOR回路が余っているので、RCの両端に置く波形整形用のNOT回路もXORで代用している。こういった論理回路の置き換えには様々なパターンがあり、部品点数を最小限にするのに役立つ。

    遅らせた波形とXORを取ることでエッジを検出できる

    新着記事

    特設サイトの情報

      人気記事

      一覧

      イチオシ記事

      新着記事

      特別企画

      マイナビニュースマガジン