単純な回路
LEDの明るさを変化させるには、単純には下のような回路でできる。
でも、これだと、ボリュームを回した感覚と明るさの変化量がいまいち合わない。要するに、調整しづらい。それに、そこそこ大きな電流を可変抵抗器に流すのもどうかと思うし(半固定VRの抵抗は0.1Wくらいなので5Vなら20mAほど流せることになるけど、なんとなく気持ち悪い)。マイコンを使ってPWM制御するという手もあるが、それは大げさすぎる。
なにか上手い手はないかと検索して見つけたのがこちらのページ。
トランジスタのVbeを変化させて活性領域の端から端まで使うというもの。なるほど。これなら可変抵抗の全体を使って消灯からフル点灯まで変化させられる。
シミュレーション
ちょっとシミュレーション。
Vbeは可変抵抗で変化させる代りに、正弦波を使う(0~1V)。
緑がVbe、赤がLEDに流れる電流。
拡大。
Vbeが約0.5VまではLEDは消灯、約0.8Vでフル点灯(電流値が飽和)。上の引用サイトで言っている話と同じ。
ということで、簡単に計算できるようにフォームを。
計算式はこう(詳細は上の引用サイトで)。
\( R2 = \frac{RV \times V_{ON} \times V_{OFF}}{VCC \times (V_{ON} – V_{OFF})} \)
\( R1 = R2 \times (\frac{VCC}{V_{ON}} -1) \)
以下のフォームに直接数値を入力すればR2、R1が計算される。
上の回路を実際に組んでみたところ確かに動作するんだけど、実用的にはイマイチなことがわかった。
目論んでいたのは、1チップマイコン(Arduino)につないだLCDモジュールのバックライトの輝度調整。これに使ってみたら、マイコンの動作で電源電圧が少し振られて、それがバックライトの明るさに影響する(ちらつく)。そもそもが、この回路はアンプなので、ベース側の変動を増幅してコレクタ電圧に反映してしまう。少しの電圧の振れがバックライトの明るさに大きく影響する格好。
エミッタフォロワ
当初、この記事を公開した際に、エミッタフォロワの方がいいんじゃないかというアイデアをもらった。
実際に実験をやる前のことなので、上のチラツキ問題とは別の話だけど、チラツキの方もエミッタフォロワの方が電源電圧変動の影響が大きくなさそうに思う。
ということで、またシミュレーション。
回路は右側の方。
これで実際に組んでみたところ、チラツキは前ほどはひどくはない。でも、ちらつかないわけじゃない。
仮組みの状態なので、電源ラインの条件はあまり良くない。ちゃんと配線すればマシになるか?それでもダメなら、バックライトとこの制御部だけ電源(レギュレータ)を分けるか?ちょっと大げさだけど。
ちなみに、エミッタフォロワなら回路定数を決めるのも簡単。出力電圧は入力電圧とほぼ等しく、正確にはトランジスタのVBE分だけ下がる。 LEDのVfが2.0V、VBEが0.7Vだとすれば、入力電圧が2.7V以上でLEDが点灯する。電源電圧を5Vとした場合、抵抗で1:1に分圧すれば2.5V。これは完全に消灯した状態。上側(電源側)をVRにすれば2.5~5Vの範囲の可変にでき、完全消灯から最大の明るさまで制御できる。
コメント