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

קרא דוא"ל עם Arduino ו- Wave Shield: 4 שלבים
קרא דוא"ל עם Arduino ו- Wave Shield: 4 שלבים

וִידֵאוֹ: קרא דוא"ל עם Arduino ו- Wave Shield: 4 שלבים

וִידֵאוֹ: קרא דוא
וִידֵאוֹ: CS50 2013 - Week 9 2024, יולי
Anonim
קרא דוא
קרא דוא

כחלק מהפרויקט שלי כאן https://www.instructables.com/id/Sound-Switcher/ (הפרויקט הזה נמצא בתחרות אז אם אתה אוהב את זה אז תצביע על זה!) שמשתמש בארדואינו כדי להפריע למקור צליל חיצוני. (כלומר iPod) כדי ליידע אותך על דברים שקורים מסביבך, היה לי את זה גם להפריע במיילים ולקרוא אותך ממי מקור האימייל ושורת הנושא (כך שתדע אם אתה רוצה להפסיק את מה שאתה עושה ובדוק זאת). מכיוון שיש לך Arduino עם מגן גל לקרוא את הודעת הדוא"ל שלך עשויה להיות שימושית לאחרים, פיצלתי אותה להוראה משלה כאן. זה משתמש סדרתי להעברת הנתונים. אני רק משתמש בממשק ה- USB בארדואינו, אבל אתה אמור להיות מסוגל להשיג את אותו הדבר באופן אלחוטי עם XBees ממה שאני מבין. אז בעצם הדברים ברצון ההוראה הזה. בדוק את הדוא"ל שלך 2. אם משהו חדש הוא יהפוך אותו לקובץ wav3. אז הוא ישלח אותו לארדואינו באמצעות serial4. אז הארדואינו ישחק אותו ה- TODO הגדול ביותר הוא להאיץ את העברת הקבצים. הרעיון שלי הוא שהמחשב ישלח מעל 100 בתים בערך, ואז יחכה לתגובת אישור מהארדואינו לפני שהוא ישלח יותר. כמו כן, יהיה נחמד לבדוק כמה שגיאות, מכיוון שקובץ בינארי חלקי אינו טוב בהרבה מאשר בכלל, במקרים מסוימים.

שלב 1: כלי שורת פקודה לכלי דיבור

הנה כלי עזר קטן שכתבתי ממש מהר כדי להסתיר טקסט לדיבור. הוא כתוב ב- C# עם המהדורה החופשית של Visual C# 2008 Express. כנראה שתצטרך. Net 3.5 כדי להריץ את זה. הקוד כלול, אבל אם אתה רק רוצה את exe אתה יכול להשיג אותו ב- CommandLineText2Speech/CommandLineText2Speech/bin/Release בקובץ ה- zip. כדי שהכלי יעבוד אתה יכול פשוט לפתוח שורת פקודה, לנווט לספרייה שבה אתה שם את exe ולהקליד CommandLineText2Speech.exe. הוא יפיק את זה: שימוש: לרשימת קולות מותקנים: whatLove CommandLineText2Speech.exe

כדי להמיר טקסט ל- wav: CommandLineText2Speech.exe [קול] [שיעור - ברירת מחדל 0 (-10 עד 10)] [נפח - ברירת מחדל 80 (0 עד 100)] "[טקסט להמרה]" [קובץ פלט] במילים אחרות סביר להניח שתרצה להפעיל תחילה: CommandLineText2Speech.exe whatvoices זה יפרט אילו קולות התקנת במחשב שלך. תזדקק לשם של קול כדי להפעיל את הכלי. הקולות שמגיעים עם Windows אינם מעולים, ל- AT&T יש כמה שהם די טובים. ליד המרת טקסט לקובץ wav בצע את זה CommandLineText2Speech.exe "Microsoft Sam" 0 80 "This is a test" test.wav הנה המשמעות של כל זה: "Microsoft Sam" - הקול, זהו אחד שמגיע עם Windows, יש לך לשים את זה במרכאות מכיוון שיש רווח 0 - מהירות רגילה (יכולה לעבור מ -10 ל -10) 80 - נפח רגיל (יכול לעבור מ -0 ל -100) "זה מבחן" - הטקסט שיהפוך לקובץ WAV.wav - איך יקרא קובץ wav

שלב 2: כלי רובי לבדיקת דוא"ל והעלאת WAV לארדואינו

קוד רובי המצורף מבצע את הבדיקות הבאות כדי לראות אם יש דוא"ל חדש ואם יש אותו הוא מעביר אותו ל- Arduino באמצעות ממשק USB to Serial המובנה בארדואינו. נתקלתי בבעיות בביצוע חיבורים במהירות גבוהה באמצעות סידורי (סביר שגודל המאגר). ההגדרות של הקובץ נמצאות בראש הקובץ. זה משתמש בתוכנית C# שלי ליצירת קובץ wav. אני כנראה צריך להמיר את כל זה לשפה אחת, אני מעריץ גדול של רובי, אבל לא נראה שזה יכול ליצור את ה- wav מהטקסט בקלות רבה ולכן כתבתי את אפליקציית C# הקטנה. תזדקק גם לאודם פנינה סדרתית, כללתי גם את זה. כדי להתקין אותו (לאחר התקנת רובי) הקלד "gem install win32-serial-0.5.1-x86-mswin32-60.gem" בשורת הפקודה של הספרייה שאליה אתה מוריד את פנינה. זה כל מה שאתה צריך כדי שהתוכנית הזו תעבוד.

שלב 3: קוד ארדואינו

להלן דוגמא לקריאת הנתונים באמצעות סדרות, העתקתם לכרטיס ה- SD ולאחר מכן הפעלת הגל. זה חלק מההנחיות שלי כאן https://www.instructables.com/id/Sound-Switcher/ (שים לב שזה בתחרות Arudino, אם אתה אוהב את זה תצביע עבורו!). אני אוסיף עוד דוגמה למחרת או משהו כזה שנקצץ. עיין בפונקציה check_serial לכתיבה לכרטיס SD. אני משתמש בספריית WaveRP שנמצאה כאן כדי לעשות זאת

שלב 4: הפעל הכל

אוקיי, עכשיו יש לך את כל החלקים. כדי שזה יעבוד כמו שצריך עליך להתקין 1. Wave Shield ב- Arduino2. חבר את Arduino למחשב (או השתמש ב- XBee) - אני מניח שכבר התקנת את הקושחה 3. הפעל את הסקריפט Ruby checkEmail.rb4. תהנה מהארדואינו שלך מקריאת הדוא ל שלך.

מוּמלָץ: