Kazalo:
- Zaloge
- 1. korak: Teorija delovanja
- 2. korak: Odstranite številčnico
- 3. korak: Natisnite ohišje
- 4. korak: Programirajte svoj Arduino
- 5. korak: Ožičite vse
- 6. korak: Montaža
- 7. korak: Nastavite skript Python
Video: Vintage Rotary Phone Dial za nadzor glasnosti računalnika: 7 korakov (s slikami)
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:03
Če ste kaj podobnega meni, se vam pogosto zgodi, da glasnost v računalniku spreminjate. Nekateri videoposnetki so glasnejši od drugih, včasih želite, da glasnost v računalniku utišate, medtem ko poslušate poddaje ali glasbo, zato boste morda morali hitro zmanjšati glasnost, če prejmete telefonski klic. Če v računalnik nimate vgrajenih kontrolnikov za medije, lahko starinski vrtljivi gumb za telefon spremenite v nadzor glasnosti za računalnik z operacijskim sistemom Windows.
Ta naprava za nadzor glasnosti se priključi na vaš računalnik prek USB -ja in samodejno nastavi glasnost vsakega odprtega programa na katero koli številko, ki jo pokličete. Če pokličete "2", bo glasnost nastavljena na 20%. Pokličite "8" in nastavljeno bo na 80%. Klicanje "0" nastavi na 0% in deluje kot utišanje. To je hitro, zadovoljivo in bolj zabavno kot klik na gumb za glasnost v opravilni vrstici.
Zaloge
- Rotacijski telefon Vintage Bell Systems Trimline
- Arduino Nano
- Toplotno nastavljivi vložki z navojem M3
- Strojni vijaki M3
- Upori (470 ohm in 10 k ohm)
- Žica
- Dostop do 3D tiskalnika
1. korak: Teorija delovanja
Rotacijski telefoni, vključno z Bell Systems Trimline, uporabljeno v tem projektu, so izključno analogne elektromehanske naprave. Ko zavrtite gumb, vzmet vrti gumb nazaj v prvotni položaj. Ko preide vsako številko, se stikalo za kratek trenutek odklopi (ali priključi) in ustvari utrip. Vse, kar moramo storiti, je, da preštejemo te impulze, da ugotovimo, katero številko smo klicali.
guideomax ima fantastično vadnico Instructables, ki podrobno opisuje, kako to deluje, in tam najdete več podrobnosti.
Za ta projekt uporabljamo Arduino Nano za štetje utripov. Arduino nato pošlje številko v računalnik prek serijske povezave. Napisal sem osnovni skript Python, ki deluje v ozadju in spremlja to serijsko povezavo. Ko prejme bite, vzame številko in uporabi knjižnico Python Core Audio Windows za nastavitev ustrezne glasnosti.
Zaradi omejitev pri sistemu Windows in tej knjižnici skript ne nastavi celotne glasnosti sistema (glavni drsnik v opravilni vrstici). Namesto tega nastavi posamezno glasnost za vsak program, ki se trenutno izvaja. Učinek je enak, le da med programi ne morete vzdrževati različnih relativnih ravni glasnosti.
2. korak: Odstranite številčnico
Ta korak je preprost: samo razstavite slušalko Trimline, da odstranite klicni mehanizem. To je v bistvu samostojen modul, zato ga morate samo odviti iz slušalke.
Za ta projekt sem se odločil za model Trimline, ker je ta klicni modul bolj kompakten od tistih, ki jih najdete na večini drugih rotacijskih telefonov.
Če izvedete nekaj preskusnih vrtljajev, bi morali slišati stikalo stikala, ko se vrne v začetni položaj.
3. korak: Natisnite ohišje
Za tiskanje delov ohišja uporabite dve priloženi datoteki STL. Uporabite lahko kateri koli material iz filamentov (jaz sem uporabil PLA). Posebne nastavitve, ki jih uporabljate, niso tako pomembne, vendar sem priporočil uporabo podpore za del "Rotary_Top". Ta dva dela lahko natisnete, medtem ko delate na preostalem delu projekta.
4. korak: Programirajte svoj Arduino
Koda, ki jo naložite v svoj Arduino Nano, je vzeta neposredno iz tutoriala Guideomax, saj odlično deluje za ta projekt:
int needToPrint = 0; int count; int in = 2;
int lastState = LOW;
int trueState = LOW;
long lastStateChangeTime = 0;
int izbrisano = 0;
// konstante
int dialHasFinishedRotatingAfterMs = 100;
int debounceDelay = 10;
void setup () {
Serial.begin (9600);
pinMode (in, INPUT); }
void loop () {
int branje = digitalRead (v);
if ((millis () - lastStateChangeTime)> dialHasFinishedRotatingAfterMs) {// številčnica ni klicana ali je bila pravkar končana.
if (needToPrint) {// če je klic šele končan, moramo poslati številko po serijski // vrstici in ponastaviti štetje. Število smo spremenili za 10, ker bo '0' poslalo 10 impulzov.
Serial.print (število % 10, DEC);
needToPrint = 0;
count = 0;
očiščeno = 0; }}
if (branje! = lastState) {lastStateChangeTime = millis ();
}
if ((millis () - lastStateChangeTime)> debounceDelay) {// debounce - to se zgodi, ko se stabilizira
if (branje! = trueState) {// to pomeni, da je stikalo pravkar prešlo iz zaprto-> odprto ali obratno. trueState = branje; if (trueState == HIGH) {// poveča število impulzov, če je visoko.
count ++;
needToPrint = 1; // to številko bomo morali natisniti (ko se števec konča z vrtenjem)
}
}
}
lastState = branje; }
5. korak: Ožičite vse
Ožičenje za ta projekt je zelo preprosto. Klicni modul mora imeti na hrbtni strani dva šesterokotna stebra z vijaki. To so stikalne povezave. Polarnost ni pomembna.
Opomba: Ignorirajte barve mojih žic na fotografijah. Zmešal sem zemljo in 5V, tako da so ti dejansko obrnjeni.
Priključite eno žico iz Post A (GND) in jo priključite na ozemljitveni zatič na vašem Arduino Nano. Vzemite drugo žico in jo spajajte ter tretjo žico na eno stran upora 470 ohmov. Druga žica bo šla na mesto B (+) na številčnici. Tretja žica bo spajkana na eno stran upora 10k ohm. Vzemite četrto žico in jo spajkajte z druge strani upora 470 ohmov na pin 2 na Arduino Nano. Končno bi morala peta žica povezati drugo stran 10k ohmskega upora na 5V pin na Arduino Nano.
Z upori in 5V zatičem povlečemo zatič do visokega položaja, ko je stikalo odprto (kot je med vsakim "impulzom").
6. korak: Montaža
Opaziti morate, da ima Rotary_Top del ohišja šest majhnih lukenj. To so za vaše navojne vložke s toplotno nastavitvijo. Zgornji trije (na spodnji strani zgornje površine) morajo namestiti vrtljivi gumb. Spodnji trije privijte Rotary_Base na Rotary_Top.
Toplotno nastavljene vložke lahko segrejete s spajkalnikom (ali posebnim orodjem) in jih nato potisnete v luknje. Toplota bo stalila plastiko, ki se bo po odstranitvi toplote strdila, da bodo vložki varno pritrjeni. Uporaba toplotno nastavljenih vložkov je veliko bolj prijetna kot vstavljanje vijakov neposredno v plastiko.
Vstavite šest toplotno nastavljenih vložkov. Nato za pritrditev številčnice uporabite nekaj kratkih (približno 10 mm) strojnih vijakov M3. Bodite pozorni na zarezo v izrezu, kamor bo šel kovinski prstan. Nato previdno vstavite Arduino Nano s kablom USB, priključenim v ohišje (ohlapen, ni nameščen), in privijte podstavek na svoje mesto.
Za pritrditev ohišja na mizo boste verjetno želeli uporabiti dvostranski trak ali 3M ukazne trakove, da se ne bo premikal, ko zavrtite številčnico.
7. korak: Nastavite skript Python
Najprej se prepričajte, da imate nameščen Python (uporabite Python 3, ker se Python 2 postopno ukinja).
Nato boste morali namestiti dve zahtevani knjižnici: PyCAW in PySerial.
Uporaba:
"pip install pycaw" in "pip install pyserial" (iz okna Python ali Windows Powershell)
Nato preverite, na katera vrata je priključen vaš Arduino Nano. To lahko preverite v Arduino IDE. Prepričajte se, da ste izbrali ta vrata, nato odprite serijski monitor. Prepričajte se, da je vaša hitrost prenosa 9600, nato pa pokličite nekaj številk, da se prikažejo na serijskem monitorju.
Če se to zgodi, uredite kodo "rotary.py" s številko vrat. Če zaženete skript, bi morali glasnost spremeniti tako, da pokličete številko.
Zadnji korak je nastavitev, da se skript samodejno zažene v ozadju, ko zaženete računalnik.
Če želite to narediti, spremenite "rotary.py" v "rotary.pyw", kar mu bo omogočilo izvajanje v ozadju. Nato ta skript postavite v naslednjo mapo: C: / Users / current_user / AppData / Roaming / Microsoft / Windows / Start Menu / Programs / Startup
Očitno boste morali spremeniti "current_user" v ime dejanske uporabniške mape.
To je to! Ko se računalnik zažene, se bo ta skript Python začel izvajati. Nadziral bo serijsko povezavo iz Arduina in nastavil vse glasnosti programa na vse, kar pokličete!
Podprvak na tekmovanju Arduino 2020
Priporočena:
Za upravljanje računalnika znova uporabite sledilno ploščico starega prenosnega računalnika!: 11 korakov (s slikami)
Znova uporabite sledilno ploščico starega prenosnega računalnika za nadzor računalnika!: Sledilne ploščice prenosnega računalnika PS/2 so med najbolj kul napravami uporabniškega vmesnika za uporabo z mikrokrmilnikom. Z drsnimi in dotikalnimi kretnjami prstov lahko na preprost in zabaven način nadzorujete stvari. V tem navodilu združimo eno z
Preprost DIY gumb za nadzor glasnosti!: 5 korakov (s slikami)
Enostaven DIY gumb za nadzor glasnosti !: Imate namizje z zvočnim sistemom daleč od svojega sedeža?-Imam. Po kratkem kopanju sem ugotovil, da je zelo enostavno poceni izdelati lasten mehak gumb za nastavitev glasnosti. V tej vadnici vam bom pokazal, kako ustvariti gumb za nadzor glasnosti USB
Gumb za nadzor glasnosti računalnika: 6 korakov (s slikami)
Gumb za nastavitev glasnosti računalnika: Če radi poslušate glasbo v računalniku, vendar jo morate pogosto gledati in znova zagnati med gledanjem medijev, pritisnite tipko Fn+k+F12+g vsakič, ko je ne boste prerezali. Plus prilagajanje glasnosti z gumbi? Nihče nima časa za to! Lahko predstavim svoj C
Kolesa za pomikanje po namizju in nadzor glasnosti!: 8 korakov (s slikami)
Namizno kolesce za pomikanje in nadzor glasnosti!: Naredite vikend projekt revije, 3. 4. 09 Nekaj ozadja Nedavno sem bral veliko različnih blogov. Vsak dan bom bral najnovejše objave na spletnem mestu engadget, lifehacker, hackaday, BBG in MAKE:. Težava zame je prišla, ko sem spoznal, da o
Univerzalni nadzor glasnosti slušalk/slušalk: 8 korakov (s slikami)
Univerzalni nadzor glasnosti slušalk/slušalk: Tako sem kupil PMP (prenosni predvajalnik medijev) iz Hongkonga, da sem lahko igral svoje igre NES z vgrajenim emulatorjem, kjer je to primerno. Dolga potovanja, leti, čakalnice itd. So mesta, kjer rad ubijam čas s prenosnimi mediji, vendar