2019年3月18日月曜日

影は何色?(赤・緑・青の光が作る影)

影と言えば、黒っぽいものをイメージしがちですが、
異なる色の光を、異なる角度から照らすことで
カラフルな影を作ることが出来ます。

まずは映像をご覧ください。

<作り方>
砲弾型のLED(20~30mAまで流せるもの)でも作れますが
光が弱く映像に撮影すると わかりにくいので、
3WのPowerLED (フルカラー)で作成することにしました。
3Wと言っても フルカラーLEDの場合は赤・緑・青 それぞれ約1Wずつのため、
どれか1つしか点灯しない場合はMax1W程度です。

単色の3WのLEDなら800mA程度流せますが
フルカラーの3Wの場合は各色に350mA程度までしか流すことは出来ません。
とは言え、100mAを超えるとかなり明るいです。


赤ー10Ω(1/2W)、緑ー10Ω(1/2W)、青色ー4.7Ω(1/2W)を接続しました。
電源は5Vですが Arduino、PCA9685、トランジスタ(2SC2120)を通り
最終的に流れるMax電流は
赤ー約130mA、緑ー約100mA、青色ー約150mA
となりました。
緑は光束の値が大きいので、電流値を少なくしました。

LED内蔵用にダイソーのブックライトを使用することにしました。


4mmのストローを赤と青に接続した抵抗にはめています。


ストローをケースの長さに合わせておくと、
LEDを前方の穴にうまく固定出来ます。


足はダイソーの3脚を使用し、伸縮可能にしました。

少し短くして使用しています。


光を当てるキャラクターも100円Shopの
「ソーラーゆらゆら人形」を使用することにしました。


LEDの照明だけでもゆらゆらと動くのですが、時々動き方が悪くなるため、
人形の下の方のフェライト磁石に 6mm×1mmのネオジム磁石を追加しました。


左の赤いスイッチを押すと、1連のパターンで約1分間 LEDが光ります。



1連のパターンはArduinoで作成しています。
ただ私が使った基盤にはPWM出力が6ピン分しかなく、
今回は(赤・緑・青)×3セット=9ピン 必要だったので
拡張ボードのPCA9685を使用することにしました。
さらに、PCA9685の各ピンからの出力電流が少ないため、
2SC2120で増幅してLEDに供給しています。

電源はモバイルバッテリー(5V 1A)です。


スクリーンを立て、完成です。

<考察>
どうしてカラフルな影が出来るのか?考察してみました。

被写体がないときには、
赤・緑・青の光が混合され、白っぽく見えています。
赤はFF0000、緑は00FF00、青は0000FFで表され、
赤+緑+青=白(FFFFFF)となります。
(光は加色混合でたし算で計算出来ます。)


次に四角柱を真ん中に1本立てた状態です。
左から赤・青・緑色の光を当てています。
下の緑の枠、青い枠、赤い枠はそれぞれ、四角注の影となり
緑・青・赤の光が届かないエリアです。


下のようにA~Eまでの5つのエリアに分けて考えてみます。
A
緑の光は届かず、赤と青の光は届き
赤(FF0000) + 青(0000FF) = マゼンタ(FF00FF)となる。
B
緑と青の光が届かず、赤の光だけが届き
赤(FF0000) となる。
C
青の光は届かず、赤と緑の光は届き
赤(FF0000) + 緑(00FF00) = イエロー(FFFF00)となる。
D
赤と青の光が届かず、緑の光だけが届き
緑(00FF00) となる。
E
赤の光は届かず、青と緑の光は届き
青(0000FF) + 緑(00FF00) = シアン(00FFFF)となる。


同様に考えると、3つのLEDを全て青色にしたときに
影の濃淡が違う理由もつきますね。
最も薄いところは3つのLEDの光が当たっているところ、
2番目に薄いところは2つのLEDの光が当たっているところ、
最も濃いところは、1つのLEDの光しか当たっていないところになります。