8×8×8 LED CUBE 製作記(8) -- 制御基板の回路構成

8×8×8 LED CUBE 製作ですが、今回は制御回路について。

以前にも触れましたが、回路構成の考え方はシンプルで、74HC595を使った4×4×4 LED CUBE用の制御回路を発展させ、各パーツを8×8×8に対応して数を増やすだけの積り。

Arduinoからは、8個のシフトレジスタと8つのLayerへと出力

基本構成はこんな感じに。

8×8×8LEDCUBE回路構成

Arduinoからは、シフトレジスタ74HC595を制御するのに3本のピン(2~4番)、8層のLayerを制御するために8本のピン(5~12番)の、合計11本のピン出力となります。

Columnを制御するためのデータは2番ピンから最初の74HC595に出力され、そのデータはQA→QB→・・・QHへと移動し、さらに隣の74HC595のQAピンへと移り、さらに・・・・。

このColumnへと出力されるデータを、74HC595の中で隣のピンへと移動(シフト)させるタイミングを決めるのが、Arduinoの3番ピンから出力されるSCKデータ(シフトレジスタクロック)。

8個の74HC595に格納された64個のデータを、Columnへと出力させるタイミングを決めるのが、Arduinoの4番ピンから出力されるRCKデータ(ラッチクロック)。

ということで、2番ピンからは1個目の74HC595のみへ、3番、4番ピンからは8個の74HC595へと同時にデータが出力させるような配線となります。

続いてArduinoの5~12番ピンからの出力。この8つのデータで8つのLayerを制御するのですが、1つのLayerには64個のLEDが接続され、これを同時に点灯させることが必要です。

ということは、直接LEDを制御するには電流容量が足りない(1つのI/Oピンで40mAまで)ので、今回は2N2222というトランジスタを介して制御する予定です。

シフトレジスタからの出力は、LEDの電流制限抵抗を介してColumnへと

さて、ArduinoからColumn制御用のデータを受け取った8個の74HC595は、QA~QHの8本のピン(×8=64)を介して、64本のColumnへとそのデータを出力して行きます。

64本の各Columnには縦に8個のLEDが接続されていますが、点灯するLEDはこの8個の内のどれか1個のみ。

先のLayerと、このColumnとの組合せで512個のLEDを制御していくのがダイナミック点灯。

ところで74HC595とColumnとの間には、LEDに流れる電流を制限するための抵抗が必要。

今回は、トランジスタ2N2222とシフトレジスタ74HC595の最大電流容量を考慮して、各LEDに流れる電流を8mA程度にしようと思い、必要な抵抗値を以下の式で計算してみる。

抵抗(Ω)=(電源電圧-VF)÷望みの電流値(A)

電源電圧は5V想定。ブルーのLEDを使うので、LEDのVFを3.2Vとして計算してみると、

抵抗(Ω)=(5-3.2)÷0.008A=225Ω

となります。

抵抗152本、シフトレジスタとトランジスタ各8個ずつ、その他諸々

以上のことを踏まえてユニバーサル基板上で実体配線図を描いてみたのがこちら。

888LED CUBE 実体配線

シフトレジスタのVccピン側には0.1μFのバイパスコンデンサを配してます。また、シフトレジスタの10番、13番ピンは今回は使わないので、VccとGNDへと接続しています。

ところで、Columnへと接続される64個のピンソケットと、Layerへと接続される8個のピンソケットには、データ経路と対称位置にそれぞれ64個と8個の抵抗が接続されています。

この72個の抵抗は、本来の回路的には不要(無くても作動する)なものですが、「ゴースト」を消すために入れてあります。

ゴーストというのは、そのLEDには電流が流されていないのに点灯してしまう状態。

LED CUBEではよく見られる現象のようで、私も4×4×4LED CUBEを製作した際に遭遇したことがあります(いつの間にか消えて、それ以来会っていませんが)。

あるLEDを点灯し、それを消して次のLEDを点灯させてというのを僅か数ミリ秒の間に繰り返すことで、複数のLEDが同時に点灯してるように見せるのがダイナミック点灯でしたよね。

ところが、このLEDを点灯させた電流が、次のLEDの点灯動作へと移った後も残っていて、消した筈のLEDを(ボヤーっと)点灯させてしまうってのがゴーストの正体らしい。

この残ってしまった電流の逃げ道を確保してあげるのが先の72個の抵抗の意味です。Column側は抵抗を介してグランドに、Layer側はプラス電源へと逃げていきます。

これ、英文の解説記事を読んで読み取ったものなので、私の拙い知識と相まって正確に理解できてるか、またキチンと表現できてるか疑問が残りますが、私の理解としてはこんな感じ、ってこと。

トランジスタの2N2222で64個のLEDを駆動できるのか、あるいは各々の抵抗値を適切なのかといった疑惑は残っていますが、一旦、回路構成的にはこれにて完成。

ただ、各抵抗の値は、改めて計算し直してみた方が安心かもしれない。

それにしても500箇所前後のはんだ付けをしていかなければならない。ま、LEDでCUBEを組み上げるのに1000箇所以上のはんだ付けをしてきたので、それに比べればどうってことない?

海外のLED CUBEの製作記事を読んでいると、基本的な電子知識やはんだ付けの技術と一緒に、「忍耐強さと豊富な自由時間が必要」って書かれているけど、なるほど納得ですね。


関連記事
コメント:
このコメントは管理人のみ閲覧できます
[2016/04/04 22:52] | # | [edit]












管理者にだけ表示を許可する
トラックバック:
トラックバック URL:

http://55life555.blog.fc2.com/tb.php/1609-89c0ec6e

<< topページへこのページの先頭へ >>