LEDを点滅させる(WebIOPi 利用)
解説
GPIOとGNDの間に、LEDと抵抗を繋ぎ、GPIO.digitalWrite関数と、sleep関数を組み合わせて使用することで、LEDを点滅させることができます。
LEDを点灯させるには、LEDにどれぐらいの電流、電圧を流せばよいのか、そのためにはどのような回路を組めば良いのか。
点灯させるLEDのデータシートを見ます。
電気的特性(Electrical Characteristics)の順電流(IF)と順電圧(VF)を見ます。
電気的特性の順電流(IF)が 20[mA]、順電圧(VF)が2.0[V]
のLEDを例に解説します。
「電気的特性」の意味は、「LEDに電気的特性の順電流(IF)を流したら、LEDの電圧が電気的特性の順電圧(VF)になる」という意味です。
Raspberry Pi の出力ピン(HIGH電圧3.3[V])とGNDの間に、LEDと抵抗を繋ぐことを考えます。
抵抗の値は、いくつにしたらよいか。
LEDの電気的特性(順電流(IF)20[mA]、順電圧(VF)2.0[V])から、抵抗として、電流20[mA]、電圧1.3[V](出力ピンHIGH電圧3.3[V]-LED順電圧2[V])、流れるような抵抗にしたらよいことがわかります。
抵抗値 = 電圧 / 電流 = 1.3[V] / (20 * 10 ^ -3) = 65[Ω]
ということで、65[Ω]抵抗の抵抗を繋ぐとよさそうだということがわかります。
抵抗の入手のしやすさから、100[Ω]の抵抗を使用することにします。
部品表
部品名 | 数量 | 商品名 | 参考価格 |
---|---|---|---|
LED | 1 | 赤色LED 3mm OSDR3133A | 100個350円 |
100Ω抵抗器 | 1 | カーボン抵抗(炭素皮膜抵抗) 1/6W 100Ω | 100本100円 |
Raspberry Pi | 1 | Raspberry Pi 3 Model B | 6,300円 |
ブレッドボード | 1 | EIC-801 | 250円 |
ジャンパーワイヤ | 適量 | ジャンパーワイヤ(オス-メス) | 10本300円 |
接続例
出力ピンとして、GPIO 24 を使用した場合の接続例
WebIOPiのインストール
Raspberry Pi にWebIOPiをインストールしてない場合は、まず、WebIOPiをインストールします。
WebIOPiのインストール
スクリプトファイルの作成
「/home/pi/work/webiopi」フォルダに、「led_blink.py」というファイル名で、以下の内容のスクリプトファイルを作成します。
WebIOPi サービスの設定の変更
WebIOPi のサービスを開始したときに、作成したスクリプトが実行されるように、WebIOPi サービスの設定を変更します。
WebIOPi サービスの設定は、「/etc/webiopi/config」ファイルに記述されています。
以下のコマンドを実行し、「/etc/webiopi/config」ファイルを開きます。
[SCRIPTS] セクションを探し、[SCRIPTS] セクションの「myscript =」に、作成したスクリプトファイルを指定します。
編集し終えたら、
Ctrl + O
で上書き保存し、
Ctrl + X
で nano を終了します。
実行
WebIOPi のサービスを開始します。
WebIOPi のサービスを終了するには、以下のコマンドを実行します。