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

Plug & Play USB MIDI CONTROLLER USB (שדרוג NEOPIXEL RING): 12 שלבים
Plug & Play USB MIDI CONTROLLER USB (שדרוג NEOPIXEL RING): 12 שלבים

וִידֵאוֹ: Plug & Play USB MIDI CONTROLLER USB (שדרוג NEOPIXEL RING): 12 שלבים

וִידֵאוֹ: Plug & Play USB MIDI CONTROLLER USB (שדרוג NEOPIXEL RING): 12 שלבים
וִידֵאוֹ: Park's 8P (8 Potentiometers) / Midi controller dial / knob / USB / customizable / plug and play 2024, נוֹבֶמבֶּר
Anonim
Plug & Play USB MIDI CONTROLLER USB (שדרוג NEOPIXEL RING)
Plug & Play USB MIDI CONTROLLER USB (שדרוג NEOPIXEL RING)
Plug & Play USB MIDI CONTROLLER USB (שדרוג NEOPIXEL RING)
Plug & Play USB MIDI CONTROLLER USB (שדרוג NEOPIXEL RING)
Plug & Play USB MIDI CONTROLLER USB (שדרוג NEOPIXEL RING)
Plug & Play USB MIDI CONTROLLER USB (שדרוג NEOPIXEL RING)

MAO נלהב ומוזיקה אלקטרונית אבל גם לראות שאפשר ליצור ממשק Midi בהתאמה אישית שהכנתי שלי 6 פוטנציומטרים ו -12 כפתורים (הפעלה / כיבוי) אבל כדי להקשות על המקום כי כבר הייתי רוצה להוסיף אינדיקציה חזותית לכל הלחצן סיבוב.

שלב 1: פוטנציומטרים ולחצנים

פוטנציומטרים ולחצנים
פוטנציומטרים ולחצנים
פוטנציומטרים ולחצנים
פוטנציומטרים ולחצנים

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

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

הערך ייבדק על ידי arduino ויש לשלוח אותו למחשב ב- Midi חייב להיות נקי (הנתונים המספריים שלו)

ניתן להוציא את הווריאציה הקטנה מנתונים שיכללו בתוכנית הכפתורים פועלים כמו מתג הפעלה / כיבוי

שלב 2: טבעות NEOPIXEL עם ארדואינו

טבעות נופיקסל עם ארדואינו
טבעות נופיקסל עם ארדואינו

כדי להשתמש ב- Neopixel RIng עם arduino עליך להתקין את ספריית NEOPIXEL

#include // ספריית Neopixel

#define PINX X // DATA IN; איזו סיכה בלוח הבקרה מחוברת ל- NeoPixels?

#define NUMPIXELS XX // כמה NeoPixels מחוברים ללוח?

Adafruit_NeoPixel פיקסלים = Adafruit_NeoPixel (NUMPIXELSX, PINX, NEO_GRB + NEO_KHZ800); // ספריית NeoPixel

pixels.setPixelColor (i, 0, 0, 0); // קוד צבע RGB בעשרוני

pixels.setBrightness (בהירות) // הגדרת בהירות

pixels.show () // זה שולח את צבע הפיקסל המעודכן לחומרה.

למידע על neopixel עם 16 פיקסלים הפועלים נגד כיוון השעון

לגבי צריכת החשמל אנחנו

(2x12 + 2x 16 + 2x24) x 3 (לכל רכיב יש 3 נוריות RGB) = 312 נוריות.

כל לד צורך 20ma, סה כ 6, 4A אבל אנחנו אף פעם לא משתמשים בכל הפיקסלים דולקים ושנית אף פעם לא בהירות מרבית.

כדי לצרוך פחות חשמל אני מגלה טיפ של התמדה retinienne

בכל מקרה פלט 5V לתת על ידי arduino זה לא מספיק שזה עובד כראוי

שלב 3: תקשורת MIDI עם ה- Arduino

תקשורת MIDI עם הארדואינו
תקשורת MIDI עם הארדואינו

ראשית העתק ספריית midi Midi.h ב- C: / Program Files (x86) Arduino / libraries"

sourceforge.net/projects/arduinomidilib/

על מנת להשתמש בארדואינו כמו תקע ותקע ממשק ויכול להעביר מידע מידי ב- USB עליך להבהב ארדואינו עם קושחה מותאמת אישית

ראה שם לטיפול זה:

הבעיה היחידה היא; כדי לשנות את הקוד אם יש שגיאה עליך לשים את הקושחה המותאמת אישית ב- arduino כדי להפעיל מחדש את התקשורת הטורית

שלב 4: חיווט

תִיוּל
תִיוּל
תִיוּל
תִיוּל
תִיוּל
תִיוּל

הסיבוב מחובר על קלט אנלוגי

המתג GND, Led GND ו- Neopixel DATA IN בכניסה דיגיטלית

www.sparkfun.com/products/9277

LED המשמשים הם צבע מונו בחר באותו סיכת צבע עבור led על מחשב PCB

שלב 5: התוכנית

התכנית
התכנית

מיקרו -בקר פירושו תכנות

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

התוכנית מתחלקת בכמה חלקים בלולאה אחת

כל חלק הופך לתוכנית משנה

הגדר את סיכת ה- DATA של המתג עם התאמת סיכות נתוני ה- LED על לוח ה- PCB

affiche (); // קרא ערך פוטנציומטר ושלח נתוני מידי;

// שליטה ב- NeoPixel עם קריאת ערך הפוטנציומטר והגדרת טבעת וצבע אחידות 1 (); ring2 (); ring3 (); ring4 (); ring5 (); ring6 (); לַחְצָן(); // בדוק את מצב הלחצן, שלח נתוני midi ושלט ב- LED

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

שלב 6: חלק להדפסה תלת מימדית

חלק להדפסה תלת מימדית
חלק להדפסה תלת מימדית
חלק להדפסה תלת מימדית
חלק להדפסה תלת מימדית
חלק להדפסה תלת מימדית
חלק להדפסה תלת מימדית

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

ה- Neopixel מדביקים עליו עם אקדח דבק

תמיכה זו נמצאת ברמה השנייה מכיוון שסיבוב לא יכול להכניס טבעת Neopixel 12

שלב 7: לוח אלומיניום

לוח אלומיניום
לוח אלומיניום
לוח אלומיניום
לוח אלומיניום
לוח אלומיניום
לוח אלומיניום

שלב 8: קופסת פרספקס 8 מ"מ

קופסא פרספקס 8 מ
קופסא פרספקס 8 מ
קופסא פרספקס 8 מ
קופסא פרספקס 8 מ
קופסא פרספקס 8 מ
קופסא פרספקס 8 מ
קופסא פרספקס 8 מ
קופסא פרספקס 8 מ

כדי לקדוח ולהקיש באמצע הנתח השתמשתי בפרספקס בעובי 8 מ מ

חותכים 5 חתיכת פרספקס השתמשתי במסור עגול;

1 x 210 מ"מ / 270 מ"מ

2 x 210 מ"מ / 60 מ"מ

2 x 254 מ"מ / 60 מ"מ

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

אנחנו עושים את אותו הדבר כדי לשים את המרווח

קידוח 2, 5 מ מ

הקשה על 3 מ מ

שלב 9: הרכבה

הַרכָּבָה
הַרכָּבָה
הַרכָּבָה
הַרכָּבָה
הַרכָּבָה
הַרכָּבָה
הַרכָּבָה
הַרכָּבָה

בעזרת מרווח ובורג 3 מ מ חיברנו את הכל יחד

35 מ"מ מרווח לתמיכת NEOPIXEL, מרווח 50 מ"מ עבור PCB Sparkfun ו -5 מ"מ עבור Arduino

שלב 10: סופי (בדיקת וידאו)

סופי (בדיקת וידאו)
סופי (בדיקת וידאו)
סופי (בדיקת וידאו)
סופי (בדיקת וידאו)

www.youtube.com/embed/c_BEFl-kEec

שלב 11: עגלה

עֲגָלָה
עֲגָלָה

6 x פוטנציומטרים ליניאריים 10KOhm 0.25w

12 x נגד 220Ohm 0.25w

12 x נגד 10Kohm 0.25W

12 x תקן דיודה על מכשיר המפיק 1N4148TA 100V 200MA

6 x נגד 470Ohm

1 x קבל 1000uF

1 x ARDUINO 2650 R3

3 x פריצת כפתור כפתור כרית 2X2

3 x כפתור כרית YOP BEZEL 2X2

2 x ADAFRUIT NEOPIXEL RGB 12 RING LED

2 x ADAFRUIT NEOPIXEL RGB 16 טבעת LED

2 x ADAFRUIT NEOPIXEL RGB 24 RING LED

12 x מרווח משושה M3 X 50MM

3 x E מרווח משושה M3 X 35MM

1 x מתאם מגזר 5V 4A

1 x USB A זכר ל- B זכר 20 ס מ

1 x מתאם USB 2.0 TYPE B FEMELLE ל- USB 2.0 TYPE A

1 x ממרכיבי BASCULE TRU

1 X חיבור נקבה אנכית מתח נמוך 5 מ"מ 2.2 מ"מ

1 x צלחת של קרציות PLEXIGALS 8MM

מוּמלָץ: