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

מקלט Ukelele באמצעות LabView ו- NI USB-6008: 5 שלבים
מקלט Ukelele באמצעות LabView ו- NI USB-6008: 5 שלבים

וִידֵאוֹ: מקלט Ukelele באמצעות LabView ו- NI USB-6008: 5 שלבים

וִידֵאוֹ: מקלט Ukelele באמצעות LabView ו- NI USB-6008: 5 שלבים
וִידֵאוֹ: יוקללה למתחילים - Five Hundred Miles - שירים שקל לנגן, כל אחת ואחד יכולים - רק 5 אקורדים ופריטה קלה! 2024, יולי
Anonim
מקלט Ukelele באמצעות LabView ו- NI USB-6008
מקלט Ukelele באמצעות LabView ו- NI USB-6008
מקלט Ukelele באמצעות LabView ו- NI USB-6008
מקלט Ukelele באמצעות LabView ו- NI USB-6008

כפרויקט למידה מבוסס בעיות לקורס LabVIEW & Instrumentation שלי במכללת הומבר (טכנולוגיית הנדסת אלקטרוניקה), יצרתי מקלט יוקלילה שייקלט קלט אנלוגי (צליל מיתר ukulele), ימצא את התדר הבסיסי, יחליט איזה פתק מנסה. כדי להיות מכוון, וספר למשתמש אם יש צורך לכוונן את המחרוזת למעלה או למטה. המכשיר בו השתמשתי כדי לתרגם את הקלט האנלוגי לכניסה דיגיטלית היה ה- National Instruments USB-6008 DAQ (מכשיר רכישת נתונים), וממשק המשתמש יושם עם LabVIEW.

שלב 1: כוונון סטנדרטי של Ukelele

כוונון סטנדרטי של Ukelele
כוונון סטנדרטי של Ukelele
כוונון סטנדרטי של Ukelele
כוונון סטנדרטי של Ukelele

השלב הראשון היה לברר את התדרים הבסיסיים של תווים מוזיקליים, ובאיזה טווח מיתרי האוקוללה בדרך כלל מכוונים. השתמשתי בשני התרשימים האלה, והחלטתי שאעשה את הטווח שלי בין 262 הרץ (C) ל -494 הרץ (גבוה B). כל דבר פחות מ -252 הרץ ייחשב נמוך מדי מכדי שהתוכנית תוכל לפענח איזה תו ניסה להשמיע, וכל דבר גדול מ -500 הרץ ייחשב גבוה מדי. התוכנית, עם זאת, עדיין מספרת למשתמש כמה הרץ הם רחוקים מהצליל הניתן לפענוח הקרוב ביותר, ואם יש לכוונן את המחרוזת למעלה (הערה נמוכה מדי) או למטה (הערה גבוהה מדי) כדי להגיע לפתק זמין.

בנוסף, יצרתי טווחים לכל תו, ולא רק תדר יחיד, כך שיהיה קל יותר לתוכנית למצוא איזו תו מושמע. לדוגמה, התוכנית תספר למשתמש כי C מושמע אם לפתק יש תדר בסיסי בין 252 הרץ (באמצע הדרך ל- B) לבין 269 הרץ (באמצע הדרך ל- C#), אך על מנת להחליט אם יש צורך לכוונן אותו או למטה, זה עדיין ישווה את הפתק המושמע לתדר הבסיסי של C שהוא 262 הרץ.

שלב 2: יצירת מודל תיאורטי דיגיטלי בלבד

יצירת מודל תיאורטי דיגיטלי בלבד
יצירת מודל תיאורטי דיגיטלי בלבד
יצירת מודל תיאורטי דיגיטלי בלבד
יצירת מודל תיאורטי דיגיטלי בלבד

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

השתמשתי ב- SoundFileSimpleRead. VI הזמין ב- LabVIEW כדי לקרוא קובץ.wav מנתיב שסימנתי, הכנסתי את האות למערך באינדקס והזנתי את האות הזה ל- HarmonicDistortionAnalyzer. VI על מנת למצוא את התדר הבסיסי. לקחתי גם את האות מה- SoundFileSimpleRead. VI וחיברתי אותו ישירות למחוון תרשים צורות גל כך שהמשתמש יוכל לראות את צורת הגל של הקובץ בלוח הקדמי.

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

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

שלב 3: לאחר מכן, המעגל האנלוגי

לאחר מכן, המעגל האנלוגי
לאחר מכן, המעגל האנלוגי
לאחר מכן, המעגל האנלוגי
לאחר מכן, המעגל האנלוגי
לאחר מכן, המעגל האנלוגי
לאחר מכן, המעגל האנלוגי

המיקרופון בו השתמשתי לפרויקט זה הוא מיקרופון האלקטרטי של הקבל CMA-6542PF. גליון הנתונים של המיקרופון הזה נמצא למטה. בניגוד לרוב מיקרופוני המעבה מסוג זה, לא הייתי צריך לדאוג לקוטביות. גליון הנתונים מראה כי מתח ההפעלה של המיקרופון הזה הוא 4.5 - 10V, אך מומלץ 4.5 V, והצריכה הנוכחית שלו היא 0.5mA מקסימלית, כך שיש להקפיד עליו בעת תכנון מעגל קדם מגבר עבורו. תדר ההפעלה הוא 20Hz עד 20kHz שהוא מושלם לאודיו.

יישמתי עיצוב מעגל קדם מגבר פשוט על קרש הלחצן והתאמתי את מתח הכניסה, וודא שלא יהיה יותר מ- 0.5mA לרוחב המיקרופון. הקבל משמש לסנן את רעש ה- DC שעשוי להיות מצורף יחד עם האותות החשמליים (פלט), ולקבל יש קוטביות אז הקפד לחבר את הקצה החיובי לסיכת הפלט של המיקרופון.

לאחר השלמת המעגל, חיברתי את יציאת המעגל לפין הכניסה האנלוגי הראשון (AI0, סיכה 2) של ה- USB-6008, וחיברתי את קרקע לוח הלוח לסיכה הארקה האנלוגית (GND, סיכה 1). חיברתי את ה- USB-6008 למחשב באמצעות USB והגיע הזמן לבצע התאמות בתוכנית LabVIEW כדי לקבל אות אנלוגי בפועל.

שלב 4: קריאת אותות אנלוגיים בעזרת DAQ Assistant

קריאת אותות אנלוגיים עם DAQ Assistant
קריאת אותות אנלוגיים עם DAQ Assistant
קריאת אותות אנלוגיים בעזרת DAQ Assistant
קריאת אותות אנלוגיים בעזרת DAQ Assistant

במקום להשתמש ב- SoundFileSimpleRead. VI וב- HarmonicDistortionAnalyzer. VI, השתמשתי ב- DAQ Assistant. VI וב- ToneMeasurements. VI כדי להתמודד עם הקלט האנלוגי. ההתקנה של DAQ Assistant פשוטה למדי, וה- VI עצמו מעביר אותך בשלבים. ל- ToneMeasurements. VI יש יציאות רבות לבחירה (משרעת, תדר, פאזה), אז השתמשתי בפלט התדר שנותן את התדר הבסיסי של צליל הכניסה (מתוך DAQ Assistant. VI). את הפלט של ToneMeasurements. VI היה צריך להמיר ולהכניס למערך לפני שניתן יהיה להשתמש בו במבני המקרה, אך שאר התכנות/אינדיקטורים של LabVIEW נותרו בעינם.

שלב 5: מסקנה

סיכום
סיכום

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

מוּמלָץ: