תוכן עניינים:

שינוי צבע LED: 13 שלבים
שינוי צבע LED: 13 שלבים

וִידֵאוֹ: שינוי צבע LED: 13 שלבים

וִידֵאוֹ: שינוי צבע LED: 13 שלבים
וִידֵאוֹ: נורת LED RGB+CCT ל-E27, עם בקרת zigbee - סקירה, שילוב ב-Home Assistant 2024, יולי
Anonim
שינוי צבע LED
שינוי צבע LED
שינוי צבע LED
שינוי צבע LED
שינוי צבע LED
שינוי צבע LED

הוטל עלי ליצור אב טיפוס באמצעות סוג של חיישן ליצירת פלט. החלטתי להשתמש בתא צילום, שמודד את כמות האור בסביבה, ואת ה- RGB LED כתפוקה. ידעתי שאני רוצה לשלב את יכולתו של ה- LED להציג צבעים שונים, כי חשבתי שיהיה כיף שיהיה לי. אם אוכל ליצור איזה סוג פלט שאני רוצה, חשבתי שאפשר שיהיה לו צבעוני ככל האפשר.

עלות אומדן:

37 $ - ערכת סופר סטארטר Elegoo (כוללת את כל החומרים המתכלים)

$ 53 - לרכישת כל החומרים בנפרד

קישורים שימושיים:

RGB LED -

create.arduino.cc/projecthub/muhammad-aqib…

תא צילום -

create.arduino.cc/projecthub/MisterBotBreak/how-to-use-a-photoresistor-46c5eb

תוכנת Arduino -

www.arduino.cc/iw/software

ערכת סופר סטארט Elegoo -

www.amazon.com/gp/product/B01D8KOZF4/ref=p…

אספקה

- LED RGB אחד

- תא צילום אחד (הידוע גם כפוטוריסטור)

- לוח אחד של ארדואינו UNO

- קרש לחם אחד

- כבל USB אחד ל- Arduino

- 7 חוטי מגשר

- 3 נגדים של 220 אוהם

- נגד אחד של 10k אוהם

- תוכנת Arduino (להורדה בחינם)

אופציונאלי

- צבת אף מחט

שלב 1: הגדר נורית על לוח הלחם

הגדר LED על לוח הלחם
הגדר LED על לוח הלחם
הגדר LED על לוח הלחם
הגדר LED על לוח הלחם
הגדר LED על לוח הלחם
הגדר LED על לוח הלחם

ראשית נורית ה- RGB חייבת להיות מותקנת כראוי על לוח הלחם

הנח את הנורית עם כל אחת מארבע הרגליים בחורים נפרדים של אותה העמודה (מסומנת באותיות). הרגל הארוכה ביותר צריכה להיות הרגל השנייה מלמעלה.

בשורה (המסומנת במספרים) של הרגל הארוכה ביותר, חבר קצה אחד של חוט מגשר.

עבור כל אחת משלוש הרגליים הקצרות יותר, הניחו נגד אחד של 220 אוהם. כל נגד צריך להיות בעל שתי הרגליים באותה שורה כמו רגלי ה- LED. כאן הייתי משתמש בצבת אף המחט, מכיוון שקשה לחבר את רגלי הנגדים ביד.

חבר שלושה חוטי מגשר בצד הנגד שמול LED. לשלוש השורות האלה צריך להיות חוט מגשר אחד, נגד אחד ורגל אחת של ה- LED.

שלב 2: הגדר LED ב- Arduino

הגדר LED על Arduino
הגדר LED על Arduino
הגדר LED על Arduino
הגדר LED על Arduino
הגדר LED על Arduino
הגדר LED על Arduino
הגדר LED על Arduino
הגדר LED על Arduino

כעת, כשהנורית מותקנת כראוי על לוח הלחם, יש לחבר אותו ל- Arduino.

חוט המגשר הראשון המחובר לרגל הארוכה ביותר (צריך להיות השורה השנייה של ה- LED) צריך להיות מחובר לקרקע, המסומן על ידי "GND" על הארדואינו.

שלושת חוטי המגשר האחרים, בסדר יורד, צריכים להיות מחוברים ליציאות 11, 10 ו- 9. החוט בשורה העליונה צריך להיות מחובר ל -11, החוט הבא כלפי מטה (צריך להיות השורה השלישית) מתחבר ל -10, והחוט האחרון מתחבר ל- 9. שלושת החוטים הללו צריכים לרוץ במקביל זה לזה ולא לחפוף.

שלב 3: הגדר תא צילום על לוח הלחם

הגדר תא צילום על לוח הלחם
הגדר תא צילום על לוח הלחם
הגדר תא צילום על לוח הלחם
הגדר תא צילום על לוח הלחם
הגדר תא צילום על לוח הלחם
הגדר תא צילום על לוח הלחם

על מנת שה- LED יגיב לבהירות הסביבה, הוא צריך לקבל מידע מחיישן.

חבר את תא הצילום ללוח הלחם עם שתי הרגליים באותה העמודה, בדומה לאופן בו נורית ה- LED מחוברת.

חבר את הנגד 10k אוהם עם רגל אחת באותה שורה כמו הרגל התחתונה של התא. חבר את הרגל השנייה של הנגד למטה בתוך אותה העמודה.

שלב 4: חבר את תא התא ל- Arduino

חבר את Photocell ל- Arduino
חבר את Photocell ל- Arduino
חבר את Photocell ל- Arduino
חבר את Photocell ל- Arduino
חבר את Photocell ל- Arduino
חבר את Photocell ל- Arduino
חבר את Photocell ל- Arduino
חבר את Photocell ל- Arduino

חבר חוט מגשר אחד באותה שורה כמו הנגד 10k אוהם, אך לא באותה שורה את תא הצילום.

חבר את הקצה השני של חוט המגשר הזה לקרקע (GND) על הארדואינו.

חבר שני חוטי מגשר שונים, אחד באותה שורה כמו כל אחת מרגלי תאי הצילום.

חבר את החוט הרחוק ביותר למעלה ליציאת 5V בארדואינו.

חבר את החוט הרחוק ביותר לתחתית לתוך יציאת A0 בארדואינו.

שלב 5: חבר את הארדואינו

חבר את הארדואינו
חבר את הארדואינו
חבר את הארדואינו
חבר את הארדואינו
חבר את הארדואינו
חבר את הארדואינו
חבר את הארדואינו
חבר את הארדואינו

כעת, כאשר לוח הלחם מוגדר ומחובר ל- Arduino, השתמש במחבר ה- USB כדי לחבר את Arduino למחשב שלך.

שלב 6: הפעל את הקוד שלך

התחל את הקוד שלך
התחל את הקוד שלך
התחל את הקוד שלך
התחל את הקוד שלך

באמצעות תוכנית Arduino, צור סקיצה חדשה.

בהערה, כתוב את שמך, כמה פרטים אודות הסקיצה, וקשר בין כל המשאבים בהם השתמשת.

מעל הגדרת הריק, קבע את המשתנים הגלובליים. אל תהסס להעתיק ולהדביק את הקוד שלהלן. בעת כתיבת הקוד, חלקים מסוימים יהפכו לצבעים שונים. זה אמור לקרות.

int red_light_pin = 11; int green_light_pin = 10; int blue_light_pin = 9; int photocellReading = 0; int photocell = 5;

אם אתה מבחין, המספרים שהוקצו למשתנים אלה תואמים את המקום שבו החוטים מחוברים ללוח Arduino.

שלב 7: הגדרת בטל

התקנה בטלה
התקנה בטלה

קבע את נורית ה- RGB כתפוקה.

pinMode (red_light_pin, OUTPUT); pinMode (green_light_pin, OUTPUT); pinMode (blue_light_pin, OUTPUT);

הפעל את הצג הסדרתי על מנת לצפות בקריאות של תא הצילום.

Serial.begin (9600); Serial.println ("צג סדרתי התחיל"); עיכוב (500); Serial.println ("."); עיכוב (500); Serial.println ("."); עיכוב (500); Serial.println ("."); עיכוב (500);

ודא שקוד הגדרת הריק נמצא בתוך זוג פלטות מתולתלות {}

שלב 8: לולאה בטלה

Loop Void
Loop Void
Loop Void
Loop Void

כתוב את הקוד עבור קטע לולאת הריק.

הקוד בתמונה הראשונה מדפיס את הקריאות של תא הצילום בשורות נפרדות. זה הופך אותו לקל יותר לקריאה.

int int = analogRead (A0); photocellReading = analogRead (photocell); Serial.println (photocellReading); עיכוב (40);

הקוד בתמונה השנייה הוא התואם ערכי קריאה מסוימים לאיזה צבע הנורית תציג.

if (photocellReading 0) {RGB_color (255, 0, 0); // אדום} if (photocellReading 99) {RGB_color (255, 255, 0); // צהוב} if (photocellReading 199) {RGB_color (0, 255, 0); // ירוק} אם (photocellReading 299) {RGB_color (0, 0, 255); // כחול} if (photocellReading 399) {RGB_color (255, 0, 255); // מג'נטה}

שינוי ערכי המספרים של RGB_color (0s ו- 255s) ישנה את הצבע המוצג. אלה הצבעים שהלכתי איתם, אבל אתה מוזמן לשנות או לשנות אותם כרצונך.

בדוק שוב שמקטע לולאת הריק נמצא בתוך זוג פלטות מתולתלות {}

שלב 9: שינוי צבע

שינוי צבעים
שינוי צבעים

אלה עוד כמה צבעים לבחירה לשלב הקודם. השתמשתי בקוד זה כהפניה לסקיצה שלי.

שלב 10: קוד LED RGB סופי

קוד LED אחרון RGB
קוד LED אחרון RGB

בסוף המערכון, מחוץ לקטע לולאת החלל, הכנס קוד זה כדי לקבוע איזו יציאה בארדואינו מתקשרת בין ערך האור האדום, ערך האור הירוק וערך האור הירוק.

void RGB_color (int red_light_value, int green_light_value, int blue_light_value) {analogWrite (red_light_pin, red_light_value); analogWrite (green_light_pin, green_light_value); analogWrite (blue_light_pin, blue_light_value); }

בדיוק כמו עם חלקים של הגדרת הריק ולולאת הריק, ודא שהקטע הזה כלול בתוך זוג פלטות מתולתלות {}

שלב 11: בדוק את האורות

בדוק את האורות!
בדוק את האורות!
בדוק את האורות!
בדוק את האורות!
בדוק את האורות!
בדוק את האורות!

העלה את הקוד ללוח Arduino על ידי לחיצה על כפתור ההעלאה בתוכנית. אם עשית את זה נכון, ה- LED אמור להציג צבע בהתאם לכמות האור שיש בסביבה.

אדום הוא הסביבה הכהה ביותר, קריאת התאים הנמוכה ביותר.

צהוב הוא סביבה מעט בהירה יותר/קריאת תאים גבוהה יותר. הוא נראה בצבע חום בתמונה, אבל זהר בוהק באופן אישי.

שלושת הצבעים הבאים, ירוק, כחול ומג'נטה, כולם מתכתבים עם קריאות גבוהות בהדרגה מהתא.

שלב 12: פתרון בעיות

פתרון תקלות
פתרון תקלות

אם הצבעים אינם משתנים או שנדרשים שינויים קיצוניים עד שהצבעים משתנים, בדוק את קריאות תאי הצילום במסך הטורי. לכל סביבה יש רמות אור שונות, ולכן חשוב שהקוד ישקף זאת.

לחץ על כלים בחלק העליון של התוכנית Arduino -> לחץ על צג סידורי.

יופיע חלון המציג רשימה מספרים מתמשכת. התאם את מספרי הצהרות ה- if מהשלב של Loop Loop.

שלב 13: מוצר סופי

מוצר סופי
מוצר סופי

על ידי ביצוע כל השלבים הללו, עליך בסופו של דבר לקבל אור שמשנה צבעים בהתאם לבהירות הסביבה.

בשבילי, בהירות ממוצעת של החדר שלי, האור זורק ירוק, אבל אני יכול לשנות את הצבע בקלות על ידי כיסוי התא או הגדלת כמות האור.

מוּמלָץ: