תוכן עניינים:
- שלב 1: חומרים דרושים
- שלב 2: זמן בנייה
- שלב 3: מודול חיישן קול ונורית RGB
- שלב 4: קוד
- שלב 5: מחשבות אחרונות
וִידֵאוֹ: מודול מקשים לפסנתר עם LED RGB: 5 שלבים (עם תמונות)
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:15
הקדמה
שלום גבירותי ורבותי, ברוכים הבאים למדריך הראשון שלי! היום, אני אלמד אותך כיצד ליצור פסנתר כאשר הרכיבים העיקריים שלו הם מודול לוח מקשים וזמזם פיז'ו ואפשר לו לנגן DO-RE-MI וכן הלאה.
מודול הלוח המקשים שלרוב נועד, הוא להיות לוח מקשים בשילוב עם RFID ארדואינו ליצירת קופסה בטוחה לפריטים יקרי ערך. במקרה זה שיניתי את לוח המקשים, במקום להגן על משהו שאני מחליט להשתמש בו כדי לדבר על השמחה והמוזיקה הפשוטה.
רעיון רעיון
רעיון הרעיון ליצירה זו, מתפתח מזיכרון שמח פשוט בעת נגינת קסילופון כשהייתי צעיר יותר בשיעורי מוזיקה. כמות השמחה וההתרגשות שעברו בגופי היו בשיאם, כלומר כל ילד היה מרוצה בקלות ושביעות הרצון שלי ניגנה בקסילופון.
מחקר
לאחר שנורת הרעיון שלך מעל נדלקת, יש לבצע מחקר קטן. לאחר גלישה כלשהי באינטרנט, יכולתי להיתקל ברעיון שלי שחשבתי עליו בהתחלה! מודול לוח מקשים הפך לפסנתר, מישהו יצר את אותו סרטון פרויקט כאן. במחשבה קדימה הייתי צריך להוסיף רכיב נפרד שישפר עוד יותר את הפרויקט אך יהפוך אותו ליותר מרתק ויכול לקרוא לזה שלי.
שלב 1: חומרים דרושים
רשימת חומרים
- זמזם פיזו 1x ▶
- מודול לוח מקשים 4x4 1x ▶
- Arduino Uno 1x ▶
- כבל USB 2.0 סוג A/B 1x ▶
- מודול חיישן קול 1x ▶
- RGB LED 1x ▶
- נגד 330 אוהם 3x ▶
- חוט מגשר זכר לנקבה 8x ▶
- חוט מגשר זכר לזכר 4x ▶
- 3 פינים חוט מגשר זכר לנקבה 1x ▶
רשימת החומרים לפי סדר התמונות למעלה.
שלב 2: זמן בנייה
מודול לוח מקשים 4x4 וזמזם פיזו
תֵאוֹרִיָה
מכיוון שמודול לוח המקשים 4x4 וזמזם הפאזו מכילים כל כך הרבה קלט אישי בודד ואני אחליט לחלק את הרכיבים המשמשים לשני זוגות. התמקדות בלוח המקשים, משמשת בדרך כלל כקלט. מודול לוח המקשים מטריקס SunFounder 4*4 הוא לוח מקשים לא מקודד מטריקס המורכב מ -16 מקשים במקביל, המפתחות של כל שורה ועמודה מחוברים דרך הסיכות שבחוץ- סיכה Y1-Y4 כפי שכותרתו ליד השליטה בשורות, כאשר X1- X4, העמודות.
מַטָרָה
מטרת רכיבים אלה לפרויקט כולו היא לאפשר למשתמש ללחוץ על כפתור המוגדר לצליל ספציפי שנוצר על ידי זמזם הפיזו באמצעות תדר בהרץ.
פין מודול מטריקס - סיכת ארדואינו
- 4 - 2
- 3 - 3
- 2 - 4
- 1 - 5
- 5 - 6
- 6 - 7
- 7 - 8
- 8 - 13
זמזם פיזו - פין ארדואינו
שחור - GND
כוח אדום
המשימה הקשה ביותר שלי במבנה זה היא להבין לאן כל חוט מחובר. למעלה אני מספק לך בקלות ובמהירות כיצד לעקוב אחר מיקומי החוטים, כל עוד אתה עוקב מלמעלה למטה, עצה היא לקחת את הזמן ולוודא שכל סיכה מוחדרת כראוי לחריץ הנכון.
*הטיפ הוא לעקוב אחרי כל מיקום של כל חוט מקצה לקצה.
כל רישומי Tinkercad של חוטי הרכיב הספציפיים מקודדים בצבע כהלכה, לכן עקוב בזהירות
שלב 3: מודול חיישן קול ונורית RGB
מודול חיישן קול ו- LED RGB
תֵאוֹרִיָה
מודול חיישן הקול מאפשר לזהות כאשר הצליל חרג מנקודת ההגדרה שבחרת. צליל מזוהה באמצעות מיקרופון ומוכנס למגבר אופטי של LM393. ברגע שרמת הקול חורגת מהנקודה שנקבעה, נורית LED על המודול מוארת והפלט.
מַטָרָה
מטרת רכיבים אלה לפרויקט כולו, היא להשיג קריאת צליל/עוצמת קול של מודול חיישן הקול ובאמצעות קריאה זו נורית RGB תפעיל את הצבע הנכון הנוגע לצליל.
מודול חיישן קול - פין Arduino (השתמש בחוט מגשר 3 פינים)
- פלט - פין אנלוגי A0
- GND - כל חריץ פינים מסוג GND פתוח
- VCC - 3V
אנודה משותפת של RGB (+) - פין ארדואינו
- אדום - 9
- הספק - 5V
- ירוק - 10
- כחול - 11
זכור לחוט, כל חוט בנפרד דרך נגד של 330 אוהם. השתמש בתמונה למעלה כהפניה.
המשימה הקשה ביותר שלי במבנה זה היא להבין לאן כל חוט מחובר. למעלה אני מספק לך את הדרך המהירה והקלה למקומות החוט, כל עוד אתה ממשיך מלמעלה למטה, העצה היא לקחת את הזמן שלך ולוודא שכל סיכה מוחדרת כראוי לחריץ הנכון כדי למנוע איתור באגים בעתיד.
*הטיפ הוא לעקוב אחר המקום שבו כל חוט מוכנס לשני הכיוונים
כל הסקיצות של Tinkercad של חוטי הרכיב הספציפיים מקודדות בצבע כהלכה, עקוב אחר כך
שלב 4: קוד
קוד
קוד זה מאפשר לכל הרכיבים לעבוד יחד על ידי שימוש בפונקציה שהוגדרה לאחרונה כדי להכיל את כל הפקדים הרבים מרכיב יחיד בעל משתנים רבים הניתנים לשינוי, אותם רכיבים הובילו על ידי RGB ושימוש בצבע rgb כדי לשנות את הצבע בזמן זמזם הפיז'ו ואת צליל שהוא ישמיע בהתאם ללחיצת הכפתור.
קוד חובה בתוך קוד זה היה ספריית לוח המקשים
קישור כאן:
לאחר ההורדה הוסף את הספרייה החדשה לארדואינו, לאחר מכן הכנס את שורת הקוד היחידה הדרושה להפעלה.
קשיים שהיו לי במהלך הקוד היו היכן למקם את הפונקציות שהוגדרו לאחרונה, שכן באמצעות ניסוי וטעייה הבנתי שזה חייב להיות בהתקנה ולא בלולאה.
קוד
#include // ספריית לוח המקשים
int greenPin = 11; // פין ירוק RGB המחובר לסיכה דיגיטלית 9
int redPin = 10; // פין אדום RGB המחובר לסיכה דיגיטלית 9
int bluePin = 9; // פין כחול RGB מחובר לפין דיגיטלי 9 רמקול intPin = 12; // רמקול מחובר לפין דיגיטלי 12 const byte ROWS = 4; // ארבע שורות const byte COLS = 4; // ארבע קולומות const int soundPin = A0; // חיישן קול מצורף ל- A0
מפתחות צ'אר [ROWS] [COLS] = {
{'a', 'b', 'c', 'd'}, {'e', 'f', 'g', 'h'}, {'i', 'j', 'k', ' l '}, {' m ',' n ',' o ',' p '}}; // ויזואליזציה של מודול לוח המקשים
בתים rowPins [ROWS] = {2, 3, 4, 5}; // התחבר לנקודות השורה של לוח המקשים
בת colPins [COLS] = {6, 7, 8, 13}; // התחבר לסיבוכי colum של לוח המקשים
לוח מקשים = לוח מקשים (makeKeymap (מקשים), rowPins, colPins, ROWS, COLS); // יוצר מפתחות
הגדרת בטל () {
pinMode (speakerPin, OUTPUT); // מגדיר את speakerPin להיות פלט
pinMode (redPin, OUTPUT); // מגדיר את הסיכה האדומה להיות pinMode פלט (greenPin, OUTPUT); // מגדיר את הסיכה הירוקה להיות pinMode פלט (bluePin, OUTPUT); // מגדיר את הסיכה הכחולה כפלט
Serial.begin (9600);
} void setColor (int אדום, int ירוק, int כחול) // פונקציה מוגדרת חדשה המאפשרת ל- RGB להציג צבע באמצעות קוד RGB {#ifdef COMMON_ANODE אדום = 255 - אדום; ירוק = 255 - ירוק; כחול = 255 - כחול; #endif analogWrite (redPin, אדום); analogWrite (greenPin, ירוק); analogWrite (bluePin, כחול); }
צפצוף חלל (רמקול צ'אר ללא סימן Pin, int frequencyInHertz, long timeInMilliseconds) {// הפונקציות להפקת הצלילים
int x; long delayAmount = (long) (1000000/frequencyInHertz); long loopTime = (long) ((timeInMilliseconds*1000)/(delayAmount*2)); עבור (x = 0; x
לולאת חלל () {
מפתח char = keypad.getKey (); int value = analogRead (soundPin); // קרא את הערך של A0 Serial.println (ערך); // הדפס את הערך
אם (מפתח! = NO_KEY) {
Serial.println (מפתח); } if (key == 'a') {ביפ (speakerPin, 2093, 100); setColor (218, 112, 214); } if (key == 'b') {ביפ (speakerPin, 2349, 100); setColor (218, 112, 214); } if (key == 'c') {ביפ (speakerPin, 2637, 100); setColor (218, 112, 214); } if (key == 'd') {ביפ (speakerPin, 2793, 100); setColor (218, 112, 214); } if (key == 'e') {ביפ (speakerPin, 3136, 100); setColor (218, 112, 214); } if (key == 'f') {ביפ (speakerPin, 3520, 100); setColor (218, 112, 214); } if (key == 'g') {ביפ (speakerPin, 3951, 100); setColor (218, 112, 214); } if (key == 'h') {ביפ (speakerPin, 4186, 100); setColor (218, 112, 214); } if (key == 'i') {ביפ (speakerPin, 2093, 100); setColor (230, 230, 0); } if (key == 'j') {ביפ (speakerPin, 2349, 100); setColor (180, 255, 130); } if (key == 'k') {ביפ (speakerPin, 2637, 100); setColor (130, 255, 130); } if (key == 'l') {ביפ (speakerPin, 2739, 100); setColor (130, 220, 130); } if (key == 'm') {ביפ (speakerPin, 3136, 100); setColor (0, 255, 255); } if (key == 'n') {ביפ (speakerPin, 3520, 100); setColor (0, 220, 255); } if (key == 'o') {ביפ (speakerPin, 3951, 100); setColor (0, 69, 255); } if (key == 'p') {ביפ (speakerPin, 4186, 100); setColor (255, 0, 255); }}
שלב 5: מחשבות אחרונות
מחשבות אחרונות
המחשבות הסופיות של הפרויקט הזה הן שמטרתו נועדה להיות צעצוע, להביא שמחה ופשטנית. מכיוון שהפרויקט הזה הוא שלם ועובד, אני מאמין שהמבנה הזה יכול להתקדם עם אולי יותר רכיבים כגון אלמנט הקלטה, או אלמנט העתק/סימון אומר, או אפילו LCD עם התווים שמופיעים לנגן שיר ספציפי.
אשמח לדעת מה דעתך על מודול לוח המקשים, אילו רכיבים חשבת שניתן להוסיף. האם אתה מתכוון להשתמש בו בכל אחד מהפרויקטים שלך? אנא פרסם את הרעיונות שלך בסעיף ההערות למטה.
אנא הקפד לשתף אם נהנית מפרויקט הארדואינו הזה.
מוּמלָץ:
דוושות רגליים לפסנתר מבית MaKey MaKey: 6 שלבים
דוושות רגל לפסנתר מופעלות על MaKey MaKey: פסנתר הבננות הפך להיות אולי השימוש האייקוני ביותר של MaKey MaKey, לצד הפיכת חפצי בית שונים לפסנתרים. עכשיו אני לא מומחה לפסנתר, אבל בפסנתרים שראיתי יש את הדברים האלה לדוושה לרגליים. לא ממש בטוח מה e
מודול מגן לוח מקשים 1602 עם תרמיל I2C: 6 שלבים
מודול מגן לוח מקשים 1602 עם תרמיל I2C: כחלק מפרויקט גדול יותר, רציתי לקבל תצוגת LCD ומקלדת לניווט של כמה תפריטים פשוטים. אני אשתמש בהרבה מיציאות הקלט/פלט בארדואינו לעבודות אחרות, אז רציתי ממשק I2C עבור ה- LCD. אז קניתי קצת חומרה
לוח מקשים 2 מקשים לאוסו !: 6 שלבים
2 מקשי לוח מקשים לאוסו !: במדריך זה תדעו כיצד להכין מקש 2 מקשים עבור osu! אנא עקוב אחר ההנחיות
הגדרת מודול RTC DS1302 עם לוח מקשים + Arduino + LCD: 3 שלבים
הגדרת מודול RTC DS1302 עם לוח מקשים + Arduino + LCD: שלום, הרגע עשיתי את הפרוייקט הקטן הזה, אני מקווה שתאהבו אותו, כפי שהכותרת אומרת שהוא עוסק באופן השימוש בלוח המקשים להגדרת ה- DS1302, זהו אחד הפרויקטים הבסיסיים שתוכלו לעשות הוסף אותו לפרויקט שלך אם אתה רוצה להוסיף מודולים או פונקציות אחרות … זה v
ממשק לוח מקשים עם 8051 ומציג מספרי לוח מקשים ב -7 פלחים: 4 שלבים (עם תמונות)
ממשק לוח מקשים עם 8051 והצגת מספרי לוח מקשים ב -7 פלחים: במדריך זה אני הולך לספר לך כיצד נוכל לממשק לוח מקשים עם 8051 ולהציג מספרי לוח מקשים בתצוגת 7 פלחים