8×8×8 LED CUBE 製作記(3) -- パーツを揃える(の1)

2週間くらい前、色々とeBayで買い物をしたのですが、今日は3パッケージ同時に届きました。すべて、8×8×8 LED CUBE用のパーツです。

eBayからのパッケージ

基本的には、Arduinoと74HC595で駆動させた4*4*4 LED CUBEをベースにして製作する予定なので、必要なパーツは同じです(数がベラボウに多くなるけど)。

主要パーツをリストアップすると、こんな感じ。
  • 512 × 3mm DIFFUSED LED

  • 8 × 74HC595 8-bit shift registers (64本のColumnを駆動)

  • 8 × 2N2222A Transistor (8つのLayerを駆動)
        →8 × MOSFET が必要?

  • 64 × 220Ω Resistors (LEDの電流制限)

  • 8 × 1KΩ Resistors(2N2222 base)
この他にコンデンサ(パスコン)や配線用の線材等も必要。LEDの電流制限用抵抗の値とかは暫定で、今後要検討。

4×4×4 LED CUBEと8×8×8 LED CUBEとの大きな違いは、言わずと知れたLEDの数。64個と512個ですから、8倍の開きがあります。

そしてLEDの数が増えるってことは、パーツの数を単純に8倍にすれば済むって話なら簡単なのですが、問題は流れる電流の大きさも8倍になるということ。

4×4×4 LED CUBE製作の時は、電流の大きさとかあまり気にせず、ネット上で見つけた回路図を参考に作れば良かったので簡単でしたが、8×8×8 LED CUBEは状況が違うようです。

一つには情報が少ない。特に日本語の解説記事がほとんど見つけられなかった。英語の製作記事は結構あるんだけど、こちらの条件に合うのとなると、やっぱり限られてくる。

「こちらの条件」というのは、制御はArduinoを使い、Columnを駆動する回路にはシフトレジスタの74HC595を使うというもの。こっちに知識があれば、色々と置き換えて読み取れるんだろうけど・・・

LEDマトリックスやキューブにおいて、ダイナミック点灯にする理由は

そんなこんなで、8×8×8 LED CUBE関連の様々な記事を読んでいるうちに、少しずつ見えてきたことがあるんだけど、先ずは基本中の基本であるダイナミック点灯について。

ダイナミック点灯というのは、簡単に言うと「高速に点滅させる点灯方法」。

要は、常に電力を供給して点灯させておかなくても、高速に点滅させれば、残像現象で常に点灯しているように見えるってわけ。

この方式には、消費電力を抑えたり、LEDの寿命が長くなったりといったメリットがあるんだけど、LED CUBEの制御においては、ダイナミック点灯にせざるを得ないという理由があるんです。

LEDダイナミック点灯分かりやすいように3×3のマトリックスで考えてみましょう。

左図で、[1-a]のLEDを点灯させるには、もちろん[1]と[a]に電流を流します。

同様に、[2-b]のLEDを点灯させるには、[2]と[b]に電流を流せば点灯しますよね。

では、[1-a]と[2-b]のLEDを同時に点灯させるにはどうすればいいでしょうか?

[1]と[a]と、[2]と[b]に電流を流す?

残念なことに、[1]と[a]と、[2]と[b]に電流を流すと、[1-a]と[2-b]のLEDは点灯するけど、同時に[1-b]と[2-a]のLEDも点灯してしまいます。そう、意図してないLEDも点灯しちゃうんです。

これを回避するための方法がダイナミック点灯なんです。[1]と[a]に電流を流し、一旦電流を切ってから今度は[2]と[b]に電流を流すというのを高速に行えば、目的のLEDだけが点灯して見えます。

そんなの当たり前? 確かに。でも、この説明を他のサイトで見たとき、なるほどそうだったのかって、なんかもの凄く納得がいったんです。

なぜなら、LED CUBEにおいてダイナミック点灯にする理由は(大量のLEDを個別にコントロール出来ないのは当然として)、流れる最大電流を抑えるの主目的だと思っていたから。

すべてのLEDがダイナミック点灯なら電流量を気にかける必要は無いのだけど

さて、話がすこしややこしくなるけど、上のLEDマトリックスで、aライン上にある3つのLED[1-a]、[2-a]、[3-a]を点灯させるには、ダイナミック点灯にする必要はありませんよね。

[a]と[1]、[2]、[3]に(同時に)電流を流せば目的が達せられます(スタティック点灯方式)。もちろんダイナミック点灯でも可能ですが、こっちの方が制御は明らかに楽になります。

ここで、回路に流れる電流の大きさを考えてみましょう。

ライン上の3つのLEDが同時に点灯すると言うことは、電流量は3倍になります。LED1個に10mAの電流を流そうとすれば、回路全体には30mAの電流が流れることになります。

さてさて、上のLEDマトリックス図をLED CUBEの “1面” として見てみましょう。奥方向に、もう2列のLEDマトリックスが配置されていて、3×3×3のCUBEという想定です。

333キューブ
「a」はライン」ではなくなり、奥方向へと3×3の[Layer a]を形成します。

で、マトリックスでaライン上のLEDを点灯させるのにスタティック点灯方式を用いたのと同じように、CUBEのLayer上のLEDを点灯させるのもスタティック点灯方式となります。

ということは、この[Layer a]にある9つのLEDを同時に点灯させようとすると、(LEDは常時点灯なので)回路には10mAの9倍である90mAの電流が流れます。

LED64個の集合体であるLayerを駆動するには結構大きな電流が必要

いよいよ、今回の話題の核心に近づいてきました。

3×3×3のCUBEなら90mA、4×4×4のCUBEなら160mAと、まだ何とかなる電流値ですが、これが8×8×8のCUBEでは640mAになるんです。

4×4×4 LED CUBEの製作で、Layerへの電源供給のために使ったトランジスタは、S8050というもの。このトランジスタの最大負荷電流(コレクタ電流)は500mAです。

ということは、8×8×8 LED CUBEには(LED1個にかかる電流値を下げない限り)S8050では能力不足だってことになります。

上で主要パーツを書き出しましたが、その中に2N2222A というトランジスタが入っていましたが、これが)S8050の代用にとリストアップしたものです。

8×8×8 LED CUBEのパーツ選定、次回へと続きます。


コメント:












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

http://55life555.blog.fc2.com/tb.php/1597-be217dcb

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