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

בקר תאורת LED דינאמי לאמנות: 16 שלבים (עם תמונות)
בקר תאורת LED דינאמי לאמנות: 16 שלבים (עם תמונות)

וִידֵאוֹ: בקר תאורת LED דינאמי לאמנות: 16 שלבים (עם תמונות)

וִידֵאוֹ: בקר תאורת LED דינאמי לאמנות: 16 שלבים (עם תמונות)
וִידֵאוֹ: ג'ושה באך: זמן, השערת סימולציה, קיום 2024, יולי
Anonim
Image
Image

מבוא:

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

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

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

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

שלב 1: חומרים:

  • מחרוזת נוריות WS2812
  • Arduino Pro Mini 328 - 5V/16 MHz
  • ממשק USB של חבר FTDI
  • כבל USB A ל- MiniB עבור FTDI
  • קבלים של 4700 μf
  • ספק כוח 5v עם מחבר 5.5 x 2.1
  • שקע חשמל 5.5 x 2.1
  • בלוק מסוף
  • מעגל אב טיפוס
  • לחצן
  • פוטנציומטר
  • מחוון LED
  • נגדים
  • כבל סרט
  • כותרת זכר
  • נקבה בכותרת

שלב 2: משאבים:

  • ארדואינו; סביבת פיתוח אינטראקטיבית (IDE)
  • ספריית NeoPixel Adafruit
  • מדריך NeoPixel
  • תוכנית דוגמאות Strandtest
  • ספריית FastLED
  • קישורים ומסמכים של FastLED
  • פורום FastLED
  • סקיצות התאורה שלנו

שלב 3: סקירת בקר:

סקירת בקר
סקירת בקר
סקירת בקר
סקירת בקר

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

אנו רוצים להתאים את הבקר שלנו למסגרת התמונה ולכן בחרנו ב- Arduino pro mini 5v בגלל גודלו הקטן, העלות והפלט של 5V. גודל ספק הכוח 5V שאתה צריך יהיה תלוי בכמה נוריות ובהירותן המרבית בפרויקט שלך. כל הפרויקטים שלנו רצו פחות מ -3 אמפר וחלקם היו פחות מ 1 אמפר. ישנם מספר סוגים של נוריות צבע כתובות. התחלנו עם ה- WS2812 שנמכר על ידי Adafruit כאחד ממוצרי "NeoPixel" שלהם. זה עבד עבורנו ולא בחנו נוריות LED אחרות. רוב הפרויקטים שלנו השתמשו ברצועת 60 לד למטר. עד כה הפרויקטים שלנו נעו עד 145 נוריות LED.

מקלט אופציונלי:

בנינו "מקלט" קטן של מעגל קלט, כך שנוכל להתאים בקלות קטעי תאורה מבלי לשנות ולהעלות את התוכנית לכל התאמה. יש לו: נורית פלט המהבהבת את מצב הקלט; כפתור שמשנה את מצב הקלט; וכפתור שניתן לכוונן. לאחר מכן ה- Arduino יכול להוציא את הערכים למחשב מחובר.

שלב 4: בקר בניין:

בקר בניין
בקר בניין

רשימת החומרים אינה מכילה את החוט, צינורות כיווץ החום וחומרים מתכלים אחרים שתזדקק להם. עבור מעגל 5V וקרקע לנוריות אני מציע שתשתמש בחוט תקוע בגודל 26 או כבד יותר. השתמשנו ב 26 מד. כמו כן בידוד סיליקון על החוט עדיף מכיוון שהוא אינו נמס ליד המקום בו אתה הלחמה והוא גמיש יותר. מצאתי שהשארת קצת יותר מקום בין הרכיבים הפכה את הייצור לקל בהרבה. לדוגמה, הבקר בתמונה בשלב מס '6 המרווח בין בית שקע החשמל (שחור) ובלוק הטרמינל (כחול) הוא כסנטימטר אחד. כיסוי ההרכבה שלנו הוא שתי שכבות של פורניר עץ.

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

שלב 5:

תמונה
תמונה
תמונה
תמונה
תמונה
תמונה

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

שלב 6: בניית מקלט אופציונלי:

מקלט אופציונלי לבניין
מקלט אופציונלי לבניין
מקלט אופציונלי לבניין
מקלט אופציונלי לבניין
מקלט אופציונלי לבניין
מקלט אופציונלי לבניין

בנינו "מקלט" קטן של מעגל קלט, כך שנוכל להתאים בקלות קטעי תאורה מבלי לשנות ולהעלות את התוכנית לכל התאמה. יש לו: נורית פלט המהבהבת את מצב הקלט; כפתור שמשנה את מצב הקלט; וכפתור שניתן לכוונן. לאחר מכן ה- Arduino יכול להוציא את הערכים למחשב מחובר.

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

שלב 7: סקירת בקר תכנות:

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

Adafruit ו- FastLED פרסמו שתי ספריות נהדרות שיאפשרו ל- Arduinos לשלוט בסוגים רבים של נוריות כתובות. אנו משתמשים בשתי הספריות הללו בפרויקטים שונים. אנו מציעים לך לקרוא גם חלק מחומרי המשאבים בספריות אלה ולחקור כמה מתוכניות הדוגמה שלהן.

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

שלב 8: דוגמת בקר תכנות אדוות:

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

הפונקציה "changeBright ()" תגדיל את בהירותו של פיר אור בזמן "ההתקפה", תשמור אותו קבוע למשך הזמן "תתקיים", ואז תתפוגג עם הזמן "הריקבון".

הפונקציה "אדווה ()" נקראת לכל אחד משלושת פירים האור במהלך כל תוספת זמן. הבהירות הזמנית מחושבת על סמך דהייה מהבהירות המרבית בירידה קבועה לאורך זמן. לאחר מכן עבור כל נורית LED משמאל למיקום ההתחלה מחושבת הבהירות. אנו יכולים לדמיין אדוור של אור הנע שמאלה. כל נורית LED משמאל נמצאת בנקודה מוקדמת יותר בעקומת הזמן של בהירות אדוות. כאשר לאדוזה זו יש אפס בהירות עבור כל הלדים הדגל הנעשה מוגדר ל 1. אם הנורית כבר בהירה יותר (נקבעת על ידי אחת מהאדוות האחרות) אנו משאירים את הערך ללא שינוי.

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

שלב 9: דוגמא לבקר תכנות Dawn to Dusk:

Image
Image

הפרויקט הבא, "Dawn to Dusk" מאת ג'ני הולט, הוא עוד יצירת אומנות בד הפעם עץ בעל עלים בצבע סתיו. התאורה היא סימולציה של היום כשהשחר מתחיל להאיר בצד שמאל ומתקדם עד אמצע היום הבהיר ואחריו צבעי שקיעה אדמדמים ומתקדמים אל הלילה. האתגר כאן הוא פישוט התיאור של שינוי הצבע והבהירות עם הזמן לאורך רצועה של 66 נוריות LED. האתגר השני הוא לגרום לשינוי האור בצורה חלקה. באמת נאבקנו בשינוי האור הבולט ברמות אור נמוכות. ניסיתי לקבל מעברי תאורה חלקים יותר באמצעות ספריית FastLED אך לא הצלחתי. תיאור התוכנית יהיה פחות מפורט. שוב השתמשנו בספריית NeoPixel של Adafruit.

הלכנו לכנס של הפעלת רצועות הלד שלנו בפינה השמאלית העליונה. זה הופך את מספור מיקום ה- LED למעט מביך ביצירה זו. מסגרת המסגרת כוללת 86 נוריות LED. שחר מאיר את הצד השמאלי שעובר מ- 62 ל- 85. ואז השמאלי העליון לימין התחתון הוא 0 עד 43.

תוכנית זו אינה כוללת את היכולת להשתמש במעגל הקלט "Tuner".

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

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

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

שלב 10: דוגמה לבקר תכנות יער גשם:

הפרויקט הבא שאתאר הוא "יער הגשם" מאת ג'ולי-אן גאספר. זוהי יצירת אמנות בד גדולה יותר עם הרבה עומק. כאן השתמשנו בקופסת צללים בעומק של כ -4.4 אינץ '. קונספט התאורה הוא רמות אור רקע עמומות יותר בתחתית כאשר אור מהבהב מדי פעם מעלים למעלה. הרעיון כאן דומה לאדוות אבל פנסי האור אינם זזים. ובניגוד לאדוות שבהם הבהירות משתנה בצורה חלקה, כאן בהירות ההבהוב צריכה להשתנות. יצרנו מערך של 40 בתים בשם flicker_b2. מצאנו שהאפקט החזותי בסדר אם נשתמש באותו דפוס לכל מיקומי ההבהובים. הקמנו 5 מיקומים מרצדים. כשבדקנו את האפקט החזותי גילינו שאחד ההבהובים צריך להיות רחב בהרבה מהאחרים. השתמשנו בפונקציה fill_gradient_RGB () כדי למתוח את ההבהוב החוצה על פני כ -20 נוריות LED. כל הבהוב הוא עצמאי ומתחיל באקראי. ניתן להגדיר את ההסתברות של כל הבהוב.

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

עבור יצירה זו השתמשנו בספריית FastLED. בתוכנית זו #define TUNING משמש לציון אם לוח הכוונון מחובר, הוא צריך להיות 0 כאשר לוח המקלט אינו מחובר לחשמל. אחרת הבקר רגיש לחשמל סטטי ופולטרג'יסטים. המהדר כולל רק את פלחי התוכנית שמשתמשים ב"טיונר "כאשר משתנה זה הוא 1.

שלב 11: דוגמה לבקר תכנות סערה:

פרויקט נוסף היה הדלקת תצלום בשם "סערה" מאת מייק בק. התמונה היא ענן סערה. אנו משתמשים בספריית FastLED ואיננו כוללים את יכולת הכוונון. תפיסת התאורה כאן היא מעט אור רקע עם הבזקי ברק המופיעים באופן אקראי בשלוש נקודות סביב הענן. הבזק בכל מיקום נגרם על ידי שלוש נוריות LED. המרווח בין נוריות LED אלה שונה לכל מקום. בהירות שלוש הנורות הללו מוגדרת על ידי שלושה מערכים של 30 בתים. רצף הבהירות בשלושת המערכים נותן וריאציה ותנועה לכאורה על פני שלושת הלדים. כיוון התנועה הנתפסת והבהירות הכוללת נבחר לכל מקום. משך ההבזק בכל מיקום מותאם לפי עיכוב הזמן בין עדכון ערכי הבהירות. יש עיכוב זמן אקראי בין 0.2 ל 10.4 שניות בין פגיעות ברק. איזה משלושת מיקומי ההתקפה הוא גם אקראי עם 19% סיכוי בראש הענן, 45% סיכוי מימין למטה ו -36% סיכוי בצד שמאל.

שלב 12: דוגמאות לבקר תכנות מקאו ועץ נורדי:

היצירות "מקאו" מאת דנה ניומן ו"עץ נורדי "מאת ג'ני הולט משתמשות בצבע תאורה כדי לשנות את הצבע הנתפס של היצירה. ובמקרה של ציור של דונה של מקו גדול מצב הרוח של הציפור משתנה משמח למאיים בהתאם לצבע האור המקיף את הציפור. שתי התוכניות האלה כמעט זהות. אנו משתמשים בספריית Adafruit NeoPixel ויכולת לוח הכוונון נמצאת בתוכניות אלה. תוכניות אלה מותאמות מהפונקציה theaterChaseRainbow () ב- Adafruit_NeoPixel/דוגמאות/Strandtest.ino (הורדה 29/7/2015)

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

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

שלב 13: דוגמאות בקר תכנות Copperhead:

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

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

צבע הרקע מוגדר ב -10 נקודות סביב המסגרת והפונקציה fill_gradient () משמשת למעבר חלק בין צבעים.

בתחילת מחזור צפייה הרקע מעומעם והצבע עובר לכחול באמצעות עקומת קוסינוס לאורך זמן והפונקציה setBrightness ().

לאחר עיכוב שלושה גלי אור הנעים מימין למעלה לשמאל התחתון. הגל הראשון הוא הבהיר ביותר כאשר הגלים הבאים הופכים עמומים יותר. הגל הראשון נע גם הוא לאט יותר.

שלב 14: דוגמאות לבקר תכנות דוגמאות שחורות:

Image
Image

"Black Doodle" מאת ז'אני הולט בוחנת השתקפויות מתוך ויניל שחור.

תוכנית זו משתמשת גם בספריית FastLED ויכולה לקבל קלט ממעגל הכוונון.

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

הרקע הוא קשת צבעים הפרושה סביב המסגרת. קשת רקע זו מסתובבת באיטיות והופכת את הכיוון באופן אקראי.

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

שלב 15: תכנות פונקציות הכוונון:

בתוכנית RainForest אנו יכולים להפעיל את פונקציית הכוונון על ידי "#define TUNING 1" ולחבר את לוח קלט הכוונון באמצעות כבל הסרט שלו. עלינו גם להגדיר פרמטרים שעבורם יופעל ה- LED על ידי הכוונון. לדוגמה, בואו להתאים נוריות LED במיקומים 61 עד 73. אנו משתמשים ב- #define START_TUNE 61 ו- #define END_TUNE 73. הגדרנו פלחים אחרים של המחרוזת לצבעי רקע בהגדרות () תוך שימוש בשיחות fill_gradient_RGB (). שאר הסקיצה שלך לא אמורה להגדיר את נוריות ה- LED בטווח הכוונון, אחרת לא תוכל לראות את ההתאמות שלך. כעת הפעל את הסקיצה והצג את הצג הטורי. לחלק הכוונון של התוכנית יש 4 מצבים [גוון, רוויה, ערך ובהירות}. גוון הוא גלגל הצבעים עם 0 = אדום ו -255 מעבר לכחול עד כמעט אדום. יש להדפיס את המצב הנוכחי על הצג הסדרתי ונורית החיווי בלוח הכוונון תהבהב כדי לציין את המצב (מצמוץ אחד הוא גוון, שני מהבהבים הם רוויה וכן הלאה). ערך הוא עוצמת האור בעוד שהבהירות היא גורם הפחתה המתיישם על כל ערכי עוצמת הלדים. אז עבור בהירות מלאה הגדר Value = 255 ו- Brightness = 255. לחץ על הלחצן כדי לשנות את המצב. כאשר אתה במצב שאתה רוצה לכוונן סובב את הכפתור. התוכנית מתעלמת מהכפתור עד שהיא מסתובבת יותר מה- INHIBIT_LEVEL.זה ימנע משינוי ערכים במצבים אחרים כאשר אתה עובר דרכם. לדוגמה, אתה יכול להתחיל עם גוון ולקבל את הצבע שאתה רוצה, ואז לעבור לערך ולהתאים אותו כדי למצוא את הבהירות שאתה רוצה.

המערכונים של Macaw ו- Nordic_Tree כוללים כוונון אך הפונקציות מעט שונות. במערכונים אלה ישנם רק שני מצבים. אחד לבהירות ואחד למיקום גלגל הצבעים. עם דוגמאות אלה אתה יכול לראות כיצד להתאים אישית את פונקציות הכוונון כך שיעבוד עם כמעט כל פרמטר בבקרת התאורה שלך.

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

מקווה שתמצא את ההדרכה הזו מועילה בהפעלת הפרויקט שלך.

שלב 16: שאר הסיפור:

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

מוּמלָץ: