2021年08月01日 更新

ラズパイでフルカラーLED

どうも、クラゲです。
ラズパイでフルカラーLEDの点灯方法を紹介します。赤・緑・青だけでなく、それらを混ぜ合わせた色を作ることができます。

目次

[TOC]

電子部品

ラズパイ以外に必要な部品は以下5点です。

ジャンパー線の色は好みで構いません。
抵抗は1kΩを使いましたが、330Ω~1kΩくらいの間であればOKです。
光拡散キャップがなくても点灯しますが、このキャップを被せることで特定方向のみの強い光り方から、様々な方向でのやわらかいキレイな光り方に改善することが出来ます。

フルカラーLEDのデータシートです。
赤LED、青LED、緑LEDの3つが一体化したものと考えれば良いです。その際、各LEDの-側の足はどれもGroundに繋ぐものなので共通にして一本にしたというのがこの4本足のフルカラーLEDです。
図の★印が共通部分で「カソードコモン」と呼ばれています。逆の足を共通にした「アノードコモン」タイプもありますのでご注意ください。
足の長さをよく見るとそれぞれで少し異なります。1番長い足が「カソードコモン」の足ですので目印になります。

回路結線

以下のように接続してください。

長い足を目印に挿し込みます。
長い足を一番最初にブレッドボードの穴に引っ掛け、フルカラーLEDの角度を微妙に変え、徐々に他の足も穴に引っ掛けることでブレッドボートにうまく挿すことができます。

Ground, GPIO16, GPIO20, GPIO21 に接続しています。

プログラム

import time

#GPIOの初期設定
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)

#GPIO16, 20, 21を出力端子設定
GPIO.setup(16, GPIO.OUT) #Red
GPIO.setup(20, GPIO.OUT) #Blue
GPIO.setup(21, GPIO.OUT) #Green

#Red
GPIO.output(16, 1) #Red
GPIO.output(20, 0) #Blue
GPIO.output(21, 0) #Green
time.sleep(2)

#Blue
GPIO.output(16, 0) #Red
GPIO.output(20, 1) #Blue
GPIO.output(21, 0) #Green
time.sleep(2)

#Green
GPIO.output(16, 0) #Red
GPIO.output(20, 0) #Blue
GPIO.output(21, 1) #Green
time.sleep(2)

#OFF
GPIO.output(16, 0) #Red
GPIO.output(20, 0) #Blue
GPIO.output(21, 0) #Green

基本的にはRaspberry PiでLチカで取り扱ったプログラムの応用です。
上記は消灯を含め4通りの光らせ方ですが、GPIO出力の場合は全部で8通りの光らせ方が出来ますので色々試してみて下さい。

徐々に光らせたり、もう少し各色の割合を細かく変えたい場合は、「PWM制御」というキーワードで調べてみて下さい。

以上、ラズパイでフルカラーLEDでした!