🌈 LED RGB (سه‌رنگ) (RGB LED)

اسم انگلیسیRGB LED
در ووکوی (Wokwi)wokwi-rgb-led
دسته💡 LED و نمایشگر
در شبیه‌ساز فارسیمود ساده (بدون کد) و مود آردوینو · رایگان

LED RGB یا سه‌رنگ (RGB LED) سه LED قرمز، سبز و آبی را در یک بدنه دارد که یک پایه‌ی مشترک دارند. با تنظیم شدت هر کدام با PWM تقریباً هر رنگی می‌سازی: لامپ خواب رنگی، نشانگر وضعیت سه‌حالته (سبز آماده، زرد صبر، قرمز خطا) یا نمایش دما با رنگ، از آبی سرد تا قرمز داغ.

LED RGB در ووکوی (Wokwi)

شناسه‌اش در ووکوی wokwi-rgb-led است با پایه‌های R، G، B و COM؛ به‌طور پیش‌فرض کاتد مشترک است، پس COM به GND می‌رود. هر کانال یک مقاومت ۲۲۰ اهم دارد:

{
  "version": 1,
  "parts": [
    { "type": "wokwi-arduino-uno", "id": "uno", "top": 0, "left": 0 },
    { "type": "wokwi-rgb-led", "id": "rgb1", "top": -150, "left": 160 },
    { "type": "wokwi-resistor", "id": "r1", "top": -80, "left": 100, "attrs": { "value": "220" } },
    { "type": "wokwi-resistor", "id": "r2", "top": -80, "left": 150, "attrs": { "value": "220" } },
    { "type": "wokwi-resistor", "id": "r3", "top": -80, "left": 200, "attrs": { "value": "220" } }
  ],
  "connections": [
    [ "uno:9", "r1:1", "red", [] ],
    [ "r1:2", "rgb1:R", "red", [] ],
    [ "uno:10", "r2:1", "green", [] ],
    [ "r2:2", "rgb1:G", "green", [] ],
    [ "uno:11", "r3:1", "blue", [] ],
    [ "r3:2", "rgb1:B", "blue", [] ],
    [ "rgb1:COM", "uno:GND.1", "black", [] ]
  ]
}

در تینکرکد فارسی این قطعه با پایه‌های R، K (کاتد مشترک)، G و B در هر دو حالت رایگان است؛ مثال لامپ رنگین‌کمانی را باز کن و رنگ‌ها را زنده ببین.

سیم‌کشی با آردوینو

پایه‌ی قطعهوصل به
R (قرمز)پین 9 از راه ۲۲۰ اهم
G (سبز)پین 10 از راه ۲۲۰ اهم
B (آبی)پین 11 از راه ۲۲۰ اهم
پایه‌ی مشترک (بلندترین)GND برای کاتد مشترک، 5V برای آند مشترک

هر کانال مقاومت خودش را می‌خواهد؛ یک مقاومت مشترک روی پایه‌ی COM باعث می‌شود رنگ‌ها روی هم اثر بگذارند و با روشن شدن یک رنگ، بقیه کم‌نور شوند.

کد نمونه

این کد یک چرخه‌ی رنگ نرم می‌سازد: قرمز به سبز، سبز به آبی و آبی دوباره به قرمز. با یک ثابت برای LED آند مشترک هم کار می‌کند:

// RGB LED colour wheel. Wiring: R -> 220 -> pin 9, G -> 220 -> pin 10,
// B -> 220 -> pin 11, common pin -> GND (or 5V for common anode)
const int PIN_R = 9;
const int PIN_G = 10;
const int PIN_B = 11;
const bool COMMON_ANODE = false;    // true if the long leg goes to 5V

void setColor(int r, int g, int b) {
  if (COMMON_ANODE) {               // anode type: LOW = on
    r = 255 - r;
    g = 255 - g;
    b = 255 - b;
  }
  analogWrite(PIN_R, r);
  analogWrite(PIN_G, g);
  analogWrite(PIN_B, b);
}

// 0..767 around the wheel: red -> green -> blue -> red
void wheel(int pos) {
  if (pos < 256) setColor(255 - pos, pos, 0);
  else if (pos < 512) setColor(0, 511 - pos, pos - 256);
  else setColor(pos - 512, 0, 767 - pos);
}

void setup() {
  pinMode(PIN_R, OUTPUT);
  pinMode(PIN_G, OUTPUT);
  pinMode(PIN_B, OUTPUT);
}

void loop() {
  for (int p = 0; p < 768; p++) {
    wheel(p);
    delay(8);
  }
}

تابع setColor قلب کار است: هر رنگی را با سه عدد ۰ تا ۲۵۵ می‌سازی، مثلاً setColor(255, 120, 0) برای نارنجی یا setColor(255, 255, 255) برای سفید.

تابع wheel هم فقط برای نمایش نیست. اگر بخواهی دما را با رنگ نشان بدهی، عدد سنسور را با map به بازه‌ای بین ۵۱۱ (آبی، سرد) و ۰ (قرمز، داغ) ببر و همان را به wheel بده؛ رنگ با گرم شدن هوا از آبی به سبز و بعد به قرمز می‌رود. همین ایده با پتانسیومتر یا سنسور نور هم کار می‌کند.

اشتباه‌های رایج

آموزش‌های مرتبط

سؤال‌های رایج

LED RGB من آند مشترک است یا کاتد مشترک؟

پایه‌ی بلندتر را یک بار به GND و یک بار به 5V بزن و یکی از پایه‌های رنگ را با مقاومت به طرف دیگر. اگر با پایه‌ی بلند روی GND روشن شد، کاتد مشترک است؛ اگر روی 5V، آند مشترک. wokwi-rgb-led به‌طور پیش‌فرض کاتد مشترک است.

چرا رنگ سفید LED RGB مایل به آبی یا صورتی است؟

سه LED داخلی روشنایی برابر ندارند و معمولاً سبز و آبی پرنورترند. با کم کردن عدد analogWrite کانال قوی‌تر یا بزرگ‌تر کردن مقاومتش، سفید را متعادل کن.

چند پایه‌ی PWM برای LED RGB لازم است؟

سه پایه، یکی برای هر رنگ، تا ترکیب‌های رنگی نرم بسازی. روی اونو پین‌های ۳، ۵، ۶، ۹، ۱۰ و ۱۱ PWM دارند.

📖 طرز کار، مشخصات فنی و نکته‌های خرید این قطعه در دانشنامه‌ی تینکرکد فارسی: LED RGB (سه‌رنگ) آمده است.

آموزش‌هایی که از این قطعه استفاده می‌کنند

🌗

PWM با میکروپایتون روی رزبری پای پیکو: LED نفس‌کش با duty_u16 و freq

قطعه‌های دیگرِ LED و نمایشگر

🔢

نمایشگر هفت‌قسمتی (سون سگمنت)

7-Segment Display

📊

نوار LED ده‌تایی

LED Bar Graph (10 segments)

📟

نمایشگر LCD 16×2

LCD 16x2 (LCD1602)

🌈

نئوپیکسل (WS2812)

NeoPixel (WS2812B)

🔢

نمایشگر ۴ رقمی TM1637

TM1637 4-Digit Display

🖥️

نمایشگر OLED ۰٫۹۶ اینچ (SSD1306)

SSD1306 OLED Display 0.96"

همه‌ی ۱۰۵ قطعه ← · آموزش مدار

LED RGB (سه‌رنگ) را در شبیه‌ساز امتحان کن 🚀