マイコンを使わずに『ライフゲーム』を作ってみた! アナログ演算で生死判定する電子回路がロマンの塊
今回紹介するのは、きっちーさん投稿の『【電子工作】ライフゲームを今度はマイコンなしで作ってみた(前編)』という動画です。
投稿者メッセージ(動画説明文より)
以前に8bitマイコンを使ってライフゲームを作りましたが、今度はマイコンも使わずに作ってみました。(試作段階)
マイコンを使わずに、ライフゲームを作ってみようとする人が現れました。ライフゲームとは、生命の誕生や死を計算機上でシミュレーションするゲーム。これを抵抗などを使って計算させます。
ライフゲームのルールを説明します。セルが格子状に並び、各セルが生死の状態を持っています。セルの周囲の生存数によって次のターンで生き残れるかどうかが決まります。この状態変化を見守ります。
ルールは単純ですが、意外に複雑なふるまいをすることがあります。銀河や宇宙船と呼ばれるようなパターンもあります。
では、回路を考えていきましょう。「生」を5V、「死」を0Vとします。周囲の8セルの生死を知るために抵抗でつなぎます。回路図を書きかえると、生きている5Vにつながる抵抗がn本、死んでいる0Vにつながる抵抗が(8-n)本となります。
8つの抵抗を等しくRと仮定して、電圧とnの関係を求めました。リニアであることが分かります。
コンパレータを使って、生存できる範囲にあるのかを判定します。上限は3.5/8Vと比較して判定します。
下限の判定は、自身の生死によって閾値が変わってしまうので、生死がわかる出力にも抵抗をつなぎます。
上下の判定ができたところで、論理積を取ります。
計算を各セルで同期させないといけないため、フリップフロップ回路を使います。
これで、回路設計ができました。
基板制作です。1セル1基板で作ります。すべてのセルが同じ設計で、出力と入力がうまくつながる方法を考えます。
プリント基板を設計して、発注しました。
部品をハンダ付けしていきます。フリップフロップなど細かい部品が多く、だいぶ苦労したそうです。
動作テストをしていみます。クロックに合わせて、LEDが点滅しています。初期条件が2セルとも「死」だった場合、次のターンでは2セルとも「生」、「生」だった場合には2つとも「死」が正解なので、正常動作しています。
片方だけ「生」の状態にしてみます。すると、点滅が止まりました。
2セルだけですが、うまく動いているようですね。今後は8×8を目標に作る予定だそうです。6セル作るのに抵抗102個をハンダ付けしたそうですから、かなりの苦行になりそうです。デジタル全盛のこの時代にあえてのマイコンなし。ロマンを感じる取組です。
視聴者コメント
アナログで演算するのか!!
デジタルですらないのかよ
おー、すげぇ
応援してるぜ
ロマンがあるなぁ
文/高橋ホイコ
▼動画はこちらから視聴できます▼
『【電子工作】ライフゲームを今度はマイコンなしで作ってみた(前編)』
―あわせて読みたい―