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

ממשק דיגיטלי מוזיקלי: 6 שלבים (עם תמונות)
ממשק דיגיטלי מוזיקלי: 6 שלבים (עם תמונות)

וִידֵאוֹ: ממשק דיגיטלי מוזיקלי: 6 שלבים (עם תמונות)

וִידֵאוֹ: ממשק דיגיטלי מוזיקלי: 6 שלבים (עם תמונות)
וִידֵאוֹ: 🎯שליטה בקנבה- תשובות ל-6 השאלות הנפוצות ביותר בקנבה🎯 2024, נוֹבֶמבֶּר
Anonim
ממשק דיגיטלי מוזיקלי
ממשק דיגיטלי מוזיקלי

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

במדריך זה, אלמד אותך כיצד להשתמש בתקשורת טורית לשליחת/קבלת מידע על חיישנים (אנלוגי ודיגיטלי) מ- Arduino ל- Raspberry pi לכיוון תוכנות טהרות לתוכנת צליל.

החומרים הנדרשים הם:

x1 פטל PI3

x1 Boîter de protection PI3

x1 מיקרו SD (32G)

x1 ארדואינו UNO

x1 חיישן IR Sharp GP2Y0E02B

x1 לחם

מד בדיקת לוחית x1 (0.2)

התנגדות x28 10MΩ

x2 התנגדות 1.8kΩ

x1 התנגדות 10kΩ

x20 עקבות מסוף זכר/נקבה

x1 נושא הלחמה

x1 סליל פח (1 מטר)

x1 מלחם

רצועות גמישות x25 זכר/זכר

שלב 1: חיישנים

חיישנים
חיישנים
חיישנים
חיישנים
חיישנים
חיישנים

השתמשתי ב -4 פיזואלקטרים שמגיעים מרחוק Harmonix XBOX 360 של "גיבור הגיטרה". השתמשתי בלחצן הפעלה/כיבוי כיוון שגיר מתג הקנים של השלט של גיבור הדוושה של גיטרת הרגל היה בחוץ.

השתמשתי בחיישן IR Sharp GP2Y0E02B. עבור כל החיישנים האלה, עשיתי הרכבה נפתחת להפעלה יעילה …

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

שלב 2: מונטאז 'משוך למעלה

מונטאז 'משוך למעלה
מונטאז 'משוך למעלה
מונטאז 'משוך למעלה
מונטאז 'משוך למעלה
מונטאז 'משוך למעלה
מונטאז 'משוך למעלה
מונטאז 'משוך למעלה
מונטאז 'משוך למעלה

לאחר בדיקת פיזואלקטרי עם מחולל מתח, תיקנתי את ערך ההתנגדות ב -7 MΩ.

משיכת ההתנגדות לכפתורים הייתה 10 kΩ.

עבור חיישן IR השתמשתי בשתי התנגדות 1, 8kΩ בין מתח אספקה בהתאמה ל- SDA (נתונים) ו- SCL (שעון).

היזהר כי ערכי ההתנגדות הללו מיועדים ל- RTX Arduino UNO; משהו לדעת על כניסת עכבה של Arduino: 10MΩ.

אתה יכול לראות את המונטאז 'הנפתח בתמונה האחרונה של שלב זה; תיקנתי רצועות פיזואלקטריות ב 0 1 2 3 פינים ב- UNO, רצועת כפתורים ב 2 פינים דיגיטליים אך מתקשרת את הערך על 6 פינים ברצועת חיישן UNO ו- IR ב -4 5 פינים ב- UNO, כל הכניסות האנלוגיות של ה- Arduino Uno.

שלב 3: קוד Arduino

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

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

שלב 4: שני תקשורת סדרתית של ארדואינו פטל

שני תקשורת סדרתית של ארדואינו פטל
שני תקשורת סדרתית של ארדואינו פטל
שני תקשורת סדרתית של ארדואינו פטל
שני תקשורת סדרתית של ארדואינו פטל

כן: D

כפי שניתן לראות בתמונה הראשונה, הקישור ארדואינו-פטל הוא תקע USB.

מצאתי דרך לקבל מידע של חיישנים ישירות על ידי PureData Extended המותקן ב- Raspberry PI. מדוע מורחבת PureData? מכיוון שגרסת הוניל אינה משתמשת באותה ספרייה מאשר יישום בסביבת Raspbian.

אז השק את StandardFirmata בארדואינו ג'נווינו כדי לתקן I/O ולערך וריאציות בדרך הנכונה!

כדי לקבל את המידע של ערך ב- Raspberry PI, קיימים 2 פרוטוקולים: Firmata ו- Msg.

אני בוחר ב- Firmata מסיבה אחת, היה פשוט יותר לקבל מידע ב- PureData באמצעות תיקון Pduino, סביבה אחת.

אני מזמין אותך לגלות את מס 'אם אתה משתמש בפרוטוקול OSC.

שלב 5: תיקון PureData התקבל

תיקון PureData התקבל
תיקון PureData התקבל

ואכן, לאחר שבועות של קידוד ב- Genuino, הצלחתי לקבל את כל המידע של החיישן שלי בעמוד אחד, זה איפשר לראות וריאציות בזמן אמת הודות ל- Pduino, תיקון ב- Puredata, תוספת מיומנויות.

משלב זה, איננו נוגעים יותר בקוד ארדואינו. המידע של Value קריא.

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

שלב 6: פיתוח PureData

פיתוח PureData
פיתוח PureData
פיתוח PureData
פיתוח PureData
פיתוח PureData
פיתוח PureData
פיתוח PureData
פיתוח PureData

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

חלק מהתיקונים של PureData יהיו זמינים ב- GitHub.

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

מוּמלָץ: