「Intel Edisonの物理ピンの出力電圧を制御する。」で、Edisonの出力をプログラムで制御しました。
この制御された出力を使って、小さなLEDを点灯させてみたいと思います。
LEDの駆動する回路
Edisonの出力は信号用なので、ほとんど電流が流せません。つまり、電球を光らせるなど、外部の負荷を駆動するようなことができません。
そこで、LEDは電池を使って光らせることにして、Edisonにはその電池のスイッチングだけをしてもらうことにします。
LEDを光らせるのは、電池と抵抗器があれば十分です。小学校で習った豆電球と一緒ですが、LEDに直接電池を繋ぐと大きな電流が流れて素子が壊れてしまうので、抵抗をはさみます。
このままだとLEDは点灯したままで制御できないので、ここに電気的スイッチ、つまりトランジスタを挟みます。
そして、そのトランジスタをEdisonで制御します。
回路はこれだけです。
ブレッドボードで動作をチェック
手っ取り早く動作確認がしたかったので、ブレッドボード上に回路を組立てました。
回路を組立てて電池を接続したら、Edisonの出力を切り替えてみます。まずは出力をローレベルに設定。
echo 0 > /sys/class/gpio/gpio13/value
LEDは光りません。
このとき、トランジスタはオフ状態だからです。具体的には、ベース・エミッタ間に電圧がかかっていないので、コレクタに電流が流れず、LEDが光らない状態です。
続いて、Edisonにコマンドを送って、出力をハイレベルにします。
echo 1 > /sys/class/gpio/gpio13/value
これで、ベース・エミッタ間にEdisonの出力電圧が加わり、コレクタ電流が流れ出します。これによって、LEDが点灯します!
次はもう少し大きい回路を駆動してみたいと思います。
コメント
[…] 「Intel Edisonを使ってプログラムからLEDの点灯制御をする。」に続いて、Intel Edisonで家庭用100V電源の制御をしてみます。 […]