複数LEDをパッケージ化した部品を使う:Pi Traffic Light
LEDを点滅させる最も基本的な方法は、LEDとジャンパーワイヤをブレッドボードに差し込んで、ラズパイとつなげて・・・という風に自分で回路を作るやり方です(ワークショップでやった作業そのものです)。実はこれに加えて、もう少し手軽な方法もあります。複数のLEDをひとつにまとめてラズパイに簡単に接続できる部品がたくさん売られているので、それを使うやり方です。回路を作る手間、抵抗を使う手間が省けることが多いです。
ここでは、Low Voltage Labs社のPi Traffic Light(Amazon)を使ってみます。これは信号を模した部品で、赤・青(緑)・黄のLEDをひとつにまとめたものです。
以下写真の青く囲った部分をラズパイと接続します。直接ラズパイのGPIOピンに差し込むか、ジャンパーワイヤを使ってGPIOピンとつなぎます。
GPIOピンに直接差し込む場合、以下の4本のGPIOピンを使うことが推奨されています。この4本は一列に(順番に)並んでいます。
- GND
- GPIO 11(緑)
- GPIO 9(赤)
- GPIO 10(黄)
上の写真の青と赤の部分を見比べると、どのピンが何色のLEDに対応しているか分かります。それぞれのピンに電流を流すと対応する色のLEDが点灯します。なお、この商品をGPIOとつなぐ時に抵抗(LED保護抵抗)を使う必要はありません。この商品には抵抗があらかじめ組み込まれています(上の写真の黄色く囲ったところ)。
以下、GPIOピンに直接差し込んだ様子と、ジャンパーワイヤで接続した様子です。
LEDを点灯させるプログラム例が、traffic-light.pyです。ブレッドボードに刺したLEDを点灯させるプログラムと全く同じ要領です。
先に書いたように、この商品をGPIOピンに直接刺しこんで使う場合、以下のGPIOピンを使うことが推奨されています。
- GND、GPIO 11(緑)、GPIO 9(赤)、GPIO 10(黄)
しかし、GNDの横にGPIOピンが3本並んでいれば、他の場所に差し込むことも可能です。例えば、以下のような使い方が可能です。
- GND、GPIO 26(緑)、GPIO 19(赤)、GPIO 18(黄)
- GND、GPIO 4(緑)、GPIO 3(赤)、GPIO 2(黄)
- GND、GPIO 14(緑)、GPIO 15(赤)、GPIO 18(黄)
- GND、GPIO 25(緑)、GPIO 8(赤)、GPIO 7(黄)
- GND、GPIO 16(緑)、GPIO 20(赤)、GPIO 21(黄)
以下はGND、GPIO 14(緑)、GPIO 15(赤)、GPIO 18(黄)を使った例です。
GPIOピンに直接刺しこんで使うのではなく、ジャンパーワイヤを使ってGPIOピンと接続する場合は、どのピンを使っても構いません(4本順番に並んだピンを使う必要はありません)。
以下、ご参考までに、メーカーによる資料です。