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

42 RGB LED Pixel Art Art: 5 שלבים
42 RGB LED Pixel Art Art: 5 שלבים

וִידֵאוֹ: 42 RGB LED Pixel Art Art: 5 שלבים

וִידֵאוֹ: 42 RGB LED Pixel Art Art: 5 שלבים
וִידֵאוֹ: Create a Double Exposure in 74 Seconds with Photoshop 2024, נוֹבֶמבֶּר
Anonim
42 RGB LED פיקסל אמנות ציור
42 RGB LED פיקסל אמנות ציור

היי, אז עבור מטלה בבית הספר שנקראת "אם זה אז זה" הייתי צריך להכין // משהו // אינטראקטיבי בעזרת ערכת התחלה של Arduino Uno (וכל דבר אחר שמוכנים לקנות בעצמם). בהתחשב בעובדה שאני עושה לימודי אמנות/טכנולוגיה רציתי לעשות שילוב של שניהם (אמנות וטכנולוגיה). חשבתי שאעשה ציור המורכב מכמה נוריות RGB כפי שאני יכול להתאים על הארדואינו שלי וניתן לשחקן/לאמן לעבור ידנית בין נוריות ה- RGB ולבחור צבע. כך הם יכולים ליצור "פיקסל ארט" משלהם!

שלב 1: קצת מידע רקע ותיאוריה

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

אז קודם כל הדברים הראשונים. אנו רוצים כמה שיותר נוריות/נוריות RGB בארדואינו שלנו. ככל שתחבר יותר נוריות (RGB) כך תוכל להפוך את ה"ציור "שלך לפרטני יותר (10x10 פיקסלים נותנים לך יותר מקום לנענע מאשר 2x2 נכון). אני מניח שישנן דרכים רבות יותר להשיג הרבה נוריות (RGB) על 13 הסיכות הדיגיטליות שלך (דברים כמו רישום משמרות) אבל השתמשתי בשיטה שנקראת "Charlieplexing". אני אקשר למדריך שעזר לי להבין את הרעיון הזה (ברצינות הם מסבירים אותו ממש טוב), אבל אני אתן לך גם את הגרסה המהירה כאן. Charlieplexing הולך כדלקמן:

אתה שם נורית בין סיכה 1 לסיכה 2, אם אתה מגדיר את סיכה 1 ל- HIGH ו- 2 ל- LOW המעגל יפעל בצורה חלקה והנורית תידלק. יסודות. ובכן, עכשיו אתה מצרף עוד LED, אבל התהפך. הקצה הארוך נמצא על ה -2 והקצה הקצר הוא על סיכה 1. עכשיו אם אתה הופך את סיכה 2 ל- HIGH וסיכה 1 ל- LOW הנורית השנייה שלך תידלק והראשון שלך יישאר כבוי כי הזרימה תהיה שגויה. עכשיו אתה יכול לחבר 2 נוריות על 2 סיכות. אם נקבל את הסיכה השלישית בתערובת, תוכל לעשות את הטריק הזה בין 1 ל -2, 1 ו -3, לבין 2 ו -3. זה 6 נוריות LED. זה ממשיך, 5 סיכות יעניקו לנו (2 + 4 + 6 + 8) 20 נוריות LED. השימוש בכל 13 הסיכות הדיגיטליות נותן לנו 156 אפשרויות. זה 156 נוריות LED שאתה יכול להדליק ולכבות בנפרד.

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

(הסבר טוב ומפורט יותר, עם תמונות)

אוקיי אז, עם הרבה מאמץ בכל הנוגע לחיווט (אני אגע בזה מאוחר יותר), נוכל ליצור רשת למדי של נוריות LED, אבל אפשר להתמודד עם זה. נוריות נורא משעממות. איך אפשר ליצור תמונה עם 2 צבעים בלבד? אני מניח שאתה יכול, אבל זה הרבה יותר מגניב אם יש לך יותר צבעים לבחירה נכון? ימין. אז אל נוריות ה- RGB אנו פונים!

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

הלכתי על 42 נוריות RGB על 13 סיכות. זה 126 נוריות נוריות….. די במספר. תן לי לספר לך איך עשיתי את זה.

שלב 2: תכנון

תִכנוּן
תִכנוּן

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

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

שלב 3: הקוד

אוקיי, אז אם יש לך כבר רעיון כיצד לחבר 2 נוריות RGB כך על 2 סיכות: קדימה! נחמד לבדוק את הקוד, אבל אני מבטיח לך שהוא עובד! ניסיתי לעשות כמה שיותר קידוד "נקי" (אפשר גם לנהל את זה עם מתגים במתגים, אבל זו פשוט טרחה נוראית שיש לך לרשום את כל הקוד x42 שלך, זה גרם לי להבין שיש כנראה טוב יותר דֶרֶך).

מטרת הקוד היא הבאה. אתה מתחיל ב- LED1. לחצן 1 מאפשר לך לעבור ללור הבא, אך הנורית הקודמת שלך נשארת דולקת. כפתור 2 מאפשר לך לחזור ללור הקודם, כפתור 3 מאפשר לך לשנות את הצבע. נורית ה- LED הנוכחית מהבהבת כך שתוכל לראות איזו LED "נבחרה".

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

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

שלב 4: החלק הקשה ביותר

החלק הקשה ביותר
החלק הקשה ביותר
החלק הקשה ביותר
החלק הקשה ביותר

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

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

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

זה לקח לי 4 ימי עבודה שלמים, אבל עכשיו אפשר להדליק כל LED (מינוס 3-4 שפישלתי) בנפרד!

אז אתה רק צריך לחבר כמה כפתורים ולפרסטו! ציור פיקסל אמנות משלך!

הבחור הזה גם עשה דוגמה לחיווט, זה מאוד מועיל

שלב 5: גלידה. גלשן בהחלט

אם אתה מתנע (כמוני) והצלחת ליצור משהו אפילו דומה לקן החוטים הזה של החולדות והוא נדלק; לִשְׂמוֹחַ לְאֵיד. עשית ממש טוב!

אם יש לך שאלות/הערות פשוט השאר אותן למטה, אנסה לעזור אם אוכל!

מוּמלָץ: