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

מדורה: 7 שלבים
מדורה: 7 שלבים

וִידֵאוֹ: מדורה: 7 שלבים

וִידֵאוֹ: מדורה: 7 שלבים
וִידֵאוֹ: Fireplace 10 hours full HD 2024, יולי
Anonim
Image
Image

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

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

  • שריפה. משחקי הכס עוררו השראה מאש כמו מחזה.
  • מושך חד קרן. מחזה, שמתפוגג בין צבעי הקשת.
  • לְמַצְמֵץ. שינוי צבע אקראי בשתי מהירויות שונות.
  • לִדעוֹך. שינוי חלק של צבעים אקראיים בשתי מהירויות שונות.
  • צבעים חיים. צבע את האובייקטים שלך באור מתנדנד בעדינות סביב צבע פרטי אחד.
  • נרות. תן לד שלך לחקות להבת נר טבעית.

ההתקנה

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

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

  • קבע את המהירות ואת כיוון השינוי
  • הגדר את הצבע לנרות מהבהבים
  • הגדר את הבהירות והרוויה של הצבעים

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

שלב 1: מה שאתה צריך

מה אתה צריך
מה אתה צריך
מה אתה צריך
מה אתה צריך
  • פס LED RGB זול, אותו תוכלו לחתוך לרצועות קצרות יותר
  • יחידת כוח, רצוי הדבר 12 V 1.5 A שהגיע עם רצועת LED RGB
  • UNO Arduino או דומה
  • שני ULN2803AP IC: s
  • כפתור לחיצה פשוט
  • לוח לחם של פרמה-פרוטו
  • חוּט
  • קופסה לאלקטרוניקה
  • כמה חפצי זכוכית שיוארו על ידי רצועות LED RGB
  • כלים (חשפן תיל, מלחם, הלחמה …)

רצועת הלד

קניתי רצועת לד זולה, המורכבת מכ -90 נוריות SMD מסוג RGB. יחידה קטנה מניעה את הלדים ומשנה את צבעם. היחידה נשלטת מרחוק והרצועה יכולה לשנות צבעים בדרכים שונות. אבל לכל הרצועה יש אותו צבע. הדבר המהנה הוא שאתה יכול לחתוך את הרצועה לרצועות קטנות המכילות שלוש נוריות rgb בלבד בכל רצועה. כל רצועה, לא משנה כמה היא ארוכה, אמורה להיות מופעלת עם 12 וולט. לכל קטע של שלוש נוריות rgb יש קבוצת נגדים משלה הדואגת לירידת המתח עבור הנורות. אתה רק צריך לספק את ה -12 וולט והספק של אמפר, ובכן, מיליאמפר. לפרויקט זה, אני משתמש בשלוש רצועות של רצועת לד, אשר 6 יחידות בכל אחת, ויחידת הכוח 12 V 1.0 A. אין צורך ביחידת הבקרה ובשלט הרחוק.

ULN2803AP

לד יחיד צריך זרם מועט בלבד. בדרך כלל אתה יכול להדליק נורית ישירות מסיכת נתונים של Arduino, כל עוד יש לך נגד שמוריד את סיכת הנתונים 5 V לכ -3 V עבור הלד. אבל נורית אחת מסוג RGB SMD5050 מורכבת משלוש נוריות, אדום, גרן וכחול. ולפרויקט זה, אני משתמש ברצועות של 6 נוריות SMD5050 RGB. סיכת נתונים אחת של ה- Arduino Uno שולטת על 6 נוריות LED. רק זה יקלוט את סיכת הנתונים, אם הכוח להדליק את הנורות יגיע מסיכת הנתונים. אבל יהיו ב- alles תשעה סיכות נתונים כאלה ובוודאי שתהיה יותר מדי זרם עבור הארדואינו. לכן ה- ULN2803AP בועט. ה- ULN2803AP הוא שבב משולב עם 8 טרנזיסטורים של דרלינגטון. אני צריך 9, אז אני פשוט משתמש בשני שבבי ULN2803AP. זה משאיר לי 7 טרנזיסטורים רזרביים, אם אני רוצה להרחיב את הפרויקט כדי לומר חמישה אובייקטים.

LED אחד בודד בתוך ה- RGB SMD5050 LED שואב 20 mA. שישה מהם מתכוונים ל- 120 mA. סיכה אחת (טרנזיסטור דארלינגטון אחד) ב- ULN2803 יכולה לשקוע 500 mA. אבל כל השבב יכול להתמודד עם מקסימום 1.44 וואט של חום המיוצר מהזרם. 120 mA מייצר 0.144 W. אני שם חמישה קווים על אחד משבבי ULN2803 וארבעה קווים על השני. זה יהיה 0.72 W בשבב אחד ו- 0.58 W בשבב השני. אז אני אמור להיות בסדר. שימוש בכל 8 הקווים של ULN2803 עם 120 mA על כל אחד יחמם את השבב עם 1.2 W. זה יהיה חם, אבל זה עדיין יסבול את זה.

בפשטות, פס ה- RGB SMD LED מקבל 12 וולט ממקור החשמל. מפס ה- LED, הזרם מכל שלושת ה- LEDs הצבעוניים עובר לסיכה משלו ב- ULN2803AP ובהמשך ל- GND. המעגל סגור ונורית ה- LED נדלקת. אבל ה- ULN2803AP מופעל/כבוי על ידי אותות הנתונים של 5 V מהארדואינו. אותות אלה ימשכו רק כמה מיליאמפר מהארדואינו.

חפצי הזכוכית ורצועות הלד

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

שלב 2: הוראות משתמש

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

  1. שריפה. משחקי הכס עוררו השראה לאש כמו מחזה, שבו להבות ירוקות עוברות מחפץ זכוכית אחד לשני. אפקט זה ייראה מרהיב ביותר, כאשר חפצי הזכוכית ימוקמו אנכית זה לזה. שלוש תוכניות משנה שונות מיושמות בקצב משתנה של הלהבות.
  2. מושך חד קרן. מחזה, שמתפוגג בין צבעי הקשת. דהייה מתרחשת בצורה מסתובבת, כמו שכל צבע עובר מאובייקט זכוכית אחד לאחר. לתוכניות המשנה יהיו מהירויות שונות של דהייה.
  3. לְמַצְמֵץ. שינוי צבע אקראי בשתי מהירויות שונות. לתכניות המשנה יהיו לוחות משתנים (רק צבעים רוויים לחלוטין, חצי צבעים רוויים, צבעים מחצי רק ממעגל הצבעים)
  4. לִדעוֹך. שינוי חלק של צבעים אקראיים בשתי מהירויות שונות. ערכות משנה דומות למספר 3.
  5. צבעים חיים. צבע את האובייקטים שלך באור המתנדנד בעדינות סביב צבע פרטי אחד. תוכניות המשנה יגדירו את הצבעים לאדום, כתום, צהוב, ירוק, כחול, אינדיגו או סגול. התנודה מתרחשת בתוך מגזר של 10 מעלות סביב הצבע הנבחר. לשלושת חפצי הזכוכית אותו צבע נבחר, אך לכל אובייקט יש תדירות משתנה אקראית של תנודות, כדי להעניק לכל המערך צבע חי תוסס.
  6. נרות. תן לד שלך לחקות להבת נר טבעית. שלוש תוכניות משנה:

    1. "רגוע ככל האפשר"
    2. "חלון פתוח איפשהו"
    3. "זה היה לילה חשוך וסוער"

שלב 3: כמה מילים על צבעי RGB

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

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

אחת הדרכים לדגמן את שטח ה- RGB היא קובייה. קודקוד אחד של הקוביה הוא שחור. מאותו קודקוד נוכל לנסוע לאורך הקצה האדום, הכחול או הירוק. כל נקודה בקובייה היא צבע המוגדר על ידי הקואורדינטות האדומות, הירוקות והכחולות שלה. נוסעים לקודקוד הרחוק ביותר מהקודקוד השחור, אנו מגיעים לקודקוד הלבן. בהתמקד בששת הקודקודים למעט השחור והלבן, נוכל ליצור שביל שחוצה את כל ששת הקודקודים על ידי ביצוע הקצוות. לכל קצה 256 נקודות או צבעים. כל קודקוד משותף לשני קצוות, כך שמספר הנקודות הכולל הוא 6 * 255 = 1530. בעקבות נתיב זה חוצה את כל 1530 הצבעים הרווים לחלוטין בספקטרום הצבעים. או הקשת. הקודקודים מייצגים את הצבעים אדום, צהוב, ירוק, ציאן, כחול ומג'נטה.

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

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

במקום ששביל הקצה סביב הקובייה יתאר את כל הצבעים הרווים במלואם, נוכל למקם את 1530 הצבעים האלה במעגל, שם יש לנו 255 צבעים שונים במגזר של 60 מעלות - כמו כאשר דוהים מאדום לצהוב על ידי הוספת ירוק אליו.. ריצה בין כל הצבעים במעגל הצבעים היא כמו הזזה של שלושה בקרי צבע, אחד בסיבוב, בעוד ששני האחרים נמצאים ברוב הפוזיציות ההפוכות. מכיוון שאני הולך להשתמש במעגל הצבעים, או בספקטרום הקשת, בחלק מסכימות הצבעים, אני הולך להגדיר צבע (הגוון) כנקודה במעגל, באמצעות סולם 1530 שלי:

סולם סטנדרטי 360 בקנה מידה 1530

=========================== אדום 0 0 כתום 128 30 צהוב 256 60 ירוק 512 120 טורקיז 768 180 כחול 1024 240 אינדיגו 1152 270 סגול 1280 300 ורוד 1408 330

סולם זה של 1530 מפשט את הפיכת צבעי הקשת לערכים עבור נוריות ה- RGB.

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

ובכל זאת כמה מילים על PWM

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

רצועת ה- LED הזולה RGB SMD שקניתי לפרויקט זה כוללת מכשיר שמטפל ב- PWM. בפרויקט זה אני יוצר את ה- PWM עם ה- Arduino UNO במקום זאת. מרחב הצבעים RGB, כפי שהוא מיושם בדרך כלל במסך מחשב, הוא מבנה תיאורטי, שבו מדמיינים כל ערוץ צבע המחזיק בערך 0 עד 255 והבהירות של הערוץ תעקוב אחר הערך באופן לינארי. הכרטיס הגרפי של המחשב עשוי לפצות על כל קיצור מהציפיה הליניארית הזו שיכולה להיות לנורות האמיתיות. בין אם נוריות ה- SMD המשמשות בפרויקט זה עוקבות באופן לינארי ובין ערכי ה- PWM שבהם נעשה שימוש אינן בהיקף הפרויקט. ערך PWM של 255 יוצר את האור הבהיר ביותר. אבל ערך של 128 עשוי להיות לא בהירות הנתפסת כמחצית מהבהירות של 255. ו 192 אולי לא תתפס כבהירות בדיוק באמצע 255 ו -128.

שלב 4: התרשימים

הסכימות
הסכימות

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

שלב 5: הקוד

הקוד נכתב עבור Undu Arduino. ל- Uno יש רק 6 סיכות מסוגלות PWM, אבל אני צריך 9 מהן. אז אני משתמש בספריית PWM מיוחדת שנכתבה על ידי ברט האגמן. זה חייב להיות מותקן ב- Arduino IDE שלך.

wildfire.ino הוא קובץ הפרויקט הראשי, הוא כולל את פונקציות ההתקנה () והלולאה (), כמו גם כמה פונקציות נפוצות אחרות עבור כל התוכניות.

wildfire.h הוא קובץ הכותרת הנפוץ.

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

שלב 6: בפעולה

Image
Image

שלב 7: פיתוח נוסף

  • החלף את ממשק הכפתור היחיד ב- ESP8266 כדי לאפשר קשר אלחוטי עם טלפון אנדרואיד, כאשר ממשק המשתמש הוא דף אינטרנט לשליטה בתוכניות.
  • עדיין נותרו כ -70 נוריות SMD מסוג RGB לשימוש ברצועה. זה 24 רצועות עם 3 בכל אחת. 24 ערוצים נוספים זקוקים לגישה חדשה. הוא יצטרך Arduino Mega 2560 ועוד כמה שבבי ULN2803AP, לחלופין שני לוחות סרוו של 16 ערוצים, המשמשים לעתים קרובות עבור נוריות LED.
  • השלט הרחוק לרצועת ה- LED המקורית, כמו גם המקלט שלו, אינו בשימוש. עדיין לא פתחתי את הרסיבר, אך אולי ניתן יהיה לעשות בו שימוש חוזר איכשהו. אפשר לתת לארדואינו לחטוף את ההיגיון שלו ולתת לו למסור נתונים מספריים לארדואינו כדי לשלוט בתצוגת האור.

מוּמלָץ: