LCD連動回路 |
作っている最中に気がついたのだが
LCD一体型のパソコンを作る場合、LCD用の電源をどこからまかなうか、は結構重大な問題だ。
考えられる方法は主に以下の2通りになる。
T.PC本体と共用(ATX電源から供給)
U.LCDに付属のACアダプタを使用
LCDは中古で買ったSAMSUNGの18インチ。電源は「14V 4A」となっている。
だがATX電源には「14V」の出力はない。
したがって上記Tの方法は採れないと考え、Uの方法でいくことにした。
つまりこういうこと ↓。
ここで悩んだのが、元々別個の機器であるPC本体とLCDの電源ON/OFFをどうやって同期させるか、である。
あるべき姿は当然、「スイッチ1つでPC本体とディスプレイが同時にON、シャットダウンで同時にOFF」である。
しかしこれを実現するには一工夫必要だ。
まず現状の確認から。
マザーボード(以下MB)の電源スイッチ(以下PSW)は、「押すとON、離すとOFF」つまりモーメンタリ型だが、
MBには電源制御回路(一種のフリップフロップ)が搭載されており、これが「押すと電源ON、
もう一度押すかOSの操作で電源OFF」という動作を実現している。
LCDも基本的には同じだが、こちらはソフトウェアからのシャットダウンという動作が無いので、
単純に「押すと電源ON、もう一度押すと電源OFF」となっている。
図にするとこんな感じ↓。
余談だが、図中では「制御信号」と書いてあるが、これ実は単純な無電圧接点である。
ATX電源の#16pin(24pinコネクタの場合。20pinコネクタなら#14pin。通常は緑色の線がつながっている。)を
グラウンドに接続すると電源ON、離すと電源OFFという動作をする。マザーボード上の制御回路は電源SWや
OSからの指令を受けてこれを行っているわけだ。
もっとも単純に思いつくのは、上図の「MB_PSW」と「LCD_PSW」を2連スイッチとする方法だが、これではうまくいかない。
お察しの通り、MBには「ソフトウェアからのシャットダウン」という動作があるからだ。
これをやると、「MBの電源は落ちても、LCDは点きっぱなし」という状態になり、その状態でPSWを押すと今度は
「MBの電源が入り、LCDの電源が落ちる」ということになる。
「MBのON/OFF状態を認識し、LCDの状態をそれに合わせるよう、LCD_PSWを操作する」という回路がどうしても必要だ。
具体的には
「MBとLCDの電源ON/OFF状態が食い違ったとき、LCD_PSWをONする。食い違いが解消されたらOFFする。」
という動作になる。
どうすれば実現できようか。
カンの良い方ならピンと来ただろうが、「2つの状態が違ったらON、一致したらOFF」という動作なのだから、
XORゲートを使うのがいちばん手っ取り早いと思う。
結論から言うとこういう回路↓を考えた。
この回路自体の電源は、MBの状態によらず常時生きている必要があるから、ATX電源の「+5Vスタンバイ」でまかなう。
「ATX電源の+5V出力」は、MBの電源ON/OFF状態を知るための信号として使う。
問題は、「LCDの電源状態モニタ」だ。
LCDの電源ON→電圧あり、OFF→電圧なし、となるようなポイントが必要なわけで、
しかもその電圧はXORゲートの都合上、TTLレベル(=5V)であることが望ましい。
そんな都合の良いポイントがLCDの内部回路上にあるか。
でもまあ、どこかにあるだろうと考え、内部基盤上のあちこちをテスタであたっていったら、ちょうど良いポイントが見つかった。
機種が違えば状況も違ってくるので、都合の良いポイントが見つからないこともある。その場合はたとえば、電源インジケータへの供給電圧が
使えるかもしれない。ほとんどはLEDだから、電圧は3Vくらいだろうけど、なんとかなると思う。
この回路では、トランジスタをスイッチとして使っている(いわゆる「ウェット接点」)。
これをやるには「LCDの電源SWホット側」に、正の電圧が出ていることが必要だ。
今回使用したLCDで測ってみたら、5V の電圧が出ていた。問題なしだ。
ただ、トランジスタによるスイッチは、ONのときでも完全に導通するワケではない。コレクタ
− エミッタ 間に 0.1V程度の電位差が残る。
これがLCDのON/OFF動作に問題にならないか。
悩んでいても仕方ない。やってみるしかない。
もしダメなら、多少スマートさには欠けるが、リレーを使った接点(いわゆる「ドライ接点」)に変更すればよい。