目次
はじめに
電子工作をしていると、光で状態を知らせたり、イルミネーションを作ったりしたくなる場面があります。そんなときに便利なのが、今回紹介する RGB LEDモジュール です。1つのLEDの中に「赤・緑・青」の3色が内蔵されていて、組み合わせ次第で好きな色を作れます。
リンク
RGB LEDモジュールの基本と仕組み
RGB LEDの内部は、次のように3つのLED素子が一つのケースにまとめられています。
- R:赤色LED
- G:緑色LED
- B:青色LED
光の三原色と同じ原理で、各色の強さを調整することでさまざまな色を合成できます。
調整の方法としては、PWM(パルス幅変調) を用いるのが一般的です。PWMで各色の点灯時間を制御することで、明るさを滑らかに変えられます。
モジュールの特徴
今回のモジュールは「HW-479」などと呼ばれるタイプで、基板にあらかじめ抵抗がついているので、直接マイコンにつないでも安心して使えます。
ピン配列(例:共通カソードタイプ)
- R:赤LED制御
- G:緑LED制御
- B:青LED制御
- GND:共通カソード
3本の制御ピンにPWMを割り当てることで、色を自由に作ることが可能です。
Raspberry Pi Picoとの接続方法
| Raspberry Pi Pico | LEDモジュール |
| GND(38番) | GND |
| GP16 | R |
| GP17 | G |
| GP18 | B |
MicroPythonで動かしてみよう
次のように3本のPWM出力を使います。
from machine import Pin, PWM
import time
pwm_r = PWM(Pin(16))
pwm_g = PWM(Pin(17))
pwm_b = PWM(Pin(18))
for pwm in (pwm_r, pwm_g, pwm_b):
pwm.freq(1000)
def set_rgb(r, g, b):
pwm_r.duty_u16(r)
pwm_g.duty_u16(g)
pwm_b.duty_u16(b)
# 赤
set_rgb(65535, 0, 0); time.sleep(1)
# 緑
set_rgb(0, 65535, 0); time.sleep(1)
# 青
set_rgb(0, 0, 65535); time.sleep(1)
# 白(全部点灯)
set_rgb(65535, 65535, 65535)身近な利用例
・スマート家電のステータス表示(青=待機、緑=動作中、赤=エラー)
・PCケースやオーディオのイルミネーション
・IoTデバイスで通知ライトとして利用(LINE通知時に光らせる等)
他の方式との比較
| 種類 | 特徴 | 制御のしやすさ |
| 単色LEDモジュール | 1色のみ | 最も簡単 |
| RGB LEDモジュール(今回) | 3色で自由に混色 | PWM制御が必要 |
| アドレス指定可能LED(WS2812Bなど) | 1本の信号線で多数を制御 | プログラムがやや複雑 |
まとめ
RGB LEDモジュールは「シンプルに色を作れる入門用デバイス」です。
光の三原色を直感的に体験できるのが魅力。まずは単色点灯から始めて、徐々にフェードやグラデーションに挑戦すると、電子工作の楽しさがぐっと広がります。
リンク
コメント