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

סינתזה של צליל אנלוגי במחשב שלך: 10 שלבים (עם תמונות)
סינתזה של צליל אנלוגי במחשב שלך: 10 שלבים (עם תמונות)

וִידֵאוֹ: סינתזה של צליל אנלוגי במחשב שלך: 10 שלבים (עם תמונות)

וִידֵאוֹ: סינתזה של צליל אנלוגי במחשב שלך: 10 שלבים (עם תמונות)
וִידֵאוֹ: Fun with Music and Programming by Connor Harris and Stephen Krewson 2024, נוֹבֶמבֶּר
Anonim
סינתזה של צליל אנלוגי במחשב שלך
סינתזה של צליל אנלוגי במחשב שלך

כמו הצליל של אותם סינתיסייזרים אנלוגיים ישנים? רוצה לשחק עם אחד בזמן שלך, במקום שלך, כל עוד אתה רוצה, בחינם? כאן מתגשמים חלומות ה- Moog הפרועים ביותר שלך. אתה יכול להפוך לאמן הקלטות אלקטרוניות או פשוט להפיק כמה צלילים מגניבים וטריפים להאזנה בנגן ה- MP3 שלך. כל מה שאתה צריך הוא מחשב! הכל נעשה באמצעות הקסם של סימולטור מעגלים חופשי בשם LTSpice. עכשיו אני יודע שאתה בטח אומר "ווי וויקי, טיילר, אני לא יודע כלום על הפעלת סימולטור מעגלים- זה נשמע קשה!". אל תדאג, בנקי! זה קל ואני אתן לך כמה תבניות להתחיל ולשנות כדי להפוך את כל הרעשים המוזרים שאתה רוצה. לא בטוח שזה שווה את המאמץ? להלן קישור לקובץ צליל מוכן להפעלה (הוא עשוי מ- "composition_1.asc" בשלב 7 של ה'אבל 'הזה) שתוכל לנסות. המרת אותו מ- wav ל- mp3 כדי לצמצם את זמן ההורדה. https://www.rehorst.com/mrehorst/instructables/composition_1.mp3 יש בו קצת באס נמוך הצליל אז תקשיב עם אוזניות או רמקולים טובים. אם אתה אוהב את מה שאתה רואה, הצביע עבורי! הערה: צירפתי קבצים סכמטיים עבור LTSpice שתוכל להריץ במחשב שלך, אך מסיבה כלשהי כאשר אתה מנסה להוריד אותם השמות והתוספים משתנים. תוכן הקבצים נראה בסדר, אז לאחר הורדת הקבצים פשוט שנה את השמות והתוספים והם אמורים לפעול. השמות והתוספים הנכונים מוצגים על הסמלים שעליהם אתה לוחץ כדי להוריד.

שלב 1: דבר ראשון

LTSpice היא תוכנית חלונות, אך אל תתנו לזה להוריד אתכם. הוא פועל מצוין מתחת ליין בלינוקס. אני חושד שאין בעיות להריץ אותו בלקוח VMWare, VirtualBox או בכלי וירטואליזציה אחרים תחת לינוקס, וכנראה גם במחשבי Mac. הורד עותק של LTSpice עבור Windows (איכס!) כאן: https://www.linear.com/ designtools/software/ltspice.jsp התקן אותו. מהו LTSpice? זהו סימולטור מעגל תחום זמן שכל חובב אלקטרוניקה צריך לדעת כיצד להשתמש בו. אני לא מתכוון לספק הדרכה מפורטת כיצד זה עובד כאן, אבל אסביר כמה דברים שתצטרך לדעת ככל שאנו הולכים. מילה אחת של אזהרה- אפשר בקלות לייצר תדרים נמוכים מדי או גבוה מכדי לשמוע. אם אתה עושה את זה ומניע את הרמקולים היקרים שלך עם מגבר בעל עוצמה גבוהה אתה יכול פשוט לפוצץ את הרמקולים/מגבר לחתיכות. תמיד תסתכל על צורות הגל לפני שאתה משמיע אותן והקפד להגביל את עוצמת הקול בעת הפעלת קובץ בפעם הראשונה רק ליתר ביטחון. תמיד כדאי לשחק את הקבצים באמצעות אוזניות זולות בעוצמה נמוכה לפני שתנסה רמקולים.

שלב 2: קלט

קֶלֶט
קֶלֶט

הקלט לסימולטור הוא בצורה של תרשים סכמטי. אתה בוחר רכיבים, ממקם אותם בסכימה ולאחר מכן מחבר אותם יחד. לאחר שהמעגל הושלם אתה אומר לסימולטור כיצד אתה רוצה שהוא ידמה את המעגל ואיזה סוג פלט אתה רוצה. תסתכל על הסכימה שנקראת resistors.asc. תראה שיש מעגל הכולל מקור מתח, זוג נגדים, צומת פלט שכותרתו, קרקע ושורת פקודה טקסט. בואו נסתכל על כל אחד. עכשיו זה זמן טוב לפתוח את קובץ המעגל המקושר למטה. קרקע: זהו המרכיב הקריטי ביותר בסכימה שלך. אתה חייב שיהיה קרקע המחוברת לפחות לנקודה אחת במעגל שלך או שתקבל תוצאות מוזרות מאוד מהסימולציות שלך. מקור המתח: אם אתה מכניס מתח למעגל, עליך לומר לו אם הוא AC או DC (או משהו מורכב יותר), מהו המתח, "ההתנגדות הפנימית" של המקור וכו '. ניתן להזין פרמטרים אלה על ידי לחיצה ימנית עם המצביע על המקור. כל מה שאתה באמת צריך הוא ההתנגדות לסימולציות פשוטות. נגדים: הנגדים די קלים להבנה. פשוט לחץ באמצעות לחצן העכבר הימני כדי להגדיר את ערך ההתנגדות. התעלם מכל פרמטר אחר שעשוי להסתתר שם. צמתים קלט ופלט מסומנים: רק שמות של צמתים במעגל שהם ידידותיים למשתמש.- השתמש בשמות כמו "פלט", "קלט" וכו 'הנחיית הסימולציה: משפט הטראן. מספר לסימולטור כיצד ברצונך לדמות את המעגל. זהו סימולטור של תחום זמן שמשמעותו הוא מנתח את המעגל בנקודות זמן שונות. אתה צריך להגיד לו מה שלב הזמן המרבי צריך להיות וכמה זמן הסימולציה אמורה לפעול ב"זמן מעגל ", לא בזמן אמת. אם אתה אומר לסימולטור לרוץ במשך 10 שניות של זמן מעגל ואתה מגדיר את שלב הזמן המרבי ל 0.001 שניות, הוא ינתח את המעגל לפחות 10, 000 פעמים (10 שניות/0.001 שניות) ואז יפסיק., המתח בכל צומת במעגל והזרמים אל תוך כל צומת יחושבו ויישמרו בכל שלב זמן. כל המידע הזה יהיה זמין לשרטט על צג כמו מסך אוסצילוסקופ (זמן הציר האופקי, מתח או זרם בציר האנכי. לחלופין, תוכל גם לשלוח את הפלט לקובץ שמע של wav שתוכל להפעיל על מחשב, צורב לתקליטור או הפך ל- mp3 לנגן בנגן ה- mp3 שלך. עוד על כך בהמשך …

שלב 3: פלט

תְפוּקָה
תְפוּקָה

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

שלב 4: עכשיו קצת צליל

עכשיו קצת סאונד!
עכשיו קצת סאונד!

פתח את המעגל שנקרא "dizzy.asc". זה הוא יצרנית רעשים מוזרה שמשתמשת באפנן ובכמה מקורות מתח כדי לייצר קובץ שמע באיכות תקליטור (16 סיביות, 44.1 קב"ש, 2 ערוצים) שאפשר לשחק איתו. רכיב האפנן הוא למעשה מתנד. התדר והמשרעת מתכווננים שניהם כמו VCO ו- VCA בסינתיסייזר אנלוגי אמיתי. צורת הגל היא תמיד סינוסואידית, אך ישנן דרכים לשנות אותה- עוד על כך בהמשך. גבולות התדירות נקבעים לפי פרמטרי הסימן והמרווח. סימן הוא התדר כאשר מתח הכניסה של FM הוא 1V והמרווח הוא התדר שבו מתח הכניסה של FM הוא 0V. תדר היציאה הוא פונקציה לינארית של מתח הכניסה FM, ולכן התדירות תהיה באמצע הדרך בין תדר הסימן לבין החלל כאשר מתח הכניסה של FM הוא 0.5V ויהיה פי 2 מתדר הסימן כאשר מתח הכניסה של FM הוא 2V. ניתן לאפנן את האפנן במשרעת באמצעות מנע הכניסה AM. משרעת הפלט של האפנן (המתנד) תתאים למתח המופעל על קלט המתח AM. אם אתה משתמש במקור DC עם מתח של 1, משרעת הפלט תהיה 1V (זה אומר שהוא יתנדנד בין -1 ל- +1 V). לאפנן יש שתי יציאות- סינוס וקוסינוס. צורות הגל זהות לחלוטין למעט שהן נמצאות מחוץ לפאזה של 90 מעלות. זה יכול להיות כיף עבור יישומי שמע סטריאו. יש הצהרה. טראן שמספרת לסימולטור את שלב הזמן המרבי ואת משך הסימולציה. במקרה זה, זמן מעגל (זמן סימולציה כולל) = זמן קובץ שמע. זה אומר שאם תריץ את הסימולציה למשך 10 שניות תקבל קובץ שמע שאורכו 10 שניות. משפט.save משמש למינימום כמות הנתונים שהסימולטור יחסוך תוך הפעלת הסימולציה. בדרך כלל זה חוסך את המתחים בכל צומת ואת הזרמים לתוך כל רכיב ומחוצה לו. זה יכול להוסיף הרבה מאוד נתונים אם המעגל שלך מסתבך או אם אתה מפעיל סימולציה ארוכה. כאשר אתה מפעיל את הסימולציה, בחר מתח או זרם אחד מהרשימה בתיבת הדו -שיח וקובץ הנתונים (. צור קובץ שמע סטריאו באיכות CD (16 סיביות לדגימה, 44.1 ksps, שני ערוצים) והציב את המתח ב- "OUTL" בערוץ השמאלי והמתח ב- "OUTR" בערוץ הימני. קובץ.wav מורכב מדגימות של 16 סיביות. פלט בקנה מידה מלא בקובץ.wav (כל 16 הסיביות במדגם מופעל) מתרחש כאשר המתח שמוצא הוא בדיוק +1 וולט או -1 וולט. יש להגדיר את מעגל הסינתיסייזר שלך ליצירת מתח של לא יותר מ +/- 1V החוצה לכל ערוץ, אחרת הפלט בקובץ.wav "ייחתך" בכל פעם שהמתח יעלה על +1 או -1 V. מכיוון שאנו עושים קובץ שמע שנדגם ב -44.1 ק"ש, אנו זקוקים לסימולטור כדי לדמות את המעגל לפחות 44, 100 פעמים בשנייה, לכן הגדרנו את שלב הזמן המרבי ל -1/44, 100 שניות או כ -20 מיקרו שניות (אנחנו).

שלב 5: סוגים אחרים של מקורות מתח, סוגים אחרים של צלילים

סוגים אחרים של מקורות מתח, סוגים אחרים של צלילים
סוגים אחרים של מקורות מתח, סוגים אחרים של צלילים
סוגים אחרים של מקורות מתח, סוגים אחרים של צלילים
סוגים אחרים של מקורות מתח, סוגים אחרים של צלילים

סינתיסייזר אנלוגי זקוק למקור רעש אקראי. אתה יכול לייצר רעש באמצעות "מקור מתח התנהגותי" (bv) ואתה יכול להדליק ולכבות אותו באמצעות "מתג מבוקר מתח" (sw). שימוש ברכיב bv ליצירת רעש כרוך בהגדרת המתח על בסיס נוסחה. הנוסחה ליצירת רעש נראית כך: V = לבן (זמן*X)*Y הפונקציה הלבנה יוצרת מתח אקראי בין -0.5 ל- +0.5 V באמצעות ערך הזמן הנוכחי כזרע. הגדרת Y ל- 2 נותנת תנופה של +/- 1V. הגדרת X בין 1, 000 (1e3) ל -100, 000 (1e5) משפיעה על ספקטרום הרעש ומשנה את הצליל. גם המתג הנשלט על -ידי מתח צריך להגדיר כמה פרמטרים בהצהרת מודל. אתה יכול להשתמש במספר מתגים מבוקרי מתח ובהצהרות דגמים מרובות כדי לגרום לכל אחד להתנהג אחרת אם אתה רוצה. עליך לספר לסימולטור את ההתנגדות "הפעלה" וה"כבה "ואת מתח הסף שבו הוא עובר. Vh הוא "מתח היסטריה". הגדר אותו לערך חיובי כלשהו כמו 0.4V ולא יהיו קולות לחיצה כאשר המתג ייפתח ונסגר. >>> עדכון: הנה דרך קלה עוד יותר לייצר מקור רעש מגודר- פשוט הכפל את מתח הרעש בפעימות מקור- ראה easy_gated_noise.asc, להלן.

שלב 6: פעמונים, תופים, מצלתיים, מחרוזות קטופות

פעמונים, תופים, מצלתיים, מחרוזות קטפות
פעמונים, תופים, מצלתיים, מחרוזות קטפות

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

שלב 7: חיבור הכל ביחד

לשים את הכל ביחד
לשים את הכל ביחד

אוקיי, עכשיו ראיתם כיצד להשמיע כמה קולות וכיצד לעצב את המעטפות והתדר לווסת אותן. עכשיו הגיע הזמן לחבר כמה מקורות שונים בתרשים יחיד ולייצר משהו מעניין להאזין לו. איך גורמים למקור הרעש הזה להיכנס לקומפוזיציה תוך 33 שניות? איך מפעילים את הפעמון המצלצל הזה תוך 16 שניות, מכבים אותו ואז מפעילים אותו שוב תוך 42 שניות? אחת הדרכים היא להשתמש במקור מתח התנהגותי להשמעת הצליל הרצוי ואז להדליק ולכבות אותו על ידי הכפלת המתח ליצירת הצליל במתח אחר המפעיל וסירק את הצליל, כפי שנעשה ב- bell_drum_cymbal_string.asc. אתה יכול לעשות את אותו הדבר כדי לדהות צלילים פנימה והחוצה. הרעיון כאן הוא להגדיר צלילים חוזרים ואז להשתמש במקורות נוספים כדי להוסיף את הצלילים האלה לקומפוזיציה שלך בזמנים הרצויים על ידי הכפלת המתחים שלהם במתח הקול. אתה יכול לכלול כמה שיותר מתח בפלט הקול הסופי שאתה רוצה, פשוט המשך להכפיל אותם (זהה ללוגי "ו") יחד. על ידי הפעלת הצלילים בבת אחת הם יישארו מסונכרנים בצורה מושלמת לאורך כל הקומפוזיציה כך שלעולם לא יהיו מוקדמים או מאוחרים בזמן המוזיקה. תסתכלו על composition_1.asc. ישנם שני פעמונים, אחד בכל ערוץ. מתח הדופק פועל לאורך הסימולציה אך הצלילים מופיעים רק ביציאה כאשר V (bell_r) ו- V (bell_l) אינם שווים ל- 0.

שלב 8: רמפה מעריכית

רמפה מעריכית
רמפה מעריכית
רמפה מעריכית
רמפה מעריכית

עדכון 7/10- גלול למטה הנה מעגל שיוצר רמפה מעריכית המופעלת על זוג מקורות רעש. V1 ו- V2 יוצרים רמפות לינאריות המתחילות ב -0 ועולות ל- X וולט (ערוץ שמאלי) ו- Y וולט (ערוץ ימין) בתקופות prd_l ו- prd_r. B1 ו- B3 משתמשים בנוסחה להמיר את הרמפות הלינאריות לרמפות מעריכיות עם אמפליטודות מרביות של 1V. B2 ו- B4 יוצרים רעש אקראי שאמפליטודה מאופננת על ידי הרמפות האקספוננציאליות ועל פי הפרמטרים amp_l ו- amp_r (פקדי רמה פשוטים). צירפתי קובץ mp3 שנוצר על ידי מעגל זה כדי שתוכל לשמוע איך הוא נשמע. סביר להניח שתצטרך לשנות את שם הקובץ בכדי לגרום לו לשחק. X ו- Y קובעים את גבולות המתח של הרמפות הלינאריות. בסופו של דבר שני הרמפות של הערוץ משתנות ל -1 V, אך על ידי הגדרת X ו- Y אתה יכול לשלוט בתלילות הרמפה האקספוננציאלית. מספר קטן כמו 1 נותן רמפה כמעט לינארית, ומספר גדול כמו 10 נותן רמפה מעריכית תלולה מאוד. תקופות הרמפה נקבעות באמצעות פרמטרים prd_l ו- prd_r. זמן עליית הרמפה הליניארית מוגדר לערך prd_l או prd_r מינוס 5 אלפיות השנייה, וזמן הנפילה מוגדר ל -5 אלפיות השנייה. זמן הנפילה הארוך מונע לחיצה בסוף כל רמפה כשהמשרעת יורדת לאפס. Out_l ו- out_r הם תוצרי מתח הרעש האקראי המבוסס על הזמן, מתחי הרמפה האקספוננציאליים והפרמטרים amp_l ו- amp_r. שים לב שערך הרעש האקראי של הערוץ הימני משתמש ב"זרע "שונה מהערוץ השמאלי. זה שומר על הרעש בכל ערוץ אקראי ושונה מהערוץ הנגדי. אם אתה משתמש באותו זרע, באותו זמן תקבל אותו ערך אקראי והצליל יגיע למרכז במקום להיתפס כשני מקורות שונים, אחד בכל ערוץ. זה יכול להיות אפקט מעניין לשחק איתו … עדכון: שימו לב כי צורת הגל עוברת מ- 0V לערך חיובי כלשהו. עדיף שהמתח ינוע בין ערכים חיוביים ושליליים שווים. עיבדתי מחדש את הסכימה כדי לעשות בדיוק את זה אבל זה הגביר מעט את מורכבות המשוואה שמגדירה מעט את צורת הגל. הורד את exponential_ramp_noise.asc (זכור כי שרת Instructables ישנה את השם והתוסף כשאתה שומר אותו).

שלב 9: רמפה מעריכית מוחלת על גל סינוס

רמפה מעריכית מוחלת על גל סינוס
רמפה מעריכית מוחלת על גל סינוס

דף זה מראה כיצד להשתמש ברמפה האקספוננציאלית מהשלב הקודם כדי לווסת מקור סינוס (למעשה, סינוס וקוסינוס). מקור המתח ההתנהגותי משמש להפוך רמפה לינארית לרמפה מעריכית המניעה את קלט ה- FM על רכיב מודולאטי 2. המשרעת מאופננת על ידי רמפה מעריכית מהירה וגל סינוס איטי. תקשיב לקובץ לדוגמא- זה נשמע די מוזר.

שלב 10: הצעות

1) אתה יכול לשנות את זמן הסימולציה הכולל - הקצר אותו בזמן שאתה משחק עם רכיבים וכאשר אתה מקבל את הצליל שאתה אוהב, הגדר את הסימולטור לפעול למשך 30 דקות (1800 שניות) או כמה זמן שאתה רוצה. אתה יכול להעתיק מעגלים מדף אחד למשנהו ותוכל ליצור מעגלי משנה כך שתוכל פשוט לחבר מודולי מעגל קטנים יחד כמו שימוש בלוח תיקון בסינתיסייזר אמיתי. אם תשאיר את שלב הזמן המרבי עד 20 לנו תקבל פלט "נקי" מכיוון שלסימולטור יהיו נתונים זמינים עבור כל מדגם חדש. אם אתה משתמש בצעד זמן קטן יותר הסימולציה תהיה איטית וכנראה שלא תהיה לכך השפעה על הצליל. אם אתה משתמש בצעד זמן ארוך יותר אתה עשוי לשמוע כינוי כלשהו שאולי תרצה לא. 3) השתמש בהצהרת תיבת הדו-שיח.save בסכימה שלך וכאשר אתה מפעיל את הסימולציה ובוחר רק אחד מהמתחים או הזרמים כדי לשמור על גודל קובץ.רא קטן. אם לא תבחר, כל המתחים והזרמים יישמרו וקובץ.raw יקבל מאוד גדול. לשלב יציאות מכמה מקורות בתדר נמוך עם כמה מקורות בתדירות גבוהה כדי להפוך את הדברים למעניינים.7) להשתמש במקור מתח דופק כדי לווסת סינוס או מקור אחר כדי לספק קצב.8) להשתמש במעגלים אנלוגיים כדי לעצב פולסי מתח למשהו שאתה רוצה.) השתמש בביטויים מתמטיים כדי להגדיר את הפלט של מקור מתח התנהגותי תהנה!

מוּמלָץ: