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

בקרת עוצמת קול מחשב Vintage Rotary Phone Dial: 7 שלבים (עם תמונות)
בקרת עוצמת קול מחשב Vintage Rotary Phone Dial: 7 שלבים (עם תמונות)

וִידֵאוֹ: בקרת עוצמת קול מחשב Vintage Rotary Phone Dial: 7 שלבים (עם תמונות)

וִידֵאוֹ: בקרת עוצמת קול מחשב Vintage Rotary Phone Dial: 7 שלבים (עם תמונות)
וִידֵאוֹ: פתרון לבעיות צליל ב-Windows 10 2024, יולי
Anonim
Image
Image
הסר את החוגה
הסר את החוגה

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

התקן בקרת עוצמת קול זה מתחבר למחשב שלך באמצעות USB, ויגדיר אוטומטית את עוצמת הקול של כל תוכנית פתוחה למספר שתחייג. אם תחייג "2", עוצמת הקול תוגדר ל -20%. חייג "8" והוא יוגדר ל -80%. חיוג "0" מגדיר אותו ל -0% ומתנהג כמו השתקה. זה מהיר, מספק ומהנה יותר מללחוץ על בקרת עוצמת הקול בשורת המשימות שלך.

אספקה

  • טלפון סיבובי Trimline Vintage Bell Systems
  • ארדואינו ננו
  • מוסיף חום משורשר M3
  • ברגי מכונה M3
  • נגדים (470 אוהם ו -10 אלף אוהם)
  • חוּט
  • גישה למדפסת תלת מימד

שלב 1: תורת הפעולה

טלפונים רוטרי, כולל Trimline Bell Systems המשמשים בפרויקט זה, הם מכשירים אלקטרומכניים אנלוגיים בלבד. כאשר אתה מסובב את החוגה, קפיץ מסובב את החוגה למקומה המקורי. כאשר הוא עובר כל מספר מתג מנותק (או מחובר) לרגע קצר, ויוצר דופק. כל שעלינו לעשות הוא לספור את הפולסים האלה כדי לקבוע לאיזה מספר חייגו.

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

לפרויקט זה אנו משתמשים ב- Arduino Nano לספירת הפולסים. לאחר מכן שולח ה- Arduino את המספר למחשב באמצעות החיבור הטורי. כתבתי סקריפט בסיסי של פייתון הפועל ברקע ועוקב אחר החיבור הטורי הזה. כאשר הוא מקבל סיביות, הוא לוקח את המספר ומשתמש בספריית Python Core Audio Windows כדי להגדיר את עוצמת הקול המתאימה.

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

שלב 2: הסר את החוגה

הסר את החוגה
הסר את החוגה

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

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

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

שלב 3: הדפס את המארז

הדפס את המארז
הדפס את המארז

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

שלב 4: תכנת את הארדואינו שלך

תכנות את הארדואינו שלך
תכנות את הארדואינו שלך

הקוד שתעלה ל- Arduino Nano שלך נלקח היישר מהמדריך של guidomax, מכיוון שהוא עובד בצורה מושלמת עבור פרויקט זה:

int needToPrint = 0; int count; int in = 2;

int lastState = LOW;

int trueState = LOW;

long lastStateChangeTime = 0;

int cleared = 0;

// קבועים

int dialHasFinishedRotatingAfterMs = 100;

int debounceDelay = 10;

הגדרת בטל () {

Serial.begin (9600);

pinMode (ב, INPUT); }

לולאת חלל () {

int reading = digitalRead (in);

if ((millis () - lastStateChangeTime)> dialHasFinishedRotatingAfterMs) {// החוגה לא מחויגת, או שזה עתה סיימה לחייג.

אם (needToPrint) {// אם זה עתה הסתיים בחיוג, עלינו לשלוח את המספר בשורה הטורקית // ולאפס את הספירה. אנו משנים את הספירה ב -10 מכיוון ש- '0' ישלח 10 פולסים.

Serial.print (ספירה % 10, DEC);

needToPrint = 0;

ספירה = 0;

נקה = 0; }}

אם (קריאה! = lastState) {lastStateChangeTime = millis ();

}

אם ((millis () - lastStateChangeTime)> debounceDelay) {// debounce - זה קורה ברגע שהוא מתייצב

אם (קריאה! = trueState) {// פירוש הדבר שהמתג פשוט עבר מ- closed-> פתוח או להיפך. trueState = קריאה; אם (trueState == HIGH) {// להגדיל את מספר הפולסים אם הוא הלך גבוה.

ספירה ++;

needToPrint = 1; // נצטרך להדפיס את המספר הזה (לאחר שהחיוג סיים להסתובב)

}

}

}

lastState = קריאה; }

שלב 5: חיבור הכל

לחבר הכל
לחבר הכל
לחבר הכל
לחבר הכל
לחבר הכל
לחבר הכל

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

הערה: התעלם מצבעי החוטים שלי בתמונות. ערבבתי את הקרקע ואת 5V, אז אלה למעשה הפוכים.

חבר חוט אחד מפוסט A (GND) וחבר אותו לסיכה הארקה ב- Arduino Nano שלך. קח חוט שני והלחם אותו וחוט שלישי לצד אחד של הנגד 470 אוהם. החוט השני יעבור לפוסט B (+) בחוגה. החוט השלישי יולחם לצד אחד של הנגד 10k אוהם. קח חוט רביעי והלחם אותו מהצד השני של הנגד 470 אוהם לסיכה 2 על הארדואינו ננו. לבסוף, חוט חמישי אמור לחבר את הצד השני של הנגד 10 קילו -אוהם לסיכה 5V על הארדואינו ננו.

אנו משתמשים בנגדים ובסיכת 5V כדי למשוך את הסיכה לגבוה כשהמתג פתוח (כפי שהוא במהלך כל "דופק").

שלב 6: הרכבה

הַרכָּבָה
הַרכָּבָה
הַרכָּבָה
הַרכָּבָה

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

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

הכנס את שש התוספות המוגדרות לחום. לאחר מכן השתמש בכמה ברגי מכונת M3 קצרים (10 מ מ בערך) כדי להרכיב את החוגה. שים לב לחריץ בחיתוך, לשם יעבור עצירת האצבע המתכתית. לאחר מכן הנח בזהירות את ה- Arduino Nano עם כבל USB המחובר בתוך המארז (הוא רופף, לא מותקן), והברג את הבסיס למקומו.

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

שלב 7: הגדר את סקריפט Python

הגדר את סקריפט Python
הגדר את סקריפט Python

ראשית, וודא שהתקנת Python (השתמש ב- Python 3 מכיוון ש- Python 2 הולך ונשלל).

לאחר מכן יהיה עליך להתקין את שתי הספריות הנדרשות: PyCAW ו- PySerial.

להשתמש:

"pip install pycaw" ו- "pip install pyserial" (מחלון פייתון או מ- Windows Powershell)

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

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

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

לשם כך, שנה את "rotary.py" ל- "rotary.pyw" שיאפשר לו לפעול ברקע. לאחר מכן הנח את הסקריפט בתיקיה הבאה: C: / Users / current_user / AppData / Roaming / Microsoft / Windows / תפריט התחלה / תוכניות / הפעלה

ברור שתצטרך לשנות את "current_user" לשם תיקיית המשתמש שלך בפועל.

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

תחרות ארדואינו 2020
תחרות ארדואינו 2020
תחרות ארדואינו 2020
תחרות ארדואינו 2020

סגנית בתחרות ארדואינו 2020

מוּמלָץ: