מודול RGB KY-016 – מדריך מקיף ומפורט
תוכן עניינים
מבוא
מודול ה-RGB KY-016 הוא רכיב שמאפשר לנו ליצור כמעט כל צבע שנרצה באמצעות שלוש נורות LED בצבעים אדום, ירוק וכחול. בדומה למסכי הטלוויזיה והטלפונים החכמים שלנו, המודול משתמש בערבוב של שלושת הצבעים הבסיסיים האלה כדי ליצור מגוון עצום של צבעים.
היכולת לשלוט בעוצמה של כל צבע בנפרד, בעזרת Arduino או מיקרו-בקרים אחרים, פותחת בפנינו אפשרויות רבות ליצירת אפקטים מרהיבים של תאורה.
הייחודיות של מודול זה היא ביכולת שלו לשלב את שלושת הצבעים בעוצמות שונות. כל נורת LED במודול יכולה להאיר בעוצמות שונות, החל מכבויה לחלוטין ועד לעוצמה מקסימלית. כשמשלבים את שלושת הצבעים בעוצמות שונות, אפשר ליצור אלפי גוונים שונים, מה שהופך את המודול למושלם עבור פרויקטים שדורשים תאורה צבעונית מתוחכמת.
מאפיינים טכניים מפורטים
מתח הפעלה: 3.3V עד 5V, התאמה מושלמת לעבודה עם:
– Arduino (כל הדגמים)
– Raspberry Pi
– ESP32/ESP8266
– רוב המיקרו-בקרים הנפוצים
צריכת זרם:
– לכל LED עד 20mA
– סה”כ צריכה מקסימלית: כ-60mA
אפשרויות חיבור:
– אנודה משותפת: החיבור המשותף למתח חיובי (5V/3.3V)
– קתודה משותפת: החיבור המשותף להארקה (GND)
עקרון הפעולה מפורט
בבסיס המודול עומדת היכולת לשלב שלושה צבעי יסוד ליצירת קשת רחבה של צבעים. כל נורת LED במודול אחראית על צבע אחד (אדום, ירוק או כחול), וכשמשנים את העוצמה של כל נורה, מקבלים צבעים שונים. למשל:
הדלקת האדום והירוק יחד יוצרת צהוב
הדלקת הירוק והכחול יחד יוצרת טורקיז
הדלקת האדום והכחול יחד יוצרת סגול
הדלקת כל השלושה יחד בעוצמה מלאה יוצרת אור לבן
שיטת הבקרה באמצעות PWM
PWM (Pulse Width Modulation) הוא המפתח ליצירת הצבעים השונים. זוהי טכניקה מתוחכמת המאפשרת לנו לשלוט בעוצמת האור של כל LED באמצעות שינוי מהיר מאוד של מצב ההדלקה והכיבוי.
כיצד PWM עובד בפועל:
1. הארדואינו שולח פולסים חשמליים מהירים מאוד
2. ככל שהפולס “דלוק” זמן רב יותר, העין שלנו רואה אור חזק יותר
3. ככל שהפולס “כבוי” זמן רב יותר, העין שלנו רואה אור חלש יותר
4. המהירות הגבוהה של השינויים גורמת לעין שלנו לראות את האור כרציף
בארדואינו, אנחנו שולטים בעוצמה באמצעות ערכים בין 0 ל-255:
0 = LED כבוי לגמרי
127 = LED דולק בחצי מהעוצמה
255 = LED דולק בעוצמה מלאה
חיבור המודול לארדואינו
חיבור המודול הוא פשוט, אך חשוב להבין את משמעות כל חיבור כדי להשיג את התוצאות הטובות ביותר. המודול מגיע עם ארבעה פינים המאפשרים שליטה מלאה בכל צבע.
סדר החיבורים:
R (אדום) ➜ פין 9 בארדואינו (חייב לתמוך ב-PWM)
G (ירוק) ➜ פין 10 בארדואינו (חייב לתמוך ב-PWM)
B (כחול) ➜ פין 11 בארדואינו (חייב לתמוך ב-PWM)
VCC/GND ➜ תלוי בסוג המודול:
– באנודה משותפת: חיבור ל-5V
– בקתודה משותפת: חיבור ל-GND
תוכנה להפעלת RGB
ישנן שתי גישות עיקריות לתכנות המודול:
הפעלה בסיסית – ללא PWM
const int redPin = 9; // פין המחובר ל-R
const int greenPin = 10; // פין המחובר ל-G
const int bluePin = 11; // פין המחובר ל-B
void setup()
{
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
}
void loop()
{
// אדום
digitalWrite(redPin, 0);
digitalWrite(greenPin, 1);
digitalWrite(bluePin, 1);
delay(1000);
// ירוק
digitalWrite(redPin, 1);
digitalWrite(greenPin, 0);
digitalWrite(bluePin, 1);
delay(1000);
// כחול
digitalWrite(redPin, 1);
digitalWrite(greenPin, 1);
digitalWrite(bluePin, 0);
delay(1000);
}
בקוד זה אנחנו פשוט מדליקים וכבים כל צבע, מה שמאפשר לנו ליצור את שבעת הצבעים הבסיסיים.
שליטה מתקדמת – עם PWM
const int redPin = 9; // פין המחובר ל-R
const int greenPin = 10; // פין המחובר ל-G
const int bluePin = 11; // פין המחובר ל-B
void setup()
{
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
}
void loop()
{
for (int i = 0; i <= 255; i++)
{
analogWrite(redPin, 255 - i); // שליטה בצבע האדום
analogWrite(greenPin, i); // שליטה בצבע הירוק
analogWrite(bluePin, 128); // כחול קבוע
delay(10);
}
for (int i = 255; i >= 0; i--)
{
analogWrite(redPin, 255 - i);
analogWrite(greenPin, i);
analogWrite(bluePin, 128);
delay(10);
}
}
קוד זה מדגים כיצד ניתן ליצור מעברי צבעים חלקים ואפקטים מתקדמים.
קוד להפעלת כל הצבעים הבסיסים
הקוד הבא מדגים כיצד ליצור את כל הצבעים הבסיסיים ברצף. לכל צבע ניתנת שנייה להאיר לפני המעבר לצבע הבא:
const int redPin = 9; // פין המחובר ל-R
const int greenPin = 10; // פין המחובר ל-G
const int bluePin = 11; // פין המחובר ל-B
void setup()
{
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
}
void loop()
{
// אדום
analogWrite(redPin, 0);
analogWrite(greenPin, 255);
analogWrite(bluePin, 255);
delay(1000);
// ירוק
analogWrite(redPin, 255);
analogWrite(greenPin, 0);
analogWrite(bluePin, 255);
delay(1000);
// כחול
analogWrite(redPin, 255);
analogWrite(greenPin, 255);
analogWrite(bluePin, 0);
delay(1000);
// צהוב
analogWrite(redPin, 0);
analogWrite(greenPin, 0);
analogWrite(bluePin, 255);
delay(1000);
// טורקיז
analogWrite(redPin, 255);
analogWrite(greenPin, 0);
analogWrite(bluePin, 0);
delay(1000);
// סגול
analogWrite(redPin, 0);
analogWrite(greenPin, 255);
analogWrite(bluePin, 0);
delay(1000);
// לבן
analogWrite(redPin, 0);
analogWrite(greenPin, 0);
analogWrite(bluePin, 0);
delay(1000);
}
בקוד זה אנחנו יוצרים את הצבעים הבאים:
אדום טהור – רק נורת האדום דולקת
ירוק טהור – רק נורת הירוק דולקת
כחול טהור – רק נורת הכחול דולקת
צהוב – שילוב של אדום וירוק
טורקיז – שילוב של ירוק וכחול
סגול – שילוב של אדום וכחול
לבן – כל הנורות דולקות יחד
טיפים חשובים לעבודה עם המודול
שיקולי תכנון
1. זיהוי סוג המודול:
– חשוב לדעת אם המודול שלכם הוא אנודה משותפת או קתודה – משותפת, חיבור לא נכון יגרום להתנהגות הפוכה של הצבעים.
2. בחירת פינים:
– השתמשו רק בפינים שתומכים ב-PWM (מסומנים ב-~ על הארדואינו)
– בארדואינו אונו: פינים 3, 5, 6, 9, 10, 11
3. שיקולי חשמל:
– אל תחרגו מהזרם המקסימלי המותר (20mA לכל צבע)
– בשימוש ממושך, תנו למודול לנוח מדי פעם
יישומים מעשיים ודוגמאות שימוש
דוגמאות לפרויקטים עם המודול:
1. מחוון מצב מערכת – מערכת שמשתמשת בצבעים שונים להצגת סטטוס – ירוק למצב תקין, צהוב לאזהרה, אדום לשגיאה.
2. תאורת אווירה חכמה – יצירת תאורת רקע שמשנה צבעים בהתאם לשעות היום או למוזיקה המתנגנת.
3. משחק זיכרון צבעים – משחק שמציג רצף צבעים שהשחקן צריך לחזור עליו.
4. מחוון טמפרטורה צבעוני – שינוי צבע בהתאם לטמפרטורה – מכחול (קר) דרך ירוק (נעים) ועד אדום (חם).
5. תצוגת נתונים ויזואלית – הצגת מידע כמו עוצמת רעש, לחות או איכות אוויר באמצעות צבעים שונים.
סיכום
מודול ה-RGB KY-016 הוא רכיב פשוט אך רב-עוצמה שמאפשר להוסיף אלמנט ויזואלי מרשים לכל פרויקט. היכולת לשלוט בעוצמת כל צבע בנפרד פותחת אפשרויות רבות:
א. יצירת כל צבע שתרצו.
ב. מעברים חלקים בין צבעים.
ג. אינטראקציה ויזואלית עם המשתמש.
ד. משוב מיידי על מצב המערכת.
עם הקודים והדוגמאות שהצגנו, תוכלו להתחיל ליצור פרויקטים מרשימים משלכם.
זכרו להתחיל מהבסיס ולהתקדם בהדרגה ליישומים מורכבים יותר.