車のうっかりミス防止
以前はよく、 自動車にキーを挿したままドアをロックしたり、 ライトを消し忘れて翌朝エンジンがかからない、 といったトラブルを起こしました。
最近はなくなりましたが、 それは私が、ではなく、 自動車が賢くなったからです。
近頃の自動車は、 エンジンを止めて、 キーを付けたまま、 あるいはライトを点けたまま運転席のドアを開けると、 ブザーが鳴るようになっています。
このような機能は、 自動車にたくさん組み込まれている
マイクロコンピュータ
のひとつにプログラムされていますが、 同様の機能を
論理回路
で作ることもできます。
まず、キーの挿・抜、ライトの点灯・消灯などの状態を論理値 0 と 1 に対応させます。
例えば、 エンジンが動いているときは 1 で止まれば 0 、 ドアは閉じているときは 0 で開けば 1 、 などです。
この 0 と 1 の対応のさせ方はまったく自由で、 逆だと NOT 回路が必要になったり、 あるいは省略できたりするだけのこと、 です。
論理値
キー
ライト
エンジン
ドア
ブザー
0
抜く
消灯
停止
閉
静
1
挿入
点灯
回転
開
鳴
さて、 上表のように 0 と 1 を定めた場合は、 キーかライトのどちらか、 または両方が 1 のときに、 エンジンが 0 でドアが 1 になればブザーを鳴らせばいいことになります。
「どちらか、または両方が」 の部分には
OR 回路
、 「〜 が 〜 で、 …」 の部分には
AND 回路
が使えそうだという見当が、 つきますよね。
この条件で警報装置を作るには、 下図のような
論理回路
を用意すればいいことになります。
この図は
(初期状態では)
キーが挿入 (1) されて エンジンが回転 (1) していてドアが閉まっている (0)、 つまり 「走行中」 です。
エンジンを止めると 0 になりますから、 NOT 回路の出力は 1 になります
(図の入力信号の付近をクリックすると信号が変化します。試してみて下さい)
。
キーを抜き忘れるか、 ライトが点いたままであれば OR 回路の出力は 1 です。
その状態でドアを開けると、 AND 回路の入力信号がすべて 1 になりますから、 出力が 1 になってブザーが鳴ります
(ほんとに鳴ります)
。
なお、 当然のことですが、 キーが挿入されていないとエンジンはかかりませんから、 ご注意下さい。 念のため。
AND
回路、
OR
回路、
NOT
回路、 それぞれは単純な働きしかしませんが、 それらを組み合わせることによって、 さまざまな機能 ── 比較、演算、計数、記憶 etc.─ を実現することができます。
そういったものを更に更に組み合わせ、積み重ね積み重ねていくと、 コンピュータのようなとんでもないものができたり、 するわけです。
関連事項:
AND 回路
OR 回路
NOT 回路
論理回路