תוכן עניינים:
- שלב 1: הגדרת הארדואינו
- שלב 2: הוספת הפקדים
- שלב 3: הוספת יציאות
- שלב 4: העלאת הקוד
- שלב 5: להתעסק
- שלב 6: התאמה אישית
וִידֵאוֹ: מסנן סינטיסייזר (יתוש I): 6 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:11
יתוש I הוא סינתיסייזר ארפג'יטי קטן שמשתמש בארדואינו ננו ובספריית סינתזת הצלילים של מוזי. הוא יכול לשחק יותר מעשרים רצפים של 8 שלבים, אבל אתה יכול להוסיף כמה רצפים מותאמים אישית שתרצה. ההתקנה פשוטה יחסית ואינה דורשת הרבה חלקים.
אספקה:
- Arduino Nano (או כל Arduino באמת צריך לעבוד)
- 5 פוטנציומטרים (10K לינארי)
- 2 כפתורי לחיצה
- 1 LED LED
- נגד אחד (330 אוהם)
- הנגד אחד (1K)
- נגד אחד (2K)
- קבל אלקטרוליטי אחד (100 uF)
- קבל קרמיקה אחד (33 nF)
- שקע סטריאו אחד
- חוט חיבור
- לוח לחם
שלב 1: הגדרת הארדואינו
ראשית, בואו נעלה את הננו על לוח הלחם ונקבע את הכוח שלנו:
- מניחים את הננו על לוח הלחם. מקם כפי שמוצג בתמונה למעלה. זה צריך לחצות את התעלה המרכזית של לוח הלחם. אתה רוצה שזה יהיה ממוקם בקצה אחד של לוח הלחם, כאשר יציאת ה- USB פונה לצד זה. בדרך זו הכבל לא יפריע לנו כאשר אנו מחברים אותו לחשמל. אם אתה משתמש בארדואינו גדול יותר כמו ה- Uno או Mega, לא תרכב אותו על לוח הלוח כמובן.
- חבר מסילות חשמל ל- Arduino. חבר את אחת המסילות החיוביות (האדומות) של לוח הלחם שלך לסיכה 5V של הארדואינו באמצעות חוטים או חוטי מגשר. לאחר מכן חבר את אחת המסילות השליליות (הכחולות) לאחד מסיכות ה- GND של הננו.
- חבר מסילות חשמל אחת לשניה. כדי לקבל כוח לאורך המסילות משני צידי לוח הלחם, חבר את המסילות משני צידי לוח הלחם זה לזה על ידי העברת חוט מהמסילה החיובית בצד אחד למעקה החיובי בצד השני. חזור על זה עם המסילות השליליות.
שלב 2: הוספת הפקדים
יתוש I משתמש בחמישה פוטנציומטרים ושני כפתורים לבקרות.
פוטנציומטרים:
- מניחים את הסירים על לוח הלחם. מניחים את הסירים כך שכל סיכה תהיה בשורה משלה.
- חבר סירים למסילות חשמל. חבר את סיכת הצד השמאלית של כל סיר (אם אתה מסתכל בצד הכפתור) לאחת המסילות השליליות בלוח הלחם. חבר את הסיכה הימנית של כל סיר לאחת המסילות החיוביות של לוח הלחם.
- חבר סירים לארדואינו. חבר את הסיכה המרכזית של כל סיר לאחד מהסיכות האנלוגיות על הארדואינו. הסיכה המרכזית של הסיר הראשון מתחברת ל- A0, הסיר השני ל- A1 וכן הלאה כשהסיר האחרון מחובר ל- A4.
ללחוץ על כפתורים:
- הניחו כפתורים על לוח הלחם. מניחים את שני לחצני הלחיצה על לוח הלחם כך שהם יחפשו את הערוץ המרכזי.
- לחבר צדדים חיוביים. בצד אחד של לוח הלחם, חבר אחד מהסיכות של הלחצן למעקה החיובי.
- לחבר צדדים שליליים. מקם את אחד הנגדים 1K על לוח הלחם כך שקצה אחד מחובר לסיכה הבלתי מנוצלת של לחצן והצד השני של הנגד מתחבר למעקה השלילי.
- כפתור חיבור ל- Arduino. הפעל חוט בשורה המחברת את הכפתור למעקה השלילי לסיכה D2. לעשות את אותו הדבר עם הכפתור השני אבל חבר אותו ל- D3.
שלב 3: הוספת יציאות
אנו מוציאים שמע מהפין 9, כמו גם מהבהבים נורית על השלב הראשון של כל רצף. הנה כיצד להגדיר את החומרה עבור זה.
לד
- הנח LED בחלל ריק על לוח הלחם.
- חבר את הרגל השלילית (הקצרה) של ה- LED למעקה השלילי.
- מניחים נגד מגביל זרם. חבר צד אחד של הנגד של 330 אוהם לרגל החיובית (הארוכה) של ה- LED. חבר את הצד השני של הנגד לסיכה D4 של הארדואינו.
פלט שמע
- הצב את רשת ה- RC. אות הפלט מהארדואינו מגיע מהפין 9 אך האות יכול להיות קצת יותר חם ממה שחלק מהרמקולים יכולים להתמודד. כדי להוריד אותו למשהו קרוב יותר לרמת הקו, הוספתי רשת RC (המבוססת על עיצוב של Notes & Volts). מקם את הקבלים 33nF ו- 100uF, יחד עם הנגד 2K כפי שמוצג בתמונה/סכמטי. וודא כי הקבל 100uF האלקטרוליטי מחובר לקוטביות הנכונה (הרגל החיובית/הארוכה הולכת לסיכה 9 בארדואינו והרגל השלילית/קצרה מחוברת לשקע).
- חבר את הצד השלילי של שקע השמע לאדמה. חיבורי שקע השמע ישתנו מעט בהתאם לסוג שבו אתה משתמש, אך בדרך כלל כולם עובדים אותו דבר. עלינו לחבר את שרוול הג'ק לקרקע. זה מסומן לפעמים בסמל מינוס או מתויג כ"שרוול "," טבעת "או" gnd ". אם אין תוויות בשקע השמע שלך, ייתכן שתצטרך להתייעץ עם גליון הנתונים או פשוט לבדוק את השקע ולבדוק אם תוכל לקבוע איזו סיכה מחוברת לשרוול או לטבעת החיצונית של השקע.
- חבר את הצד החיובי של שקע השמע לצד השלילי של הקבל 100uF. אות השמע שלנו זורם כעת מהפין 9 של הארדואינו דרך רשת ה- RC ויוצא מהצד השלילי של הקבל 100uF. נחבר זאת לצד החיובי של שקע השמע שלנו. זה בדרך כלל מסומן עם סמל פלוס או עשוי להיות מסומן כ"טיפ ". שוב, אם זה לא מסומן, ייתכן שיהיה עליך לבדוק אותו כדי להבין איזה סיכה תחבר לקצה השקע. כמו כן, אם אתה משתמש בשקע סטריאו, ייתכן שיש חיבור L ו- R tip. מכיוון שאנו מוציאים אות מונו, אתה יכול פשוט להתחבר לאחד מחיבורי הקצה.
חשוב: אם אתה מוצא כי השמע שקט מדי ייתכן שתוכל לחסל את רשת ה- RC בשלב 1 ולהתחבר ישירות לשמע מהפין 9 של הארדואינו. זה אמור להיות בסדר אם אתה מחבר את השמע למשהו עם מגבר מקדים כמו רמקולים חיצוניים במחשב שבו יש לך כפתור עוצמת קול, אבל לא הייתי ממליץ עליו לדברים כמו אוזניות, אוזניות או חיווט ישיר לרמקול. אם בכל זאת תחליט לחסל את רשת ה- RC, אני מציע להנמיך את עוצמת הקול של הרמקולים עד הסוף לפני שאתה מפעיל את הארדואינו ולאחר מכן מגביר את עוצמת הקול בהדרגה כדי להימנע מהתפוצצות הרמקולים שלך.
לאחר שהגדרת הכל, בדוק שוב שכל החיבורים נראים נכונים ותואמים את התמונה והסכימה למעלה
שלב 4: העלאת הקוד
כעת, כאשר כל החומרה מוגדרת, אנו מוכנים להתמודד עם צד התוכנה:
- הפעל את Arduino IDE. הפעל במחשב שלך את Arduino IDE (אם אין לך אותו, תוכל להוריד אותו מ-
- הורד את ספריית Mozzi. ספריית המוז'י היא מה שמאפשר לנו להשתמש בארדואינו כסינתיסייזר. כדי לקבל את הספרייה הזו ב- IDE שלך, עבור לדף Moithi github https://sensorium.github.io/Mozzi/download/. לחץ על כפתור "הקוד" הירוק ובחר הורד ZIP.
- התקן את ספריית Mozzi מתוך קובץ ה- zip. ב- IDE של Arduino, עבור אל Sketch-> Include Library-> Add. ZIP… נווט לקובץ ה- zip שהורדת כדי להוסיף אותו. כעת אתה אמור לראות את Mozzi מופיע בקטע Sketch-> Include Library.
- הורד את קוד היתוש I Arduino. תוכל לקבל זאת מאתר github שלי https://github.com/analogsketchbook/mosquito_one. (שים לב שהתרשימות זמינות גם שם אם אתה צריך אותן לעיון בחיווט.
- חבר את הארדואינו למחשב והעלה את הקוד.
שלב 5: להתעסק
זהו זה. אתה אמור להיות מסוגל לחבר את הרמקולים שלך לשקע השמע ולשמוע את הצליל המתוק של סינתזה מפותחת מהנאנו האיטיביטי הזה! אם אתה לא שומע דבר בהתחלה, נסה למרכז את הכפתורים על כל הסירים כדי לוודא שאתה מקבל ערכי התחלה הגונים.
להלן מה הפקדים עושים:
כְּלֵי מִטְבָּח:
שיעור: זה קובע את מהירות ההפעלה של הרצף. הדחתה מנגנת תווים נפרדים ברצף. כאשר הוא הופך אותו למעלה, מורחים את הפתקים יחד ליצירת צורות גל חדשות לגמרי.
לגאטו: הסיר השני שולט באורך לגו או פתק. הפיכתו יותר שמאלה מייצרת תווים קצרים ומעוררים, בעוד שהפיכה ימינה מייצרת תווים ארוכים יותר.
המגרש: זה קובע את גובה הבסיס לרצף. בקרת המגרש מגדירה ערכי MIDI, כך שהיא מגדילה/מקטינה את המגרש בחצי -טון ולא הזזה רציפה.
שלב: סיבוב הכפתור ימינה מציג אפקט שלב בהדרגה. מבחינה טכנית, הדבר גורם לשני המתנדים ביתוש I להתנתק מעט וזה מה שגורם להדרגה. עם זאת, זה לא מעקב עם המגרש כך שאפקט ההדרגה בולט כנראה יותר בהערות המגרש הנמוך יותר.
מסנן: כפתור זה שולט על תדירות החיתוך של מסנן נמוך. סיבובו שמאלה מנתק את התדרים הגבוהים המפיקים צליל עמום יותר, בעוד שהפנייתו ימינה מפיקה צליל בהיר יותר.
כפתורים:
ליתוש יש יותר מעשרים רצפים שונים שהוא יכול לשחק כברירת מחדל. כפתורי הלחיצה מאפשרים לך לבחור איזה רצף משחק. כפתור אחד מעביר אותך ברשימת הרצפים והשני יורד ברשימה.
שלב 6: התאמה אישית
הוספתי חבורה של רצפי ברירת מחדל, בעיקר סולמות שונות, אך ניתן להתאים אישית את הקוד די בקלות כדי לשנות את רצף התווים המושמעים, להוסיף חדשים או לשנות את מספר ההערות ברצף. להלן הפרטים של אופן הפעולה במקרה שתרצה להתאים אותו אישית.
שינוי הערות ברצף קיים
הרצפים מאוחסנים במערך מערכים הנקרא NOTES. כל פתק מאוחסן כערך הערת MIDI, כך שאם ברצונך לשנות הערות ברצף מסוים, פשוט שנה את מספרי פתקי ה- MIDI עבור רצף זה. הגדרת ברירת המחדל היא לשחק 8 שלבים ברצף כך שתוכלו לקבל רק 8 ערכי MIDI ברצף (ראה להלן אם ברצונך לקבל אורכי רצף שונים).
דבר אחד שצריך לשים לב אליו, כפתור המגרש מוסיף קיזוז הערה לערכי MIDI שצוין במערך NOTES. כאשר הכפתור מרוכז, הוא מנגן את תווי ה- MIDI המצוינים במערך, אך כאשר אתה מסובב את כפתור הגובה הוא מוסיף או מפחית צליל למחצה לתווים המושמעים.
הוספת רצפים חדשים
אתה יכול להוסיף רצפים חדשים למערך NOTES על ידי הוספת מערך חדש בן 8 תווים בסוף הרשימה. אם תעשה זאת, יהיה עליך גם לשנות את הערך של המשתנה numSequences כך שיתאים למספר החדש של הרצפים. לדוגמה, מערך NOTES כולל 21 רצפים כברירת מחדל, כך שמשתנה numSequences מוגדר ל- 21. אם תוסיף רצף אחד חדש, יהיה עליך לשנות את משתנה numSequences ל- 22.
אתה יכול להוסיף כמה רצפים חדשים שאתה רוצה.
שינוי אורך רצף
אם אתה רוצה לשנות את אורך הרצפים שלך (אם אתה רוצה לומר רצף של 4 או 16 שלבים), אתה יכול לעשות זאת, אך הסייג היחיד הוא שכל הרצפים צריכים להיות באותו אורך. יהיה עליך גם להגדיר את המשתנה numNotes כך שיתאים לאורך הרצפים שלך.
שינויים אחרים
ישנם מספר התאמות אישיות אחרות, כגון החלפת סוגי צורות גל, הגדרות/ערכים של מסננים, שהם מעבר להיקף של הדרכה זו. להבין קוד מוזי יכול להיות קצת מאתגר בהתחלה, אבל ניסיתי לתעד את הקוד כמה שאפשר כדי להראות מה החלקים השונים של הקוד עושים.
ישנם כמה חלקים עיקריים בקוד למוצי שיש להם שימושים ספציפיים למדי והצגתי אותם למטה כדי לתת לך מושג למה הם משמשים:
- setup () - אם תכננת עבור Arduinos לפני שאתה מכיר את הפונקציה הזו והיא פחות או יותר משמשת אותו הדבר במוצי. אנו משתמשים בו בעיקר להגדרת הגדרות ברירת מחדל עבור מתנדים, מסננים וכו '.
- updateControl () - זה המקום שבו חלק הארי של קוד המוזי עושה את העבודה שלו. זה המקום שבו אנו קוראים את ערכי הסיר והכפתורים, ממפים והופכים את הערכים האלה להזנה לתוך הסינתיסייזר, והרצף מתבצע.
- updateAudio () - זהו הפלט הסופי מספריית Mozzi. בדרך כלל הקוד כאן נשמר קטן מאוד ורזה מכיוון שפונקציה זו משמשת את Mozzi למקסם את כל מחזורי השעון שהוא יכול. כפי שאתה יכול לראות בקוד היתוש, זה יכול להיות קצת קריפי אבל כל מה שאנחנו בעצם עושים בשילוב/הכפלת צורות הגל השונות שלנו ולאחר מכן העברת ביטים כך שיתאימו לטווח מספרים ספציפי. עדיף לשמור על הפונקציה הזו קלה מאוד (לא שיחות סידריות או סיכות קריאה) ולשים במקום זאת את רוב הדברים בפונקציה controlUpdate (). תיעוד Mozzi מפרט זאת ביתר פירוט.
מוּמלָץ:
סינטיסייזר Wii Nunchuck: 4 שלבים
Wii Nunchuck Synthesizer: The World of Wii Music: החלטתי לשלב סוף סוף את אהבתי למוזיקה עם מעט ניסיון התכנות שצברתי בשנים האחרונות. אני מעוניין ליצור כלי משלי מאז שראיתי הרצאה של טוד מאצ'ו
מסנן פסיבי נמוך למעגלי אודיו (מסנן RC בצורה חופשית): 6 שלבים
מסנן פסיבי נמוך למעגלי אודיו (מסנן RC חופשי): דבר שתמיד גרם לי לצרות בעת ביצוע מכשירים אלקטרוניים בהתאמה אישית הוא הפרעות רעש מתמשכות באותות השמע שלי. ניסיתי מיגון וטריקים שונים לאותות חיווט, אך נראה שהפתרון הפשוט ביותר לאחר הבנייה הוא
מסנן LP-2010 AES17 1998 מגבר מיתוג נמוך (מעבר נמוך) מסנן: 4 שלבים
מסנן LP-2010 AES17 1998 החלפת מגבר מעבר נמוך (מעבר נמוך): זהו מגבר מצוין ברמה D. מדידה של מסנן נמוך. הביצוע המשובח, ביצועי הסופר-רירו, חיבור קל הופכים את המוצר לקל לשימוש ושווה מאוד להחזיק אותו עם ביצועי עלות גבוהה
ה- SENSONIZER, סינטיסייזר DIY: 5 שלבים
ה- SENSONIZER, סינטיסייזר DIY: זהו הסנסוניזר, הסינתיסייזר המבוסס על חיישנים. בקצרה זהו בעצם מקלדת סינתיסייזר, אך במקום מקשי וכפתורי פסנתר, מחוונים ולחצנים לשליטה עליו. השתמשתי בחיישני לחץ ומיקום להחלפת מקשי הפסנתר, ו
סינטיסייזר נבל לייזר על לוח זיבו: 10 שלבים (עם תמונות)
סינטיסייזר נבל לייזר בלוח זיבו: במדריך זה ניצור נבל לייזר מתפקד במלואו באמצעות חיישני IR עם ממשק טורי שיאפשר למשתמש לשנות את הכוונון והטון של המכשיר. נבל זה יהיה הגרסה המחודשת מהמאה ה -21 לכלי הישן. ה