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

מעיל Light Show המגיב למוסיקה: 7 שלבים (עם תמונות)
מעיל Light Show המגיב למוסיקה: 7 שלבים (עם תמונות)

וִידֵאוֹ: מעיל Light Show המגיב למוסיקה: 7 שלבים (עם תמונות)

וִידֵאוֹ: מעיל Light Show המגיב למוסיקה: 7 שלבים (עם תמונות)
וִידֵאוֹ: Curious Beginnings | Critical Role: THE MIGHTY NEIN | Episode 1 2024, יולי
Anonim
מעיל Light Show המגיב למוסיקה
מעיל Light Show המגיב למוסיקה

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

איך זה יעבוד

מכשיר זה יורכב משני מעגלים נפרדים. האחד יתבסס על מגה Arduino המחובר ישירות למחשב. המעגל השני יתבסס סביב LilyPad Arduino ויכלול לחלוטין בתוך המעיל ויופעל באמצעות סוללת 9V. שני המעגלים הללו יתקשרו זה עם זה באופן אלחוטי באמצעות מודולי XBee. אותות שמע יתקבלו על ידי המחשבים המובנים במיקרופון וינותחו ב- Pure Data כדי להשיג נתוני משרעת ותדרים. מידע זה יועבר ל- Arduino Mega באמצעות מעגל קלט MIDI ולאחר מכן יועבר ל- LilyPad באמצעות ה- XBees. לאחר מכן ה- LilyPad יקבע כיצד יגיבו הנורות על המעיל.

מה שאתה תצטרך

עבור מעגל המגה

  • ארדואינו מגה 2560
  • XBee Explorer מוסדר
  • אנטנת עקבות XBee 1mW - סדרה 1
  • מגן אב טיפוס למגה
  • USB מסוג A עד B
  • כבל USB ל- MIDI
  • שקע MIDI
  • 1 x 220Ω נגד
  • 1 x 270Ω נגד
  • 1 x 1N4148 דיודה
  • 1 x 6N138 אופוטוקולר

עבור מעגל LilyPad

  • לוח ראשי של LilyPad Arduino 328
  • לוח פריצת LilyPad XBee
  • אנטנת עקבות XBee 1mW - סדרה 1
  • לוח פריצה בסיסי של LilyPad FTDI
  • 72 x נוריות LilyPad (מגוון הצבעים כולל לבן, כחול, אדום, צהוב, ירוק, ורוד וסגול)
  • מתג שקופיות LilyPad
  • כבל USB 2.0 A-Male ל- Mini-B
  • סוללה 9V
  • קליפ לסוללה 9V

אַחֵר

  • ז'ָקֵט
  • מחשב עם Pure Data וה- Arduino IDE מותקן
  • חוט ציוד
  • ציוד הלחמה
  • מספרי תיל
  • חשפניות חוטים
  • מחט עם עין גדולה
  • פְּתִיל
  • חוט מוליך
  • מספריים
  • מדידת קלטת
  • דבק בד או לכה של ציפורניים שקופות
  • גיר או אייליינר לבן
  • בד לטנה או חולצת טריקו ישנה
  • סקוטש
  • תרגיל (אולי)
  • LED רגיל (לבדיקה)
  • לוח לחם (לבדיקה)
  • נגד נוסף של 220Ω (לבדיקה)
  • מולטימטר (לבדיקה)

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

הערה מהירה - לוחות LilyPad מיועדים לתפור ישירות לטקסטיל ולכן הלחמה של קליפ סוללה 9V לאחד עלולה לגרום לבעיות. החיבור יכול להיות עדין וניתק בקלות. אתה יכול לקבל לוחות LilyPad שתוכננו במיוחד עבור סוללות AAA או LiPo שתוכל להחליט שאתה מעדיף להשתמש בהם. עם זאת, עדיין בחרתי לרדת במסלול 9V מכיוון שחיי הסוללה שלהם גדולים יותר מ- AAA ולאוניברסיטה שלי יש מגבלות על השימוש בסוללות LiPo.

שלב 1: יצירת מעגל קלט MIDI

יצירת מעגל קלט MIDI
יצירת מעגל קלט MIDI
יצירת מעגל קלט MIDI
יצירת מעגל קלט MIDI
יצירת מעגל קלט MIDI
יצירת מעגל קלט MIDI

קודם כל, בואו ניקח בחשבון את מעגל קלט MIDI. יהיה צורך לבנות זאת על לוח האב טיפוס שישתלב במגה Arduino. זה ישמש לשליחת הודעות MIDI מהתיקון Pure Data למגה באמצעות סיכת ה- 'COMMUNICATION RX0' שלו. ראה לעיל תרשים מעגלים ותמונה. בהתאם ללוח האב טיפוס שלך, הפריסה שלך עשויה להיות מעט שונה אך בחרתי למקם את שקע ה- MIDI בפינה השמאלית התחתונה. ייתכן שיהיה צורך להשתמש במקדח כאן כדי להפוך את החורים במגן גדולים יותר על מנת להתאים לשקע. החוטים האדומים בתמונה מחוברים ל- 5V, החום מחובר לקרקע, החוט השחור מחובר לסיכה 3 ב- 6N138, החוט הכחול מחובר לסיכה 2 ב- 6N138 והחוטים הצהובים מחוברים ל- RX0 פִּין. נותר מקום בצד ימין של לוח האב טיפוס כדי לאפשר מקום ל- XBee מאוחר יותר. סביר להניח שיהיה צורך לבצע הפסקות במסילות שעל הלוח. בדוגמה זו, היה עליהם לייצר אותם בין הסיכות ב- 6N138.

בדיקת מעגל קלט MIDI

כדי לבדוק את המעגל, העלה את הקוד למטה ל- Arduino Mega באמצעות כבל USB מסוג A עד B. וודא שהמגן אינו מוכנס כאשר אתה עושה זאת מכיוון שלא ניתן להעלות את הקוד אם משהו מחובר לסיכות RX או TX. כמו כן, הקוד כולל את ספריית MIDI.h שייתכן שיהיה עליך להוריד, הזמינה בקישור למטה.

MIDI.h

לאחר מכן הכנס את המגן למגה וחבר אותו ליציאת USB אחרת במחשב שלך באמצעות כבל MIDI ל- USB. סוף ה- MIDI בו תצטרך להשתמש יסומן כ'חוצה '. צור מעגל פשוט על לוח חיבור לוח 2 ללוח 220Ω ולאחר מכן חבר אותו לאנודה של נורית LED רגילה. חבר את קתודת הנוריות לקרקע.

לאחר מכן, צור תיקון פשוט של Pure Data עם הודעה [60 100] והודעה [0 0] המחוברים לאובייקט הערה באמצעות הכניסה השמאלית שלו. ודא שתיקון זה מחובר למעגל קלט MIDI על ידי פתיחת הגדרות MIDI ושינוי התקן הפלט. אם זה אינו זמין וודא שחיברת את מעגל ה- MIDI למחשב שלך לפני שפתחת את Pure Data. כעת, אם המעגל שלך תקין, נורית ה- LED אמורה להידלק בעת לחיצה על ההודעה [60 100] והיא אמורה להיכבה בעת לחיצה על ההודעה [0 0].

שלב 2: עיצוב מטריצת ה- LED

עיצוב מטריקס LED
עיצוב מטריקס LED
עיצוב מטריקס LED
עיצוב מטריקס LED
עיצוב מטריקס LED
עיצוב מטריקס LED

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

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

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

באמצעות טכניקה זו מספר נוריות הניתנות לשליטה הוא (n/2) x (n- (n/2)) כאשר n הוא מספר סיכות הבקרה הזמינות. לכן, עם 17 סיכות זמינות צריך להיות אפשרי לשלוט על 72 נוריות LED במטריצה 9x8.

ניתן לראות תרשים לפריסת נוריות LED במטריצת 9x8 למעלה, כולל הצעות לסיכות שאליהן צריך לחבר כל שורה ועמודה. חשוב לציין כי אסור לגעת בשורות והעמודות. כמו כן, לא נדרשים נגדים בשל העובדה שלכל נורית LED יש משלה מובנה עם התנגדות של 100Ω.

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

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

שלב 3: תפירת מטריצת ה- LED

תפירת ה- LED Matrix
תפירת ה- LED Matrix
תפירת ה- LED Matrix
תפירת ה- LED Matrix
תפירת ה- LED Matrix
תפירת ה- LED Matrix

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

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

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

ברגע שאתה מרוצה התחל לתפור את הלדים לדור בקצה השמאלי של המעיל. ודא שכל אנודה מחוברת לשורה משלה וכל קתודה מחוברת לעמודה משמאל. לאחר מכן, הנח את LilyPad Arduino במקומו באמצעות דבק בד איפשהו מתחת לעמודה זו, וודא שהסיכות ללוח הפריצה FTDI פונות כלפי מטה. תפרו את סיכה 11 של ה- LilyPad לשורה 1, סיכה 12 לשורה 2 וכן הלאה עד שהסיכה A5 נתפרת לשורה 9. לאחר מכן, תפרו את סיכה 10 לעמודה הימנית ביותר. כדי לבדוק את העמודה הראשונה הזו אתה יכול להשתמש בקוד שלהלן. העלה את הקוד והפעל את ה- LilyPad על ידי חיבורו למחשב שלך באמצעות לוח הפריצה FTDI וכבל USB 2.0 A-Male ל- Mini-B.

אם היציאה הנכונה אינה זמינה בעת חיבור ה- LilyPad, ייתכן שיהיה עליך להתקין מנהל התקן FTDI הזמין מהקישור שלהלן.

התקנת מנהל התקן FTDI

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

שלב 4: הוספת מתג

הוספת מתג
הוספת מתג

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

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

שלב 5: הפיכת המכשיר אלחוטי

הפיכת המכשיר אלחוטי
הפיכת המכשיר אלחוטי
הפיכת המכשיר אלחוטי
הפיכת המכשיר אלחוטי
הפיכת המכשיר אלחוטי
הפיכת המכשיר אלחוטי

הכנת ה- LilyPad XBee ו- XBee Explorer

הכן את LilyPad XBee לתצורה על ידי הלחמה בכותרת זכר זווית בעלת 6 פינים. זה יאפשר מאוחר יותר לחבר אותו למחשב באמצעות לוח הפריצה הבסיסי של LilyPad FTDI וכבל ה- USB Mini. כמו כן, הלחם את קליפ הסוללה 9V ל- LilyPad XBee כשהחוט האדום עובר לסיכה "+" והחוט השחור עובר לפין "-".

חבר את לוח האקספלורר למגן האב -טיפוס של ה- Arduino Mega. 5V ו- Ground על לוח ה- Explorer יצטרכו חיבור ל- 5V ו- Ground on the Mega, סיכת הפלט באקספלורר תזדקק לחיבור ל- RX1 במגה והכניסה ב- Explorer תצטרך חיבור ל- TX1 במגה.

הגדרת ה- XBees

לאחר מכן יש להגדיר את XBees. קודם כל, יהיה עליך להתקין את תוכנת CoolTerm בחינם הזמינה מהקישור למטה.

תוכנת CoolTerm

הקפד להבחין בין שני XBees בדרך כלשהי מכיוון שחשוב שלא תבלבל אותם.

ראשית, הגדר את ה- XBee עבור המחשב. הכנס אותו ללוח הפריצה של LilyPad XBee וחבר אותו למחשב באמצעות לוח הפריצה הבסיסי של FTDI וכבל USB Mini. פתח את CoolTerm ובאפשרויות בחר את היציאה הטורית. אם אינך יכול לראות אותו, נסה ללחוץ על 'סרוק מחדש יציאות סידריות'. לאחר מכן, ודא שקצב השידור מוגדר ל- 9600, הפעל הד מקומי והגדר את אמולציית המפתחות ל- CR. כעת ניתן לחבר את CoolTerm ל- XBee.

הקלד "+++" בחלון הראשי כדי להכניס את XBee למצב פקודה. אין ללחוץ על החזרה. זה יאפשר להגדיר אותו באמצעות פקודות AT. אם זה הצליח, לאחר הפסקה קצרה מאוד אמורה להיות הודעת "אישור". אם יש עיכוב של יותר מ -30 שניות לפני השורה הבאה, מצב הפקודה ייצא ויש לחזור על זה. יש להזין פקודות AT רבות כדי להגדיר את מזהה PAN, מזהה שלי, מזהה יעד ולשמור את השינויים. יש לחזור על ההחזרה לאחר כל אחת מהפקודות הללו וניתן לראות אותן בטבלה למעלה. לאחר שהושלם הדבר עבור XBee המחשב, יש לנתק אותו ולבצע אותו תהליך עבור ה- XBee של המעיל.

אתה יכול לבדוק את הגדרות XBee החדשות על ידי הקלדת כל פקודת AT ללא הערך בסוף. לדוגמה, אם אתה מקליד את "ATID" ולחץ על החזרה, "1234" צריך להיות מהדהד בחזרה.

בדיקת ה- XBees

בשלב זה, תפר את ה- LilyPad XBee על המעיל שליד LilyPad Arduino. יש לבצע את החיבורים הבאים באמצעות חוט מוליך:

  • 3.3V ב- LilyPad XBee ל- '+' ב- LilyPad
  • קרקע על ה- LilyPad XBee אל הקרקע על ה- LilyPad
  • RX ב- LilyPad XBee ל- TX ב- LilyPad
  • TX ב- LilyPad XBee ל- RX ב- LilyPad

כעת ניתן לבדוק את המכשיר כדי לוודא שה- XBees עובדים כראוי. יש להעלות את הקוד להלן בשם 'Wireless_Test_Mega' ל- Arduino Mega ומטרתו העיקרית היא לקבל הודעות MIDI מהתיקון הפשוט של Pure Data שנוצר קודם לכן, ולהעביר ערכים שונים באמצעות ה- XBee. אם תתקבל פתק MIDI בעל גובה של 60, ההודעה 'a' תועבר. לחלופין, אם תתקבל הודעת הערה, 'b' יועבר.

בנוסף לכך, יש להעלות את הקוד שלהלן בשם 'Wireless_Test_LilyPad' ל- LilyPad. זה מקבל את ההודעות מהמגה באמצעות ה- XBees ושולט בהתאם לנורית הימנית התחתונה. אם מתקבלת ההודעה 'a', כלומר, הערה MIDI עם גובה של 60 התקבלה במגה, הנורית תידלק. מצד שני, אם לא מתקבל 'א', הנורית תיכבה.

לאחר העלאת הקוד לשני הלוחות, וודא שהמגן הוכנס מחדש למגה וכי הוא מחובר למחשב באמצעות שני הכבלים. הכנס את מחשב XBee ללוח Explorer. לאחר מכן, ודא כי לוח ה- FTDI Breakout מנותק מהמעיל והכנס את מעיל ה- XBee לתוך ה- LilyPad XBee. חבר את סוללת 9V ונסה ללחוץ על ההודעות השונות ב- Pure Data. נורית הלחצן הימנית התחתונה על המעיל צריכה להידלק ולכבות.

שלב 6: נגיעות אחרונות

נגיעות אחרונות
נגיעות אחרונות
נגיעות אחרונות
נגיעות אחרונות
נגיעות אחרונות
נגיעות אחרונות

הקוד ותיקון הנתונים הטהורים

כאשר אתה שמח שהז'קט פועל באופן אלחוטי, העלה את הסקיצה של 'MegaCode' למטה למגרש Arduino ולסקיצה 'LilyPadCode' ל- LilyPad. פתח את תיקון ה- Pure Data וודא ש- DSP מופעל וקלט השמע מוגדר למיקרופון המובנה של מחשביך. נסה לנגן מוזיקה ולהזיז את המתג. ייתכן שיהיה עליך להתאים מעט את הספים ב- Pure Data בהתאם לכמה או מעט נוריות ה- LED מגיבות לשמע.

הוספת בטנה חדשה

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

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

שלב 7: סיימת

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

מוּמלָץ: